Software development

Refactoring: Replace Exception with Test

Exceptions are mechanism to transport information about errors in object-oriented code. But they come with performance hit when not used carefully. Still we find a lot of code when exceptions are not avoided but used as a control mechanism in code flow. This post introduces replace exception with test refactoring that helps us to avoid at least some exceptions.

Refactoring: Improving the Design of Existing Code

Although I bought refactoring book by Martin Fowler years ago it is still valid. I call it one of the timeless books about coding and I consider it as a mandatory reading specially for novice programmers who are entering the field. Of course it is also useful handbook for those already in business. This refactoring book covers and organizes most of changes we are doing to source code every day and it greatly helps us to understand the nature of those changes at crafting level.

Why NOT measure progress using subjective percents

The first busiest part of year is successfully survived and it’s time to go on with business tuesday blog posts again. As I’m working on some progress measuring features for some time I will document here my ideas about this topic on more general level so business people can also read about my experiences and ideas. This time we make deep-dive to percents that describe how much task in progress is completed.

Working at home

Working at home is modern way to work but it is often very challenging too. Over years I have heard different stories from different people about working at home. Some of there people have been successful on it while others went back to office quickly after couple of days of trying. Let’s see what makes working at home challenging and what you need to get your home office running.

Ten keys to successful outsourcing

It’s business Tuesday again and this time I will share with you some of my experiences on getting started with successful outsourcing. Outsourcing may sound like something simple or something too troublesome but if you do your home work well then it is possible to succeed and have a cooperation that really makes your life more rich by many aspects you maybe don’t expect at first. Here are some of my experiences.

Software rescue services

Time for business Tuesday post. Source code gets rotten, systems get slower, every fix takes a lot of time, estimates for implementing new functionalities get more and more utopic, customers are mad, users are mad, developers are exhausted – struggling with problem like this? Maybe it’s time to use some software rescue services?

Microsoft .NET: Architecting Applications for the Enterprise

Enterprise applications need good architecture to survive ever-changing demands of customers. At same time these systems must be stable, convenient and easy to use which leads us to need of good architecting skills. Some customers need desktop applications while others need web-based and mobile applications. Making good architectural decisions is not easy and this is where brilliant book Microsoft .NET: Architecting Applications for the Enterprise by Dino Esposito and Andrea Saltarello comes in. (more…)

How innovation can turn to burning hell

During years in software development business I have seen many cases when layering in system architecture is made innovative way and later innovation turns out to be the worst nightmare developers and their managers have ever seen. Years ago I got very painful experience on how things can fail with unapproved bleeding-edge technologies that were selected to support sales to customer. Let’s take a look at hell for a moment. (more…)

Using Visual Studio database post-deployment scripts in practice

Visual Studio database projects support database post-deployment scripts you can use to make additional modifications to database or to insert some test data. In my work I use database projects and post-deployment scripts very often. In this posting I will introduce you how to use post-deployment scripts to make dealing with database and data easier for developers.

Understanding exceptions artistic way

Finding out reason of bug in code is not always easy thing to do. But it can be extremely hard if you have no idea what do with information that exceptions provide you. In this posting I introduce you weird artistic handling of exceptions and unfortunately this story comes from real life.