Do Something New: Go To A Hack Night
The first computer I ever had, my family got when I was maybe three or four. It was a Macintosh Classic that my dad set up on a desk at the bottom of the basement stairs. This was back in the era of floppy disks (that were actually floppy) and dot-matrix printers, both of which we had, and all of which my mom eschewed for her dependable typewriter. I can’t remember now why we had this computer – I’m not sure that my dad used it for work, and I’m pretty convinced that he mostly just wanted his daughters to get acquainted with computers, back in 1990.
My dad is a programmer analyst, which is a job on whose description I’m not 100% clear, but I take it to mean that he’s been programming and coding for so long that he’s more capable than most programmers of finding errors in code and fixing them. He’s also been programming so long that he has, in his head, a huge library of coding languages, many of which are essentially obsolete – but the advantage of knowing them is that sometimes, networks were built on those coding languages, and then companies built software on top of that foundation in progressively newer coding languages, so while newer programmers are capable of fixing errors in new programs, my dad is capable of fixing errors in new programs that aren’t in the programs themselves but in their compatibility with the custom-made but decades-old operating systems and networks on which they’re built. Call it a point of pride.
I’m amazed when I watch my dad work, because he can look at a screen full of lines of code and understand what they mean; he can skim that screen visually and see what’s wrong with it. He’s operating in languages I do not understand, and he’s doing vital work – he was, for instance, one of the programmers who was tasked with clearing up programming errors prior to Y2K (which he assured me at the time was never going to result in a nuclear disaster, but had the potential to really slow things down if pre-emptive steps weren’t taken to update the code). He spent about ten years on a team making sure that Wisconsin’s largest health insurance provider would run things smoothly. To me, he’s like an air traffic controller, making sure planes land smoothly and in the right order, making sure that pilots are equipped to handle emergencies.
But I took more to MacPaint, Carmen SanDiego, word processing and publishing software when I was a kid than I did to coding, by which I mean I never became interested in coding until I was past my mid-twenties. I can work my way through practically the entire Adobe creative suite, I’m proficient with four or five different sound recording programs, and I understand computer games and video games on a theoretical level way beyond just enjoying playing them. But a simple coding language like Python? I have no idea what’s going on. And that sucks, because now that I make money writing, and write fiction otherwise, and make art, I’m starting to realize that I want to make games, too, and I don’t even know how to work my Mac’s Terminal.
Granted, programming and tech have been dude-heavy for decades, and that’s one of the things that drove me to play games on my own – logic games, puzzle games, old school RPGs – and to be inspired by their stories and their artwork, but never to ask how exactly they were made. That wasn’t always the case, though: The first programmers were women. And there’s an increasingly vocal and visible female population in the tech industry, evidenced by groups like Girl Develop It and Geekettes, as well as women-only hackathons like Pearl Hacks. Learning and knowing about all of that has emboldened me, at least a little, to try my hand at coding.
So I went to a weekly women’s hack night through Chicago Women Developers. I found them through Meetup – and all of these women’s groups and events, by the way, are extremely open and friendly to women who have absolutely no experience whatsoever in tech. I had tried to do an online video course on Python by myself about a year ago, but found it frustrating not to have anyone on hand to answer the very, very basic, foundational questions I have. I’ve been getting the feeling, more and more, that if you’re starting to lean practically anything but especially technical stuff from a base of zero knowledge, it’s probably better to get out of your hermit-hole and surround yourself with knowledgeable people.
And that’s really the whole idea. The hack night was less intimidating than it sounds – about 20 women showed up, many of whom brought snacks, and we all sat around a conference table working on our individual projects. That meant, for some of the women who are students or are actively employed in tech, doing “challenges” or working out problems for work, or doing side projects. For many of the rest of us, we were just trying to get a handle on some basic languages – mostly Ruby, which I was told is popular in Chicago right now.
I chose Python because it’s equally easy to learn (or so I’m told), and because there’s a pretty hefty library of games built on Python in both 2D and 3D, so it seems like the right choice for my goals. During the hack night, though, I was planning on using Learn Python the Hard Way, and quickly found out that instead of working in Python, the very first thing I had to do was learn how to use Terminal, the command line interface that Macs use. I got through seven exercises in the Command Line Crash Course in about an hour and a half, before getting to the commands “pushd” and “popd,” finding myself making a lot of mistakes, and figuring it was probably a good time to let my brain rest and go home.
But here’s an example of one of those really basic-level questions that I had to have answered: In Terminal, when I open it, each command line starts with the text “MacBook-Pro:~ rbrink $”. I turned to a developer across from me, pointed to it on my computer, and asked, “What is that?” She told me very nicely that it’s just telling me what directory (folder) I’m working in. I found it visually cumbersome, so I searched “How to change command line prompt,” and found this tutorial. Easy peasy! I mean, -ish. But just being able to turn your computer toward another person in the room, point to your screen and say “What is this?” instead of having to google something like “Why does my terminal have a thing before the command line” is exactly why you go to hack nights and meet people who are more experienced than you. When I left, I told them that I just got to the point where up until then, everything had made sense, but now the exercise I was on didn’t make sense anymore – and it helped tremendously to have the group founder tell me that no matter what your skill level in coding is, you will experience that feeling constantly. It’s just an issue of keeping at it.
I’m not going to code a game for probably months, and when I do, it’ll probably be, like, Pong. In the meantime, though, I’m going to learn a whole lot about my computer, about coding, about the linguistics and syntax of Python, about how commands work, and it’s from that Pong code that I’ll be able to jump into more complex commands. The benefit of going to the hack night was that it reassured me that, yeah, while I’m comfortable learning a lot of things on my own, I’m going to feel more productive and I’m going to learn more if I get out and actually talk to other people about the thing I’m learning.
[Image via Shutterstock]