Marko Anastasov wrote this on February 18, 2015

Semaphore in DZone's 2015 Guide to Continuous Delivery

Many thanks to DZone for including Semaphore again in its annual report on continuous delivery, recognizing Rendered Text as a featured vendor.

DZone’s Guide to Continuous Delivery is a a premium resource focused on continuous integration and DevOps management trends, strategies, and tools. It gives an overview of continuous delivery practices and how continuous delivery affects many aspects of an organization.

You can download a free copy of the guide here.

Marko Anastasov wrote this on January 27, 2015

Photos from Rails Girls Novi Sad #1

Last weekend we co-organized the first Rails Girls event in our town.

Rails Girls Novi Sad #1

View more photos from the first Rails Girls Novi Sad in our Flickr album.

It was a great pleasure to introduce these curious girls to Ruby on Rails and the world of programming in general. They were only a fraction of those who applied to attend, so we’re looking forward to repeating this event and sharing the joy of coding again.

For news about future events, you should follow @RailsGirlsNS and @RenderedText on Twitter, or subscribe to our events RSS feed.

Marko Anastasov wrote this on July 4, 2014

Redesigned: The New

This week we’re very excited that we launched a brand new design of

Our website looked like this for a very long time:

It was a great representation of us back around 2009-2010: a small and lean team doing full service web development. The layout was optimized for a few pages as they were conceived at the point of design and while we loved it, it was not flexible enough for new content ideas. As a result everything but the blog has eventually become out of date.

The new site looks like this:

The first thing you see is us, as our goal was to tell you more about who we are.

Nowadays there are always some events which we are either organizing or attending, places where you can meet us. So we are introducing a new section for events, with it’s own RSS feed which you can subscribe to. Our blog feed remains the same, however the fate of FeedBurner is questionable so we now encourage you to subscribe directly to

Visually, we looked for style over fashion. A layout that is simple, text-driven, pleasant to read and free from elements which look cool only to become passé soon.

We hope you like the new design. Our sincerest thanks goes to Superawesome for the collaboration on design and Nikola Bradonjić for photography. And to you — for listening.

Marko Anastasov wrote this on May 16, 2014

base-app and admin_view work with Rails 4

I just released admin_view 0.3 and tagged base-app at a point where they both work great with the latest Rails 4 (4.1.1 to be precise).

base-app is the Rails application template we use to jumpstart new projects. It includes the full BDD stack set up and a number of helpful gems configured to work out of the box.

admin_view is a small code generator that can create a nice Bootstrap-friendly admin interface for existing Rails models. In our practice we almost always want to be able to access some data from the database with a domain-specific twist. This gem helps us get the data immediately and the flexibility to customize whatever we need.

Marko Anastasov wrote this on May 15, 2014

Rails Girls Belgrade 2014 Applications Open

Just like last year, Rendered Text is supporting a Rails Girls event in Belgrade with mentorship.

The goal of Rails Girls is to give tools and a community for women to understand technology and build their ideas. This is done through a two-day workshop where women with no programming experience create a simple Rails web application.

The event will take place on May 31st and June 1st. More information (in Serbian) and how to apply is at

Please spread the word if you’re in the area. Feedback from last year was great and we’re looking forward to helping this year’s participants learn something new.

Marko Anastasov wrote this on February 20, 2014


Today Rendered Text becomes five years old. I’m not fully aware how much time that really is, we’ve just been doing this thing, you know? But it feels a bit like graduation.

For my partner Darko and me Rendered Text has always been primarily a conduit for creativity. In the beginning the idea was, we need to figure out a way to make money making software that we like. We loved making software: designing the classes, making the UI simple to use. And we liked working together. A quick survey of local companies amplified our desire for independence. We had this social network slash user generated content thing going which was so much fun, because real people actually started to use it and they liked it, but it was still a long shot for making a living. Let’s try consulting. We can write pretty much the same kind of Rails code we’ve been writing ourselves and get money? Awesome.

