• Login
  • Apply
Back to Blog

Codesmith Prep Programs Q&A with GitHub Software Engineer & JavaScript for Beginners Instructor Sabrina Goldfarb

With the software development field growing everyday, Codesmith’s world-class JavaScript resources and programs are designed to support your learning to code journey – no matter what level you are starting at – on the way to a meaningful career in software engineering.

Our free JavaScript learning platform, CSX, is a self-paced resource to learn JavaScript fundamental, intermediate, and advanced concepts. For those who prefer a more structured learning experience, our 2-day and 2-week prep programs, JavaScript for Beginners (JSB) and CS Prep, offer live instruction to build your core JavaScript knowledge, improve your technical communication, and build projects from scratch.

We chatted with Sabrina Goldfarb, Codesmith alum, prep programs instructor, and software engineer at GitHub, about all things prep programs. Read on to learn how her experience taking prep programs influenced her software engineering journey as well as her tips for folks considering prep programs.

As someone who took CS Prep, graduated from the Immersive, and now teaches JavaScript for Beginners (JSB), how did taking a prep program influence your software engineering journey?

Prep programs are ESSENTIAL to your journey. And I don't say that to "sell the course" or anything. You can absolutely do free prep via CSX, or even via other prep programs at other institutions. But, I truly think the experience is essential for a few reasons. The first reason (especially if you do the Codesmith prep programs) is that you'll get a great idea of whether or not the Codesmith teaching style works well for you. We are all different and all learn differently, so finding a style and vibe that you enjoy is huge. Second, I think it's really helpful to be part of a community, and there's a great community that grows in JSB and CS Prep. Lastly, I'd say just understanding all the technical pieces and jargon, and practicing things like pair programming, algos, and JavaScript in general are hugely helpful to your success at Codesmith.

All three programs (JSB, CS Prep, and the Immersive) are very intense, and they each ramp up a little more and a little faster, so it's really nice to know what you're going into, and be confident that you're ready for the next step and that you'll enjoy it.

Who is JavaScript for Beginners designed for?

JavaScript for Beginners is for literally anyone. It’s perfect for folks who are interested in code as a career, or just curious as to what it is. People come from all walks of life, whether they want to attend the Codesmith Immersive, see if they enjoy learning to code, or work with engineers and want to be able to speak more easily with the technical people on their team.

The biggest thing, I'd say, is that JS for Beginners is good no matter your age, your experience level, or even your comfort level in a Zoom classroom. As an instructor, I try to make sure it's low pressure, so folks who are shy or incredibly new to JavaScript don't feel overwhelmed, but instead have a great time learning something new!

How did the Codesmith community support you in your coding journey from the workshops to CS Prep to the Immersive?

A secret about me that I always tell my JSB residents is that I studied for four years before finding my way to Codesmith. When I finally decided to not be afraid of the technical interview, I was absolutely in love from day one. The community is EVERYTHING. I had the luck of going to some in-person events before the pandemic, and was completely sold on the program because of how fun and friendly everyone was. I had been to two other programs before, and they all either had a competitive vibe or way too relaxed of a vibe, and it was like Goldilocks where it wasn't right. Codesmith was a perfect blend of the community pushing you every day to be better than the day before, while helping you find your best friends and tons of support along the way.

I'm still incredibly close to this day with my Codesmith friends from literally two years ago, and I love when we all get to visit each other. I also love that there are days where I hear from 5 new alumni all interested in the company I work at, or who want to be part of the JS community of learners I'm working on. We all care a lot about each other and about helping those new to the community as well, and that's incredibly cool.

What tips do you have for folks who are newer to pair programming, and what role does pair programming play in JSB?

One of my biggest tips for pair programming is to not be scared of it! Do it early and often. In JSB, you'll have the opportunity to pair program with other folks at your level. I especially focus in JSB on asking folks their comfort level with JavaScript so I can match them up well. Pairing will help you get through those frustrating blocks in a way that's exciting and fun.

There's a good amount of pairing in JSB – twice on day one, once on day two, and then a group project at the end of day two. It's a great place to talk to each other and be like, "hey, I don't really understand X, did you?" Either they'll say yes and help you through it, or they'll say no and you can explore the topic together. It's really such a great way to learn. The best way to know if you understand a topic is if you can teach it to someone else, so if you're the one that's super knowledgeable, you'll still get just as much out of pairing as someone completely new who could use the extra help.

Another tip that I have is to not be afraid to say you're stuck when you are stuck. It is hugely important to me as well that folks don't interrupt each other while pairing. If you decide to pair program with someone tomorrow, try and follow the etiquette of allowing them to be wrong when they are navigating. Don't just say "that's wrong." Instead, let them tell you the code to write, let them run the code, see the error, and work through the error. After (or if they get stuck), you can chime in and help them with what went wrong. But, it's important for folks to try things and see what works and what doesn't. Especially since in code there are so many ways to solve the same problem.

What's your favorite part of being a Codesmith instructor, and how does it influence your work as a software engineer?

I LOVE to see folks find their passion in code. I've been teaching JSB for two years now and I have SO MANY former residents who are working in the industry. We still keep in touch and I'm so proud of them all. Teaching is everything to me because I just want to see folks find what they love and succeed at it.

As for influencing my work as an engineer, absolutely. I tell everyone in JSB that I'm not their teacher, but just another resident with them because there is ALWAYS something new I can learn as well. I get questions all the time where I say, “wow I have no idea, let me look that up.” And, that's incredible. Software engineering is a huge field with so much knowledge to be had that no one could ever possibly know everything. So when I get to learn as well, it makes me a better engineer, too.

I also think it's really important to make sure as an instructor that everyone feels welcome, and the special cohorts that have a theme to them (women and non-binary, LGBTQ+, etc.) always have a special vibe.

What types of projects do folks build in JSB?

Folks can really build anything they want, which is SO COOL. After just two days of instruction, being empowered to build something from nothing is incredible I think.

The project is a "text adventure game" where you'll give prompts to the user, and as they fill them out, your game will lead them in any direction you choose. Folks leave the cohort with something tangible to show friends and family, or just to enjoy for themselves. It is truly incredible.

Start Learning to Code

Interested in starting or continuing your learning to code journey? You can check out all of our learning resources, including our free weekly workshops, CSX platform and community, prep programs, YouTube workshops, and more on our site!

Plus, you can join Sabrina and a community of over 16,000 coders on CSX Slack!