Embedded - 148: A Minimum of Two Poops
Episode Date: April 21, 2016Saron Yitbarek (@saronyitbarek) spoke with us about Code Newbie, a site that help people learn to program and about the Code Newbie podcast. We mentioned Paul Ford's Code Newbie episode discussing his... Bloomberg issue code. Saron also has a personal blog which has her post I am not a tinkerer. Saron spoke on Punching Your Feelings in the Face at ELA Conf 2015.
Transcript
Discussion (0)
Welcome to Embedded.
I am Alicia White.
My co-host is Christopher White.
And this week we have Saran Yitbarek
joining us to talk about learning to code.
Before we get started, Planet Labs,
that contest is still going.
Email me, show at embedded.fm.
Where would you like to point your satellite?
I really like the idea of monitoring fairy circles in Namibia and Australia, but the winner will be
selected randomly on Friday, 4-22-2016. You can still apply for one of their jobs on planet.com
slash careers. Email them, embeddedfm at planet.com. Our contest for shirts and books
ends soon, but I suspect you can apply to Planet long after that. Don't wait. Neat people, neat
topic, and code in space. Hi, Saran. Thanks for joining us today. Hey, everybody. How's it going?
Pretty good. Can you tell us about yourself? Sure, I'd love to. So I think it was four to five
years ago, I was working in startups in non-technical roles, doing sales and business
and marketing, that sort of thing. And I felt very constricted by what I could do and what I
could accomplish and just what I could, you know, how much impact I can make in the product side.
So I decided to quit my
job, learn to code, did that alone for a couple of months using Treehouse, Code School, Code Academy,
a lot of those either free or really low cost solutions. And then after a few months of that,
I enrolled into a bootcamp, which is a very intense three month program coding for easily
80 hours a week. And in that process, what I realized was that coding with a
group of people was so much easier because you had the support system. And it was a support system
where if things didn't work out, you had someone beside you who really understood how that felt
and how demoralizing it can be and people who were really excited by it. And so for me, getting that type of support cost $11,000
in a total of six months without a salary,
which is not very accessible to many people.
And I didn't like that.
I didn't like the fact that if you wanted to find a community,
it really did take dropping everything
and going into something like an immersive bootcamp.
And so I started something called Code Newbie.
And it was just a hashtag, a Twitter chat every Wednesday night at 9 p Eastern Time. For one hour, I would tweet out questions like, what are you learning? What's your favorite, you know, coding tool? What are you excited about? Really just as an excuse for other people to connect and talk to each other. maybe a few weeks, a few months, but it has been two years and we've done over 110 Twitter chats.
And from there, we launch our weekly podcast, which is the Code Newbie podcast,
new episodes every Monday. And we have in-person meetups and we have online study groups that it's
really been this incredible community of people who are really here to support each other on
their coding journey. So I started that really excited for it and really excited about where
it's going to go. Well, I think we're going to talk about many of those things.
I hope so. But before we get too into that, we do this thing called lightning round where we ask you
questions and hope for short answers. Okay. And then we try not to ask you to tell us why,
although sometimes we fail. Chris, do you want to go first?
All right.
Should we bring back the dinosaurs?
No.
Sounds terrible.
Do you listen to podcasts?
Yes.
What is your favorite that you're not on?
My favorite one has always been,
and I think will always be Radiolab.
Favorite fictional robot?
Bender. That one was easy.
Hacking, making, engineering, or tinkering?
I love that one so much. I'm going to go with
making.
Beaches or mountains?
Beaches.
Favorite programming language?
Ruby, but I hate this one because there's so many code names.
You do all types of languages.
So all languages are awesome, but my personal one is Ruby.
Well, the follow-up to that is what language do you think people should learn first?
JavaScript.
Introvert or extrovert?
Extrovert.
Ravenclaw or Hufflepuff oh oh that's a good one um
like ravenclaw uh worst version control system you've ever used
well i've only used git and i really like it so but i guess by definition it's still the worst. What is a day in your life like a work day?
A work day. Okay, that one is hard. Most of my day job is a program manager at Microsoft. So I spend
about 40% of my time in emails, 30% of my time in meetings, and whatever is left over in
a Word document, planning and reporting and writing different stuff down.
Gosh, that sounds like fun.
It's funny because one day I was working from home and I told my husband this and he didn't
believe me. And he looked over my shoulder and he saw I was working on some report. And then
he came back a couple hours later and I was still in the same document he goes oh
you were serious yep but that's not coding and you're sort of an evangelist for learning to code
yeah and that is probably the the disappointing part of my my role at Microsoft is that I don't
really get to do a lot of coding but at Code CodeNewbie, which is, you know, my other job, I think I spend about at least 10 hours a
week coding. We actually have an apprenticeship program. We have our apprentice named Sharon,
who is absolutely amazing. She's so sharp and so thorough and very smart. And so by, through her,
I end up coding at least 10 hours a week. And then apart from that,
it's a lot of work in Photoshop and InDesign. And like the Adobe Creative Suite is home base for a
lot of the stuff I have to do for Code Newbie. And then we're also back to emails. Yeah,
the emails, they never stop. They never stop. Do you think everyone should learn to code? I think everyone should try it.
And I think that a lot of people who could enjoy it, whether it's as a hobby to something to do because it's just fun or as a career, I think and I worry that they stop too soon because it feels hard and they're not used to something being this difficult. And so they hit
a wall and they immediately think, oh man, it must be because I'm stupid and I'm not doing this right.
And so I think a lot of people should try it and to try it long enough to discover whether or not
it's really for them and not kind of quit too soon to find out how much fun it can really be. Do you see it as a thing to learn in and of and for itself?
Or do you see it as a proxy to get interested in mathematics and other kind of STEM subjects?
Oh, that's a really good question.
So I actually, the connection between learning, and I'm speaking, by the way, as a web developer. So as a web developer, I think that the whole, let's use web development specifically and that type of coding to get people excited about math and science, that never really made sense to me because I think that my tools are much more applicable to arts. I think that I can create, and I would love to be a better front-end developer
so I can create better experiences
and I can tell stories and I can do animation.
And there's so much to understanding other humans
and being able to really empathize and connect.
And there's a lot of just liberal arts
that I feel like is really the better end point if you were to use code as a
proxy. So the whole like STEM connection never quite really sunk, never really connected with me.
However, I do believe that code in and of itself or learning code in and of itself is something
that you can learn. I like just the puzzle aspect of it. You know, I like having this problem and
not really knowing how I'm going to solve and how I'm going to figure it out, being forced to really, really think about it and break it down into little itty-bitty pieces
and going through the process of putting one brick on top of another and finally getting a
house out of it. That experience is worth it, no matter what the end result is.
So what areas of software are most interesting to you? Like the technical part?
Yeah, so for me, as primarily I'm a Ruby on Rails developer,
and so for me, the two things I would love to dig into more
is one, web animation.
When I look at things like Snowfall from the New York Times,
and I mean, the Washington Post has an incredible graphics team
that does just a beautiful job of creating very visually compelling pieces, but having very strong reporting behind it.
I'm so jealous. I'm so jealous of the people who are able to design it, think it through and make it come to life.
So that's one of the reasons why I think JavaScript is a great programming language, because a lot of that involves being very good at JavaScript. So that's one area. The other kind of more technical area
that I would love to know and understand better is just things around data analysis.
With my role at Microsoft right now, I'm a program manager for Tech Jobs Academy.
And there, what we're doing is we have a 16-week really intense boot camp where we're serving
unemployed and underemployed New Yorkers. So it's free technical training, mostly in IT. what we're doing is we have a 16-week really intense boot camp where we're serving unemployed
and underemployed New Yorkers. So it's free technical training, mostly in IT. And one of
the things that I'm very, very fascinated by is the data around that. We had about 300 applicants
apply to the first cohort, and we had a four-step application process. It was very rigorous,
and we narrowed it down to 25 people. And when I look at the application results and
the ages and the gender and race and kind of all these little data points, I wish I had the coding
skills to be able to make not just visually compelling pieces around that, but to just
to find the stories that would help us do an even better job the next time. So for the people that I do know who work very closely with data,
I'm very, very jealous of that.
That's something I'd love to get better at.
You said that people often hit a wall as they learn to program.
And I think people who continue to program keep hitting walls,
all sorts of them, and just over and over again.
Are there any things that are too hard for
you now? Hmm, that's a really, you guys ask really good questions. That is too hard. I don't think
that it's about the topic or the subject being too hard. I think what I've found is more that I'm
a lot more impatient than I used to be.
And I think that if, I think it's a matter of time, but also if I need to learn a concept
specifically to apply it, I think for me, that is the worst time to learn about that
concept because I'm in such a hurry.
You know, I'm thinking about the end product I'm dreaming about finally getting there.
I only have a week left and I really want to do it as fast as possible. And so I find that I take shortcuts.
I, you know, skim instead of really reading. I don't, I don't take the time to really understand
the fundamentals because I'm in such a hurry. So I find that when I have a very clear objective
like that, I'm not as good of a student. And I think that most of the time when I need to
learn something new, it's because I want to implement something. So it's more of a patience
issue than it is something just inherently being too hard. I feel like there should be two different
words here. One for actually learning something, to understand it. And another word for using it, learning enough that you can use it in your system.
Yeah, I like that. I like that distinction.
There are two different skills. And, you know, sometimes I apply the wrong one. I learn something
when really all I should do is skim through it and slap it in the system.
And then I do the other where I skim through, I slap it in the system, I say I'm done,
and somebody asks me a detailed question.
I'm like, no, no, no, I'm done.
Well, it's a continuum, right, too,
because you can go all the way to first principles on something.
You can decide, well, I really have to understand this.
And so you start looking at it, and you can go deeper and deeper,
and pretty soon you've spent six weeks,
and now you have an entire field that you've explored, but you haven't solved your problem.
Two years later, you're getting a master's degree in physics.
It's a personal problem.
But yeah, I understand that completely.
And we all do the same things, especially in our jobs where, you know, you might come up against a problem and somebody is saying, yeah, you have to have this in a week or by the end of, you know,
this milestone and this is the only way to solve it. And so, you know,
we intend to engineer by stack exchange. You know, you ask the question and,
oh, there's, there's a snippet of code. And so I think as,
as educators or evangelists, I think it's,
it's hard to say how, how you should assimilate information in the best way once you're out on your own.
Yeah, I think it's a really good point.
And I think for me, the hardest part about learning something new is figuring out how much is enough, right? is to just use it in a system, how do I know that I've gotten to a point where I didn't do something
totally awful that's going to bite me in the butt a week or two from now, something that is
somewhat stable without going into the weeds so much that I've spent two months learning this
thing when really I just need a couple of days. I think learning that line is something that
hopefully over time I'll be better at, but I think that line is very important.
So you haven't been in programming for all that long, right?
Correct.
How long?
I think it's been almost three years. I think May or June will be about three years.
And before that, you did NPR journalism and you did organic chemistry.
Why switch?
I mean, those are both fields unto themselves that are pretty amazing.
Yeah.
So why switch?
So I did the organic chemistry stuff as part of my initial dreams to be a doctor, dreams that my parents are very proud of.
And for me, what I realized,
I think it was my senior year when I finally actually shadowed a doctor and got to spend
a couple of days with, I think it was a cardiologist. And what I realized is that
I really liked the puzzles of science. I really liked understanding the story behind how things
worked and the different systems and the dependencies. I really liked understanding the story behind how things worked and the different systems and the dependencies. I really liked finding the patterns, but I wasn't as emotionally attracted to. And so honestly, when I found that out, I was devastated. I spent
a lot of time, took lots of credits. I don't think I ever actually took a summer off because I was
always doing some research fellowship or just something towards going to med school. And I
feel like I just wasted my entire college experience pursuing this thing that I no longer wanted to do.
No one was happy.
My parents were also very, very angry with me.
And all that time, I had also done journalism.
And I'd also written for the college paper and was the online editor for a college magazine.
So that had always been a part of me just because I really like writing and I really like sharing people's stories. And so I thought, okay, well, maybe that's the thing that I've been doing it for this long
for quote unquote, no reason. Maybe that's my thing. And so I worked at NPR for a short bit
and that was, oh my goodness, I learned so, so, so, so much in that role about people and about
work ethic and about how to put together a good story.
And ultimately, it didn't work out because they had a very limited budget and they had to let
some people go. And unfortunately, I was one of them. And so I came to New York City a little
while after to work for Discover Magazine. And between NPR and kind of figuring out my next move,
I applied to journalism schools. And I really found out that a lot of,
there are just lots of really good journalists out there, and there are just not a lot of jobs.
And so during that time, I was reading a bunch of books, and I read the Steve Jobs book.
And that was the first time that I had heard someone talk about technology in a way that
was accessible to me, where he was this guy who wasn't very nice,
but he was a designer and an artist. And he really talked up the liberal arts side of things,
which are things that I could really understand and appreciate. And I never really thought of
someone who had that mindset, who thought that way being good at tech. And so that was what piqued my
interest. And that got me to really getting into the tech startup world and reading every book I
could find following. I mean, the moment I decided to become a developer, for example, I unfollowed
all of my friends and followed only developers. And, you know, I really immersed myself in that
world. So it wasn't planned, is I guess the short answer.
It was just being very, very in tune with how I felt and understanding why I felt the way that I felt and not being afraid to make, to adapt to new information.
You seem to have a big family and probably it sounds like personal belief in formal college education?
Sort of. I personally don't. My family definitely does. My mother is still hoping that I get a PhD in computer science, which I've tried to try to crush her dreams a couple of times and it's not working.
But no, I believe that for me, organized education is the best way that
I learn. If I'm in a class, if I'm, you know, either physically in a class or in an online class,
if I'm in a place where there are clear, you know, there's a clear curriculum and some type of
grading or assessment is really the part that matters. And there's accountability and there's a
teacher, that type of environment is where I get the most value. And so for me, you know, that had
before really learning about bootcamps that ended up meaning college, like that's where you do that.
Now I feel very, very lucky that there's so many new ways to learn. There's MOOCs, which are the
massive open online courses that you can
do online for free. There's Skillshare, which is kind of one-off courses that are still nicely
organized. And there is a teacher there. There's the Code Academies of the world. There's just so
many different ways where you can get a lot of the value that was traditionally exclusive to
formal education. So I like organized educational experiences, but I don't,
that to me, that no longer is exclusive to colleges and universities.
I go back and forth. I'm definitely college trained and, you know, it costs enough that
I have to value it or I'd be out of my mind. But, and I look at the, and I've taken a few
of the online courses and they're good, but it isn't the same.
Mostly because the assessment on those has been weak.
And so I don't, you know, I don't get a grade, I grade myself and if it works, it works great. with the academies and MOOCs that they're not quite enough
to give you a broad sense of the topics.
They can give you a deep cut,
but not necessarily...
They can teach you programming, but not engineering.
Do you have anything to say to that?
I'm happy to be wrong about it.
I just, you know, it's one of those biases
and I look out for it.
Yeah, I totally agree with you.
I think that a lot of those courses,
and you're right, you know,
just because it's online doesn't mean it's good.
I think there's, if I had to guess,
I would say there's probably more not so great,
I won't say bad, not so great online experiences
than there are really great ones.
And I think, you know, because,
I think there's different reasons for. And I think, you know, because I think there's
different reasons for that, but to answer your question, I think that, I think that a lot of the
shorter, faster, more convenient solutions are also geared towards people who don't necessarily
care to learn about engineering and they really just want to learn to code, right? I think they're
geared towards a different audience. I think that if you really want to get in depth and really want
to understand, you know, fundamentals of computation and how a computer works and
those things that are really have very strong foundations and are very, you know, research
based and all that, I think you're probably better off either reading a nice big
textbook or just going to a college class. I don't think that most of the online experiences
or even bootcamps are really set up to do that. And I think it's because they're geared towards
a very different audience who wants the skills that they need to be able to get the job done
right now. The convenience really outweighs the depth. I think going back to what you said earlier about learning new aspects and things to incorporate into what you're doing or learning new pieces to solve problems, I think college for me was more about learning how to find those things than necessarily learning about a lot of particular facts and information or techniques.
It was learning how to learn to some extent.
And the scientific method.
Yeah, being immersed in that and having to figure things out over and over and over again
in a rigorous way.
And yeah, I would hope that people figure out how to do that, replicate that experience
online, because that would be very powerful.
But I do feel like that's a piece that might be kind of missing um did you feel like your uh your science background
from college and in preparing for for medical school was useful in that sense that you yes you
learned logic you learned basic scientific principles so i i don't think I learned logic in the way that is most valuable to programming, but I really learned how to pay attention.
I learned to be very, very detail-oriented, and I learned the importance of a process.
So when I taught organic chemistry, that was easily one of the hardest classes I ever taken.
It's notorious for being the weed-out class where most people fail and end up not applying to med school because of it. And I took that class in six weeks over the summer, and I had done terribly in general chemistry. This was the next step, and I thought, okay, I need to do, my GPA cannot I had to learn how to read the incredibly dense textbook that was not beginner friendly.
I had to learn how to, and I'm not, I don't do very well by kind of sitting in class and listening to lecture.
Like that style just doesn't work for me.
I need to repeat very small pieces of information over and over again until it really sinks in.
And I just had to really learn and focus on
what my learning style was and figure that out in a very short amount of time.
And so I think that process helped a lot when I'm coding, when I'm doing or really learning
anything else, because I know myself and I know what are the tools that I need. Do I need to take
notes? Do I need flashcards? And I already have a good system for how to do things.
And so that's helped me really learn a lot of different things.
But that discipline and that rigor and that self-reflection has been the most important
part about my science background.
We had a listener write in recently, Eric Telles.
He said as a fresh college grad, he would appreciate hearing more about different
coding styles and about programming skills that can be helpful to develop. Do you have advice
for people on the cusp of learning to program? And then I'm going to ask, do you have advice for
people going from programming to industry? So learning to program. So specifically in the college context? Not necessarily, just that cusp of we're about to program.
Yeah, I think that I didn't realize how valuable it was to learn with other people until the boot camp.
And so for me, you learn a lot just from doing things on your own, but you get a lot more
from doing it with someone else. And even if it's something as simple as, you know, oh, I didn't
notice that comma, right? And someone just kind of checks your syntax and that kind of thing.
Or it's something like, I'm really struggling with this problem. And I'm thinking about doing
it this way. And someone hears you and they say, well, have you thought about doing it this other
way? And I think there's just, there's so much value in not going at it alone that I
think that's a very very important part of your journey that you should incorporate you know as
soon as you you can and then for those folks going from a programming classroom or college classroom
to industry what sort of advice do you have for them? That one is really hard. So when we had the Cone to Be apprenticeship, the reason why we did that
is because we knew that there was a very significant gap from people who were either
graduating from college or in our case, it was mostly people who graduated from either bootcamps
or did an online course and knew enough to get their first full-time job,
but didn't quite know enough of the best practices, the process,
those types of real-world development skills
that are different than what you can learn just from going through a tutorial.
And so the idea was to do a three-month program,
having them work on our code base, and it's a paid program as well,
and having them work on our code base to get that real-world experience that they can leverage to
get a first full-time job. And so if you're in that position, I definitely encourage you to find
apprenticeships and internships. I think you can learn a lot from a short-term, really learning
focused experience if you can. But at the very least, I encourage you to go to meet experience if you can but at the very least I encourage you to go to
meetups if you have them in your area to go to conferences a lot of conferences nowadays have
opportunity scholarships they have diversity scholarships there's some that do something I
love which is a you know pay what you can afford or they'll say you know if your company is
sponsoring this then here's your ticket if you're doing this on your own then here's a discounted
price so there's many different ways to make that affordable. And I think that if you
keep putting yourself in the industry and in the space where you're learning, you're observing,
you're connecting, you're part of the conversation, you'll pick up on a lot of things about
the culture and the process and best practices. And even a lot of the very heated debates that
we like to have as
developers you get to pick up on that and all that will help you so much in being able to get that
job i'm not used to people being advocates for going to conferences really um and i waffle back
and forth the last uh i've been to a few good ones in the last few years and I've been to a couple that were really not
worth my time and my time is valuable so it's been tough to find good conferences are there
ones that you would recommend for software folks sure so again I'm a Ruby developer so
I think just about all the conferences I've been Ruby conferences. So RubyConf is awesome.
RailsConf is great.
That's coming up in a couple of weeks.
I'll be going to OSCON for the first time in about a month.
So I'm happy to report back and let you know how that goes.
But I hope that goes very well.
It's insane.
Is it really good?
Pack snacks.
It's a lot of information in a short period of time and a lot of people wandering around.
I feel like we actually got a booth for that conference.
We got a booth set up, so we're going to give away stickers.
And I got to find like green colored candy.
I don't know.
Is that a Jolly Rancher?
I'm not sure what that is, but our colors are green and white.
So I got to find something.
Apple flavored Jolly Rancher.
Lollipops.
There you go.
Green lollipops.
Green Twizzlers is not as good.
That doesn't sound very good.
I feel like Twizzlers should just be red.
That should be it.
But yeah, one of the most recent ones that I've been to is RubyConf Australia, which
was just hands down the most amazing conference I went to.
They put so much work into making sure
that people had a really good experience. They rented out an amusement park called Movie World
and they rented it out. They shut it down just for us. They had like four rides open. They had
this huge feast. It was amazing. They had us for the speakers, they had a have breakfast with the dolphins and they went
to SeaWorld and we got to pet the dolphins and eat a nice breakfast in front of, I mean, they just
really, really put in a lot of work. They had a beach barbecue open to all the attendees.
And what I really got from that experience was that the conferences are not so much about being
there to learn and to get a lot of technical knowledge. I think the best
thing, because you can do that just by watching the videos after. There's no reason to physically
be at the conference to get the information. The reason why you go to the conference is to meet
other people. And that's where I've met a lot of really good friends. That's where I've met people
who I knew just from Twitter and being online, but never got to meet in person. The podcast that I was recording for right
before this interview is the Ruby Book Club podcast, which I started because of a conversation
I had with a woman that I met at RubyConf. So it's been just a huge networking opportunity.
And networking is kind of a bad word, I feel like, especially for developers,
because it sounds so opportunistic and, you know, like you're exploiting someone's,
you know, relationships. And that's not, so that's not really what I mean. It's more of you,
you get to find people who are very excited about what they're doing and really excited about what
they're learning. And you can have real conversations or relationships from that.
And for me, you know, the big thing about going into code was that my family still has no idea
what code is, you know, I can't, I can't really share a win with them. And a lot of the friends
that I had outside of coding, also just they don't really get it. And so being in a place for a
couple days where everyone gets gets it and everyone is as
excited and passionate as you are, that's a really great place to be. Yeah. You were talking, I
believe to Paul Ford about how being in a company, you may be the only Ruby programmer, or you may be
one of three in a thousand person company. You're not, you're not in the majority and celebrating wins like that
it is really fun with other people people who can appreciate it and not just say oh okay exactly
exactly so you spoke with paul on your podcast which is called code newbies right
yep that's right the code newbie podcast and And it's in iTunes and all of the normal places.
Mm-hmm.
What is the podcast focused on?
I mean, how do you...
We keep switching our tagline,
and now that there's an NPR embedded,
we're like, screw it.
We'll call it embedded.
Anybody who's confused,
we'll figure it out pretty quickly.
Do you have a tagline or a short description?
For the podcast specifically, we just say, you know, weekly stories from people on their coding
journey. And the great thing about having a podcast called Code Newbie, and for you all
calling it Embedded, is that it's really open. You know, people know that it's code related,
but it gives us a lot of flexibility. So with Paul Ford, and that was
probably one of my favorite interviews that I've done, that conversation was really dissecting his
very, very famous article called What is Code, which came out, I think, last year in Bloomberg.
And it was a really great, very, very long, but very fun read. And so we got to dig into a lot
of different parts of it, which included, you know, how do you learn to code?
Where do you start?
But also more, maybe less code-focused questions and more culture-focused questions like conferences.
You know, we did talk about conferences and we talked about just the culture of being a developer and what that means. And so what I love about the show is we've had people on like
Coraline Ada Emke who talked about being a social justice warrior and about, you know, how do you
prevent or how do you deal with online harassment as a developer? We've talked to John Rezig who
created jQuery about how he created jQuery. We've talked to Amy Simmons about being a journalist and
then moving into code and what the transition was like.
So we talked to just a large number of people on a nice variety of topics, but they all
still go back to this theme of everyone's coding journey is different.
There are many different parts.
And even the people who you think are really experienced and really seasoned, they're still
on their journey.
They're maybe a little bit ahead of you, but they're still on the journey. And we're all just trying to make
progress and move forward and be the best people and the best coders we can be.
That sounds, it is a fun show. I've listened to several episodes. And you, it is sort of like
this one that you have guests and you interview them about specific topics. It's often more
cultural and less deeply technical. Have you
had any really deeply technical episodes? We've had two that I can think of. We had one on security
and we had someone come on who did security at Google, Google Chrome. And it's funny,
it started off a little technical, but then it ended up talking about kind of the pros and cons of security versus freedom versus privacy.
It got into a very philosophical conversation, which was a lot of fun.
And then the other one we had was on DevOps.
And that one was really cool because we got to talk about a related topic to the work that a lot of developers have to do. But for especially newbies who rely heavily
on Heroku and DigitalOcean and those types of resources to get their hosting set up and up and
running very quickly, it allowed them to really appreciate the infrastructure behind getting their
Rails app up and running in two seconds and what that looks like. And that I think is the big
differentiator between us and a lot of other tech podcasts is we don't do technical deep dives.
We don't go into a lot of that stuff.
We really try to focus on the human side of coding, which I feel is generally missing.
A lot of times when we read blog posts and stuff, we talk about the culture of being in this industry. But in general, we stay more technical
and we wanted to do a show that was a little bit different,
a little bit more human.
One of the other things you talked with Paul about
was the difficulty of writing about what is code
for a non-technical audience
trying to balance the getting the points across and not getting hit
by the well actually in the 80 51 you have to explainers um you have to do some of that
with podcasting as well how do you figure out where the balance is
that's a good question and i i think that most of the time we do a good job. And
then other times I'll listen to something and I go, Oh, I totally forgot to explain that acronym
where I, I didn't even think that, you know, I didn't think to expand on this buzzword a little
bit more. So for us with every guest, you know, we have our little list of guidelines that we send
out to guests. And one of them is, you know, please be aware that we're going for a code newbie audience, people who are just getting
into this. So please try to define any words that you have as much as possible. And please try to
explain concepts as much as possible. And they're very good at that. Even times when I forget,
the guests will do a good job of making sure that they've given people enough context.
But I think that people
also understand that we're not trying to be a technical show. And that's one of the biggest
compliments that we get from people is thank you so much for telling me a story about someone that
I can personally connect to. And that's the value. So I'm sure I've said a number of things that were
technically inaccurate on the show. And I think that we don't generally get
called out for any of that stuff because people get that that's not what you're here for. You're
really here for the people. We don't get called out on our technical waffles or mistakes that
often because we did an interview with our cat one time. And now if anybody emails us and we just threatened them
you get more interviews with the cat unless you're good uh no that is totally not true
i would totally listen to that episode by the way you can april 1st last year
you have 84 episodes well 83 today but 84 by the time we air this. How difficult is it to maintain the momentum? asked me, hey, I'm trying to start a podcast. Do you have any, I assume you've gotten this too.
Do you have any, you know, do you have any documentation? What equipment do you use? And so
I wrote out everything that we do and have done. And I'm looking at that and I'm like, holy crap,
that's a lot of stuff. And when I send it, I feel bad because I think it's just incredibly discouraging.
So I personally have not had a very hard time doing it because I think when we decided to do
the Codename Podcast, my husband and I, we knew that we were just going to do it. And there was
no compromise on that. We're going to do it. It's going to come out every Monday. And that's that.
So there was no, should we do it?
Let's weigh the pros and cons.
We made a decision and we stuck with it.
And I think that that made it a lot easier to come up with the process and the schedule.
So between the two of us, I think we spent about six hours a week between booking and interviewing and cleaning up recording publishing all that and thankfully he
as of seven months ago I think he started doing all the editing for me because I hate editing
audio so much but no it's it was a decision and we did it and we were very good about creating
due dates and processes around it so that it becomes an automatic thing and not a new decision we have to make every week.
Looking at my husband, yes, we're nodding along. Yes. And I will reiterate something I said long
ago. It really, really helps in your podcasting career, such as it is if your producer loves you.
Yes. He's very forgiving of, oh, I just just I totally forgot I have to include this one other
sponsorship clip to you and it's you know 1am and he's all done yes dear I'll do that for you so
yes it helps to have a producer who loves you we'll take out your stuttering that's the best part. Yes. Yes. He's very good at that.
You have sponsors and you, did you, I don't know how to ask.
Maybe I should have asked this offline.
You have sponsors.
How did that work for you?
Sure.
I'm happy to talk about that. So most of the sponsors that we have, with the exception of maybe three of them, came to us.
And I feel very, very lucky that we haven't had to work very hard to get the sponsors that we do
have. And so it worked out well. I think it was within three or four months of having our first
podcast that our first sponsor, I think it was Sightpoint at the time, reached out and said, hey, we'd love to do something. I said, cool, want to give us money? And then they said yes,
and it was great. And so that's been, it's been working out pretty well. It's always,
it's always kind of, it's a little tricky because you, I really want Code Newbie to be sustainable,
right? I want it to be something that I can justify doing full time and that makes sense. But I think that doing sponsorships and really pursuing that as a business is really just a whole other ballgame. You're a salesperson at that point. And so treating it like a business just takes up a lot of time and a lot of energy. So we're very
lucky that we haven't had to do that yet, but I can definitely see a point where I'd have to
invest more time selling and working with sponsors and making sure that we can keep doing what we're
doing. We turn away our sponsors. We can't figure out how to make enough money to make it worth
taking money right now. um and so we instead
if somebody wants to sponsor we say well what do you want and then we demand they give things to
our listeners because the if if you look we're we're consultants and so we get paid by the hour
and if you look at our hourly rate and the amount of time we spend on the podcast you can't sponsor it for that
amount and so we have to do this as a labor of love instead of financially at least for now until
we everything changes and our hourly rate goes to nothing until squarespace comes along stamps.com
well you are more than welcome to send your rejected sponsors over to
they tend to be very very embedded uh related so yes yes and one of your episodes was with emily
emily chi about hardware and um i was i was excited to listen to a show about hardware
and then you talked about laser cutters.
And I was like, that's not hardware.
No, that doesn't count?
No, they're laser cutters.
How's that not hardware?
It's like saying the saw is hardware out in the garage.
It's not software.
Well, I thought it was going to be about the little boards.
Oh, I see.
The little purple boards, little green boards and the chips and the solder.
That's our show.
Right.
Well, you can see why I leapt to that one.
I was like, okay, I listen to this one first.
Yes, if you'd ever like to talk about hardware, we can talk about Arduino, which is the code newbie of the embedded world.
That's just where you go. So that episode that we did with Emily was for part of Marches for Makers, which is a thing that
we did for the second time this year with Scott Hanselman, who runs the Hanselman's podcast,
which is a really great show talking about all different types of tech. And he actually has a
lot of pretty good hardware stuff. So I think, at least you would like that one a lot and so we did a bunch of different episodes on different types of making different categories
of making so because of that I think that our laser cutting one was just fine but we did have
a hangouts on air where um I thought it was Arduino but it's actually Raspberry Pi. We did a Raspberry Pi 3 unboxing and we did the LED light bulb thing.
And it was so awesome.
It was so, so awesome because we got it done.
I think it took maybe an hour and a half
and it was live and it was, you know,
from getting it out of the box to setting it up
and people got to tune in and see the full process.
So we did have some like real hardcore hardware stuff
like Raspberry Pi.
Sorry.
Some of our listeners out there are laughing
because Raspberry Pi isn't always what we mean either,
but that's cool.
It's fine.
And that show was actually fun.
It was fun to listen to.
It just wasn't what I expected.
And Raspberry Pi is a great place to hang out and start.
It's very hardcore
for us code newbies, how about that?
it's a good place to start for people coming from pure software
because it's familiar
in the development tools
and
how it runs Linux, things seem
familiar so that's actually a really good place to start
thank you Chris, I appreciate that
well an Arduino is a good place to start
because it's designed for artists it's designed to be easy well until it's not and then
it's coming from a web development background raspberry pi and beagle bone are the place to
start yeah all right uh okay wait a minute we should actually get back to this uh these topics
i have planned um before comcast cuts out again. Right.
Are you still a code newbie?
I think everyone is a code newbie.
I think that no matter how much I know,
it just means that there are other things that I didn't know that now I have a slightly better chance of understanding maybe a little bit faster.
But I think that as long as there are frameworks I haven't used yet and
languages I haven't learned yet, I think I will forever be a Code Newbie. That's pretty cool. I like the
continuous learning aspect very much. Yeah, me too. And we've talked about your Code Newbie
podcast and you have the website with blogs and forums. What else is there?
There's lots of stuff. So one of the big things that we started doing
as of, I think, six months ago was our in-person meetups. And so we have Code Newbie meetups in
five cities right now in Atlanta, Austin, Philly, DC, and Dallas, Fort Worth. And those are really
great opportunities for people to meet in real life. Because one of the big comments that I'd
always get on Twitter is, you know, these are great, but I really want to meet people, you know,
I want to pair with them. And I want to see their face and, you know, get to talk to them in real
life. And I was very resistant to that idea for a while, because the point of CodeNewbie is to make
it very accessible to everyone. And I liked the idea that as long as you have an internet connection,
you can find other people and doing geographic things felt like we were limiting folks.
But actually what ended up happening is we reached people who otherwise would not have heard of CodeMovie,
who kind of aren't really on Twitter that much and generally do in-person stuff.
So it actually ended up helping us grow our community and helping even more people.
And the other thing that we do is our online coding group. So we have one for Ruby, Python, artificial intelligence, and we have,
I think, one or two book clubs that are going on. And that's an opportunity for people to meet
online on a hangout for a couple hours each week, and to talk more and, you know, pair and look at
code and do code reviews, and really, you know, learn with each code and do code reviews and really uh you know learn with each other and
from each other in a low-key low-pressure situation so those are the two big things that
that we also started doing last year and you have another podcast ruby rogues yeah so i haven't i'm
not on that one anymore just because the the scheduling just didn't work out with my job at Microsoft.
But I've been on that show for about two years, I think.
I was a panelist and got to spend every Tuesday with awesome people like Avdi Grim and David Brady and Chuck Maxwood and Coraline Ada Emke and Jessica Carr.
And it was really, really great. I think that was probably one of the scariest things I've done,
maybe in my life, which kind of tells you how much of a daredevil I am.
But that was very, very, very intimidating
because I was the newest to coding by many years.
And even though other people on the show were relatively new to Ruby,
they'd been developing in languages and built many, many awesome things.
I was very, very new and I was terrified of being exposed, even though it wasn't a secret.
Everyone knew that I was a newbie on the show.
But I think that was one of the most terrifying things I've done in my career, but also one of the most rewarding.
Neat.
It doesn't shock me that you don't have a lot of extra time.
Did the Tech Jobs Academy with Microsoft, did that whole program come out of your work
with Code Newbies?
The program did not, but the reason why I got it was because of Code Newbie.
And so Tech Jobs Academy is, it's interesting, we've been working, or Microsoft had been working on that program for maybe six months, maybe a little bit more than six months before I got there.
And so the idea behind that was that Microsoft has been doing education for many, many years.
We have Microsoft Virtual Academy, and we've been working very closely with colleges and universities, and we give away a know, we give away a lot of stuff and we make a lot of content. And so we thought, you know, with all of the work being done around
making tech more accessible, I don't know how familiar you are with TechHire. Nope. Nope. Great.
I get to tell you all about it. So TechHire is an awesome White House initiative that was announced,
I think about a year ago. And the idea behind that was that if you have the skills to do the job, you should be able to get the job no matter what college you graduated
from or didn't graduate from, no matter what your degree is. If you can do it, you should be able to
get the opportunity to do it. And so that has been a really great initiative, and it's supporting
boot camps, but also online programs and community groups like Girl Develop It and just everyone who
is in the space who's working to make tech careers more accessible to more and more people.
And it's really important because one, we need those skills as the tech industry is growing
and more industries are going to be affected by technology. We just need more skilled labor. And also because
there's so much flexibility and growth and so much opportunity in those jobs that being able to
open it up to more people means that, you know, we're giving more people a chance at a better
life. And so that tech hire initiative was, you know, got a lot of press, was very, very important.
And so when Microsoft saw that, we thought, well, we have, again, these educational assets, these things we had at our disposal.
Let's see if we can use that to kind of piggyback off tech hire and contribute to the cause.
And so we teamed up with our New York City government, and they have their own team called the Tech Talent Pipeline,
which is a $10 million initiative to get more people into these coding careers.
And we teamed up with our academic partner, which is CUNY City Tech, which is our community college system here.
And so between these three partners, we put together a 16-week program, which is free education to unemployed and underemployed New Yorkers in hopes of getting them skilled up and having really great jobs.
It's free, but you do have to apply and that was rigorous.
It was a very rigorous process. It was a four-step process. The first step was just an
online application. Tell us why you want to do it. What are you excited about? Tell us about a time
you solved a problem. Trying to get a feel for aptitude and personality. You know, earlier in this interview, we talked
about endurance, right? And we talked about what do you do when you hit a wall? And for this program,
regardless of what the content is that we're teaching, the fact that there's so much information
packed in 16 weeks means that you're going to hit a lot of walls. And when you do, we have to know
that you can get back up and keep going and you're not going to be just destroyed by that and so the online application was just to get a sense of personality
and then we had a math reading exam to make sure that they're at a certain level to be able to
digest so much technical information and then we had them take a technical exam which was us
testing for again that grit that, and that ability to take,
I think we gave them about two weeks of information and digest it and perform.
And then the final step was a group interview, which is testing more for empathy and communication skills and how do you work well in a group.
And when we first planned all that out, my reaction was, holy crap, that's a lot of steps.
And I was a little concerned about what the results would be and are there enough people that'd be able to go
through that and perform and do well. But the cohort that we have, oh my goodness, they are
such an amazing, an amazing group of people. They are so, so kind and so supportive and so smart.
And I'm just, I'm continually inspired by them and it's
been such a joy to to work with them on your personal blog um bloggy tunes yep that's it
you had a post about not being a tinkerer about how curiosity driven is not how everyone learns, although it's a very popular phrase for people wanting to teach things, lead classes, lead workshops.
What led you to your post about that?
I don't remember.
I think probably some tweet or something.
It was probably something that someone said or posted
that just annoyed the crap out of me um but that's a common theme that i feel like i've heard
since i first you know stepped into this world of coding where there's so much emphasis and so
much value placed on people who tinker and you know a lot of the i remember i can't i can't
remember her name right now but i remember there was a developer who was talking about how her older brother used to take apart toasters when they were kids.
And he would take them apart, put them back together, and he would take her.
He just wanted to see what it was all about.
And he went on to be a developer.
I think he might work for Google right now. And she always felt like tech was
unaccessible to her and just not for her because she would never just take apart a toaster for the
sake of seeing what was inside and if you could put it back together. For her, she really wanted
very focused, purposeful projects. And when I heard that story, I thought, yeah, yeah. I would
never take apart a toaster. I would never kind of just push buttons to see what would happen. I really like focused things. And
I felt like the overemphasis on tinkering as a proxy to being a good developer was so overwhelming
in our industry. And I felt like it was frustrating because I felt like it was turning away people who
don't identify with that, who can be great programmers as well, because they're more focused on problem solving with a purpose instead of just exploring.
So I really wanted to kind of, out of just frustration, voice that side of things and kind of push back against the idea that tinkering and taking things apart is you know a great or the
best way to see if you're really cut out to be a coder or an engineer i hear a lot of our guests
say i started taking apart my computers at age four and never have stopped and i sit here thinking
i just started taking things apart and I'm not that good at it.
I feel very fake, but hey, I like to read.
I like puzzles.
I like math.
This whole tinkering thing is, it's sort of fun.
Yeah, I get that, but it's not the only path. Well, I think people mistake tinkering for curiosity.
And curiosity is certainly a value in this field field but it doesn't mean you need to
take anything apart it means you're curious about learning things and exploring them uh in a like
you said a more uh goal-oriented way i guess yeah um so instead of just saying okay i know nothing
about this let's take it apart and see what we find that's a different path than oh
i need to know x or y to accomplish this thing that i want to accomplish yeah and i like the
way that you put that because you said it's a different path right so it's not it's not saying
that tinkering isn't a good quality or a possible path but i think that when you hear the same
narrative and the story you totally share is exactly
the same stories that I keep hearing.
When you hear that same narrative
over and over and over again,
there ends up being a unsaid conclusion
that that must be the way.
And I wanted to present an alternative narrative
that says, okay, fine, that's a thing.
But there's also this other way of doing it.
And I think that's just a theme in a lot of the stuff that I do particularly with Code Newbie is making sure
that everything that we do and present doesn't have a narrative if we have a narrative it's that
there are many narratives and you know making sure that people know that just because your journey
your steps your discovery your age your, where you are, just because
those things are different than the common narrative that you might hear in this industry,
that doesn't mean that you don't belong here. And it doesn't mean that you are invalid. So when I
hear kind of a narrative over and over and over again, I know that that's going to lead to a
conclusion. And I don't like that. And I wanted to push back against that. This is the point where I might ask you about
the fact that despite the ratio of gender and diversity in tech, your podcast has a surprising
number of women guests. But if I ask you that, then I leave myself open to the same question.
So I'm just going to skeet right by
and go on.
But it was noticed, of course.
Wait, wait.
I'm happy to talk about it if you'd like to.
It's up to you.
You sound like you have been talking for hours
and since I think that's exactly true,
we should probably close up
chris do you have any other questions i had two questions and i will just pick one of them now
you can have both we are in a huge hurry well one one might be quick um you've mentioned a couple
of times that that you are looking forward to new you know you don't have a favorite language because
you keep wanting to learn a new one and I was curious what you were looking forward to learning next in terms of languages or frameworks.
Sure. So in terms of languages and frameworks, I really want to understand JavaScript better.
I think that for the things that I want to do with Code Newbie, I want to do a lot more storytelling.
I want to do a lot more sharing experiences and want to do a lot more, you know, sharing experiences
and just doing a lot more creative work with code. And I feel incredibly limited by how,
about by my comfort level when it comes to JavaScript. So that's something I really want
to double down on. But the other thing that I want to mention is, I think a lot of times when
people talk about what they want to learn in the space,
the question is always around language and framework.
And I find that there's not as much, at least in the newbie space, there's not as much emphasis
on learning processes.
I think processes are something that more senior developers and more seasoned programmers
appreciate because they realize how hard it is to do something well without a process. And so for me, one of the things I really want to understand is just
the front end web development process. When you're looking at a mock-up and you're trying to
build a real site, you know, I really want to understand the frameworks and, you know,
the best practice. And now there's not just one. There's, you know, many, many different approaches to it.
I really want to get a better sense of that
because I think that if I can get a solid understanding
of what those options are,
I think I can be a lot faster in creating websites
and be a lot more effective that way.
Cool.
My other question is a whole other show,
so I think I'll drop it. Oh, now I'm really curious.
A lot of us in the embedded world have thoughts about the web development world,
and they're probably unfair. But then we end up always often coming up against, oh, I need to
learn about this stuff because I need to put up a website for my product or I need to put up a store
or some of us, I know a few of us who've gotten shifted completely out of embedded or electronics
and are responsible for a bunch of websites. So I guess the short question is, do you have any
advice for people transitioning from our space, you know, just C programming on devices to learning
about web development and ruby and things it
seems like things move very quickly in that field and so i always get you know i not pay attention
for a year and suddenly there's a new language and a new framework that's the thing you have to use
so it seems very intimidating actually yeah so there's this website that i i really really love
i found it maybe a couple weeks ago. I think it's called
What the F Programming Language Do I Use?
Or something like that.
I'll send you the link
if you want to put it in your show notes.
But I love it so much
because I feel that way too.
And I'm a web developer
and I feel like everyone now is going nuts
over React and Node
and I don't even know JavaScript.
You know what I mean?
I feel like things are always changing and people are always telling me that there's this new thing they have to do.
And I see so many coding bees switch around and try different things just to keep up.
So I don't think that problem is unique to hardware.
I think for me, I've been very, frankly, I've been very comfortable sticking
with Ruby and sticking for the most part, you know, with Ruby on Rails, because I know what I
need to get done. And I'm not building anything crazy. You know, I'm building mostly just crud
apps. And for that, yes, there are really great tools and gadgets, lots of new languages and
frameworks that we can always learn.
But for what I'm doing, which isn't very heavy in computation, which isn't very computer science-y, I don't need to know those things.
And so I think that the best piece of advice I can give you is understand why you're doing what you're doing and what it requires and what is the functionality. And instead of finding the latest and greatest that might fit it, what would be the easiest
thing for you to pick up given what you already know? And at the end of the day, no one except
the developer, no one looking at a website is going to look at that and go, oh, they use that
framework. No one's going to do that, especially if you're trying to show off your hardware. What
they care about is does the site work?
What the back end looks like?
No one cares.
No one thinks about it.
So yeah, figure out what the point is, what's the goal, and figure out how you can leverage
what you already know and your technical knowledge and get there faster.
Well, now is the point of the show where I ask you, do you have any final thoughts you'd like to leave us with? called Punching Your Feelings in the Face. And it was a piece of advice that my husband gave me
many years ago when I told him how incredibly overwhelmed I was with whatever it was I was
doing at the time and how scared I was and how it was just such a huge blocker in me wanting to do
the thing that I needed to get done. And he looked at me very matter-of-factly and he said,
you should just punch your feelings in the face. And I just loved that
so much. And what that quote told me and what that keynote was about was just that, you know,
at this point I have a podcast, I have a job I'm very happy with at Microsoft. I do lots of speaking.
I do a lot of things. And I think that people, when they see that, they assume that it's
comfortable. They assume that I'm always in
a state of confidence. I think I do a very good job of looking like I'm confident when I'm totally
freaking out on the inside. And I think the part that people don't see that I want to leave people
with is that when you see the people who you think are doing really great things, understand that we
are constantly punching our feelings in the face. I don't think I've ever given a talk
where I didn't want to throw up. I don't think it's ever happened. This might be inappropriate.
I take a minimum of two poops before every talk. That's how nervous I am. And I think that for me,
it's been a huge experience in recognizing that I'm nervous, recognizing that I'm terrified,
sometimes crying through the anxiety,
but doing it anyway. And so I want to leave you with punch your feelings in the face.
That is very good. I like that.
It's helped a lot.
My guest has been Saran Yatabarik, founder of Code Newbie. You can subscribe to her podcast
in your favorite app and check out her website.
Thank you so much for being on the show. Thank you so much for having me.
Thank you also to Christopher for producing and co-hosting. And of course, thank you for listening.
Check out our blog and our newsletter, which is just an RSS feed of our blog. Why do people sign
up? I don't understand. This is separate rant. You can find that all on embedded.fm, the website, along with a contact link if you'd like to say hello.
Or send me a submission for that planet.com book and t-shirt giveaway.
Email them at planet, no, I don't know.
Email them at something.
I'll put it in the show notes.
Embeddedfm at planet.com. Or email us, show at embedded. I'll put it in the show notes. EmbeddedFM at Planet.com.
Or email us, show at Embedded.FM.
We'll forward along your resume or whatever.
Just say hello.
Or tie it to a pigeon you find on the street.
Yeah.
Yeah, that may be the best, actually.
Especially this week.
But that is enough for this week, and we will talk to you next.
Here's a final thought to tide you over.
This one is from Jon Kabat-Zinn.
Note that this journey is uniquely yours.
No one else's.
So the path has to be your own.
You cannot imitate someone else's journey and still be true to yourself.
Are you prepared to honor your uniqueness in this way?
Embedded FM is an independently produced radio show that focuses on the many aspects of
engineering. It is a production of Logical Elegance, an embedded software consulting
company in California. If there are advertisements in the show, we did not put them there and do not
receive any revenue from them. At this time, our sole sponsor remains Logical Elegance.