SUMMARY: I spent 2 yrs looking to make Rails do something it wasn’t meant to do, then understood my old deserted language (PHP, in my case) would have the desired effect if contacted with my new Rails-gained wisdom. I hired one of the best Rails programmers in the world (Jeremy Kemper aka bitsweat), and we set off on this huge job with intensity. The first few months showed good progress, and Jeremy cannot have been more amazing, twisting the deep inner guts of Rails to make it do things it was never designed to do.
But at every step, it seemed our needs clashed with Rails’ preferences. Like trying to show a train into a fishing boat. It’s do-able with a lot of glue. But it’s damn hard. The entire music distribution world acquired changed, and we were still focusing on the same goddamn rewrite. I said fuckit, and we abandoned the Rails rewrite. Jeremy had taken a job with 37 Signals, which was that. I didn’t depart the rewrite IDEA, though. “Will there be anything Rails can do, that PHP CAN’T do?
I threw away 2 years of Rails code, and opened up a new vacant Subversion respository. In only TWO MONTHS Then, by myself, not telling anyone I had been accomplishing this even, using nothing but vi, and no frameworks, I rewrote CD Baby from scratch in PHP. And it works amazingly well.
It’s the most beautiful PHP I’ve ever written, all MVC and Dry out wonderfully, and and I owe everything to Rails. Martin Fowler’s Active Record design. MVC separation: controllers have no HTML or business-logic, and only use REST-approved HTTP. GET is only get. … and much more. In mere 12,000 lines of code, including HTML templates.
For 24 months, I thought Rails is genius, PHP is shit. Rails is powerful, PHP is crap. I was almost killing my company in the name of insisting Rails was the answer to all questions blindly, timeframes be damned. However when I took a genuine emotionless non-prejudiced consider it, I understood the language didn’t matter that much.
Ruby is prettier. Rails has nice shortcuts. In a day if needed But no big shortcuts I can’t code-up myself. Viewed from a genuine practical viewpoint, I possibly could do anything in PHP, and there have been many business reasons to take action. Instead, I was able to gut the awful PHP and replace it with beautiful PHP gradually. Launch in stages. No big re-training. I admire the hell from the Rails core gang that truly understand every comparative range inside Rails itself. But I don’t. And I’m sure I am going to never use 90% from it. With my little self-made system, every line is only what’s necessary absolutely.
That makes me extremely happy and comfortable. I don’t need to adjust my ways to Rails. I tell PHP exactly what I want to do, the real way I wish to do it, and it doesn’t complain. I used to be needing to hack-up Rails with all sorts of plugins and mods to obtain it to be the multi-lingual integration to our existing 95-table database.
My new code was made simply for me. The most efficient possible code to utilize our exact needs. Talking about tastes: tiny but important things : I love SQL. I wish in queries. I believe in tables. I was always fighting against Rails and its migrations concealing my precious SQL from me. Rails was an incredible teacher.
- Create a Facebook web page
- Make Linux the first drive, and Windows the second
- Find your device in Computer or My Computer
- Family-Friendliness: Full Weight (~8.33 Points)
- Finding the perfect systems and frameworks
- QoS Packet Scheduler: (Image 3.3)
- Adding Grid view for Employee display
I cherished it’s “do exactly as I say” paint-by-numbers construction that taught me some very nice guidelines. I really like Ruby for making me really understand OOP. God, Ruby is so beautiful. I love you, Ruby. But the primary reason that any programmer learning any new language believes the new vocabulary is SO superior to the old one is basically because he’s a much better programmer now!
You look back again at the old ugly PHP code, compared to your new beautiful Ruby code, and think, “God that PHP is awful! ” But don’t forget you composed that PHP years back and are unfairly discriminating against it now. It’s not the language (entirely). It’s you, dude. You’re better now. Give yourself some credit. Ok. All that said, Some day when I start a completely new project from scrape I’m getting excited about using Rails, with Rails in mind from the beginning.