on Mar 25th, 2008The Lives of Others

The Lives of Others

I recently saw the German movie The Lives of Others (Wikipedia) and was blown away. I think it’s definitely in my top 5 movies of the decade. I didn’t know much about it before watching it, which I think was a good thing, since I was not expecting much. The movie starts out a little slow, but I was on the edge of my seat after about 30 minutes. The ending is one of the most emotional 30 minutes of movie watching I’ve seen in a long time. There is a rumor of an American remake which would be a horrible idea. Is it that hard to read subtitles?

on Jan 29th, 2008Blog Moved

I finally got around to moving my blog that used to be located at turnofthecrank.com to here. Turn of the Crank is now my freelancing/consulting business that I’ve been working full time on for about a year now.

on Jun 1st, 2007New Webserver

I just got done migrating all my sites to a new Debian Etch server. The older CentOS server only had 1 gig of ram and used Cpanel for management. My main reasoning for switching servers was cpanel. I host a handful of Rails sites and Cpanel only supports Apache 1.3 which really held me back with what I could do with my Rails sites. The new server has 2 gigs of ram and I’m using webmin for management. It was a huge learning curve setting up everything myself without Cpanel holding my hand. Bind9 and DNS was especially challenging. I think I finally got everything figured out though!

on Mar 7th, 2007My Game Ideas

I just released a new site called My Game Ideas. Here’s the little summary/description of the site…

If you’re a gamer, I’m sure you’ve had many ideas for games before. Maybe it’s just a minor change to an existing game, or an entire new concept for a game. It seems these days there’s less creativity in game design. We are overloaded with sequels and poor clones. Most of us are not game designers though, so our “perfect game” will most likely never get made. This site is for publishing your game ideas for the world to see. Maybe someday a game designer will be inspired by something they read on this site, and we can be blessed with something creative and original for a change. That would be cool.

Users can submit their ideas, as well as rate and comment on ideas. The site is build using Ruby on Rails, PostgreSQL, YahooUI Grids(for the layout), and Prototype.js for the ajax. It’s roughly 1000 lines of core code.. another 1000 of test code.

Let me know what you think!

on Jan 23rd, 2007New ProgrammingBooks.org Categories

I have added a new top level category called Communications & Protocols that has the following child categories:

I know there are a lot of other Protocols, but I think these are the main ones that probably have the most books written about them. If there are more that you think I should add, please let me know.

on Jan 12th, 2007Programming Books for Children?

I recently received an e-mail from someone who requested that I add a “Books for Young Programmers” category to ProgrammingBooks.org. I thought it was an awesome idea and created it. I then tried to think of some programming books catered for kids, and I couldn’t think of any. When I first started programming at age 9, I learned mostly through language reference manuals that came with my Commodore 64, but it was a difficult and time consuming task, and I would have benefited greatly from a book written for someone my age.

I then started to google and search Amazon for kids books, and I didn’t have much luck. I found some really old(late 70s, early 80s) BASIC books written for kids, but nothing relatively current. Does anyone know of good programming books written for kids? If you do, please rank them!

on Jan 8th, 2007Re: ProgrammingBooks.org

The programmingbooks.org launch was a success. Thanks to everyone that participated and used the site! Since Friday afternoon it’s had roughly 50,000 page views. I got some great feedback and I am in the process of using the same engine for other kinds of things.

Even though I’ve been programming Ruby on Rails for over 2 years now, this was my first app that has been actually released to the public. I was scared that with all the traffic from digg, del.icio.us, and reddit my server would get overloaded and die, but everything seemed to have stayed up and running minus one minor fastcgi crash in the middle of the night on Friday. In preparation of the first-day traffic, I did a little performance tuning that helped out a lot. All the ranked list queries, sessions, and the category list are cached in Memcached. I looked into fragment and action caching, but it seems like those are a lot of work to do right, and they don’t play well with authentication.

on Jan 5th, 2007ProgrammingBooks.org - Rank your Favorite Programming Books

