Sep 24

Picture of a cute kitten attacking unseen prey
I absolutely LOVE the cover of this book. And the book itself looks pretty decent, though how the author fills 300 pages with tricks and tips on Ubuntu it beyond me.
I’m not sure when it happened, but the technical world starting using amusing pictures of animals on the covers of their books some time in the late 1980s or early 1990s, and they seem to be the only ones I can remember. I’ll bet they typically sell well too.
The first book I can remember buying in this genre was the Pink Camel Perl book in 1995 or so (it was published in 1991), with a picture of a camel on the front. This book proved to be a long-lived reference guide for me, and now I hold onto it for sentimental value. Interestingly enough, I’d never have been able to tell you the name of the book, which is “Programming Perl”. Here is a picture of it:

Oddly, O’Reilly kinda blew it with Ant: The Definitive Guide. It has a picture of a lizard on the front. What’s that about? Wouldn’t you put a picture of an Ant on the cover of this book?

Compare those three covers with these covers, from two of the most important and influential books in programming:


Boring! But again, these are two very important books based on their content. Care to wager how the relative sales numbers of the Camel Book and K&R look?
Sep 06
I don’t like to write about politics. However, I am glad to see that I am not the only one who thinks of Bob the Builder every time I hear Barak Obama say, “Yes we can!”.
Sep 04
I really like the app on AngelSoft’s new homepage.
A long time ago I created an app that would post messages to the homepage in a ticker when site visitors would do stuff. It was for a liberal political action NGO. From the homepage of this NGO’s site the ticker would flash messages like “A member just sent a fax to Senator Jim Webb about Senate Bill 1022″ or “Bill Jones just became a new member. Welcome Bill!”
I like how they’ve taken that concept and put it on a map. Nice.
Funny how we forget cool ideas from long ago. And funny how we forget that there’s always a chance to build off of old ideas to create newer, better ones.
Great work, AngelSoft. I expect to see a lot of people follow suit.
Aug 27
Microsoft has been issued a patent on Page-Up/Page-Down functionality (see below). I was annoyed when Amazon patented One-Click-Checkout, but this patent is even more troubling. I have written about Patent craziness before, mostly as it related to “Submarine Patents” (i.e. patents for products that will never see the light of day, to the benefit of the patent-holder).
This tactic is somewhat different. It patents an industry standard that has been in effect for a long time. 30 years ago, computers had page-up and page-down keys on their keyboards. It seems a little late to be seeking protection for such an innovation.
Anyone know the prior art backstory here?
From the USPTO
A method and system in a document viewer for scrolling a substantially exact increment in a document, such as one page, regardless of whether the zoom is such that some, all or one page is currently being viewed. In one implementation, pressing a Page Down or Page Up keyboard key/button allows a user to begin at any starting vertical location within a page, and navigate to that same location on the next or previous page.
For example, if a user is viewing a page starting in a viewing area from the middle of that page and ending at the bottom, a Page Down command will cause the next page to be shown in the viewing area starting at the middle of the next page and ending at the bottom of the next page. Similar behavior occurs when there is more than one column of pages being displayed in a row.
Aug 22
I have just introduced the “has_karma” mixin to VoteFu. It aims to assign a karma score to the owners of voteable objects. This is designed to allow you to see which users are submitting the most highly voted content. Currently, karma is only “positive”. That is, +1 votes add to karma, but -1 votes do not detract from it.
1
2
3
4
5
6
7
8
9
10
11
| class User
has_many :posts
has_karma :posts
end
class Post
acts_as_voteable
end
# in your view, you can then do this:
Karma: <%= @user.karma %> |
This feature is new and probably going to be enhanced significantly, but useful enough that I’m releasing it now.
Aug 19
A lot of people are in the business of cataloging “Scrum Smells”, those warning flags that indicate you may have some problems in your agile development process.
These are the ones that I think are important, and common. If these things are happening on your team, UR DOIN IT WRONG.
- Your Burndown Chart does not have an entry on it for every day’s remaining activity.
- Someone asks you how your sprint velocity is changing over time and you answer, “It’s hard to compare sprints, because each one is a different length.”
- You can’t tell me when the next Sprint Planning Meeting is, or what was agreed to at the last meeting.
- You have no idea what you’ll be working on in 4 weeks. Not even a foggy notion.
- When asked if you use scrum, you have to answer, “We use our own special flavor of scrum.” Seriously. There isn’t enough process involved in scrum to have seasonings added to it.
- You are the product owner and the scrum master.
- You are the scrum master and the boss of your scrum team members.
- Your burndown chart goes up sharply at the beginning of each sprint (hint: play planning poker 2 days ahead of the sprint meeting).
- Business stakeholders get mad at the engineering team when their feature isn’t scheduled for an upcoming milestone (hint: that’s the product owner’s baliwick.)
- You have more than 3 or fewer than 1 sprint goals on the board.
Aug 18
My day job has been keeping me busy-busy-busy, but I had some time this weekend to add some more to MyQuotable.com. Here is what is new:
- You can now edit your user profile. (Name, etc)
- The color scheme is slightly different.
- You now collect positive karma every time someone votes for one of your quotes.
- Pagination!
- I refactored the statusbar. Breadcrumbs and navigation work better and more consistently.
Next up: Search and Categorization
Aug 01
MyQuotable is a fun project for me. Here is what is new:
- Tags: Tag your quotes and filter by those tags.
- /popular: See which quotes have the most votes
- RSS Feeds for Recent, Popular, and User specific quotes.
What’s next? You tell me. The alpha testers I have so far have had some great feedback. Here is my punchlist:
- Quote updates via email
- Pagination
- Wordpress plugin
- Friending / Following
- Tag other user’s quotes and View items you have tagged
- View items you have voted on
- Tag cloud view
- Manage my account settings
If you haven’t given the site a try yet, please do. I welcome your feedback.
Jul 23
The lastest version of VoteFu has a few useful enhancements:
- Protect against mass assignment forgery. The params hash will only be consulted for :vote => true or false. The rest has to be assigned in the controller.
- The acts_as_voteable mixin now has support for tallying votes.
The documentation will be updated tonight, but briefly, here is what you can do with the new tally() method:
1
2
3
4
5
6
7
8
| @items = Item.tally(
{ :at_least => 1,
:at_most => 10000,
:start_at => 2.weeks.ago,
:end_at => 1.day.ago,
:limit => 10,
:order => "items.name desc"
}) |
This will select the Items with between 1 and 10,000 votes, the votes having been cast within the last two weeks (not including today), then display the 10 last items in an alphabetical list.
More to come. Enjoy!
Jul 21
Quotes. I love quoting people. I have a ton of quotes saved in text files, on my blog, in my various mood messages on IM platforms, and who-know-where-else.
I decided to build an application to manage, organize, and syndicate quotes. You can read more about it on my project page for MyQuotable.
If you read this blog, you are invited to participate in my open alpha of MyQuotable.com.

Early Alpha image of myquotable.com