By Bearded Hacker!

Yet another blog about programming :)

Efficient iteration of the new feature

Developers often presented with the problem followed by complete UI design or specification, which, beside the original problem, often covers additions which might improve overall user experience regardless the level of importance.

Read on →

Get access to printers from web application

Let’s say we’re developing web-based POS system, where receipts needs be printed on the special kind of printer, but we don’t want user to deal with printer confirmation dialog, which will appear each time receipt need be printed due to the nature of web browsers.

Things will get even more complicated when we find that POS workplaces has to be equipped with tablets instead of normal PCs

How could we eliminate those issues?

Read on →

Add validation of uniqueness for the existing attribute

Let’s say we have a City model and corresponding UI enabling user to manage the list of cities, eventually we discovered that forgot to add validation of uniqueness for the city names and some users was able to create duplicate entries.

No panic! Let’s fix it now!

Read on →

Add class attribute to Markdown table

Earlier this week I faced the problem converting Markdown tables to HTML, unfortunately there was no way to specify custom class attribute in resulting HTML.

And that’s was quite critical for me, since my current theme is Twitter Bootstrap based and I have no other choice, but explicitly specify the class names to make styles works.

Applying styles globally, i.e. to every table element, wasn’t an options, because table element is used in some others plugins, for example for sharing code snippets.

After some research, I come up with a simple and straight forward solution :)

Read on →

Where is my commit?

With continuous integration responsible for deployment, especially in the mid to large size team the following questions might be popping up time to time:

  • Is my commit went to production last night?
  • Is it on staging?
  • Where is my commit?

No worries, GIT got you covered:

git branch -r --contains <commit SHA>

This will show all remote branches where particular SHA is found, for example:


Also, it might be good idea to fetch updates from remote branches in order to cover most recent change sets:

git fetch production master
git fetch origin staging

You can skip -r flag if only interested in local branches.


SHA of commit is changed when you cherry-pick and therefore those won’t be shown in result set for the original commit SHA

Find all cities that have no photos

Last week I noticed quite good example to illustrate the problem of finding records with empty association, i.e. when particular has_many association returns zero records.

In this post I’d love to go a little bit further into proposed solution and figure out why it actually works.

Read on →

Pow for Linux

In the previous post I shared advantages of Pow based on my experience, however there is one significant problem: It does not run on Linux :(

Sadly yes, but I’ve seen some alternatives, for example:


Rack proxy server for development


Invoker is a utility belt for managing processes in development environment. Use it for managing multiple processes with ease.


While Prax seems closer to Pow, the Invoker goes far beyond the Pow ideas and allows to manage all kind of processes, however it also adds extra complexities.

Though I don’t know how well those replaces Pow. If you had any experience please let me know how it was.

2 years with Pow

I’ve used the Pow for a quite long time so it become de-facto standard way for running all kind of Rack based applications(Sinatra/Rails/etc) for me.

Perhaps it could be good idea to share my experience now :)

Alternative to hosts with ability to run multiple projects at once is something intuitively comes to the mind and Pow really does it great, but not limited to.

Read on →