Well it is the 2nd week in January and for some people the New Years resolutions are slipping, but for many of us there is 1 resolution I hope is not slipping and that is the massive challenge set by many organisations like CodeAcademy to learn a new computer language this year.
1. I wanted greater flexibility in managing my Cloud environments – I knew VBScript and could use that, but I fancied a little bit more of a challenge. Ruby is a flexible, powerful and concise scripted language, it is also cross platform which helps!
2. I had an idea for a Kinect application for Solution Manager, the SDK for the Kinect uses either C++ or C# so I needed to use one of them
3. Being able to interact with the vast world of web services and APIs to do things in a more structured and less manual way
I would put Owen Pettiford great blog on why “Developers are the new king makers” – a great blog with a powerful message.
I picked 2 languages, Ruby and C# because they are both important in the wider world and because they are fundamentally different.
Ruby is a Scripting language, which means it is compiled at runtime, meaning that changes can be performed between executions without needing to be recompiled. It is a very lightweight and scalable language, which when used as Ruby on Rails is the basis of many web applications. So through knowing Ruby and some Rails, I would be able to interact programmatically with many web sites, web services and APIs. Importantly, Ruby is considered an Edge component of SAP PaaS platforms, so knowing Ruby would help me to take advantage of PaaS services.
C# is a compiled language, which means that it is compiled at design time and often runs faster as the compilation overhead is removed. C# is a Microsoft language which forms a key part of the .Net framework, as Microsoft is a major SAP partner and many external interfaces and user interactions are through Microsoft – eg Duet Enterprise, Sharepoint, BizTalk. Knowing C# would help me to adapt and understand many of the new technologies coming from SAP and Microsoft – like the Kinect. C# is also not that far removed from Java, so any delta training required should be a little easier.
I know I would struggle to learn two languages at the same time and do my day job, so I have concentrated on Ruby as it appears to have a faster pay off to effort ratio – which will keep me interested and also provide me with value which I can put back into my day job. It will also get me back into OO programming, something I have not looked at since my Computer Graphics days in University.
Hopefully many of you are also taking on the CodeAcademy challenge to get t grips with programming, and I hope you succeed at it because there is a world of data out there. Human beings are producing more data in 1 year than previously existed in all the combined previous years. So being able to work with it, manipulate it and use it to do amazing things is paramount to not being held hostage by others who can do it.