Home » Software Development (page 5)

Software Development

Release your libs like a pro

Automate, automate, automate. That’s what ultimately is our job, right? We automate the tedious processes of our end-users. So why don’t we do it for ourselves as well? This guide quickly illustrates how to setup fully automated releases to Bower and NPM. And they’re even automatically semantic versioned.   Bower, NPM, semantic versioning?? Sounds strange? Check out my article Node, ...

Read More »

Creating a Unit Testing Strategy – Part IV

This is the 4th part of the series about analyzing our code and deciding what to test. Last time, we talked about design constraints. Now we’re moving towards the code itself. Almost there. Step 6: Prepare existing code This is an obvious step in test-after. We want to test the existing code, and therefore we need to see what we’re testing. In ...

Read More »

Creating a Unit Testing Strategy – Part III

This is the 3rd part of the series about analyzing what we’re coding, and therefore what to test. Last time, we talked about test categorization and design considerations regarding testability. We haven’t touched or written any code yet. Nor will we before the end of this post. Patience is a virtue in both reading and writing tests. Step 5: Identify design ...

Read More »

A discussion on matching string prefixes

Strings are an exceptionally flexible data type. They can be used to represent virtually any kind of data, or even behaviour – think of clear text script files. With all this flexibility also come certain drawbacks however. Doing a lot of computations on or using strings can be very expensive – especially in languages like C#, where strings are immutable. ...

Read More »

Creating a Unit Testing Strategy – Part II

This is the 2nd part of the series about analyzing what we’re coding, and therefore what to test. Last time, we talked about the problem we want to test and a solution design. Once we have those, at least in some broad strokes, we can continue. Step 3: Test categorization At this point, after we’ve got a list of test cases ...

Read More »

Creating a Unit Testing Strategy – Part I

This series of posts describes the process I use to decide which tests to write, and how to write them – regarding where if the code already exists or not. This approach works for both TDD and test-after, but it works well where most of the systems are – legacy mode. The process is about understanding the environment and fitting in ...

Read More »

Triangulation – The other Role of Tests

Why Do We Need Tests? Seems like a silly question. We want to check if something is working, right? Let’s dig deeper, though. At the time of writing, if we’re using test-first, we’re designing interfaces, apply usage scenarios and refactor with a safety net. In test-after, we’re confirming that what we think the software should do, it actually does. But tests ...

Read More »

Your DI framework is killing your code

I read a really interesting post recently looking at the difference between typical OO code and a more functional style. There’s a lot to be said for the functional style of coding, even in OO languages like Java and C#. The biggest downside I find is always one of code organisation: OO gives you a discoverable way of organising large amounts of ...

Read More »

User experience on the main path–get it or get lost

The background for this post: Recently I got an email from a startup founder about a service that they are offering. It so happened that this service matched something that I was actually considering doing, so I was very happy to try it out. I registered, and on two separate occasions I attempted to use the service for its intended ...

Read More »

7 Things Your Boss Doesn’t Understand About Software Development

Your boss may be awesome. I’ve certainly had a few awesome bosses in my programming career, but even the most awesome bosses don’t always seem to “get it.” In fact, I’d say that most software development managers are a little short-sighted when it comes to more than a few elements of programming. So, I’ve compiled a short list of what ...

Read More »