Tech - December 04, 2015

Clojure Destructuring Gotcha!

Given the following function definition, what would you expect to happen if you ran (hello :person nil)? (defn hello [& {:keys [person] :or {person "Rich"}}] (str "Hello, " person)) (hello) => "Hello, Rich" (hello :person "Hickey") => "Hello, Hickey" (hello :person nil) => "Hello, " I’d have expected (hello :person nil) to have the same result as calling (hello),

Read More

Tech - August 21, 2015

Nairobi Functional Programming Meetup 3

On Wednesday, we had the pleasure of hosting the third Nairobi Functional Programming Meetup, with Larry Weya giving a brief introduction to Erlang & Elixir, and sharing his experience using the platform as part of the team behind eCitizen. In what is emerging as a pattern, the post-talk conversations were as illuminating as the talk itself. We’re planning a hands-on workshop for

Read More

Resources - June 02, 2015

Introducing three open source libraries for working with Ona and data

We are proud to announce preview releases for three Clojure/ClojureScript open source software libraries: Hatti, Milia, and Zebra Lite. We are actively working on and improving these libraries for use in our own software and by others. In alphabetical order the contributors to these libraries are geoffreymuchai, pld, prabhasp, royrutto, ukanga, and wilo99. We will followup on this post with additional tutorials and introductions

Read More

Work - May 30, 2015

Making Ona reliable and resilient

Last year, we experienced a few small periods of downtime. We made changes to bring this up to 99.8% API uptime in 2015. However, the remaining 0.2% bothered our engineering team, so after additional work, we recently hit a rewarding milestone: 30+ days of 100% uptime on our API and front-end site! The first big

Read More

Work - May 16, 2015

Open Street Map as a global "check-in" service

Getting more out of Open Street Maps? At Ona, we’ve always been big fans Open Street Maps (OSM). What’s always bugged me is I felt (like many groups), we’ve failed to fully understand and leverage the incredible wealth of data that OSM represents. Sure, our basemaps are powered with OSM data. And yes, we encourage partners

Read More

Tech - April 21, 2015

Ona at the Nairobi Functional Programming Meetup

 Okal Otieno and Roy Rutto from Ona were the featured presenters at the inaugural Nairobi Functional Programming meetup. The meetup was conceived by Okal and Roy to “discuss the core concepts of functional programming, why use it, and experiences using it.” The iHub UX Lab graciously hosted.  Okal started off by explaining how functional thinking can

Read More

Tech - August 15, 2014

Pallet Multiuser Configuration

The last time we talked about Pallet we described using a pallet.clj file in concert with Leiningen to bring up remote servers, configure web applications, and deploy new version of web applications. We glossed over the details required for sharing deploys amongst a group of developers, i.e. allowing multiple developers to deploy to the same web server. These details were obviously

Read More

Tech - May 05, 2014

Automated Infrastructure with Pallet and Clojure

At Ona we are rebuilding our data management platform. We are starting with a light weight front-end that will serve up content pulled from the REST API of our current application. We are aiming to have the back-end in Clojure, the front-end in ClojureScript, and the infrastructure in Clojure using Pallet. We are excited to have a single (and

Read More

Tech - January 23, 2014

Nairobi Python - Litte known and/or useful Python features for fun & profit

Today Larry Weya gave a presentation at the Python Nairobi Meetup titled Little known and/or useful Python features for fun & profit. The slides are below:

Read More

1 2 3 4 5 6