Posts Categorized in Software development

At Redgate, we’re fascinated by software development and how to do it smarter, better and more intelligently. How do we reduce the burden of legacy code and technical debt, for example? How do we use test-driven development to make the code as robust as possible. How do we apply UX principles and skills to make the complicated software we develop intuitive to use?

19 March 2014

19 March 2014

Code kata 4: Word ladder

Naming things can be very hard, yet a well-chosen name can really help a reader understand how your code works. This code kata is an old favorite, one that we’ve done before, but this time we’ve added an emphasis on naming things well. The kata A word ladder is a sequence of words (each... Read more

24 February 2014

24 February 2014

Code kata 3: Refactoring

The kata This kata was inspired by a truly ugly piece of code we came across in Redgate Towers. It had a whole bouquet of code smells: long methods, a lot of indentation, static variables, inconsistent naming, code that was duplicated with small modifications, and a couple of small bugs. And, gloriously, it was... Read more

24 February 2014

24 February 2014

Code kata 2: Amaze me

The kata You are given a program which is capable of traversing 2D mazes. However, the solution isn’t perfect and fails to find the exit in certain types of mazes. Moreover, the current solution is messy, doesn’t follow any sensible coding principles (e.g. SOLID) and is completely untested. The input to the program is... Read more

30 January 2014

30 January 2014

Code kata 1: Old money

The kata Imagine: it’s 1968 – the Beatles, Carnaby St and Austin Powers – except there’s all the technology of 2013 as well. Including vending machines. But, being 1968, vending machines have to deal with old money. It’s quite simple; I’ll describe it here. Money is made up of pounds (£), shillings (s) and... Read more

19 September 2013

19 September 2013

Jade

Writing HTML can be a chore – making sure elements are closed properly can be annoying without proper IDE support, and CSS markup often requires repeated patterns of nested divs and spans in order to get the layout working properly. There are various templating languages and engines available for dealing with this problem. Probably... Read more