Oh no, not another Vim article!
Senior Software Engineer at Made Tech. All about big beards, beers and text editors from the seventies.
Code fragmentation: The modern day goto
Keeping your code simple and easy to change is one of the hardest challenges when writing programs. One obvious aspect of this is the amount of code that you have to parse to understand what it aims to achieve.
Experimenting with Clojure for a day
Ruby really is my favourite programming language, I love the clean syntax and the freedom that it gives you. Beyond debugging meta programming in gems far far away, I have no real trouble with solving problems in it. Many people say that it is too slow, but I have found that effective caching and background processing negates this for the majority of typical web apps.
Preparing your team for Continuous Delivery
It can be challenging to get sufficient infrastructure set up to enable you to practice Continuous Delivery, but the biggest challenge may be changing the way you (and your team) think about releasing software.
Internal vs External Quality of Software
Many studies have been conducted in an attempt to formalise the quality of software. Some quality models have been established, like SQuaRE by Consortium for IT Software Quality, which takes into consideration 5 key points: Reliability, Efficiency, Security, Maintainability and (adequate) Size.
Morale, Recognition & Reward
Morale is closely related to job satisfaction. When morale is high, your team is happier, more productive, and more likely to believe in your organisation’s vision. On the flip side, not enough (or any) praise for a job well done, dealing with a difficult clients, or heavy workloads can significantly lessen morale, and sometimes lead to higher employee turnover.
11 Developers Who Said It Best
Those who forget the past are condemned to repeat it.
The Building Blocks of Reliable Software
When solving requirements for a system, you should extract specific roles out into service objects. The lazy path is to solve problems directly where you encounter them such as in the controller, model or view (given you are using MVC of course).
5 Software Anti Patterns I Love To Hate
Software anti-patterns are a well covered topic, but I thought I would highlight some of the ones I’ve encountered most frequently. These may seem obvious and at times innocent looking but make no mistake, they are sinister and will sabotage your efforts to add features to a codebase. I’ve gone ahead and made up my own names for some of the more specific anti-patterns.
Four ways to break your code for the greater good
Software development is all about managing complexity. We employ tools like automated testing to guard existing functionality from regression.