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 Fedora Core installed on an old desktop I got from my dad's work. I found this Ruby on Rails 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 Emacs 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 TextDrive. 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 deployment file for Switchtower that does it all for you. How awesome is that?
That leads me to my next item: Switchtower. 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.
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 Fedora Core installed on an old desktop I got from my dad's work. I found this Ruby on Rails 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 Emacs 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 TextDrive. 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 deployment file for Switchtower that does it all for you. How awesome is that?
That leads me to my next item: Switchtower. 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.

0 Comments:
Post a Comment
Links to this post:
Create a Link
<< Home