Foot in the Door Book Excerpt

Below is an excerpt from my book about my journey learning to code and teaching myself after graduating from college with an art degree and little idea of what I was qualified to do next. I had taking some coding classes but I didn’t think I’d get any opportunities to be creative if I chose that career. For a while I thought I would be a designer, but I quickly learned that working with clients was not my cup of tea. That was when I discovered creative coding, and taught myself to code by making games.

There were a lot of people that helped me along the way but also times where I really felt like I could use a guiding hand to help me with some scary decisions. I hope that this book can act as that guiding hand for people who are just starting out their careers and are interested in tech.

Memories

My start in tech happened well before I actually had the title of “Engineer” or “Developer”. It started in a small town known primarily for being home to one of the most liberal (and most hipster) colleges in the country. I had mixed feelings about attending school there and was pressured in part by my parents to apply to schools in Ohio (they were moving there at the time).

Moving to Ohio meant leaving behind my friends and boyfriend (at the time) in Minnesota where I had gone to high school. We settled on Oberlin because it gave the opportunity to study lots of different things. At the time I was passionate about at least a dozen different things and had no idea what I was going to do for a career. Naturally I wanted to put off that decision for as long as possible, hoping I would figure it out during college.

I was always interested in technology, but before starting college (and also during a fair amount of college itself) my leanings were toward art and writing. That’s not to say I didn’t spend a ton of time in front of screens — my unofficial babysitters were my Gameboy, Nintendo, and PC running Windows 2000 —but as a kid my best friend was an extremely talented artist.  Drawing together was one of our favorite past times. I loved to go to museums and could stare at my friend’s art for hours. I also loved to read and wrote numerous short stories in middle school, and wrote for my high school paper. 

Basically, I was a creative generalist and loved all things that involved the imagination. However, my parents kept pushing me toward a practical path, because they were still struggling with their own careers and worried about employment options for creatives  in the USA. Of course they were right to worry, since very few artists succeeded in getting their work into a gallery, let alone selling that work for enough money to make a living. However, I learned in my late teens that there was another option- which sounded much more practical than being a writer or an artist. It was an area of overlap between art and the internet, and it was called web design. 

Technically I began learning to code a lot earlier than college, though I didn’t know it yet. I dabbled in web design during middle school and high school, when I participated in roleplaying forums and later decided to create my own which had a very generic look that I wanted to modify. Essentially it was just a monochrome colored forum with no background images or icons, and I wanted the forum to look like it was part of the website where I described the world the roleplay took place in. I wanted the design to fit the mood of the world. 

Essentially I was using CSS to make these changes. Unfortunately it was back when there was no such thing as developer tools (which would allow you to see the CSS alongside the site and actually make modifications to see the visual changes in real time) and no documentation. So the level of frustration accompanied with something as benign as altering the background color was shockingly time consuming. Despite all that,  I enjoyed the challenge and it was fun and rewarding to see my websites come to life. 

By the time I was starting college  I was thinking web design was a pretty likely career option. Then I found out that Oberlin does not actually have a design degree. What it did have was a creative writing degree,  one of the best undergraduate creative writing programs in the country. If I had known that my future would be pretty much solely focused on web development, I probably would not have given Oberlin another glance. 

Though I knew art was probably not much of a viable career, I thought maybe if I got into the creative writing program I could become a successful writer. All thoughts of design and technology basically went out the window at this point. There was still a part of me that hoped to become a bestselling author, and that snowflake wasn’t going to melt so easily.  I suppose the snowflake never fully melted, since I am writing this book.

It took a number of events in college for me to revisit web design. The first was that I was never accepted into the creative writing program, the second was the economic recession which happened while I was at Oberlin, and the third was breaking up with my long distance boyfriend, who had a tendency to put down my technical skills because he was insecure about his own. 

Even as I continued to take art and design classes, I began to wonder if it was the right path for me. I enjoyed aspects of it, such as the strategic thinking that was necessary to identify audience and tone. But the 2D limitations of the medium frustrated me, and my classmates and professors who were more interested in conceptual work didn’t always mesh with my desire to master craft. 

