Sometimes using a highly technological tool
primitively is the
first step towards understanding the tool and
inevitably utilizing it to the
limits as time passes by … and experience
accumulates …
But
staying away and
refraining from using the newest
tools & languages for software development based on the pre-assumption of
difficulties and
inability to understand such technologies would surely keep one at the status quo ..
That's
why you see people
sticking to their
old habits and afraid to try
newer and emerging technologies … In the
past when
Microsoft’s Visual Basic (
VB) was released I remember keeping away from using it ..
until the
second release was out .. I read several articles in magazines about how great
VB was .. So I started using
VB .. developing simple
solutions and applications within the framework of my knowledge that covered
FoxPro,
Fortran,
BASIC &
Assembler … and as I progressed I
started shifting my mind-set from the
old way of doing things
to Event driven visual metaphors ..
Eventually I reached the limits imposed by
VB and
switched to
Delphi (Version 1) and had been using
Delphi for the past
12 years …
My
approach and
methodolgy for software development
un-intentionally shifted towards
OOPS (
Object
Oriented
Programming) .. as
Delphi was
OOP from the ground up ..
Then came
Microsoft’s Visual Studio and
C#2 , which I started considering as an alternative to my then current development tools .. I started trying and testing the various features of this development environment and
C#2 .. but I preferred sticking to
Delphi due to the fact of
my fluency in the language and deep understanding of it’s
VCL class libraries ..
Then came
Visual Studio 2008 and
C#3 with a lot of
new and powerful technologies such as
LINQ which was architected by
Delphi’s Anders Heijlsberg ..
under the cover the soul of
Delphi still exists in these new offerings .. so I found the path of moving from
Delphi to
VS (
C#3 ,.NET &
LINQ) more promising with a potential of attaining fruitful results in developing better applications and solutions ..
This switch inadvertently
did not go as smoothly as expected ..due to the
fact of differences between
Delphis’ class library (
VCL) and the
.NET class library .. as well as the syntax variation between
Pascal &
C# … But after going through a phase of
evaluation and testing of various programs .. and after experimenting with
LINQ to SQL,
LINQ to XML &
LINQ to Objects .. I
realized that the
change was worth all the effort ..
despite the fact that one would go through an initial phase of
lower productivity … but
now I
never look back and
never regret making such a switch .. as I found the newer tools and development language (
C#3,
.NET &
LINQ) much
more efficient in producing working applications in a much
shorter time and
less code … and
un-intentionally I found myself moving on to
Functional Programming which is seen as the future paradigm of
software development ..
( N.B. This blog post is a reply to a friend’s blog.)