Developers As Pawns and One-Night Stands
jcatcw writes "At the Comes vs. Microsoft antitrust case, last Friday's testimony included evidence that James Plamondon, a Microsoft technical evangelist, in a 1996 speech referred to independent software developers as 'pawns' and compared wooing them to trying to win over a one-night stand. Last week's proceedings also included testimony by Ronald Alepin, a former CTO at Fujitsu Software Corp. and currently an adviser to the law firm Morrison Foerster LLP. He said that Lotus 1-2-3 was killed, in part, by Microsoft encouraging Lotus's programmers to use the Windows API even though Microsoft's own developers found it too complicated to use." The plaintiffs have created a site that includes transcripts of testimony presented in the case.
The agreement even states that Apple will encourage its employees to use Microsoft Internet Explorer for Macintosh for all Apple-sponsored events and will not promote another browser to its employees. I had no idea Apple had agreements like this.
I am guessing you havn't done much Microsoft Development. Did you ever wonder why MS Has features in their programs that you cannot program easily using Microsofts tools. When Office allows the fade in with graphics and colors menus in all their product while your API only allowed the text only popup Menus. MS Does do this. It is not about MS bashing it is about MS not giving us the tools to create modern applications.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
ISV's are, in essence, Microsoft's customers. RMS is not a customer of Microsoft. That's the difference, really.
This is Microsoft employees saying their customers, the ones they're supposed to be developing good API's and such for, are pawns and they should never be catered to.
While some of your complaints are valid, like there not being easy-to-find hooks in the UI that are used by Microsoft products, others are specious. Specifically, complaining about the grid controls in MFC not being as good as the ones in, say, FoxPro.
FoxPro was initially developed in a cross-platform manner, by a different company. Also, the team inside Microsoft that eventually took it over was separate from the MFC team. There's really no reason why you should expect that all of their custom controls should be made available as part of a library. It's not like they wrote to some hidden high-quality grid control in the MFC that wasn't exposed to non-Microsoft developers - they just built a better grid control using the same interface that was exposed to everyone, the same way you'd have to if you wanted the same functionality. I've seen some code for the grid control of another MS product, and it is pretty much straight to Win32 drawing calls, event handling, etc. It looked like it was very painful to get right.
Of course, I'm personally of the opinion that MFC is total crap, but then again I've been spoiled by well-designed libraries like Qt.
Powered by Web3.5 RC 2
Ultimately this will/has hurt Windows, as those programs targetting the undocumented APIs -where some MS apps get their features from- will require that hidden API to remain relatively static. And when problems are found in this undocumented API, either you leave the problem in place and work around it (and thereby leave the existing software using it potentially vulnerable), or you have to push an update for all those programs.
Maybe this is part of the reason why Linux's kernel has no fixed ABI?
Indeed!
That's a dumb question. Office menus look the way they do because they're written from scratch to look that way. Hundreds of applications for every OS ever made do this, that doesn't mean that there's some huge conspiracy, just that the Office team spent more time getting their menus right than you did and enough time to QA is so that people like you would be tricked into thinking it's some hidden part of the OS. How paranoid are you? Programming menus isn't some "magic operation" that can only be performed by the OS, any decent programmer can make their own pull-down menu implementation. I'm sure Photoshop and other applications of Office's size do the same.
Now asking *why* Office does this, that might be a valid question. But implying that it's some kind of conspiracy is stupid.
Hell, Apple used to provide basically a plug-in architecture for drawing menus, windows and buttons since they knew overriding the default appearance and behavior would be popular. It was a code resource in Mac OS Classic and if you had one in there, Mac OS would automatically load your code whenever it needed to handle a click on menus. (Obviously a bad idea from a security standpoint... it was disabled long ago.)
Comment of the year
Also, does anyone else get an image of the robot preacher from Futurerama when they hear the words "Tech Evangelist"?
You missed his point, and got caught by the simple, common example.
Microsoft actually had two layers of API. There was an internal API used by other Microsoft employees, and the public API advertised and documented for other devleopers to use.
There were several articles in Dr. Dobb's Journal detailing diferences between the APIs, written by people who were trying to tear under the hood in ways Microsoft STILL describes as criminal.
Some of the public API structures did nothing but rearrange the arguments, call a delay timer, and then call the internal API. Seriously.
The material described in these articles was part of the first big push about Microsoft abusing it's monopoly position. After all, people were builidng proof that Micorsoft was specifically making it impossible for anyone to write applications that could finction as cleanly, quickly, smoothly as Microsoft's own, or that could even be as small as Microsoft's own. They used the natural OS monopoly to make it impossible to compete fairly in the application market for that OS.
I wonder why Microsoft calls the efforts to uncover the API differences criminal?
And for those who want to call this blatant Microsoft bashing, go check Dr. Dobb's Journals from the early Windows 3.1 era for yourself. I don't have to make this up. The facts do more bashing than anything I could make up.
So if working with Microsoft is a one night stand, isn't doing Open Source like doing 500 guy gangbang?
I have high standards, you insensitive clod!
You must be a daemon in the sack.
You must be agile.
No time for debugging your problems.
I will not use a trojan horse.
Time slicing with others is not okay.
Don't ever call my thing a widget.
For he today that sheds his blood with me shall be my brother.
It is not really a conspiracy but a well known fact that they do not publish large portions of
their api's. This fact has been brought up in court numerous times. Just recently they tried to hold
back the security api until it became public they where doing so. If it was just a conspiracy they would not be having to produce a actual published api for the EU.
When you develop software for windows you are coding on a platform owned by your direct competitor. The fact that they hold back stuff for internal use should really be no surprise.
Got Code?
I would disagree. Contractors can play a very distinct role: to fill a void (in skills) at a company. If this isn't the case, then they are contracted to fill a void in manpower. Most of the time, however, a contractor is brought on board to lend their expertise to a project.
Many organizations work with contractors because it's easier to hire and release a contractor than it is to hire and release a full-time employee with positional power. With contracting, there's typically a trial period during which the organization has made no guarantee of your employment with them. So the contractor benefits from higher wages, and the organization benefits from one less salary commitment.
For he today that sheds his blood with me shall be my brother.
Probbably because tricking developers into using the Windows API, (which Microsoft knew to be problematic) is a part of Microsoft's anti-competitive behaviour. Anti-competitive behaviour isn't illegal unless you're a monopoly like Microsoft is. The article references Microsoft encouraging Lotus to use the Windows API, and claims that contributed to the decline of Lotus 1-2-3.
AccountKiller
Rubbish, check out owner-drawn menus in the MSDN documentation. THere's nothing to prevent you from doing kind of thing yourself. I've done it.
Anybody else get the Microsoft Visual Studio 2005 ad on this Slashdot article (screen shot below)?
6 /slashdot_ms.jpg
http://i64.photobucket.com/albums/h165/bradley197
Bradley Holt
The best way to accelerate a windows server is by 9.81 m/s2
Looking at your resume, you haven't done much Windows API work, and in 1996 you hadn't done any. So let me correct a common misconception about Windows API programming:
There is no reason that someone else could not make controls that fade in with graphics and color menus. No secret Windows APIs are or were required to do this, even at that time. Windows has always allowed applications to draw whatever they want in their windows, and that includes transparency and fading. The win32s extensions for Windows 3.11 even offered support for non-rectangular windows. Even easier, Microsoft licensed their Office controls to applications developers who wanted to do it. There are no special undocumented API calls required to do this stuff.
Of course, the whole point of a one-night-stand is to get fucked.
dave
While I agree with you that the current Office developers are simply good and talented coders and aren't simply leeching off of some undocumented API for their spiffy graphics, it's long been alleged that Microsoft has used undocumented APIs for Office. While I can't find the cite, I believe this was a key part of the anti-trust lawsuit.
You can see "documentation" for many of them on the Sysinternals site. One thing I'd warn against is actually using these calls in production code. Undocumented means unsupported -- MS could decide tomorrow to yank these in their next XP hotfix, and your code would be left hanging high'n'dry. Not that they're likely to do it, but what if one of these had a worm come along exploiting it? The quick and obvious fix would be to simply remove it.
John
Even if an API is documented, MSDN is frequently wrong. Just try asking a Wine developer.
Game! - Where the stick is mightier than the sword!