Welcome to our continuing series of CodeProject interviews in which we talk to developers about their backgrounds, projects, interests and pet peeves. In this installment we talk to Nish Sivakumar, a literal CodeProject legend.
Who are you?
I am Nish Sivakumar, and I work as a software developer in Central Ohio.
Outside of my fulltime job, I do spend a good deal of my time working on
personal programming projects, many of which never see the light of day. I also
have serious interests in photography, road trips, and mixology.
What projects have you worked on?
I've always primarily been a Windows developer (and a DOS developer prior to
that). So outside of a few rare occasions when I've worked on non-Microsoft
platforms/libraries, it's mostly been desktop development on Windows using VC++/MFC
originally, and later using newer frameworks like Winforms, WPF, and Silverlight.
For about 2-3 years now, I've also been doing a fair bit of ASP.NET development
in MVC 3. The projects I've worked on have varied from line of business apps and
websites to specialized security tools. I've recently developed an interest in
Windows store applications targeting Windows 8.
What is your development environment?
My primary desktop is a reasonably outdated but still fairly decent Intel
Core i7 2.67GHz with 12 GB memory dual running 64-bit Windows 7 Ultimate and
Windows 8 Professional. My primary laptop is an Intel Core i7 with 16 GB memory
and dual disks (SSD + 7200) running 64-bit Windows 7 Business. I use Visual
Studio 2010 as far as I possibly can (and VS 2012 for newer projects), and my
primary dev languages are C++ and C#. There are too many
desktops/laptops/monitors lying around the house, so I'd rather not document
them all, and despite my wife's cynical comments, I do have uses for all of
I do not really have a favorite framework as such. I've at various times in
the past thoroughly enjoyed working with MFC, .NET, WPF, Silverlight, and
recently WinRT. I am also not very particular about syntax, so I've felt quite
comfortable working with extensions to C++ such as C++/CLI and C++/CX.
What new tools, languages or frameworks interest you?
better than it is now. Just never managed to find enough time to get to it. Some
What is your coding pet peeve?
That would have to be inconsistency! If you pick a style of coding,
then stick to it. To see multiple syntactic and naming convention styles in the
same piece of code can be terribly annoying. I also hate to see poorly thought
out hacks in code - where something's just added as a quick fix without checking
to see if there was a better way of fitting it into the current design. While
sometimes these things are inevitable during last minute deployment fixes, these
should be temporary and should be fixed and re-coded as soon as realistically
How did you get started programming?
I was in high school when I got to see a PC for the first time in my life. It
was an 8088 machine with 640 KB RAM running DOS 3.x. My first programming
languages/tools were GWBASIC and MASM, although I soon moved onto to Turbo Basic
and later Turbo C. I remember my major high school computer science project was
a dBASE 3 Plus clone, and it's a big regret that I did not keep those original
floppy disks safe. Would have been a fantastic bit of nostalgia to have had with
How has the developer community influenced your coding?
I've had some very interesting experiences with the online developer
community through the past 15 years or so. A large number of my real life
friends are people I originally met through sites such as CodeProject or the
MSDN forums. While I am not as active in the non-technical developer forums like
the Lounge these days due to family, work, life coming in the way, every time I
open forums like the Lounge, that feeling of familiarity and warmth is hard to
put into words. I am not sure if the stereotype about programmers being shy and
awkward geeks applies to everyone else, but it certainly applied to me early on
in my life. I firmly believe that my interactions with the CodeProject
community helped me improve in subtle little ways.
Where do you see yourself in 10 years?
I guess I'd still be designing, architecting, and writing code. Although I
certainly hope I would be making heaps more money than I am today
What advice would you offer to an up-and-coming programmer?
Set high standards early on and try and stick to those standards. People who
are satisfied with sloppy work early on in their programming lives never really
get out of that rut (in my experience).