Last week I had a radical shift in my schedule. While most of my nights had been free in the past, I started taking classes three nights a week. The interesting thing about these courses isn't the specific subject matter, but rather how I found them and why I'm taking them. You see, in my spare time, I'm a hacker.
I don't spend my weekends breaking into websites or stealing credit card information. I won't break into your email or write a virus that finds its way onto your computer. I spend my time learning. Learning how the system works, learning ways the system is or can be broken, learning what issues there are, right now, that could let me hack into your computer. Hacking isn't about breaking into sites or computers, it's about studying how everything works, from top to bottom, to make sure that everything will work the way its expected. Of course, when I tell people that I'm a hacker, that is often not what they first think.
I started reading hacker magazines when I was in high school. When I got to college, I started going to conferences such as HOPE and DefCon, where I got to meet hackers from all over the world. These weren't people who made fraudulent charges to stolen credit cards or broke into websites. They worked with places like Google, Ebay, Microsoft, the state department, the TSA, and countless more. They spent their days trying to break into critical systems , to make sure that no one could get in. And the shocking thing is, they always always find a way in.
Thinking like a hacker has been the biggest single asset to my work as a programmer. Hackers are thorough, checking every part of a system. They don't need to break in through the front door, slipping something through a crack in a metaphorical window is often just as effective, and far harder to detect. Hackers also think about every element of a system. Sure, you may have your software locked down tighter than Fort Knox, but do you have a good lock on the door to the room its in so that they can't get in? Are the walls thin enough that they can break one down easier than picking the lock? This may sound a bit extreme, but its not a joke - in fact, one group won a hacking contest at Defcon by renting the room next door and knocking a hole through the wall. The art of hacking, put simply, is the combination of attention to detail, knowledge of all elements of a system, and the ability to think outside the box on a day to day basis.
Hollywood usually portrays hackers as either cool cyber delinquents who can do anything with a computer, or fat cyber-criminals who sit at a desk 24/7 trying to break into systems, steal money, and overthrow the government. The media has branded hackers as a new wave of cyber thieves. Very few people recognize the simple fact that hacking is just a skill. Many people know how to pick locks. Some of them are criminals, who use their knowledge to break into homes & businesses. Most, though, are locksmiths, using their knowledge to build better locks or let you into your home when you lose your keys.
So the next time you hear someone is a hacker, keep an open mind. You might even be able to learn a thing or two.