Thoughts about software development from an Agile Developer who mostly uses Microsoft Technologies ... trust him if you dare
Friday, 25 September 2015
Monday, 21 September 2015
TDD and Emergent Design (or The Blind Architect).
The pun behind the title of this blog entry might not become apparent until the penultimate paragraph, but I would encourage you to stay with me (so to speak) throughout the essay and hopefully you will draw the same conclusions as I do with respect to why and how TDD results in beautiful, organic code.
Sometimes we know instinctively just how our implementation will turn out (for example if there is a well known pattern which we can apply) but yet still we must be unyielding in our approach.
The Dependency Inversion Principle And The Dependency Injection Pattern
Following on from a previous blog about Inversion of Control, I intend to continue by discussing the patterns identified in that article as being IoC patterns, or rather implementation patterns which enable the application of the IoC concept. Specifically in this post we will be looking at the Dependency Injection pattern, which will be followed up by a post on the Service Locator anti-pattern.
What is the Dependency Inversion Principle?
The dependency inversion principle refers to a specific form of decoupling software modules. When following this principle, the conventional dependency relationships established from high-level, policy-setting modules to low-level, dependency modules are inverted (i.e. reversed), thus rendering high-level modules independent of the low-level module implementation details.
Monday, 14 September 2015
Returning to a previous client ...
One of the best things of course is knowing that someone you have done work for has noticed your achievements on their behalf and has placed value on having you as part of their workforce.
I take great pride in knowing that somebody has been in a meeting without my involvement, most likely several months since I was last on the client's site, and they have said "you know who would be good to have on this project? Bill."
I am looking at one of those occurrences again right now. An interest in hiring my services has been expressed and whilst financials are arranged (they have to acquire sign off against the budget) I feel compelled to re-investigate the technologies currently being employed on the project for which I am sought.
Did Uncle Bob get it wrong? ... a question not posed lightly
I have always taken everything I've read or heard from Uncle Bob very seriously. I've been reading a lot of stuff on his blog (I hope he doesn't mind the link, but I'm sure it will be fine)
Anyway it is with great reluctance that I posit the notion with this question ...
Did Uncle Bob get it wrong?
One blog in particular from Uncle Bob caught my eye recently, it is entitled 'Interface' Considered Harmful and can be found hereI lapped it up, every word that had been carefully selected so as not to leave room for ambiguity. I thought it was a great post and that it helped me to realize just what it was that was bugging me about .Net. There was this little itch when I consider C#. Don't misunderstand me at all, C# is my language of choice these days, but there was something niggling away at the back of my mind and reading that blog entry brought it right to the fore.
Wednesday, 9 September 2015
Einstein's Riddle
1. The Brit lives in the red house.
2. The Swede keeps dogs as pets.
3. The Dane drinks tea.
4. The green house is on the immediate left of the white house.
5. The green house's owner drinks coffee.
6. The owner who smokes Pall Mall rears birds.
7. The owner of the yellow house smokes Dunhill.
8. The owner living in the center house drinks milk.
9. The Norwegian lives in the first house.
10. The owner who smokes Blends lives next to the one who keeps cats.
11. The owner who keeps the horse lives next to the one who smokes Dunhill.
12. The owner who smokes Bluemasters drinks beer.
13. The German smokes Prince.
14. The Norwegian lives next to the blue house.
15. The owner who smokes Blends lives next to the one who drinks water.
The question is: who owns the fish?