1428347
story
newdaemon writes
"Fortune
has a candid
interview
with Bill Joy about what he plans to do after leaving Sun and his opinions on many other topics, including his strong dislike of the C programming language and how the internet could evolve to take care of the problem of spam and viruses."
Joy may not be with Sun... (Score:3, Insightful)
This article is one big "Java can solve all the internet's problems" troll. As if Microsoft's problem is because their code is written in C instead of Java. That's ludicrous.
A programming language can't change people's behaviour. Only PEOPLE can change people's behaviour. Bill Joy's obviously a smart guy, but his railing against what he calls "antiquated" languages and his lack of understanding on why programming languages have nothing to do with e-mail viruses being able to spread so easily shows why Sun is no longer in such a position of prominence.
His statement about how he "designed solutions for problems that people didn't yet know they had" either shows a complete lack of understanding of the way NORMAL people use technology or he's started believing his own marketing spin about Java and Sun's other technologies.
It makes me wonder if Joy is leaving Sun because he's bitter that Sun couldn't take down Microsoft and that Java, while a very powerfull programming language that definitely has it's place in certain types of projects, isn't the language of choice for programmers everywhere.
Imagine that you are an alcoholic... (Score:4, Interesting)
...and that, after some real calamity in your life, you have decided to go cold turkey.
Now, where would you rather go cold turkey? Locked in a liquor store, or locked somewhere free of alcohol?
A C compiler is the liquor store of systems programming. It reinforces all the bad habits and rewards none of the good.
C has no formal definition for exceptions (signals can't really count), it does not force good behavior in allocating memory/objects from the heap, the stdio library is slow because of multiple buffer copies (David Korn replaced it with sfio in ksh93), C is constantly beaten by Fortran in computation-intensive applications, Python has shown that C sylistically leaves much to be desired, and this is only the beginning of the criticism.
I like C a lot too, but ultimately, there is no future in it beyond low-level applications that need to work at a near-assembler level.
Can you really imagine C being used for systems work in 50 years?
Re:Imagine that you are an alcoholic... (Score:2)
Sadly, yes. And maybe thats only because I'm either ill-informed or unimaginative.
Barring the low level stuff (Kernel stuff is de facto C, if not de jure), how else can you get performance? Ada is going the way of the Dodo (there are still a few huge legacy apps running around). Java can't take its place until a rock-solid JVM is common (is there one available?). There are far too many stories of applications running out of memory becau
Re:Imagine that you are an alcoholic... (Score:2)
Re:Imagine that you are an alcoholic... (Score:2)
Perhaps that's because he's juist talking up Java at the expense of everything else. Hands up if you've ever heard of a system rewritten in Java that failed atrociously.
Re:Imagine that you are an alcoholic... (Score:2)
As for Cobol- I'm UN-informed. I thought the majority of its place in the market was just legacy support? Mind you, legacy support is a multi-billion dollar industry (thats what we do now with ADA). So is there a lot of new development in Cobol?
Re:Imagine that you are an alcoholic... (Score:3, Insightful)
Fortran is easier to optimize and vectorize than C, which is why it has a strong hold on scientific computing. Optimizers can assume a great deal about Fortran programs that cannot be assumed about C.
Cobol is still alive and well in many business-oriented computing environments. There are Cobol programmers working in the office down the hall from me. New systems implementations in Cobol continue today.
Re:Imagine that you are an alcoholic... (Score:2)
Please tell me where. My mother is an out of work Cobol programmer. She can't find a job anywhere anymore.
Cobol is as good as dead. The jobs left are pretty much legacy support. Maybe your case is a special one but for the most part it's dead. Learning to program Cobol now is like learning sanscr
Re:Imagine that you are an alcoholic... (Score:2)
Re:Imagine that you are an alcoholic... (Score:4, Informative)
For user-land software, things like python are becoming very practical. Java is probably acceptable for daemons and such (so long as they're not massively performance critical) but isn't ready to be used for anything with a GUI or where startup time matters.
Java GUIs (Score:4, Interesting)
*shrug*, it works for us.
We've switched almost entirely from Powerbuilder to Java, including writing fairly rich GUIs in it. (I personally think the Java GUIs look and feel better than the PB ones).
The big issue with Java GUIs is that it's almost impossible to do them in a "knock-up" way, (something that VB, PB and the like are good at).
People try it, and then end up with junk and blame it on the tool. It's true that if you want to throw a GUI together as cheaply and easily as possible, then Java isn't the right tool, but if you want to put together a GUI that fits into a well designed system, then swing works just fine.
As Gosling recently said,
Re:Imagine that you are an alcoholic... (Score:3, Insightful)
This is a myth and it's been debunked so many times I stopped counting. Look at the Eclipse [eclipse.org] project -- the Win32 UI is native (written using SWT) and just as responsive as apps written in C++.
Re:Imagine that you are an alcoholic... (Score:3, Informative)
Better warn those C/C++ developers using Borland's C++BuilderX [borland.com] IDE.
It's written in Java and uses Swing, just as JBuilder has for years.
Re:Imagine that you are an alcoholic... (Score:2)
Neither is perfect. They are certainly different.
Both can be avoided, given painstaking control of memory life-cycles.
Re:Imagine that you are an alcoholic... (Score:3, Insightful)
Wow (Score:2)
The problem isn't the C language. The problem is, as always, language bigotry and poor breadth of knowledge.
Of course, that sword cuts equally in all directions. What language can you imagine as "the" systems language in 50 years? Can the future really hope to hang on to diversity? Where will we attain unity?
If we teach all the C programmers Java, and all the Java programmers C. Then we'll get world peace! (Oh wait, that's jus
Re:Wow (Score:3)
Joy is right that more structured languages reduce programming errors. When it comes to working with Java, you can feel when your code is getting ugly because it starts to deviate from the clean design of (most of) the language's libraries.
With C (for example), there are few standards upon which to measure the "cleanliness"
Huh? (Score:3, Insightful)
If your python app is choaking on invalid input, it's because you can't program for shit, not because exceptions suck. If it was a C app, y
Re:Joy may not be with Sun... (Score:4, Insightful)
- adam
Re:Joy may not be with Sun... (Score:3, Insightful)
Not really. If one had to describe Windows' vulnerabilities in a few phrases, buffer overflows, untrusted code and uncontrolled access would be a reasonable summary.
These vulnerabilities are all properly and intrinsically addressed in Java. It is not possible to circumvent the controls by sloppy or malicious programming, therefore Java does enforce secure behaviour.
Joy's comments might represent an exaggeration or simplification, not unreasonable considering the intended audience, but t
Re:Joy may not be with Sun... (Score:2)
After sun ... (Score:5, Funny)
(Oddly enough, there isn't a company that bears the name of the missing planet you're thinking of
Re:After sun ... (Score:3, Funny)
Perhaps the best part of that page is "Uranus Headlines" on the right.
Idiot or Liar? (Score:5, Insightful)
Again, because that program is written in C, it's quite easy to design a virus to go through your e-mail address book and broadcast spam to all the people you know.
The problem with Outlook isn't "C," the problem with outlook is Javascript, VBScript, and Windows Scripting Host, which are PRECISELY the sorts of high-level languages [and their interpreters] that this little terd is advocating.
Or is he just a common liar? I dunno - you be the judge.
Re:Idiot or Liar? (Score:2, Interesting)
Fortune Magazine- Who's the audience: PHBs. Who buys systems: PHBs. His candid interview is nothing but a sales pitch.
Re:Idiot or Liar? (Score:3, Informative)
The problem with Outlook isn't "C," the problem with outlook is Javascript, VBScript, and Windows Scripting Host, which are PRECISELY the sorts of high-level languages [and their interpreters]
Err no. He's definetly not an idiot (SUN anyone?) and he's not a liar. What he means by this is that as Outook is written in C, buffer over/underruns can happen which is what most viruses exploit (they then proceed to use high level languages such as Javascript etc. to get the email addresses and broadcast spam and
Re:Idiot or Liar? (Score:5, Informative)
The issue isn't with the programming language _per se_. Obviously some programming languages are more dangerous then others. Obviously some programmers are worse than others.
The issue is with secure and contained execution environments. Properly "jailing" software (whether a process in an operating system, or a thread and window box on a preview pane in Outlook) is the real answer. Engineering has long known that compartmentalisation is key to minimising risk and impact. Operating systems are getting better at doing it. Programming languages are gradually working towards it.
You can have all of the aforementioned and current problems with buffer overflows, language defects, etc: but if the impact is limited (say, to a display pane in Outlook) then the worst that can happen is psychological damage, nothing more. From one point of view, the preview pane should only be doing that: showing me a preview - it shouldn't be granting access to resources around it.
I think that one of the key technologies that Java brought to the computing landscape was the concept of a secure machine (JVM) for a programming language (at a lower granuality than for a monolithic operating system). Argue as much as you like about how succesfull this was (I do remember much debate and technical attention given to it in the early days of Java), but the concept is far more important than the incremental language innovations in Java (i.e. a next-generation SmallTalk or C++).
Give the guy some credit - he's done some very useful technical work - and Java will be one of the technologies in the timeline of the development of computer history. Even if Java itself wasn't succesfull, it's been an interesting experiment and a lot of learning has come out of it.
I recommend this paper as a good read on the bus, just so you can appreciate the technical innovations surrounding the language.
http://www.jot.fm/issues/issue_2003_09/column3
ps. It's obvious he's still pulling the Sun line, but what do you expect ? He put a lot of effort and passion into Sun's technical direction - only a fool would think he's going to drop that overnight.
Re:Idiot or Liar? (Score:2)
So If I tell Java to overrun a buffer, will it?
No, it will throw an exception. Java doesn't allow direct access to memory, so buffers can't be maliciously overrun. Since this exception mechanism is not built into C at the language level, C is inherently more insecure. C opens the door to one of the most common kinds of attack, a buffer overrun, a type of attack to which Java software is immune.
Some languages actually prevent programmers from leaving certain security holes. C provides very littl
Re:Idiot or Liar? (Score:3, Insightful)
No, but you could easily write an e-mail client in Java that interpreted scripts in the body or header fields of an incoming mail by default, and allowed those scripts to do things they shouldn't. This is the single biggest problem with Outlook (Express) and the reason it's responsible for so many virus/spam problems. It has nothing to do with the language used to implement it, and everything to do with the flawed architectural and security policy decisions
Oh dear lord... (Score:3, Interesting)
The fundamentalism never ends man. I'm almost positive when I assert these three facts:
NT Kernel is in C but so is SunOS
SQL Server 2000 is *entirely* C++
I'm almost positive IE is largely, if not entirely written or at least compiled in C++
Re:Oh dear lord... (Score:2)
Whatever it's written in it still compiles down to the instruction set of the CPU or would he rather all CPUs ran Java bytecode?
OO languages simply aren't suitable for all tasks, neither is C. It might shock people like Joy to know that machine code is still written, you sometimes need to to write it for embedded systems.
Re:Oh dear lord... (Score:3, Funny)
Internet Explorer is written in Algol but is compiled in Perl and linked in Smalltalk.
Also with attendant engineering processes (Score:2)
It will be hard for programmers to let go of C/C++ - the religion of low-level programming has been hammered into a generation of programmers even though there are plenty of high level languages th
Re:Oh dear lord... (Score:2)
Didn't Slammer exploit a buffer overflow in SQL Server 2000? A mere 376 bytes with a few in the wrong place, all because of buffer overruns...
Re:Oh dear lord... (Score:2)
No I don't. In fact, I can safely say that you probably haven't understood what C++ is at all. **At all**.
Also, dude, C++ is not Bill's creation. And so, as stupid as ad-hominem attacks are, misplaced ad-hominem attacks are even more stupid. I'm not going to defend bill to defend C++.
Are you fucking smoking Crack?
Re:Oh dear lord... (Score:2)
First of all, C++ isn't just an extention of C as you might seem to think. You are probably thinking "C++ is just a set of runtime routines defined to support class construction and destruction".
The fact of the matter is that C++ has much more rigourous type checking, which is a big problem as a lot of people know. That's the first difference.
The second d
Re:Oh dear lord... (Score:2)
The first (partial) implementations of C++ was, if I recall correctly, the AT&T headers that extended a C compiler.
And although C++ does have stronger typing than C, it's not exactly bulletproof. If you define classes for all of your types, then you can enforce strict typing, but for the 'basic' types (shared between C and C++), code that looks correct and compi
Re:Oh dear lord... (Score:2)
I'm going to venture a bit out of my comfort zone saying this on /. but to me a language, be it computer or natural is a means of expression. The reason why I like C++ so much is because of its dexterity, of the fact that it's actually legal to turn off compiler checks. Although I wouldn't recommend it in a business object, you can come up with some extremely elegant 'hacks'.
Now that being said, I don't think C++ is the only language capable of doing this
Re:Oh dear lord... (Score:2)
I won't let you go uncriticized though, you said:
<quote>I don't think you are fully aware of what you are talking about yourself, my friend.
C++ is merely an extension to C, and a fairly messy one at that.</quote>
The situation is that I've come to realize one thing in life in general: being complacenct to ignorance and fud is just as bad as spreading the same fud. What Joy said in that article is, IMO, more or less FUD. It's plain and simple "push you
Rant continued... (Score:3, Insightful)
Who here runs their hosted sites on two round-robined boxes with distinct kernels and Apache versions?
Nature deals with breakdowns in a complex system with evolution, and a very important part of evolution is the extinction of particular species. It's a sort of backtracking mechanism that corrects an evolutionary mistake. The Internet is an ecology, so if you build a species on it that is vulnerable to a certain pathogen, it can very well undergo extinction. By the way, the species that go extinct tend to have limited genetic diversity.
Are you implying that Microsoft Windows is vulnerable to extinction precisely because it is so dominant?
He, and the article writer, are playing the circle-j*rk game by feeding each other soft-balls...
But the analogy is poorly 'implemented' at best. If anything, Microsoft's culture could be compared to a termite infestation (revel you little zealots - I've just insulted microsoft), but in no case is it actually on the road to extinction. Extinction right now is a bad looming shadow for *BSD and BeOS and OS/2 etc...
Why is the analogy broken? Because the oxygen and glucose of software is money. Not electricity and bandwidth as some might believe. These aren't real life forms, as such your model isn't bound by the same rules. Microsoft is actually from a market perspective WAAAAY more genetically diverse (it's spreading its market investment at an incredible rate) than any other software company out there. If anything, the slashdot people have figured it out: they are like the borg right now, assimilating any genetic makeup they can.
His analogy is fucking broken.
Fuck this shit, I've flipped the bozo bit on this guy...
Re:Rant continued... (Score:5, Funny)
Java : C :: Emacs : vi (Score:4, Insightful)
Am I the only one getting tired of the "my language is better than your language" holy wars? Yes, Java can do some things by default that C can't, by default--buffer overflow checks, for example--but that doesn't make it necessarily "better". One could argue that Java's way of checking everything for you makes programmers lazy, and more likely to make mistakes that Java can't catch--cross-scripting holes, for example.
In the end, an experienced C programmer can get the same job done with the same quality in C as an experienced Java program can in Java, and that ought to be good enough for anybody.
Re:Java : C :: Emacs : vi (Score:5, Insightful)
This simply isn't the case.
Studies have shown (if you're interested, the relevant studies are referenced in "Code Complete" by Steve McConnell) that programmers are capable of writing approximately the same number of lines of code per unit of time in whatever language they program in. Whether it's C, Java, or Sparc Assembler, they'll write pretty much the same number of lines of code in day.
The catch, however, is the expressivity of the languages used. A thousand lines of C will certainly "do more" than the same number of lines of Sparc assembler. Likewise (though arguably not on the same scale), a thousand lines of Java will certainly "do more" than the same number of lines of C. So disregarding errors for the moment, programmers are more productive in a higher level language like Java than they are in C or Sparc assembler.
Now, as far as errors go: it's true that experienced programmers (in whatever language) will make fewer mistakes than less experienced programmers. But they're still human, and even if you're Donald Knuth himself, you're still going to make mistakes. The fact is that mistakes in C are far more costly than mistakes in Java. You can have off-by-one errors in both languages. In Java, however, your program will raise an out of bounds exception and, at worst, halt. In C, such a mistake could easily lead to a buffer overflow security flaw that can be exploited for elevated privilege. The same error in C and in Java is far more costly in C than in Java.
With even higher level languages, entire classes of mistakes cannot even exist, but I don't have time to go into the advantages of such languages like SML or Haskell.
Programmers no matter how experienced, are going to make mistakes. What matters is how costly those mistakes are. And they cost a whole lot more in C than in Java.
Jeremy
(P.S.: I'm a Python and SML fan, myself.)
Re:Java : C :: Emacs : vi (Score:2)
The problem with C... (Score:2)
I've been programming in C for years. Pointer problems aside, the main problem I've always seen with this little language is that there is no fundamental "string" d
Re:Java : C :: Emacs : vi (Score:2)
Oh well, I guess that's what makes people so interesting. The plethora of personalities. Doesn't mean he's right, though.
Re:Java : C :: Emacs : vi (Score:5, Interesting)
The real issue is which language is more expressive. Since I can accomplish any task with any of the dozens of Turing complete languages, which language lets me accomplish the task at hand in the fewest lines of code?
The answer may vary from task to task, but if the task includes the requirement that the finished product be secure, then C loses, because it doesn't protect against one of the most common sorts of attack at the language level, buffer overruns. Common Lisp and Java do. To have this same sort of protection in C, I'd have to write all the additional lines necessary to implement my own runtime to prevent direct access to memory. Hey! I've just re-implemented *part* of Common Lisp, or *part* of Java.
Thus we come to Greenspun's 10th law of programming:
"Any sufficiently complicated C or Fortran program contains an ad-hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp."
You wrote:
"Oh well, I guess that's what makes people so interesting. The plethora of personalities. Doesn't mean he's right, though."
Bill Joy's opinion that C is a really dangerous language isn't a quirk of his personality. It's an evaluation based on decades of experience as a pioneer in the computer industry, and a deep understanding of the fact that different languages really are better or worse.
Re:Java : C :: Emacs : vi (Score:3, Insightful)
That doesn't make C an awful, bad language, necessarily, but to it does imply that too many programs are written in C that would be better written in say, Python, or Ruby. If you're not in the kernel or doing something truly performance-sensitive like A/V work, you really shouldn't be using C. If you
Re:Java : C :: Emacs : vi (Score:2)
Re:Java : C :: Emacs : vi (Score:2)
Strange as it may seem, it does.
Of course, I should immediately qualify this assertion by adding "in the context of implementing general-purpose business information systems", but I doubt if that will be too far from the territory of most of the
The reason is simple. While I can build a system that doesn't suffer from buffer overflows in C, the only
Re:Java : C :: Emacs : vi (Score:2)
C++ has both options.
Re:Java : C :: Emacs : vi (Score:2)
Re:Java : C :: Emacs : vi (Score:2)
Re:Java : C :: Emacs : vi (Score:2)
Correct, Javascript is not Java... however cross-site scripting is when the web application allows unchecked injection of Javascript etc. into the output thus allowing one user to run scripts on another users browser, and a whole related host of fun stuff..
The problem here is with the web application, not with Javascript.
The solution is to fix the web application so it doesn't trust user input blindly.
The web application will be written in a language such as Java. The cross-site bug was introduced by a
Classic Bill Joy (Score:5, Insightful)
Anyway thanks for Java, its a fantastic development language, please stop telling us we are going to have/need JINI in every toaster, lightfitting and piece of cutlery we own and best of luck for the future.
vi (Score:5, Funny)
According to Joy, "The Control key wasn't available when I wrote vi in the 70's. Back then it was the cent symbol key (you know, that little "c" with the line through it?). So we had to go with this kludgy insert mode thing that just, well, rather sucks."
Re:vi (Score:2, Funny)
Bill Joy Outsourced To India (Score:5, Funny)
Re:Bill Joy Outsourced To India (Score:2)
well.... (Score:2, Interesting)
fix what we current have, not make new implementations of it that require a mass change to use it, not to mention java is a ram whore.
anyways, I do like his idea on fixing common internet problems, however, a lot of that would be simple to fix, example, smtp has been a standard for decades, yet, it's one of the most exploitable protocols ever in existance, all is needed to be done is fix the mail protocol so it cant be so easily abused, (
Ray Kurzweil and Bill Joy About the 21st Century (Score:2)
The US has central planning of consumer production (Score:4, Interesting)
Wal-Mart, headquartered in Bentonville, Arkansas, runs about 3300 stores. It's the biggest retailer in the world. It's the biggest employer in the the US. It's four times the size of the #2 retailer (Home Depot). Wal-Mart's total revenue is over $200 billion. This is more than most small countries. And they're still growing.
Wal-Mart controls a bigger economy than Gosplan, the USSR's state planning agency for the civilian sector, ever did. And Wal-Mart's control is far tighter. Wal-Mart has far more computing power than Gosplan ever did. Wal-Mart tracks sales daily; Gosplan seldom did better than obtaining annual numbers. If sales of something go up, manufacturers are told within days to increase production. If sales go down, Wal-Mart pulls the plug on the maker just as quickly. Gosplan could only dream of control like that.
Wal-Mart's "Corridor of Doom" is famous in retailing. That's where you go to sell to Wal-Mart. There's a long hall with buyer's offices, and a waiting room with a pay-per-use coffee machine. Sales reps, and even CEOs, go there and grovel before a polite Wal-Mart buyer who, by tradition, opens with "And what can your company do for Wal-Mart today". The buyer, equipped with data on all of Wal-Mart's suppliers, then squeezes the sales rep on price. Hard. Companies that sell to Wal-Mart don't make big margins. If they do, Wal-Mart searches for an alternative supplier, and plays the suppliers off against each other. (That's why they push Linux.)
That's how the American consumer product economy really works today.
Past his expiration date (Score:4, Insightful)
Joy comes close to saying Solaris should be re-written in Java. He's not very realistic. When I think of secure programs, I think of qmail, postfix and djbdns. All written in C. I can't even name a Java mailserver or DNS server off the top of my head.
Outlook's numerous viruses are not caused by the program being written in C or C++. They are caused by Outlook's support for active content. The problem would still exist if Outlook were re-written in Java. I wonder if nobody in Joy's circle dares to correct him on this, or if he's been corrected and just didn't hear.
Take any random clever programmer over 30 and give him $100 million. He will wander off into the sunset, murmuring about his brilliant new idea for re-architecting the internet or something. He will never again do or say something relevant.
Re:Uhhh (Score:5, Interesting)
Java is only one of the languages that completely prevent stuff like buffer overrun exploits etc. In fact, pretty much every single language except C and C++ do.
Re:Uhhh (Score:5, Insightful)
If Sun, or someone else, would come along and modify C slightly by removing unsafe functions, and providing alternatives, you could have the best of both, while not having to completely rewrite all the old code.
Inefficiency (Score:3, Interesting)
Don't tell me that leet programmers don't make those stupid mistakes, only idiots. Even if you are God's gift to
AMEN (Score:3, Interesting)
I used to think like this too - when I was in college. Back when the coding projects I worked on were the dorky isolated projects assigned by my profs. Oh it was so easy to pontificate when I only had to code the travelling salesman problem.
Now I respect pro
Re:Inefficiency (Score:2)
Re:Uhhh (Score:2)
Are you really suggesting java is 100x slower than C/C++. Or do you just not know what "a couple orders of magnitude" is?
Re:Uhhh (Score:2)
It's alot better now, of course, and it's hard to get clear performance profiles when you include semi-random things like garbage collection overhead, but in terms of "resources consumed for execution of X algorithm", Java can easily meet that 2 orders of magnitude figure. At least 1.
Re:Uhhh (Score:2)
Java is not very slow anymore. Typically a Java application is 3-4x times slower than a C application, which is perfectly accepteable considering all the safety stuff it gives yo
Re:Uhhh (Score:2)
Re:If C had had bounds checking (Score:2, Insightful)
Re:If C had had bounds checking (Score:2)
That "somewhere" just happened to be the point at which programs became so incredibly complex, that it would take a small army of programmers to ensure that it is secure, and free of serious bugs.
It's one thing if a language lets you do stupid things, it's quite another when a handful of some of the best programmers in the world (and millions of eyeballs), can't keep a single progra
Re:Uhhh (Score:5, Insightful)
>so many companies use Microsoft Outlook for reading e-mail. Again, because that program is written in C, it's quite easy to design a virus to go through your e-mail address book and broadcast spam to all the people you know. As soon as your company starts using Outlook, you can see
Outlook's scriptability has nothing to do with its being written in C++.
Outlook's UI for attachment handling has nothing to do with its being written in C++.
Outlook's historical willingness to do dangerous things driven by HTML code in the preview pane has nothing to so with its being written in C++.
The problems Joy mentioned, of email forwarding itself to everyone in the address book, are not accidental buffer overflows. They're the malicious use of features intentionally designed into the program.
Re:Uhhh (Score:2)
Re:Uhhh (Score:2)
Re:Uhhh (Score:5, Interesting)
Ok, here's an experiment:
a) run Hello World in Java
b) run Hello World in C (including booting up Linux)
Which one is faster? :-)
Re:Uhhh (Score:2)
Not true when you use VM sharing.
For more info, see Sun's project Barcelona [sun.com]
Woefully sadly misdirected on languages (Score:2)
Re:Uhhh (Score:2)
Re:Uhhh (Score:2)
Re:Uhhh (Score:3, Insightful)
As long as a language is "faster" than the network, it'll be fast enough for that kind of use. E.g., there's no particular reason to write a browser in assembly because it spends almost all of its time waiting for the netowrk to do something.
Re:Uhhh (Score:3, Interesting)
Optimization is always the last thing that you should do on a project. This means that implementing the software in C/C++ should be the last resort. Most of the time, most of your software will run just fine in a safer, easier to use language. When you run into performance issues, that's when you port pieces of your program to C. Unfortunately, a lot of people just assume that they should always start coding in C or C++ right off the bat.
I person
Re:Uhhh (Score:2)
How? Dynamically typed languages know the types at runtime. They're not going to core dump just because you feed a string to a function that expects an integer. It will most likely raise an exception that you cleanly handle at an appropriate spot. I find that 99% of the time, this happens the first time you try to run the code; often sooner than your compiler would have finished rebuilding a static implementation. Look at the stack trace, go to that line of code, fix
Re:Uhhh (Score:2)
Re:Insightful? More like ignorant! (Score:2)
At the same time I have seen extremely lean effificent programs written in safe languages. And let me emphasise this again: Java is not the only safe language around, it's just the most popular right now, together with Python I guess.
If it was bad attitude on the programmers part to use development tools and languages to minimise errors and make us more effeient, we'd stil
This sounds sensible... (Score:2, Interesting)
Re:Uhhh (Score:2)
Re:computer inept? (Score:2)
Re:computer inept? (Score:2)
"EMACS is a nice editor too, but because it costs hundreds of dollars, there will always be people who won't buy it."
How the world has changed since 1984...
Re:computer inept? (Score:4, Informative)
Or at least, that's the theory...
Re:computer inept? (Score:2)
Re:modular programming (Score:3, Insightful)
Re:C moron (Score:2)
C is a fine language for computing-intensive tasks and for low-level programming. But why in the name of God is it still used to program IM clients, IRC clients, and other user applications which do not need to be blazingly fast? Please use safer languages for these tasks (Python, Java, O'Caml, SML, whatever) and make sure that you don't expose your users to a myriad of security holes because one nigh
Re:C moron (Score:3, Informative)
that an im is something which always is runnig.
There the heavy memmory requirement/usage of the java vm is a big problem, because you don't want 10-20MB memmory taken away by the im.
This problem would not be so big if only sun would make a vm which allowed many programs running in the same vm thus sharing the memmory usage.
Martin
Re:C moron (Score:2)
Someone mod this guy up funny.
It was the Spruce Goose (Score:2)
Languages are just tools, and only an idiot blames tools for the things we make. Windows is (a) the most popular OS on the planet, and (b) written by large teams pushed to compete on features not security. No wonder it's worm heaven. If it was written in Java, it'd just be heaven for another class of parasite.
But Bill Joy is burnt out, his vision of Java Everywhere only came partly true because of massive hyping for
Re:He should stick to computers (Score:2)
Greed will eventually be the undoing of the U.S. government, just as it has been the undoing of every major world power for all of human history.
Re:He does raise some good points, then again... (Score:2)
Actually it is. Programming languages like Java allow for scalability of the development. I'd rather maintain 20 million lines of Java than 20 million lines of C. With C you'd be fixing stuff most of the time that is handled by the JVM for you. This allows you to focus on other stuff (e.g. adding features, otimizing stuff). Of co