Last week at the Pragma Conference I had the pleasure to attend a bunch of very interesting talks about designing better code and application architectures. During one of the breaks I was chatting with a friend and one of his reflections was along the lines of: We enjoy these presentations with great tips about good app architecture, well designed code, refactoring and when we go back to our job we end up dealing with the usual crap: duplicated code, patchy architectures and close to zero test coverage.
Lighting, benches and paths can be designed to force or prevent a given behavior. This episode of 99pi is a great overview of hostile design. It’s incredible how you can design a bench on which it’s impossible to sleep or rest for more than five minutes. Check out also the videos with people enacting weird poses to show the hostility in the design of these objects. What about software? What about that newsletter that asks you to login when you want to unsubscribe?
In the beginning there was the Monolithic application. Then we had (and still have) Microservices. Now the hot word is Serverless. I confess I am intrigued. Maybe a serverless approach could force me to think even in simpler terms. But then the pragmatic side of me takes over and thinks that, much like in fashion, in technology there are trends and I am totally fine with the old trend of the The Majestic Monolith.
There’s an interesting discussion going on in the Cocoa community. It’s about being reactive vs traditional. While reactive programming has been present in the Cocoa community since 2012 with ReactiveCocoa, RxSwift is getting quite some attention lately. The recent discussion happened between these posts: The Reactive Revolution of Swift The Non-Reactive Solution To React, Or Not To React Comparing Reactive and Traditional There’s more, but that is the backbone of the debate I think.
I advocate for Tech Leads to spend at least 30% of their time coding. Pat Kua source That’s just one of the gems in the article. Even if it’s written by a guy that worked in a big company for twelve years, many suggestions are relevant also to solopreneurs. I worked in the enterprise in the past. The first time was at a Java shop, building software for invoicing.