    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
     <channel>
        <title>ACCU  :: The Path of MCSD</title>
        <link>https://members.accu.org/index.php/articles/1145</link>
        <description>Professionalism in Programming</description>
        <dc:language>en-us</dc:language> 
        <dc:creator>Administrator</dc:creator> 
        <admin:generatorAgent rdf:resource="http://www.xaraya.org" /> 
        <admin:errorReportsTo rdf:resource="mailto:webeditor@accu.org" />
       <sy:updatePeriod>hourly</sy:updatePeriod>
       <sy:updateFrequency>1</sy:updateFrequency>
       <docs>http://backend.userland.com/rss</docs>




<div class="xar-mod-head"><span class="xar-mod-title">CVu Journal Vol 13, #6 - Dec 2001</span></div>

<table border="0" cellpadding="1" cellspacing="0">
    <tbody>
    <tr>
        <td valign="top">
            Browse in :
       </td>
       <td valign="top">

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c76/">Journals</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c77/">CVu</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c117/">136</a>
<br />
</td>
   </tr>
   </tbody>
</table>




<div class="xar-error">
   <p>
 <strong>Note:</strong> when you create a new publication type,
the articles module will automatically use the templates
<em>user-display-[publicationtype].xt</em>
and <em>user-summary-[publicationtype].xt</em>.
If those templates do not exist when you try to preview or display a new article,
you'll get this warning :-)  Please place your own templates in themes/<em>yourtheme</em>/modules/articles . The templates will get the extension .xt there. </p>
</div>
<div class="xar-norm xar-standard-box-padding">
   <h1><strong>Title:</strong>&nbsp;The Path of MCSD</h1>
