Googles Summer of Code

It’s June and school is out. Every morning I’m watching the boys not get ready for school and have to admit I’m a little jealous. I think when we were younger we really took for granted the idea of summer vacation and I really miss it a lot.

Now, watching the boys sleep late and watch cartoons in the morning instead of rushing around to get to school apparently isn’t enough. Google also launched their Summer Of Code program at the end of May, an effort in which students on summer vacation can earn money by contributing to Open Source projects.

I think this is a really great thing for Google to do, and boy do I wish there was a Google around when I was a kid and had the whole summer to spend familiarizing myself and contributing to an Open Source project and being able to feel like I made a difference. What a great opportunity to do something great for the summer.

This is yet another example, in my opinion, of what a great company and contributor Google is. They could just be sitting back and doing what they do, but they choose to give back to the community by contributing money and time to help build the next generation of Open Source developers.

Back in the ‘old’ days, I had my pet projects that I did. Shareware programs that I created that I didn’t make money on (and never cared if I did), projects to add functionality to friends bulletin board systems, and things like that. All done for free and with no expectation of being paid. I did it for the sheer satisfaction of being done and knowing that I contributed something if someone happened to send me an email or the program was included in a freeware/shareware catalog or even reviewed by an independent shareware reviewer. Man, that was great.

Sometimes I really miss that. There’s nothing like coding for the sheer pleasure of it and working on something you are passionate about just because you are passionate about it — and being able to release it for others to use.

I hope a lot of kids take advantage of this opportunity. Once programming becomes a job, sometimes you have to work on things you just don’t care about, or you put extra hours in just to get something done that you don’t see the importance in doing. Sometimes you have to put everything you have into something you absolutely don’t believe in.

This is a great time in your life when you actually have the time and the opportunity to make a difference, no matter how small — and its a time you’ll never get back.

And this time you can get paid for it.

As for me, I will just continue to spend my free time trying to plug through Negotiating Skills for Managers and wishing I could join you.

Diary of an Axeman – June Download

For those Randy Rhoads fans out there, the Diary of an Axeman site has Suicide Solution as their June video download.

Unfortunately, I missed May’s download, which was ‘I Don’t Know’ from the Blizzard of Ozz album. I checked the site sometime in May but I guess it was updated later on in the month. I’ll have to be a little more diligent in checking the site out if I want to keep building the Rhoads video collection.

This site is great and I think it’s really cool that the guy running it is keeping it up despite the bandwidth problems and cost that it takes to make this stuff available.

Actually, as I was writing this I found that the maintainer of the site has a Yahoo Group you can subscribe to to get updates on when the site is updated. Needless to say, I signed up.

Finishing the CSS Prototype

Well, I finished the prototype that I was doing on tableless design and confirmed the results mentioned in in the stopdesign article on CSS.

The final result was a 65% reduction using CSS and XHTML, only using tables for tabular type data (and one set of form elements). Most of these space savings were in table code and redundant font and formatting information throughout the original HTML (including the non-standard <SPACER> tag, which was sprinkled liberally throughout the markup).

That’s pretty impressive and a real motivator to convert to tableless design. I can’t express enough how cool it is to see the formatting completely decoupled from the standards compliant XHTML!

While part of me wants to post up the results, I’m not going to, as I don’t want to establish a connection between this site and the company that I work for. I’d rather keep them separate. However, the savings in both maintenance and space savings are there. You’ll have to trust me.

Along with the book that I had mentioned in previous articles, I also picked up Cascading Style Sheets: The Definitive Guide, 2nd Edition, put out by O’Reilly. This book was extremely helpful in getting this project done.

On other fronts, I’ve been doing some really interesting reading over the past 4 weeks or so. Two books called The Innovator’s Dilemma and its sequel, The Innovator’s Solution: Creating and Sustaining Successful Growth, both by Clayton M. Christiansen. These are really interesting books about how disruption and innovation actually causes established companies to lose their foothold on their markets even though they are making perfectly sound management judgements given where their companies are.

As I get my head around the concepts in these books more, I’ll be posting in depth on them. I just have to figure out how to express what I’ve learned. There’s a lot of information in these books and they are really engaging.

Learning CSS

Back in my Windows programming days I used to focus a lot on user interface design. I think I was actually pretty good at it. As time went on I moved into more of the back-end type of programming (utilities and things of that nature). When I moved to Unix programming I did not even touch the graphical UI’s. There was nothing really of interest to me.

When I started web programming, HTML just seemed tedious. I learned enough to get by, but the constant use of tables and getting things to align properly proved to be just too boring for me to ever try to get proficient in web UI design.

