You can change the Client ID string to whatever you like. I changed mine to a string quite a bit longer than the original GUID. (You never know, it might even cause a buffer overflow or trigger another bug on some dodgy web server. Heh.)
Of course, the best thing to do is for everyone to use the same ID.:)
I found it interesting that Microsoft's employees have acknowledged problems and said that they're working to fix them:
Microsoft acknowledges that it needs to do a better job of making the systems it sells more secure. The Redmond, Wash.-based company has begun offering free virus-related support, intensified its checks for holes and convened an industry working group on how to create a world of "trusted computing."
"We're going to make our systems more resistant and more resilient," said Microsoft's director of security assurance, Steve Lipner. "We want to be unquestionably, unequivocally the best."
[snip]
Microsoft's Lipner agreed that there are trade-offs between features customers want and security. He said the company has changed its approach.
New versions of Outlook block incoming mail from spreading through the address book, and the Information Server is now turned off within the network server software.
"If the question is, 'is there tension between feature-rich, usable products and secure products?' the answer is 'absolutely,'" Lipner said. "We're absolutely moving that line more toward security, and if we have to give up some functionality or ease of use, we're paying that price."
This is markedly different from the previous Microsoft responses on security. Based on the previous responses, I would have expected them to deny that the problem was with their software, and say that the problem was with rogue hackers (running Linux or something... God only knows what those Linux types get up to;-)). But here this guy says right out that their software needs to be more secure. Is this really a shift in company-wide policy? Has MS really had a change of heart? Could it be that he's trying to talk up Microsoft's commitment to security without doing anything? Or could he want to improve the influence and size of his little corner of the world? Judging by the spate of dodgy XP patches, something went wrong, and possibly in his department. It would be interesting to read a full interview which really got into the nitty gritty on what happened around some of the recent problems. Of course, the odds of Lipner agreeing to such an interview are pretty slim.
It's similar, though not identical. This is the relevant section of the Delphi 6 license:
8. AUDIT RIGHTS
You agree to keep all usual and proper records and books of
account and all usual and proper entries relating to each
installation, copy and authorized user of the Software.
Borland may cause an audit and/or inspection to be made of
your applicable records and facilities in order to verify
your compliance with the terms of this License Agreement.
Within thirty (30) days of notice by Borland to you of any
error or omission disclosed by such audit, you will make
prompt adjustment and reimbursement to Borland of such error
or omission. Any such audit or inspection will be conducted
by an audit and/or inspection team selected by Borland
(other than on a contingent fee basis). Any audit and/or
inspection will be conducted during regular business hours
at your facilities, with five (5) days written notice. You
agree to provide Borland's designated audit or inspection
team access to the relevant records and facilities and to
otherwise cooperate with such audit or inspection team. Any
such audit and/or inspection will be paid for by Borland,
provided, however, that in the event that any such
examination discloses a shortfall in payment of more than
five percent (5%) for any quarter, you agree to (i) pay or
reimburse Borland for the reasonable expenses of the
examination, as determined in good faith by the parties at
the completion of the examination, and (ii) immediately
remit payment to Borland for the full amount of any
disclosed shortfalls (in addition to the reasonable expenses
for such examination).
Sorry for replying to my own comment, but I'd just like to correct my last statement: All I can say is that I'm glad they haven't put restrictions on transferring (reselling 2nd hand) the software.
Borland is only willing to grant you this License if you obtained the Product from Borland or a Borland authorized reseller. If you obtained the Product from any other source you may not install or use the Product.
The bit about registering products is in section 8 (standard for all new Borland products):
8. REGISTRATION. You must register the Product with
Borland as a condition to your rights to use the Product.
You will be prompted to register the Product at the time of
your installation or first use of the Product, at which time
you will be notified (or directed to online resources
explaining) how registration information provided by you
may be used and you will be afforded the opportunity to
opt out of certain uses of such information.
This isn't the first time that Borland has made their licenses "unreasonable". Many posters have pointed out that in the past, Borland had some stupid clause that limited the quatntity of/charged you for distributing programs created with it. However, more recently (starting with Delphi 6), they have made registration compulsory in the license. This means that in order to legally distribute software created with the product, you must register the product with them, give them your name, address, phone, email, etc. and the like. The registration is not enforced (at least in Delphi 6), but the splash screen has a red "unregistered" notice down the bottom if you haven't registered.
Now, I really like Borland's products, but I dislike being forced to do anything out of the ordinary by the license, even though I have registered Borland products in the past. All I can say is that I'm glad they haven't put restrictions on transferring (reselling 2nd hand) the software.
All they'll do is emasculate the pro version to make a home version, like they did with XP pro and XP home. If x86-64 looked like it would be popular with home users, you can bet it wouldn't take more than a few months for them to get a home version out.
It's possible to do something like "first 2GB/month free" and then charge for downloads above that. For example, Telstra (Australia's half-government telco), has the following pricing for its "Freedom Standard" plan (for residential users only, all prices in Australian dollars):
$67.00 per month fee (includes 3GB upload/download combined)
Bandwidth is capped to 256kbps downstream/64kpbs upstream
If you go over 3GB/month, the extra is charged at 18.90 cents per MB up to 5 GB and 17.50 cents per MB after 5 GB (this can get REALLY expensive on a cable modem).
And on your point about mobile phones: In most non-North American countries, the caller pays (and the rates are much more reasonable). To my knowledge, there's no laws about telemarketers calling mobile phones here, but they don't do it anyway because it'd annoy people more than anything else. I'm not sure how much bandwidth Code Red and Nimda take up, but most emails (including spam) are not multi-megabyte downloads, so I don't think you'd really pay a lot for that, even at fairly high per-MB charges.
I think this is because phone companies bill you per call. There is a lot of complexity in billing individuals correctly based on how long the call is, where it is to (local, mobile, interstate, international), and also applying any special deals or offers that they have. There's somewhat less complexity in billing a flat rate for bandwidth - data is data and is billed at the same rate regardless of where it's come from or going to. If you were billed per TCP connection in a similar way, it'd be a nightmare.
Actually, whether it's done by the graphics card depends on what your graphics card is. I wrote some code to do some alpha blending, and the routines in Win2K are slooow (and I have a GeForce 2, which I'd hope does alpha blending on the video card). I then implemented it "manually", i.e. blending each pixel in a loop, and it was about the same speed. With some profiling, I found that the bottleneck was a Windows GDI function, which could be avoided. So the upshot is that you can do it at least 10 times faster using the processor and a bit of optimisation than you can using the Win2K alpha routines. And it works on other versions of Windows as well.
I agree with your points, but I'm just wondering if you (and a number of other posters) noticed this minor detail:
This is a private civil case against Microsoft, not the DOJ case, and not the case by various states against Microsoft.
There, I've gotten that off my chest. It's not the role of individuals to propose remedies or restrictions such as those you've listed. I think the plaintiffs were accusing MS of overcharging for its operating systems. Given what they were accused of, this settlement is appropriate. I agree that it does nothing to curtail their monopoly, but that's not what the plaintiffs want.
Re:It means the US has taken over the world
on
Defining Globalism
·
· Score: 1
In Australia recently we have seen moral censorship - a Labour MP forced to retract his statement saying US farening policy was, at least in part, to blame for todays situation. Rigvht or wrong, he shold have had the right to say this, yet he was publicly forced to retract by his own party.
There's a reason why this happened: he was speaking in public, representing his party, and what he said was not the official policy of the ALP (Australian Labor Party). Yes, he should be allowed to say what he believes, but the fact of party politics is that when you are representing the party (especially in the middle of an election campaign), you push the party policy before your own. Not free speech you say? He can always run as an indepedent, or wait till after the election to speak out. If the party is helping him win a seat, then the party as a whole doesn't want candidates to show division in the party. See Bob Katter (North Queensland MP in Kennedy) - he had opinions different to that of his party, and it wasn't about foreign policy. Frankly, I don't see why he would be made to retract his comment because of pressure from the US.
As far as I am aware, most people in Australia believe that the US should be able to retaliate against acts such as what we saw on the 11th of September. They did deal with the Taliban on a diplomatic level before declaring war, and, after seeing the press conferences and responses of the Taliban ambassadors myself, I agree with this decision. Note: I was not forced, pressured or paid by the US government to believe this. Have you considered that the Pakistani government and the political parties in Australia might think, as I do, that the types who fly civilian passenger jets into buildings are not reasonable people and should be stopped?
I've noticed this too - I actually think it's something to do with moderators being afraid of meta-moderators. Or maybe its moderator peer pressure/herd mentality: not wanting to stand out from the crowd (even when they're anonymous).
Actually, some Windows programs catch faults, including Access Violations and the like. Debuggers often report "First-chance exceptions", which means that the program stuffed something up but either had a handler or hadn't done it over and over again in the same spot. (I'm not exactly sure on the details here, but since when does that ruin a good/. post?) For example, I was doing some work with Outlook add-ins and one or two of the DLLs that it loads reported "first-chance exceptions" during normal startup. So, yes, it does happen with Windows programs, but you need a debugger (i.e. the messages are pushed under the carpet).
I generally don't like MFC, and prefer Borland's VCL (and CLX libraries). It is better thought out and addresses the points you brought up, and many other annoyances:
It uses obscure, undocumented macros to implement critical functionality. The only way to really use MFC is through the wizards, which take care of the macros for you. The VCL uses no macros, as Delphi doesn't have them. This makes the source code far more readable. Further, it's well commented, clean code, and also documented in the help files for the most part.
Another reason: the Win32 API and MFC are both far to complex to remember. The VCL uses a consistent and logical approach to objects. For instance, list boxes, combo boxes, and listviews all have an "Items" property which acts consistently, and can all be used as base classes in a fully OO system at many points along the chain. You can program in it without remembering things like, "now, does this function return zero or -1 for failure?" and the like.
Without MSDev's annoying-as-all-hell code completion, you'd spend even more time reading MSDocs(tm) than already. This is a UI issue, but again I prefer Borland's UIs. The Code completion is actually very intelligent, and you don't have to compile your code first.
Some other reasons why it's better IMHO:
The VCL and CLX uses properties! I know this is a small thing, and not compiler-portable, but code looks so much nicer.
The CLX library (kindof the successor to the VCL) is cross-platform. It compiles on Linux (x86) as well as Windows.
MFC doesn't abstract controls away enough compared to the VCL. Most controls have only very basic wrappers around the Win32 API, and using MFC isn't that much better than the API. (I really find it hard to believe that the Dev Studio people couldn't think of many major improvements to the API when they're in a fully OO environment.)
The VCL/CLX streaming and loading system puts MFC to shame. MFC is still using dialog templates, which were passable for Windows 3.0, but aren't suitable for modern visual programming styles.
It adds internal messages for component writers that fill out the gaps in the API. For example, there are messages before and after important property changes, so you can veto the change if necessary.
You can create controls which integrate into the IDE much more cleanly than in Visual Studio, using property editor classes and the like.
You get waaaayyyy more components in Delphi/Kylix/C++ Builder/JBuilder than in most other similar products. (As in, over 150 components in Delphi 6 Pro that do everything from GUI stuff to your flavour of database API to pre-built base classes for SMTP servers.) You can use visual development when you want it, or program these components like Database objects if you'd prefer.
All in all, I'd suggest that you give these tools a look if you can. I think C++ Builder opens and compiles many Visual C++/MFC projects (but I'm not sure), so you can keep some degree of compatibility if you're tied to Microsoft code.
Much of Microsoft's problems don't just stem from multiple versions and fixing bugs (although I agree, these are significant), but badly thought out design in the first place.
Also, when there is an opportunity to make a clean break (i.e. the Win32 API), they only make half the changes they should or could. Have you seen the number of functions which end in "Ex" in the Win32 API? Ever noticed how the Win9x series is full of 16-bit user interface code? Or how only half of the NT kernel objects are supported under Win9x? In DirectX, it took between 4 and 8 major versions of DirectX to create something which was really worthwhile (depending on your opinion), and major changes weren't implemented when they should have been.
In regards to using COM, this helps versioning, but does not help the bad design problem. Even with full versioning, COM interfaces still have reserved fields in them, which is unnecessary if you're bundling all the previous versions.
Besides, not all compatibility problems can be solved by COM etc. Microsoft are getting better at providing slicker interfaces, but I don't feel that the underlying design is improving as it should be. For example, using Automation objects (which is a disgusting kludge for VB "programmers", to put it nicely) in Office apps is still a pain. (In particular, Outlook 2000's object model and MAPI implementation is inconsistent and buggy as hell.)
So yes, versioning does help alleviate backwards compatibility problems where they can't be avoided, but nothing is a substitute for good design.
Re:Whew! It's fun to be over your head.
on
Itanium Update
·
· Score: 2, Informative
I think I've figured out what the whole 64-bit thing is about. It means that each instruction (right term?) has more capacity to carry data. This doesn't necessarily mean that it will be twice as fast, of course, because not all instructions are that large.
Yup, exactly right. It means that the CPU tends to deal mainly with 64-bit (8 byte) chunks of data at a time, instead of the more common 32-bit chunks. As far as programming goes, not everything needs larger instructions. For example, to program a user interface, 32 bit integers are quite sufficient for most purposes (unless you have over 4 billion items in a listbox or something). If you only need to store a number from 1 to 10, using 8 bytes instead of 4 is a waste of memory. (This happens a lot.) However, it is useful for many operations, such as multimedia, games, DSP applications, crypto, etc. etc. These applications would run faster on a 64-bit processor because they can use 1 instruction to manipulate a 64 bit number instead of 2 or more that are necessary to do the same thing on a 32-bit processor.
The other reason to use 64-bit processors is that it makes it easier to use 64-bit memory addressing. (For various reasons, it's a little easier to program if memory addresses are the same size as integers.) If you have more than 4 GB of RAM, (or you want more than a 4GB address space more precisely) then you need larger pointers. At the moment x86 programs use 32 bit pointers, but the Pentiums and above actually have 36 address lines, so they can use up to 64GB of RAM. Anyway, a 4 GB address space will be fairly cramped in about 10 years, so it's time they bumped that up a bit.
Intel has an emulation mode in the IA-64 series to allow people to run existing 32-bit programs, but at the moment it's dog slow. (It runs at about the speed of a Pentium 133, if that, when the processor is running at around 700 MHz.) The IA-64 architecture is completely different from the current IA-32 (x86) stuff. I get the impression that the 32 bit emulation doesn't use as many tricks as the existing processors to get programs to run faster. They're also overhauling the motherboard/BIOS stuff that's been around for a long while. (Some of it since the original IBM PC.)
Of course, just because a processor can do 64-bit operations, it doesn't mean that it's actually faster than its predecessors. For instance, IA-64 has a few weaknesses:
It doesn't have an integer multiply instruction. You have to convert to floats and back if you don't want to program the multiply using shifts or something.
It doesn't support a floating-point type with better precision than 64 bits (called "double" in many programming languages). This makes it unsuitable for high-precision calculations. Current IA-32 chips can use up to 80 bit floating point values.
Intel seems to have tried to include every feature (except see above) but the kitchen sink in the instruction set. Loads of processor hints about instruction grouping, branch prediction, cache hints, and heaps of other stuff. This makes quite a complex design that could be difficult to implement and write really good compilers for. (Then again, Intel could always sell their own...)
And all of the space-heater comments.
Anyway, it remains to be seen what effect the above points will have on its acceptance.
You make a good point. I'd like to add to this: a verdict of "not guilty" does not mean the same as "innocent". "Not guilty" means that the judge/jury did not want to pronounce the defendant. It does not mean total (or even partial) innocence.
Sorry, that's 29 people, not 1.
The stats suggest that the site's been up for less than a week, too. Still, even if those 29 people saw it yesterday, a factor of >100 improvement in a day ain't bad;).
Recently, there has been rumors about terrorist using steganography to hide their communication and secret plans....[snip]...So far we have analyzed 2 Million images obtained from ebay auctions. So far not a single hidden message could be found.
Hehe. Some people really have too much time/computing power to waste:).
<tounge-in-cheek>
I think it's a good thing that they haven't found anything yet, but not because I'm concerned about terrorists communicating over the Internet. Imagine some of the comments in the mainstream media: "Terrorists use Internet to send hidden messages to children!!" and "Popular Internet site taken over by terrorists!!". This would fit in nicely with senators learning about the dangers in things like file-sharing programs. Terrorists/pornographers/that sleazy guy across the road could be using Gnutella to communicate to other shady characters this very minute! </tounge-in-cheek>
Why, yes, in fact, I do believe that if I buy something, it's mine.... But I'm not at all averse to uninstalling software from an old machine and putting it on a new one
A good point - even basic consumer protection legislation doesn't seem to apply to software. Allowing people to uninstall and reinstall software is, frankly, pretty basic. (In the Good Ol' US of A, they're trying to do exactly the opposite with the UCITA. Presumably, software companies want to create legally enforcable license agreements where you agree to ritually sacrificing your first born child on an altar to Mammon...) Why can software companies get away with disclaiming even warranties such as merchantibility or the like? Let's face it - it's not as if consumers have a choice to get around this type of practice. Virtually every software company that sells software for under $10K attempts to avoid as much basic consumer protection stuff as it can. Moreover, the "licenses" attempt to get the company out of cases where it may even have been willfully negligent and the like.
In regards to Felton, have a look at the TechnetCast Broadcast on August 15 on that topic;-).
To establish your own private and secure personalized support web page where you can interact with our award-winning Microsoft Support professionals, first time users will need to (1) sign-up for Passport or sign-in to Passport and (2) complete a profile.
My question here is, when were Microsoft's support professionals ever award-winning? Awards for most useless perhaps? I'm sorry, but I've heard nothing particularly good said about Microsoft tech support, except that if they really don't know the answer, they might not slug you with a $200 fee. Never mind that you've actually purchased the software and are a competent computer user or anything. (For anyone who hasn't read it, have a look at Microsoft Technical Support vs. the Psychic Friends Network.)
The computer industry NEEDS WinXP to be launched in October to help fuel consumer and business buying, thus giving the tech companies a much-needed boost. If XP were blocked, the computer industry might not recover at all this year.
Very true. I read (I think in a PC magazine) that Samsung is depending on the sale of Windows XP to boost their flagging RAM sales. They publicly acknowledged that this was because XP is much more of a memory hog than other versions of Windows. (Sorry, but I can't find the link.)
It is possible to attach a form and/or VB Script to a message and have it run automatically when someone receives it. (I don't think this works to the same extent in Outlook 2000 after the security update is applied, though.) As was pointed out somehwere else in this thread, Outlook does this itself to do things like organise meetings.
Personally, I don't see the point of having this "feature". In my experience, VBScript is incredibly un-powerful and only useful in a limited number of situations (like organising meetings, or writing virii;)). Furthermore, I don't see why Outlook ever should automatically run unsigned macros or (signed) macros from someone you don't know.
Of course, the best thing to do is for everyone to use the same ID. :)
They have done actually done this (from the license at freshmeat):
The bit about registering products is in section 8 (standard for all new Borland products): Geez, I hope they fix up this soon.Now, I really like Borland's products, but I dislike being forced to do anything out of the ordinary by the license, even though I have registered Borland products in the past. All I can say is that I'm glad they haven't put restrictions on transferring (reselling 2nd hand) the software.
All they'll do is emasculate the pro version to make a home version, like they did with XP pro and XP home. If x86-64 looked like it would be popular with home users, you can bet it wouldn't take more than a few months for them to get a home version out.
$67.00 per month fee (includes 3GB upload/download combined)
Bandwidth is capped to 256kbps downstream/64kpbs upstream
If you go over 3GB/month, the extra is charged at 18.90 cents per MB up to 5 GB and 17.50 cents per MB after 5 GB (this can get REALLY expensive on a cable modem).
And on your point about mobile phones: In most non-North American countries, the caller pays (and the rates are much more reasonable). To my knowledge, there's no laws about telemarketers calling mobile phones here, but they don't do it anyway because it'd annoy people more than anything else. I'm not sure how much bandwidth Code Red and Nimda take up, but most emails (including spam) are not multi-megabyte downloads, so I don't think you'd really pay a lot for that, even at fairly high per-MB charges.
I think this is because phone companies bill you per call. There is a lot of complexity in billing individuals correctly based on how long the call is, where it is to (local, mobile, interstate, international), and also applying any special deals or offers that they have. There's somewhat less complexity in billing a flat rate for bandwidth - data is data and is billed at the same rate regardless of where it's come from or going to. If you were billed per TCP connection in a similar way, it'd be a nightmare.
Actually, whether it's done by the graphics card depends on what your graphics card is. I wrote some code to do some alpha blending, and the routines in Win2K are slooow (and I have a GeForce 2, which I'd hope does alpha blending on the video card). I then implemented it "manually", i.e. blending each pixel in a loop, and it was about the same speed. With some profiling, I found that the bottleneck was a Windows GDI function, which could be avoided. So the upshot is that you can do it at least 10 times faster using the processor and a bit of optimisation than you can using the Win2K alpha routines. And it works on other versions of Windows as well.
As far as I am aware, most people in Australia believe that the US should be able to retaliate against acts such as what we saw on the 11th of September. They did deal with the Taliban on a diplomatic level before declaring war, and, after seeing the press conferences and responses of the Taliban ambassadors myself, I agree with this decision. Note: I was not forced, pressured or paid by the US government to believe this. Have you considered that the Pakistani government and the political parties in Australia might think, as I do, that the types who fly civilian passenger jets into buildings are not reasonable people and should be stopped?
I've noticed this too - I actually think it's something to do with moderators being afraid of meta-moderators. Or maybe its moderator peer pressure/herd mentality: not wanting to stand out from the crowd (even when they're anonymous).
Actually, some Windows programs catch faults, including Access Violations and the like. Debuggers often report "First-chance exceptions", which means that the program stuffed something up but either had a handler or hadn't done it over and over again in the same spot. (I'm not exactly sure on the details here, but since when does that ruin a good /. post?) For example, I was doing some work with Outlook add-ins and one or two of the DLLs that it loads reported "first-chance exceptions" during normal startup. So, yes, it does happen with Windows programs, but you need a debugger (i.e. the messages are pushed under the carpet).
- It uses obscure, undocumented macros to implement critical functionality. The only way to really use MFC is through the wizards, which take care of the macros for you. The VCL uses no macros, as Delphi doesn't have them. This makes the source code far more readable. Further, it's well commented, clean code, and also documented in the help files for the most part.
- Another reason: the Win32 API and MFC are both far to complex to remember. The VCL uses a consistent and logical approach to objects. For instance, list boxes, combo boxes, and listviews all have an "Items" property which acts consistently, and can all be used as base classes in a fully OO system at many points along the chain. You can program in it without remembering things like, "now, does this function return zero or -1 for failure?" and the like.
- Without MSDev's annoying-as-all-hell code completion, you'd spend even more time reading MSDocs(tm) than already. This is a UI issue, but again I prefer Borland's UIs. The Code completion is actually very intelligent, and you don't have to compile your code first.
Some other reasons why it's better IMHO:- The VCL and CLX uses properties! I know this is a small thing, and not compiler-portable, but code looks so much nicer.
- The CLX library (kindof the successor to the VCL) is cross-platform. It compiles on Linux (x86) as well as Windows.
- MFC doesn't abstract controls away enough compared to the VCL. Most controls have only very basic wrappers around the Win32 API, and using MFC isn't that much better than the API. (I really find it hard to believe that the Dev Studio people couldn't think of many major improvements to the API when they're in a fully OO environment.)
- The VCL/CLX streaming and loading system puts MFC to shame. MFC is still using dialog templates, which were passable for Windows 3.0, but aren't suitable for modern visual programming styles.
- It adds internal messages for component writers that fill out the gaps in the API. For example, there are messages before and after important property changes, so you can veto the change if necessary.
- You can create controls which integrate into the IDE much more cleanly than in Visual Studio, using property editor classes and the like.
- You get waaaayyyy more components in Delphi/Kylix/C++ Builder/JBuilder than in most other similar products. (As in, over 150 components in Delphi 6 Pro that do everything from GUI stuff to your flavour of database API to pre-built base classes for SMTP servers.) You can use visual development when you want it, or program these components like Database objects if you'd prefer.
All in all, I'd suggest that you give these tools a look if you can. I think C++ Builder opens and compiles many Visual C++/MFC projects (but I'm not sure), so you can keep some degree of compatibility if you're tied to Microsoft code.Also, when there is an opportunity to make a clean break (i.e. the Win32 API), they only make half the changes they should or could. Have you seen the number of functions which end in "Ex" in the Win32 API? Ever noticed how the Win9x series is full of 16-bit user interface code? Or how only half of the NT kernel objects are supported under Win9x? In DirectX, it took between 4 and 8 major versions of DirectX to create something which was really worthwhile (depending on your opinion), and major changes weren't implemented when they should have been.
In regards to using COM, this helps versioning, but does not help the bad design problem. Even with full versioning, COM interfaces still have reserved fields in them, which is unnecessary if you're bundling all the previous versions.
Besides, not all compatibility problems can be solved by COM etc. Microsoft are getting better at providing slicker interfaces, but I don't feel that the underlying design is improving as it should be. For example, using Automation objects (which is a disgusting kludge for VB "programmers", to put it nicely) in Office apps is still a pain. (In particular, Outlook 2000's object model and MAPI implementation is inconsistent and buggy as hell.)
So yes, versioning does help alleviate backwards compatibility problems where they can't be avoided, but nothing is a substitute for good design.
Yup, exactly right. It means that the CPU tends to deal mainly with 64-bit (8 byte) chunks of data at a time, instead of the more common 32-bit chunks. As far as programming goes, not everything needs larger instructions. For example, to program a user interface, 32 bit integers are quite sufficient for most purposes (unless you have over 4 billion items in a listbox or something). If you only need to store a number from 1 to 10, using 8 bytes instead of 4 is a waste of memory. (This happens a lot.) However, it is useful for many operations, such as multimedia, games, DSP applications, crypto, etc. etc. These applications would run faster on a 64-bit processor because they can use 1 instruction to manipulate a 64 bit number instead of 2 or more that are necessary to do the same thing on a 32-bit processor.
The other reason to use 64-bit processors is that it makes it easier to use 64-bit memory addressing. (For various reasons, it's a little easier to program if memory addresses are the same size as integers.) If you have more than 4 GB of RAM, (or you want more than a 4GB address space more precisely) then you need larger pointers. At the moment x86 programs use 32 bit pointers, but the Pentiums and above actually have 36 address lines, so they can use up to 64GB of RAM. Anyway, a 4 GB address space will be fairly cramped in about 10 years, so it's time they bumped that up a bit.
Intel has an emulation mode in the IA-64 series to allow people to run existing 32-bit programs, but at the moment it's dog slow. (It runs at about the speed of a Pentium 133, if that, when the processor is running at around 700 MHz.) The IA-64 architecture is completely different from the current IA-32 (x86) stuff. I get the impression that the 32 bit emulation doesn't use as many tricks as the existing processors to get programs to run faster. They're also overhauling the motherboard/BIOS stuff that's been around for a long while. (Some of it since the original IBM PC.)
Of course, just because a processor can do 64-bit operations, it doesn't mean that it's actually faster than its predecessors. For instance, IA-64 has a few weaknesses:
- It doesn't have an integer multiply instruction. You have to convert to floats and back if you don't want to program the multiply using shifts or something.
- It doesn't support a floating-point type with better precision than 64 bits (called "double" in many programming languages). This makes it unsuitable for high-precision calculations. Current IA-32 chips can use up to 80 bit floating point values.
- Intel seems to have tried to include every feature (except see above) but the kitchen sink in the instruction set. Loads of processor hints about instruction grouping, branch prediction, cache hints, and heaps of other stuff. This makes quite a complex design that could be difficult to implement and write really good compilers for. (Then again, Intel could always sell their own...)
- And all of the space-heater comments.
Anyway, it remains to be seen what effect the above points will have on its acceptance.Sorry...
That should be "...pronounce the defendant guilty". There.
You make a good point. I'd like to add to this: a verdict of "not guilty" does not mean the same as "innocent". "Not guilty" means that the judge/jury did not want to pronounce the defendant. It does not mean total (or even partial) innocence.
Sorry, that's 29 people, not 1. The stats suggest that the site's been up for less than a week, too. Still, even if those 29 people saw it yesterday, a factor of >100 improvement in a day ain't bad ;).
BTW, it seems to be "her" site stats: it says to email the webmistress.
Hehe. Some people really have too much time/computing power to waste
<tounge-in-cheek>
I think it's a good thing that they haven't found anything yet, but not because I'm concerned about terrorists communicating over the Internet. Imagine some of the comments in the mainstream media: "Terrorists use Internet to send hidden messages to children!!" and "Popular Internet site taken over by terrorists!!". This would fit in nicely with senators learning about the dangers in things like file-sharing programs. Terrorists/pornographers/that sleazy guy across the road could be using Gnutella to communicate to other shady characters this very minute!
</tounge-in-cheek>
A good point - even basic consumer protection legislation doesn't seem to apply to software. Allowing people to uninstall and reinstall software is, frankly, pretty basic. (In the Good Ol' US of A, they're trying to do exactly the opposite with the UCITA. Presumably, software companies want to create legally enforcable license agreements where you agree to ritually sacrificing your first born child on an altar to Mammon...) Why can software companies get away with disclaiming even warranties such as merchantibility or the like? Let's face it - it's not as if consumers have a choice to get around this type of practice. Virtually every software company that sells software for under $10K attempts to avoid as much basic consumer protection stuff as it can. Moreover, the "licenses" attempt to get the company out of cases where it may even have been willfully negligent and the like.
In regards to Felton, have a look at the TechnetCast Broadcast on August 15 on that topic ;-).
My question here is, when were Microsoft's support professionals ever award-winning? Awards for most useless perhaps? I'm sorry, but I've heard nothing particularly good said about Microsoft tech support, except that if they really don't know the answer, they might not slug you with a $200 fee. Never mind that you've actually purchased the software and are a competent computer user or anything. (For anyone who hasn't read it, have a look at Microsoft Technical Support vs. the Psychic Friends Network.)
Very true. I read (I think in a PC magazine) that Samsung is depending on the sale of Windows XP to boost their flagging RAM sales. They publicly acknowledged that this was because XP is much more of a memory hog than other versions of Windows. (Sorry, but I can't find the link.)
Personally, I don't see the point of having this "feature". In my experience, VBScript is incredibly un-powerful and only useful in a limited number of situations (like organising meetings, or writing virii ;)). Furthermore, I don't see why Outlook ever should automatically run unsigned macros or (signed) macros from someone you don't know.