Praxis: a Ruby framework that takes a different approach to creating APIs #

RightScale recently unveiled their new Ruby framework. They call it Praxis and it takes a unique approach to building APIs. From the announcement:

With Praxis you create an API by going through the design, review and implementation phases and iterating over them as necessary. Each phase is done independently, and possibly by disjoint sets of people. For example architects could design it, developers implement it and both can review it alongside the customers.

Intrigued? Check out their Getting Started guide to see what this process would look like.

Satellizer makes token-based authentication for your AngularJS app a breeze #

Sahat Yalkabov’s Satellizer module for AngularJS is an end-to-end, token-based authentication system with built-in support for Google, Facebook, LinkedIn, Twitter, and email/password based authentication.

Satellizer boils the client-side implementation down to adding a module dependency and doing a little configuration, but the server side is still up to you.

Sahat provides server-side examples for popular languages, but plug-and-play server implementations would be awesome and appear to be on the TODO list.

Showcase your work with these HTML5 device mockups #

Want to show off how good your designs look on an iPhone, Nexus 7, or Microsoft Surface? Look no further than pixelsign’s html5-device-mockups

You can pick portrait or landscape, choose from two colors, and even trigger JavaScript events when the home button is clicked (for devices that have one).

See how nice The Changelog looks on a white, landscape, iPhone 5:

html5 device mockups

Here’s a demo page where you can see the device mockups in action.

Can your favorite programming language score a g()(‘al’)? #

And now for something a little different. I’ll let Russell Harmon’s describe it to you:

g()('al') is a challenge whereby you need to write in as many languages as possible code which enables the code g()('al') to return the string “goal”, the code g()()('al') to return the string “gooal”, the code g()()()('al') return the string “goooal”, etc.

Solutions have been accepted for a score of languages already, but there are many more to add and the PR queue is quite active already.

I love challenges like these. They bring the programming community together and you can learn a lot about different languages by seeing how they solve the same problem.

A tool for showing the progress of cp, rm, dd, and friends #

cv — short for Coreutils Viewer — is a Linux (Mac port) tool which looks for coreutils basic commands (cp, mv, dd, tar, gzip/gunzip, cat, etc.) that are currently running on your system and displays the percentage of copied data.

This could come in handy. Here’s a shot of what it looks like in action:

68747470733a2f2f7261772e6769746875622e636f6d2f5866656e6e65632f63762f6d61737465722f636170747572652e706e67

Collect your thoughts and notes without leaving the command line #

jrnl is a great little text-based journaling tool with a command line interface. Why plain text files? I love this tidbit from the readme:

you can put them into a Dropbox folder for instant syncing and you can be assured that your journal will still be readable in 2050, when all your fancy iPad journal applications will long be forgotten.

At first blush, the interface looks really well thought out. I don’t journal much, but jrnl just might get me started.

Proverbs from the programmer #

Fun little repo by Antonin Januska:

Programming and development often teaches one wisdom that cannot be attained elsewhere. Coding and programming, as some have said, is a way of life, not just job. When you are a coder, that is a big part of who you are at work and outside of work. So, let’s come together, and put down our wisdom for future generations to see and learn from.

My favorite of the bunch: “The best code is no code at all”

Xiki is reimagining the shell #

I’m a huge user/advocate of the traditional command shell, but as a teacher I know the troubles people have getting started.

Xiki looks like a great effort at bringing the power of the shell to everyone while adding some nice features for power users. They’re in the middle of a Kickstarter to fund further development, so it’s a great time to show your support.

CanCanCan picks up where CanCan left off #

Ryan Bates’ unfortunate burnout-induced hiatus from open source left his projects unmaintaned. CanCan — the much beloved authorization gem for Ruby on Rails — was no exception.

CanCan may be dead, but long live CanCanCan!

This repo is a continuation of the dead CanCan project. Our mission is to keep CanCan alive and moving forward, with maintenance fixes and new features. Pull Requests are welcome!

This is what I love about open source. Great ideas aren’t bound to their creators. All it takes is one person who cares enough to pick up the torch and run with it.