A snippet from a post draft I wrote last week. This might explain pretty well why I haven’t been posting as much as usual, and why my last post was a veiled rant about my school.
But then, what am I? I’m letting my willpower be spent on the bullshit that is this web design class, which I am literally only taking to make some bureaucrats somewhere happy. The HTML and CSS standards have changed a fair bit since I self-taught web design five years ago, but I don’t even read the textbook and the teacher doesn’t lecture about it. I only read the assignments and W3’s documentation, and the assignments call for some weird conventions and structures that I wouldn’t use, because they’ll look weird when the browser is resized or when it’s viewed on mobile. This class has the heaviest workload out of all my classes, too, and I find it literally depressing to work on. It’s a pointless load of stressful busywork that teaches me nothing and that I don’t care about. Maybe if I were a better programmer, I’d drop the class and do something useful with my energy. But… I need it to graduate. If I have this degree, it’s a bargaining chip against future bureaucrats.
You know what’s a better bargaining chip than an Associate’s degree? A Bachelor’s. I think it’s time to move on.
I can count the number of staff  I actually respect at my college on one hand.  I see only two of those staff on a regular basis. Both are ridiculously overworked. Their accomplishments are regularly minimized and the credit claimed by higher-ups. They have Master’s degrees and could be working half as much for twice the pay if they chose, but for some reason they like to sit in front of a bunch of noob coders and remind them that = is not the same as ==. Why? Got me.
Even they sometimes produce classes that end up not so great, though. Which is understandable, because they’re trying to juggle nine of them at a time. Both are getting sick more often this semester than they normally do. (It’s just now, as I write this, that I realize how much it bugs me.)
While I haven’t lost respect for all members of staff, I’ve lost respect for the school as a whole.
I have gone through multiple classes where the college has promised, “We’re going to teach this”–and had that promise not followed through upon. I’ve had to drop classes where the online teacher went MIA, or the textbook and online documentation were so nebulous and/or buggy that it was impossible for the teacher to teach . This school has instituted new, never-before-run classes as required; they’ve tried to force a teacher on me who harassed me; and they are taking advantage of people I respect and admire.
Now I’m taking this web dev class, because it’s one of the few I still need for my degree. What’s it like? See snippet above, but for the tl;dr:
- There isn’t a test-out. I know how to do what they’re trying to teach.
- The textbook is awful and teaches bad practices. (A friend who worked for years as a freelance web dev wants it burned.) I don’t even read it. Nor does most of the class. It was $120 though.
- We used to have like fifteen people. Half of them dropped. [Edit: About ten of the original fifteen or so showed up today, which the teacher remarked upon as “everybody’s here, what a full class!” So I guess only a third actually dropped, and the other people just don’t show up half the time.]
- The (overworked) professor doesn’t lecture, she just assigns and grades work. She’ll help if you’re having problems… but the textbook is just as cryptic and incomprehensible to her as it is to you. 
- It runs at 8AM.
I’m so close to this degree. But you know what? I can’t stand another semester of this crap. And trying to catch up with this class? I’ve been trying to do that all semester, but it’s not working. 
So, I’m thinking that rather than finishing my Associate’s and then not finishing my Bachelor’s, maybe I’ll finish my Bachelor’s and not my Associate’s. I think a four-year university is more likely to be run with some sanity (as there’s more free-market competition) than a community college.
And I have two good candidates to fill that space. They’re in a little town and a small city, which I don’t like, but the rent is very reasonable; Northern Iowa University has an awesome CS department head and a required curriculum that teaches things I think are valuable; Aurora University is nearly as cheap as community college when you factor in their standard GPA scholarships, will take a TON of my credits as transfers, and is an hour and a half from Chicago. I’m thinking about going to both, actually, because I want the first guy to teach me Lisp and I want the piece of paper from the other place. They’re both pretty darn cheap as colleges go.
I’m planning on re-visiting them. I really should quit stalling on applying, but for the past weeks it’s been another giant crazy thing on my to-do list.
But that’s going to change soon. I’m dropping this web dev class (assuming I still can–cringe) and I’m dropping the capstone project that’s only useful for my degree. That’s half my classes, but waaaaay more than half my workload. It leaves me open to work on stuff that’s actually useful, like the production app we’re building in my mobile app dev class, which is for an organization in a nearby city. We don’t have much time to build it, and I want to make sure they get something good from us!
I resisted taking this route for quite a while. It feels like giving up, when I’m so close to being done with this degree. But changing my goals is something I do a lot. I know I do that a lot. I’m eighteen years old; I’m supposed to. So I’ve intentionally left things flexible for myself. I’m not stuck to one path, so when I run into crap like this, I can just walk around it. I’ll take my chances with the next bureaucracy.
I do have one goal that hasn’t changed since I decided what I was studying in college. I want to be one of the best developers. I know that most programmers are pretty mediocre, and the top 5% (or so–this figure varies depending on the cynicism of the person talking) do all the really good work, and I want to be one of those. This is the goal I’m dedicated to. The other stuff varies depending on which path I think is the most practical and efficient way to get there, which is a problem that probably verges on NP-completeness.
I am patient with that goal. I know it takes a long time to learn to code really well, and I’m willing to put in the time and effort. What I’m not is tame. I have a rather short limit at which I’ll tolerate doing pointless things to make bureaucrats happy. I have boundaries on how much I’ll let people waste my time, because it’s not an infinite resource, and my energy, which (as anyone who’s ever had depression knows) is precious.
This post is mostly an expression of the clarity I’ve achieved on an issue about which I’ve been fighting with myself for weeks. If I get confused about why I made this decision later on, it’s also documentation as to what I was thinking.
But for you, it’s a warning about community college.
If you want to study in a field that’s in demand, think about the people who currently have credentials in your field. How many will want to teach? Of those, how many will want to teach in a community college? Are there better things for them to be doing? Could they be teaching in a four-year university just as easily, where they can work with colleagues they admire and/or teach more specific/obscure things they really like?
In other words, is your community college going to have a really hard time hiring and keeping good teachers?
I have no clue why my favorite professor is a professor. He’s worked at famous companies, developed really neat stuff with other really smart people, been all over the world to talk with all kinds of customers, knows at least one human language that isn’t English, and now he’s here in my hometown, running a little farm and teaching classes and telling silly coding stories to a bunch of college students. He seems to really enjoy his job, but he’s also gotten sick like three times this semester and I think the stress is getting to him more than he’s showing.
Is this likely to happen often? No. Most devs probably don’t think of full-time teaching as some kind of fun “retirement.” Why would they, when they could just as easily settle in some suburb of their favorite city and hack open-source all day long?
Just be careful, fellow larvals. I’m not saying community college is always a bad deal; just that it isn’t always a good one, and there seems to be a reason that makes this more than an edge case. Also, explore nearby four-year universities–even the private ones–even if you’re on a budget. You may find that they’re just as reasonably priced.
On a lighter note, I think my knowledge of Kivy is about to become useful again. Our time is pretty darn short in this mobile app class, and using Kivy could cut our work in half (as we wouldn’t have to code for separate mobile platforms). Although, since I’m the one who suggested using it, I have to come up with some sort of demo for it. This might be irritating for reasons you’d understand in context, except I like Kivy and I wasn’t expecting the prof to even consider it.
Anyway, I’m off to start building that.
I’m going to leave you with this very long thread of programmer jokes. (Make sure not to miss the one at the top of page 9.)
 in my degree; props to the tech support, janitors, and that really patient front desk lady with the rockin’ curly hair. Also there are some great profs in other departments–I had an awesome math teacher, and one or two of the networking folks are pretty neat–but the programming department sucks and that’s where I spend 90% of my time and money.
 In decimal. Although if I did count in binary, it makes a gesture that, while lacking in finesse, expresses my current attitude toward my education.
 That latter one? The textbook was more like a reference manual than something to learn from, and there weren’t any projects in it, so we ended up using like a third of our time to scour the Internet for tutorials. I never completed any of the projects we were trying to make work, so eventually submitted three chunks of unfinished, broken code at the very end of the class. I got a B, presumably because the prof was reduced to grading on a curve and the other folks in the class didn’t do much better. If I hadn’t hated .NET before that class, there’s no way I wouldn’t have started to hate it afterward.
 I watched her stand over a classmate for twenty minutes, trying to figure out why the feature in the tutorial wasn’t working. I went over and looked at the code and it was perfect. We puzzled over it, flipped back through the book, and eventually found a little note that said the feature was unsupported in three different browsers. We opened it in Firefox and it was fine. That guy dropped, I think.
 I wish I were writing this on a hand-coded web site, for maximum irony, but I’m too lazy for that when WordPress works just fine for my purposes. I suppose it’s ironic enough that it’s not even worth hand-coding my blog.