A weekend visit to my favorite food truck:
A Ruby on Rails Chronicle
For the average foodie (like myself) few things are as precious as enjoying a well crafter meal in good company. However, how this meal is concocted can take many shapes. Few pairs of culinary preparation are as contrasting as a meal cooked at home with all the care and attention and time to prepare this versus a meal which is just bought from a food truck. The two could not be more contrasting in their preparation. Yet, both can be equally as delicious. So I make the case that these two methods of obtaining food (although both might have their charm) have a clear parallel in contrast to preparing the code of a program on just Ruby versus coding on Ruby on Rails.
Making a program on just Ruby can be a time consuming proposition where you have to do all the ground work to achieve your goal. Making a home cooked meal is similar in that you have to worry about all the details from A to Z or from going to the grocery store up to washing the dishes when you are done enjoying the meal. The journey of writing a program in Ruby can be very similar. In Ruby you can often begin in a blank page with no template and no scaffold. With Ruby you have to equally envision the cooked meal of nouns and verbs and plan out what the code will have to execute. With Ruby like with a home cooked meal you have to prepare the code step by step. Like making a big meal with many pieces and processees, in ruby you have to plan the control flow and build the individual methods. You have to organize the Classes and Iterations. But you also have to worry about the numbers and arrays.
Conversely, going to your favorite food truck can be a very liberating experience since you must not worry about neither shopping nor washing dishes. Your only worries when eating at your favorite food truck are: is it sunny or rainy; or do I pair this a pale ale or iced tea. The experience is both simple and enjoyable and almost equally as liberating. So it can be said that when you program on Ruby on Rails most of the prep work can be done by the experts in the form of a template or scaffold. Yes, you have to worry chicken or beef; aioli or vinaigrette; kim-chi or fried rice. So too in Rails you have some decisions to make. You must equally define the variable of your database and continue to be responsible for the overall enjoyment of your program. You still have to style it with Bootstrap to make sure that your presentation is not cookie cutter. However, the leg work is done with rails. With Rails you have to worry more about the appearance of the site and the exception rather than the entire picture.
Eating at your favorite food truck is a simple yet complex treat. The flavor ca be delicate and complex. But the process is much simpler. So in Ruby the manufacturing of the code can be simple since with a few buttons you get a very complex code with many moving parts. However, Rails is doing the heavy lifting. Rails is taking care of the complexity for you.
Rails however, can be equally as complex as there are certain fixed pre-mades. So if your project involves a lot of customization the amount of work you might have to do to rearrange the presents could ultimately make it easier to use all your own code just in ruby.
The ultimate goal is to craft, cultivate and appreciate both approaches and to know when it might be easier to stay home and make all your code from scratch with just Ruby and when it might be easier to get in your car and onto the Rails and go enjoy a meal at your favorite food truck with all of its pre-made options. Both can be enjoyable experiences so long as you know the power and the restrictions and the pros and cons that each of the approaches has to offer.
- P.S.: for those wondering my current favorite food truck which was the inspiration for this piece can be tracked down in the Tampa Bay area by clicking: I Wanna Wok Facebook