How to teach your Girlfriend programming
Posted by Teifion - 23/06/08 at 08:06:12 pmBefore we begin, there are a few things that must be kept in mind.
- I’ve not got a Girlfriend
- These tips should work for men too and can be applied to nearly any subject
- This is not meant to be sexist in any way, if it comes across as such then that was not the intention
- Your girlfriend wants to learn
- I’ve got a face like a bucket of smashed crabs… (okay, maybe that isn’t relevant)
Preparation
Unlike mortals like myself, when you cook a meal for 30 you can do so with no preparation. However, when teaching someone how to do something new, it helps to have some idea of what you are going to. You do not need an extensive mission plan but a rough idea of the topics you’ll cover, the order you will cover them and maybe the type of alcoholic beverage you will use to scrub all memory of me from your mind.
If you are not sure of the topics that you need to cover, google tutorials for your chosen language(s) and look at the chapter titles. You may also find that 1 of the early topics on a site holds several sub topics that you may want to teach separately, much like I used to eat the blue smarties before everybody else.
Relevant and visible progress
No doubt you’ve got 5 different qualifications, one of which is for being totally cool. At some point while taking your degree is theoretical maths you might have thought “this is a total waste of time, I’ll never use this”. Fascinating though the structure of a for loop is, it will probably not be readily apparent in it’s use.
When explaining something, try to make it so that she can see the effects of what she does both clearly and quickly. Using a for loop to count numbers is visible but it’s about as relevant as the baking foil in my sock drawer. Likewise, using a for loop to perform a bubble sort will take a long time to implement and not focus on the for loop.
She types, not you
Yes you can type 31.4 words per minute with your nose and 200 normally, and you can lift man-sized weights with just your eyebrows. Your girlfriend can’t. You tell her to type in a simple little bit of stuff and it takes here AGES! But how will she get faster? Well, how did you get faster? You typed a lot and thus it stands to reason that given time she will also type faster.
But there’s more to it than that. Giving her 100% control of the computer allows her to know that it is not you achieving results but her. I know that when there’s some small thing and you just want it done quickly it’s so easy to “borrow” the keyboard for just a second. Do not. It will send a message that she cannot do something, much better to let her know that she can do anything you can, even if she needs a little instruction at the moment.
You are not somehow more intelligent
You may be able to judge the exact size of spanner required for any given nut. You may be able to change the oil in your car blindfolded with one hand tied behind your back. Neither of those make you smarter than someone else, even if they think the best way to remove a nut is with a spoon. What you need to keep in mind is that you probably don’t have a clue what the different types of pedicure are, or possibly even what a pedicure is.
So when you explain to her what an object is and she seems confused, remember that they think differently to you. Try to explain it in a different way, this will be easier to do with practice and knowing the person well will help you in this.
You know more than her
You know what an “object” is, you know why an error on line 24 may mean you forgot a semi-colon on line 23. You may not however know the difference between two pairs of apparently identical shoes. You know more than your girlfriend about whatever you are teaching, but not about everything.
Try not to skip over things that you take for granted, it may be obvious to you what curly braces, semi-colons and doctypes. By all means don’t go too far in the other direction and patronise her. When you skip over such a thing (as you near undoubtedly will), apologise and explain it.
Jargon is bad
XML, HTML, Ajax, CSS, Server-side, WoA and SrmzA, you know them all (except the last one which I made up). You know what they mean and probably what they stand for. You might even have made a little poster of them to put next to your poster of the periodic table (my PT poster has cool pictures). When you tell your girlfriend that you know all about Ajax she’ll ask why you never clean up after yourself if you know all about it.
Teaching someone something means you transfer information and you cannot do that by using things that she does not know about. And don’t assume she’ll remember them if you give her a list at the start, she’ll have much more to take onboard and lets face it, jargon makes you feel cool but does it really accomplish as much understanding for loops and image tags?
Praise achievement
While you clearly learnt everything you know by figuring it out for yourself while harvesting crops for starving children, everybody else had to learn bit by bit. There are more methods of teaching than there are tooth fragments of my defeated enemies on the necklace around my neck. The two popular ones seem to be punishing mistakes and praising success. Punishing mistakes is good fun but you are expected to use cliches such as “you have failed me for the last time” and build doomsday devices.
I much prefer the praising success, don’t overdo it or you’ll seem as pathetic as the lackeys of those that punish failure. I’m assuming that you want her to be confident in the knowledge you are trying to impart and the best way to instill confidence is to praise. Make sure to praise sincerely, if she can’t understand something then telling her she is really clever will make you look slightly more clueless than me.
I hope that these tips are useful to you and that you are successful in your endeavors. Please do leave comments on what you think I am wrong about, depending on how past it’s use by date my lunch was, you may well be right.
3 Comments »
RSS feed for comments on this post. TrackBack URI
Leave a comment
You must be logged in to post a comment.





[...] au courant niveau programmation, j’ai trouvé un article assez marrant de prime abord : How to teach your Girlfriend programming publié sur [...]
Pingback by Comment apprendre ? votre petite-copine ? programmer? | Le blog de David Loureiro — August 26, 2008 #
[...] public links >> relevant How to teach your Girlfriend programming :: Searchlight Digital ::… Saved by MephilesTheDarkness1 on Fri 26-9-2008 News: High School Surveillance Camera Ghost Saved [...]
Pingback by Recent Links Tagged With "relevant" - JabberTags — September 28, 2008 #
[...] last, I blame Pete and the fact that I am writing really funny articles (so far about 3) for Searchlight Digital. Well, I think they are funny [...]
Pingback by Me to me | Teifion Jordan and the life of Teifion Jordan — September 30, 2008 #