Follow Your Passion

Tuesday, February 28, 2006

Streamlining

I've been squeezing in time to program on my website for the past few days. I mainly use it as a procrastination tool to distract me from my classes. So far it's been pretty effective.

Today I'll talk about how I've set up my programming environment. It's probably not the most optimal, but I'm happy with it.

First off, my test server. I have installed on an old desktop I got from my dad's work. I found this tutorial that was really helpful during the installation. Once I got that up and running, and after I played around with Rails to see how awesome it is, I starting thinking about editors.

I use Emacs. I know, I know, a lot of people don't like Emacs, but it's what we're forced to use at school so I might as well become an expert at it. Originally, I was using Bluefish, and it was pretty nice. But the only problem I had was that sometimes I like to SSH into my desktop, and work from my laptop, but Bluefish is just way too graphics intensive to use over SSH. I was able to find some good configuration files that syntax-highlight the Ruby code and even the RHTML files. Sweet! And recently there seems to be some improvements with integration so it only gets better.

As far as actually testing and coding, I've got Webrick running as the server. Since this is my test environment, it's good enough. If I am doing deep-level coding, I just use Firefox to check any changes I've made. But if I'm modifying the look of my site (with CSS or something like that) I have my laptop next to me and use IE to check how it looks. If it looks alright in IE then I'm happy. I don't have enough time to make it perfect across all platforms. I'll leave that to my future team of web developers (yeah right...).

An now...Deployment. I haven't actually officially released my application since I'm still working on it, but I like to practice deploying it so that when the time comes, I'll easily be able to iterate in the wild. I've got an account with . So far they've been pretty helpful whenever I have a problem. By default, the ActionMailer already works on the TextDrive servers, and setting up Rails on them is a breeze. I went through a whole long tutorial to get Ruby on Rails and Lighttpd working, but now there is a file for Switchtower that does it all for you. How awesome is that?

That leads me to my next item: . Originally I just had a script that would SSH into TextDrive and copy my Rails root folder into the one on TextDrive. But some configuration files were different, so I had to manually modifiy those. Eventually I just decided to give in to Switchtower and let it handle it. It also forced me to use SVN. I kinda didn't want to go through the hassle of committing all the time, especially since I'm the only one working on the code, but it's probably a good habit to learn. So now, to deploy, I just give the "rake deploy" command. That's so awesome.

Some things I should work on are using the console and breakpoints. Well, so far I haven't gotten into the nitty gritty of the code, just more superficial stuff. So it's not too necessary right now. But eventually, I should get used to poking around within the Rails console.

So that's my setup. I'm always looking at ways to improve it, so soon, it might all be different. But it's sufficient for what I'm doing for now.

Sunday, February 19, 2006

Baby Steps

Now that I have some experience with Ruby on Rails (by experience I think I know enough that I can do the things I want to do) I decided to actually register a domain name and get me a little site host. Hopefully this will give me a little kick in the butt.

I've been pondering over the name for my site for some time. When I was in class and bored, I'd pull out one of my notebooks and jot down as many names and variations I could find. The main obstacle I faced was the fact that I had to chose a name that wasn't taken, because I was not going to pay hundreds of dollars to buy a domain off some kid. To solve this I thought the best bet would be to combine two words to create a new name. My second obstacle was creating a name that can be remembered easily. I noticed that most popular sites have two-syllable names: Google, Yahoo, MySpace, Slashdot, it goes on and on. So my best bet would be to pick a name with two syllables.

After some soul searching, I came up with a good name in my opinion. Then, I officially started the funding of my start up by paying GoDaddy for the domain registration fee. It's the first domain I've ever bought, so I savored the moment. After chosing the name, I came across this article on picking a name and was pretty happy that the name I chose followed some of the guidelines outlined.

And now for a host... In hindsight, I probably should have done more research for this. I ended up choosing TextDrive, but this was mainly because I knew how closely tied they were to the Ruby on Rails movement. The setup to run Ruby on Rails on their servers was definitely tougher than what I expected considering how RoR friendly they appear. But no biggee, I was up and running in no time.

The initial release should be coming soon. It's just these pesky classes that are int the way.