Chicken and egg. If it weren't for Mono pretending to make.NET cross-platform, those employers might not force you to use C#.
Of course, most of the employers that'd force you to use C# have drunk the 'microsoft-only' kool-aid to the point that Mono won't help you anyway. You're bound to need some other Windows-only component to do your work. And I guess that's my point. Mono does not make.NET cross-platform in any meaningful way if your employer is truly committed to.NET There's too much Windows-only stuff in there and designed to be the path of least resistance. Kind of like 'extend and emrbace' instead of 'embrace and extend' - has the same effect.
I know Linux wants to be POSIX compliant, but I don't see any harm in changing nice like so:
1. Store the original nice value of a process in the kernel's process table. 2. Allow priority to be lowered by anybody. 3. Allow priority to be raised by anybody as long as it does not surpass the original nice level. 4. Require superuser to go beyond the original nice level (and reset the saved value if they do).
That would be no more dangerous than the current system, but would allow apps to lower their priority temporarily when they go off to perform 'batch-like' processes, restoring it when they return to interactive mode.
For 'MS Java', Microsoft gladly took Sun's code and proceeded to use it to build an incompatible version with a vast market share behind it. Essentially it was an attempt to use Java to break cross-platform Java - all the while secretly cloning it so that they could eventually use their market share to promote something else that isn't cross-platform at all. They paid a big fine, chalked it up to cost of doing business, and got all the benefits of Sun's R&D in the process.
Google built something different. They didn't use Sun code, and they didn't pretend to be implementing the Java standard. They just used the Java language (and libraries) because there's a large pool of developers out there that know them. Kind of like how Linux 'looks like' unix without being unix. Whether you think that's evil or not, it's not what Microsoft did. MS was being evil, underhanded, and all the rest.
And in the meantime, MS had managed to erode the potential monetary value of desktop Java to the point that Sun had nothing to lose in GPL'ing it, leaving Oracle with some strands of a case, but nothing much (I hope) to really stand on.
I get that, but I'm not sure why the patent office allows it. It's anti-competitive, and double-charging. Sure, if they can get away with it, they will.
In the case of exchange, I'm licensing both pieces of software. Who's to say which piece implements the patent? At some point interoperability demands that wire protocols be implementable, and as long as I'm a paid-up exchange user, I shouldn't have to pay again to implement it.
And in the case of codecs, the value of the patented idea ought to be the quality of the files it produces. And the producer of those files paid a license for the software that produced them. Making me buy a license to consume them is anti-competitive. Especially if the producer and consumer implementations are from the same company.
What'll you bet that Microsoft rushes out a new, less hackable version. There aren't so many of these in the field that it wouldn't be worth their while. Or are they just planning on using patent takedowns to make it illegal to work with the data stream produced by a Kinect box?
Which brings up an interesting (to me, at least) topic. Once you buy a product that legally implements a patent, aren't you implicitly granted a license to use that patent? To me, if you have, for example, a license to have an exchange-based email account, you've got implicit license on all patents governing access to that account (or at least access to features covered by the account license). Otherwise, what value does the account license have? Likewise, having bought a PC with a (paid for) Windows license covering codec patents, etc, why do I not have an implicit patent license to access those codecs (at least on the machine for which I bought the license). Come to think of it, in the case of the 'decode' side of a codec, why doesn't the encoder's patent license enable me to decode the stream with the software of my choosing? In each case, somebody's paid to use these patents. It sure feels like in all these 'creator vs viewer' situations, we're getting double-charged on patent rights, no?
So how do you explain, say, the lack of Linux support for all those iPod owning Linux geeks. A winelib version would do. Or at least not bricking an iPod after loading music from a non iTunes app.
Either you're cross-platform or you're not and, BSD aside, Apple seems to be Mac and Windows only shop these days. I can only speculate why, and I did cop to paranoia. I just wish I knew I was wrong.
Apple and various others these days seem to be teaming up with Microsoft to attack their common 'threats'. So you see Facebook and MS going after Google, Oracle going after Android (to the benefit of Apple, and incidently MS), Apple ditching Flash (to the benefit of MS and Silverlight). And now Apple ditching Java. Who benefits from that? Well, anybody that's threatened by truly cross-platform stuff.
Here's where my paranoia kicks in. I think Apple only hates cross-platform stuff when one of those platforms is Linux. For all the talk about Microsoft being afraid of Linux, Apple actually has more to fear. Microsoft's various lock-ins are pretty secure, but Apple doesn't really have any lock-in beyond customer loyalty. If you're not locked in to Windows, then you're more or less equally able to use OS/X or Linux. That's why Linux's market share is pretty much comparable to Apple's. What's good for Linux is ultimately good for Apple, in that it helps break down Windows lock-in. But Jobs may be either short-sighted or cocky enough to ignore that. He's learned to 'succeed' in Microsoft's shadow, and maybe he's grown comfortable there.
Meanwhile, Apple has deals with Microsoft to produce versions of most of MS's stuff for the Mac, including Office and.NET. And.NET and Silverlight is where MS wants to go for its next generation of lock-in. Apple, in ditching Java and Flash, is making Silverlight seem more cross-platform than either of the others, since Linux success aside, Windows and Mac are the 'only' desktop OS's the general public is aware of (it was lots of fun seeing KDE as the standard desktop in 'The Social Network', though). So is Apple doing Microsoft's bidding, or are they just fighting for their survival. No matter, whichever way, Microsoft comes out the winner. Oracle had better pay attention to this stuff and produce a first-class OS/X Java port themselves (and lay off of Android while they're at it). Otherwise, they're unwittingly helping a little software company with its own sights on Oracle's core database business...
With the unlocked Nexus One, T-Mobile didn't exactly offer a discount. But they allowed you to take the 500 minute package (not available for smartphones they offer). Saves you $20/month if you don't need more minutes. And, you get unlimited internet with tethering.
Maybe Google was pressured to droppthe Nexus One by T-Moble after theye decided they didn't like offering this deal. If Google just stopped offering the phone, T-Mobile doesn't get blamed for backtracking. Too bad. I think Google was really trying to open things up a bit.
So is it Google's fault, or did consumers just not get it. A noble experiment, and way too short-lived to know the real results.
I think KDE4 and Gnome have ruined Linux on the desktop for a very long time.
While I agree that the Linux desktop divide is a real issue, you've got to remember that KDE4 and Gnome have never even been seen by most mainstream users. In fact, it's only over the last few years that Linux desktops have become 100% ready for the mainstream (i.e. provide a comparable, better in some ways, newbie experience than Windows). Of course, the lack of popular software titles is still a chicken and egg problem that may never be resolved. But don't confuse the internal squabbles of longtime Linux enthusiasts with the real roadblocks. Inertia being the biggest.
Businesses willing to go with OpenOffice could switch to Linux at any time. That wasn't quite true a few years ago. But now Google's doing it. IBM is kinda doing it (though their dogfooding of Lotus isn't an approach likely to catch on). Munich's finally got their act together.
And the reason kids can take Macs to college is exactly the reason Linux can work for most people. Nobody uses desktop apps any more. Sure, they use iTunes and probably MSOffice. Maybe a game or two. Nobody's forced to use IE any more except inside lazy corporations with old IE-specific apps. Linux will be ready for the desktop as soon as the genericification of the desktop is complete. Google's Chrome is gonna help drive that point home for corps for whom Google's size legitimizes the concept. It may be too soon, but it's where things are heading. You won't have to use the cloud for everything, but corporations will use internal clouds for as much as they can.
Re:History Repeating Itself
on
The Case For Oracle
·
· Score: 3, Informative
I think when Microsoft implemented J++, Java wasn't free software, and MS was in violation of a licensing agreement they had made with Sun to use Sun's code. Whether that makes a difference legally in this case, I can't say. But the situation seems different to me.
You may as well patent dress designs or hairstyles or recipes. There is nothing new here technologically. It is simply a matter of putting together existing stuff to generate a very specific effect. The only thing even potentially (if questionably) new is the effect itself. Why on earth would the patent system even come into play?
I would imagine that the biggest performance hit for C++ vs C is just the fact that most objects make extensive use of memory allocations. C++ makes this 'safer' than in C, and so most C++ users use it. In C, I tend to avoid memory allocation. You end up defining arrays sized to some reasonable maximum, but there's no performance penalty for that. Occasionally, this does cause problems when that maximum was underestimated, but most of the time it's pretty effective.
Where I work, we have a transaction processing system that was developed in C. Most of the library code is in C, and multiple attempts to build applications in C++ have resulted in something much more complex and less supportable than the 'standard' C apps. I don't know if this is due to unskilled C++ programmers, or if maybe the particular environment, being highly optimized for C coding, just doesn't gain many of the advantages C++ could provide had the platform been object oriented in the first place.
For example, our standard apps maintain state persistence by simply writing out one or more C structures to a temp file on disk. These files are simply read back in on the next transaction, requiring no code and no serious overhead (the data's usually in cache anyway). It sounds crude, but it's amazingly effective. C++ coders could continue to do this, of course, but they've assumed they needed to use objects for this purpose, leading to complex schemes for streaming those objects out to disk for persistence.
Then you get the programmers that attempt to build a pseudo MVC view around a platform that was designed to be a back-end system with a smart terminal front end. In this platform, all the code is on the back end, and the 'view' and the 'controller' are pretty much intertwined. But they persist and build these arbitrary separations which have to then communicate back and forth and each have to persist their own states. After the fact, they've all agreed that what they've built is harder to support than the C stuff they were building before..Again, maybe this is bad coding or a misunderstanding of the OOP model, but it does point out a problem with C++. Unless you're just building code around an existing, well defined C++ framework, you're not likely to implement a great object model on the first (or fifth) try.
When Microsoft bought the spyglass browser and turned it into IE, they agreed to pay spyglass a percentage of the sale price. Ultimately, they made the sale price $.00, wiping out spyglass's revenue stream in a classic MS double-cross.
I don't know why Spyglass never sued. IE was made a part of Windows, which was definitely not free. Sure, they made IE available as a free download, but they also included it on every Windows CD. Maybe there was a quiet suit and settlement?
Actually urpmi (mandriva's apt-get like thing) is pretty good. And yes, Mandriva is more user-friendly and handles hardware better than Ubuntu.
But if you're dead set against RPM for some reason, you can use PCLinuxOS, which is Mandriva hopped up with all the non-free stuff the everybody downloads anyway. Plus it uses APT and synaptic. Their latest KDE4.4 spin just came out recently.
One thing about the Ubuntu/Canonical throwing money angle, though. Apparently Canonical's business model doesn't count on selling copies of Ubuntu. Because of that, they seem to be fine with people writing easy scripts for pulling down all the non-free codecs, etc. Mandriva has continued to push a 'powerpack' version in addition to their free and live CD versions. The 'advantage' of powerpack was that it comes with licensed codecs. It's still pretty easy to add the repositories for this stuff, but you have to know where to look to find the info. I guess for some people that translates into Mandriva not being free beer.
Oh, and then there's the GPL vs LGPL thing about KDE that's no longer an issue, but which was part of Ubuntu's rise. Of course, that's another 'business model' problem. Trolltech wanted to make money too. Now they've got Nokia as a sugar daddy, so QT and KDE are as free as GNOME. But apparently too late for all of this to help Mandriva.
Okay.,I'll bite.ODF formulas are documented in the form of an open source reference implementation. Word95 - not so much. That might just be an accident of history, but it sure doesn't argue the case for OOXML as a viable standard. That is;if you want more than one implementation.
And from what I hear;,Office2010 isn't ISO OOXML either.
...Breaking the standard means deliberately implementing it incorrectly, and there is no other way to interpret it.
Okay. Come back when Microsoft has correctly implemented the ISO OOXML 'standard'. There is simply no honest way to see Microsoft's manipulation of the standards process as a good faith effort to promote standards.
They submitted OOXML as a rival standard when they feared adoption of ODF. And the standard they submitted is different from the one they've implemented.
They provided an ODF plugin that is deliberately incompatible with other implementations. Yes, I've heard the bull about the incompatibilities being in areas that were poorly defined. But to ignore all existing implementations in favor of something (let's face it) deliberately incompatible is not my idea of implementing a standard.
Microsoft is playing games to stay technically within the demands of their customers while guaranteeing as much as possible that no other software will fully implement the 'standards' that they're promoting. It's pure theater - as are your attempts to defend it.
Oh. And by the way, copyright infringement is theft. The software patent fiasco is another story altogether.
ummm. Rather than use existing standards, OOXML creates a whole new set by simply anointing existing Microsoft technologies as new 'standards'. If you don't think using monopoly power to prevent existing standards from taking hold is equivalent to breaking standards, then you deserve a job in the MS PR department. What is the purpose of standards beyond the goal of multiple implementations? That is definitely not Microsoft's goal, though. So unless you think it's appropriate to redefine what a standard is and is for, don't assume criticism == hatred == stupidity.
No. Netbooks achieved their current capability levels (hardware wise) during the XP phase. Maybe you didn't notice the price jump when Win7 came along, but I did.
Linux netbooks were on a trajectory toward a $250-300 price point. Current netbooks are $350-400. At that point, what's a netbook?
Sure, netbooks are for sale everywhere, but you used to see them featured prominently in circulars and the ever-present J&R ads. No more. You see mostly laptops in the $400-700 range. Maybe that's because those things are more profitable for the retailers (and builders) to sell. But the market was demanding cheap, and while it was available, it was being provided. But Microsoft doesn't like cheap, and have managed to remove it from the marketplace. So, sure - there's a niche for today's netbook. Just not a big one. And what was once a natural niche for Linux has largely dried up. And that's a shame.
The web has traditionally been wide open to experimentation. Until now, all web browsers supported whatever plugin's people wanted to develop, things like Flash were able to emerge. And that's a good thing. You (or Steve Jobs) may not like Flash, but without it, we wouldn't have YouTube and thousands of other video sites.
Sure HTML5 may provide a better way to support video, but it wouldn't have, had Flash-enabled YouTube not convinced the standards body that video over the web was viable. Same goes for Flash-based games, etc. You may hate the implementation, but at least somebody out there was thinking creatively. And the open web/browser enviroment allowed them to implement their ideas cross-platform so they could catch on.
So where are the new web ideas going to come from? If Apple had their way and prevented (let's face it) anything that competes with native iPod/Phone and sanctioned webkit apps from running on their hardware - and that hardware became widespread enough that ignoring it was not an option, there'd be no way to get a great new idea off the ground... or even a lousy one.
Maybe we're far enough along that we have 'all the capabilities anyone could want' in the current web browser, but I kinda doubt it. Plugin's are the only viable way to get truly original stuff implemented. Integrated standards can't become standards until they exist and gain market acceptance.
It worked well enough with SCO. It delayed Linux acceptance enough and for long enough for Win7 to come out. Some would argue (I wouldn't) that the linux desktop window of opportunity is now closed.
It worked (in another form of delaying tactic) to kill the netbook. You don't even see netbooks advertised much these days, and those you do see are more expensive than they used to be (presumably because Win7 starter isn't essentially free like XP was).
If MS can hold back Android long enough for Windows Mobile 2 to come out - that's the most MS can hope for. Worth a few million bucks to them easily. Evil, but it is a workable strategy.
Yes - as much as possible. I don't think API's should never be fixed or improved, but at some point Linux ought to be 'done' enough that driver API's don't need to be changed, and that backward compatibility isn't such a liability that it outweighs the advantages.
C'mon folks. Linux is way past the experimental phase. It's the basis for many of the devices we use and love. If the API's aren't solid enough to freeze (or maintain backward compatibility) at this point, then it ought to be a priority to make them so. Just because dev's can rewrite open source drivers to handle API changes, doesn't mean it's not a lot of effort that would not be necessary if the API's didn't have to change.
Java embodys one radical change, and it's not a feature of the language (which was pretty radical itself at the start). No, the radical feature is that it's GPL'd. This change came a little late in the game, but look what it's produced already.
Take Android. You might say 'just another smartphone platform', but think about how it came about. Google didn't develop it. A startup did. And how was it possible for a startup to build an entire internet-capable touchscreen platform? GPL. Because they had a free OS they could use any way they wanted, and a free virtual machine they could use any way they wanted, they were able to get creative and package it all together as an innovative new platform. Google bought it, added polish and apps, and suddenly it's an iPhone and Android world with Microsoft playing catch up.
Microsoft can't do this. They are committed to their proprietary OS, so they are unable to harness any major creative leaps that come from outside the company. Outsiders can't play with the OS to tweak it to their needs, so they have no way to use Windows as a platform for creativity that doesn't fit into the channels that Microsoft provides them. Plus, they know that any really good ideas they develop on the Microsoft platform will likely be copied by Microsoft and never realize their potential (for them, at least).
But the Android folks could start with minimal overhead and produce something great under the radar.
That's the beauty of the GPL and the Linux (and now Java) models based on it. DVR's, netbooks, cheap wireless routers, smartphones, Kindle and 100 tablets to come. The Microsoft ecosystem is not capable of producing these things. So the next time you rag on Java or OpenGL, X-Windows or even OpenOffice - and rhapsodize about C#,.NET, MSOffice, etc., realize that you're missing the point. These tools may not individually be the absolute best in class, but they are all much more than good enough. And they enable the most creative and dynamic ecosystems in IT today. If you care about that, C# vs Java is a no-brainer. You're gonna want Java.
Miguel seems to be just now grasping this. He had hoped that a free version of.NET would be as good as Java. He liked the technology better (not sure how much better), and thought making it free would bring it to the creative class that's really innovating these days. But Microsoft won't let him. Never meant to, never will. Sorry Miguel - I feel your pain.
I agree, except for the odd choice of an Intel Atom processor. I suppose a settop box doesn't need to be super power-efficient, but isn't ARM where this market's going? My current Motorola DVR/cable box runs so hot, I can't close the door on the cabinet it sits in. Why (other than Intel's marketing clout) is Google opting for X86 here - especially when Android is on ARM everywhere else? Are they leaving the door open to virtualizing Windows on the thing?
Chicken and egg. If it weren't for Mono pretending to make .NET cross-platform, those employers might not force you to use C#.
Of course, most of the employers that'd force you to use C# have drunk the 'microsoft-only' kool-aid to the point that Mono won't help you anyway. You're bound to need some other Windows-only component to do your work. And I guess that's my point. Mono does not make .NET cross-platform in any meaningful way if your employer is truly committed to .NET There's too much Windows-only stuff in there and designed to be the path of least resistance. Kind of like 'extend and emrbace' instead of 'embrace and extend' - has the same effect.
I know Linux wants to be POSIX compliant, but I don't see any harm in changing nice like so:
1. Store the original nice value of a process in the kernel's process table.
2. Allow priority to be lowered by anybody.
3. Allow priority to be raised by anybody as long as it does not surpass the original nice level.
4. Require superuser to go beyond the original nice level (and reset the saved value if they do).
That would be no more dangerous than the current system, but would allow apps to lower their priority temporarily when they go off to perform 'batch-like' processes, restoring it when they return to interactive mode.
For 'MS Java', Microsoft gladly took Sun's code and proceeded to use it to build an incompatible version with a vast market share behind it. Essentially it was an attempt to use Java to break cross-platform Java - all the while secretly cloning it so that they could eventually use their market share to promote something else that isn't cross-platform at all. They paid a big fine, chalked it up to cost of doing business, and got all the benefits of Sun's R&D in the process.
Google built something different. They didn't use Sun code, and they didn't pretend to be implementing the Java standard. They just used the Java language (and libraries) because there's a large pool of developers out there that know them. Kind of like how Linux 'looks like' unix without being unix. Whether you think that's evil or not, it's not what Microsoft did. MS was being evil, underhanded, and all the rest.
And in the meantime, MS had managed to erode the potential monetary value of desktop Java to the point that Sun had nothing to lose in GPL'ing it, leaving Oracle with some strands of a case, but nothing much (I hope) to really stand on.
I get that, but I'm not sure why the patent office allows it. It's anti-competitive, and double-charging. Sure, if they can get away with it, they will.
In the case of exchange, I'm licensing both pieces of software. Who's to say which piece implements the patent? At some point interoperability demands that wire protocols be implementable, and as long as I'm a paid-up exchange user, I shouldn't have to pay again to implement it.
And in the case of codecs, the value of the patented idea ought to be the quality of the files it produces. And the producer of those files paid a license for the software that produced them. Making me buy a license to consume them is anti-competitive. Especially if the producer and consumer implementations are from the same company.
More naive rambling, I know...
What'll you bet that Microsoft rushes out a new, less hackable version. There aren't so many of these in the field that it wouldn't be worth their while. Or are they just planning on using patent takedowns to make it illegal to work with the data stream produced by a Kinect box?
Which brings up an interesting (to me, at least) topic. Once you buy a product that legally implements a patent, aren't you implicitly granted a license to use that patent? To me, if you have, for example, a license to have an exchange-based email account, you've got implicit license on all patents governing access to that account (or at least access to features covered by the account license). Otherwise, what value does the account license have? Likewise, having bought a PC with a (paid for) Windows license covering codec patents, etc, why do I not have an implicit patent license to access those codecs (at least on the machine for which I bought the license). Come to think of it, in the case of the 'decode' side of a codec, why doesn't the encoder's patent license enable me to decode the stream with the software of my choosing? In each case, somebody's paid to use these patents. It sure feels like in all these 'creator vs viewer' situations, we're getting double-charged on patent rights, no?
Am I a spoilsport to point out that any distro version named 2010.* is not so old as to excuse a serious performance problem...
So how do you explain, say, the lack of Linux support for all those iPod owning Linux geeks. A winelib version would do. Or at least not bricking an iPod after loading music from a non iTunes app.
Either you're cross-platform or you're not and, BSD aside, Apple seems to be Mac and Windows only shop these days. I can only speculate why, and I did cop to paranoia. I just wish I knew I was wrong.
Apple and various others these days seem to be teaming up with Microsoft to attack their common 'threats'. So you see Facebook and MS going after Google, Oracle going after Android (to the benefit of Apple, and incidently MS), Apple ditching Flash (to the benefit of MS and Silverlight). And now Apple ditching Java. Who benefits from that? Well, anybody that's threatened by truly cross-platform stuff.
Here's where my paranoia kicks in. I think Apple only hates cross-platform stuff when one of those platforms is Linux. For all the talk about Microsoft being afraid of Linux, Apple actually has more to fear. Microsoft's various lock-ins are pretty secure, but Apple doesn't really have any lock-in beyond customer loyalty. If you're not locked in to Windows, then you're more or less equally able to use OS/X or Linux. That's why Linux's market share is pretty much comparable to Apple's. What's good for Linux is ultimately good for Apple, in that it helps break down Windows lock-in. But Jobs may be either short-sighted or cocky enough to ignore that. He's learned to 'succeed' in Microsoft's shadow, and maybe he's grown comfortable there.
Meanwhile, Apple has deals with Microsoft to produce versions of most of MS's stuff for the Mac, including Office and .NET. And .NET and Silverlight is where MS wants to go for its next generation of lock-in. Apple, in ditching Java and Flash, is making Silverlight seem more cross-platform than either of the others, since Linux success aside, Windows and Mac are the 'only' desktop OS's the general public is aware of (it was lots of fun seeing KDE as the standard desktop in 'The Social Network', though). So is Apple doing Microsoft's bidding, or are they just fighting for their survival. No matter, whichever way, Microsoft comes out the winner. Oracle had better pay attention to this stuff and produce a first-class OS/X Java port themselves (and lay off of Android while they're at it). Otherwise, they're unwittingly helping a little software company with its own sights on Oracle's core database business...
With the unlocked Nexus One, T-Mobile didn't exactly offer a discount. But they allowed you to take the 500 minute package (not available for smartphones they offer). Saves you $20/month if you don't need more minutes. And, you get unlimited internet with tethering.
Maybe Google was pressured to droppthe Nexus One by T-Moble after theye decided they didn't like offering this deal. If Google just stopped offering the phone, T-Mobile doesn't get blamed for backtracking. Too bad. I think Google was really trying to open things up a bit.
So is it Google's fault, or did consumers just not get it. A noble experiment, and way too short-lived to know the real results.
I think KDE4 and Gnome have ruined Linux on the desktop for a very long time.
While I agree that the Linux desktop divide is a real issue, you've got to remember that KDE4 and Gnome have never even been seen by most mainstream users. In fact, it's only over the last few years that Linux desktops have become 100% ready for the mainstream (i.e. provide a comparable, better in some ways, newbie experience than Windows). Of course, the lack of popular software titles is still a chicken and egg problem that may never be resolved. But don't confuse the internal squabbles of longtime Linux enthusiasts with the real roadblocks. Inertia being the biggest.
Businesses willing to go with OpenOffice could switch to Linux at any time. That wasn't quite true a few years ago. But now Google's doing it. IBM is kinda doing it (though their dogfooding of Lotus isn't an approach likely to catch on). Munich's finally got their act together.
And the reason kids can take Macs to college is exactly the reason Linux can work for most people. Nobody uses desktop apps any more. Sure, they use iTunes and probably MSOffice. Maybe a game or two. Nobody's forced to use IE any more except inside lazy corporations with old IE-specific apps. Linux will be ready for the desktop as soon as the genericification of the desktop is complete. Google's Chrome is gonna help drive that point home for corps for whom Google's size legitimizes the concept. It may be too soon, but it's where things are heading. You won't have to use the cloud for everything, but corporations will use internal clouds for as much as they can.
I think when Microsoft implemented J++, Java wasn't free software, and MS was in violation of a licensing agreement they had made with Sun to use Sun's code. Whether that makes a difference legally in this case, I can't say. But the situation seems different to me.
..what's being patented here is a visual effect.
You may as well patent dress designs or hairstyles or recipes. There is nothing new here technologically. It is simply a matter of putting together existing stuff to generate a very specific effect. The only thing even potentially (if questionably) new is the effect itself. Why on earth would the patent system even come into play?
This is strictly done for temporary files to hold state between web-like transactions. I would never use this technique as a 'database'.
I would imagine that the biggest performance hit for C++ vs C is just the fact that most objects make extensive use of memory allocations. C++ makes this 'safer' than in C, and so most C++ users use it. In C, I tend to avoid memory allocation. You end up defining arrays sized to some reasonable maximum, but there's no performance penalty for that. Occasionally, this does cause problems when that maximum was underestimated, but most of the time it's pretty effective.
Where I work, we have a transaction processing system that was developed in C. Most of the library code is in C, and multiple attempts to build applications in C++ have resulted in something much more complex and less supportable than the 'standard' C apps. I don't know if this is due to unskilled C++ programmers, or if maybe the particular environment, being highly optimized for C coding, just doesn't gain many of the advantages C++ could provide had the platform been object oriented in the first place.
For example, our standard apps maintain state persistence by simply writing out one or more C structures to a temp file on disk. These files are simply read back in on the next transaction, requiring no code and no serious overhead (the data's usually in cache anyway). It sounds crude, but it's amazingly effective. C++ coders could continue to do this, of course, but they've assumed they needed to use objects for this purpose, leading to complex schemes for streaming those objects out to disk for persistence.
Then you get the programmers that attempt to build a pseudo MVC view around a platform that was designed to be a back-end system with a smart terminal front end. In this platform, all the code is on the back end, and the 'view' and the 'controller' are pretty much intertwined. But they persist and build these arbitrary separations which have to then communicate back and forth and each have to persist their own states. After the fact, they've all agreed that what they've built is harder to support than the C stuff they were building before. .Again, maybe this is bad coding or a misunderstanding of the OOP model, but it does point out a problem with C++. Unless you're just building code around an existing, well defined C++ framework, you're not likely to implement a great object model on the first (or fifth) try.
When Microsoft bought the spyglass browser and turned it into IE, they agreed to pay spyglass a percentage of the sale price. Ultimately, they made the sale price $.00, wiping out spyglass's revenue stream in a classic MS double-cross.
I don't know why Spyglass never sued. IE was made a part of Windows, which was definitely not free. Sure, they made IE available as a free download, but they also included it on every Windows CD. Maybe there was a quiet suit and settlement?
Actually urpmi (mandriva's apt-get like thing) is pretty good. And yes, Mandriva is more user-friendly and handles hardware better than Ubuntu.
But if you're dead set against RPM for some reason, you can use PCLinuxOS, which is Mandriva hopped up with all the non-free stuff the everybody downloads anyway. Plus it uses APT and synaptic. Their latest KDE4.4 spin just came out recently.
One thing about the Ubuntu/Canonical throwing money angle, though. Apparently Canonical's business model doesn't count on selling copies of Ubuntu. Because of that, they seem to be fine with people writing easy scripts for pulling down all the non-free codecs, etc. Mandriva has continued to push a 'powerpack' version in addition to their free and live CD versions. The 'advantage' of powerpack was that it comes with licensed codecs. It's still pretty easy to add the repositories for this stuff, but you have to know where to look to find the info. I guess for some people that translates into Mandriva not being free beer.
Oh, and then there's the GPL vs LGPL thing about KDE that's no longer an issue, but which was part of Ubuntu's rise. Of course, that's another 'business model' problem. Trolltech wanted to make money too. Now they've got Nokia as a sugar daddy, so QT and KDE are as free as GNOME. But apparently too late for all of this to help Mandriva.
Okay.,I'll bite.ODF formulas are documented in the form of an open source reference implementation. Word95 - not so much. That might just be an accident of history, but it sure doesn't argue the case for OOXML as a viable standard. That is;if you want more than one implementation.
And from what I hear;,Office2010 isn't ISO OOXML either.
...Breaking the standard means deliberately implementing it incorrectly, and there is no other way to interpret it.
Okay. Come back when Microsoft has correctly implemented the ISO OOXML 'standard'. There is simply no honest way to see Microsoft's manipulation of the standards process as a good faith effort to promote standards.
They submitted OOXML as a rival standard when they feared adoption of ODF. And the standard they submitted is different from the one they've implemented.
They provided an ODF plugin that is deliberately incompatible with other implementations. Yes, I've heard the bull about the incompatibilities being in areas that were poorly defined. But to ignore all existing implementations in favor of something (let's face it) deliberately incompatible is not my idea of implementing a standard.
Microsoft is playing games to stay technically within the demands of their customers while guaranteeing as much as possible that no other software will fully implement the 'standards' that they're promoting. It's pure theater - as are your attempts to defend it.
Oh. And by the way, copyright infringement is theft. The software patent fiasco is another story altogether.
ummm. Rather than use existing standards, OOXML creates a whole new set by simply anointing existing Microsoft technologies as new 'standards'. If you don't think using monopoly power to prevent existing standards from taking hold is equivalent to breaking standards, then you deserve a job in the MS PR department. What is the purpose of standards beyond the goal of multiple implementations? That is definitely not Microsoft's goal, though. So unless you think it's appropriate to redefine what a standard is and is for, don't assume criticism == hatred == stupidity.
No. Netbooks achieved their current capability levels (hardware wise) during the XP phase. Maybe you didn't notice the price jump when Win7 came along, but I did.
Linux netbooks were on a trajectory toward a $250-300 price point. Current netbooks are $350-400. At that point, what's a netbook?
Sure, netbooks are for sale everywhere, but you used to see them featured prominently in circulars and the ever-present J&R ads. No more. You see mostly laptops in the $400-700 range. Maybe that's because those things are more profitable for the retailers (and builders) to sell. But the market was demanding cheap, and while it was available, it was being provided. But Microsoft doesn't like cheap, and have managed to remove it from the marketplace. So, sure - there's a niche for today's netbook. Just not a big one. And what was once a natural niche for Linux has largely dried up. And that's a shame.
The web has traditionally been wide open to experimentation. Until now, all web browsers supported whatever plugin's people wanted to develop, things like Flash were able to emerge. And that's a good thing. You (or Steve Jobs) may not like Flash, but without it, we wouldn't have YouTube and thousands of other video sites.
Sure HTML5 may provide a better way to support video, but it wouldn't have, had Flash-enabled YouTube not convinced the standards body that video over the web was viable. Same goes for Flash-based games, etc. You may hate the implementation, but at least somebody out there was thinking creatively. And the open web/browser enviroment allowed them to implement their ideas cross-platform so they could catch on.
So where are the new web ideas going to come from? If Apple had their way and prevented (let's face it) anything that competes with native iPod/Phone and sanctioned webkit apps from running on their hardware - and that hardware became widespread enough that ignoring it was not an option, there'd be no way to get a great new idea off the ground... or even a lousy one.
Maybe we're far enough along that we have 'all the capabilities anyone could want' in the current web browser, but I kinda doubt it. Plugin's are the only viable way to get truly original stuff implemented. Integrated standards can't become standards until they exist and gain market acceptance.
It worked well enough with SCO. It delayed Linux acceptance enough and for long enough for Win7 to come out. Some would argue (I wouldn't) that the linux desktop window of opportunity is now closed.
It worked (in another form of delaying tactic) to kill the netbook. You don't even see netbooks advertised much these days, and those you do see are more expensive than they used to be (presumably because Win7 starter isn't essentially free like XP was).
If MS can hold back Android long enough for Windows Mobile 2 to come out - that's the most MS can hope for. Worth a few million bucks to them easily. Evil, but it is a workable strategy.
Yes - as much as possible. I don't think API's should never be fixed or improved, but at some point Linux ought to be 'done' enough that driver API's don't need to be changed, and that backward compatibility isn't such a liability that it outweighs the advantages.
C'mon folks. Linux is way past the experimental phase. It's the basis for many of the devices we use and love. If the API's aren't solid enough to freeze (or maintain backward compatibility) at this point, then it ought to be a priority to make them so. Just because dev's can rewrite open source drivers to handle API changes, doesn't mean it's not a lot of effort that would not be necessary if the API's didn't have to change.
Java embodys one radical change, and it's not a feature of the language (which was pretty radical itself at the start). No, the radical feature is that it's GPL'd. This change came a little late in the game, but look what it's produced already.
Take Android. You might say 'just another smartphone platform', but think about how it came about. Google didn't develop it. A startup did. And how was it possible for a startup to build an entire internet-capable touchscreen platform? GPL. Because they had a free OS they could use any way they wanted, and a free virtual machine they could use any way they wanted, they were able to get creative and package it all together as an innovative new platform. Google bought it, added polish and apps, and suddenly it's an iPhone and Android world with Microsoft playing catch up.
Microsoft can't do this. They are committed to their proprietary OS, so they are unable to harness any major creative leaps that come from outside the company. Outsiders can't play with the OS to tweak it to their needs, so they have no way to use Windows as a platform for creativity that doesn't fit into the channels that Microsoft provides them. Plus, they know that any really good ideas they develop on the Microsoft platform will likely be copied by Microsoft and never realize their potential (for them, at least).
But the Android folks could start with minimal overhead and produce something great under the radar.
That's the beauty of the GPL and the Linux (and now Java) models based on it. DVR's, netbooks, cheap wireless routers, smartphones, Kindle and 100 tablets to come. The Microsoft ecosystem is not capable of producing these things. So the next time you rag on Java or OpenGL, X-Windows or even OpenOffice - and rhapsodize about C#, .NET, MSOffice, etc., realize that you're missing the point. These tools may not individually be the absolute best in class, but they are all much more than good enough. And they enable the most creative and dynamic ecosystems in IT today. If you care about that, C# vs Java is a no-brainer. You're gonna want Java.
Miguel seems to be just now grasping this. He had hoped that a free version of .NET would be as good as Java. He liked the technology better (not sure how much better), and thought making it free would bring it to the creative class that's really innovating these days. But Microsoft won't let him. Never meant to, never will. Sorry Miguel - I feel your pain.
I agree, except for the odd choice of an Intel Atom processor. I suppose a settop box doesn't need to be super power-efficient, but isn't ARM where this market's going? My current Motorola DVR/cable box runs so hot, I can't close the door on the cabinet it sits in. Why (other than Intel's marketing clout) is Google opting for X86 here - especially when Android is on ARM everywhere else? Are they leaving the door open to virtualizing Windows on the thing?