I got a lot of feedback from my previous article, The 5 Books that Every Programmer Should Read. As with all “top x” lists, many people disagreed with me, and had strong opinions about other books I didn’t list. This gave me the idea for:

ProgrammingBooks.org

Features include:

  • Ability to rank your own top 5 books you think every programmer should read, as well as your top books based on category. So you can rank your top 5 favorite ruby books, or your top 5 favorite algorithm books.
  • View aggregated lists of ranked books based on category and sorted by rank.
  • Ability to add comments and discuss books
  • Ability to add books to the site directly from amazon via an isbn or aisn

Future Features:

  • Ability to search for books based on ranking, price, etc
  • Ability to add additional information to the book details like additional links, reviews, etc
  • View interesting statistics generated based on user data. I want to show the differences in rankings based on years of programming experience.
  • Ability to view profiles of other programmers and see their specific rankings

Current Issues:

  • You can’t edit your profile or change your password. I’ll be fixing this today most likely
  • Adding books that are not on amazon is possible, but it’s akward and needs a lot of work

Anyways, I hope that this site will be useful and help programmers find the best programming books. There’s really only 1 source for finding quality books, and that’s looking through all the amazon ratings/rankings, which can be a real pain. There’s not a whole lot of books ranked currently, so it’s not very useful yet, so help me out, and rank your favorite programming books!

If you have any suggestions please leave a comment or e-mail me at shane.sherman (at) gmail.com. I tried my best to cover every category of programming books, but I know I missed a lot. If you have ideas for other categories, add a comment letting me know.

on Dec 1st, 2006The 5 Books that Every Programmer Should Read

Over the years I have read many programming related books, and there are a few that really should be required reading for anyone who develops software. All of these books are language-neutral and cover ideas that pertain to any kind of programming. These are the cream of the crop. I would not trust a developer who has not read at least half of these book.

Code Complete

by Steve McConnell
Some will say that the majority of the knowledge in this book is common sense, which reminds me of the quote, “Common sense is instinct. Enough of it is genius.” by George Bernard Shaw. It covers just about every aspect of programming. McConnell is a great writer. Although the book is large, it’s easy to read and understand.

The Pragmatic Programmer: From Journeyman to Master

by Andrew Hunt, David Thomas
I really can’t decide if I like The Pragmatic Programmer or Code Complete better. They are both similar books in that they cover a lot of general programming practices. Andy and Dave have a very down to earth writing style. The book, like Code Complete, is very easy to read. This book is fully of practical advise, that for some reason just does not seem to get taught in computer science courses. If every computer science graduate was required to read this book before graduating, I think the world would be a better place.

Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development

by Craig Larman
Don’t be mistaken by the title of this book. This is THE book for learning object-oriented analysis and design. Larman goes through each step of the process, taking an application from concept to completion. It covers requirements gathering, creating use cases, agile development, iterative development cycles, testing, and of course UML. The code examples are in Java, but you don’t really need to know Java to understand what is going on.

Design Patterns: Elements of Reusable Object-Oriented Software

by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
If you’re a programmer I’m sure you’ve heard of this book. It’s one of the most famous software engineering books ever written. This book is a tough read. The examples are in C++, which might be why I had such a difficult time with it. It’s well worth it though. Recognizing and using software patterns is an important part of being a good programmer.

Refactoring: Improving the Design of Existing Code

by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
If you’re a professional coder, more than likely you’re going to spend a large part of your time fixing/modifying code that someone else wrote. It’s the nature of the beast. This book is a catalog of common problems in code, and the best way of Refactoring them. Reading this book will greatly increase your ability to detect bad code and fix it.

Any books I missed?

on Sep 15th, 2006Robot Walrus

I have a bad habit of buying limited edition art prints, getting them custom framed, and hanging them all over my house. It’s good in that my walls aren’t boring, but bad for my poor wallet. I have an elaborate system setup so I know as soon as possible when a new print is released by an artist I like, because they can sometimes sell out in a couple of hours. So anyways, I started a blog called Robot Walrus where I will be posting cool and interesting art prints that I find. You should probably check it out.