I've probably blabbed about this at length, but freelance web development.
In case you kids ever consider not working for the man, here's a quick pro/con rundown:
PROS:
* Set your own hours, except when clients require you to be present at a specific time.
* Nobody watching you work.
* No travel time to office or other workplace, unless of course you have an office somewhere that isn't your house (which is actually better).
* Can use computer at work to waste time on message boards and browse for porn.
* Your pay really is more or less dependent on how well you do, so if you play your cards right you can give yourself a pretty big "raise" fairly often. I've actually had to bump my rates up about $10/hr or so just this month in order to manage my workload.
* Technically you cannot be laid off.
* Working for several different people means you never end up in a tedious rut of doing the same damn thing every day. Or even two days in a row. Honestly on any given day I'm doing like three completely different sorts of programming work.
CONS
* There's no guarantee when or even if your clients will actually pay you. This, as you may imagine, is somewhat stressful.
* There's no guarantee that you'll even have clients.
* Working from home means there's no separation between your personal and professional life. This makes things a bit more stressful on both ends.
* Significantly higher taxes. Did you know your employer actually pays half of your social security/medicare/stuff our generation will never see obligations? Self-employed people get to pick up the slack.
* By the same token, tax returns become something of a mathematical gordian knot. At least three times during the process the form told me "now change line 1 and throw out everything you've done so far."
* No benefits, unless you buy them your own damn self.
* A lot of the work involves marketing and promoting yourself, which is something that most people here are probably especially terrible at. I myself mostly manage to stay afloat through some amazingly good connections, a thankfully solid reputation, and honestly, lots and lots of dumb-ass luck.
* You have to estimate time and costs for shit all the time, which I'm terrible at. I honestly just take whatever's reasonable and then double it. Fortunately most people tend to just say "yes" to whatever crazy-shit number you give them, which then just makes it hard to resist the urge to start ripping them the hell off.
* As much as you probably hate your coworkers, they're a valuable social outlet. Working in total solitude all day is probably having an unfortunate Jack Torrance effect on me. Well, that and the alcohol. And the undead bartender serving me alcohol. And the blood on the walls. REDRUM. REDRUM. Heeeeeeeere's JOHNNY!!!
* If you're naturally lazy and nobody's watching you to make sure you're working then you will by nature slack off a lot and probably lose a buttload of income.
Honestly I've thought more than a couple times that I would much rather have a normal 9-to-5 grind and a regular paycheck and be done with this silliness, but lately I've been so damn successful at it that I can't justify the hit I'd probably take if I dropped it all to go work at a place that can actually hire people right now. So it's kind of a high-risk/high-reward kind of deal, really. I don't recommend it unless you've already fallen into this sort of thing.