muhuk's blog

Nature, to Be Commanded, Must Be Obeyed

May 02, 2015

Socko - An Embedded Web Server Written in Scala

Socko is a library that provides a web server which talks Akka with the rest of the application. I am not sure about the lightweight claim on its website, but it certainly delivers on the embedded claim. Just add it as a dependency and create a WebServer. You are not forced to use a special command-line tool. You are not forced to use a specific build tool. This is but important because I am interested in technologies that provide functionality without dominating my architecture.

Read more...


April 07, 2015

Mind Your Form

Abstractions allow us to focus on the immediate computation at hand while hiding its details. Organizing code into modules (or packages or classes) is a form of abstraction. So are functions.

This post is about abstracting syntax. Syntactical abstraction can vary between using functions to abstract away common operations and full fledged DSLs that allow us to express complex tasks with ease. This post is about Clojure’s language constructs that simplify forms. It falls somewhere between those two extremes.

Read more...


March 07, 2015

Capitalize: Lessons Learned

Capitalize was a small (tiny really) project to practice ClojureScript. I think I have learned enough to justify a blog post. Since ClojureScript is basically Clojure with a few differences I am focusing on tools and libraries.

Read more...


March 06, 2015

Announcing Capitalize

Since I am not a native speaker, I find it fascinating that some specific words (of, a, etc... ) are not capitalized in titles. I used to google the rules everytime I was writing a post. I was looking for ideas for a small ClojureScript project for practice I decided to build an online tool for capitalization.

Capitalize properly capitalizes your title and also shows you why each word is capitalized or not. Give it a try and let me know what you think.


January 26, 2015

When Decent Programmers Fail

Do you know the feeling when you put adequately experienced/skilled programmers, armed with the right tools, in just the right kind of environment and they still fail to produce high quality software. When software projects fail the bad management™ often takes most of the blame. To be honest I can’t recall an instance where bad management wasn’t cited by programmers as the only cause. This post is not about project management. I will just accept that bad management is a major factor in failure of software projects.

Read more...