Almost two decades ago I saw in the arcades the futuristic fighting game “Rise of the Robots”. As a youngster I was imagining what the future of computing and robotics could be. The game ended up not being that great, regardless of that it wasn’t visually very realistic, but instead, it relied on the gameplay and partly on the player’s imagination for the immersion. Hence, around this time, I was dreaming of tablets (from Star Trek) and completely autonomous robots that would help us with everyday tasks (like terminators, without the killing part of course and maybe the Jetson’s robots?).
Yet the future was not exactly what I was expecting. After all this experimentation and technological progress, it seems that people hyped with Chatbots (or chatterbots) instead! Continue reading →
Laziness, impatience and hubris are the three great virtues that each programmer should have, at least according to Larry Wall . My experience so far showed me that he was right. All programmers have these characteristics, if they do not, usually they are not real programmers. Since they are expressing these values with the usage of several programming languages, they tend to compare them. Usually this comparison ends up with a phenomenon called flame wars. The programmers are participating in endless quarrels, exchanging arguments regarding language features, their standard (or not) libraries, etc. Continue reading →
All PhD candidates around the world know about the thesis. You always knew about the thesis. It marks the beginning of the end for your career as a PhD and if you actually do it, you can have that cool “Dr.” title that you always wanted in your business card. What is the problem then? Why it seems so frustrating when you are sitting down to do it? The following is based on a true story, actually my story. How I managed to write it down and track my progress. Continue reading →
Many years ago (I will not reveal my age), I began working on my PhD thesis concerning the area of Domain-Specific Languages (DSLs). Research was booming at the time and many research articles stated in their introduction that DSLs are very useful and increase productivity, by reducing lines of code etc. All these claims seemed logical to me, but I always considered them something like urban legends. We all know that they are correct, but cannot easily prove it. Keeping that on the back of my mind, I searched for a way to bring the “legend” down to measurable facts that will provide solid motivation for the importance DSLs in every day programming. I decided to do a simple experiment that measures DSL usage in open source programs. Continue reading →