Gold Plated Blog Posts
Whatev.
Tuesday, September 4, 2007

Introducing context-sensitive RSS feeds

I've just finished what I consider to be the last big feature for my blog, context-sensitive RSS feeds. What this means (to me, anyway) is that the RSS link in the upper right hand corner of the site will now change depending on which page you're on. The only use I could find for this is when viewing all posts within a specific label. So if you were to click on a link at the top of the page under "labels", which displays all posts categorized under that particular label, the RSS link will give you a feed for that particular label. Try it out! It can be really handy if you want to keep up to date on places I travel, for instance, but don't care much about what I have to say about software development. You'll also notice that the RSS feeds will direct you to my site instead of Blogger, which is good since the posts aren't actually visible in Blogger. I did this by creating my own feed in PHP using Blogger's API and I'll try to posts some more specifics about how I did that in the future.

On another note, I finally finished Peopleware: Productive Project and Teams over the weekend while at the beach (I'll post some pictures in a couple days). It has been immensely helpful and I have even passed it on to our CEO. In the final few pages I found a particularly delightful passage:

As systems developers, we have selected ourselves into the world of cool, calming, rational thought. Either our code compiles, or it doesn't. The compiler is never happy for us, nor mad at us. Perhaps this is why we tend to apply logic as our main device for resolving disputes.
This puts into words something that I have thought for a long time. I remember once having an argument where Debbie exclaimed "Things don't have calculate exactly correct all the time, Cam!" Well, this sort of explains why I think things do, in fact, always have to calculate, and knowing that will probably help me be more understanding in the future.

Next up on my plate is The Mythical Man Month, which I'm not quite as excited about but should prove to be another useful tool. The fact that I'm not that excited about it probably means that it's a good thing I'm reading it :-)

Saturday, June 2, 2007

Heavy reading

Since leaving Portland for India, I've had more time to sit and read than I normally would. I saw this coming and in the weeks before I left, stocked up on some interesting reading. As a pet project, I'm going to start building a website for a domain name I registered over a year ago, Popratings.com. Right now it's just a lot of ads from my registrar but when it's finished it will be a site for users to submit reviews on various things. I'll get more into the details of the functionality in a later post, but rest assured that it will include social networking, Web 2.0, and Ajax, as well as any other buzz words that happen to be popular at the time. It's really just a way for me to get back into programming and, more specifically, into PHP.

Since this project is aimed at getting more familiar with some of the technologies I've used in the past and using some skills I've picked up while working at my current job, I want to do everything myself. Given that this covers several different areas, I chose four books to read based on what I'll need to know and what I'm not already comfortable with. The four books are The Principles of Beautiful Web Design by Jason Beaird, User Interface Design for Programmers, by Joel Spolsky, PHP 5 Objects, Patterns, and Practice, by Matt Zandstra, and Beginning JavaScript with DOM Scripting and Ajax: From Novice to Professional, by Christian Heilmann.

I've only had a chance to read the first three selections but so far they're all worth reading. Joel Spolsky is someone who I have a lot of respect for as a developer and an entrepreneur. I've been reading his blog over the past year, which is what prompted me to get his book. Although it's a bit brief, he really has some very simple but effective things to say. His book has stood out the most as being a valuable asset for anyone designing user interfaces- it should definitely not be limited to programmers.

The second two books have certainly been useful. Beaird had a lot of good techniques to share. Towards the end of the book, he walks us through the process of designing an actual website for a client he had, which was helpful. Some of the material throughout was covered in my high school art class but I'm sure it's helpful for many people.

PHP 5 Objects, Patterns and Practice has been a great source of information. The first third covers new features to PHP 5, which you can really skim through if you know Java (yes, Java). The last third covers several PHP tools, including package managers and automated build tools, and will be a great reference. The heart of the book focuses on implementing several design patterns in PHP. There's actually not very much PHP-specific information in this portion. In fact, you might be better off reading the beginning and end of Zandstra's book and Design Patterns: Elements of Reusable Object-Oriented Software by the "Gang of Four", which is referenced throughout PHP 5 Objects, Patterns and Practice.

I'm looking forward to putting these to use; I plan to start writing Pop Ratings in the next week and hope to get a lot done while I'm in India. As I go along, I'll be logging anything particularly difficult or interesting that happens so that hopefully it will be useful for others working on similar projects.

The articles in this blog are authored by Cameron Hinkle, Software Engineer for Nike. The thoughts and opinions expressed are not shared by Nike or any of its affiliates.