Live data from Hacker News

Hate Java? You’re fighting the wrong battle.

javacodegeeks.com

121–130 of 186 posts

Re: Hate Java? You’re fighting the wrong battle.

#121
post #113

Earlier quoted context omitted.

Steve Pavlina has one essay, in particular, which changed the way I thought about my business and directly contributed to my later success. (The five-second version: improvements in your funnel are multiplicatively effective. Does that sound obvious? It wasn't obvious to me, and it set me down the road of A/B testing and other hillclimbing, and I climbed my way right out of my day job.) Yes, he later went seven flavo…

Which paper was it?

I believe it was an article called "Shareware Amateurs vs Shareware Professionals". His old Dexterity is no longer available, but he released the copyright on all his material so I mirrored it (and all his old Dexterity articles) on my site:

http://www.sodaware.net/dev/articles/shareware-amateurs-vs-s...

Re: Hate Java? You’re fighting the wrong battle.

#122

Tell me, what do the following have in common? - Paying with a credit card. - Going to the emergency room. - Adjusting your 401k. - Using your insurance card at the dentist. - Shopping around for the best car insurance. - A BNSF train pulling a Union Pacific coal car. - Transferring money between banks. - Filling a prescription. All the above industries are billion dollar players in our economy. All of the above indu…

> The question to ask is: What are the economic and social forces keeping the COBOL code base alive?

Do you want to be the person who volunteers to rewrite those codebases into $HOT_NEW_LANGUAGE (or even $BORING_STABLE_LANGUAGE) and be on the hook for ensuring that your rewrite exactly replicates the behavior of the old system? Introducing bugs--or even inadvertently fixing bugs--during the rewrite is absolutely not allowed.

Let's say, for concreteness, that each one of those tasks above is a multi-million line codebase. Think about what that would cost, both in person-years and in monetary terms. (Sure, you can write 10x less code...but half a million to a million lines of Python is still a lot of Python.) Remember, you probably have to have a fairly exhaustive specification of how the original system worked before you embark on the rewrite; just getting that specification together is likely to be tilting toward person-years of work.

Do you want to be the manager who goes around to talk to all the involved stakeholders and explains to them why this is a worthwhile use of their systems, time, and money? ("We'll have an easier time recruiting people to work on the system," probably doesn't fly; neither does, "$LANGUAGE is cleaner/faster/more readable.") What do you tell them when they ask about possible issues during the transition? And so on and so forth.

Re: Hate Java? You’re fighting the wrong battle.

#123
post #63

Java is the default language in the best selling phone platform, Android. For that reason alone it will remain relevant for a long time. I know Android can run other JVM languages, but until the platform becomes stabilized (meaning most big security holes are filled, new non-trivial features are rare) there won't be a push to make non-Java languages a first class citizen.

> Java is the default language in the best selling phone platform, Android. When iPods and iPads are included, iOS greatly surpasses the Android install base. These aren't just phone operating systems; they're mobile device operating systems.

How is that relevant to the viability of Java?

Re: Hate Java? You’re fighting the wrong battle.

#124

Java is the default language in the best selling phone platform, Android. For that reason alone it will remain relevant for a long time. I know Android can run other JVM languages, but until the platform becomes stabilized (meaning most big security holes are filled, new non-trivial features are rare) there won't be a push to make non-Java languages a first class citizen.

I think Go will be released for Android next year. Maybe other languages too. It is a huge legal risk for Android not to have a fallback from Java.

I love Go, but it is a systems language (a C replacement), not a UI language. That's not even my opinion, that's how they market it.

Re: Hate Java? You’re fighting the wrong battle.

#125
post #5

#Using Java for serious jobs is like trying to take the skin off a rice pudding wearing boxing gloves. -- Tel Hudson #Of all the great programmers I can think of, I know of only one who would voluntarily program in Java. And of all the great programmers I can think of who don't work for Sun, on Java, I know of zero. -- Paul Graham #Java is the most distressing thing to happen to computing since MS-DOS. -- Alan Kay #J…

That's a lot of quotes, mostly by people I've never heard of (PG, Kay, Greenspun and Yegge excepted). I'm not saying there's no truth to them, but they're mostly fluff and little content.

Some notes: I don't know why PG can't, but I can certainly name a dozen great programmers who mostly work in Java. Greenspun recommends that instead of Java, you use (wait for it...) .NET.

The Dick Wall comment I have no issue with :-)

Re: Hate Java? You’re fighting the wrong battle.

#126
post #45

Java is the default language in the best selling phone platform, Android. For that reason alone it will remain relevant for a long time. I know Android can run other JVM languages, but until the platform becomes stabilized (meaning most big security holes are filled, new non-trivial features are rare) there won't be a push to make non-Java languages a first class citizen.

You are eliding the difference between selling a lot of devices and selling a lot of apps. I notice this ecosystem over here that's running on Objective-C that's doing a very good job of selling apps and directing money towards developers. Android is certainly going to help Java remain relevant, but this is another example of how it isn't highly compatible with the entrepreneurial mindset. The Android app ecosystem i…

I think you've been asleep for the last year or so. This is not even about Android vs iOS, I don't care about that stuff. There, clearly, is a large interest in developing for Android (again, whether it is on the same level of another platform is irrelevant to Java's future viability). Real, good developers are taking it seriously, and profiting.

Re: Hate Java? You’re fighting the wrong battle.

#127
post #113

Earlier quoted context omitted.

Which paper was it?

I believe it was an article called "Shareware Amateurs vs Shareware Professionals". His old Dexterity is no longer available, but he released the copyright on all his material so I mirrored it (and all his old Dexterity articles) on my site: http://www.sodaware.net/dev/articles/shareware-amateurs-vs-s...

Yeah, that one.

Re: Hate Java? You’re fighting the wrong battle.

#128

Earlier quoted context omitted.

"The problem with C# is that it's tied to Microsoft..." What about Mono?

Mono doesn't get close to .NET, even in versions and in implemented functionality, there's always missing something. Writing a serious web application in asp.net is not the same as writing a serious web application in mono.

"...always missing something"

Such as?

Re: Hate Java? You’re fighting the wrong battle.

#129
post #75

Earlier quoted context omitted.

Java is so popular, easy to learn and use that there are tons of terrible frameworks and bad programmers in the community. Rebel against it all you want but in the hands of great developer you can get pretty amazing software written in Java like Hadoop, HBase, Lucene, Cassandra, etc. Java is the assembly language of the JVM and since most of the cooler new languages are on the JVM (and written in Java often) it will…

I don't think those are examples of great software. They are very useful, and many fill a niche that needed filled, but they aren't great software IMO. Hadoop is a very leaky abstraction to give one example. I've seen it crash frequently because people used wild cards for their input and the job tracker would run out of heap and crash.

Hadoop is a leaky abstraction because it crashes ? Does not compute!

I'm not very familiar with the others, but Lucene is really an example of great software. In a few lines, it makes you feel as if you can build a Google by yourself !

Re: Hate Java? You’re fighting the wrong battle.

#130
post #118

Earlier quoted context omitted.

This sounds like redirection to me. I've just said that i believe that we should be using technology based on its merits. I think that is a separate issue from either whether new technology is always good/better than existing technologies, or whether we need to continue to support and encourage the development of new technologies (meh to the former, a definite yes to the latter). Established industries on the other h…

It's more of an antecedent-consequent relationship than redirection, in my opinion. Anyway, while your examples are instructive (I hadn't even heard of the latter three), they get right to the heart of my complaint: I simply don't worry about how to write individual web applications (though I wish some people would think about it a bit more... cough - quora - cough). My immediate response to something like coffeescri…

Actually, yeah, Coffeescript is actually bootstrapped using Jison (a javascript implementation of Bison), and implemented in Coffeescript! :)

I should note that i think what's being done with Sproutcore now is pretty awesome. People like Yehuda Katz have done a good job of turning Sproutcore into a tech that has a solid conceptual foundation, and is aiming for ease of use for developing non-trivial javascript apps.

So, what do you worry about (and i mean that in a non-stern, genuinely curious way)? Web applications really are going to be the solid basis upon which a lot of future technology is built. A lot of pretty complex technology is going to be written in javascript (or things that compile to javascript). It really is a necessary step to see how to make javascript development more efficient and principled, so that there is a common basis for getting stuff done.

Post reply on HN