Experiments and Thoughts

Learning Rails


I’ve been going back and forth on how I can make a personal project better. Basically I want to redo my senior project. I’ve stated this before on different mediums, but I’ve had trouble in finding a system that would streamline it. Originally the project was in PHP, no frameworks, no CMS. It was something that I built, “by hand from the ground up.” It was a bigger project than I thought it was going to be.

It’s funny the amount of planning I did it still became a larger than what I thought it would be. That is what you want with a Senior Project, something huge and something that shows what you’ve learned in the time you’ve been in College.

But that’s not what I’m here to discuss.


I went back and forth with the idea of something new [NodeJS, or Ruby on Rails], or just fixing and re-doing the PHP code [maybe with Pear of Cake]. I felt that, maybe, I should try something new. Get my hands dirty and learn something. This industry moves so fast that you can’t be stuck in the mud, or keep the standards of old, which can be a pain when fixing and refreshing old code.

I digress.

Rails has been interesting. The directory setup reminds my of ASP.net, so it’s pretty easy to navigate around. Just using a text editor like Sublime instead of Visual Studio forces you to be a better programmer (even if there were some handy things in that program). Fully make your own classes and objects, mess around with the config file in order to get the routes to work properly, etc.

I’ve been running through this blog exercise:

http://guides.rubyonrails.org/getting_started.html

It’s simple and to the point.

As I’m learning I have this thought in the back of my mind on how I’m going to do this project, how big will it get, and how complex it might become. I’m almost starting from scratch; however, one thing that’s been bugging me with this beginner project is the Database. I haven’t used SQLite before this, and I know it’s one of those things that I’ll have to read up on, but I really don’t like not knowing my structure.

I wouldn’t be concerned with a prebuilt system like Wordpress’ DB, but here where you [pretty much] type in the command line “build new rails instance,” and look, it’s built. I just don’t like not knowing where everything is going. PHP and C# would have you connect with their own version, either in a config file or in the file it’s self (this isn’t advisable to do, by the way). In these systems I knew where the data was going. Blah blah blah.

I’m a perfectionist, and I like knowing where everything is. Can’t leave anything to chance, nor can I take a chance on screwing something up; however, that’s just how you lean things.

Learning.

I really think rails would be a great for system for this project. Now if I can just get past this learning bit, I’d be set. Other things I need to learn: Coffescript, and some more Sass. I’m a Less kind of person, and I know some of the syntax is the same, but we’ll see what kind of mess I can get myself in.

Other Rails Primers:

Rails for Zombies


Intermediate Rails: Understanding Models, Views and Controllers Beginning is a bit of a reminder, then it goes on how Rails uses it’s MVC

Email me when Amanda Iaria publishes or recommends stories