Hacker News new | past | comments | ask | show | jobs | submit login
Steve Jobs Says, "Fuck You Ruby Fanbois" (oppugn.us)
82 points by mcantelon on April 9, 2010 | hide | past | favorite | 42 comments



This is one of Zeds weaker rants. He wants to piss of the Ruby community, yet it is far too obviously filled with bait. Time will show if the fish bites, however.

What is really going on is a war fought by proxy on the iPhone. The combatants are Adobe wanting to commoditize all platforms for their flash apps and Apple, who wants to keep the control of their platform. Ruby, Lisp (any), Haskell, Python, and Lua are not participants in the war, yet they got hit by the nuclear fallout.

The interesting question is how much Apple needs to do to piss off developers - which they need in their eco-system. While other platforms lags somewhat behind the iPhone, there is no doubt that the scales can tip quickly. I may be wrong, but I think rather few programmers make their pay from iPhone revenue streams.


Ruby, Lisp (any), Haskell, Python, and Lua are not participants in the war, yet they got hit by the nuclear fallout.

This is a great analogy. The people that were vaporized by the atomic bombs probably didn't care enough about the cause they died for to die for it. But they didn't get to choose -- someone else chose for them.

That makes me sad.


Well, Rhodes guys say that they were not affected by the "nucler fallout": http://rhomobile.com/2010/04/09/iphone-4-0-sdk-rules/.

If that's the case, you can still code in Ruby for the IPhone.

