Live data from Hacker News

The Flub Paradox

steved-imaginaryreal.blogspot.com

1–10 of 77 posts

Re: The Flub Paradox

#2
Well, but the thing is, productivity is not only about power of the language, but several factors, including proficiency in the given languages, available libraries, ease of getting developers in the given language, etc.

And of course, on the article "A disruptive startup is more likely to use Blub in creative ways, focusing on the idea, not the implementation. Facebook dominated its market - using PHP - which everyone agrees is crap. Google built up the world's biggest advertising agency using Java and C++; Android is a Java-like ecosystem that runs in most pockets these days."

Personally I don't care (too much) about using the fanciest language, but rather something a little more mature and easy to use.

Your startup is not going to make or break because your language support macros in the vast majority of cases. And even then you can come up with a service that encapsulate that part and code everything else in your "normal language"

"The vitriol surronding JavaScript is interesting and revealing"

Absolutely. Everybody hates it, but there isn't a right answer, but it got popular (because of its power) and it works. Every language is going to have something people will hate.

Re: The Flub Paradox

#3
> Is BASIC more powerful than Assembly? I doubt it, you can do anything in assembly, and BASIC is deliberately limited [4].

Doesn't this definition make the "power" of all Turing-complete languages equal?

> In other words, Lisp was the Flub of its day. A few years ago Flub was Haskell, and recently the new contender appears to be Rust, judging from the buzz.

If the author thinks Haskell and, of all languages, Rust are most powerful, I think he has significantly misunderstood Graham's original essay.

Among other things, they are statically checked with relatively difficult types that can take a long time to get right. That is obviously not the kind of language Graham had in mind for agily prototyping around corporate behemoths.

The author seems to define Flub as "the most popular language among the elite". Lisp was rarely even that, however, and we also have painfully obvious evidence of the most popular not being the most powerful. As such, I think a large portion of this essay hinges on a strawman: he dismantles a definition of Flub that Graham never used.

> The Flub Paradox can be stated like this: although Flub is self-evidently more powerful and productive than Blub, relatively few people use it and its effect on the real landscape of innovation appears minimal.

Is this really a paradox anymore? We have so many examples of inferior products dominating through inertia that I've completely lost my faith in humanity at this point.

I could add a few more points, but I think that would only be unnecessarily negative. I do like some points from the essay. I agree that we should take another look at Paul Graham's power continuum: for instance, the power of Lisp scales with lines of code (with low LOC, macros don't really enter the equation, and using a "batteries included" language with comprehensive libraries is probably faster). Haskell is easier than many agile languages to refactor, another important dimension to consider. And so on.

Re: The Flub Paradox

#4

Well, but the thing is, productivity is not only about power of the language, but several factors, including proficiency in the given languages, available libraries, ease of getting developers in the given language, etc. And of course, on the article "A disruptive startup is more likely to use Blub in creative ways, focusing on the idea, not the implementation. Facebook dominated its market - using PHP - which everyo…

Javascript didn't get popular because of "its power," it got popular because it was the only option* and because of inertia (all legacy scripts on the web were/are in Javascript, because it was/is the only option).

Edit: * Yes, I'm aware of VBScript, Flash, Java applets and ActiveX, and I'm aware they were all worse than JavaScript. Doesn't then follow that JS is good, or that it won on a level playing field. Frankly, it says something that for all its many faults Flash was often the superior option until the late 2000s.

Re: The Flub Paradox

#5

Well, but the thing is, productivity is not only about power of the language, but several factors, including proficiency in the given languages, available libraries, ease of getting developers in the given language, etc. And of course, on the article "A disruptive startup is more likely to use Blub in creative ways, focusing on the idea, not the implementation. Facebook dominated its market - using PHP - which everyo…

