Lessons from the LAMP generation – tilllate.com
Last night we were treated to Silvan and Stefans whirlwind history of tilllate.com, delivered to a packed webtuesday – thanks to search.ch for hosting and apologies to those that got stuck out in the corridor – a search for bigger meeting spaces is in progress.
The talk – described here translates (loosely) to “tilllate.com: From 0.1 to 30 Servers”;
With 100 million pageviews and 1 million visitors a month, tilllate.com is one of the biggest web platforms in Switzerland. The site currently comprises 60’000 lines of code and 430 database tables, served by a cluster of over 30 servers. Software and infrastructure is the responsibility of a team of 5 developers and engineers. Stefan (System Engineer) and [Silvan] (CTO) present their technical experiences in building tilllate from scratch.
It was both insightful and entertaining, backed with confessions and tales of past disasters. Something about the tilllate story probably rings true for most of the “LAMP generation”.
In redux: tilllate.com began is a “just for fun” project, while the founders were students. Self taught, starting from “View > Source” and graduating to PHP, the first version, released in Y2K was ~40 scripts on a shared host. You know the sort – violation of every software “best practice” such as separation of concerns – SQL embedded in HTML, ripe for injection, XSS and all that. But it worked and the site grew in popularity…
…leading up to today, six years later, where they employ more than 30 full-time staff, are storing ~1.5 terrabytes of user-uploaded images, are busy expanding the tilllate network into the rest of Europe, maintain a codebase that is approaching best practices and seem to be thoroughly enjoying themselves. It’s almost a “rags to riches” story, powered by LAMP and a bright team who took on the problems as they found them.
But a final Catch-22 came up with Silvan’s last slide – “Looking back, what could we have done better?”, under which one point was to the effect of “Employ better development practices, OOP etc.”. To which Lukas Smith (who’s now a citizen of Zürich) replied – “If you had, you probably would have failed – months developing something J2EE-a-like which, when released, falls flat on the users and is too rigid to incorporate their feedback”.
Seen another way, PHP’s shallow “get online” learning curve and “hackability” allowed tilllate’s founders to launch an interactive site at a time in their lives where they had a passion for the site’s subject. Had they instead waited to become Computer Science Majors and gathered a few years of cubicle development in BigCorp, chances are tilllate.com would never have happened.
Anyway – the biggest problem tilllate.com seem to be having these days is finding (decent) PHP developers. I don’t know if the situation is different elsewhere but I’m hearing of quite a few small-to-medium companies in Zürich with the same trouble. Where are the PHP developers?