A self-test for computer people The A+ certification exam has received a considerable amount of attention from the computer industry as an industry-standard baseline level of knowledge which entry-level computer technicians should know. Much commentary has been made on the certification; some people think it's great, but the most common opinion expressed about it seems to be that it's not thorough enough or advanced enough to be of significant value to a technician. While my personal opinion on the A+ certification is that it tends to get a worse rap than it deserves, it's fair to say that it covers a relatively basic knowledge set. So what's a computer person to do? Where can you find a vendor-neutral, comprehensive test that demonstrates a truly deep level of knowledge about computers? To the best of my knowledge, there isn't one. In the true spirit of the computer, then, I endeavored to create one. The following is a set of questions which, to my mind, embodies the sort of knowledge that would be expected of a genuine computer person. This is not a level of knowledge that most people employed in the computer industry possess; it is, rather, a level of knowledge expected of the extremely rare person who actually knows something about computers. The questions cover all areas of the computer field, and are not narrowly focused on limited things like operating systems or component assembly. Among the fields that a true computer-knowledge test should include are programming (in all the major computer programming languages), business (an awareness of the major companies driving the computer industry, as well as the people who work in those companies), geography (geographical aspects of the computer industry, particularly focusing on locations in the USA, India, and Japan), artificial intelligence, and electronics (which is a separate field unto itself, but which has many sub-topics which are highly relevant to computers). This is a scope of knowledge which surpasses all the classical "information technology" employee labels. It surpasses what a "computer technician", "computer programmer", "computer engineer", businessperson, or university professor is expected to know. It therefore seems inappropriate to imply this is a test just for "computer technicians". Perhaps "computerist" would be more appropriate, as a term suggesting someone familiar with and proficient in all aspects of computers. Try to answer all the questions without help (i.e. on your own knowledge, without having to use any references to look up information). ----------------------------------------------------------------------------- Who was/were the usual manufacturer(s) of C10 and C34 on the Commodore 64, and how many microfarads were these rated for? (If you don't know this, you don't understand computer hardware at the component level, nor the electronic components industry.) List the license plate numbers of all the cars on El Camino Real between Wolfe Road and San Tomas Expressway on August 15, 1998, at exactly 3:00 PM. (If you don't know this, you're not aware of what happens in Silicon Valley.) Draw a schematic of the 33-megahertz version of the 80486 DX. (If you can't do this, you don't understand how a 10+-year-old CPU works.) What was Bill Gates thinking at exactly noon (Pacific time) on October 3, 1988? (If you don't know this, you don't understand the people behind the computer industry.) What is the purpose of byte 36,872 of the version of NTLDR that ships with Windows 2000 Professional? (If you don't know this, you don't understand operating systems.) Devise a simple algorithm which receives, as input, a series of past lottery numbers and can intelligently guess the most probable next ones. Write a simple program which uses this algorithm and which has a decent user interface. Write it in the following languages: BASIC C Pascal Fortran LISP Perl Python Java PHP 80x86 assembly language 6502 assembly language Z80 assembly language 68000 assembly language (If you can't do this, you can't program applications.) Write a program in assembly or machine language for the Amiga 1000 to defragment a hard drive. (If you can't do this, you can't write system utilities.) Design a floppy-drive controller circuit board and drive mechanism that will read a floppy disk made on a ZX Spectrum and convert it into a format readable on an Atari ST. (If you can't do this, you can't design computer peripherals.) Design an integrated circuit (IC) which acts as an analog-to-digital converter (ADC) and which can selectably output binary data readable by the following computer platforms: IBM 360 Apple IIe Commodore 64 Amiga 1000 TRS-80 Atari ST ZX Spectrum BBC Micro MSX (If you can't do this, you can't design ICs.) List valid level passwords for each level of the original Lemmings. (If you can't do this, you don't know computer games.) From the sidewalk directly in front of the main entrance to Mountain View city hall, Henry walks 81,523 inches east-southeast. Once there, he walks into the nearest building he finds and begins using the first computer he sees there, changing byte number 5,623,239 of its hard drive to D6 hexadecimal. What is Henry's location in terms of latitude and longitude, what building is he in, and what effect will his change have on the computer? What is the tenth word on page 187 of volume 1 of Knuth's "The Art Of Computer Programming"? (If you don't know this, you haven't memorized the key books of the computer field.) On the Amiga 1000, the top plastic cover is held in place with 5 screws which are inserted from the bottom of the machine. Underneath this cover is a metal cover which covers most of the machine's internals except the power supply and floppy drive. While the screws for the plastic cover are all the same, the metal cover uses more than one size of screw. What is the length, diameter, thread pitch, and head type of the screws for both covers? (If you don't know this, you are not even qualified to be a "screwdriver monkey," as A+-certified technicians are frequently denigrated as being no more than.) ----------------------------------------------------------------------------- It is likely that less than half of the people employed in the computer industry today could answer more than half of these questions, even with full use of search tools such as Google. There are probably less than 100 people in the entire world who could answer all of these questions without having to look anything up. In fact, the figure is probably less than 10. If you can't, don't feel alone. However, being able to answer questions like these on your own remembered knowledge would be something to shoot for.