I’m teaching myself C# (again). Learning another language can get frustrating sometimes.
Going from the “Well, I know how to do it in the other language!” stage to “Oh, that’s right… I remember” part still takes a bit of time, but at least I’m going from VB.NET to C#.NET, so it wasn’t that different.
Having a goal in mind definitely helped.
My motivation behind picking up C# was pretty straight-forward… There was a poorly written plugin for PlayOn for Roku that I wanted to make my own version of. I mean, if an app’s going to scrape a website for free episodes of tv shows, it should at least do a good job of it! All of the examples I found were in C#… so I just sort of went with it…
I made a lot of progress with my plugin and got over a lot of the initial hurdles that held me back last time. Most of it just required my getting used to the syntax differences from VB.NET. I can’t say I’m in love with the language, but I certainly don’t hate it anymore.
The plugin is still a work in progress, mostly due to copyright protected media streams… but I like a challenge. I’ve decided to hold off until the next API release is pushed out (currently in Beta) because it should have better support for what I want to do.
While the plugin is on hold, I’m teaching someone who has never do ANY programming to make some simple apps in C#. I’m looking forward to seeing how that goes.
Not only does it help give me an excuse to brush up on my understanding of C#, but it’s fun being there to see those “Ah-hah!” moments when the person realizes that pretty much anything can be built (within reason, of course) and all it takes is effort and a bit of ingenuity.