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

Why Did Microsoft Create DOCX, XLSX, PPTX, etc ?

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 ?
Ezani Send private email
Thursday, January 28, 2010
 
 
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".
WannabeTycoon Send private email
Thursday, January 28, 2010
 
 
xml documents are not supposed to be compatible with anything. THAT is a good thing.
victor a.k.a. python for ever Send private email
Thursday, January 28, 2010
 
 
I believe this was in response to fines in Europe for monopolistic practices (un(der)-documented binary format).
(User deleted) Send private email
Thursday, January 28, 2010
 
 
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.
RGlasel Send private email
Thursday, January 28, 2010
 
 
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
Architecture Astronaut Send private email
Friday, January 29, 2010
 
 
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.
KC Send private email
Friday, January 29, 2010
 
 
"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.
Karl Perry Send private email
Friday, January 29, 2010
 
 
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
BeMeCollective Send private email
Friday, January 29, 2010
 
 
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.
Myron A. Semack Send private email
Friday, January 29, 2010
 
 
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.
WannabeTycoon Send private email
Friday, January 29, 2010
 
 
@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.
Tim J Send private email
Friday, January 29, 2010
 
 
I agree with that. I am, however, a bit concerned that people using older versions of MS Office products have become a bit "marooned" professionally speaking. Docx is an aggravation with little upside for the user, all spin aside.
WannabeTycoon Send private email
Friday, January 29, 2010
 
 
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 ?
Ezani Send private email
Monday, February 01, 2010
 
 
I absolutely despise the ribbon. It's the main reason I stayed with Office 2003.
WannabeTycoon Send private email
Monday, February 01, 2010
 
 
@WannabeTycoon
what don't you like about the blue ribbon?
victor a.k.a. python for ever Send private email
Monday, February 01, 2010
 
 
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.)
WannabeTycoon Send private email
Monday, February 01, 2010
 
 
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.
WannabeTycoon Send private email
Monday, February 01, 2010
 
 
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
Gene Wirchenko Send private email
Monday, February 01, 2010
 
 
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 !
Ezani Send private email
Monday, February 01, 2010
 
 
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?
Ezani Send private email
Monday, February 01, 2010
 
 
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 Wirchenko Send private email
Tuesday, February 02, 2010
 
 
[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 Send private email
Tuesday, February 02, 2010
 
 
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 Wirchenko Send private email
Wednesday, February 03, 2010
 
 
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).
Ezani Send private email
Wednesday, February 03, 2010
 
 
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 Send private email
Wednesday, February 03, 2010
 
 
[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..."]
Ezani Send private email
Wednesday, February 03, 2010
 
 
@ezani

30 years of VB6?  Man, you are good.

(BTW, I used the B in VB 30 years ago, there's no relationship between the two :)
schlabnotnik Send private email
Wednesday, February 03, 2010
 
 
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....
Ezani Send private email
Thursday, February 04, 2010
 
 
"(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.) "

30 years of VB6???

a) That would mean it was released in 1979

b) Your brain would be like swiss cheese if true...
Jimmy Jones Send private email
Saturday, February 06, 2010
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz