It is ok in my book to be wrong or ignorant but at least when someone (with more direct knowledge, like me) points out that what you hold as true is in fact not true then it is unscientific to ignore the new data.
As far as I know you're not a recognised authority on programming languages and just another Slashdot user. I don't have to believe anything you say. From my point of view you're just drunk on Java kool-aid on your high horse and living in your own world.
Hell, I can just claim that you don't 'get it' either and that I have far more experience than you think. But this isn't getting us anywhere, so I think I'll move on.
Actually, with computers these days shipping with between 4 and 8 of RAM these days memory constraints are fairly rare unless you are programming in a very niiave way
That's exactly the excuse I was talking about. You have no business using loads of RAM for your application. You should use as little as possible to run on as many computers as possible and allow as many other programs to run as possible (instead of just today's). You're not the only program on the computer, after all, and I'm not going to buy a new computer to run your program.
I neglected to mention how the garbage collector will only clean up when it feels like it and slow down your program. This makes it unsuitable for time-critical programs like video games.
Again, this only matters if you are running tiny programs and the year is 2005.
The same excuse was used in 2005 with a different previous year. And if Java is so great it should be good for tiny programs, too.
and I don't have to micro-optimize since the vastly more clever Sun engineers do it for me
Just like C++ compilers do the micro-optimisation for me.
You would prefer a stagnant platform that is outdated, or updated each decade (like C++) ?
Stability is preferable.
Java's backward compatibility is vastly better than C++'s.
You didn't address the Java applets that broke.
because C++ has so little functionality in its standard library it depends on external libraries to get much useful stuff done. These have mostly changed since the 90s which means that non-trivial C++ programs have to be recompiled every couple of years to work on new platforms.
In other words, Java moved the compatibility problem into the JVM, which I don't think was a good idea.
The older C++ libraries are always shipped with the program so everything just works without a problem. No recompilation needed.
Every language is 'unintuitive' when you approach it from another language.
I started with QBasic, then went to Visual Basic, C, VB.NET, Java, C++, C#, and JavaScript. Once I learned the basics, they were easy to work with, except for Java which has consistently been a pain.
You use == when you want to compare references (eg. pointers), or equals() when you want to compare values. It works that way for all Java objects and really is not that hard.
Strings are such a fundamental data type that they should work like one. Other languages have understood this.
You're right, I have never written a huge application in C++. I have, however, used both of them, and Java has always been a pain to work with.
I find Java to be a bad language because:
it uses more memory than C++ with its garbage collection paradigm. Java enthusiasts always excuse this saying that you should get more memory or that newer computers will have more.
it's slower than C++. In order for a Java program to run first the JVM has to be started and compile the bytecode. Granted, once it has run for a little, the JVM has found ways to optimise the bytecode into something that runs at more or less the same speed at C++, but there's still that initial penalty. Of course, the excuse every time someone mentions this is that recent updates to the JVM have added performance improvements. Yeah, we've seen those. They don't make much of a difference.
it requires a huge virtual machine that has to be ported to your platform. Updates are frequent, too, which gets me to the next point.
it has bad backwards compatibility. Parts of the language get deprecated over time. Java applets made during the 90s often don't work any more.
its GUI libraries suck. GWT and Spring are plain horrible.
it's unintuitive. Want to compare strings? Use the equal method instead of the equal signs. Want to manipulate strings? Wait, use the StringBuilder! I'm aware that this is like this to keep Java 'clean', but I think operator overloading and easy string manipulation makes things easier. Besides, Java stopped being clean long ago when they introduced generics.
You said you were developing a flight simulator. I'm programming a game myself as well in C++ using SDL, which already makes it more cross-platform than if I had programmed it in Java. It can be run all the way back on Windows 95 to Windows 7, many Mac OS versions, Linux, and even on more obscure operating systems like BeOS and its open source effort Haiku.
C++ is standardised, which is what makes all of this possible. As for your specific complaints, they're getting addressed in C++11. I will admit that it's a bit late, but it's getting there nonetheless.
The website of your operating system doesn't introduce it at all. All it has are a series of nearly identical videos with tons of download links. How are we supposed to know what it can do, how to install it, etc.?
Linux, while it started out as a desktop kernel, is these days more of a server kernel. This makes it unsuitable for a desktop operating system as it has different priorities when it comes to scheduling. The Haiku kernel was designed for the desktop and makes UI responsiveness a priority with lots of threading.
Linux distributions are collections of programs that don't work well together. In contrast, Haiku integrates everything nicely with each other and there is one way to do each thing so there's no segregation. Not only is this more pleasant for developers, but it makes for a better, unified desktop.
You wipe the box and start over with a clean install, fully patched, with a firewall and AV.
An anti-virus program is a bad idea, especially today when they fail to catch up to the present day when it comes to virus definitions. A much better idea is to create a whitelist of programs and allow nothing else to run.
In contrast, with The Legend of Zelda it feels like the same game instead of a new one. There's a difference between a regular series of games and a series of rehashes. Of course games in a series are going to resemble each other yet still feel like new experiences.
You don't think playing the same game over and over in a new coat of paint gets tiresome?
With The Legend of Zelda, polishing it means making it soulless. Twilight Princess showed that pretty well. It's so by-the-numbers that it feels artificial.
Nintendo can take a page from its own Legend of Zelda series, which maintains its excellence with clever dungeon and over-world design, strong storytelling, and gameplay tweaked to fit the unique strengths of both handheld and traditional consoles. Crucially, years go by between major Zelda releasesâ"thatâ(TM)s how long it takes to get everything right.
This is a joke, right? The Legend of Zelda series is a shining example of a series that has devolved into formulaic, unoriginal sequels with a gimmick thrown in in a weak attempt to keep things fresh. The only thing that seems to change at all is how each game is more patronising than the former.
The Wind Waker (and arguably its sequel, Phantom Hourglass) was the last game where they really tried, but the fans threw a tantrum when they saw the cel-shaded graphics. Even a good friend of mine who is otherwise quite intelligent won't touch the game with even a pole. But he will claim to know the game based on watching 3 hours of movie footage of it through YouTube. It's ridiculous.
Except that officially he hasn't been charged with anything! The Swedish police just wants to ask him some questions, and apparently that can't be done over the phone or by visiting Assange personally.
But it is! It's not the kind of DRM that the MAFIAA is pushing, but it's still DRM. File ownership and permissions are digital rights.
it's a simple method of sandboxing dumb users or poorly writen applications from writing to places it should not be able to.
This is why I'm in favour of permissions for applications instead of users.
I think you miss the point that he is making, with any process/application to be able to write to any other process or application, it creates a completely untrusted environment where you cannot expect the system to be in any state when you cannot completely control it's inputs.
Which I don't think is appropriately solved by DRM aimed at users like Unix does.
Sure maybe it can go in a stand alone video editor... but why would you when you can put linux on that same machine and connect it to the internet/render farm and not have to worry about it getting pwned in a javascript buffer overflow
Because Linux is a crappy desktop OS and BeOS/Haiku offers a better experience.
Since when do we have to worry about JavaScript buffer overflows, anyway? Modern web browsers are pretty good at containing JavaScript and they are updated quickly should an issue arise. Just keep your web browser updated. There are tools like NoScript should you be paranoid.
Unfortunately, they did. Before that, websites couldn't send data back to the server at whim and get back results without refreshing the page. It opened the door for huge messes of JavaScript we call "web applications".
Please don't use or link to W3Schools. You can read why at http://w3fools.com/
As far as I know you're not a recognised authority on programming languages and just another Slashdot user. I don't have to believe anything you say. From my point of view you're just drunk on Java kool-aid on your high horse and living in your own world.
Hell, I can just claim that you don't 'get it' either and that I have far more experience than you think. But this isn't getting us anywhere, so I think I'll move on.
That's exactly the excuse I was talking about. You have no business using loads of RAM for your application. You should use as little as possible to run on as many computers as possible and allow as many other programs to run as possible (instead of just today's). You're not the only program on the computer, after all, and I'm not going to buy a new computer to run your program.
I neglected to mention how the garbage collector will only clean up when it feels like it and slow down your program. This makes it unsuitable for time-critical programs like video games.
The same excuse was used in 2005 with a different previous year. And if Java is so great it should be good for tiny programs, too.
Just like C++ compilers do the micro-optimisation for me.
Stability is preferable.
You didn't address the Java applets that broke.
In other words, Java moved the compatibility problem into the JVM, which I don't think was a good idea.
The older C++ libraries are always shipped with the program so everything just works without a problem. No recompilation needed.
I started with QBasic, then went to Visual Basic, C, VB.NET, Java, C++, C#, and JavaScript. Once I learned the basics, they were easy to work with, except for Java which has consistently been a pain.
Strings are such a fundamental data type that they should work like one. Other languages have understood this.
You're right, I have never written a huge application in C++. I have, however, used both of them, and Java has always been a pain to work with.
I find Java to be a bad language because:
You said you were developing a flight simulator. I'm programming a game myself as well in C++ using SDL, which already makes it more cross-platform than if I had programmed it in Java. It can be run all the way back on Windows 95 to Windows 7, many Mac OS versions, Linux, and even on more obscure operating systems like BeOS and its open source effort Haiku.
C++ is standardised, which is what makes all of this possible. As for your specific complaints, they're getting addressed in C++11. I will admit that it's a bit late, but it's getting there nonetheless.
That made me burst out a laugh. Thanks.
C++, outdated? What are you smoking, son? Ah, I see you've drank the Java kool-aid. Moving on.
Who's Torvolds?
"Haiku OS" is a misnomer. The correct name is just "Haiku".
The website of your operating system doesn't introduce it at all. All it has are a series of nearly identical videos with tons of download links. How are we supposed to know what it can do, how to install it, etc.?
Linux, while it started out as a desktop kernel, is these days more of a server kernel. This makes it unsuitable for a desktop operating system as it has different priorities when it comes to scheduling. The Haiku kernel was designed for the desktop and makes UI responsiveness a priority with lots of threading.
Linux distributions are collections of programs that don't work well together. In contrast, Haiku integrates everything nicely with each other and there is one way to do each thing so there's no segregation. Not only is this more pleasant for developers, but it makes for a better, unified desktop.
Tomatoes are fruit.
An anti-virus program is a bad idea, especially today when they fail to catch up to the present day when it comes to virus definitions. A much better idea is to create a whitelist of programs and allow nothing else to run.
Also, it's "eBay".
In contrast, with The Legend of Zelda it feels like the same game instead of a new one. There's a difference between a regular series of games and a series of rehashes. Of course games in a series are going to resemble each other yet still feel like new experiences.
You don't think playing the same game over and over in a new coat of paint gets tiresome?
With The Legend of Zelda, polishing it means making it soulless. Twilight Princess showed that pretty well. It's so by-the-numbers that it feels artificial.
This is a joke, right? The Legend of Zelda series is a shining example of a series that has devolved into formulaic, unoriginal sequels with a gimmick thrown in in a weak attempt to keep things fresh. The only thing that seems to change at all is how each game is more patronising than the former.
The Wind Waker (and arguably its sequel, Phantom Hourglass) was the last game where they really tried, but the fans threw a tantrum when they saw the cel-shaded graphics. Even a good friend of mine who is otherwise quite intelligent won't touch the game with even a pole. But he will claim to know the game based on watching 3 hours of movie footage of it through YouTube. It's ridiculous.
Except he didn't rape anyone.
Except that officially he hasn't been charged with anything! The Swedish police just wants to ask him some questions, and apparently that can't be done over the phone or by visiting Assange personally.
But it is! It's not the kind of DRM that the MAFIAA is pushing, but it's still DRM. File ownership and permissions are digital rights.
This is why I'm in favour of permissions for applications instead of users.
Which I don't think is appropriately solved by DRM aimed at users like Unix does.
Because Linux is a crappy desktop OS and BeOS/Haiku offers a better experience.
Since when do we have to worry about JavaScript buffer overflows, anyway? Modern web browsers are pretty good at containing JavaScript and they are updated quickly should an issue arise. Just keep your web browser updated. There are tools like NoScript should you be paranoid.
I wouldn't know, so here are the prices:
3DS â170 3DS XL â200 PlayStation Vita (wifi): â250 PlayStation Vita (wifi+3G) â300The technologies aren't a hack. Web applications are a hack.
Most web frameworks actually make your work harder and are a great way to obfuscate your code. I just use web standards directly and it's not too bad.
Unfortunately, they did. Before that, websites couldn't send data back to the server at whim and get back results without refreshing the page. It opened the door for huge messes of JavaScript we call "web applications".
Which was exactly the same as the W3C's box model. You may be confusing IE6 with IE5.
Your post is a clear indicator that you "can't grok" grammar and spelling.
I suggest you read up on what his Foundation actually does to the world. Especially pay attention to who it gives money.