06 August 2007

time flies

...when you're having fun. Was your summer fun? I hope it was. My summer was pretty good. I was very productive this summer - which is a change from the norm. I'm starting to feel cocky with my programming skills. Why you may wonder? So my co-op job has me dealing with code for pretty much the entire workday - with pauses to ask questions of co-workers about concepts that the code is implementing. The entire summer I've dealt with mainly JAVA and C code and I've learned a ridiculous amount about both languages. It's true what they say: real world experience and practical application is so much better than a classroom environment.
Classrooms may be nice for theory and stuff (that kind of thing is fine and all, I believe it's important to know how the language works) but you only really get to know the language once you sit down and code things that are useful. This may sound as if I know already what all classroom environments are like; but I only speak from the experience of two programming courses - both of which were tailored pretty much for n00bs. Those tasks they teach in class aren't useful. (Hmm, I've noticed this has turned into somewhat of a rant... so if you want to avoid being bored, skip down to the paragraph with Nintendo DS in it: no promises for excitement there either, but have at it anyway!).
Ok, so I had introductory courses in MATLAB and C. I'm only speaking for these introductory classes - it may very well be different in higher level classes. The examples and assignments they give in this class are ridiculously stupid. Let's introduce structures: Well, let's say a structure represents a person. This person has a boss. Let's say you were coding a program that looks for the hierarchy of bosses. Do it. I know I know it's meant to teach you what structures are and how to access them... but honestly, can't you come up with better and more realistic examples? It can't be that hard. Here, I'll think up one on the spot: You are making a character stats calculator for [Insert RPG]. Have the user input data for various stats: name, class, hp, str, agi, etc... And display this information back to the user in a suitable manner. The user is able to make multiple characters this way. Granted, it's not the best example. But hey, it's interesting and this would be a viable solution should you ever want to make a character stat calculator. But whatever, I digress a lot.
I started off the summer with very little JAVA experience and no object-oriented knowledge. My most recent task was generating an automated test application that interacts with hardware, and parses the debug messages received from the hardware in semi-realtime - in a JAVA app. Works like a charm! Maybe classes should take this approach. Class time should be devoted to the quirks of the language - things that are special and specific to the language, concepts, and general usage of things. And homework should be projects that are fun and challenging. There should be no guidelines for the projects, so long that it works decently. I hated the test scripts that the classes used to grade homework - it was too nitpicky. It pretty much tested for what the person who made the script wanted. It didn't matter that you got the code to work in a different manner, it was wrong if it wasn't they way they wanted it. I say BS.
This is a horribly unorganized post, so I shall attempt to redeem myself:

By wooing you with a picture of my DS bwahhahaha. Well, I just got a Nintendo DS. And this sweet little machine is the reason why I started this post. I was about to post my friend code for Pokemon, but uh... I decided it's better if you message me for it if you want it - don't want freaks friending me on Pokemon or something, being like, "Let's fight! Loser has to cyber"... or something... Nevermind.
So anyway, I also bought a Slot1 Flash Cart for my lovely pocket gaming device and I've been reading up on homebrew stuff. It looks like the language of choice (and the tools tailored towards) making homebrew stuff is C. This is where my cockiness comes in. So with all this newfound job experience in coding, I'm thinkin': piece of cake, I could write a DS app or even a game. With that thought in mind, I now wish to write something for the DS. The problem is: I'm horribly uncreative. And I have no idea what to design.
I want to do something not already done before, something that, should I succeed well with it, I can actually release to the outside world and say: Look at how cool I am, this is cool.
The problem is I have no ideas. Please help! If you could leave suggestions of things that you think would be interesting/fun/useful! Maybe in half a year I might actually finish doing it...
Anyway, this concludes my very boring post. Thanks!

No comments: