Domain: wintellect.com
Stories and comments across the archive that link to wintellect.com.
Comments · 7
-
Re:Idiot
Early on in the article you used the phrase "the HTML5 Metro interface" this is a misnomer and demonstrates a basic misunderstanding of the platform as a whole. Metro is not HTML5 however you may write a Metro Style App in HTML5+JavaScript (are we just saying HTML5 now?). In addition you may write a Metro Style App (all of which will work on ARM) using C# and a subset of
.NET through the Metro CLR, or in C++.
The only unknown is whether or not Microsoft will eventually port the Desktop CLR to ARM. It has not been announced for the release however one must consider that it may happen at some point in the future.
You may read this article to obtain a better understanding of an (admittedly confusing) situation. -
Re:How Does It Encapsulate the Source Code?
The reason the article doesn't explain how Microsoft crash dumps work is because no one understands them.
This guy seems to be closest to understanding of anyone I've found:
http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05/11/pdb-files-what-every-developer-must-know.aspxman xorg.conf(5)
VIDEOADAPTOR SECTION
Nobody wants to say how this works. Maybe nobody knows ... -
Re:How Does It Encapsulate the Source Code?
The reason the article doesn't explain how Microsoft crash dumps work is because no one understands them.
This guy seems to be closest to understanding of anyone I've found:
http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05/11/pdb-files-what-every-developer-must-know.aspx -
Re:Well, there's your problem!
Agreed. It's a bunch of amateurs writing "production-quality" code and expecting it to be flawless the first time. "Yes mommy, it works! I wrote the code through the night and look, she drives! I don't know why she keeps dying every 40 minutes - must be a Microsoft bug. Those idiots can't even write a decent compiler."
From the description, it sounds very much like their objects were being promoted through to Gen2 and staying alive because they were referenced from the application root. They could have attempted to alleviate this by switching to WeakReferences or queuing calls to run a full garbage collection across all generations. And, hopefully, they were not using finalizers (whole new ball game). Also sounds like they had design issues. I'd like to know why they subscribed already seen obstacle objects to an event. Is the source available somewhere?
If only they had read Jeffrey Richter's book or the articles on garbage collection on MSDN, they could have got a faint idea with what may be going wrong. Remind me to never ever hire Bryan Cattle as a software dev. He deserves to be in sales or marketing, touting his Princeton credentials and selling bars of soap.
On a much more interesting note, which version of the framework were they using on Windows? Or were they using mono on Windows/Linux?
-
Re:Not to sound like a fanboi....
MS products are great for building cut-and-paste business applications. They're business tools. They make for bad hacking tools. Right now, I'm trying to figure out how the CLR handles threading, specifically when calling a control that uses asynchronous method calls. Guess what, the documentation is incredibly vague, the newsgroup postings are worthless, and I'm having to take a best guess and hope for the best. Another question I had is how C++
.NET mixes managed and unmanaged code. What if I created a multithreaded C++ .NET application? How would it behave? For whatever reason, most hackers avoid MS products like the plague. When I search the web, I can find discussions about the most pedantic pieces of Perl, but the average C# discussion is about 'synergizing your GUI' or playing 'cool tricks with delegates'. The most prolific MS programmers seem to be architects who muck with design patterns. In short, .NET it's a business tool, not an engineering or hacking tool.
I've given a couple suggestions of good MS programmers. This list is by no means exhaustive. Frankly, outside of book authors, I don't know of any great MS programmers. There aren't many OSS projects for Windows and I don't have the foggiest idea who does what at Redmond. Some potential great programmers are:
Jeffrey Richter
He wrote 'Advanced Windows Programming' (the closest thing to a Steven's like opus on the NT kernel I've seen, and Richter still falls short).
Ken Henderson
He's a SQL Server guru. His book 'The Guru's Guide to SQL Server Architecture and Internals' is the closest thing I've seen to a documented reverse engineering of any MS product.
Bruce McKinney
He's the author of 'Hardcore Visual Basic'. Did I mention he hates VB.NET?
Michael Abrash
He's obviously a ringer, but still... He wrote the 'Zen of Assembly Language', the 'Graphics Programming Black Book', but he also worked on the XBox, DirectX, MS Word (IIRC), and Quake. When John Carmack bows before your graphics programming voodoo, that says something.
Honorable Mention:
Charles Petzold
It's also worth noting that 3 of these men are known for trying to pick apart a black box of a MS product. I'm sure there are some real programming luminaries at the Redmond campus, I just don't know who they are. -
Re:maddening
unfortunately, NCollection is vaporware. another good source for C#v2 collections is Wintellect's Power Collections which seems to provide a good deal of what's missing.
-
Become a craftsman...My recommendation would be to first decide how you best learn. If you learn best in a classroom, go for it. Otherwise - you already have a graduate degree in your MD, so you don't really need a computer science degree as well to convince people you're educated. If MIT's OpenCourseWare works for you - by all means use it. There are also numerous excellent books on most aspects of computer science available - Knuth, Stevens, Richter, Petzold, Stroustrop and many other good authors made far better teachers for me than I ever found in a university.
The market is currently quite rough, especially to break into. After being laid off when a product tanked on the market, I've gone a few months without having a single resume responded to - and I have almost a decade of professional programming experience that was applicable to the jobs I've applied for (and my resume used to keep the phones ringing daily for months when I posted it - the market has changed a bit).
I've been spending the extra time continuing development on my personal code library and projects, writing open source code, and working on a few products that I expect there to be a market for when they're done. That's how I'd suggest breaking into the field as well.
You have a very special situation though - you know, or can find out if you think about it and ask your colleagues, exactly what one fairly wealthy niche market needs. What software would help you - as a doctor - work more efficiently? What software have you and your colleagues found lacking? There's your first project
:)It won't be easy, and you won't make money fast. My recommendation would be to start learning about computers and computer programming now while thinking about products. As soon as you feel like you can design a useful program and have one in mind - take a shot at it.
Use CVS ( or for Windows, WinCVS ) or some other revision control so you can keep track of all the code you write (I wish I had when I started!). Estimate for yourself how long tasks should take - track those estimates, and figure out why they were right or wrong. Document everything, especially the code.
Once you have a product you think is worthy for your target audience - use it yourself in your work. Then let some colleagues try it out. Fix anything you find wrong with it, and ask your colleagues for suggestions.
Then, set up a website, advertise it, and try to sell it - or set up a project on SourceForge and make it open source - whichever you feel more comfortable with. On SourceForge, you'll be able to enlist the help of other more experienced programmers and together tailor the product towards excellence. If you sell it and it's successful, you'll be able to afford to switch careers to full-time programmer/entreprenuer and just work on your business.
That brings me to another point - if you aren't currently running your own doctor's office, start learning business skills too. They're just as hard to pick up as programming skills - possibly harder for some. Figure out what you'll need to do to start running your own software company. Even if you decide to write your own software as open source and become an employee for someone else professionally, this will help you at the negotiating table.
What I would NOT recommend is dropping out of medicine, getting a BS in computer science, and expect doors to be immediately open when you g