This month, The Shift focuses on “Web Education.” Who better to discuss than this year’s Sparkbox Apprentices?
The Sparkbox Apprenticeship program is six months of hands-on, in-office learning and mentorship. This year, there are three of us with massively different backgrounds. Catherine graduated with a B.S. in Art Education and taught high school for a bit before eventually moving to operations at ChoreMonster, a tech start-up. Brittany, armed with a B.S. in Computer Information Systems, worked as a .NET developer for a structured government organization for a number of years, picking things up on the fly. Nate did not attend college and spent the majority of his adult life sweating it out in the culinary world. He was a coding hobbyist before deciding to pursue a tech career.
As you can see, we are a diverse group, fully immersed right now in web education. We have decided to share a few reflections about our personal experiences, opinions, and observations on web education.
Design Tendencies Turned Straight Dev through Classroom Education: Catherine
My journey to developer began in earnest with web development courses at the collegiate level. I sat in a classroom with fifteen or so other privileged undergraduate students, creating form applications in Visual Basic, depositing made-up names and phone numbers into mySQL databases, and writing Fizz Buzz in a half dozen different languages.
Colleges have one thing down: structure. My classes were organized, well-developed, and left me with a solid working knowledge of the topics the courses aimed to cover. I do not regret my time spent at college, and I would absolutely do it again, given the chance. It was right for me.
However, I can comfortably say the full university experience is not for everyone. Going to college is costly, time-consuming, and, honestly, not at all easy. Computer science professors come with a wealth of experience, but they often have been isolated in academia far too long to be considered “relevant.” The basics of web development do not seem to change—you have methods and variables and a bunch of math, but knowing the “trendy” languages seems to give new applicants an advantage and isn’t an obvious strength of universities.
My professional experience began at a tech start-up, and, through my co-workers, I discovered Girl Develop It, an organization aimed to create safe spaces for women to learn to code. Girl Develop It (GDI) provides a traditional classroom experience with a much lower commitment (compared to a four-year college). GDI courses typically cost about $10/hour—just enough to pay a knowledgeable instructor and keep students attending the duration of the class. Many businesses and private donors provide scholarships for students who cannot afford to pay their own way, making GDI even more accessible to parents, students, and those currently unemployed or underemployed.
In my time as an instructor with GDI, I have had the great joy of watching many women (and men, because GDI doesn’t discriminate) successfully move to a full-time web development career. The one trait these people have in common is determination. Switching careers is hard work. Learning to code is not easy, either, and moving to a completely new field typically requires many hours of practice, independent learning, and creation of a web presence in the development community. You have to stick with it in order to get anywhere.
Attending undergraduate university courses and becoming an instructor at Girl Develop It is the path I have taken. I think it has turned out well. Obviously, I consider myself a developer now, so that’s something. I can’t say what works best for everyone. I can’t even say that this is the best way I could have learned to code. I can say I am happy with how things have turned out thus far, professionally, and I do not regret my time in school. I continue to improve myself every day.
Traditional Degree and Hands-on Career Experience: Brittany
I graduated college with a BS in Computer Information System. With a course load of VB, SQL, and HTML basics under my belt, I was lucky enough to land an entry-level software developer position right out of college.
I had a professor once say to me, “We are here to teach you how to learn.” Boy was she right, because I exhausted the “basics” on day two. After that, Google became my teacher, my friend, and—to a certain extent—a therapist. I’d confide in Google when I hit rock bottom from the frustrations of not being able to get something to work.
What I’m getting at here is that we are all still self-taught students, no matter what point we are at in our development careers. Our course load is driven by the problems we are tasked to solve and the things we are asked to build. Sometimes you find yourself alone with no support other than the internet, which can be a cold, dark place, searching for the right answers. You are often bombarded with opinions that are spoken in words that appear to be English but are new to you; tutorials that are too basic to be “real world” helpful; or mind-numbingly documented solutions. The best thing we can do to help new developers is fill in the gaps.
Code snippets and tidbits that you find on the internet only get you so far and are often only helpful when you’re already using the technology. Videos of developers walking through the process from start to finish are some of the most useful resources I’ve come across when having issues. They allow you to go step-by-step with them and use the pause button to set your own pace. Other resources I’ve learned to love are code editor sites like codepen, because they let you see the code and the finished product side by side.
I’m currently building my personal site in preparation to start applying for jobs next month and I’m more than satisfied with the skill set that I’m able to put down. I feel like my choice to become an apprentice will be invaluable to my career. The opportunity to be in a room with web developers will allow me to confidently make the move from a .Net developer to a web developer. The hardest part has been getting away from asking Google my questions and asking the person sitting next to me.
Self-Motivated Hobbyist: Nate
In my opinion, the most valuable thing that web professionals can do to help new developers is to set up industry access points. The internet offers an endless stream of coding and design resources, many of which are affordable and cover concrete material. For example, I can learn how a given language works, or what the CSS specification says, and those subjects are technically objective. The information is readily available and doesn’t require any special experience to practice. But how can I learn how to work with other developers? How can I learn how a project is broken down and tackled by experienced industry professionals?
The apprenticeship model is a great example of one way to solve this problem. I experienced just how difficult it is to get into a real-world setting and become a true professional without a degree. Most companies don’t have money to invest in newcomers who require a certain period of training, but without direct access to a real-world development team and environment, what can I really learn about working in the industry? How am I to land a job? It seems like the answer for a lot of companies is not really an answer at all. You must possess experience if you want to gain experience. It’s a very frustrating catch-22.
Another option to gain experience is to seek out personal relationships with industry pros. This works because people love to help one another. Humans respond to and are motivated by other humans. Most people are not interested in helping someone they know only through a couple online designs or coding examples (unless you’re amazingly talented).
If you want to help industry newbs like myself, look for ways to create some entry points. Look for people who are trying to get in and make yourself or your company accessible to them. Help them find an appropriate starting point. Girl Develop It, meetups, apprenticeships, mentorships! These things are invaluable.
The Trifecta: Determination, Curiosity, and a Willingness to Learn
As you can see, not one of us had a single, clear path to programming. Life is a series of twists and turns, and each individual learns in a unique way. Web education is a tricky thing; what is right for your peers may not be right for you, and nothing but your own experience will reveal that to you.
Whether the next generation of web developers go the route of a four-year college, jump into an apprenticeship or internship, self-teach via the wealth of resources available on the web (CodeSchool, TreeHouse), or attend a structured, non-traditional classroom experience (such as a dev bootcamp or Girl Develop It), there are a few traits every web learner seems to possess: determination, curiosity, and a willingness to learn every single day. Every successful developer is capable of learning on his or her own, perhaps from limited resources. Mentorship may be the single most valuable service current web developers can offer newcomers, so if you are looking to impact the future of Web, reach out, attend a meetup or volunteer at an organization.