If not, maybe xmlvm can do the job (http://xmlvm.org/overview/)


It is a legislative defensive move by Apple. I hardly doubt they would go after a highly successful and well-written Ruby application. Rather they want a way to pull everything flash at a whims notice with reference to the agreement. In other words, they set up a trap.


"getting up and running with Ruby on Rails on a Mac takes a metric fuck ton of ass raping"

If by that colorful phrase you mean, "gem install rails". I'm pretty sure we ship a Rails product, and I'm pretty sure that we only issue people Macbooks running OSX, and I'm pretty sure he's wrong about that.


It's not that simple. You have to prepend that command with "sudo" and then, immediately after pressing enter, you have to type your password.


Rails itself is actually installed by default on Leopard - I am not sure about Snow Leopard though ...


It is on Snow Leopard as well.


http://twitter.com/zedshaw/status/11909132752

"Now, work with me people, I want to get "Fuck" on HN front page again: http://news.ycombinator.com/item?id=1254189 .

Touching how he cares about us...


This essay is basically based on the flaky foundation that the best way to develop software is to code for the underlying computation device. This is an unproved assertion, and so the rest of the essay basically falls apart.

The underlying device is severely limited in many ways. Programs are not composed of "blocks of memory". There are an infinite number of integers, not 2^64 of them. Etc.

It doesn't make much sense to structure functionality around these flawed assumptions unless you are absolutely sure your application's functionality is a subset of the computer's functionality. Since most iPhone applications let you do much more than just add numbers modulo 2^32, it makes sense that it should be built in terms of higher-level abstractions. Who cares if your app isn't "coded for the underlying machine". It works, and it's easy to add new features without breaking everything else!

(Some C-level abstractions are quite good, of course, like the function call stack. But a Scheme-like call graph is even more natural.)

The goal in creating software is for your program text to describe the solution to your problem. It's easier to do this in the "problem domain" instead of "C", so we have created abstractions that allow us to think at the high-level of "problem" instead of the low-level of "electrons being pushed around through semiconductors".

Anyway, if you want to use an unpopular language so you can think you're better than everyone else, why not use Haskell instead? At least that way you get type safety, fast automatic memory management, composable libraries, interactive development, portability, and a friendly irc channel to hang out on.

Oh yeah, because you're a luddite, not a programmer. Sorry, I forgot.


Forget a flaky foundation, the whole 'essay' is full of meaningless hyperbole, and poorly written at that.


Eh, usually I like Zed's stuff; but this one sounds like every conversation I've had with every C developer ever.

It's not that learning C is a big deal, it's that it contains a lot of unnecessary work and there are nicer (read: more convenient) languages to work in. Good Ruby developers will probably make good C developers, and bad ones will be obviously bad.

I guess Zed's not over having his feelings hurt by the Ruby community yet.

I give this one a 5/10 (although, I should give a bonus point for successfully getting "fuck" on the front page again, I guess).


Clearly, I only write Ruby because I never learned C (or Modula-2 and Java for that matter) first. And I'd never write in a high-level language to deploy to multiple platforms with totally different APIs.

Is this article supposed to be ridiculous ad-hominem, or is it sarcasm?


These are also the guys who love Apple. Mostly because DHH loves Apple.

Well today, I am in love with Steve Jobs. He apparently agrees with me that these guys shouldn't be coding.

Flamebait, mostly. Sarcastic ? Not really, sarcasm implies some degree of subtlety.


I thought this was going to be something interesting about Apple's own MacRuby project, which many people were keen to see on the iPhone, but it's just a weird rant.


Since when does blatant flamebait get 64 points on Hacker News?

I miss this site.

EDIT: Oh, it's Zed Shaw again. I'll continue in my delusional belief that blatant flamebait not authored by Zed Shaw would be flag'd to death by now.


I thought Zed gave up on this style of posting. Really, the novelty wore off years ago.


can i code in c? yes.

do i want to? no.


Although I dislike a lot of what he said, this was part of his point. I was 'raised', so to speak, on C. I work with a lot of people who have only worked with mainstream high-level languages. What I find very often is that a lot of people spend a huge amount of time trying to understand the cause of some 'bug', and it essentially comes down to them not understanding what is actually going on when it comes to references, memory management, etc... I hate coding real-worlds apps in C, but as a language it's still one of my favorites because of what it forces you to truly understand. Convenience is nice, but not at the cost of misunderstanding.


I'm a big Zed Shaw fan, and I plan on sending a rant to this site, but I have to disagree with him here.

The real issue isn't that they're forcing developers to use C. The real issue is that they're forcing developers to conform to an arbitrary standard.

If people can write apps in Lua or C# that build and run on the phone, and that meet Apple's quality standards to get into the App Store, why should they care? What business is it of Apple's to tell independent iPhone developers how to do their jobs?

So, if I were going to write a rant about this, I'd write one about assholes who are too nosy about how I use the stuff they sold me. That might just be me though.


"... gotta embrace the curly-brackets, and they can't call them fucking stache or mustache characters. They're called fucking curly-brackets, and if you can't call them that then me and my damn C friends are gonna laugh at you every day you come to work."

Oh noes! I'm a full-time C programmer doing linux-based networking OS stuff and I call them staches! I am probably going to get beat up at work now. Than being said, I don't think I really ever use "stache" or "curly-brace" in actual conversation, its just sort of implied when necessary.


RoR is hard to get running on a Mac? WTF? I just compiled Ruby and Rubygems last night with zero issues. A simple "gem install rails" and it was done.


While you can't deny Apple's right to control the app market (and even the development methods), why would anyone work with a vendor that does?


They won't have to learn C or much of memory management or anything about pointers because of that other Smalltalk influenced language full of fancy abstractions.

That dragging things around in Interface Builder and copy/pasting TableCell code off the web is more hardcore than a typical Ruby on Rails website is unfortunately not a realistic argument. That's why we have so many "haha, I farted" type apps.


OK, I think we get the point here.

Is it time for a flood of stories about how Erlang is no longer permitted on the iPhone, hint hint?


Well, unless anyone is willing to re-implement Foundation and UIKit framework, writing iPhone apps with pure C will take forever.


G-d forbid iFart be written in Ruby. Such important work should be left to C if you can't get all the way to assembler.


People should program in C because it is more difficult ? Then people should use punching card for the same reason.

People should program in C because some people programing in ruby are morons ? Great argument ...

I really don't see any valid argument why knowing C is such an enlightening experience (I would argue it is not).


Linus Torvalds famously said the same exact thing whilst bashing C++ (instead of Ruby as Zed does here).

  C++ is a horrible language. It's made more horrible by the fact that a lot 
  of substandard programmers use it, to the point where it's much much 
  easier to generate total and utter crap with it. Quite frankly, even if 
  the choice of C were to do *nothing* but keep the C++ programmers out, 
  that in itself would be a huge reason to use C.

http://thread.gmane.org/gmane.comp.version-control.git/57643...


thanks for the amazing link (I'm 100% with the 'dinosaurs' on that one), it is worthy of a separate post


I'm sure there are enough morons coding in C also...


All languages have morons. Remember OSCommerce?


OSCommerce isn't a language. Its written in PHP... by morons.


There's a deeper socio-philosophical aspect to this rant. When you elevate a group of people to the level of Gods and give them totalitarian power, it certainly is funny when they use this newfound power to oppress you. Totalitarianism is possible only when the people behind a dictator allow it to exist. When it comes back to bite you in the backside, it's funny to observe how you react.

Is Apple a totalitarian government with Steve Jobs as it's dictator that was made possible by a decade of Ruby-like fanboyism? I don't know. Maybe, or maybe not. But is it funny to observe how all the Ruby fanboys squirm with this new Apple development? It sure is.


Is he saying that Apple is doing this because of quality control? As in, programmers who program in C, C++ or OC are better programmers so you get better software?


More like programmers who program in C, C++ or ObjC are slower, so if their idea is actually worthy, we can copy it before they've grabbed enough land.


Nope, now they have to learn C and how RAM actually works, and what a fucking pointer is

Those topics are really important in Objective C..


It's trolling, but it's spot-on trolling.


Writing iPhone apps requires very little C. Objective-C is actually quite similar to Ruby.


[Why [Not [ThingsThatAreLikeOtherThings RubyTheProgrammingLanguage] ObjectiveCTheProgrammingLanguage] BecauseItsFuckingWordy]


Objective C is smalltalk and C's lovechild.


Way to go Zed!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: