We Need More Than One; Why Programming Languages Matter
When we started kaChing’s architecture, one core design principle was set in stone: our systems would be language neutral. We strive to combine the best ideas from all languages and employ a good number of them on a day-to-day basis (Java, Scala, Ruby, Python, bash, Clojure, Erlang and so on). We use simple data formats… Read more
Prezi on Continuous Deployment at kaChing
Here is a yet another presentation on Continuous Deployment at kaChing. The talk focused on continuous deployment and lean startup and was based on Pascal’s and David’s posts. Continuous Deployment on Prezi
Elsewhere: Next Generation Java Programming Style
Vlad sent around a very good article on good Java coding style, which we all liked. Most of the suggestions are exactly what we do here, with a heavy functional influence on our Java code. A sample: Final is your new love: More and more Java developers in the teams I’ve worked with, started to… Read more
Oakland eBIG hosting kaChing to talk about Continuous Deployment
Next Wednesday July 21st we will be presenting our continuous deployment system at eBIG in Oakland. During this presentation, I’ll focus on three aspects. Business value of continuous deployment; And how it fits into the Lean Startup principles. kaChing’s implementation of continuous deployment: testing, deployment manager, immune system Lastly, I’ll cover our step by step… Read more
SiliconValley CodeCamp 2010
If your’re interested in one or more of the following topics: Lean Startups, Extreme testing, DevOps, Continuous Deployment, Scala, ZooKeeper and Practical Compilers Techniques, join the kaChing team in the next Silicon Valley Code Camp. If you’re interested in some of the talks please log into the site and mark “Interested”. Applying Compiler Techniques to… Read more
Murder Your Darlings
Lately I’ve been working on connectivity with NASDAQ. The protocols involve parsing fixed-offset messages of various types. We’re not doing high frequency trading so we are optimizing for programmer efficiency — that is, the API I expose to the rest of the system should make sense, so I’m representing the different types of messages, trading… Read more