Tuesday, 05 April 2011

Decaffeinated Robot: source, slides, and audio

This past weekend the second Texas Linux Fest was held in Austin, Texas. I had a great time attending the various sessions and the expo space. I am also glad to have had the opportunity to speak about alternative approaches to Android development. Mobile development is certainly a hot topic these days, and I have been told that the room overflowed into the hallway for my talk.

As promised, here are the slides, source code, and audio from my presentation:

I would like to thank the TXLF organisers for a great event. I am looking forward to TXLF 2012.

Wednesday, 23 March 2011

Decaffeinated robots at Texas Linux Fest

In just a week and a half, I will be in Austin, Texas, presenting at Texas Linux Fest, a ‘state-wide, community-run conference for Linux and open source software users and enthusiasts from around the Lone Star State’.

My presentation, The decaffeinated robot: Developing on Android without Java, will present an overview of the current landscape for Android development without using Java, including HTML-based applications, alternative JVM languages, use of the native development tools (NDK), the Scripting Layer for Android (SL4A), and other development tools.

I have created a simple game that should allow you to compare implementations in different languages. I have completed the following:

  • Python using SL4A
  • Ruby using Ruboto
  • Clojure
  • Scala using sbt-android-plugin
  • Java with C snippets using the NDK and JNI

Time permitting, I may create more implementations.

So, for this and many more great sessions, register now for Texas Linux Fest in Austin, Texas, on 2 April 2011. Registrations start at $15, and there will be free Friday training sessions. I hope to see you there!

Wednesday, 23 February 2011

Presenting Clojure REPL at February CHUG meeting

From the mailing list:

We'll be meeting this Thursday at the studio (1024 Studewood), at 7pm. Daniel will be talking about his Clojure REPL for Android. Very cool!

I'll order Pink's pizza again, if people liked that last time. Please RSVP for pizza so I know how much to order. And bring $5 to donate to the cause if you're having any. :)

The usual instructions:


1024 Studewood is a block-ish south of 11th on Studewood, aka Studemont, aka Montrose. If you're coming north on Studewood, it's on your right just past Stella Sola (which is on the left). It's a small green house, the only one that sticks out almost all the way to the road. It will make you think it's a photography studio, because it is.


There are driveways immediately on either side of the house, sufficient for two cars each (unless you drive something big). Otherwise, park on a side street (10 1/2 St.), they're easily accessible across Studewood, or curbside on Studewood. Just don't park in the the lot(s) right next to the studio, they are used as valet space for Stella Sola.

My plan is to give an informal presentation, primarily focusing on the changes I made to get Clojure with dynamic compilation working on the Dalvik VM. I will also demonstrate the VimClojure integration with a REPL running on a device. I plan to share my thoughts on the current state of and future expectations for Android development with Clojure.

It will be a fun evening filled with Clojure, Android, and pizza. I hope to see you there.

Friday, 28 January 2011

Slides on Java concurrency from CHUG

Yesterday, the Clojure Houston User Group (CHUG) met to discuss the concurrency models provided by different programming languages, namely Erlang, Go, Java, and Scala. As usual, the meeting lasted long into the evening with lively conversation. In particular, I was quite interested in learning more about Erlang and Scala—two languages I have been considering learning for some time.

I presented on the concurrency tools available in Java, briefly talking about the following key topics:

  • Task management using the Executor framework
  • State management using atomic variables and concurrency-aware collections
  • Task coordination using locks and synchronizers
  • A preview of things to come in Java 7

While my presentation was by no means exhaustive, I hope that it served to introduce people to the rich set of tools available in Java for writing concurrent applications. For more comprehensive resources, try:

The slides for my presentation are available here, and the source code to the demos is available via Github.

Thursday, 18 March 2010

Teaching Clojure at RubyLearning

RubyLearning is a web site that offers on-line courses for people wanting to learn Ruby. They recently announced Clojure 101, an introductory course on Clojure. I will be assisting Michael Kohl in teaching the course by helping write course materials and answering questions on the course forums.

If you are interested in learning Clojure, this is an excellent opportunity. You will have the chance to interact with the other assistant teachers and hundreds of other participants. Best of all, it is free of charge.

Please, check it out and join if you are interested.