Brilliant post. Please read. Essentially it's a matter of comfort. There aren't too many glaring issues on either side, other than pure immaturity on an enterprise scale.
Having done too much of all three (I added one), I love Ruby compared to Java and I love Python compared to Ruby. I love the choices of platforms in Python and don't really like the closed feeling and cultlike approach ROR communities. Nothing is quite as bad as C++. or Perl though. I've only touched on PHP but it gives the impression of being really easy to start and really hard to finish.
Things I'd love to see to see from Ruby or Python...
1. Message Bus / MQ Type app
2. Rules Engine
3. BI mini platform
4. Data Transformation Svcs / ETL / Integration Platform
Maybe they're not needed. Maybe I should just be happy with great ORMs.
Tuesday, December 18, 2007
Less Bickering - Ruby vs. Python
Conceptual Bickering
Rarely do I disagree so wholeheartedly. Conceptual Integrity. Great for right now. Perfect even. Maybe good later. Much later? Not so much.
My Take:
Loosely coupled systems and best-of-breed / best-for-me systems are flexible and are much more powerful in the long run. They are harder to play with out of the box (crappy tutorials are a common problem), but in the long run they provide flexibility that is unmatched. Admittedly I used to be a Conceptual Integrity advocate. 10 years of waiting for Java to incorporate JSRs into releases and obtuse Microsoft MSDN searches killed it. Almost makes me wish I spent my time coding C and Perl and contributing to lost Linux distros.
Best-of-* Pros:
Let's loot at Pylons vs. Django. Django is great - fantastic even. it's what got me into Python, but some of the components weren't right for the projects I'm developing - plus, their infinite release cycles are absurd. Pylons advantages lie in it's loosely couple structure. Don't like Mako? Try Genshi. SQLAlchemy too confusing? SQLObject or Elixir. Need a component? You don't have to work hard to figure out how to swap out the platform standards and implement something to your liking or write your own (egads!).
Best-of-* Cons:
Pylons Documentation stinks (sorry guys). SQLAlchemy is a bit of a mystery to me even after delving deep into the source. Mako - ack! The biggest problem is really being able to read different styles of docs and learning where to find info. Thank goodness for google and google-groups. Otherwise it'd be impossible.
Maybe I'm an architect first and a developer second. Conceptual Integrity is something that I'd rather create based on the needs of the app. Not look for a platform to provide.
Friday, October 26, 2007
Drone For Hire
I recently took some advice and spent $30 of my hard earned cash. Yep. I wrote the dreaded resume and posted it on
I haven't interviewed for a real job in almost a decade. I haven't "submitted my resume" to anyone since some graphic designer at an ad firm was nice enough to forward the pile of slog I had pasted together to a real tech company that jumped at the chance to hire me without pay for my first job.
Wow. What a couple of days.
The things I learned while testing the waters....
1. Wildly Complicated Platforms are being developed in NYC
Damn, I think I want to get into the "Trading Platform" business. Not for the money or the absurd hours I'm sure I'd be committing to it, but for the cool array of technologies that these folks seem to come up with. I want in.
2. Enterprise Software Development is still a "check the box" exercise
This was probably most distressing. The number of new software projects that were still touting J2EE and the like. Not that there's anything wrong with it, but... well... C'mon. Does any corporation use PHP, ROR or (egads) Python?
3. Recruiters are your friend.
At least they're you best friend right now. Recruiters are sure a lot nicer than they were when I was 21 and sweeping floors to make rent with 12 typos in my resume and a $95 from the Mens Wearhouse. Amazing what 11 years experience at a decent hourly can do for you.
4. There's a real limited number of smart people on the market
....And hiring the right one for your company is still a crap-shoot. Because hiring someone that's really bright can still be a complete waste of time if they don't fit in. I found hundreds of jobs I could do and would completely suck at at places where I would make the air unbreathable.
So... No smart folks... Hard to fit people into an organization... I say hold on tight with both hands to the people in your company that kick ass. Pay 'em more than the crowd and promote them into custom positions that keep them doing whatever they're doing.
5. There's a lot of smart people in the market
It's amazing the quality of resumes that are floating around now as compared to 10 years ago. You're competing for gigs all over the world with people from all over the world. Thank the good flying-spaghetti-monster that the dollar's in the tank (at least for this). Keep your skills sharp. then stay up all night making them a little better. Some Peruvian sheep herder with a laptop just wrote a great jQuery plugin... and is willing to work for about a quarter of your grandma's social security check.
6. Career Management By the Numbers
I talked to 10 people. They all asked the same questions. I realized you're way behind if you don't do these simple things.
a. Get your LinkedIn page spic-and-span. Get someone other than your mother to write a recommendation too. Everyone is going to read it.
b. Get your Blog up to date (hence this note). Everyone is looking for what you're really like.
c. Get a pro to critique your garbage-in-garbage-out CV. The 15 minutes you spend on the blower will make you look like an all star.
d. If you don't need a job and have plenty of money and love where you are then take a day as write a resume and post it, you moron. It's brilliant. And fun. And I met some really interesting people (I swear). It's by far the best use of a day and a half I've had since I
e. Get Back to Work!
You lazy freak. And stop playing with Google Reader and Del.icio.us too. Write something tiny. Anything... and open-source it. You'll look like a champ.
Wednesday, July 11, 2007
Django Static Files
I've been playing with a completed little reporting app out of Django codebase on Google. It's a nice starter for seeing what can be done to customize the Admin interface with some charts and graphs.
As a noob, I couldn't find the images - and after a bit of searching ran into this post on how to serve static files from the development server - images, css and other customizations can't be served on the dev server.