<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>Keith's Web Blog RSS Feed</title>
<language>en-us</language>
<link>http://www.keithwatanabe.net/index.php</link>
<description>Keith Watanabe's Website</description>
<item>
<title>Skilling Up!</title>
<link>http://www.keithwatanabe.net/blogs/2007/11/20/70e7033fc23f487d0ac120413941cf2d.html</link>
<description><![CDATA[Right now, I'm teaching myself some ruby.  I've mucked with it in the past, but I've decided to pursue increasing my python, ruby, c/c++ skills.  i'm pretty satisfied with my php skills now.  i just need to figure out how to use CakePHP eventually and I'll be set.  With ruby, I just got through basic inheritance and some simple string manipulation.  Syntactically, I like Ruby more than PHP, but I'm extremely used to coding in PHP now.  However, the syntactic sugar of Ruby is slowly drawing me in.  Lots of shortcuts rather than elongated function names.  I hope to get to Rails sometime in the next few months.  Eventually, I'd like to put together a simple Rails application just for fun.  Maybe I'll build my own music/movie organizer AJAX website.  The same with Python in terms of getting into it for fun.  I'm not a big fan of Python's syntax compared with Ruby, but Google's use of it along with Zope look like compelling reasons to give it a try.<br />
<br />
I'm not as sure what to do with c/c++ in terms of a project.  I always wanted to participate in building some KDE project.  Not sure what yet. <br />
<br />
Got some cool chances to work with a few new toys at work.  Got Samba to work (finally!)  It's nice being able to go between my Kubuntu system and my laptop running XP Pro and copying files over transparently.<br />
<br />
Setup a Subversion repository with WebDav.  I want to get a better bug track system or something that'll tie into Subversion.  My friend suggested a site for this, but I don't like the fact that they use their own login system.  I want a centralized login system that utilizes the same data.  Don't want to have to hack a system for this purpose.<br />
<br />
Also, worked a bit with Phing.  Phing is like Ant for PHP.  Only they're still generations behind in terms of support.  I had to write a bunch of my own plugins.  But that's the cool thing with it.  Maybe I might contribute to Phing in terms of adding my plugins to their repository.<br />
<br />
Lastly, I've worked with this gzip'd compressed XML data unix set of command tools called Musashi.  It was a major bitch to set up.  But I wrote wrappers in PHP to be able to interface with the tool.  Not native, but still good enough for now.]]></description>
<pubDate>Tue, 20 Nov 2007 09:24:04 -0700</pubDate>
<guid>http://www.keithwatanabe.net/blogs/2007/11/20/70e7033fc23f487d0ac120413941cf2d.html</guid>
</item>
<item>
<title>Ruby on Rails vs Django vs ...?</title>
<link>http://www.keithwatanabe.net/blogs/2008/8/16/72e14b5868fadf2ab5075a32ca8afdcc.html</link>
<description><![CDATA[A long debate about what to teach my friend's daughter led me to give Ruby on Rails a try recently at home while at work I started fumbling around with Django.  At first glance, both frameworks are very similar in that they are targeted at agile development for the web, most notably CRUD style development.  Both have a powerful scaffolding type of architecture where you create model objects that in turn instantly become editable web objects.<br />
<br />
Both also employ scripts that do more heavy lifting for you.  For instance, creating applications via the command line as opposed to having to edit files from scratch.  Also, both have built in web servers that allow developers to utilize their local environments when creating web applications.<br />
<br />
But that's probably where the similarities at the heart end.<br />
<br />
Rails focuses more on convention for coding practices.  For instance, the model objects expect a certain naming convention and employ columns like &quot;id&quot; to handle the primary key.  On the other hand, Django is useful for legacy systems where it can &quot;discover&quot; schemas and quickly adapt itself to more complex scenarios (such as having non-surrogate keys).<br />
<br />
I think Rails feels more mature and polished compared to Django.  For instance, it instantly builds unit tests for your models (and controllers I believe) whereas Django doesn't do that automatically.  Also, Rails has some pre-built, commonly used functions like login screens that you can install.<br />
<br />
However, I found Rails to be a bit inflexible because of its design to force developers into using its conventions.  Legacy databases would suffer greatly if they didn't follow the database naming conventions for Rails.  Also, the scaffolding part, while not having worked with it extensively, seems more appropriate for simple CRUD based systems.  For example, it seems that if you have a backend system that requires various administrative menus to populate and control data for lookup tables and such, Rails is a great choice.  For scalable websites and legacy applications, Rails might suffer from the lack of flexibility in this area.<br />
<br />
My personal preference is simply to stick with my own framework.  As well supported as these frameworks are with their communities, my biggest problem is that you're still limited by what the community deems as important.  Rails works in a restricted setting but I'm required lately to build more complex applications.  For me to port my stuff to Rails makes little sense.<br />
<br />
Still though, it's nice being able to try out something different.]]></description>
<pubDate>Sat, 16 Aug 2008 02:46:24 -0600</pubDate>
<guid>http://www.keithwatanabe.net/blogs/2008/8/16/72e14b5868fadf2ab5075a32ca8afdcc.html</guid>
</item>
</channel>
</rss>