<p><strong>Author:</strong>&nbsp;</p>
<p>
<strong>Date:</strong> 03 December 2001 13:15:48 +00:00 or Mon, 03 December 2001 13:15:48 +00:00</p>
<p><strong>Summary:</strong>&nbsp;</p>
<p><strong>Body:</strong>&nbsp;<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e20" id="d0e20"></a></h2>
</div>
<p><span class="emphasis"><em>For some years, Microsoft has run an
elaborate system of examinations, including a specific
qualification aimed at professional programmers. Will Watts found
out what it was like to become an MCSD.</em></span></p>
<p>Here's how your company can legally obtain an enormous amount of
Microsoft software, get the right to put a Microsoft logo on its
letterhead and generally enjoy partial assimilation into Bill's
behemoth - and all for around &pound;1000. It's called being a
Microsoft Certified Partner. Each year, Microsoft ships you a sort
of Christmas hamper. It contains a plaque with ersatz Bill Gates
signature to go on the wall in reception, a medium sized MCP flag
for the company flagpole (really), a selection of ugly posters
which tell MCPs how wonderful they are (although the rainy one of
the man crossing a puddle using bandstand chairs as stilts is
rather good), and of course an MSDN Universal Subscription - a shed
load of CDs containing useful stuff like Word, Visio and SQL
Server, and more copies of different versions of Windows than you
could shake the world's most shakeable stick at.</p>
<p>There is a snag. To qualify for the partnership programme, two
employees of the company must take Microsoft certification
examinations. It was when we discovered this (if you'll pardon my
sudden descent from the general to the particular) that my general
lack of condition and years of over indulgence in Newcastle Brown
ale betrayed me. I was last by several tenths of a second out of my
seat and heading for the door, and thus became one of the two to be
picked for sacrifice on the altar of Microsoft qualification.</p>
<p>I then made the situation much worse by misreading the Microsoft
Certified Partner rules. I thought that in order to qualify the two
of us needed to become either Microsoft Certified Solution
Developers (four exams) or Microsoft Certified System Engineers
(about 17 exams, most of them apparently, to my unenthusiastic eye,
to do with the darker, moister corners of TCP/IP configuration).
Actually, all we needed to do was become Microsoft Certified
Professionals (one exam), but it is too late now - we can't untake
them. (If you could see your way <span class=
"bold"><b>not</b></span> to mentioning any of this to my co-victim
Brian, that is fine by me.)</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e34" id="d0e34"></a>The choice</h2>
</div>
<p>Just as there is more than one path to Enlightenment, so there
is more than one combination of exams that leads to Microsoft
Certified Solution Developer-hood and the privileges that come with
it (the right to buy geeky polo shirts with MCSD logos from the
official website, the right to leave King's Cross station by
platform 9&frac34; and so on). At time of writing, all MCSD
candidates must take the core exam <span class=
"emphasis"><em>70-100 Analyzing Requirements and Defining Solution
Architectures</em></span>. You get to choose one 'elective' exam
which can be one of eleven product-based offerings, I went for
<span class="emphasis"><em>70-229 Designing and Implementing
Databases with Microsoft SQL Server 2000 Enterprise
Edition</em></span> because improved knowledge of SQL Server seemed
like a worthwhile thing to acquire. Finally, the would-be MCSDer
must take a pair of exams called <span class=
"emphasis"><em>Designing and Implementing Desktop Applications with
Microsoft N</em></span> and <span class="emphasis"><em>Designing
and Implementing Distributed Applications with Microsoft
N</em></span> where 'N' is one of Visual C++, Visual FoxPro and
Visual Basic.</p>
<p>Now me, I'm a Pascal programmer really, and though an
experienced dabbler in C++ and VB, by no means an expert.
Consequently this was not an ideal spread from my point of view. In
the end, having been subjected to a little peer pressure ('Are you
really thinking about doing the VB exams? Then we would just like
you to know one thing: <span class="emphasis"><em>of
course</em></span> we will still respect you...'), I went for the
Visual C++ exams.</p>
<p>This was all very well as far as preserving my programming
machismo went, but meant I had some learning to do. How to acquire
the knowledge? I consulted the Microsoft's website. It recommended
special own-brand training courses appropriate to each exam, and
nominated approved local centres where I could attend them. There
were three five-day courses officially suggested for the two Visual
C++ exams; I priced them at a UK supplier pointed to by the
Microsoft website... and the total fees came out at over
&pound;4500! My keenness for this approach was further blunted by
the recollection of a previous Microsoft five-day course on OLAP
extensions to SQL Server. This had been a) stultifyingly boring, b)
of rather mixed quality and c) was accompanied by printed notes
that, despite considerable heft, had become useless as resource
before one could get them back to the office.</p>
<p>A 'real' course appeared to be out. What about the alternatives?
As part of a job lot of Microsoft software, we had previously
acquired some CD-ROMs that offered self-paced interactive training
from the 'Mastering' series. I took a look at these to see if it
was worthwhile getting the titles recommended for my exams. One of
them, unhappily the ultra-relevant one about programming with MFC,
had mysteriously become unreadable in all our machines since we had
originally acquired it, revealing a hitherto unsuspected
compatibility in behaviour between optical and magnetic media.
However another, about <span class="emphasis"><em>Distributed
Applications with Visual Basic 6.0</em></span>, was playable.</p>
<p>Its content turned out to be a mixture of 'straight' reading,
short filmed lectures, shown in teeny frames, delivered to camera
by unhappy-looking senior Microsoftees reading an autocue ('Hi, I'm
Jim Doolittle, and I'm in charge of COM database interfacing here
in Redmond'), short animated sequences, also in teeny frames,
showing how to place buttons on dialogs, a few test-yourself
questions at the end of each section and an abundance of cross
references to so-called 'white papers'.</p>
<p>None of this did much for me: I find learning things by reading
quantities of onscreen text rather difficult. If I was going to
ingest a lot of material, I needed to have it printed on dead tree.
I decided to buy some books.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e67" id="d0e67"></a>Prey</h2>
</div>
<p>A trip to Foyles bookshop on the Charing Cross Road quickly
showed me how the commercial world sees Microsoft exam candidates:
as prey. Whole stacks of books, which in my carefree,
no-need-for-qualification days I had not noticed, were devoted to
the subject. As I walked past them, they seemed to gloat from the
shelves: 'Are you sure you can get by without me? How do you know
that I don't contain the answer to the question that will make the
difference between passing and failing?' The volumes ranged from
huge, official Microsoft hardbacks at forty smackers plus or more a
pop, down to unofficial 'Fast Track' paperbacks at a mere &pound;21
or so. I wielded the borrowed company credit card and bought one of
each.</p>
<p><span class="emphasis"><em>Desktop Applications with Microsoft
Visual C++ 6.0</em></span> (ISBN 0-7356-0795-8) cost &pound;47.99,
had 700 pages and weighed 3lb 11&frac34;oz on my kitchen scales. It
came with a pair of VATable CDs in a pocket in its back pages.
These contained all the code for the 'lab' exercises in the text, a
time-restricted trial copy of Microsoft SQL Server 7.0 that one
needed to complete the exercises and, best of all, a program that
presented a 20 question mock exam in the style of the real
thing.</p>
<p>Based on my experience with this book and a sister volume from
the same series, the first thing you should do after getting it
back to the office is surf to the Microsoft website, find the
lengthy page that lists the errata and go through and biro them
into your copy. The proof reading of these books, on the evidence
of my two samples, is wretched.</p>
<p>The Visual C++ book - henceforth <span class=
"emphasis"><em>DAWMVC6</em></span> - divided into four sections.
The first chapter discussed something called the 'Microsoft
Solutions Framework', which I think Microsoft would have you
believe is a development methodology, but which I found to be a
vague mishmash. I couldn't get anything in this chapter, which is
stuffed full of buzzwords and acronyms, to stay in my head longer
than about one minute - a pity because I think there was an exam
question riding on it. Chapters 2 through 7 whizzed through
Microsoft's venerable old library MFC with, I noticed, rather less
fuss and justification than was afforded the thing in former times.
Chapters 8 through 12 covered COM using both MFC and the more
modern, templated ATL library; Chapters 13 and 14 picked up various
leftover bits such as debugging and installation tools.</p>
<p>The example C++ code in <span class=
"emphasis"><em>DAWMVC6</em></span> was written in a style I think
of as 'Microsoft Lower Soviet'. The notation was Hungarian, the
instance data was always protected and never private, and the code
was full of obscure and windy redundancy like this:</p>
<pre class="programlisting">
SetFundsVisible(m_bFundsVisible ? FALSE : TRUE );
</pre>
<p>where I, and surely you, would write:</p>
<pre class="programlisting">
SetFundsVisible(!m_bFundsVisible);
</pre>
<p>For all my complaints, I completed the book and its exercises in
one arduous four-day slog, and by adding a couple of days reading
up the 'Distributed Applications' (as opposed to 'Desktop
Applications') topics not covered - in essence this amounted to
mugging up a little on something called the Microsoft Transaction
Server using the MSDN library - I found that I had crammed enough
to attempt the two Visual C++ exams. This book did its job very
efficiently, and was much better written than the stultifying
<span class="emphasis"><em>Designing and Implementing Databases
with Microsoft SQL Server 2000 Enterprise Edition</em></span> book
that I used subsequently.</p>
<p>The other book I bought was <span class="emphasis"><em>Fast
Track MCSD Solution Architectures</em></span> (ISBN 0-7357-0029-X,
&pound;21.99), which was based on the general-purpose exam that
Microsoft requires all MCSD candidates to pass. This exam combined
a test of one's ability to produce normalised database schema with
a sort of general knowledge test on all Microsoft's development
products. It's the kind of gen one picks up by osmosis over the
years. I found the book of limited use with the actual exam
material per se, but it did contain some very cynical and good
advice about passing any of these Microsoft exams.</p>
<p>You must remember (said this book) that the exams are usually
set shortly after the products first release. Suppose one
encountered this question in a Windows NT Server 4 exam:</p>
<p><span class="emphasis"><em>What is the maximum number of
processors that Windows NT Server 4 can handle? A. 2 B. 4 C. 8 D.
16</em></span></p>
<p>The correct 'real life' answer (said the book) is either D
(because NCR makes some 16 processor servers that run NT Server 4
just fine) or C (because Microsoft's End User License [sic]
Agreement states that 8 is the permitted limit). However, the
correct answer to get the exam mark is B, because four was the
number of processors that NT supported <span class=
"emphasis"><em>when it was first released</em></span>. Microsoft
exams test only against core product - changes made in option and
service packs don't count.</p>
<p>The situation sounded fanciful, but I discovered that such
conflicts - between life experience and what Microsoft wanted to
hear - occurs in the real exams. For example I got nastily hung up
on a question that demanded to know which database interface should
be preferred to let a Visual C++ application talk to an Access
database. The difficulty was that Microsoft's favoured <span class=
"emphasis"><em>API du jour</em></span> when the exam was written,
ADO, was (I had discovered empirically) inefficient with Access
databases, whereas ADO's now-despised predecessor, DAO, ran like
greased lightning. Should I act on this practical knowledge? Like a
fool I did, and in retrospect I am confident this cost me a
point.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e119" id="d0e119"></a>Having a
go</h2>
</div>
<p>Microsoft exams are incarnated on Earth as Windows programs. An
application asks the questions (apparently a random selection
loaded from its database), enforces the time limits and
congratulates or commiserates with you at the end. It's all very
twenty-first century - instead of the traditional exam desk
balancing on three of its four legs, you get a PC with a blurred
14&quot; monitor and a mouse with a dicky left/right roller.</p>
<p>Most of the questions (and in fact all those in the Visual C++
exams) were of the traditional multiple-choice type with a list of
answers A through D (or higher) marked by radio buttons or check
boxes, according to whether a single or multiple answers are
wanted. The Solution Architectures and SQL Server 2000 exams
included questions with more elaborate GUI furniture, requiring one
to make connections between process boxes, and drag and drop
database fields into tables, and place activities in order. I
thought I had better have a practice at this before undergoing the
ordeal.</p>
<p>The <span class="emphasis"><em>DAWMVC6</em></span> book came, as
previously mentioned, with a practice exam of 20 questions. This
was absolutely fine - it gave me a good idea of what to expect, but
I wanted to find out more. I ventured onto the Web - and at once
found myself feeling like prey again.</p>
<p>Microsoft didn't offer any samples of its questions, but both
Cert21 <span class="bold"><b>www.cert21.com/</b></span> and
MeasureUp Inc <span class="bold"><b>www.measureup.com/</b></span>
had practice exams on their websites that one could take directly
on the web through a browser. But of course they wanted money:
MeasureUp asked US $59 for 30 days access to one set of exam
questions, Cert21 a more reasonable US $22.95. Cert21 boasts: 'Our
practice exams are harder than the actual certification exams' and,
judging from the free sample of 20 questions per exam that it
offered, I think that this was true. The questions were harder, but
I was not clear that this was a good thing.</p>
<p>A sample Visual C++ question, for example, required that one
memorised the defaults of the program that installed Visual C++,
surely a pointless exercise, and not something encouraged by
Microsoft's syllabus as far as I could see. MeasureUp's free
questions were also rather fierce, making me wonder if these
companies selected their samples so as to intimidate the candidate
into buying the full package. I was further annoyed by quite bad
typos and errors in the offerings of both companies; for example
MeasureUp's SQL Server sample of 10 contained one mismatched
question and answer set, which of course rendered the question
quite useless.</p>
<p>When I came to take the exams for real, it seemed to me that the
actual questions did not resemble the web experiences of Cert21 and
MeasureUp as closely as one would expect. To anybody following this
path, I suggest that by all means sample the freebies these
companies offer, but don't be too intimidated when they predict
failure for you, and leave your credit card safely in its
pouch.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e143" id="d0e143"></a>The dreaded
day</h2>
</div>
<p>Microsoft exams are run by an organisation called Prometric,
whose contact details can be found on Microsoft's website. They
cost &pound;65 + VAT per exam attempt. Ring them up, credit card in
hand, and within a minute or two you can book yourself an exam at a
time and location of your choice. They accept bookings a few days
ahead of the exam.</p>
<p>The exams are conducted at the offices of training companies -
presumably those same training companies that offer the expensive
courses. You pitch up on the day with two pieces of id - say a
passport and a credit card - and get checked by the reception lady,
who shows you into a small room containing half a dozen elderly
PCs. She types your candidate number into one of them, and off you
go. While you are taking your exam, other candidates wander in and
out to take their own. The program controls your allotted time, and
includes facilities to let you mark and review questions you aren't
sure about. A clock counts down through your time, and throws you
out at the end. You are given an opportunity, before you know your
score, to comment on any of the questions. The cynical Fast Track
book says not to bother with this procedure, as it is most unlikely
that you are going to be able to appeal the result because you
thought Question 18 was badly worded. Then you get to read The
News, and a laser printer on the reception lady's desk spits out a
certificate with your score on it, which she stamps for you with a
special Prometric stamp. And that's it. It's anticlimax city,
Arizona.</p>
<p>I made an error when booking my Visual C++ exams: in my keenness
to get it over with I booked both of them on the same morning. This
was a mistake not because it was a long slog (as I recall these
exams are about 90 minutes each; one containing 50 questions, the
other rather fewer - say 35) or because they were particularly
tough - they aren't - but because of the risk I was taking. I
hadn't allowed for the psychological effects of instant results. If
I had flunked the first test, I would have known this as I started
the second, and would surely be put off. This didn't happen, but I
actually started to worry about the possibility during the first
exam. It was a daft thing to do, and I recommend you don't do
it.</p>
<p>Microsoft exams are pass or fail - there are no grades. There
are, however, scores; scaled to be out of 1000 irrespective of the
number of questions, which like the pass mark varies from one exam
to the next. Microsoft doesn't tell you these pass marks, but this
is just meanness as far as I can see. The information appears on
the score sheets, and is therefore in the public domain. For the
record, 70-015 (Distributed Visual C++) was 540, 70-016 (Desktop
Visual C++) was 534, 70-100 (Solution Architectures) was 730 and
70-229 (SQL Server) was 704. You'll notice that the Visual C++ pass
marks are quite low, especially given that with this kind of
multiple choice, you would expect to score 250 or so just by
throwing a die. (By the way I found the SQL Server exam much
harder, and in fact, cough, took two attempts to pass it.) However,
you should note that 'ordinary' C++ knowledge, such as is discussed
and presented in ACCU's fine magazines, will be of little use to
you. There was only one 'real' C++ question in my two exams, and
this in essence asked 'What is a virtual method?' - not taxing
stuff.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e154" id="d0e154"></a>A few
conclusions</h2>
</div>
<p>What have I gained from this exercise? I have had a useful
reminder that examinations retain the power in later life to give
one anxiety nightmares. I have the satisfaction of proving that I
can still do this sort of thing. I have an MCSD 'lapel pin' which
is very nice, although I'd happily swap it for a Blue Peter one if
anybody is offering. I have made myself more valuable to my
employer (at a final cost to him of around &pound;500 in books and
exam fees), and I suppose I am now more employable.</p>
<p>Sadly, I have already lost most of the crammed knowledge I put
on for the exams, which evaporated even quicker than my thin grasp
of Geography did the happy year we were allowed to give it up. With
the onward rush of C# and .NET, I do not expect to get the chance
to use what remains.</p>
<p>The thing that I like most about the exercise is that, from this
point in, I am qualified to dislike Visual C++'s frameworks and
libraries. It sounds like - and is - a petty thing, but for a
hardened Delphi-head, that is a prize worth having.</p>
<p><span class="emphasis"><em>Many years ago Will Watts used to
edit the now-defunct .EXE Magazine. He now works as a programmer
for Applied Industrial Systems, a consultancy based in West
London.</em></span></p>
</div>
</p>
<p><strong>Notes:</strong>&nbsp;</p>
<p><em>More fields may be available via dynamicdata ..</em></p>
</div>
</channel>
</rss>
