Coding Philosophy
A collection of 117 posts
Informative Versus Transformative Learning
In the technology field, particularly programming I feel like we tend to focus a lot on informative learning. Informative learning is just building upon what you already know. For instance, if you already know how a for loop works in C, and then you learn how to implement it in
Two Questions To Improve Your Software Development
Learning is about asking the right questions. When I get a new client, I need to learn about their business and their software development process. I ask lots of questions. There are 2 questions that always seem to lead to the most insight. Asking these questions of ourselves can generate
Soft Skills for Software Development
We tend to equate writing software with technical skills. It certainly does involve some technical skills, but really writing great software is all about human skills, often called soft skills. It’s all about how you interact with other people. Typically you are working in a group and even if
Keystone Pattern
Reading the Continuous Delivery book recently has got me thinking a lot about ways to achieve continuous integration while still adding new features. The book suggested Branch By Abstraction as a way to avoid stepping on each other’s toes. It also mentioned the Keystone pattern.
The real problem the
The Problem With Solving Problems
As engineers we pride ourselves on problem solving. That’s what we do. However I find the use of the word problem to be somewhat problematic (pun intended).
When we use the word problem, typically we are referring to something that is not working. Often it was working, but for
What does scalability actually mean?
So recently the question of scalability came up on an NI forum post. Stephen Loftus-Mercer (aka AristosQueue) made a very interesting point. He talked about how scaling can mean many different things to many different people. A solution that is scalable on one axis might not be scalable on another.
The Value of Software Quality
So I stumbled upon a few things recently:
* a J.B. Rainsberger presentation about “The Economics of Software Development”
* a video by Andrea Goulet that touches on some similar issues (thanks Fab for recommending!).
* a video by Jessica Joy Kerr on “The Secret to Software Quality”
To me they are
Agile Samurai Course
Last year I had read the book, “The Agile Samurai”. I recently stumbled upon a companion udemy course. The course is excellent. It more or less follows the book and provides good reinforcement. It provides a really good basic introduction to the ideas behind agile software development and an easy
Distributing Test Doubles and Mocks
One of the questions that came up in our recent Unit Testing Workshop was:
How do I distribute reusable test code such as Test Doubles and Mock Objects?
This question caught me by surprise. It wasn’t something I had really thought a lot about. I had typically just been