Wow. I wonder how many 10x programmers got their start in college.
Wow. I wonder how many 10x programmers got their start in college.
I reviewed Rail's ORM implementation extensively when researching the field, and I found DHH's implementation to be remarkably naive, with most advances provided by third party developers, and absolutely no demonstrative knowledge (theoretical or otherwise) of the underlying relational algebra, security concerns, etc.
A very simple example of implementation naivety: As of 2004, ActiveRecord implementation failed to even use parametrized SQL statements and was open to a variety of SQL injection attacks:
http://article.gmane.org/gmane.comp.lang.ruby.rails/623
http://article.gmane.org/gmane.comp.lang.ruby.rails/749
In my reviews of DHH's work, I've not found code that I would consider 'genius', but note that this is not an argument that his work is without value.
Can you say the same thing in regards to the developers that work for the following companies?
SUN (Java), Microsoft (ASP/ASP.NET), Macromedia (ColdFusion).
(and don't forget developers who use PHP, Perl and Python).
Yes, he's sloppy/have no knowledge in certain areas... and I assume that's where people like you, ankhmoop, come into play and contribute. Just like Lars Bak with his soldiers.
In my early 20s, I wrote a piece of widely popular software that's still in very active use today. I didn't solve the problem well, and I wouldn't call the implementation genius by any stretch of the imagination, but I made something useful and quite a few people use it every day -- probably more than use Rails, but I must admit I'm guessing.
For all the value I've produced, I'm still embarrassed by the software, and all the more so when I see other developers emulating my design and approaches that I've since learned to be sub-optimal. The work wasn't genius, but yes, it simplified something important.
The lesson I take away is this: value doesn't require genius, and it's foolish to conflate the two. I try to appreciate the value produced by others without making assumptions regarding their genius.