Javascript didn't get popular because of "its power," it got popular because it was the only option* and because of inertia (all legacy scripts on the web were/are in Javascript, because it was/is the only option). Edit: * Yes, I'm aware of VBScript, Flash, Java applets and ActiveX, and I'm aware they were all worse than JavaScript. Doesn't then follow that JS is good , or that it won on a level playing field. Frankl…

> Doesn't then follow that JS is good

Of course not, and, sure, Flash was a better alternative for a lot of time (but mostly for things outside of JS like HTML5 capabilities)

C is not great as well, but between something good that doesn't do what is needed and a bad one that does guess what is used in the end.

Re: The Flub Paradox

#6
> To use it effectively, however, requires using an IDE, and Flubbists hate IDEs, partly because their finger muscle memory has been overspecialized from spending too much time in Eighties power editors, but also because using an IDE is too closely associated with Blub practices. (People who can't ride a bicycle without training wheels, basically.)

This also has an attitude. Certain things an IDE is almost required, for example Data Science with a REPL. IDEs like RStudio and Jupyter (AKA IPYthon) or for SML dialect Racket's REPL.

Also this is anti VIM and EMACs?

Re: The Flub Paradox

#7
Is there even a meaningful definition of 'powerful'? I guess C# 4 is strictly more powerful than C# 2 since it only adds features, but how to compare the power of Haskell versus Rust? They are designed for different domains.

Re: The Flub Paradox

#8
Is the idea of a single language that's clearly better than anything else, for everything, a common one?

If one thinks of languages as tools, it seems pretty obvious that different languages will be the best tool for different kinds of tasks.

Are you writing a REST wrapper around an existing java toolset? Clojure's your friend.

A cryptographic, secure communication library? Rust is probably (going to be? in a couple months?) the way to go (unless you only care about the jvm).

Or maybe you're gluing a couple unix tools together in a fairly complicated fashion, in which case something like python is likely the right choice.

Re: The Flub Paradox

#9

Earlier quoted context omitted.

Javascript didn't get popular because of "its power," it got popular because it was the only option* and because of inertia (all legacy scripts on the web were/are in Javascript, because it was/is the only option). Edit: * Yes, I'm aware of VBScript, Flash, Java applets and ActiveX, and I'm aware they were all worse than JavaScript. Doesn't then follow that JS is good , or that it won on a level playing field. Frankl…

> Doesn't then follow that JS is good Of course not, and, sure, Flash was a better alternative for a lot of time (but mostly for things outside of JS like HTML5 capabilities) C is not great as well, but between something good that doesn't do what is needed and a bad one that does guess what is used in the end.

I knew C; C was a friend of mine. Javascript, you're no C!

When it appeared, C was a revolution in programming languages. It offered a combination of performance and expressiveness that simply outclassed anything else available (still true today, 43 years later, if more narrowly). It instantly became the most popular and held that position to this day, becoming a major influence on virtually every other popular programming language that's come since.

Now, of course, C is much better suited for, say, writing an operating system than it is for writing security-intensive internet services. (A concept which did not exist in 1972). But, all things considered, it was as close to perfection as a new programming language has ever come at the time of its introduction.

JavaScript is not even in the same realm; much superior, existing scripting languages (Python, Ruby, even Perl or some Lisp dialects) were passed over in favor of a deliberately half-assed effort to advertise Java with a language that shared a name and a superficially similar syntax, which (almost accidentally) became the only VM that any web browsers implement.

Re: The Flub Paradox

#10
post #6

> To use it effectively, however, requires using an IDE, and Flubbists hate IDEs, partly because their finger muscle memory has been overspecialized from spending too much time in Eighties power editors, but also because using an IDE is too closely associated with Blub practices. (People who can't ride a bicycle without training wheels, basically.) This also has an attitude. Certain things an IDE is almost required,…

Ever so slightly ;) I think it admirable that people invest a lot of time in the environments they spend so much time in, but a professional has to be flexible. (It is entirely possible that my sarcasm got out of control here.)
Post reply on HN