Dividing software into separate layers or tiers is one of the most fundamental principles within software engineering. We all know the beautiful schemas vendors create in order to show the modularity of their software. And anybody will agree that a layer can abstract away a lot of underlying complexity to the rest of a system.... Continue Reading →
We Need Better Languages, Not More Frameworks
We tend to think that programming languages are getting smarter every year. But do they? Many people also believe that the endless stream of open source frameworks makes us more productive. But is that the full truth? It's hard to measure productivity. And, of course, we can produce more beautiful and bigger systems than ever... Continue Reading →