I build web apps. Almost every one has a screen or two somewhere that shows a listing, and at the bottom it has pagination links, e.g. next page, page 3, etc. For a recent app I’ve been working on, the interface is very search-driven, i.e. the user enters some criteria the results are displayed.

As an experiment, I left off the pagination links. In this app, there is no “next page.” Instead, if the results are not on the first page, then the user must refine their search.

If you think about it, how often do you scroll through a Google search results page and then choose to change your search query rather than click on the next page? If you’re like me, a lot. Even if you do click the next page, I would bet you don’t click much past page 2.

For users who see the Web and web apps as a necessary evil, they might be more apt to page through thousands of results rather than think about what they’re looking for and change the query. Ditching the pagination links lights up a different part of the brain I would guess (of course I have no idea considering I am only a web geek).

What do you think? Am I evil? Can it work?

By the way, I haven’t had any complaints yet. We’ll see…

Just posting this for any friends getting ready to sign up for a SliceHost account. This my referral link - I get a discount on my slices if you use this. Help a poor developer, please.

https://manage.slicehost.com/customers/new?referrer=198350528

We’re gearing up for the upcoming, very first Tulsa Ruby Workshop.

picture-1.png

Of course, all you need to know is on the website, but in short, it’s a beginner’s conference all about Ruby and Rails. If you’re new to Ruby and/or Rails, this is for you (if you’re in or near enough to Tulsa, Oklahoma that is). Tell everyone you know!

I still plan on writing the final part in the Git series on this blog, but in the meantime, on a related note, we now have a page up on the OneBody wiki about Using Git. It includes some instructions for using Git on Windows and some other commands that may be helpful to noobs.

Oooo I really like the new Firefox 3 beta. It’s zippy and it looks great.

chrome.png

My only beef was the new fancy address bar… Being an uber web geek, I tend to recognize things by their URLs instead of page titles, so this was slowing me down to much:

addressbar.png

So, to get things back all barebones FF2 style, I installed this and set browser.urlbar.matchOnlyTyped in about:config to true. Much better.

addressbar2.png

Just to save you a half-hour of your life, I thought I’d share that you should never create a named route called “directory” — it will break Rails migrations and other rake tasks in mysterious and hard-to-track-down ways.

For Part 2 of our 60-second Git tutorial, we’ll look at some super simple branching and merging.

git branch tells you which branch you’re on. git branch -a lists all branches, even remote ones.

git checkout mybranch checks out the branch you want.

git checkout -b newbranch creates a new branch from the one you’re on, and checks it out for you.

git checkout master && git merge mybranch merges changes from one branch to your master branch. If you don’t want to commit the changes, you can do git merge --no-commit mybranch instead.

So far, we’ve only talked about local git usage. Isn’t it cool that you can do so much without even having a server set up with our repo? I think so.

Part 3 will include pulling and pushing your changes to remote repos.

First, the mental hurdles:
You don’t need a server to have a git repository. All your commit history is available locally and quickly, with simple commands. Same with branches and tags. Git “checkout” and “commit” are commands you run locally. Svn “checkout” and “commit” are really more like “pull” and “push” with git.

Now, the commands:
rails myapp && cd myapp && git init && git add . && git commit -a creates a repo and makes the first commit (but still nothing is sent to any server; all work is done locally in your own repository)

echo "my app rocks" > README && git add README && git commit -a makes another commit

git rm path/to/remove && git commit -a

git reset --hard HEAD returns your repo to last committed state (cancels working changes) I’m still fighting with this one. It seems the best way might be to do a git checkout -f instead.

That’s it for the first part. Part 2 will be next.

I’ve been reading the book Advanced Rails by Brad Ediger. I first met Brad way back in 2006 when we were first trying to get our local Ruby user group going. He is a very smart fellow, and his newest book is definitely evidence of that. There’s a lot in there that’s over my head, but that’s nothing a few rereads can’t solve. :-)

The book has everything from optimization to deployment, from security to metaprogramming (my brain is still spinning from that one). Brad does an awesome job of including plenty of code and real-world examples.

If you use Ruby on Rails for fun or profit, this book is definitely a must-buy.

And, believe it or not, this something-other-than-perl-and-php book can be found in local bookstores (Brad V. found this one at the Tulsa 71st B&N):

2.jpg

OneBody now has a real, bona fide blog of its own. Thanks to WordPress.com, creating a new blog is waaaay too easy, evidenced by the fact that I now have 37 (just kidding).

Our little project continues to grow and improve. I’m still waiting on that influx of talented, eager volunteers to make it awesome, though :-) For now, it will continue to be Tim’s pet project, though I refuse to stop referring to the development “team” as “we” and “us.”