Saturday, February 28, 2004

xslt is a fickle, fickle friend

I'm spending this weekend learning the ins and outs of XSLT. I got to thinking earlier this week that this RSS Reader I've been working on could really benefit from only having to parse one style of XML. So now all I have to do is create some XSL transforms that will convert from the nine different formats of RSS into my desired XML format so that my application can read various types of feeds. It amazes me how many various forms of RSS are out there, and with barely any similarity between most of them. I'm concentrating my efforts right now on RSS versions 0.91, 1.0, and 2.0 since they seem to be the most popular.

I've never had a reason to work with XSL and XSLT before, so I'm also having to learn that as I go. I think it's perhaps XPath and the concept of XML namespaces that's given me the most trouble so far, but after a fair amount of study this morning and plenty of trial and error, I feel that I might be starting to grasp the basics. XSLT is a really powerful technology, but it's surprising that there aren't more tools out there to assist in creating the documents. Perhaps I've just been spoiled by some of the IDEs I'm accustomed to working with...:)

Later today, we're going to try to go see 'The Passion' movie. I stress the word try because I've heard that many of the local churches are buying up entire showings for this movie. I'm really excited about seeing it, so hopefully we'll manage to get a couple of seats!

Wednesday, February 25, 2004

the pragmatic programmer

I cannot fully express how completely wonderful this book is. I bought it on a whim the last time I was in Nashville and am thrilled that I did. This book, unlike many other technical books, does not espouse any language, technology, or platform as the be-all-end-all to the programming community. Instead, they emphasize the fact that programming is more of an art than a methodology. Any coder can glean something immensely beneficial from this book.

One concept that I have found most useful during my reading is that of a "Knowledge Portfolio". The authors state that in order to stay competitive in a very competitive sector, we must constantly treat our repository of knowledge as an investor might his stock portfolio. They reccommend things such as learning a new language every year, and reading technical and non-technical books regularly. Sounds like common sense, right? But having it put in words does something; now it has become a goal. In keeping with this goal, I'm currently evaluating which language I'm going to learn this year. Technically, I suppose I could count C#, but I'd like to get a jump start on this goal by learning at least one other language this year. I'm leaning a little towards Ruby, but I'd also like to pick up my studies on Java as well, since that's a language I started learning several years ago. Plus, having become a recent convert to C#, my learning curve would be slightly less steep with that language.

On another note, I've been whittling away at an RSS reader in my spare time. I've got a basic implementation coded up and running, but it was done quickly and has a rather hackish nature to it. I'm hoping to go back and rethink/rewrite the core libraries as I have free time, but I've got a few other projects that I'd like to get started on as well. I'll never understand why I can never keep just one project...I either have no ideas for projects or a ton of ideas for projects. Guess I'll just have to prioritize them and decide which to keep and which to push off til' later....

Saturday, February 14, 2004

too much to do

I've come to the conclusion that I am far too busy these days. It's funny, really; back in high school, I used to think I was busy, and that I'd have more free time when I started college because I wouldn't be involved in as much. I was dead wrong there. In fact, I think I got myself involved in even more time consuming things during college than I did in high school. Because of this, I again made the foolish assumption that I would have more time to do things after college. After all, I would only have a job to concentrate on rather than school and work. Wrong again. Of course, most of the things I want to find time to do are pretty trivial and meaningless. Like finding more time to play Final Fantasy XI or Crystal Chronicles.


Ah, Crystal Chronicles...what a wonderful time sink. Although I don't imagine that it will take me that long to finish the single player mode. I sat down in about two hours and completed what was probably 15-20% of the game (and I thought I was taking my time at that). I'd really like to find someone else to play with so that I can try out the multiplayer mode. Of course, nobody I know (save one person) owns or has any interest in owning a Game Boy Advance. So I will probably be relegated to playing the single player mode.

On another note, I also picked up a copy of Lunar Legend for the GBA last weekend. I was completely shocked to find it at an electronics store in Nashville. I mean, I didn't even know this game existed, so it was quite a pleasant surprise. I'm a little at odds with the game though since they do change several key plot points. The sprites and in-game graphics are amazing, however, even rivaling some of the in-game graphics of Silver Star Story Complete. Lunar always has been one of my all-time favorite RPGs, so this was a must-have for me.

I'm still studying for the MCSD tests, hoping to take the first one sometime in the next few months. I'm working my way through a couple of books that I picked up a few weeks ago. So far, I haven't run across anything I didn't already know, so maybe this test won't be as difficult as I was led to believe at first. I just need to find some time to make it through the rest of these books.

Just today, I decided to start messing around with the Managed DirectX Framework for .NET. I've programmed a little in C++ using DirectX 7, so I was slightly familiar with the framework this go around, but I've still got a lot to learn. Hopefully I'll be able to find some good examples and tutorials around that I can use to familiarize myself more with how things are done under this system. I'd love to be able to write some games of my own, even if they'll never be commercial quality. I had a few small games and demos coded up in C++ that I might try to translate to C# given the time.

Tomorrow, we're heading up to Paducah to have a nice lunch and also to attend my uncle's wedding, so it will be good to get out of the house. We really need to clean up a little bit, so there's nothing like a good excuse to push that chore back a little longer. :)

Monday, February 02, 2004

enter the dragon

Wow, what a busy weekend. I've pretty well been going nonstop since Friday. Don "The Dragon" Wilson (11 time world kickboxing champion and star of several martial arts films) paid a visit to our Taekwondo school this weekend. He taught two seminars on self-defense and kickboxing which were very enjoyable. I really enjoyed the fact that he focused on the basics of punching and kicking; something we probably don't do often enough. It's so easy to get into the habit of just throwing a punch or kick or triple spinning tornado kick that you forget about the dynamics of how that attack gets its power and accuracy. What's more, I even got the chance to bowl, eat dinner, and even go to church with Mr. Wilson, since my Taekwondo instructor also attends the same church I do.

Sunday afternoon was quite the trip also. I finally convinced my wife that we need a digital camera and so we headed to the local Wal-Mart to pick one out. After about 30 minutes of looking, comparing, and discussing, we finally settled on a particular Kodak camera with 3.1 megapixels, so we asked the sales person to get it for us. They hunted for another 15 minutes before coming to the conclusion that they were out of stock. So we ended up making the half-hour trip to the next nearest Wal-Mart to purchase the camera. Talk about a wasted afternoon. But the camera we picked up is supremely cool (or I'm just completely naive when it comes to digital photography, which is an equally plausible case). I took a few pictures last night and uploaded them to the computer. I was completely taken aback by the quality; I guess I'm just accustomed to seeing sub-1 megapixel photos from digital cameras I've had in the past. I'm sure we'll definitely enjoy the camera...now I just have to teach my wife to use it! :)