

Why I switched back to PHP after 2 years on Rails (2007) - niyazpk
http://www.oreillynet.com/ruby/blog/2007/09/7_reasons_i_switched_back_to_p_1.html

======
sivers
Ouch. My jaw dropped when I saw my old article on the front page of HN.

To me, posting this article in 2007 taught me two lessons:

#1: The goal of good writing is not to be understood, but rather to not be
misunderstood.

Judging by the hundreds of angry comments on that original link, I failed
miserably. At the time, nobody read my little blog, so I didn't expect anyone
to see this post. I was really just writing it to answer a few of my Rails
friends' questions. I didn't brace it for public attack.

#2: The public you is not you.

I'm a mediocre programmer, trying to improve, and at the time just trying to
make my website the way I wanted it. So it kinda hurt at first to read
hundreds of fellow programmers saying I'm the biggest idiot to walk the earth.

Then I just realized that my post should have been written clearer, and the
reason people were so upset is because it sounded like I was attacking this
framework/language that they had spent so many hundreds of hours learning. It
had nothing to do with me. Only I know my real programming skills, so their
comments were not really about me.

Ever since then I don't let comments get to me, either way. Neither praise nor
criticism should be taken personally. It's just feedback on the post/subject.
Useful for learning how not to be misunderstood, but has nothing to do with
you.

~~~
encoderer
Language wars are the biggest waste of time in the software development
community/industry.

It's temporary insanity, I think.

~~~
icefox
Even more then editor wars?

~~~
benmathes
Editor wars are an insanity that's _not_ temporary.

------
peterhi
This article was written in 2007. Since then both PHP and Rails have undergone
considerable changes making much of what is being said only of historical
interest.

This is supposedly a site about news which by implication is not something
that happened three years ago, unless you have been living in cave.

Old articles can be interesting, for some value of interesting, but this does
nothing for me as either a Rails developer or a PHP developer. I can see no
reason to post this or perhaps I should hunt down some old articles about the
deficiencies of Java 1.0?

If a Rails developer has switched from a current version of Rails to the new
version of PHP I would be interested but even with that being said the article
is comparing a programming language to a web framework. Ruby is not Rails just
as PHP is not Drupal.

Can we have some 'new' in our news please?

[Edited for typo]

~~~
pvg
There really isn't anything specific in the article that makes it
significantly dated. His reasons would be just as valid if he'd written this
yesterday about the latest and greatest PHP and Rails versions.

1 - He felt he could get what he needed to get done in PHP just as well as in
Rails

2 - Integration costs of One Grand Switch from existing large PHP codebase to
entirely new Rails codebase were high

3 - Felt no need for most of the infrastructure Rails provides, was too
complex for him to understand easily

4 - Better performance

5 - Easier integration (due to 1 & 3, presumably)

6 - Didn't want/need an ORM layer and related handholding and/or headaches

7 - Rails/Ruby were better for him to lift ideas from than to actually use
directly

I can't think of anything so dramatic that's happened to PHP and Rails since
Sept 2007 to really make his reasoning of 'historical interest only'.
Certainly nothing like the change from Java 1.0 (a small, sluggish language
released 14(!!) years ago) and Java today (huge ecosystem of products,
languages, frameworks running on one of the faster VMs/JITs around).

~~~
jimbokun
"His reasons would be just as valid if he'd written this yesterday about the
latest and greatest PHP and Rails versions."

It would also be just as valid for any two technologies, not just PHP and
Rails. The real message is: don't rewrite working code from scratch.

~~~
pvg
It's obviously untrue for 'any two technologies'. And I don't know about you
but I like to assume that if the author's 'real message' was 'don't rewrite
working code from scratch' he'd have simply said that. Are you suggesting he
put the effort into summarizing his particular experience while having some
secret and entirely different message? What makes you believe that?

------
dlevine
Quote of the day:

PROGRAMMING LANGUAGES ARE LIKE GIRLFRIENDS: THE NEW ONE IS BETTER BECAUSE
_YOU_ ARE BETTER

------
grandalf
"twisting the deep inner guts of Rails to make it do things it was never
intended to do"

