The “Brain Block” of Rails
Or, “blaming all the people contributing cool stuff for my not writing code”.
One of the biggest challenges I find myself having while “thinking in rails” is that all the examples you see online (and there are many) and all the podcasts (such as the excellent RailsCasts by Ryan Bates) are all concentrated on a single, focused problem, or are creating such simple sites that I think to myself:
“Why yes, that is simple to create a todo list in Rails, this is the best language EVER!”
But then when reality hits and I look at the project I’m currently working on, a huge and ugly online auction site with a mix of auctions with items online for bidding, display only for the “live in person” auctions, an import/export system to create said auctions, all layered on top of a pre-existing and many times re-done content management system for editing the other pages on the site (all using a custom built and desperately in need of a re-write but dammit-it’ll-work-for-now templating system), my brain literally explodes.
“I can see how maybe this concept can work for this one small section of the site, cause that looks sort of like the same thing, but they want page previews and image uploads and how do I deal with the custom XML parsing from the MS Access export that they need to upload into the… *splat*”
The “Splat” is when my brain turns to goo and oozes out of my ears, and I abandon Rails for one more day while I continue to add yet another bag onto the side of an ugly set of existing code. You see, I know the ugly code, and while it’s bad to say, it does “work good enough for now”. I think that rewriting the whole site is a noble endeavour, but my clients need this done NOW (or rather, 3 months ago, as we’re currently about 5 months into a 2 week deadline, but that’s a whole other story).
The point really is that the small and simple examples are great, and really have to be to be useful as examples at all, but there needs to be a way to show how Rails can work on large scale sites, and how to actually put all the small chunks together.

One of the books in my library of Rails books is Building a Social Networking Website with Ruby on Rails where it does go through some of these challenges, and shows how to iteratively build up from the “hey, lets make a list of blog entries!” type examples and layer some of the nicities that Rails has over top, until you actually have a large scale, “real” site, that’s not an ugly twisted mess of code.
I guess the big thing that I have to work though is breaking down these big huge OMG IT’S HUGE WHAT TO DO! projects down into the nice little bite sized bits that the Learning Rails and the RailsCasts are so good at creating.
No related posts.