tech ed day 3

the day started off with an in-depth session about c#. c# has some nice properties that can stand on their own, but industry support will be crucial. versioning of classes is an approach to tackle the fragile base class problem where changes in a base class lead to bugs in derived classes because the derived classes expect certain methods or variables to be there. versioning can at least give the programmer a hint where problems may arise. if i understood this correctly this versioning information is part of the metadata that is stored alongside the classes and can therefore be used at runtime. another nifty feature are xml comments. extending on the javadoc idea,

they can contain structured comments which can then be transformed with an xsl stylesheet. besides this there are some minor cleanups of c++ like requiring boolean values with each if while construct or escaping entire strings like this: string bla = @”\servershare.la.txt”;

the next presentation was quite impressive, with mark russinovich of sysinternals.com fame at the helm. he gave a walk through for some of his tools, like filemon, regmon to monitor file / registry accesses, respectively. his tools are even used within microsoft. also his process explorer does a lot more than the built in task manager, like killing any process without giving stupid access denied errors. he even has some nifty tool to remotely execute commands. this little hack works by auto-installing a service via the admin share of a remote computer and then carrying out the requested operation.

after his session i tried to charge my notebook but only got to 50 % meaning i had to look for power strips all day 🙂 the lunch session was very informally held by mark russinovich. his first slide surely caught our attention.

he then went on to demonstrate how far windows has come in terms of architecture, stability and scalability. he threw in lots of tidbits like the fact that the build number for windows is being continuously increased since 1992, the most current is 2505 (XP RC1). so this basically means that the windows os has had 2500 complete builds in 10 years. locking has been made more fine-grained in XP, resulting in scalability increases. i can see it now: a new round of windows benchmarks stacked against linux benchmarks. it came to light that the nt kernel is written somewhat object-oriented (it even uses exception handling i hear) if details like these interest you you should check out the nt resource kit as it comes with great documentation.

the rest of the afternoon was spent in 2 sessions about debugging, one called analyzing crash dumps and the other .net debugging. the first one was quite interesting, i learned that microsoft has a tool to analyze crashes which uses heuristics to determine error patterns in your application. somewhat similar to dawson engler’s meta-level compilation except that it analyzes the binary and is therefore most likely
less powerful than dawson’s approach.

in between we squeezed a meeting with jose osuna, responsible academic manager for switzerland. we had a good talk and i hope we can have some events with him in the future.

now i am off to catch some of barcelona’s nightlife. i’ll skip the graveyard session for once.

Leave a comment