Thursday, December 9, 2010

A New Adventure

Next week, I am attending my first class to learn about  the .NET framework, the C# programming language, and Visual Studio 2010 (C# 2010 and ASP.NET 4 2010 Bootcamp at Benchmark Learning ). I've already spent the past 3 months or researching development techniques and practices on my own and developing side-by-side with some of the application developers in my department to learn from the experts, but in order to move forward toward my goal of becoming a developer myself, I needed some formal training.

I am excited to embark upon a new adventure and face a new challenge, but at the same time, I am terrified that I won't understand the subject matter or that I won't excel at software development. In order to feel more prepared, I've been reading up on Object Oriented Programming and practicing writing my own simple applications in C#. I have learned how to create a class, an object, a method, a property, and an event handler. I've practiced designing simple user interfaces (beginning with the age-old "Hello World" application and then graduating to simple games and a small program that randomly generates math problems and runs a timer).

Today I had my biggest success yet: I was able to (with assistance) create an application that automatically tests the User Interface of another application by creating a delegate with an event handler and invoking method from the application being tested (Article by James McCaffrey). While I didn't fully understand the code I was writing, I was able to infer the meaning of some things based on McCaffrey's explanations of what was going on behind the code, and ask my developer colleagues for help understanding the more complicated code. When I was finished, it was pretty cool to watch my test application push the buttons and return results in the other application, and then tell me whether the tests I wrote passed or failed. I am excited to write more throrough tests tomorrow to further prove out my test application, as well as to practice more code writing.

My goal in the coming weeks is to narrate my learning process so that I can refer back to things I learned and the struggles I faced in the future when they are not as fresh on my mind. I also hope that by keeping a log of my struggles and epiphanies, this blog might also serve as a reference point (and a point of commiseration) for other beginning developers. Here's to the challenges (and rewards) ahead!

No comments:

Post a Comment