I’ve been a bit all over the place recently in terms of what to learn next. The main languages I’m proficient in at the moment are C#, and web programming languages like PHP. (Aside: If I hear one more person refer to HTML as a programming language I may get angry). The thing about the software industry is that something you spend a long time mastering may be obsolete in 5 years. If you’re not continuously learning, you can fall behind very fast.
Over the next 6 months to 1 year, I’ve decided to focus on certain technologies/areas in an effort to become someway proficient in them.
I’ve decided on:
C++ – The expert consensus is that this will not be replaced in the next 50 years.
Mobile Development – But I’m unsure of which platform. iOS development interests me as I own an iPhone, but it has the extra added learning curve of Objective C, of which I have little experience. I’m thinking Android or Windows Phone 7 (should it be accepted by the masses), since I’m familiar with both Java and C#.
‘Newer’ Microsoft technologies such as Silverlight, WPF etc. from the last few years that I haven’t looked at.
I feel if I apply myself I can certainly become proficient in the above areas in less than a year. By ‘proficient’ I mean be able to develop applications from the ground up as I can do in C# at the moment, not ‘master’. I’m fully aware that languages like C++ take thousands of hours to learn and many years of hands on experience to fully master.
No doubt I’ll be posting here of my experiences learning each.
Three times in the last two years I’ve attempted to become good at programming in the C/C++ programming languages, and three times I’ve either stopped half way through a book/online course, or failed to even start with any momentum.
But, I’ve dug out the books again and am determined to succeed this time. Having come from a Java background, then moving to working with some projects in C#, it seems the natural progression. I’m starting with ‘C in 21 days’, which I estimate should take about two weeks, (as I think I can ignore the ‘What is a variable/array/string?’ sections…). I also just purchased ‘Accelerated C++’ by Andrew Koenig, which I intend to read next. Maybe I’ll post a review here later.
Nothing annoys me more than looking at C or C++ code and not understanding what’s going on…