The Joel on Software Discussion Group (CLOSED)A place to discuss Joel on Software. Now closed. |
||
|
This community works best when people use their real names. Please
register for a free account.
Other Groups: Joel on Software Business of Software Design of Software (CLOSED) .NET Questions (CLOSED) TechInterview.org CityDesk FogBugz Fog Creek Copilot The Old Forum Your hosts: Albert D. Kallal Li-Fan Chen Stephen Jones |
Yes, I know. Microsoft'll say it's in keeping with the latest technologies, XML is a standard, etc. But why lose the goodwill of giving hassle to (read: alienating) millions of pre-2007 Office users and make them download a converter? Whythe backward incompatibility? Where's the $$$ catch ?
Continuous planned obsolescence:
- Define "new standard", make it the default for all current applications - Provide compatibility filter for older versions of those applications - At some point, upgrade the new standard to the extent that it breaks the compatibility filter - And of course, fail to upgrade the compatibility filter for "legacy" customers, citing security concerns, loss of advanced features that legacy users don't care about, and a dozen other bogus strawman concerns. - Users of older versions are screwed unless they work with users who "play nice" and consciously select the old standard document types - so they "must" upgrade. There is effectively a cutoff. ("Be reasonable, you don't expect your old software to still work after all these years - cheap b*stards! Buy something of ours now! " :) ) End users who generate Word documents will drive this obsoleting process by using whatever default that the package du jour pushes in their face. Example, a business sent me a .DOCX file, so I had to install the MS Word 2003 filter. Absolutely nothing about the document needed any features of docx, but of course they didn't think about it when they clicky clicked "Save".
I believe this was in response to fines in Europe for monopolistic practices (un(der)-documented binary format).
Where's the money? In government offices, that's where. All it took was a few government agencies in the U.S. and Europe to seriously look at using OpenOffice instead of MSOffice (something to do with "open" standards), and Microsoft put its massive war-fogging machine into action. You see, all the xxxX file formats are officially "open," even though they aren't compatible, and the specifications are hidden in thousands of pages of meaningless words organized in random sentences. The bonus for Microsoft is that it spurs sales of Office upgrades, without adding any useful functionality.
To make it look like a real upgrade (i.e. worth paying money for), Microsoft added the Ribbon to xxxX file formats for Office 2007; but for 95% of the people who use MSOffice in their jobs, the Ribbon requires relearning how to use the programs. That has dampened upgrade sales, but it hasn't hurt Microsoft's market share. The most important thing to teach Office 2007 users? How to make it save files in Office 1997-2003 format by default. Yes, I know there is a download to allow Office 2003 to read the new xxxX formats, but most Office users can't reliably install it. If you don't believe me, do a survey of corporate email attachments. The XML part is all phoney-baloney flim-flam. 0% of Office users use XML in their internal documents. In fact, has anyone ever seen an office that uses DTD's and XML for memos, customer letters, and all the other documents that get generated in a typical business? If it wasn't for script driven content management systems being used to generate corporate websites, most companies would be XML-free forever.
I wish Joel would start writing again
"Why are the Microsoft Office file formats so complicated?" http://www.joelonsoftware.com/items/2008/02/19.html
And part of it is necessary. When you're adding new functionality and features, you eventually reach the point where you want/need to remove some of the old, unnecessary ones. While some would just increment the Major version, creating a new standard can work just as well. Now you can use either standard without much of a problem.
Open Office has support docx, etc for at least 2 years, probably longer.
"Whythe backward incompatibility?"
There is no backward incompatibility in Office 2007. Office 2007 is fully capable of reading and writing several older versions of Office file formats. Backward compatibility is the ability of a new application version to work with the file format of old versions. What you are talking about is FORWARD incompatibility: the inability of an older application version to deal with new features in newer versions. This is pretty much ensured by any new thing, otherwise innovation would stop at any application's v1 file format. Mind you all: I'm no fan of Office 2007 - breaking a decade+ proven user interface was a stupid idea. But as you slam a new technology, please use the correct terms.
WannabeTycoon said it best:
Continuous planned obsolescence It's all over, in cars, software, appliances... Keep milking the customer. BTW, none of my four machines at home has office. I switched to open office, thanks. Regards Ari
Why did they create the standard?
1. Technical limits (eg the rows/cols limit in Excel). 2. Their proprietary formats had become a hot-button issue. Some govenments were announcing plans to ban the use of msft products due to the file format. It had become a rallying point for the OSS community. Why didn't they just document the file format and solve #2? They tried, it was a nightmare. The old file formats were basically a dump of the internal data structures of Word. It was never designed to be externally documented, and had ~15 years of stuff in it left over from Word 1.0 (organic code growth). It was basically impossible to explain the file format without giving away the source code. Note that msft started adding XML file format support to office 2003, but they took a lot of flak for not defaulting to XML, which meant the binary formats were still in use for 99% of the userbase. I don't buy the planned obsolescence argument, because they provided a file format converter, and provided options to use the old formats by default.
There has been a lot of the continuous planned obsolescence in operating system evolution. Windows 95 sorta, kinda supported the vast majority of DOS applications pretty well and ran almost all 16 bit Windows apps. Windows XP decisively broke many DOS applications, and didn't run a lot of 16 bit Windows apps well. Vista and Windows 7 went further still to the extent that many well behaved 32 bit Windows applications written before Vista are now broken and must be replaced.
The difference is that hardware has evolved and you want something that can exploit newer hardware fully, which Windows 95 won't and which DOS definitely couldn't. So most of this has been driven by increasing capabilities. While to productivity applications, it's all just freaking data and it's just an arbitrary cutoff to force customers to cough up. The spin about security, increased capability, etc is just that, spin. Intuit does an even worse job of this by obsoleting Quickbooks and Quicken on a fixed schedule. If you take advantage of any online data services for either you need to be within 3 years of the current version or they shut you off. IE, right now Quicken 2007 will not be able to connect to online banking services as of later this spring. Planned obsolescence is the safe harbor for mediocre companies who effectively run monopolies, that lack good new ideas for products.
@Wannabe -
I don't think I would put MS in the category of a company that does planned obsolescence. They certainly can't be lumped with the likes of Intuit. MS has spent huge resources on ensuring backward compatibility - even going so far as tomake sure third party apps that use undocumented calls and which did bad things would still work.
Ok, you guys just double confirmed what my friend had told me and hats off to Microsoft. Despite all the anti-Microsoft stance, their intial problems with Vista, their investments in .the NET frameworks (what is it now ? 3.5 ?), their marketing and legal team can still come up with this ingenious idea ? Wow! Now I see why Microsoft seldom loses.
Seeing what Microsoft has done recently, I no longer feel victimized at their dumping of VB6. That now looks like a speck in the far horizon compared to what they're doing now. And forcing people to use Ribbon and getting away with it ? Wow! I'm still using pre-ribbon Office (yup, the docs, xls, ppts, mdbs are all still there!). Thankfully, my business is not in the business of exchanging files with xxxX users! Kudos to Microsoft! For current developments of desktop apps, there's no substituting C# or VB.NET and Microsoft SQL Server! I cannot see OSS making any inroads in the desktop arena. So Microsoft triumps once again. It looks like, with their monopoly, they can force worldwide Windows and Office users to do almost anything - and get away with it! Now what ?
Because it's different from every other non Microsoft office productivity application.
Back in the early 90s there was a movement toward common standards for Windowed user interfaces called CUA or Common User access - see http://en.wikipedia.org/wiki/IBM_Common_User_Access. This is basically why every business or technical application on the market has a "Ctrl-S" for save document operation, for example, and it is located under a "file" menu. The problem back then was that every windowing system did their own thing in an attempt to be "unique." It was jarring to move from one vendor's application to another vendor. It's not that I can't learn a new UI - I simply have much better things to do with my time than relearn the stuff that already works. Microsoft is dragging standards back 20 years and balkanizing the market. I also don't note a huge landslide toward the ribbon UI by developers (yeah, I know that will start a big circular debate.)
In fact, I see the ribbon as a way to lock in end users by hopelessly confusing them. Sort of the flip side of the DOCX coin.
IE: a user gets accustomed to the ribbon. And if you then put, say, OpenOffice in front of them, they freeze in confusion because the big, dumb, friendly ribbon graphics and text aren't there any more and then they now have to understand how program functions are organized. No other vendor has the power to perform this kind of lock-in by mutating what the average user comes to expect, in the manner that Microsoft does. For office applications, anyway.
I have said it before. Rather than use Word 2007 or whatever the number has gotten to, I use Word 97. If I need to edit a Word document at school, I install Word 97 off my memory stick and use Word 97 to do my work.
I find it awkward to go hunting for how to do something with the ribbon. I could invest the time, but for me, the verb would be "waste". Sincerely, Gene Wirchenko
Karl, you're right! Sorry about the tem "backward incompatibility". It should be forward incompatibility.
[Wannabe Tycoon: "...Microsoft is dragging standards back 20 years and balkanizing the market...I absolutely despise the ribbon. It's the main reason I stayed with Office 2003..." ] Ezani : Absolutely spot on. I hate the Ribbon too. I've had my encounters with it now and then when I use my friend's or other PCs. The thing that caught me off guard was what looked like a "jigsaw" logo on the left. I didn't know you could click it to open up the main file command (New, Save, Print). It certainly just looked like a shiny logo to me. Finding my usual commands was also difficult because the wordings were smaller than the icons and one was expected to recognize pictures. Although as with all new UIs, I'm beginning to accept it because there's nothing I can do about it and after having used it a few times. Looking at other people's experience and my own occassional dabbling in Vista and Office 2007 (on someone else's computer that is!), I'm glad at sticking put to XP and pre-Ribbon MS Office. Among the things I dislike are the separate Administrator accounts, inabilility to find Search and Run menus easily, constant Internet connections and Windows Updates and difficulty in installing VB6 apps (plus OCX) which still gives me a lot of functionality I still use. The most crazy thing I don't want to do is to keep on re-learning or re-developing things that I have done before just because Microsoft decides to change the rules to the game. As Wannabe Tycoon said earlier, too many users (and vendors as well!) have been accustomed at seeing the traditional File, Edit, Tools, Windows, Help menu bar at the top and it lets them do their jobs instantly. And also at having Ctrl-S to save, Ctrl-N for newm Ctrl-C and Ctrl-V, etc. Those control keys (if one bothers to learn them) really makes you fly at using Ofiice and other Microsoft apps. I have better things to do with my time and prefer to move forward and learn new things. That's what productivity is all about! On the other side, I keep on growing awe for Microsoft. They continue to do crazy "anti consumer things" like all these xxx-X document formats and the Ribbon and yet the whole world of Office users cannot do a thing about it! I quote Wannabe Tycoon earlier : "No other vendor has the power to perform this kind of lock-in by mutating what the average user comes to expect, in the manner that Microsoft does. For office applications, anyway. " Wow !
Sorry but I absolutely have to shove this in : "Planned obsolescence is the safe harbor for mediocre companies who effectively run monopolies, that lack good new ideas for products. " (Wannabe Tycoon).
What has happened to Microsoft nowadays? They were like moving so fast ahead with technology during the good 'ol VB6 days and Embedded Tools until .NET - Foxpro was the only real mistake). It seemed like they decided to consolidate at some point with .NET to expose all their objects in .NET and trying to be closer to the technologies in OSS (although they are still far away from things like REST, ORM, annotations, DI, ESB, Rules, BPM and the likes). C# seems to be a hopeless limitation of C/C++ which is extremely slow. I feel Microsoft has the money and they should have gone for an all-out customisable Ferrari (C/C++ with pointers and all - yep, no limits!) rather than a safe, boxy fully automated car (C# running inside a VM). Now they seems to be running out of ideas and pushing things like "robotics" (?) on their Developer website. What gives?
Actually, Ezani, some of the technology in VB6 came from FoxPro. Where Microsoft screwed up with the Fox was not marketing it to new people. Their marketing was to current developers. Eventually, they could end development on it. That and the treatment that VB6 developers got gave them a BIG black mark as far as I am concerned. Microsoft has done an excellent job of teaching me to distrust them.
Sincerely, Gene Wirchenko
[Gene : Actually, Ezani, some of the technology in VB6 came from FoxPro]
Ezani : Yes, that's true, Gene. I sometime question the logic of Microsoft pursuing the 3 different database versions of Foxpro (Dbase-compatible), Access and SQL Server. They seem to now have the commonsense of consolidating all into SQL Server only . It was quite ridiculous having Visual Foxpro and Visual J++ along in the same box as Visual Basic and Visual C++ in Visual Studio 6.0. I thought at that time they seemed to be moving nicely along especially with VB Embedded and VC Embedded on the side. But I guess it was also at that time that they realized that they could "object-ticize" Windows into .NET and make programming Windows truly object-oriented. However, if I were Paul Allen, I would not stop VB6 and the nice procedural programming style of VB6 abruptly, nor C++ nor gave up on unmanaged programming. I would still come up with Windows in object form which is .NET framework but slowly and gradually put it in as a growing feature in VB6 and VC++6. Meaning if you wanted to do old style procedural or unmanaged programming, you could still do that - but you could also access the objects in .NET easily. As for C# and VMs, doesn't make sense for Microsoft to buy VM technology because it only has one OS in Windows. However, since Microsoft has a monopoly over Windows, I cannot see any other tool to use to build optimum Windows desktop apps nowadays, except to use C# or VB.NET and SQL Server. P.S. >> I commend your idea of sticking portable setup programs of Office 97 (instead of 2007!) in your thumbdisk for use anywhere. This IS a neat solution! Make sure you stick in the xxx-X readers as well!
Ezani: "Yes, that's true, Gene. I sometime question the logic of Microsoft pursuing the 3 different database versions of Foxpro (Dbase-compatible), Access and SQL Server. They seem to now have the commonsense of consolidating all into SQL Server only."
One size does not fit all. I think that having the three made sense. Why would a mom and pop operation want SQL Server? "P.S. >> I commend your idea of sticking portable setup programs of Office 97 (instead of 2007!) in your thumbdisk for use anywhere. This IS a neat solution! Make sure you stick in the xxx-X readers as well!" It was frustration. I have a licence for Office 97. I may be technically violating it, but as the schools system wipe on boot, it is not as if others are using it. I have other software on my memory stick, and at one point, I had a batch file for installing various of them, but I do not need that these days. What are xxx-X readers, please? Sincerely, Gene Wirchenko
Gene, I don't think you are violating the licence. Somehow long ago one day I don't know how...but I had some free time and I just happened to go through those small writings in the Microsoft Software Licence Agreement for my Office 98, and it states that you can only install one copy of Office at any one time. Perhaps if you removed Office from your original PC, you wouldn't be violating the licence. Just install Office on any PC from your thumbdisk and remove after use. You thumbdisk could subsitute as your backup CD since Microsoft allows this and you can keep your original CD in a safe place. I try to take this licencing further by NOT installing from my original PC but making sure I don't use my Office apps on2 PCs at the same time (would this be violating the licence?) If I do install a second copyof Office on another PC/laptop besides my ori PC, I remove it after use. But at all times I'm only using Office on one PC at a time. I do not think I'm violating the licence in principle and it saves me the hassle of uninstalling and re-installing on my home PC.
Sorry, by xxx-X readers I meant the Microsoft Office 2007 Word, Excel and Powerpoint viewers which users who do not have Office 2007 can use to view Office 2007 documents (docx, xlsx, pptx and mdbx).
Gene,
Could you tell me a bit more about your programming/IT background? I'm on yahoo Messenger at ezanih@yahoo.com although my main email is ezanih@hotmail.com. (I'm a 40-year old programmer from Malaysia by the way, with 30 years experience in VB6 and 3 years in Java/JEE with a little C/C++ on the side.)
[Ezani : I try to take this licencing further by NOT installing from my original PC"]
Ezani : Sorry for the typo. What I meant was : I try to take this licencing further by NOT removing Office from my original PC..."]
Ha ha ha ...
+1,000,000 to you Schlablotnik!!! Ah..how refreshing...much needed laughter after being hit by CRT rays for the last 4 hours :-) Yup, all the way since QuickBasic which came with DOS 3.1. It couldn't compile so I bought QuickBasic 4.5 and then the Basic Professional Development System 7.1 and then Visual Basic 3.0 and then VB4, 5 and 6. I had my fun developing my own accounting software with 4.5 (I have my own software company) happily using random access structured arrays until I hit the 256 bytes barrier for DOS (ha ha ha, those were fun times back then!). I didn't have the dough to get a protected-mode DOS extender back then (to push mem up to 4GB) nor did I want to learn any Clipper so I scrapped the accounting software as it was only able to save 250 accounting journal transactions before running out of memory so nobody would buy it! PBDS 7.1 didn't solve anything, nor did VB3 but by then I had developed a sprawling GUI-based accounting and HRMS system on VB3 using the third-party QELink which was supposed to be able to connect to just about any databases in the world from xBase to Oracle to Progress, Informix and DB2! In the end it couldn't connect to those high end DBs and the company was taken over. I got quite depressed and didn't want to move over to 32-bit VB4 given the seemingly unsurmountable task of rewriting my database codes all over again from QELink to Microsoft Jet DAO and replacing all my VBX-es to OCX-es. I also bought Borland's Turbo-C 1.5 back then and dabbled in (the still DOS-based) Microsoft Quick C/C++ 7.1. It was only at VB5 that I gradually moved my HRMS to VB5 but accounting was still in VB3. It was only in VB6 that I decided to do a massive code upgrade for all my apps. I had Visual Studio 6.0 and one of my biggest regrets was not getting myself familiar with VC++6.0. I don't know how different life would have been if I had mastered C/C++ well with VC++6.0. But if I had done so, I don't think I would be able to develop end-to-end business apps which requires a massive amount of C/C++ coding! Then .NET came and knocked me on the head. There is NO way I am going to re-write all my VB6 apps (which had now grown from accounting/HRMS systems to include library and hospital systems) in .NET. I got frustrated and went into Java/JEE and have been doing it for 3 years now. After all that, I now realize that the best desktop apps are developed with Visual Studio.NET and SQL Server. Someday I will rewrite...someday.... |
|
Powered by FogBugz