If you use a framework and then fight against it, you are probably using the
wrong framework (or you shouldn't be using a framework)...

------
geebee
My favorite line here was "I said fuckit".

I guess it's not quite as reflective as that girlfriend thing, but I strongly
suspect that everyone who actually succeeds in releasing working software to
the world has an "I said fuckit" moment.

I care less about the PHP/Rails thing, which is probably what got everyone
riled up. To be, this could have been about tech A and tech B. I just like
hearing that people who have succeeded in writing software that others use
eventually feel this way, cause man do I ever sometimes.

------
coliveira
The points raised in the article are still relevant today. Not that you can't
do good web sites with Rails, but sometimes it is easier to use the tool you
are more familiar with.

~~~
cmelbye
I think you missed the point of the article. They used Rails for 2 years, I
don't think it was an issue of familiarity.

------
grandalf
Looks like the site has had yet another rewrite:

<https://www.cdbaby.com/login.aspx>

~~~
mattyb
<http://news.ycombinator.com/item?id=1052508>

------
proemeth
Funny comment: "PROGRAMMING LANGUAGES ARE LIKE GIRLFRIENDS". Like Ada and
Linda: <http://c2.com/cgi/wiki?LindaEtymology>. If a langage was a girlfriend,
what would be the equivalent of _ ?

------
wendroid
translation: rewrites hurt, a lot

see this from 2000 : Things You Should Never Do, Part I
<http://www.joelonsoftware.com/articles/fog0000000069.html>

They [Netscape] did it by making the single worst strategic mistake that any
software company can make:

They decided to rewrite the code from scratch.

------
hackermom
here's my view on this:

the worst carpenter on the planet is the one who whines about the tools he/she
has at hand to complete the task, cheeky because he/she doesn't have his or
her favorite hammer around.

the best carpenter is the one who gets the job done with the tools at hand. go
php. there are just bad programmers, not bad tools.

~~~
Sapient
I would have to disagree with you when you say there are no bad tools. Try
frame a house using a brick, or perhaps a sledgehammer. Software is the same,
for example, C is a bad language to use when creating a website, its possible,
but not a good idea.

~~~
barrkel
Well, if you're using C, first you need to write an interpreter, such as
perhaps a Ruby interpreter, or PHP, or a JVM, etc.

~~~
mahmud
You can write web apps in C; I wrote CGI "scripts" in C as recently as 2004.

------
idebug
Fairly interesting that they've now jumped ship again to aspx. I guess Sivers
gets an itch any time a new web language turns the corner. What's worse is
that CD Baby feels considerably slower than when I used it ages ago.

~~~
sivers
No no no. That apsx crap running the existing site is absolutely not mine.

I sold the company in 2008 to Disc Makers, a company whose internal systems
are all Windows.

After leaving the site as it was (FreeBSD + PHP + MySQL + Ruby) for a year,
they rewrote it all from scratch in Windows ASP stuff, so they could merge it
with their existing systems.

I was long-gone and knew nothing about their rewrite until it was launched.

Funny thing is: when I sold the company, people kept asking, "How does it feel
that it's not yours anymore?" It was always fine and didn't phase me a bit
because it was still my software running the site. It still felt like my
vision was upheld.

But when they trashed all my old software (even the internal intranet that all
employees use to run operations!) - THEN it hurt. A single "View Source" on
any page of cdbaby.com shows a bloated mess of crap that goes completely
against the minimalist aesthetic that drove CD Baby for 10 years. That was
really sad.

But, like the new owners painting your old house pink, it was the final proof
that it's not mine anymore.

~~~
mtarnovan
So it's crap only because it's aspx ? You don't know how the code looks on the
server side, and it's not fair to judge a webapp by the resulting html alone.

~~~
jacquesm
> A single "View Source" on any page of cdbaby.com shows a bloated mess of
> crap that goes completely against the minimalist aesthetic that drove CD
> Baby for 10 years.

That's nothing to do with aspx, that's to do with wrecking a philosophy.

Aspx was the chosen tool to do the wrecking in, but that could have been
anything else. You can write bad bloated code in just about any language.

~~~
kaveri
If you are using MVC maybe. ASP.NET WebForms and postback add tons of crap to
the HTML.

