That is port-able, but you still have to write all the tweaks and hacks appropriate for every platform, and invariably you have franken-ifdef's scattered throughout C code. Macro's are one of the primary reason's why C can never be reasonably statically analyzed. If you don't think its relevant, take a look at what modern Java based IDE's can really do with code and your jaw will drop.
The fact is that when I write a java app, I don't NEED to write a single line of platform specific code. Some apps are ham-strung to specific platforms, but the base language is not.
The wording of the summary leaves me to understand that they're suing over the API of the language which is as much as can be assumed as not copyrightable. Maybe the real question would be is how much of the public Java API stack are determined strictly 'API' vs. implementation. Would HashMap be considered an API class even though its a concrete class?
Hmm... have you actually looked for jobs recently? You may be surprised that besides JavaScript (which is a different non-overlapping area entirely) there are probably more jobs available for Java than all the others you've listed combined. Perl is miniscule, PHP has quite a large following, but I wouldn't want to write anything large for it. Ruby is a niche (fad?) that seems to have stabilized, and most VB development has been absorbed by C# after MS killed it in the 6->.net cross over.
Wow, you're gibberish isn't even close to accurate. Maybe you should've used the internet to very quickly debunk your own assumptions before wasting our time with them.
"three returns for repair of defective components, two just out of warranty" Ouch, I feel for you. That's a real shame.
"The operating system is limited and buggy" I've never really experienced bugs (I'm a relatively new PS3 owner through), but limited is by design. It's not a general purpose computer.
"The browser sucks beyond belief. " It sure does --> Horrible, abomination that might as well be removed at how poor it is
"Sony has been horrible to deal with at every step" *shrugs* I can't really say how they'd be better at things. DLNA support in the PS3 is realtively solid for my uses these days, so that makes me happy. They've also released new BluRay features for free instead of charging for them, so they've done that right.
"PS3 hardware now falls well behind budget PC hardware" That was bound to happen by its nature. The fact that PC gaming's level of innovation has cooled somewhat means that this happened a lot later than I would have expected.
I think you're really really angry over not much. Sony TV's still rock for me. They may be a tad expensive, but I never look at my peers and think wow, that TV is mo much better than mine.
"which they have the absolute right to do"
I was under the impression that the broken DMCA (in the US anyways) gives them the right to sue companies and individuals for circumventing their copy protection mechanisms. Since this product clearly facilitates the ability to run pirated PS3 games, I don't see how they don't have a legal leg to stand on. If YOU don't like it, then get the DMCA repealed or at least stripped back. You live in a democracy, live with it.
"Threatening end users who make modifications to the console that they PURCHASED is as ridiculous as Ford suing me for buying one of their cars then changing the rims so I can put a different size of tire on them..."
Your argument here is completely inconsequential. The fact of changing the rims has basically no functional impact on the operation of the vehicle. Lets take a new scenario: a computer mod being sold by "HotttCarz" Inc. increases the speed of Mustangs by 10%. All the Mustang speed lovers get out and install it. All of a sudden, Ford gets a raft of inexplicable Mustang accident reports finding that the engines are catching fire at high speeds. Tracking down the problem to this mod, would you say that Ford has the right to sue HotttCarz for making the modification, or even customers who foolishly installed (and refuse to uninstall it) the piece of software given that they could still hypothetically be liable for it in a court case? Yes this is not the same as piracy, but where exactly do you draw a moral line between what is acceptable, and which isn't?
There are maybe 3 major versions of Java still in somewhat standard use: 1.4, 1.5, and 1.6. Unless the application in question has some very specific quirks, users should always be able to use the latest and greatest version of 1.6 to run them. The allowance for using older versions of the platform is a feature, not a hindrance.
It means that if I want to use "BadSoftwareCompany"'s piece of java software, I'm not confined with downloading and breaking my host's latest version of the java if their code only works with 1.4 or 1.5. If I didn't have the feature, I just couldn't use the software without a huge head-ache. To assume that every version of every software will work forever is delusional, but at least there are facilities to support the older tech.
Um, outside of academia, this has always and will continue to always be a problem. There will always be firewalls blocking corporate users from doing stupid things, and ISP's blocking exploitable ports, and QOS based restrictions for arbitrary nastiness. That is not something anyone can magically wipe away over night. I can't blame people writing protocols in the 70's and 80's for the open nature of what was probably a completely open internet. That internet doesn't exist anymore, will never exist again. To hope or assume otherwise just invites failure.
You can either be an optimist and hope the problem goes away (it won't), or you can be a pragmatist and use the best tools possible to get the job done.
Java web start allows a developer to specify an exact version of the JVM to run. If that JVM doesn't exist, it could be downloaded from Oracle through the web start installation process. I'm not sure if you can specify flaw enabled versions of the JVM anymore, but at least there are dialogs and choices to make before the JVM gets installed anyways, so a naked web site can't just inject a bad JVM into your system based on an exploit web start file. The same goes for applets these days, as applets and web start start merging into some sort of common entity.
That said, there are a lot of 3rd party vendors that have installed JVM's over things, and set environment variables that break other things over the years (Oracle DB client I'm looking at you!) that can cause all sorts of compatibility problems.
Sorry, before someone else jumps down my throat about how BGP would blow up due to increased routing fragmentation, I mean that BGP routed traffic remains on/24 increments but that ISP's who are internally routing amongst data centers / etc.. internally segment on the smaller increments for their own hosted IP's blocks so that subscribers using ISP/provider blocks aren't being wasted carelessly.
Um, assuming my numbers are correct (which was subjective given the size of the company), we're talking about an allocation of 0.000244140625 of the assigned block. You're telling me that even with a portion of that ratio being recycled we can't squeeze out several years worth of IP assignments?
Additionally, another solution would be to start issuing/25, or/26's instead of 24's because I know of plenty of companies that use them have only used maybe 3-4 of them for various things with the rest of them left unused.
The more likely scenario being that consumer end-points (vs. commercial end points) will be moved over to v6 first and they just won't be given an v4 route any longer. If a consumer types into a v4 address, they'll be translated (through DNS, or nat) to an appropriate v6 address end-point if one exists.
Yes, and the reason why NAT routers have to do that is because of broken protocols that depend of the incorrect assumption that two hosts have unlimited unfettered universally synchronous connections to one another. They don't, and any modern protocol designer should be writing protocols that understand this principle. Even without NAT, you still have inbound connection blocking from firewalls, so there should be no good reason why someone should run into firewall/NAT issues beyond simply ignorance.
Professionals want PC's that work just as much as the rest of the world. Without some semblance of market share, you can't get hardware manufacturers to look at you (BSD,*NIX), so you're stuck between a rock and a hard place. In order to get good hardware support, you need market penetration. In order to get market penetration, you need to make the OS attractive outside of your core community. In order to make is appealing to outside audiences, you loose the professional focus of the OS.
Getting Linux in a position to satisfy all three criteria in a relatively seamless way will be a tight walk that may just take another 10 years to get right, but as long as you keep at it, things should always get better.
Youch, that's one expensive PC. I would spec that out for maybe $800 today... in fact I did for a friend of mine the other week (san monitor). Oh, and that included Windows which was something like $130. Mind you, if anyone was going to drop 2500 bucks on a PC, it'd be a PC gamer OR whomever buys Mac's.
One, MySQL's get a horribly primitive stored procedure system. I was trying to re-implement some SP's from our company's Oracle system, and there are just things that aren't supported through My at all. Was it return values? I forget, but I realized early on that it was a lot easier to just use Oracle Express so that I could leverage the know how and breadth of a fully fleshed out language than to use a half-baked SP solution with -specific- use cases. Of course this has little to do with 'business user' use of databases.
Frankly, Access is taught in high schools so that once you go to mega-corp XYZ and start working as an accountant, or finance, or whatever, you are either expected to know enough about the products to muddle your way through getting work done on them. If you wanted to perform the same types of activities with MySQL/PostgreSQL, the minimum you're going to have to do is spend a lot of time and energy training all relevant employees to do the same things that are part of the north American business environment right now. Maybe someone will invent a drop-dead simple way of getting these technologies to seamlessly work so that the learning curve is reduced, or maybe an act of anti-monopolistic zeal will make academia drop the MS suite from the high school curriculum.
Trust me, its all hot air. My Nexus one will most likely be blessed with bleeding edge OS support for at least another 2 years. Most mainstream (DroidX,Droid2,EVO,GalaxyS,etc) phones will probably get 1.5 years at least before the carrier/handset maker gets bored and drops support for them. Some of the really low end Android phones will likely not receive much love from either the carriers or from developers (especially if the handset has something strange, like not having a touch screen). These phones are more along the lines of Symbian / dumb phones from the past. I wouldn't recommend these phones if you really want care to run a ton of apps because the less popular a device is, the less love it gets from developers.
If you don't want to end up on the un-loved portion of the hardware bucket, don't buy a crappy phone. I don't think many developers would be stupid enough to abandon a market with a ton of handsets.
Sure, and unless you're making a game that requires a certain minimum benchmark, or if you're trying to do VERY specific measurements using the built-in sensors, who does this affect the developer at all? The API is there, and it pretty much covers all you need in order to insulate against the hardware / OS tweaks. If you decide that you want native blobs instead of Java/Dalvik, then you're into a brand new world of fragmentation, that's why you should be very careful about deciding to make the jump into native development (which I would never recommend unless absolutely necessary).
Diversity is a problem because Apple isn't diverse, and there are a ton of Apple zealots that latch onto anything to attack Android, their philosophical anti-christ. I'd like to say there's more to it, but I'm not seeing it. I'm a small time Android developer and I don't get complaints about my apps running on multiple devices. *shrugs*
Wow, BSD died because it refused to innovate, and Linux quite frankly kicked its ass. I'm sure one of the 3 remaining BSD lovers on the site will disagree and list 100 points of why Linux today is inferior to abcBSD of yesteryear, but frankly it doesn't matter. Linux got the mind-share and BSD got the boot.
Speaking of 'fragmentation' ( I'm beginning to hate this frigging word more and more ) between BSD which had what, 4 major forks roughly working on their own, Linux has continually has dozens of forks and derivatives for any specific niche you want to fill.
Linux is in need of a better steering when it comes to consistency, and I really wish there was a neutral advocacy board to help guide 'Linux: The entire experience' into a more unified package when it needs to be, but that's another dream.
The API's for accessing the touch screens, multitouch, and everything else you mentioned are all built in. There's no magic hand-waving for the N devices that you're developing for. The biggest hurdle for a developer is really supporting a variety of different screen form factors, and a well planned application can handle that well with planning and foresight. You may have to say 'if X' then do an extra step when a notable feature is absent, but you'll find that by far the majority of the handsets support a core set of features that any sane and plain developer can work with. If you really want to obsess over the exact look and function of every single handset on the market, then you have the freedom to do so, but I wouldn't recommend it. You could test your iPhone app with every possible bumper and slider on the market to make sure that the interface isn't perfectly crisp and exactly as I intended it to be, but I wouldn't recommend that either. Really, if you have such a big problem with android and the platform just filter away android stories from slashdot and be done with it.
Fine, I'll feed the troll. What features do you allude to be absent in Android phones that aren't crippled by every other OS platform on the market?
The only two cases where manufacturers / carriers limited consumer access is: 1. AT&T denies access to third party market solutions & direct download-installs. In order to load non-market apps into their phones, you need to do so through the SDK (but it is possible if you really wanted to)
- If you're a fan of Maemo, they allow apps to be installed from pretty much anywhere 2. Sprint and I think other US carriers are blocking the free instant Wifi tethering and instead charging consumers for the access to the device
- Which other stock OS on any US carrier supports free non-restricted tethering?
That is port-able, but you still have to write all the tweaks and hacks appropriate for every platform, and invariably you have franken-ifdef's scattered throughout C code. Macro's are one of the primary reason's why C can never be reasonably statically analyzed. If you don't think its relevant, take a look at what modern Java based IDE's can really do with code and your jaw will drop.
The fact is that when I write a java app, I don't NEED to write a single line of platform specific code. Some apps are ham-strung to specific platforms, but the base language is not.
The wording of the summary leaves me to understand that they're suing over the API of the language which is as much as can be assumed as not copyrightable. Maybe the real question would be is how much of the public Java API stack are determined strictly 'API' vs. implementation. Would HashMap be considered an API class even though its a concrete class?
Hmm... have you actually looked for jobs recently? You may be surprised that besides JavaScript (which is a different non-overlapping area entirely) there are probably more jobs available for Java than all the others you've listed combined. Perl is miniscule, PHP has quite a large following, but I wouldn't want to write anything large for it. Ruby is a niche (fad?) that seems to have stabilized, and most VB development has been absorbed by C# after MS killed it in the 6->.net cross over.
Wow, you're gibberish isn't even close to accurate. Maybe you should've used the internet to very quickly debunk your own assumptions before wasting our time with them.
"three returns for repair of defective components, two just out of warranty"
Ouch, I feel for you. That's a real shame.
"The operating system is limited and buggy"
I've never really experienced bugs (I'm a relatively new PS3 owner through), but limited is by design. It's not a general purpose computer.
"The browser sucks beyond belief. "
It sure does --> Horrible, abomination that might as well be removed at how poor it is
"Sony has been horrible to deal with at every step"
*shrugs* I can't really say how they'd be better at things. DLNA support in the PS3 is realtively solid for my uses these days, so that makes me happy. They've also released new BluRay features for free instead of charging for them, so they've done that right.
"PS3 hardware now falls well behind budget PC hardware"
That was bound to happen by its nature. The fact that PC gaming's level of innovation has cooled somewhat means that this happened a lot later than I would have expected.
*shrugs*
I think you're really really angry over not much. Sony TV's still rock for me. They may be a tad expensive, but I never look at my peers and think wow, that TV is mo much better than mine.
"which they have the absolute right to do"
I was under the impression that the broken DMCA (in the US anyways) gives them the right to sue companies and individuals for circumventing their copy protection mechanisms. Since this product clearly facilitates the ability to run pirated PS3 games, I don't see how they don't have a legal leg to stand on. If YOU don't like it, then get the DMCA repealed or at least stripped back. You live in a democracy, live with it.
"Threatening end users who make modifications to the console that they PURCHASED is as ridiculous as Ford suing me for buying one of their cars then changing the rims so I can put a different size of tire on them..."
Your argument here is completely inconsequential. The fact of changing the rims has basically no functional impact on the operation of the vehicle. Lets take a new scenario: a computer mod being sold by "HotttCarz" Inc. increases the speed of Mustangs by 10%. All the Mustang speed lovers get out and install it. All of a sudden, Ford gets a raft of inexplicable Mustang accident reports finding that the engines are catching fire at high speeds. Tracking down the problem to this mod, would you say that Ford has the right to sue HotttCarz for making the modification, or even customers who foolishly installed (and refuse to uninstall it) the piece of software given that they could still hypothetically be liable for it in a court case? Yes this is not the same as piracy, but where exactly do you draw a moral line between what is acceptable, and which isn't?
There are maybe 3 major versions of Java still in somewhat standard use: 1.4, 1.5, and 1.6. Unless the application in question has some very specific quirks, users should always be able to use the latest and greatest version of 1.6 to run them. The allowance for using older versions of the platform is a feature, not a hindrance.
It means that if I want to use "BadSoftwareCompany"'s piece of java software, I'm not confined with downloading and breaking my host's latest version of the java if their code only works with 1.4 or 1.5. If I didn't have the feature, I just couldn't use the software without a huge head-ache. To assume that every version of every software will work forever is delusional, but at least there are facilities to support the older tech.
Um, outside of academia, this has always and will continue to always be a problem. There will always be firewalls blocking corporate users from doing stupid things, and ISP's blocking exploitable ports, and QOS based restrictions for arbitrary nastiness. That is not something anyone can magically wipe away over night. I can't blame people writing protocols in the 70's and 80's for the open nature of what was probably a completely open internet. That internet doesn't exist anymore, will never exist again. To hope or assume otherwise just invites failure.
You can either be an optimist and hope the problem goes away (it won't), or you can be a pragmatist and use the best tools possible to get the job done.
Java web start allows a developer to specify an exact version of the JVM to run. If that JVM doesn't exist, it could be downloaded from Oracle through the web start installation process. I'm not sure if you can specify flaw enabled versions of the JVM anymore, but at least there are dialogs and choices to make before the JVM gets installed anyways, so a naked web site can't just inject a bad JVM into your system based on an exploit web start file. The same goes for applets these days, as applets and web start start merging into some sort of common entity.
That said, there are a lot of 3rd party vendors that have installed JVM's over things, and set environment variables that break other things over the years (Oracle DB client I'm looking at you!) that can cause all sorts of compatibility problems.
Sorry, before someone else jumps down my throat about how BGP would blow up due to increased routing fragmentation, I mean that BGP routed traffic remains on /24 increments but that ISP's who are internally routing amongst data centers / etc.. internally segment on the smaller increments for their own hosted IP's blocks so that subscribers using ISP/provider blocks aren't being wasted carelessly.
Um, assuming my numbers are correct (which was subjective given the size of the company), we're talking about an allocation of 0.000244140625 of the assigned block. You're telling me that even with a portion of that ratio being recycled we can't squeeze out several years worth of IP assignments?
Additionally, another solution would be to start issuing /25, or /26's instead of 24's because I know of plenty of companies that use them have only used maybe 3-4 of them for various things with the rest of them left unused.
The more likely scenario being that consumer end-points (vs. commercial end points) will be moved over to v6 first and they just won't be given an v4 route any longer. If a consumer types into a v4 address, they'll be translated (through DNS, or nat) to an appropriate v6 address end-point if one exists.
Consumer
V4 (private)
V6 (public)
ISP
V4 (consumer private->NAT)
V4 (NAT concentrator)
V6 (bridge)
Provider
V4 (end point)
V6 (end point)
So a V4 request would be Consumer->ISPv4(private)-NAT->ISPv4(public)->Provider while V6 would be Consumer->ISPv6->Provider
Yes, and the reason why NAT routers have to do that is because of broken protocols that depend of the incorrect assumption that two hosts have unlimited unfettered universally synchronous connections to one another. They don't, and any modern protocol designer should be writing protocols that understand this principle. Even without NAT, you still have inbound connection blocking from firewalls, so there should be no good reason why someone should run into firewall/NAT issues beyond simply ignorance.
I worked for a company that had a /8 and may have been using at most /20 worth of them....
Professionals want PC's that work just as much as the rest of the world. Without some semblance of market share, you can't get hardware manufacturers to look at you (BSD,*NIX), so you're stuck between a rock and a hard place. In order to get good hardware support, you need market penetration. In order to get market penetration, you need to make the OS attractive outside of your core community. In order to make is appealing to outside audiences, you loose the professional focus of the OS.
Getting Linux in a position to satisfy all three criteria in a relatively seamless way will be a tight walk that may just take another 10 years to get right, but as long as you keep at it, things should always get better.
Youch, that's one expensive PC. I would spec that out for maybe $800 today... in fact I did for a friend of mine the other week (san monitor). Oh, and that included Windows which was something like $130. Mind you, if anyone was going to drop 2500 bucks on a PC, it'd be a PC gamer OR whomever buys Mac's.
One, MySQL's get a horribly primitive stored procedure system. I was trying to re-implement some SP's from our company's Oracle system, and there are just things that aren't supported through My at all. Was it return values? I forget, but I realized early on that it was a lot easier to just use Oracle Express so that I could leverage the know how and breadth of a fully fleshed out language than to use a half-baked SP solution with -specific- use cases. Of course this has little to do with 'business user' use of databases.
Frankly, Access is taught in high schools so that once you go to mega-corp XYZ and start working as an accountant, or finance, or whatever, you are either expected to know enough about the products to muddle your way through getting work done on them. If you wanted to perform the same types of activities with MySQL/PostgreSQL, the minimum you're going to have to do is spend a lot of time and energy training all relevant employees to do the same things that are part of the north American business environment right now. Maybe someone will invent a drop-dead simple way of getting these technologies to seamlessly work so that the learning curve is reduced, or maybe an act of anti-monopolistic zeal will make academia drop the MS suite from the high school curriculum.
Trust me, its all hot air. My Nexus one will most likely be blessed with bleeding edge OS support for at least another 2 years. Most mainstream (DroidX,Droid2,EVO,GalaxyS,etc) phones will probably get 1.5 years at least before the carrier/handset maker gets bored and drops support for them. Some of the really low end Android phones will likely not receive much love from either the carriers or from developers (especially if the handset has something strange, like not having a touch screen). These phones are more along the lines of Symbian / dumb phones from the past. I wouldn't recommend these phones if you really want care to run a ton of apps because the less popular a device is, the less love it gets from developers.
If you don't want to end up on the un-loved portion of the hardware bucket, don't buy a crappy phone. I don't think many developers would be stupid enough to abandon a market with a ton of handsets.
Shh, you're just going to piss off the trolls!
Sure, and unless you're making a game that requires a certain minimum benchmark, or if you're trying to do VERY specific measurements using the built-in sensors, who does this affect the developer at all? The API is there, and it pretty much covers all you need in order to insulate against the hardware / OS tweaks. If you decide that you want native blobs instead of Java/Dalvik, then you're into a brand new world of fragmentation, that's why you should be very careful about deciding to make the jump into native development (which I would never recommend unless absolutely necessary).
Diversity is a problem because Apple isn't diverse, and there are a ton of Apple zealots that latch onto anything to attack Android, their philosophical anti-christ. I'd like to say there's more to it, but I'm not seeing it. I'm a small time Android developer and I don't get complaints about my apps running on multiple devices. *shrugs*
Wow, BSD died because it refused to innovate, and Linux quite frankly kicked its ass. I'm sure one of the 3 remaining BSD lovers on the site will disagree and list 100 points of why Linux today is inferior to abcBSD of yesteryear, but frankly it doesn't matter. Linux got the mind-share and BSD got the boot.
Speaking of 'fragmentation' ( I'm beginning to hate this frigging word more and more ) between BSD which had what, 4 major forks roughly working on their own, Linux has continually has dozens of forks and derivatives for any specific niche you want to fill.
Linux is in need of a better steering when it comes to consistency, and I really wish there was a neutral advocacy board to help guide 'Linux: The entire experience' into a more unified package when it needs to be, but that's another dream.
Um, where to start...
The API's for accessing the touch screens, multitouch, and everything else you mentioned are all built in. There's no magic hand-waving for the N devices that you're developing for. The biggest hurdle for a developer is really supporting a variety of different screen form factors, and a well planned application can handle that well with planning and foresight. You may have to say 'if X' then do an extra step when a notable feature is absent, but you'll find that by far the majority of the handsets support a core set of features that any sane and plain developer can work with. If you really want to obsess over the exact look and function of every single handset on the market, then you have the freedom to do so, but I wouldn't recommend it. You could test your iPhone app with every possible bumper and slider on the market to make sure that the interface isn't perfectly crisp and exactly as I intended it to be, but I wouldn't recommend that either. Really, if you have such a big problem with android and the platform just filter away android stories from slashdot and be done with it.
Fine, I'll feed the troll. What features do you allude to be absent in Android phones that aren't crippled by every other OS platform on the market?
The only two cases where manufacturers / carriers limited consumer access is:
1. AT&T denies access to third party market solutions & direct download-installs. In order to load non-market apps into their phones, you need to do so through the SDK (but it is possible if you really wanted to)
- If you're a fan of Maemo, they allow apps to be installed from pretty much anywhere
2. Sprint and I think other US carriers are blocking the free instant Wifi tethering and instead charging consumers for the access to the device
- Which other stock OS on any US carrier supports free non-restricted tethering?
"I thought that attitude died along with PC gaming and Windows Vista."
No, it died when hardware became good enough for nice performing games, and the cost of producing said games sky-rocketed.