No, there hasn't been any new vulnerability found in SSH, nor am I denying the usefulness of SSH as a building block in the dev toolchain. This article is about why you shouldn't be (and how you can avoid) using raw SSH sessions for development work. Here’s a little story. I spent many years working … Continue reading SSH Considered Harmful – Why You Should Be Using Persistent Sessions
Tag: programming
Rethinking Software Testing: Perspectives from the world of Hardware
The conventional view of Software Testing The hardware and software worlds may seem poles apart, and in many ways, they indeed are. But there’s a wealth of knowledge that each can learn from the other. Despite the seemingly massive differences in the final product, they share more in common than you might expect. Computer engineers … Continue reading Rethinking Software Testing: Perspectives from the world of Hardware
An Alternative to Dependency Injection Frameworks
I have a confession to make. I hate Dependency Injection (DI) frameworks. My very first job as a Software Engineer involved working with a very complex system that powered a ~100 person hedge fund. We made extensive use of Dependency Injection… but only via Constructor or Setter Injection. We did not use any DI frameworks … Continue reading An Alternative to Dependency Injection Frameworks
Myths Programmers Believe about CPU Caches
As a computer engineer who has spent half a decade working with caches at Intel and Sun, I’ve learnt a thing or two about cache-coherency. This was one of the hardest concepts to learn back in college - but once you've truly understood it, it gives you a great appreciation for system design principles. You … Continue reading Myths Programmers Believe about CPU Caches
Don’t be an Evolutionary Programmer
When you run into a problem, a bug in your code, how do you try to fix it? Do you try to debug the problem, in order to figure out what the root cause is? Do you use tools like debuggers, loggers or code inspections, in order to better understand where and what is causing … Continue reading Don’t be an Evolutionary Programmer