Over the last week or so, I’ve decided that I really have to learn about Cascading Style Sheets, which as I’ve mentioned previously, I didn’t focus on very much due to the incompatibilities between browsers in the early days. My initial interest in the technology started about 3 months ago from the work that I have been doing with WordPress, however the final straw that made me think I definitely had to learn this stuff was an article called Throwing Tables Out The Window at stopdesign.com. The author talks about a presentation he gave on CSS in which he, during the presentation converted the Microsoft web site from a table based design to one using CSS. He did the conversion real time to show the audience how quickly it could be done.

The final result of this conversion was a page that looked exactly the same, but reduced the page download size by 62%.

When I saw these results, I decided it was time to learn a little about CSS, so I bought the book Web Designer’s Reference : An Integrated Approach to Web Design with XHTML and CSS by Craig Grannell and poured through it. I also grabbed the O’Reilly CSS Pocket Reference so that I would have a quick way to look things up. (OK, honestly — I bought the Pocket Reference first, and got completely lost — get a real book before you pick up a quick reference).

When I learn something, I need to apply it to something that has value to me. If I just walk through sample projects, I tend to get bored because I’m not getting value that I can use right away.

The project I picked was the home page for my company, which currently uses pretty heavy table layouts. I want to see what kind of space savings we can achieve along with the kinds of maintainability savings that can be realized using CSS based design in lieu of tables.

I started this project on Monday, and to be quite honest, was fairly intimidated, as I always am when stepping outside of my comfort zone. After all, I deliberately did not learn more than I needed to know about HTML and layout because I found it boring.

Between Monday and today, I have been working on the project in most of my spare time (getting up early and working on it when I get home). As I work more on the problems, I understand more of the technology. Given the limited amount of time I’ve had to work on it, I’ve made some pretty decent progress and my excitement builds more and more the more I get done.

I seriously don’t think I’ve been this excited about learning new technology in a long time (probably since I started learning Python a year or so ago), and though its geeky, I find myself thinking about this stuff constantly. The ability to completely detach the presentation from the content is just completely cool.

Now there have been some issues and a lot of frustration. I got things looking great in FireFox and then made the mistake of loading it in Internet Explorer only to find that everything was screwed up. However, a few hours spent this morning and I have the display working fine in both browsers, due to the wealth of information out on the Internet.

If you find yourself laying out your pages using archaic, 90’s style table layouts, you need to start looking at CSS. The possibilities are far beyond the simple font settings that so many sites limit themselves to.

At some point in the future, when I finish my first “project”, I hope to post it up as an example. There is a great site called “Tableless” which showcases corporate web designs reworked using tableless design. These examples do a really good job of illustrating the ability to do complex layouts in CSS that one with a limited idea of the technologies might not think is possible.

Following are some resources on the Internet that I have used to help me learn this stuff. Hopefully, they will be helpful.

Related Links:

Kelsi Graduates from 8th Grade

Graduation - Kelsi

Photo by rbieber

Dad snuck up to take a picture of her as she was sitting with the other graduates after receiving her diploma.

Kelsi graduated from 8th grade last night. I have posted pictures in the photo album. If you are family or friends and have a Flickr account, you’ll see more pictures logged in. If you are a family member or friend and don’t have a Flickr account, let me know and I’ll invite you in.

While I’m extremely proud of my daughter for hitting this milestone in her life, I am also feeling a little old. I have a high-schooler now.

Congratulations Kelsi!

The Adventures of Pete & Pete Season One Available on DVD

The Adventures of Pete & Pete - Season 1Finally, The Adventures of Pete & Pete – Season 1 has been released on DVD.

From 1993 – 1996, Nickelodeon aired this series about two brothers named Pete and their adventures in the town of Wellsville. This was the one show that Kelsi would watch when she was small that I looked forward to watching with her. It was the event of our weekends together on Sundays at 11:00a.

The episodes were funny, intelligent, and just fun to watch. A while back we found them on Noggin and began watching them again, wondering when they would finally be released to home video.

This show brings back a lot of great memories. Unfortunately, while Kelsi found them at the mall (we were shopping for eighth grade graduation clothes), we had to take her home before she got a chance to watch them with me this time around.

If you find these in the video store, grab them and give them a try. The show is a crack up and from my perspective probably one of the best situation comedies I’ve ever seen on TV. It also had one of the catchiest theme songs (“Hey Sandy” by Polaris) that I’ve ever heard, which can be found on the album Music From the Adventures of Pete & Pete.

Related Sites: