ActionCable vs. Socket.io at ConFoo

How do you achieve real time, bi-directional, event-based communications in your apps? The Socket.io library is tested and true. ActionCable, new with Ruby on Rails version 5, is a challenger. Which solution is better, and why?

This presentation compares Socket.io and ActionCable (included w/Ruby on Rails version 5).

Continue reading →

From Spreadsheets to Rails

spreadsheet to rails

Excel spreadsheets are ok for quick analysis, but when the rows are too many and the formulas are too complex, recalc time slows to a crawl. Plus, sharing a spreadsheet is cumbersome due to security and version control headaches. One solution: Moving away from the spreadsheet, and building a web app instead.

Continue reading →

Getting Started With Clojure Koans

Clojure

Clojure is a dialect of the Lisp programming language that runs on the on the Java virtual machine (JVM).

One advantage of running on the JVM: Clojure apps can leverage the vast library of Java apps that already exist. If a company has invested heavily in Java, they can bring Clojure into the mix without having to re-write their tried and tested Java code.

This post shows how to start experimenting with Clojure on Mac OS X.

Continue reading →

Parallelism at SCNA 2016

Concurrency vs Parallelism

SCNA has long been one of my favorite conferences. Reason: Rich conversations with other attendees. People who attend SCNA come from a wide range of developer communities and they represent most of the languages in use today. Each community grows stronger when we borrow good ideas from each other.

Continue reading →

Obsessive Learning

I do the learning thing pretty obsessively.
 
~Mandla Magagula

Mandla Magagula and I spoke via Skype yesterday morning. Mandla is a software developer based in Johannesburg, South Africa. When he’s not at work, Mandla and his team teach software craftsmanship to local youth. Mandla and I met at Ruby Fuza 2015 in Cape Town. His passion for teaching and learning radiates for anyone he meets, as you can see in this 20-minute video:

 

Continue reading →