That's hardly a scientific study. It's a mind-dump of an angry guy forced to do phone support while he's programming. While I'll agree that I feel less productive in general when I'm in a chaotic environment, I'd rather see something from a professional psychologist or neurologist. To get published they'll have to adhere to some modicum of proper analysis.
.NET is nothing like AOL. AOL is a big Tcl interpreter. It's completely nonstandard (even down to the transport protocol.) It gives the server control over the wrong things (almost everything.)
.NET offers a lot of the old OLE automation features with a friendlier intermediate format (XML.) The CLR is supposed to facilitate this aim across platforms. It's a much more extensible design than AOL.
Re:Its interesting that Internal...
on
Breaking Windows
·
· Score: 1
My uncle started his own software company after leaving Microsoft.
Re:Some other books
on
Breaking Windows
·
· Score: 2, Interesting
The 12 Simple Secrets of Microsoft Management: How to Think and Act Like a Microsoft Manager and Take Your Company to the Top - Dave Thielen - The best book on how Microsoft works.
Ha, that's my uncle's book.:)
He's pretty proud of it I gather. If you're a regular slashdot reader, he's the father of the girl whose sociology Science Fair project was censored by Mesa Elementary in Boulder, CO.
Personally, I really liked "Showstopper!" (about the making of WinNT)
But, there comes apoint where you have to stand up and make a point loud and clear. If a law is unjust or unconstitutional then you are morally obliged to oppose it. [remainder of rant clipped]
Look, Patrick Henry, we can be as patriotic as we'd like here... but we're jumping the gun. At least the guys who went into the American Revolution had A GREAT DEAL of time to consider the way that England had been treating them. In this thread, we're talking about the reaction to one incident in Las Vegas by some federal officers who, although probably not spawned by Satan himself, represent a bad decision. The revolutionists waited to hear England say, "screw you." That's the wisest thing to do in this situation too.
It's wrong to say that Adobe purchased the DMCA. I absolutely hate the state of lobbying in this country, but we're not that bad yet. I agree that Adobe has behaved reprehensibly in this case. I would expect to see companies with similar business models behave in similar ways though. Have you heard of Kinetix? They changed their name to "discreet [sic] logic" recently, but their product, 3D Studio Max, has been selling for something like $3,000. A while ago they tried to use a hardware dongle system to prevent copying. If Adobe hadn't acted first, Kinetix very well may have been the company to try the DMCA in this way. Wolfram Research (Mathematica) is another company that is big on strong copy protection. These are the companies to persuade, I think.
I think that people ought to be tried within a region only if they commit their crime within that region (except cases of justice being circumvented by rage -- see the OKC bombing.) I think that a case has been made for Mr. Sklyarov breaking U.S. law by "allowing" his program to be distributed in this country. This was probably justified by likening it to selling weapons to terrorists or some such absurdity (remember PS2's "weapon" status?) Regardless, it's possible for courts to "try" people who aren't even in the country at the time (it kind of gives that person fair warning to stay away.) I agree that we've been incredibly inconsistent with this (parts of our inane policies can be traced to laws that were rushed by consumer groups though -- it's not all evil politicos.)
I don't agree that all corporations will only consider profits in everything that they do (that's not the definition of "corporation" either.) Consumer Reports is owned by "Consumers Union of U.S. Inc." A publication associated with Ralph Nader is not something that people usually point to when they're thinking "big evil corporation." We've been torn between giving corporations too much autonomy and allowing them to grow freely in this country for quite some time. It wasn't even until Teddy Rooseveldt (afaik) that breaking them apart even became an option (and from what I know, he wasn't a big fan of that idea.)
I do think that there are corporations that, overall, behave in civilized ways.
I haven't been against the notion of peaceful demonstration or logical discussions, only knee-jerk "FREE HIM NOW OR YOU'RE A FACIST" responses. It might be frustrating that the process is taking so long for somebody whom we "know" deserves to be free... but we mobs can't decide that. In short, what I'm advocating is patience.
So that having been said, you usually want to make your will known to the lawmakers before the courts. Judges are usually pretty even-handed but there are also a lot of judges on huge power trips. Things like screaming outside of a courthouse will only turn them against you. That's not helpful. What I've seen as being more effective is to influence local lawmakers (it's usually not too hard to get through to SOME person in your state assembly.) They're often in close communication with the more influential judges. Essentially, the best way to lend validity to your cause is to encourage civil conversation amongst members of the legal environment. From there it's a lot of waiting.
I've grown up in a family of lawyers, politicians, and a Microsoft program manager. They like to think that they've got the legal and social issues surrounding modern technology completely resolved. They've always responded well to the introduction of new problems. Many others within that field behave similarly.
But... if you back any animal up against a wall it'll charge you, including the legal system. I don't think that this is a case that justifies the kind of "protests" that people are talking about.
If the mobs never rise up, the Courts can safely ignore the will of the people.
You have to be very careful about where you apply that chain of reasoning... because the implication is revolution. You can't just randomly threaten courts forever, or some larger social structure will put you in check (see the Seattle WTO protests for a recent example of this.) The ideal of a court system is to assure even-handed justice. The ideal of a mob is to get their way at that instant in time, possibly even in a bloody way. A mob is necessary when the justice system is fundamentally flawed (see the American Revolution [or the French Revolution, or many similar uprisings.]) If it's not fundamentally flawed, the mob is not helpful. Creating a functional legal system is a lot like creating a functional computer program. Most of the work is in designing a solid architecture and in properly implementing each component of it. The best way to write a terrible program is just to sit down and write random code blocks, haphazardly repeating methods in vastly different ways (sometimes with different results.)
I'm not saying that the legal system is perfect (or that the federal law that Mr. Sklyarov was arrested under is a good one.) I'm saying that it's not fundamentally flawed.
Also, I do distinguish between the law on the books and the law the interpretation and enforcement system. That's been my point throughout this thread. I don't agree that courts exist to manage power relationships and politics. In all of my life I have seen very few judges who play political games.
I remember reading about their use of his software, but it's not as if government organizations have been honest throughout time. This is exactly why I'm advocating enforcement. A law enforcement agency that applies laws inconsistently is saying, "We'll do whatever we feel like." That's not the purpose of a law enforcement agency.
I live near Aspen, Colorado (you've probably heard of it.) Just last week there was a pretty high profile rape case that ran through the local papers. The man whom they arrested for the crime is actually a Mexican citizen. That doesn't mean that they aren't going to hold him. It is the intent of legal systems to enforce laws within their boundaries.
With respect to the FBI's use of Mr. Sklyarov's program, I don't think that they are in violation of the DMCA. I don't think that there's a provision for the use of circumvention devices (I believe that falls under fair use,) but for the creation of them.
I don't like the DMCA. I don't think that Mr. Sklyarov belongs in jail. I think that what we've done will scare a lot of great Russian Computer Scientists away.
I also hate mobs rushing in and demanding things from courts. If we're going to claim to be a civilized society, we ought to start acting like it.
Yeah you're still missing the point... and now you're turning it into an emotional issue.
I'm not saying that you shouldn't disobey an unjust law, I'm saying that law enforcement shouldn't. Unless you're a cop, you're obviously missing the point.
You've missed the point (this isn't "us versus them" by the way -- it's "us versus us" -- this whole thing makes all of us look incredibly ridiculous.)
Allowing law enforcement to enforce the laws that they like to only those people whom they wish to pursue is MUCH worse than suffering through the trials associated with one bad law.
... and why should the FBI make a special case for this man? With reference to usual court times, very little time has elapsed since Sklyarov was arrested.
The whole purpose of the court system is to catch situations like this. Imagine what would happen if it were generally EASY to have charges dropped when an unjust situation arises (read: a situation that doesn't go your way.) Should "Joe Rapist" be released because his mother says that he's a good person and what he did was just "kind of" rape, but not "really harmful?"
What you're advocating is anarchy, in a form. I suggest that you move to the South Pole.
The "spin" is likely relative to a fixed point, rather than the electron's barycentre.
Like the moon "spinning" around the Earth.
OTOH, the "focusing them into tight beams" comment makes it sound like the magnetic field acts as a funnel to deliver a beam of electrons as a pixel (or a stream of pixels over time.) The "spin rapidly" comment is just superfluous information in that case.
DirectX came from a Windows game programming library years ago. MS abandoned WinG when they took up DirectX. From what I know, there wasn't a code merge.
The question about the rasterizing/rendering library that you prefer assumed that you would be implementing your own scenegraph library.
How much time did you spend with the MFC? You didn't just have a "wizard" generate a project skeleton for you, did you? It doesn't sound like you spent much time figuring it out (not that you need to use the MFC... but you've been commenting on its effectiveness.)
About the VC interface... the whole idea is to use the MFC as a foundation, not to shift MFC components around (ala vbscript.) That's why the interface programmers extended MFC objects specifically for their purpose.
I have to admit that the components I used were well-documented (unlike most free software libraries that I've used).
I think that part of that comes from inexperience. I have enjoyed watching "LinuxDoc" change over the years but it's still got quite a way to go before it "looks like" professional documentation. Part of that is its classification scheme. Granted, the MSDN classification scheme isn't perfect (though the HTML help reader is a huge improvement over the old help system... and it makes using the MSDN library very simple,) but the obsession with "HOWTO"'s needs to end. A "how to" is fine when you're talking about a few short processes. You can't document an entire OS (and integral kernel modules and user libraries) with a big collection of HOWTOs. They need to grasp for a higher level of abstraction.
By the way, you wouldn't happen to have read the Findings of Fact in the U.S. vs. Microsoft case, would you? I recommend chapter V, section B, entitled, "Withholding Crucial Technical Information."
I read it when it originally was released. Since you brought it up, I went back and reread the section that you mentioned. Some things are a little confused to me.
Windows didn't have any subsystem called "RNA" at that time. I think that they mean "RAS" (Remote Access Services.) In cVsB they were talking about MS not giving NS details of their (unreleased at that time) remote network access interface.
While it's arguably illegal (no statement was made in this part of the FoF asserting that the actions described in cVsB were illegal,) it's certainly not a developer-friendliness issue. No company is under any requirements to give out details of their product to implementors before the product is released (you'll see experimental subsystems that are developed for Linux morphing over time also... the developers of those subsystems wouldn't encourage anyone to write to the interface until it solidified.)
In short, cVsB covers a political issue, not a documentation one. Their RAS documentation was great once it was released to everybody (I used it to implement a dial-up server and to write a dialer program for a local company.)
Anyway... I know of other cases where they weren't so nice to their "partners." There's the whole OS/2 fiasco with IBM (that's actually in "Showstopper!" -- the book that I suggested to you -- also.)
Woooh there, tone down the attitude a couple of notchs, I dont recall compiling MFC having much of anything to do with "developement under Windows", to constitute your question.
Well I couldn't find anything that was relevant to respond to... so I picked something that I thought we'd both agree on.;)
At the time I was exploring the possibilities of what I could do in windows programming with visulc++, COM was relatively scarce (I dont even recall its existence at the time)
The COM was originally kicked around in the early 80's and was used in the Win3.x (and NT) OS. So... unless you were programming Windows on an 8086, you were probably on a system that made use of the COM in some way.
the first time I came across it was in directx 3 programming (which direct3d was also horribly designed and documented)
MS bought DirectX... you ought to blame the guys who originally wrote it.
On a side issue... what do you think of D3D as of DX8? Do you like the integration of D3DIM and DDraw? I don't think that anybody ever took Retained Mode seriously but the D3DIM driver interface "standard" has been steadily overtaking OpenGL. Do you prefer OpenGL as an immediate mode rasterizer/renderer?
but the underlying matter is you cant change much in MFC as it is because of some afx libraries of which the source is not shared.
Which libraries are you referring to specifically?
"AFX" was going to be the original TLA for the MFC. It stood for something like "Abstract Foundation Classes" (I'm not really sure where "x" came in -- MS seems to be infatuated with that letter.) Most of the "Afx functions" are actually macro definitions (did you include the MFC browse info file when you were looking up definitions?)
You can change the way that the MFC works, but Microsoft went to significant lengths to allow you to extend it without needing to understand the way that the code works (this isn't devious -- it's saved a lot of people a lot of time.)
As I recall the lamest architecture in MFC was the document view architecture, there was quite a bit of things I wanted to change about it.
That's not an MS only thing either. Doc/view was heralded as a fundamental structure that could be integrated into all applications by a band of academic types. I don't know much about Microsoft deciding to go with Doc/view but it's not integral to the MFC (it's just the used if you use the "AppWizards" -- which are as bad as any other code generator.)
Originally I was thinking I could extend MFC, but I found MFC was not designed to be extended in such a way
You probably didn't spend enough time at it. There are even "project wizards" designed specifically to automate the process of creating a project that extends the MFC in some way (such projects are called "MFC Extension Libraries" I believe.)
When you read the abstract descriptions of the "MFC code philosophy," the actual code itself makes a lot more sense.
Anyway... I haven't seen any compelling evidence that Microsoft is harmful to developers in general.
Hi, you're not actually addressing the points that I made... so I'm not going to respond to everything in your post.
I do agree that parts of the MFC are very poorly designed though. However, if you've ever implemented an OLE control container at the base OLE/COM SDK level, you'll really enjoy the actual level of abstraction that you get out of something like the MFC.
... and you can compile the MFC if you want, or the CRT (you get that code too.)
That should read, "...with developers who aren't developing products that compete with Microsoft's hasn't been one of those things."
No it shouldn't read that either. In fact, not only does MS continously add commonly-implemented features to their OS base code, they have gone out of their way to make sure that idiosyncratic programs used by the majority of the Windows userbase will work on the new iteration of Windows. You should read the book "Showstopper!" to get an idea for what's happened in there in the past.
What sort of software have you written for Windows?
In all honesty did you expect Microsoft to ever do anyone favours?:-)
They've released source code and documentation for almost every area of their (huge) Operating System. They've certainly got some of the best documentation I've ever seen. Really, if you're a developer, Microsoft not only does favors for you but they treat you like royalty.
I'm sure you're only kidding... and I'm not trying to say that MS is some kind of benevolent entity (or even that "MS" is a real entity at all.) They've done all sorts of awful things, but being deliberately obscure with developers hasn't been one of those things (though you could probably make a case for the OLE documentation -- but I've actually implemented OLE control containers, scriptable objects, controls, in-place document containers,...)
Hey Science is all about that kind of fault-tolerance achieved by carrying out the same process multiple times.
That's hardly a scientific study. It's a mind-dump of an angry guy forced to do phone support while he's programming. While I'll agree that I feel less productive in general when I'm in a chaotic environment, I'd rather see something from a professional psychologist or neurologist. To get published they'll have to adhere to some modicum of proper analysis.
;)
Thanks.
... and your comment contributes greatly to that ideal.
.NET is nothing like AOL. AOL is a big Tcl interpreter. It's completely nonstandard (even down to the transport protocol.) It gives the server control over the wrong things (almost everything.)
.NET offers a lot of the old OLE automation features with a friendlier intermediate format (XML.) The CLR is supposed to facilitate this aim across platforms. It's a much more extensible design than AOL.
My uncle started his own software company after leaving Microsoft.
http://www.windward.net/
He also does some consulting work I believe.
The 12 Simple Secrets of Microsoft Management: How to Think and Act Like a Microsoft Manager and Take Your Company to the Top - Dave Thielen - The best book on how Microsoft works.
:)
Ha, that's my uncle's book.
He's pretty proud of it I gather. If you're a regular slashdot reader, he's the father of the girl whose sociology Science Fair project was censored by Mesa Elementary in Boulder, CO.
Personally, I really liked "Showstopper!" (about the making of WinNT)
You will enjoy a hungry winter of discontent.
What are you, some kind of new Oracle at Delphi?
____________________
But, there comes apoint where you have to stand up and make a point loud and clear. If a law is unjust or unconstitutional then you are morally obliged to oppose it. [remainder of rant clipped]
... but we're jumping the gun. At least the guys who went into the American Revolution had A GREAT DEAL of time to consider the way that England had been treating them. In this thread, we're talking about the reaction to one incident in Las Vegas by some federal officers who, although probably not spawned by Satan himself, represent a bad decision. The revolutionists waited to hear England say, "screw you." That's the wisest thing to do in this situation too.
Look, Patrick Henry, we can be as patriotic as we'd like here
____________________
It's wrong to say that Adobe purchased the DMCA. I absolutely hate the state of lobbying in this country, but we're not that bad yet. I agree that Adobe has behaved reprehensibly in this case. I would expect to see companies with similar business models behave in similar ways though. Have you heard of Kinetix? They changed their name to "discreet [sic] logic" recently, but their product, 3D Studio Max, has been selling for something like $3,000. A while ago they tried to use a hardware dongle system to prevent copying. If Adobe hadn't acted first, Kinetix very well may have been the company to try the DMCA in this way. Wolfram Research (Mathematica) is another company that is big on strong copy protection. These are the companies to persuade, I think.
I think that people ought to be tried within a region only if they commit their crime within that region (except cases of justice being circumvented by rage -- see the OKC bombing.) I think that a case has been made for Mr. Sklyarov breaking U.S. law by "allowing" his program to be distributed in this country. This was probably justified by likening it to selling weapons to terrorists or some such absurdity (remember PS2's "weapon" status?) Regardless, it's possible for courts to "try" people who aren't even in the country at the time (it kind of gives that person fair warning to stay away.) I agree that we've been incredibly inconsistent with this (parts of our inane policies can be traced to laws that were rushed by consumer groups though -- it's not all evil politicos.)
I don't agree that all corporations will only consider profits in everything that they do (that's not the definition of "corporation" either.) Consumer Reports is owned by "Consumers Union of U.S. Inc." A publication associated with Ralph Nader is not something that people usually point to when they're thinking "big evil corporation." We've been torn between giving corporations too much autonomy and allowing them to grow freely in this country for quite some time. It wasn't even until Teddy Rooseveldt (afaik) that breaking them apart even became an option (and from what I know, he wasn't a big fan of that idea.)
I do think that there are corporations that, overall, behave in civilized ways.
____________________
I haven't been against the notion of peaceful demonstration or logical discussions, only knee-jerk "FREE HIM NOW OR YOU'RE A FACIST" responses. It might be frustrating that the process is taking so long for somebody whom we "know" deserves to be free ... but we mobs can't decide that. In short, what I'm advocating is patience.
... if you back any animal up against a wall it'll charge you, including the legal system. I don't think that this is a case that justifies the kind of "protests" that people are talking about.
So that having been said, you usually want to make your will known to the lawmakers before the courts. Judges are usually pretty even-handed but there are also a lot of judges on huge power trips. Things like screaming outside of a courthouse will only turn them against you. That's not helpful. What I've seen as being more effective is to influence local lawmakers (it's usually not too hard to get through to SOME person in your state assembly.) They're often in close communication with the more influential judges. Essentially, the best way to lend validity to your cause is to encourage civil conversation amongst members of the legal environment. From there it's a lot of waiting.
I've grown up in a family of lawyers, politicians, and a Microsoft program manager. They like to think that they've got the legal and social issues surrounding modern technology completely resolved. They've always responded well to the introduction of new problems. Many others within that field behave similarly.
But
____________________
If the mobs never rise up, the Courts can safely ignore the will of the people.
... because the implication is revolution. You can't just randomly threaten courts forever, or some larger social structure will put you in check (see the Seattle WTO protests for a recent example of this.) The ideal of a court system is to assure even-handed justice. The ideal of a mob is to get their way at that instant in time, possibly even in a bloody way. A mob is necessary when the justice system is fundamentally flawed (see the American Revolution [or the French Revolution, or many similar uprisings.]) If it's not fundamentally flawed, the mob is not helpful. Creating a functional legal system is a lot like creating a functional computer program. Most of the work is in designing a solid architecture and in properly implementing each component of it. The best way to write a terrible program is just to sit down and write random code blocks, haphazardly repeating methods in vastly different ways (sometimes with different results.)
:)
You have to be very careful about where you apply that chain of reasoning
I'm not saying that the legal system is perfect (or that the federal law that Mr. Sklyarov was arrested under is a good one.) I'm saying that it's not fundamentally flawed.
Also, I do distinguish between the law on the books and the law the interpretation and enforcement system. That's been my point throughout this thread. I don't agree that courts exist to manage power relationships and politics. In all of my life I have seen very few judges who play political games.
You may be paranoid.
____________________
What was the name of that movie? Was it "Creepshow?" It doesn't seem like many people caught it (or they don't think it's funny.)
If it makes you feel any better, I thought your comment was funny.
____________________
I remember reading about their use of his software, but it's not as if government organizations have been honest throughout time. This is exactly why I'm advocating enforcement. A law enforcement agency that applies laws inconsistently is saying, "We'll do whatever we feel like." That's not the purpose of a law enforcement agency.
I live near Aspen, Colorado (you've probably heard of it.) Just last week there was a pretty high profile rape case that ran through the local papers. The man whom they arrested for the crime is actually a Mexican citizen. That doesn't mean that they aren't going to hold him. It is the intent of legal systems to enforce laws within their boundaries.
With respect to the FBI's use of Mr. Sklyarov's program, I don't think that they are in violation of the DMCA. I don't think that there's a provision for the use of circumvention devices (I believe that falls under fair use,) but for the creation of them.
I don't like the DMCA. I don't think that Mr. Sklyarov belongs in jail. I think that what we've done will scare a lot of great Russian Computer Scientists away.
I also hate mobs rushing in and demanding things from courts. If we're going to claim to be a civilized society, we ought to start acting like it.
____________________
Yeah you're still missing the point ... and now you're turning it into an emotional issue.
I'm not saying that you shouldn't disobey an unjust law, I'm saying that law enforcement shouldn't. Unless you're a cop, you're obviously missing the point.
____________________
You've missed the point (this isn't "us versus them" by the way -- it's "us versus us" -- this whole thing makes all of us look incredibly ridiculous.)
Allowing law enforcement to enforce the laws that they like to only those people whom they wish to pursue is MUCH worse than suffering through the trials associated with one bad law.
____________________
And what do you deserve?
____________________
... and why should the FBI make a special case for this man? With reference to usual court times, very little time has elapsed since Sklyarov was arrested.
The whole purpose of the court system is to catch situations like this. Imagine what would happen if it were generally EASY to have charges dropped when an unjust situation arises (read: a situation that doesn't go your way.) Should "Joe Rapist" be released because his mother says that he's a good person and what he did was just "kind of" rape, but not "really harmful?"
What you're advocating is anarchy, in a form. I suggest that you move to the South Pole.
____________________
The "spin" is likely relative to a fixed point, rather than the electron's barycentre.
Like the moon "spinning" around the Earth.
OTOH, the "focusing them into tight beams" comment makes it sound like the magnetic field acts as a funnel to deliver a beam of electrons as a pixel (or a stream of pixels over time.) The "spin rapidly" comment is just superfluous information in that case.
____________________
Quickly ...
... but you've been commenting on its effectiveness.)
... the whole idea is to use the MFC as a foundation, not to shift MFC components around (ala vbscript.) That's why the interface programmers extended MFC objects specifically for their purpose.
DirectX came from a Windows game programming library years ago. MS abandoned WinG when they took up DirectX. From what I know, there wasn't a code merge.
The question about the rasterizing/rendering library that you prefer assumed that you would be implementing your own scenegraph library.
How much time did you spend with the MFC? You didn't just have a "wizard" generate a project skeleton for you, did you? It doesn't sound like you spent much time figuring it out (not that you need to use the MFC
About the VC interface
____________________
ok, I agree with you ... I'm sorry if I took your statement out of context (I really did think that you meant it in the way that I interpreted.)
____________________
I have to admit that the components I used were well-documented (unlike most free software libraries that I've used).
... and it makes using the MSDN library very simple,) but the obsession with "HOWTO"'s needs to end. A "how to" is fine when you're talking about a few short processes. You can't document an entire OS (and integral kernel modules and user libraries) with a big collection of HOWTOs. They need to grasp for a higher level of abstraction.
... the developers of those subsystems wouldn't encourage anyone to write to the interface until it solidified.)
... I know of other cases where they weren't so nice to their "partners." There's the whole OS/2 fiasco with IBM (that's actually in "Showstopper!" -- the book that I suggested to you -- also.)
I think that part of that comes from inexperience. I have enjoyed watching "LinuxDoc" change over the years but it's still got quite a way to go before it "looks like" professional documentation. Part of that is its classification scheme. Granted, the MSDN classification scheme isn't perfect (though the HTML help reader is a huge improvement over the old help system
By the way, you wouldn't happen to have read the Findings of Fact in the U.S. vs. Microsoft case, would you? I recommend chapter V, section B, entitled, "Withholding Crucial Technical Information."
I read it when it originally was released. Since you brought it up, I went back and reread the section that you mentioned. Some things are a little confused to me.
Windows didn't have any subsystem called "RNA" at that time. I think that they mean "RAS" (Remote Access Services.) In cVsB they were talking about MS not giving NS details of their (unreleased at that time) remote network access interface.
While it's arguably illegal (no statement was made in this part of the FoF asserting that the actions described in cVsB were illegal,) it's certainly not a developer-friendliness issue. No company is under any requirements to give out details of their product to implementors before the product is released (you'll see experimental subsystems that are developed for Linux morphing over time also
In short, cVsB covers a political issue, not a documentation one. Their RAS documentation was great once it was released to everybody (I used it to implement a dial-up server and to write a dialer program for a local company.)
Anyway
____________________
Woooh there, tone down the attitude a couple of notchs, I dont recall compiling MFC having much of anything to do with "developement under Windows", to constitute your question.
... so I picked something that I thought we'd both agree on. ;)
... unless you were programming Windows on an 8086, you were probably on a system that made use of the COM in some way.
... you ought to blame the guys who originally wrote it.
... what do you think of D3D as of DX8? Do you like the integration of D3DIM and DDraw? I don't think that anybody ever took Retained Mode seriously but the D3DIM driver interface "standard" has been steadily overtaking OpenGL. Do you prefer OpenGL as an immediate mode rasterizer/renderer?
... I haven't seen any compelling evidence that Microsoft is harmful to developers in general.
Well I couldn't find anything that was relevant to respond to
At the time I was exploring the possibilities of what I could do in windows programming with visulc++, COM was relatively scarce (I dont even recall its existence at the time)
The COM was originally kicked around in the early 80's and was used in the Win3.x (and NT) OS. So
the first time I came across it was in directx 3 programming (which direct3d was also horribly designed and documented)
MS bought DirectX
On a side issue
but the underlying matter is you cant change much in MFC as it is because of some afx libraries of which the source is not shared.
Which libraries are you referring to specifically?
"AFX" was going to be the original TLA for the MFC. It stood for something like "Abstract Foundation Classes" (I'm not really sure where "x" came in -- MS seems to be infatuated with that letter.) Most of the "Afx functions" are actually macro definitions (did you include the MFC browse info file when you were looking up definitions?)
You can change the way that the MFC works, but Microsoft went to significant lengths to allow you to extend it without needing to understand the way that the code works (this isn't devious -- it's saved a lot of people a lot of time.)
As I recall the lamest architecture in MFC was the document view architecture, there was quite a bit of things I wanted to change about it.
That's not an MS only thing either. Doc/view was heralded as a fundamental structure that could be integrated into all applications by a band of academic types. I don't know much about Microsoft deciding to go with Doc/view but it's not integral to the MFC (it's just the used if you use the "AppWizards" -- which are as bad as any other code generator.)
Originally I was thinking I could extend MFC, but I found MFC was not designed to be extended in such a way
You probably didn't spend enough time at it. There are even "project wizards" designed specifically to automate the process of creating a project that extends the MFC in some way (such projects are called "MFC Extension Libraries" I believe.)
When you read the abstract descriptions of the "MFC code philosophy," the actual code itself makes a lot more sense.
Anyway
____________________
Hi, you're not actually addressing the points that I made ... so I'm not going to respond to everything in your post.
I do agree that parts of the MFC are very poorly designed though. However, if you've ever implemented an OLE control container at the base OLE/COM SDK level, you'll really enjoy the actual level of abstraction that you get out of something like the MFC.
... and you can compile the MFC if you want, or the CRT (you get that code too.)
Have you done much development under Windows?
____________________
That should read, "...with developers who aren't developing products that compete with Microsoft's hasn't been one of those things."
No it shouldn't read that either. In fact, not only does MS continously add commonly-implemented features to their OS base code, they have gone out of their way to make sure that idiosyncratic programs used by the majority of the Windows userbase will work on the new iteration of Windows. You should read the book "Showstopper!" to get an idea for what's happened in there in the past.
What sort of software have you written for Windows?
____________________
In all honesty did you expect Microsoft to ever do anyone favours? :-)
... and I'm not trying to say that MS is some kind of benevolent entity (or even that "MS" is a real entity at all.) They've done all sorts of awful things, but being deliberately obscure with developers hasn't been one of those things (though you could probably make a case for the OLE documentation -- but I've actually implemented OLE control containers, scriptable objects, controls, in-place document containers, ...)
They've released source code and documentation for almost every area of their (huge) Operating System. They've certainly got some of the best documentation I've ever seen. Really, if you're a developer, Microsoft not only does favors for you but they treat you like royalty.
I'm sure you're only kidding
Favors do make big profits.
____________________