Archive for the 'software development' Category
A comment on a recent post of mine made me think more about the distinction between a Software Programmer and a Software Developer. To me there is a subtle, but important difference. Let me give you my definition:
A Software Programmer is someone who really knows the environment he is programming. He knows everything there is [...]
September 4th, 2007 | Posted in habits, programming, software development | 16 Comments
It’s not without sadness I see that what used to be my favorite language has taken a big dive in popularity recent years. Now Borland Delphi is only the 14th most popular programming language according to TIOBE Programming Community Index as per august 2007. That is five ranks lower than one year ago, and far [...]
September 2nd, 2007 | Posted in Delphi, programming, software development, tools | 15 Comments
When people talk about tools in the context of software development, they usually refer to stuff like Integrated Development Editors, Automatic Build Systems, Testing Frameworks, Documentation Extractors, or other useful applications that makes their lives as developers easier. Those are all great and productive tools, but they are not the most valuable ones. What really [...]
August 31st, 2007 | Posted in habits, software development, tools | 29 Comments
In my previous post I mentioned that I wasn’t sure of how the D Contract Programming feature works in an override scenario. Wekempf inspired me to delve deeper into the matter. Here is what I found.
Contract Programming states that preconditions may be weakened by a deriving class, but never hardened. For postconditions the reverse is [...]
August 29th, 2007 | Posted in D Programming Language, programming, software development | No Comments
If you are a defensive programmer like me, you make heavy use of assertions to guard assumption you make in your code. For example, a method for adding an order item to an order object could look something like this:
class Order
{
private List orders;
int addItem(OrderItem item)
{
assert(assigned(item));
[...]
August 27th, 2007 | Posted in D Programming Language, programming, software development | 6 Comments
Agile software development techniques have long been utopia for low level system developers. The C programming language has been the most reasonable choice for implementing hardware near applications and drivers; But C was not designed with agility in mind. Hence methods like test driven development has been a pain to implement using C.
Now an alternative [...]
August 21st, 2007 | Posted in D Programming Language, programming, software development, test-driven | 4 Comments
I am currently employed at a government owned, medium sized company. The company’s IT-division is struggling to satisfy the diverse needs of the other divisions, and is constantly undermanned. One clear indicator of this is multiple project engagement among developers. It has become the default state.
It’s understandable that management give in to the pressure and [...]
August 20th, 2007 | Posted in project management, software development | No Comments
Do you work in a team that jell? Then you know the feeling that comes when the team starts to do everything right: solving problems before they even surface, finishing every iteration early, delivering high quality software - while having fun. That feeling is something you will never forget, and you should consider yourself extremely [...]
August 13th, 2007 | Posted in project management, software development | No Comments
I have been working on an article for a Swedish computer magazine. The article is to compare Java and C#.NET. In the writing process I have gone through lots of material, mostly articles found on the Internet.
So far the quality of those articles have been varied. Most of them are old and to some extent [...]
July 20th, 2007 | Posted in software development | 3 Comments
A common habit amongst us software developers is the practice of sub optimization. If you find yourself thinking “I might use this function/class later, I’d better make it general,” or “I’ll use a static variable since it’s faster” then you are guilty of sub optimizing.
Optimizing prematurely is bad, and usually get you into trouble. It [...]
November 24th, 2006 | Posted in software development | No Comments