Routes::Tiny tips and tricks

Routest::Tiny have improved a lot since the first release in 2011. Here I collected some tips and tricks that maybe are not that obvious from the documentation.

Below are the practical examples from the working Kritika code.

Connecting GitHub, and TravisCI

Let's implement the real world scenario: every time we push to GitHub we want to run perl critic on Kritika rules and tests with coverage on TravisCI. Then we want to merge these results together in one place to be able to say: yes, this is a good commit (or a pull request)! Connecting all three services is an easy 3-steps process (5mins approximately).

Announcing Kritika.IO, a service for analysing your Perl code

For the last year and a half I have been doing some code reviewing at work. And I noticed that most of the time the tasks are reopened because of very small things, like text formatting, variable naming and so on. This could've been prevented just by using Perl::Critic for example. Unfortunaly the code base is big, and that would take a lot of time. That's why I have written which makes the analysis incrementally and is damn easy to integrate with GitHub and Travis CI (or anything else actually). The service is in beta right, but i have been using it secretly for the last 5 months anyway. It is useful for me, maybe it can be useful for you too.

Useful web application design patterns

I have collected the most useful web application design pattern that I use in web applications I code at work and also for my personal projects. They are presented in a way of a problem and a solution.

Publishr — publish everywhere

For I needed a tool to post the new issue announcement to several social networks. It ended up supporting Facebook, Twitter, LiveJournal, VK, Email, IRC, Jabber/XMPP, Skype and more.

Mixins in Perl

If you want to use mixins in Perl you don't have to install anything or play with symbol table yourself. It's right there, in the core.

App::chronos - automatically record your computer activities

Often you want to know how much time you spend on a random computer activity during your work/home day. There are lots of apps that allow you to record the time, unfortunately you have to manualy turn them on and off. It can be really frustraiting when you forget to do so. So I have written an app that does that automatically.

SQL::Composer - mapping SQL from Perl and back

SQL::Composer is yet another SQL mapper. But unlike others it does something very useful. It allows you to not only build an SQL from a Perl structure, but when getting the data from database to map it back to the usable Perl structure.

Go infrastructure for Perl developers

So I have decided to look into the Go language a bit closer. Last time I ended doing just a simple tutorial. This time I decided to rewrite this blog engine ( in Go. The result can be found on GitHub ( There is no really a need to describe the language learning issues in this blog post, but I wanted to share a comfortable infrastructure that I researched while trying to learn Go.

Contracts in mop

While trying out mop I decided to implement contracts, or basically a simple type checking system.