The day we became entrepreneurs I knew it was the right thing to do. We thought we were ready for projects with a large impact. The only thing left was to learn a million small lessons about how to run a business. Don’t work for a percentage. Is answering an email billable time? Have a policy for late payment. Nobody will find you unless you spread the word. There’s so much you can read on the web but somehow nobody shared the exact advice that you need right now. Learning from your own mistakes often happens sooner than you can find the right article or presentation.

I am very proud that we kept the company independent. It’s not that we haven’t tested the VC waters; Plakatt was the first Serbian team to appear on a Seedcamp, and Rendered Text was a winning company in the first ever Balkan Venture Forum. In hindsight, on both occasions we were seeking help in building something that was beyond what we could accomplish. Fortunately for us, the second time we were actually wrong and needed just a little more patience for Semaphore to bring more fruit. Right now six of us are working on it, and I couldn’t be happier about the sweet design, engineering and business challenges that we are dealing with every day to produce something that thousands of people across the world love to use every day.

The only thing Rendered Text has though, are its' people. By far our biggest accomplishment has been creating and maintaining a stress-free place where communication is open, people collaborate all the time and knowledge is always seeked and shared.

Here’s to another five years.

Marko Anastasov wrote this on January 30, 2014

Become an exceptional programmer by learning to ship

It seems like there is always a shortage of good programmers; that is why programming is one of the highest paid professions today. Note that there is no shortage of programmers in general. Companies that need a high body count in order to be formally capable of negotiating certain kinds of deals do not have a problem finding people for that. But I am not interested in that kind of a programmer. I am interested in those who love their craft and want to create something meaningful.

Such programmers need to stand out of the crowd when starting their career in order to work in a company that is a satisfying place to be in. These companies typically say something like, we hire through open source. When we at Rendered Text post a job ad, we always mention as a requirement that the person applying should have shipped at least one project to end users, be it open source or otherwise. Because sometimes cause and effect get confused, I want to explore a bit what that means exactly.

What does it mean to ship?

Young programmers, due to lack of experience, sometimes don’t see that writing code is only a small part in producing software. To borrow from the terminology presented in the famous book The Mythical Man-Month by Frederick Brooks, at the beginning we have a program. It is standing alone on a drive somewhere, not used by anyone and not interacting with other components in some kind of a production system. This is the easiest thing to accomplish, because generally we work alone and can declare the code as “finished” at any point in time.

It is more expensive to produce a programming product. This now involves shipping your code to the public. Desktop apps need to be easily installable. If the program is a library you need to polish the API, hopefully refactor the code to some degree, provide some tests, write documentation, write and publish a public announcement. The moment all that is completed, you enter a phase of maintenance: you begin to communicate with your users, perhaps contributors as well. You also need to repeat the process of developing and releasing new versions.

So for example, publishing source code of an implementation of an audio compression algorithm on GitHub is not shipping. On the other hand, a library with multiple versions, downloaded and used by hundreds of developers is a clear indicator of shipping behavior.

Most software needs to interact with other parts of a system in order to become alive and useful. You need to make sure that your program is stable and works efficiently with other components. For example, a web application needs to use a database and system memory. Writing code for mining data from a remote API is a good first step; making sure that it’s a runnable application that can scale to many users over a long period of time is a different matter.

Useful software then is a product that works well in a production system, and shipping means developing useful software. Any software company’s best interest is to avoid hiring programmers who are not capable of persisting through all phases of development over a long period of time. People do drop off for whatever reason, some of who unfortunately have brilliant coding skills. There are more aspects to hiring of course, but demonstrating that you’ve been capable of shipping something in the past is definitely a requirement in any good software company.

Browse Archive

If you like what you are reading, subscribe to our RSS. You can also follow us on @renderedtext for updates.


Rendered Text is a software company. For questions regarding Semaphore, please visit Otherwise, feel free to get in touch any time by sending us an email.

Rendered Text
Svetozara Miletica 10
21000 Novi Sad