About

  • I’ve been an embedded programmer for 10 years. (Lordy)

Exactly. And aside from the fact that this makes me feel old, it means I’ve worked on enough projects and at enough companies to have a reasonable idea about what is and what isn’t right in software development. For more info on what I do, see my Hire Me page.

  • As you can probably guess from my site, I’m a female programmer. (Eh?)

Yup. I know there’s not too many of us around, but we’re out there. A bit like the truth.

You know, quirky t-shirts that are only funny if you’ve spent the last 3 years in a computer lab, that sort of thing.

I create all the designs myself, and print by hand, so if you want to display your geek-chic (or geek-manliness if you prefer), then pop over to Geek Overflow and pick yourself out something nice.

Simple Programming

Simple programming? Isn’t that an oxymoron?

I hope not. I write tutorials and guides to help you see that you don’t need to be a nerd, physics genius or maths prodigy to be a brilliant programmer. I’m here to dispel the myths that programming is:

  • Boring
  • Difficult
  • Only for men
  • Embarrassing

In fact, programming can be one of the coolest and most personally satisfying things you can do. Yup. That’s right. Stay with me here – all will be explained.

What I’d like to see

I’d like to see more people making software development a career choice.

I’d like to see less of our business requirements shipped overseas and outsourced to engineers in other countries.

I’d like to see a reduction in the nerd culture that surrounds programmers (but hey, don’t let me stop you if that’s really your thing).

And I’d like to see more girls in programming.

You don’t need to be a nerd to be a programmer

You don’t?

Absolutely not.

Programming requires two things over and above all else: attention to detail and creativity – qualities that most of you wouldn’t immediately associate with being a successful software developer.

Did you know that if you give 5 different programmers the same task, they will come back with 5 different solutions? There is never a single correct way to solve a problem, and that is why coding is so different to a subject like mathematics. In maths, you have a single answer, a single proof, a single correct outcome. In programming, although you rely on the behaviour of numbers and logic, the way you achieve your goal can be any way you care to think of.

Of course, I’m not saying all solutions are equal in elegance and efficiency – these are things you learn over time. But I am saying that you don’t need to have a massive brain full of “correct” answers in order to do this job well. You can think on your feet and come up with something original whenever you feel like it!

Why would anyone want to do this?

Being a software developer has lots of advantages:

  • It pays the bills.
  • If you’re very good at it, you can pick when, where and even how you want to work.
  • No two days are the same – it keeps your mind agile. No need for brain training!
  • It provides personal satisfaction to create/build/fix a program, and see it running smoothly.
  • You never have to experience the frustration of over-priced customer support in PC World to fix your computer.

This site is dedicated to providing clear and easy-to-follow coding tutorials, and brushing away the culture of nerdy weirdness that has surrounded computer programmers for so long.

What you can expect to find here?

  • Weekly, byte-sized C, C++ and GDB knowledge items. Here on the blog, or delivered directly to your inbox via my newsletter.
  • Fun, interesting and clear tutorials and articles in languages such as C and C++, and on other topics such as Linux, debugging, scripting and software processes.
  • Ultimate how-to guides on traditionally tricky subjects such as pointers and binary arithmetic.
  • Information about my services, such as how I can assist you in fixing legacy code and improving undocumented and behemoth code bases.

And what won’t you find here?

  • Design tutorials: I am pretty useless at aesthetics. I can tell you when something looks pretty, but not how to make it so.
  • Web tutorials: I’m a low-level programmer. I’ve worked on the command line, or close to it, for most of my career. I can only just about cobble my own site together and make it look presentable, so I’m afraid I can’t help you with yours.
  • Anything Java. I don’t speak Java. I can’t even say Hello World.

If you would like one-to-one assistance, or are interested in hiring me to consult or code on a project, please read my Hire Me page for more information and contact me via the form on this site.