Software expansion

I have often thought that identifying and exploring a new idea within software is like discovering a new bubble of understanding.  The rush of first identification of the idea is followed by a phase of exploration of the extent and internal structure of the idea – the expansion phase.  It does not matter if the idea has been had by someone before – if it is your first encounter with the idea, then it is all new.  It is all good.

After a while you may start to consider the value and facility of the idea and the means by which you would go about implementing it.  Implementation needs impose a framework that  does not necessarily represent the natural structure of the idea, but defines how it would be possible to engineer the idea using the tools that you know.

To me this highlights one of the great benefits of managed software environments like .Net and Java.  The richness of the framework and the wide availability of tools and libraries enable you to focus on the idea at hand, rather than preliminary work building a supporting infrastructure.

Once the software idea has been implemented, it is often difficult to communicate the newness of the idea to new developers joining the project.  This may be due to the fact that the idea is communicated in terms of the implementation frameworks that have been imposed on the idea – which are just projections of the idea onto known tools, techniques and choices.


Spring clean your usings

If you have worked on software that has been extended, upgraded and re-factored over time – then you will be aware that using statements accumulate at the top of C# files.  Some of these will be for namespaces and types that are no longer used in the code below.

An addition to the Visual Studio 2008 IDE is the ability to clean up and organise these using statements.

Just right-click to get the context menu in your code files and you will see the new menu option “Organize Usings”.  With this you can remove usings that are no longer in use, or sort the usings for a more aesthetic list.  Or why not go for a full clean up and do both!

A cup of coffee

Software is a wonderful innovation.  There are many languages and frameworks out there that allow developers to express themselves in a simple and elegant way.

This blog will focus on some of these languages and frameworks and bring to light interesting, complex or just good to know features and capabilities.  Articles will range from simple and accessible for beginners up to whatever can be imagined.

Welcome!  I hope you enjoy the ride.