Posts

A Beautiful Solution?

Image
^^Perhaps^^ For various reasons me and my team hadn't been spending a lot of time at the coal face, coding.  From spikes, POCs and analysis to release activity -  coding opportunities have been few and far between. Thankfully this changed over the last couple of weeks. As part of the Payments Platform we have been given the opportunity to chip away at some of the Legacy processes to provide more flexibility in our Payments offering.  Part of this process see's us hoping to consolidate some existing logic to manage the integration with a 3rd party Payment Solution Provider more flexibly.  Specifically around handling particular types of payment which are handled differently based on certain criteria such as a customers Billing country, what currency they are paying with and the card type they are using.   Stuck In essence the work we are carrying out is a redesign and re-factor of some logic which is spread out in a number of places.  Bringing it all in, has been both  i

Book Review: The Software Craftsman: Professionalism, Pragmatism, Pride

Spur There were a few things that made me read this:  I saw it lying on my dev managers desk We have a coach from the company that the author co-founded in our place at the moment I was cynical about the software craftsman idea and thought it was about self-serving, elitist and pumped up self publicists Inspirational   I'm not a soppy or effusive person, but I have to say this book really resonated with me and, like a really good rally call,  made me feel positive about my current position and how to sustain and develop my career further and just how I might achieve this. The thing is , I knew most of this already but just hadn't bundled the virtues, thoughts and values that are described, under a particular banner.  The Software Craftsman Manifesto It actually exists!  A set of values to which a software craftsman can hang their hat.  Now, like the author says, there are people who don't like to call themselves craftsman and I am one of them, but the ide

Book Study: Patterns-Principles and Practices of Domain Driven Design

Book Study: As title Summary In summary this is an excellent book.  It is really accessible but some of the more advanced areas will need further reading elsewhere. For example, things like Aggregate design  If you are involved in Enterprise application development and you haven't yet been able to take advantage of the Domain Driven Design (DDD) philosophy, this book will show you the way. I know this because it is almost like a narrative to my experiences of the philosophy at a large e-commerce website in terms of some of the problems experienced, practices adopted, conversations with the business and stakeholders, patterns used, misused, abused and not used and every conversation about everything in DDD in-between. Go Compare I previously read the fist 3 chapters  of Vaughn Vernon's Implementing DDD book and I ran out of steam for various reasons (the birth of my second son primary amongst them). Its not that it isn't a good book (I refer to it later on and why

Twilosophy\Twitosophy

Observations of the space at present.  Tongue in cheek of course Twilosophy\Twitosophy. I don't usually offer much opinion in what I do. I  sit on the fence alot, maybe I shouldn't . However, when I do, I try to base what I know on what I really know, not on what other people tell me I need to know.  I'm sure what I am observing has been commented on before, and maybe other people agree or not, but reading a post on Twitter and then using it as your own keen insight  or shallowly cited insight is more of an indication of your lack of ability instead of  just keeping schtum or just saying "I dont know", where more respect would probably be gained.  The above practice seems to be rife in software development at the moment.  I'd be a hypocrite if I said I hadn't fallen into the trap, but - like a recovering alcoholic - I have realised the errors of my ways and I am standing up and saying my name is Colin and I am a twitosopher (at times)  and shallow

Sql Static Code Analysis (revisited)

Static Code Analysis. You may remember my opening gambit in a post about SSDT code analysis talking about coding standards back in May 2014 (but most probably not)  It went something like.... Coding standards (and more latterly styles) in any organisation of any size are liable to incite religious wars and makes zealots out of even the most considered or apathetic of us.   Inconsistency and subjectivity,  lack of enforcement and heavy handedness all contribute to the contempt often levelled at them... blah blah Contributing to solving the problem. As part of one of our projects we had some funding to invest some time  and dev into SQL static code analysis, after researching what was available we had the green light to incorporate analysis written to leverage the SSDT code analysis framework into our own CI/CD ALM framework.  The appetite for this waned somewhat with the DB community having their own take on what they wanted to use, but the code lives on and some small bits of w

Async/Await Revisited

I put up an article back in November '14 about using async/await for a toy project I had created.   I have now had a chance to use it for "real work" and, as a result, have had a chance to research the language feature in more depth and have come up with a list of considerations, resources, gotchas and tid-bits.    Must Reads There is a lot of literature available for this feature and plenty of MSDN articles and Stack Overflow related help, however, I'd highly recommend the following books for greater insight into TAP, TPL and async/await:  CLR via C# (Fourth edition for async/await content), Jeffrey Richter Concurrency in C# Cookbook, Stephen Cleary Async in C# 5.0 ,  Alex Davies Blogs by the latter two also cover this feature in great detail. They all overlap in their coverage on async/await. As an aside, the first book I would recommend to any serious C# developer anyway, I'd say its on a par with the "C Programming language by Kernighan

A little bit of powershell in my life

Things were so simple then. Having used 'nix at University and a bit beyond  I came to love scripting, using things like Bash and tcl,  prior to that I had just written a few simple batch scripts in DOS.    Excluding JavaScript from the fray which doesn't, arguably, fit in the same category as lower level scripting languages I really haven't done much apart from a bit of Perl and  although its called a scripting language it is a high level programming language.  Years later, and after having been indoctrinated into the Microsoft Stack, I have hardly written any scripts or have had any need to, but that is changing. ALM My current place has a few bits of software that use Powershell and, some,  lots of it. Its the tool/language of choice for the ALM framework developed in house, used to push software out from local environments to production  environments (in some cases).  The framework consists of 100s of scripts and XML configuration files, to map to the myriad of