I wondered if I could do more with design if I started learning how to code. I also wondered if a career in design was going to be sufficient to make a living wage. Hearing from friends and acquaintances that they couldn’t find a job didn’t help. The future was starting to look a lot scarier than it had before. It seemed that technology was a major threat to many other fields. Though I had never doubted this before, when I looked at designer portfolios online I could hardly find any that were made by beginners. I was extremely intimidated by the senior design portfolios that I came across, and wasn’t sure that I would have what it took to compete. I even considered transferring to another school.  

It wasn’t until I got a job working for the Oberlin Office of Communications that some of my fear about post college life was assuaged.  If you are in college or soon to be starting college, I highly recommend that you also find some sort of part time employment. I did all sorts of things and learned a lot about myself in the process, possibly more than I learned from all the classes I took combined. 

I did some freelance work as a graphic designer, and this taught me how to work with people in different age groups and what it was like being in a client-contractor relationship. It also showed me that freelance work involved being very good at navigating different personalities and clearing up any confusion, while also putting your foot down repeatedly. In addition there was the age old mantra: the customer (or client) is always right. That meant that even if I knew a design decision might turn out to look poorly, I often had to make compromises for the sake of pleasing the client. It also meant that sometimes I might have to change something I was really proud of because the client didn’t like it. 

Here is a list of some of the other jobs I took while  in college: obituary writer, photographer, interviewer, dance instructor, and archives assistant. I hope this helps to illustrate that people come into tech from all sorts of backgrounds, and there is not one clear cut path. I’ve met women who used to be social workers, physical therapists, filmmakers, and everything in between.

Takeaways

Not everyone who enters programming goes to college. I went to college, but much of what I learned there did not directly apply to my future career. Non traditional students come from all sorts of backgrounds, and by talking about my degree I am not trying to imply that it is necessary to get a job as a developer. In fact, it is not necessary at all. 

What is necessary, however, is a passion for learning. That is the main thing I got out of college, and the main thing that I think is important to understand for those thinking about entering the field. In front end development especially, there is a new framework to learn every couple of years. So feeling comfortable with learning to code and not hesitating to ask questions when you have them are crucial skills.

There are many ways to practice learning how to learn. As a non traditional developer, you will probably end up teaching yourself a lot of the skills to get your first job. It’s important to know what techniques help you learn best. I learned in college that it’s easier for me to master new information when I can translate it visually. In the absence of that, I learn better if I am writing my own notes as the teacher is talking, especially if I translate it into my own words.

Another important thing I learned in college was time management. Especially during my programming classes, which I talk about in the next chapter, I had to get pretty good at estimating how long the homework would take me, and stay disciplined on the weekends to get it done.

I don’t know if I would have had the discipline to get through my classes without the support of my professors. That is the nice thing about college: you get in-person mentorship and structure to get through your work. But there are plenty of students in college who spend their time at parties, neglecting their assignments, and simply failing to pass their classes. So obviously college is not the answer for everyone. It’s also very expensive, especially in the case of liberal arts colleges like Oberlin. 

What I’m trying to say is that it’s important to get those basic skills and knowledge about yourself and how you want to approach learning to code before you sink in to any serious programming training–especially if you are considering something like a boot camp where you have to stay dedicated to your work for three months straight, with longer hours than your standard 9-5. Picking the right courses and learning approach is crucial, as my next story will hopefully illustrate. 

My own husband experienced the problem of taking the wrong course for his learning style and sadly, never gave programming another chance since. He graduated with a degree in history and was feeling lost after college, not knowing what career to pursue. He took some classes in psychology in Cleveland and volunteered with Spanish-speaking immigrants at an organization downtown. I suggested that he try learning to code, because I knew he was determined and hard working enough (he now works as an attorney and graduated from Georgetown Law University). 

