As some of you may have noticed I did not publish a new post last week. I wanted to let all of you know that there is a good reason for that! I am participating in the Women Make Challenge for the month of October, aiming to ship an ebook about getting my start as a front end developer and learning how to code without a degree in Computer Science. Since I am hard at work on the book, I didn’t have the bandwidth to write a new post. What I do have is an excerpt from the beginning of the book to give you a sneak peak on what is to come! I hope you enjoy it and it helps you start learning to code. If you want to get more updates about my progress, consider following me on twitter @nadyaprimak.
Update: Chapter two is out in my latest post! Check it out here.
Learning How to Learn
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.
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).