Domain: msdn.com
Stories and comments across the archive that link to msdn.com.
Comments · 3,271
-
Re: Wonderful
By managed code, I was referring specifically to the CLI code used by MS.NET. I think MS invented this term, but I'm not certain. Anyway, that's just definitions... replace the "managed code" reference with "Code executed by any CLI compliant interpreter I've used" if you want.
This is supposedly the definition: http://blogs.msdn.com/brada/archive/2004/01/09/489 25.aspx
It seems to refer specifically to .NET: "Managed code is code that has its execution managed by the .NET Framework Common Language Runtime." -
Re:Afraid?
They actually already do this for compatibility testing. They release Virtual PC VHD's that let you run their os in a virtualized state. And from my knowledge it works on OS x or at least Virtual Pc 2007 does.
VHD images http://msdn2.microsoft.com/en-us/vstudio/aa700831. aspx For New VS
http://blogs.msdn.com/ie/archive/2007/04/17/ie7-vi rtual-pc-image-and-ie6-virtual-pc-image-refresh.as px
for XP sp2.
Of course they do expire but new ones are posted when they do.
I run them under VPC 2007 on 64 bit vista and they do just fine. I just wish I could figure out the usb pass through for my usb phone and my ipod. Other then that with additions its a free version of xp to beat on :) and use to test. -
Re:not component based?
Pretty much all that you have stated here could also refer to MS Windows.
- You can listen for notifications of file updates on Windows.
- If you didn't mind Microsoft's indexing service (which is quite serviceable) but wanted to write your front end, you can write your own GUI to do customized searches. There are many different ways that you can do this depending on how high level the language is that you use.
- If you develop a file format that Microsoft's content indexer can't recognize, you can implemented your own IFilter. These are used by many Microsoft Search programs, including the Indexing Service (dating back to Windows NT 4.0), Desktop Search, IIS, Sharepoint, Exchange and SQL Server. Here are some IFilters to download and try.
Like most people here, I really can't see what Google are on about. What can Google offer that can't be achieved with Microsoft's solution? Would Google Desktop Search also allow the Windows standard IFilter interface, or would all the third party solutions that use this interface suddenly stop working once Google's service is switched on?
I always thought that the search has got more useless with every version of Windows. In XP, I have copied a variable name from some source code and then pasted it into the search only to find no matches. It should have at least found the file that I copied the text from!
However, I have always switched off the Indexing Service so I didn't slow the system down for those fairly rare occasions that I need to search. Maybe this would solve my problem. After this discussion, I have been inspired to give the Indexing Service a try again. And I am certainly looking forward to trying the search in Vista. Thanks, Google!
-
Re:this library may not be 'free'
If it's simulation you want, then you should also check out the Microsoft Robotics Studio.
http://msdn2.microsoft.com/en-us/robotics/default. aspx
http://beta.channel9.msdn.com/Media/Microsoft-Robo tics-Tour-CCR-VPL-Simulation-Part-1/
It pains me to praise Microsoft, but from the Channel 9 video it looks pretty impresive - especially the simulation capabilities. -
Actually, they were...MS Paint, Notepad and Calc NEVER get updated Actually, both Notepad and Calc got updated for XP -- Notepad only slightly (gained replace / replace all / goto); but Calc was completely rewritten: it now does basic operations -- addition, subtraction, multiplication, division -- to infinite precision (i.e. it no longer uses floating point), and things like square roots are now done to 32 bits of precision.
As for Paint, may I recommend the excellent Paint.NET, which was "mentored" by Microsoft (what that means in reality, I have no idea) and released under the open-source MIT license (which I assume is the reason they can't bundle it with Windows). -
Re:Yeah... Are they going to indemnify us?The new Windows Display Drive Model in Vista, which underlies Aero, is a lot more than just a pretty shell. Microsoft have been working with the graphics hardware manufacturers to enable GPUs to be virtualised/managed by the OS, in the way that CPUs have long been, i.e. through virtual memory and interruptability (for scheduling). Full interruptability requires hardware support in the GPU, but limited interruptability is supported on all hardware. For more details, see: http://blogs.msdn.com/greg_schechter/archive/2006
/ 04/02/566767.aspxMoving to full interruptability and virtual memory for the GPU is a huge step, but as new GPUs with full support for interruptability begin to catch on, and software moves from DirectX 9 to 10, the benefits will become more and more apparent.
-
Re:But how do you explain the M$ fanboys?I love this arguement, because it is one of the more nonsensical things I see on Slashdot, and I see ALL THE DAMN TIME
Microsoft has paid for positive comments elsewhere, including Wikipedia. http://www.informationweek.com/industries/showArt
i cle.jhtml?articleID=196903015.They're trying to drum up support through their own blogs http://blogs.msdn.com/ausdev/, there was the fake support letters during their anti-trust prosecution, the fake Zune fansites, the fake Switchers campaign and a dozen more.
Why would Slashdot be immune?
-
Re:"This could spell the end of Microsoft's contro
Maybe they special case Ubuntu. E.g. consider.
Windows Developer: We tested Ubuntu with IE4Linux and we can catch it. It claims to be Win98 and it doesn't have the undocumented secret handshake to check for validity. And it hides the Bios too. If you look at the CS values Wine uses the same selector but you can't use that. But if you look at CS:Hardcoded_offset then all versions of Windows have some code that is not present in Wine. So we check for that.
Lawyer: Hmm. Could they change Wine so it passes
Windows Developer: Yeah, they could just set up a copy of the code code in Windows so the check is fooled. But that code is protected by copyright and patents.
Lawyer. So we release code that depends on undocumented details, they reverse engineer and fix and we sue them? Excuse me, I need to make a phone call. ...
Lawyer. Take the code out.
Windows Developer. What? I spent all night writing that! Then we'd authenticate Linux as genuine Windows. Why do we have to provide updates to people that didn't buy the software?
It's actually the same case as the AARD code which the lawyers got the developers to disable in the release build. Probably they could detect Wine and Ubuntu using undocumented details but the problem is that it would be artificial tieing updates to IE and Office to Windows which is illegal. In the AARD case, they disabled it really close to production by changing one byte in the data segment to minimise the risk. So technically it was possible - the code worked in Beta, but someone decided that the legal risk was too great for the release version.
There is some evidence that Microsoft developers are aware of these sorts of legal issues
http://blogs.msdn.com/oldnewthing/archive/2007/02/ 01/1573160.aspx#1582487 -
Re:You are almost exactly wrong
I believe Cleartype is disabled by default in Windows XP versions up to Service Pack 2. It's now enabled by default.
Google "cleartype vs mac" to find tons of comparisons. I can't really find any 2 articles that come to the same conclusion.
For a very fascinating video discussion of font design and differences between Mac and Windows font rendering check out the link below. It's made by Microsoft but is not biased and they give lots of respect to Mac and other typeface platforms. http://channel9.msdn.com/showpost.aspx?postid=1467 49
And no dissing the graphical prowess of Tandy!!! -
Re:You are almost exactly wrong
Thanks for enlightening me on the particulars of both proprietary rendering engines. The point about the boundaries of antialiased fonts is extremely interesting and appears perfectly valid from my observations.
I just remembered the resource I consulted for my information about the differences between Apple and MS (and other) typeface rendering engines - an hour-long webcast by Microsoft's typography team discussing font rendering in WinXP and Vista and some interesting tidbits on the new Office 2007 fonts. I have only a passing interest in desktop publishing but I was absolutely riveted by this webcast. http://channel9.msdn.com/showpost.aspx?postid=1467 49 -
Re:Review summary: "It's not the same as FireFox"
In my experience, the only "Mac users" who prefer Firefox to Safari are people who never used a Mac until recently. And let's be honest—Firefox would be okay for a PC application, but by Mac standards, it's absolutely terrible. Firefox is a very literal-minded PC port that doesn't think or act like a native Mac application. I remember the same happening with the Mac port of Word 6, which was designed to approach tasks the same way as the Windows version. Native Mac users considered it shit, but ex-PC users of that era didn't seem to mind.
If you're serious about entering the Mac market, the key is not to just "port" it, but to attempt a faithful but thorough translation. Sometimes you'll need to rethink your application from top to bottom, because Mac users and PC users have very different ways of approaching problems. -
Re:I agree 100%
I made the mistake of purchasing Word 6. It was indeed riddled with bugs, but worse, it looked and behaved like a Windows application, a wretched, horribly literal-minded port from PC land where shit is supposed to taste like chocolate.
With Office 98, Microsoft seemed to have learned its lesson (debatable?) and today I continually wonder why other software projects (Firefox in particular) have to keep pursuing this myth that cross-platform is as easy as flipping a switch. -
Re:I agree 100%
Yeah... I consider Office 98 to be a grand example of Mac integration from Microsoft, but that's from the perspective of Word 6.
Well, you had me wondering there if I was mixing versions up, but I finally managed to compile my life in word processing software:
1986-1988 Word (On Mac. Sorry, didn't even know about version numbering at the time)
1988-1992 WordPerfect 4 and 5 (on PC) Mass-11 (on VAX/VMS, don't get me started)
1992-1998 Word 5, 5.1 (on Mac)
1998 .... Word 98 (on Mac, about 4 weeks before I ditched the CD's and re-installed Word 5.1)
1998-2001 Word 5, 5.1 (on Mac)
2001-2007 Word v.X (on Mac)The Word 98 program was a gift by a friend who did not want to use it.
Apparently Word 6 was such a bag of bugs that I never even met anyone who used it. And you wouldn't pass it on to a friend either. -
Re:Maybe that's because...
QuickTime player is simply a front-end application that makes use of the framework. Its Windows counterpart is a mere shadow of its former self.
Based on the wording you used, when you said "Its Windows counterpart," I thought you were referring to Windows Media Player, which, as I understand it, is just a(n ugly) GUI over top of DirectX Media. Fortunately, there are alternate players, such as Media Player Classic (an open source player that resembles Windows Media Player 6.4 with some extra features) and additional codecs, including one to play Quicktime files.I wouldn't completely knock Safari without giving it a chance. Safari itself was based off of KHTML (and the Apple devs still contribute back regularly to the KDE/Konqueror folks). If they ported it once, porting it twice shouldn't be a terribly huge issue once the initial kinks are worked out.
I'd consider using it if it didn't completely ignore some of Windows' GUI conventions. I hate skinned apps, with a passion. I tolerate Opera and Firefox simply because they have skins that resemble my OS... thanks to a "feature" of Windows dealing with Window Handles, even Internet Explorer has to recreate all the Windows controls that it wants to use (except <select> up through IE6) rather than using OS native widgets.
Other than the obvious non-standard widgets, you have- Missing application menu in the upper-left corner. This menu contains menu items for Minimize, Maximize, Restore, Move, and Size. This menu is still accessible via its keyboard shortcut (Alt-Space). Present since: At least Windows 3.0, 1991
- Missing minimize animation. Present since: At least Windows XP, 2001
- Maximize/Restore animation is odd, it resizes one dimension at a time. Windows itself resizes both dimensions at a time. Present since: At least Windows XP, 2001
- Resizing can only be done from the lower-right corner. Windows allows resizing from all four sides and corners. Also, the cursor does not change when moved over the resize area. Present since: At least Windows 3.0, 1991
- Clicking on the Safari icon in the taskbar when it is minimized performs the restore operation, even if the Window was maximized before... in other words, it shows the window maximized for a split second, then resizes it.
- You can resize a maximized window. Windows programs normally don't let you do this.
- Clicking on a taskbar icon for a window that is currently in front should minimize that window. Present since: Most likely Windows 95, 1995.
- Some dialogs are missing close buttons. History, Show All History and Help, About Safari off the top of my head. In fact, the only way I found to close the History window was counterintuitively through Bookmarks, Hide All Bookmarks.
- Missing application menu in the upper-left corner. This menu contains menu items for Minimize, Maximize, Restore, Move, and Size. This menu is still accessible via its keyboard shortcut (Alt-Space). Present since: At least Windows 3.0, 1991
-
Re:Safari on Windows....What's in it for Apple?
And Silverlight is supported in both Safari and Firefox browsers on the Mac. http://blogs.msdn.com/macmojo/archive/2007/05/23/
s ilverlight-excitement.aspx -
Re:From TFA:
I'm actually glad someone has taken Microsoft to-task on this one, because the overall picture I'm getting from the online review world is ReadyBoost doesn't really help performance.
I don't think the feature is "broken" by definition, in fact I think the intended benefits are so tiny that people are left confused. According to this FAQ page, we know the following:
1. This is designed "at best" to deliver a few percent faster performance, targeting smaller files. It is intended as an upgrade path of last resort.
2. It requires incredibly fast flash memory for small block sizes (compared to your average drives on the market).
3. The software uses compression to improve thoroughput performance and AES-128 for security.
MY TAKE ON THIS: ReadyBoost is an expensive way to improve your performance by a few percent. ReadyBoost may actually be detrimental to performance if you're not COMPLETELY IO-bound because data on the flash drive has to both decompressed and decrypted during every access. The current capabilities are so unclear that it's no wonder people would call the feature "broken." -
Office 2007 Equation Editor is really great!
Please have a look at the Microsoft blog: http://blogs.msdn.com/microsoft_office_word/archi
v e/2006/10/04/Equations-in-Word-2007.aspxIt is based on something less proprietary, and more TeX-like. The output is nicer too. I believe Nature and Science will accept the new
.docx format some time. The ODF recommendation does not make sense, simply because no authors will be using it. -
Re:google is EVIL!
You might want to give some attribution to the original author of your post:
http://channel9.msdn.com/ShowPost.aspx?PostID=3150 67#315067
You know, to avoid charges of plagiarism and all that. :p -
Re:Bias Showing
You have information that says Novell has access to "secret" documentation regarding OpenXML?
I think it is your argument that is disingenuous and lacks all validity. You're in denial that Microsoft could possibly open up it's Office formats in the same way that Sun has done with Star Office. This is exactly what they have done.
Docx documents are simply zip files containing simple xml files, it's not even half as complicated as people are implying. Creating docx documents is actually quite simple...
http://blogs.msdn.com/dmahugh/archive/2006/06/27/6 49007.aspx
I've seen it all on slashdot today, half of the comments rated up against posts I've made are claiming the 6000 pages of documentation is too complicated and difficult to follow, the other half claim they are incomplete and I bet not a single one of these people have even looked at the documentation:
http://www.ecma-international.org/news/TC45_curren t_work/TC45-2006-50_final_draft.htm
It doesn't matter what cross platform specification there is out there, there are always be difficulties producing identical replications of a standard between platforms, just look at SOAP and HTML for examples, everyone knows the problems developing HTML applications that work across multiple browsers. Does that mean HTML or SOAP are not valid standards? Of course it doesn't.
The truth is there is an abundance of information and examples on how to create, read and modify Office 2007 OpenXml documents.
With Office 2007 Microsoft has opened the floodgates for developers and turned it into a full on document processing development platform. I think Microsoft has done this because they genuinely believe they can offer a commercial product that will be bought based on the merits of the application versus applications such as Star Office and/or Open Office. -
Re:Fair Enough?
Here's the explanation...
http://blogs.msdn.com/brian_jones/archive/2006/10/ 12/comparison-of-openxml-math-and-mathml.aspx
You can get MathML out of Office docx documents quite easily using XSL transforms...
http://dpcarlisle.blogspot.com/2007/04/xhtml-and-m athml-from-office-20007.html -
Re:You are looking for PageHeap
Excellent advice. It also bears mentioning that PageHeap will work when debugging programs written in languages other than C++. From the knowledgebase article:
Pageheap.exe is effective when used to verify any memory allocation process, including C++ style allocations new and delete, as long as the custom allocation/free functions eventually call into NT heap management interfaces (that is, RtlAllocateHeap, RtlFreeHeap).
(Emphasis mine.) For example, here's a bug report for something written in Delphi that crashes under pageheap.
Also, don't be tempted to use any of the following functions: IsBadWritePtr, IsBadHugeWritePtr, IsBadReadPtr, IsBadHugeReadPtr, IsBadCodePtr, IsBadStringPtr. Their use within Microsoft is deprecated as per MS's Secure Development Lifecycle. (Microsoft's resident security guru Michael Howard calls the *ReadPtr functions "CrashMyApplication" and the *WritePtr functions "CorruptMemoryAndCrashMySystem".
:)You can read about why these functions are bad on Larry Osterman's blog, and see more deprecated functions here.
-
Re:You are looking for PageHeap
Excellent advice. It also bears mentioning that PageHeap will work when debugging programs written in languages other than C++. From the knowledgebase article:
Pageheap.exe is effective when used to verify any memory allocation process, including C++ style allocations new and delete, as long as the custom allocation/free functions eventually call into NT heap management interfaces (that is, RtlAllocateHeap, RtlFreeHeap).
(Emphasis mine.) For example, here's a bug report for something written in Delphi that crashes under pageheap.
Also, don't be tempted to use any of the following functions: IsBadWritePtr, IsBadHugeWritePtr, IsBadReadPtr, IsBadHugeReadPtr, IsBadCodePtr, IsBadStringPtr. Their use within Microsoft is deprecated as per MS's Secure Development Lifecycle. (Microsoft's resident security guru Michael Howard calls the *ReadPtr functions "CrashMyApplication" and the *WritePtr functions "CorruptMemoryAndCrashMySystem".
:)You can read about why these functions are bad on Larry Osterman's blog, and see more deprecated functions here.
-
The other side of the story
I know that most slashdotters don't even want to hear Microsoft's side of the story, but for the few that might, read these two blog entries by Dan Fernandez:
This gives MS's side of the story, including the two-year history of this issue:
http://blogs.msdn.com/danielfe/archive/2007/05/31/ visual-studio-express-and-testdriven-net.aspx
This follow-up blog entry gives technical details on the hacking required to get TestDriven.NET to run in VS Express:
http://blogs.msdn.com/danielfe/archive/2007/06/01/ testdriven-net-and-express-technical-information.a spx
You might want to weigh both sides of the story before choosing one side or the other. -
The other side of the story
I know that most slashdotters don't even want to hear Microsoft's side of the story, but for the few that might, read these two blog entries by Dan Fernandez:
This gives MS's side of the story, including the two-year history of this issue:
http://blogs.msdn.com/danielfe/archive/2007/05/31/ visual-studio-express-and-testdriven-net.aspx
This follow-up blog entry gives technical details on the hacking required to get TestDriven.NET to run in VS Express:
http://blogs.msdn.com/danielfe/archive/2007/06/01/ testdriven-net-and-express-technical-information.a spx
You might want to weigh both sides of the story before choosing one side or the other. -
Re:Sent this off a few days ago...Regarding your issues with the developer of the unit-testing framework which your product sorely lacks
Express provides free tools and resources for the recreational, and student programmer. Coding4Fun
Charging for development tools is a bloody stupid idea in the first place
Microsoft has been in the business of providing development tools for the PC since 1975. That bloody stupid idea is what drew IBM to the fast-moving young company in 1980. It seems to be still working quite well for Adobe.
Every developer you piss off helps to push up the value of my portfolio.
There have been 14 million downloads of the Express product.
Suggesting that there is a younger generation of programmers emerging that are not as pissed off by Microsoft as their elders believe. Perhaps - just perhaps - the beginnings of an adolescent rebellion against the middle-aged spread, the predictable pieties of free and open source.
-
Re:SourceSorry for the double posting, but I found this part interessing in the VS Express product manager's blog: The TestDriven.NET product is implemented as a Visual Studio Add-In. In the Visual Studio Standard, Professional, and Team System SKUs, TestDriven.NET is installed as an Add-In and gets loaded into the IDE through the Add-In Manager. In the Visual Studio Express SKUs, because we disabled extensibility (macros, Add-ins, and VS Packages), the Add-In Manager is removed and therefore Add-Ins are not detected or loaded. Jamie has created additional components specifically for the Express SKUs to work around this technical limitation. He takes advantage of an extensibility point that allows user controls (such as a button class) to customize entries in the Properties window. When his property extender gets called, he executes code that finds, loads and injects the TestDriven.Net assembly into the Express SKU's running process, thus replacing the functionality of the removed Add-In Manager. This explains why he instructs Visual Studio Express users to open the Properties window in order to enable TestDriven.NET. Once his code is injected into the Express SKU's running process it can add menu items, enable features that were disabled, and in general take over that instance of Express. These special loading mechanisms that Jamie has built exclusively for the Express SKUs are unauthorized workarounds to the SKUs' technical limitations.
This is taking advantage of a technical limitation, which the EULA does say it is not permitted. But I still find very confusing that no where on the VS Express site, download page, or EULA is said that you cannot develop add-ins for the Express version.
-
Re:Just read up on all of it a few hours ago...Except that "public" APIs aren't being used in this case.
http://blogs.msdn.com/danielfe/archive/2007/06/01/ testdriven-net-and-express-technical-information.a spxFriday, June 01, 2007 3:20 PM by danielfe
TestDriven.NET and Express - Technical Information
I quickly wanted to respond to questions or misconceptions raised in the comments of my previous blog post.
A common question or misconception in the comments is saying that if didn't want extensibility we should have provided technical limitations to prevent extensibility (see comments: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, and 18).
Express Extension Workarounds
To respond, Visual Studio Express extensibility is limited in a number of ways. One way it is limited is that it does not permit extensibility through Macros, Add-Ins, or Packages. It attempts to reserve these limitations by technical means. Some examples of these technical limitations are that there is no Macros IDE, there is no Add-In manager, and registered Add-In's and Packages are not loaded at startup. The only way to even extend Express is to work around these in-built technical limitations and that is prohibited by the License.
For a high-level overview on how TestDriven.NET works around technical limitations, here's a response from our development team:
**
The TestDriven.NET product is implemented as a Visual Studio Add-In. In the Visual Studio Standard, Professional, and Team System SKUs, TestDriven.NET is installed as an Add-In and gets loaded into the IDE through the Add-In Manager. In the Visual Studio Express SKUs, because we disabled extensibility (macros, Add-ins, and VS Packages), the Add-In Manager is removed and therefore Add-Ins are not detected or loaded. Jamie has created additional components specifically for the Express SKUs to work around this technical limitation. He takes advantage of an extensibility point that allows user controls (such as a button class) to customize entries in the Properties window. When his property extender gets called, he executes code that finds, loads and injects the TestDriven.Net assembly into the Express SKU's running process, thus replacing the functionality of the removed Add-In Manager. This explains why he instructs Visual Studio Express users to open the Properties window in order to enable TestDriven.NET. Once his code is injected into the Express SKU's running process it can add menu items, enable features that were disabled, and in general take over that instance of Express. These special loading mechanisms that Jamie has built exclusively for the Express SKUs are unauthorized workarounds to the SKUs' technical limitations.
**
For an analogy, this would be comparable to someone working around the technical limitations in the personal version of TestDriven.NET to unlock features in the professional or enterprise versions for free.
What complicates this even further is that this isn't a developer doing this for his or her personal use or experimenting with our product, this is a business trying to sell a product. We tried for close to two years to get Jamie to stop releasing the Express version of TestDriven.NET without success.
I hope this helps clarify some of the questions or misconceptions surrounding this issue.
Filed under: Visual Studio Express
Comment Notification -
But Stay Tuned!
Tomorrow is special. It's the deadline M$ gave him to remove Express support.
Thanks for pointing to the old article. The Dan Fernande's letter is priceless entertainment parodied in the following Power Point Slide:
Please Don't Help Express Users
by Dan Fernandez- We've done so much for you, even calling you on the phone - twice in two years.
- Most people prefer our no cost version, they are not Professionals and some admit it.
- Non Professional users are easily confused, please don't make their life easier with confusing choice.
- Back when I programmed in BASIC, I would not have wanted anything else.
- I know Professionals who can't code.
- Helping people violates our "ethos"
- We are going to pick up our toys and go home now and it's all YOUR FAULT.
Why do they try? There's no way for them to win this.
Let's see what happens next! Will they stop issuing Express, remotely disable it and then sue Jamie? Do they leave him alone and let it keep working with
... the appropriate apology? Ha! -
Re:Intel - The Software CompanyThe only amazing thing about this is that it is such a novel insight that it is necessary for you to be modded as such.
And yet, historically it has proven to be incorrect. The usual result of getting hardware developers to write compilers is that you get shitty compilers. The amazing reason for this is that people who spend their career writing compilers turn out to be way better at it than people who spend their career developing hardware.
The Intel compiler is a notable exception - but it wasn't that long ago that code correctness was not that high on the Intel compiler's list of qualities. The code was fast, but not reliable (compared to, e.g. gcc or msvc). To paraphrase Gerald Weinberg, "I can write a program that executes in zero seconds if the output doesn't have to be correct."
Just because you designed the hardware doesn't mean you have the best idea of what goes on in most 'real world' software - in some cases, you can be totally blindsided because you thought you knew best. iirc, some versions of the VAX processor had a bunch of instructions put in that were 'useful for compilers'. The compiler writers took a look at them, and said "Er, no thanks." There are other examples in the field's history.
-
Re:Neooffice - differences?
Getting a LITTLE off topic, but thanks to both of the posts clarifying the relationship of Carbon and Cocoa! As I said, I'm the new guy! But a little more quick research finds that a significant enough part of the community has a hard time with the differences as well. A few informative bits here:
http://www.oreillynet.com/pub/a/mac/2001/05/23/coc oa_vs_carbon.html
http://blogs.msdn.com/rick_schaut/archive/2004/02/ 10/70789.aspx
http://daringfireball.net/2006/10/some_assembly_re quired
http://wilshipley.com/blog/2006/10/pimp-my-code-pa rt-12-frozen-in.html
I have much to learn! -
Re:Not really surprising
ATI has had WHQL ( http://en.wikipedia.org/wiki/WHQL_Testing ) certified new driver releases for years now. NVidia has only recently been able to get their new releases WHQL qualified.
So this must be about ATI then ;-) -
Re:It will come, don't worry.
It's my understanding that most modern operating systems have essentially the same memory management underpinnings - historically *nix and Windows had different memory management models, but *nix has evolved over time from the 1960's style swap() mechanism to a modern VM system that is effectively the same as the Windows VM system (which was designed for systems with modern VM architectures). It's a tribute to the modularity of *nix that it's been able to survive such a major transformation untouched.
According to this blog post, what you're describing is called "standby list erosion" where a number of low priority applications can (over time) cause the foreground application to swap out. According to that post, it should be fixed in Vista. -
Re:Not really surprising
Sigh, yet another general statement without supporting evidence. I think your post is a sly bit of astroturfing for NVidia. ATI has had WHQL ( http://en.wikipedia.org/wiki/WHQL_Testing ) certified new driver releases for years now.
Hmmm .... "Windows Hardware Quality Laboratories testing" .... is this like buying a PC which says it's "Vista Ready" only to find out that means "well, not Vista with the new GUI stuff, just running with the old GUI"? It's got no credibililty with a lot of people. (eg. , specifally about ATI cards)
A Windows compatibility rating is frequently not worth the paper it's printed on, except to the company who sells it because people think it will work and buy the product. Many of us don't actually take that to mean anything significant in terms of how well the hardware actually works. It merely seems to mean you paid Microsoft for the right to put on that sticker.
And, anecdotally, I've known quite a few people over the years to have huge problems with ATI drivers -- on Windows or any other platform. They may have gotten better, but for some of us, they still have a bad reputation for quality when it comes to their drivers.
Cheers -
Re:vs Reiser4 (someday, maybe)
Essentially have barrier calls in most places you'd have sync calls -- and yes, maybe fbarrier or fdatabarrier, like fsync/fdatasync. Note that sync-ing already does basically the same thing, just slower.
Yes, and since fsync() is a working but suboptimal fbarrier(), you can writable portable code easily:
#ifndef HAVE_FBARRIER
#define fbarrier(fd) fsync(fd)There are a couple of problems with that approach, I think. The most obvious one is that essentially, your application is trying to implement a transaction, and your filesystem will, if it's smart, group these into a transaction. In other words, if I read from file a, write a new version to file tmp, barrier, and then rename that tmp to a, then barrier again, all before the FS writes it out to disk, a smart enough FS might figure out that I want to atomically update a, and skip the tempfile altogether. Skipping the tmpfile means skipping dealing with allocating a new inode, setting a dozen timestamps, then unlinking it, when it might be faster to simply use the FS's own journal. (Or it might use the tmpfile anyway, if it thinks that's faster.)
Yeah, directly making an atomic change to the file would probably be faster. And there are many places that full ACID would be convenient. But there's also a lot of stuff running that doesn't need transactional semantics, and I'd expect they'd be a lot slower for it. Also databases that have their own transactional systems with different performance characteristics. This seems like a global change, and I'm not sure that's desirable.
Anyway, the transactional semantics you're describing exist, in Microsoft Windows of all places. I don't know much about them, what with hating both Microsoft and Windows.
It's my understanding that this is also approaching problems at the hardware level. For instance, tagged command queuing and friends, disk write buffers, and the general nature of the media (and the fact that you don't actually know what the physical media is) all means that your only guarantee is that when your fdatasync returns, the data is safely on disk. Maybe. Hopefully.
Well, what hardware guarantees may or may not be available is the filesystem implementator's problem. I want to know what the filesystem implementation can guarantee to me. I'd suggest reading this, this, and this. I suspect similar techniques can be used on a large file inside of an existing filesystem -- which would also blatantly make my point about duplicated effort. But beyond that, I'm really not sure.
I've read those, but they don't really help. They're focused on metadata, and I want to know what guarantees I have for data.
-
Re:Word processors seem unsuited for thisWell, a few (honest) questions, & some comments...
Hello - have you used Office 2007?
Well, it's only been out 4 months. I based everything I said off of previous incarnations of Office, from 2003 (the second latest-n-greatest) to 95 (when WordPerfect started sucking). Given I don't want to replace my shiny & new copy of Office 2003 so soon after I got it, I won't be purchasing 2007 for some time. And nor will I be using to submit to Nature or Science, apparently, even if it were free.
1. PDF publishing is supported (free)
That's good to hear, and long long missing. Questions: is the output of "Print to PDF, then print the PDF" the same as just printing? I've had issues with such software producing different output that way (even sometimes products made by Adobe!). Also, how "good" is the PDF output. That is, are the files sizes quite small, is it embedding proper scaleable fonts, and does it print fast? A big problem with the old "print to
.PRN, change extension to .PS, then ps2pdf" way of going from Word to PDF was getting bloated, poor quality, and complex PDF files; even Acrobat sometimes will non-sensibly make a crappy PDF.2. Citations and Bibliographies are both supported under Word
Having used BibTeX, I will never go back. There are huge databases of freely available BibTeX format citations. The second runner up, EndNote, hasn't nearly the amount of citations available (although importing BibTeX into EndNote isn't hard). I have used EndNote, and it is not nearly as good as BibTeX. Other people (read the comments) seem to feel that EndNote works better than Word 2007's support; I simply don't believe that a mouse-driven interface for adding citations can ever beat a text-based one.
Office 2007 documents can be saved to document managment servers for sharing
I think you're missing the point. LaTeX easily allows you (and encourages you) to split your documents up into multiple files. So, regardless of what collaboration service you use, anything from emailing files back and forth to something overly complicated like SourceVault, you can have multiple people editing the same document simultaneously. They just work on different sub-files. I've done it with email, but usually do use RCS to automate the locking support. Unless Office 2007 vastly changes things, Word documents are still monolithic files. That makes it quite difficult to support simultaneous editing; you *need* a concurrent versioning system. And, forgoing large changes in Office 2007,
.doc files are still stored as BLOBS, which makes automated commit/merging difficult to impossible.4. LaTeX has style files; Word has templates. What's the difference?
As best I can tell (I've never found it, and I've tried...) you can't apply a template to a document after the fact (and get the expected results). If my paper is rejected from one place, I can reformat the entire document by changing which style file I include. Style files pretty much guarantee that all of the final product will have a consistent look, and that said look is easy to change across the board. Journals that are either done all in LaTeX or those that hire separate typesetters (for mucho $$$) have the most consistent appearance. Others look a bit like just a bunch of papers glued together.
I can't claim Office 2007 is better than LaTeX, since I've not used the latter extensively,
Except for those on the Office 2007 team, *nobody* has used Office 2007 extensively
:)
From talking with people who have used 2007, there is quite a learning jump to go from 2003 to 2007. Especially since 2007 breaks math support for journals, it makes sense to consider moving to LaTeX just a -
Re:Saving compatible versions
And take a look at Murray Sargent's blog entry that has a pointer to David Carlisle's blog entry about extracting MathML from Office 2007 documents.
-
Follow up Post
Here's a follow up post detailing how TestDriven does this using Code Injection.
-
Re:Having read the MS responseFirst, that's not the way to treat your community
The Express community isn't a professional development community.
It is a community of beginners, students and hobbyists: recreational programmers who have been given a powerful set of tools and support for free. Coding4Fun
To me these projects do look like fun.
Each rated according to the time, skill and, where appropriate, the materials and cost required to complete them.
-
Re:Computer, enable copy editorHere's what I consider better links (I have way too much free time, I admit it):
Back in 2004, Jamie Cansdale released a free Visual Studio addin to help developers build unit tests. His only problem was that he enabled his addin for all versions of VS - including the Express addition which isn't supposed to support addins. After over a year of trying to talk with Microsoft and understand how and why he was in violation of their license agreement, during which they would never explain specifically which clause in the license was being violated, they sent the lawyers after him and pulled his MVP status. To top it all off, Jamie is actually a Java developer by day; his addin was originally developed just as a hobby project. A full account is available on his blog, including all email correspondence he had with Microsoft and the now 3 letters received from Microsoft lawyers. The lead product manager for Visual Studio Express has posted a response to Jamie's posts.
-
Re:Computer, enable copy editorHere's what I consider better links (I have way too much free time, I admit it):
Back in 2004, Jamie Cansdale released a free Visual Studio addin to help developers build unit tests. His only problem was that he enabled his addin for all versions of VS - including the Express addition which isn't supposed to support addins. After over a year of trying to talk with Microsoft and understand how and why he was in violation of their license agreement, during which they would never explain specifically which clause in the license was being violated, they sent the lawyers after him and pulled his MVP status. To top it all off, Jamie is actually a Java developer by day; his addin was originally developed just as a hobby project. A full account is available on his blog, including all email correspondence he had with Microsoft and the now 3 letters received from Microsoft lawyers. The lead product manager for Visual Studio Express has posted a response to Jamie's posts.
-
Skilled corporate guy masquerading as hobbyistIt's sad that no mind at Microsoft can conceive of a compelling argument why Jamie is wrong. I notice that Dan's argument includes comments like The vast majority of our customer base, now with 14 million downloads, isn't even professional developers, its non-professionals. [..] From a total number perspective, beginners are the largest segment of Express customers and they still find Express too complex, [..] Our Express customers haven't been asked for unit testing or extensiblity in much the same way as I didn't ask or even know to ask when I grew up programming BASIC on an Apple IIe. So? That wasn't the issue. If this is true, then the "vast majority" of Express users simply won't use it, so what was the point of bringing it up? If Dan was implying that Jamie is wasting his time, then that's Jamie's problem; it's not going to damage their experience, or MS/Express's reputation.
Is he attempting to steer the discussion (and basis of MS's actions) away from ground that may not be as firm as MS would like to pretend it is? "Our ickle novice programmers don't want or need TestDriven.NET". Then they won't use it, Dan. As you may remember from my previous posts, Visual Studio Express was a labor of love. MS would not have permitted the release of Express if it had not been to their benefit; in this case, giving low-end programmers the chance to use, learn and be steered towards their product without cannibalising sales of the full Visual Studio.
If it really was a "labor of love" for Dan, then I'd question why he's pouring his heart and soul into products for a company like Microsoft, and consider him somewhat deluded. On the other hand, he's a manager, not a low-level Bill-Gates-is-God-Kool-Aid-drinking peon, so you'll excuse my scepticism if I consider this to be an attempt to play the "I'm one of you and really enthusiastic about this" sympathy card.
The tone of such comments as It's unfortunate that this happened, but as you can see, we have been very patient with Jamie and it's our hope he will remain in compliance of the Visual Studio Express Editions license agreement. smacks of PR. It's the weaselly attempt to come over as firm-but-friendly whilst underneath making clear what they expect to be done and the veiled threat if it isn't. Either he or someone else has consciously worked on this.
I also notice that he states here: Back in 1975, Microsoft started out as *the* hobbyist company for a nascient software industry. While many things have changed since then, we always had a special place in our hearts for hobbyists. Yeah, MS has always been the hobbyist's friend, ever since Bill Gates' friendly letter to them in 1975. They've always been open and let people play around with their stuff.
Lying corporate fuck. -
Re:I bet if you dig far enough...
Wrong. It will be in the next version of VS. Right now, it is a pretty awful implementation for TDDers (very slow, but some cool integration features), but they are working on making that better.
Not that I agree with what is going on with Jamie. All he ever asked for was the clause he was violating and he would happily remove it. They haven't provided that yet. -
Computer, enable copy editor
Jamie Cansdale released a free addin to Visual Studio back in 2004 to help developers build unit tests. His only problem was that he enabled his addin for all versions of VS - including the Express addition which isn't supposed to support addins. After over a year of trying to talk with Microsoft and understand how and why he was in violation of their license agreement, during which they would never explain specifically which clause in the license was being violated, they sent the lawyers after him and pulled his MVP status. To top it all off, Jamie is actually a Java developer by day; his addin was originally developed just as a hobby project. A full account is available on his blog, including all email correspondence he had with Microsoft and the now 3 letters received from Microsoft lawyers. The lead product manager for Visual Studio Express has responded to Jamie's posts.
Above is the summary with copy editing enabled. I hope the lawyers don't threaten me too! -
Computer, enable copy editor
Jamie Cansdale released a free addin to Visual Studio back in 2004 to help developers build unit tests. His only problem was that he enabled his addin for all versions of VS - including the Express addition which isn't supposed to support addins. After over a year of trying to talk with Microsoft and understand how and why he was in violation of their license agreement, during which they would never explain specifically which clause in the license was being violated, they sent the lawyers after him and pulled his MVP status. To top it all off, Jamie is actually a Java developer by day; his addin was originally developed just as a hobby project. A full account is available on his blog, including all email correspondence he had with Microsoft and the now 3 letters received from Microsoft lawyers. The lead product manager for Visual Studio Express has responded to Jamie's posts.
Above is the summary with copy editing enabled. I hope the lawyers don't threaten me too! -
Re:What about the adoption of 64-bit?
There are few levers that Microsoft has on encouraging 64 bit computing. The first is having good tools and support for creating 64 bit drivers with a shipping OS. The second is requiring the existance of 64 bit drivers to get a Designed For Windows Vista Logo (and co-marketing dollars?) and making the 64 bit OS version easily available in the consumer market. The last lever is finally going 64 bit only in certain products and eventually Windows itself. We are long past the first lever, we just saw the second completed with Vista and there are signs that the third is coming with announcements like Exchange going 64bit only.
However there is no reason why such big shifts can't happen cocurrently in the pipeline of these steps or even in parallel. For example, last year the win2k3 networking stack got an optional update to do Receive Side Scaling allowing a network server to scale better with multi-core/cpu. This technology is already a builtin part of the OS in Vista. One of the features on win2k8 is to fix the serialization of terminal server login session creation. As long as the hardware appears and there is bang for the buck, it will show up in the OS. -
Re:Windows is already multithreaded
Hopefully if MS re-writes some of the Windows infrastructure to make multi-threading easier for applications we'll see better apps that more properly take advantage of the hardware that's out there.
This is a key point as Raymond Chen has discussed previously. -
Microsoft did this last year
Actually, as cool as the "birds-eye view" is, Microsoft already did this exact thing (street-level view) last year... Although it looks like they haven't touched it since launch:
http://preview.local.live.com/
http://blogs.msdn.com/livesearch/archive/2006/02/2 8/540724.aspx -
Re:Registry
-
Re:PiracyI never said I use them. My copy of windows came with my laptop. all you have to do is read the WGA blog http://blogs.msdn.com/wga/default.aspx they will talk about the current ways to hack windows and what they are doing to stop them.
the 3 ways are:
timerstop method
relash BIOS
softmod bios -
Re:Limited impact.One nitpick: while open sockets are indeed file objects, and starting with Server 2003 SP1 the endpoint drivers do support ACLs on open sockets, unopened sockets (i.e. the port numbers themselves) are not objects, and do not have ACLs. There are firewalls that can control access to socket operations on a per process basis, but they're implemented as special TDI filters with special rules, usually not standard ACLs.
I've spent some time implementing a security descriptor editor designed to expose ALL objects with NT ACLs, and if there was an program interface to apply ACLs to port numbers, I would jump at the chance to make it available.
The endpoint devices themselves, e.g. \Device\Tcp, DO have ACLs which are checked before allowing socket ops (at least in 2003 SP2). There is no standard interface to them, AFAIK. SD Edit can edit them with sdedit t file tc ntapi n \Device\Tcp or with Udp or Ip or Nwlink. The only thing you can really do is deny all network access on a transport, but that can still be quite useful. Execute + synchronize access is sufficient to open/create sockets. Read/write access allows reconfiguration of the transport.The NT kernel provides a lot of facilities that are very useful for writing secure code. I often wonder if the application developers at Microsoft ever noticed that they weren't writing code on top of DOS anymore...
Ugh. I'm hearing you there. The momentum of DOS and Win95 single-user, no security software design is still a plague on Windows software.