I regret that I encouraged my husband to take the course without taking a more careful look at the content. The biggest problem was that the course switched gears dramatically halfway through, from teaching C to teaching Javascript, two completely different languages. For someone like my husband, who dislikes sudden shifts in general, this was devastating. He began to believe that learning to code was beyond him.

If you enjoyed this article, consider following me on Twitter @nadyaprimak or if you need more tips on breaking into the tech industry, you can read my book “Foot in the Door”.


How I Shared My Project with the Indie Game Community

Last weekend I checked another item off my bucket list: sharing a game at a local development event. The event was District Arcade in Silver Spring, Maryland, and the game was one I talked about in a previous post: Grand Canyon Adventure. It has convinced me that if you are a game developer, you can share your work with the indie game community by submitting your game to local events.

The submission process was easy enough: just fill out a google form with links to some screenshots, a brief explanation of the game, and of course a way to actually download and play the game. So why hadn’t I done it sooner? I had made at least a dozen games, if not more, but I had never taken even the first step to show my game in front of actual human beings.

I think the reason I avoided showing my game was the same reason many of us avoid doing things that involve putting our work out there. We fear rejection, we fear being made a fool of in public, and we fear that we will be faced with terrible truth. That we will never reach our dream. I taught myself to code by making games, but I never had a full time job as a game developer so I didn’t really believe in myself. I identified as a creative coder more than an indie game developer.

There is a choice each of us makes regarding our dreams. We either keep our them in a glass cage and never touch or tamper with it, and admire it like a beautiful statue from afar. Or we take the dream in our hands and carry it with us every day, no matter what dangers it might face out there.

I don’t want to wax too much poetic in here, but I can say I am glad that I took that dream in my hands. Even though I feared the worst, sharing my game at a public event actually turned out a lot better than I could have hoped. But first, let’s talk about the experience itself.

When my game was accepted I was both excited and nervous. I was excited that my game was accepted, but nervous because of all the what if’s in my head. What if nobody played my game? Making things worse, I couldn’t present my VR bowling game because there wasn’t enough space. Which meant I would have to present my other game: an educational one. I didn’t imagine many people wanted to use their brains on the weekend. Especially when there were plenty of mindless games available to play. Finally I was a female indie solo game developer, and I didn’t have any banners or stickers. With no swag to hand out could I still impress our visitors?

The first kid who sat down to play my game ran away blushing when he got his first question (my game includes a quiz about erosion) wrong. That didn’t bode well. Then more people started filtering in, and slowly things started getting better. I arrived at the event around 11 AM and barely had time to blink before it was 2 PM. People of all ages checked out my game, from teenagers to kids to adults and even some elderly folks.

I was taken aback by how respectful everyone was. Also how impressed they were when I mentioned that I made the game myself. When I shared my game online it was a completely difference experience. Under the mask of anonymity people had no fear of criticizing my games and providing very unhelpful negative feedback.

Of course there was still some negative feedback. But with the number of people coming through I could easily filter out the useful from the useless. If I heard the same negative feedback several times I knew it was probably something I should fix. Unlike the negative feedback I received online, the negative feedback in person was not nearly as demotivating. It was just a drop in the bucket compared to the positive. Feedback was also delivered in a much more constructive manner.

Since sharing my game at my local indie game community event I feel much more motivated and confident about my work. I’ve realized game development is a type of creative coding, so I’m not writing myself off anymore. I made connections with other developers. Now I feel like there is an actual community out there that cares about what I am doing. Those of us developers making games on our own really need this. We don’t have a lot of people to share our stuff with. Submitting our games to the local indie game community is the best thing we can possibly do.

I hope you take my advice and submit your game to a local event! If you’re wondering where to start finding local game showcases and events, start by checking out your local chapter of IGDA or searching meetups.com. If you want to read more about the game I featured at the event, there is an older post I wrote on the subject here.

If you enjoyed this article, consider following me on Twitter @nadyaprimak or if you need more tips on breaking into the tech industry, you can read my book “Foot in the Door”.