I don't want to turn bits into atoms in 3-5 minutes to hold a book in my hand, I want all my books, papers and mags in electronic format on a pleasant hardware platform! I'm planning on getting myself a tablet PC soon to test as a candidate (pocket/palm PCs sucked for this use the last I tried). Plus, where does the book data come from for all of these print-on-demand books and why can't I download it?
A friend of mine sent along some questions he was asked for a SDE/T position
at Microsoft (Software Design Engineer in Test):
“How would you deal with changes being made a week or so before the
ship date?
“How would you deal with a bug that no one wants to fix? Both the
SDE and his lead have said they won’t fix it.
“Write a function that counts the number of primes in the range
[1-N]. Write the test cases for this function.
“Given a MAKEFILE (yeah a makefile), design the data structure that
a parser would create and then write code that iterates over that data
structure executing commands if needed.
“Write a function that inserts an integer into a linked list in
ascending order. Write the test cases for this function.
“Test the save dialog in Notepad. (This was the question I enjoyed
the most).
“Write the InStr function. Write the test cases for this function.
“Write a function that will return the number of days in a month (no
using System.DateTime).
“You have 3 jars. Each jar has a label on it: white, black, or
white&black. You have 3 sets of marbles: white, black, and white&black.
One set is stored in one jar. The labels on the jars are guaranteed to
be incorrect (i.e. white will not contain white). Which jar would you
choose from to give you the best chances of identifying the which set of
marbles in is in which jar.
“Why do you want to work for Microsoft.
“Write the test cases for a vending machine.
“Those were the questions I was asked. I had a lot of discussions about
how to handle situations. Such as a tester is focused on one part of an
SDK. During triage it was determined that that portion of the SDK was
not on the critical path, and the tester was needed elsewhere. But the
tester continued to test that portion because it is his baby. How would
you get him to stop testing that portion and work on what needs to be
worked on?
“Other situations came up like arranging tests into the different
testing buckets (functional, stress, perf, etc.).”
Cool piece by Andrew Troelsen on the new refactoring features in Visual Studio 2005 for C#. Now I just have to train myself to think to use the refactoring operations instead of letting my fingers do it as they've been forced to for lo these many years...
JohnMont (who oughta know) provided these numbers today as “quotable and public” so I thought I would:
There are ~6M professional developers worldwide, about 90% of whom target Windows
There are about 2.5M .NET developers
>60 of the Fortune 100 develop using .NET
Forrester says that 56% of enterprises in North America are choosing .NET for their development requirements vs. 44% choosing J2EE
According the legend (JohnMont didn’t comment on this part), 4-5M of those 6M developers targeting Windows are Visual Basic developers, which means that if they ever get tired of being made fun of by the C family of developers, we’re going to be trapped in phone booths while they descend on us like the birds in an Alfred Hitchcock movie…