Meet Sasha Vodnik, Front-End Web Development and JavaScript Development Instructor at General Assembly San Francisco


Writing the Book on Writing Code

Sasha Vodnik is a front-end web developer and author who teaches Front-End Web Development and JavaScript Development at General Assembly’s San Francisco campus. He also writes books on HTML, CSS, and JavaScript and creates video courses through Below, he shared with us his thoughts on what it takes to succeed in the coding industry. Read Sasha’s articles “A Beginner’s Guide to HTML in Web Development,” and "A Beginner's Guide to JavaScript."

How would you define front-end web development in two sentences?

Front-end web development is the process of creating the part of a website that users see and interact with. Its foundations are HTML, CSS, and JavaScript.

What do you love about front-end web development?

Developers are constantly suggesting improvements to the front-end ecosystem and then helping make those improvements happen.

Why should someone learn essential front-end web development skills at GA?

There are lots of curricula for learning HTML, CSS, and JavaScript online, and some are quite good. But in my experience, a lot of us benefit from in-person teaching and from the accountability of a scheduled event that we’ve committed to attending for a certain period, and this is what GA offers that set us apart. GA instructors are free and encouraged to modify the curriculum as we see fit, so we’re able to give our own examples and cover topics that we think are especially important. GA has all sorts of events going on all the time, as well as space for current students and graduates to use, which offers chances to cross paths with new people.

What does a superstar front-end web development student look like?

Someone who looks for connections between what we’re doing in class and what they’ve seen in real life, building their own projects on the side to try things out.

What personal qualities will set someone up for success in the coding industry?

Humility, openness to constructive feedback/criticism, the ability to work with people from a wide variety of backgrounds and experiences, and the motivation to research answers to their own questions (and the skills to do it well).

What was your path to becoming a teacher and leader in front-end development?

I’m largely self-taught and learned by trying things out and researching what I didn’t know. For a long time, JavaScript wasn’t considered a “real” programming language by many engineers, but in recent years I think both the language and we as front-end developers have come into our own.

Why did the opportunity to teach at GA appeal to you?

I had been writing textbooks for several years, which I saw as teaching that was only one-way: I’d put curriculum out in the world but not be there when students interacted with it. Teaching at GA lets me interact with students in real life.

How would you describe your teaching philosophy?

Every student brings a lot of knowledge and skills to the classroom already. One of my goals is to help you recognize what you already know and connect it to what we’re trying to do. I think one of the most important skills I teach is how to troubleshoot and how to find answers to your questions so you can continue to learn and grow as a developer long after your time in my classroom.

What has been your favorite memory as a GA instructor?

Students are constantly mixing and recombining things I teach them in new ways, and it’s a thrill to experience each time they do.

How do you help struggling students break through to meet or go beyond their minimum GA course requirements?

When I see a student struggling, I reach out and work with them to identify what resources they could use to help them get over the hump. Sometimes that’s extra one-on-one time working with concepts or on homework. It can also be additions to or tweaks to my teaching style that help them focus better in the classroom.

How do you push high-achieving students to go beyond the minimum GA course requirements?

With the front-end web, there are so many opportunities for this! When a student seems to have a firm grasp on something, I try to connect that concept to something they may have seen on the web in real life, sketch the outlines of the connection for them, and invite them to research it and try it out.

What are some free resources and tools a student can use to stay up to speed in front-end web development?

CSS-Tricks is constantly surfacing best practices in HTML and CSS, and the Front End Developer Handbook gives a great annual overview of the state of the field.

Between taking the course and finding a job, what is the best way to get practical, real-world experience in front-end web development?

Code every day! Build your own projects; find a nonprofit or team that would benefit from your contribution to their work. Keep trying things, running up against the limits of your experience, researching, building, and learning.