Colin Loretz: Welcome to build and learn My name is Colin
CJ Avilla: And I'm CJ And today we're gonna talk about the Stack
Overflow Developer Survey from 2022
Colin Loretz: Yeah this is a super exciting thing I don't think I
participated in it but I saw the results and I think it's gonna be fun to dive into
CJ Avilla: Yeah I I did I did fill it out this time around I think I've probably
only done it like three times In the past but it's always super interesting to see
what people are thinking about in terms of tooling what they're doing in terms
of learning like how much they're getting paid for each stack Like all of those
data points are so so interesting every year I I kind of I get really excited
when it comes out So I'm pumped to to go through and I'm also really interested to
hear just your thoughts about the results
Colin Loretz: Yeah Before we get into that let's talk a little bit about like
kind of meta about the podcast So this is episode two we recorded episode one
It's been a little while now And you did all the editing I'd love to kind of
just chat about like What that was like especially for people out there who might
be interested in podcasting on their own we're recording this with Zencaster
We recorded the first one in zoom just because we had some tech difficulties and
I think this is gonna be night and day difference but what what kinds of things
did you see when you were editing that episode or anything that you noticed
CJ Avilla: So I have edited hundreds of my own videos before and I've edited
probably like 10 podcast episodes before and I am always uncomfortable at
seeing myself but seeing the transcript of my spoken word was like even more
uncomfortable because it's like oh that is actually the words that I said and
Colin Loretz: you what do we use what do we use for that?
CJ Avilla: Right Okay Yeah So we were the first pass we did in Descript.
So Descript if you haven't seen it go check it out This is we'll have a link
in the show notes which will be a super special link that hopefully will increase
our chances of getting access to the new descript storyboard but the descript
is this tool that was originally built I guess for editing audio and The way
that it works is you kind of drop in an audio or video file It will transcribe
what was said and then allow you to edit as if you're editing a word document
And so like as you're going through you can see all of the ums and U's and
you really really start to notice the filler words mine in particular is so
like I be so and also like I use like a lot so in fact there we go right
Colin Loretz: Yeah I've noticed that even on zoom calls with with at work
I will sometimes end sentences with so and I think that's like a nervous tick
or something and you know and I I'm not completely against filler words I
think we'll notice them I there's some people who like to keep them in I think
it's also there's The kind of people who listen to podcasts and remove all
spaces and on 2X speed And it's like you kind of lose the storytelling element
of and like delivery when you do that I think like overcast will just let you
listen to podcasts at like next Breaking speeds Right And I'm not trying to be
like productive when I'm listening to podcast I'm trying to relax but I think
it's a it depends right Like you wouldn't wanna edit out all the filler words if
it was like a story or it depends Right If it's an audible and you're listening
to ums and OS like that would probably be really annoying but You know right there
I think we're just as humans You you you said a few things like we all have filler
words and I think we're uncomfortable listening and watching ourselves and
you've done a lot of this I don't think it gets easier You just do it right
You it's just fact of life And it's kind of like getting on stage I think
a lot of people think that when you do that You eventually just feel fine
but I I feel just as nervous getting on stage as I did the first day that I
did it You have a different experience and tools to to handle it I think
CJ Avilla: Right Yeah You start to be able to have different mechanisms to
regulate your anxiety around what people think about you And you start to realize
that people are thinking more about themselves than what they're thinking
about you And so maybe it allows you to relax ever so slightly so we we we
use D script Basically I dropped it in there and then I There's a tool that lets
you auto remove ums and U So I did that first and maybe you can tell when you're
listening back to episode one that it's a little choppy maybe that's was because of
that kind of just like find and replace then I applied a filter that comes from
descript called studio sound and this is a tool that will upload all the audio
and then run some machine learning stuff inside of descripts I don't know they're
inside of their platform that will try to improve the audio quality which is
just mind blowing Like if there's echo in your room or if it doesn't sound you know
rich or chunky enough like inside of the Zencaster in this UI we can actually see
the wave forms of our voices And they're a little bit different right My mic is
gonna be set up a little bit differently than Colin's Mike And as we're talking
Those waveforms can be sort of normalized using machine learning and they can also
remove background sounds and stuff So that I think was pretty powerful And
listening back to the before and after of just the studio sound application was
pretty wild I did apply and play with a couple different filters but I think
that was the main The main one And then I exported it from descript into garage
band because I couldn't figure out how to add like nice intro music that faded in
and nice intro music that faded out And I know how to deal with garage band And
so that's where I did so yeah found some creative commons open free Music that
you don't have to pay for or whatever drop that in the beginning drop it in
the end And then kind of that's where we landed with with episode one obviously
I think we'll iterate and improve but
Colin Loretz: Absolutely Yeah Yeah I mean like I think like anything the first
pancake right Episode one we kind of recorded it Assuming we were gonna throw
it away We're gonna release it You're listening to episode two now So this is
from the future Hopefully you've already listened to episode one I think we're just
gonna get better about content you know keeping the conversation tight episode one
was also like a rambling of our histories So enjoy that if you want a little bit of
a a down memory land of MySpace and and all that fun stuff but Yeah I'm excited
that we're doing this and it's only gonna get better and maybe we'll do like a deep
dive audio episode in the future where we can really talk about the tools and the
gear that we're using some of it you know you don't need to have but I think we've
kind of accumulated it over the years of doing teaching and and all that kind of
stuff So we've we've got that on hand but let's let's dive into this stack overflow
CJ Avilla: Let's do it there's a bunch of stuff that was surprising
a little bit Some of it was sad Some of it was hilarious And so maybe we
should start with things we'll go You wanna ping pong We'll go back and forth
And you wanna talk about some of the things that you thought were surprising
Colin Loretz: Yeah So before we do that I'm just gonna read the kind of headline
for this So if you haven't seen this we'll put a sh a link in the show notes
but they in may of 2022 they surveyed over 70,000 developers to kind of get a
sense of how they learn how they level up which tools they use and what they
want And I think this is More interesting than the like what do you do How much
do you get paid It's the when you're not working how do you learn or how do you
learn on the job How do you find things A lot of the meta work that I think is
newer To companies with remote work or hybrid work Right Because sometimes it's
like you just talk to your neighbor and ask them a question And now you got slack
and notion and JIRA and confluence all these different tools which we've always
had but what is it changing And I think the fact that this was in may of 20, 22
is also important just to note as like a marker for history because these surveys
are gonna come out every year and the the results are gonna change So yeah so it's
kind of just level setting there but did anything was there anything like that kind
of hit you as either super surprising or maybe even not surprising Like you're like
yeah of course developers this this sense
CJ Avilla: So obviously as someone who makes a lot of video content both for my
own YouTube channel and also the Stripe developers channel one of the first
sections I jumped to is how people are learning how to code And this is a this
is the part that is kind of the data point that allows me to go to my my leadership
and my bosses and say like look people are actually you know watching videos
on the internet and in order to learn how to do technical things Definitely
yeah it definitely helps like quantify that And so A lot of people said they
are doing online learning to learn how to code this was like a combination of
a bunch of different stuff between blogs and articles and video And so around 70%
said that they're using online resources obviously and then video specifically
came in around 59% of respondents I think part of that is learning styles Like some
people just learn better through written content Other people are gonna learn
better through video and or you know this like these kind of interactive courses
where you can kind of like run some code see the output and then try to improve
Something that I thought sort of stood out a little bit is in the survey it allows
you to sort of break down by cohort age or like kind of like look at a question
by age and for a video in particular the the younger the developer is the more
likely they are to use video as a as as a resource to learn how to code and the
older you are the less likely you are to watch video And so what My read on that
is that especially the newer generation of devs are kind of finding this online
content whether it's free code camp the Odin project ACA like all of these
different YouTube channels traverse media there's just massive massive YouTube
channels now that are teaching people how to code And I think that's become you know
a really core and important resource So
Colin Loretz: I think the on that same front they had what kind of resources
you used to learn how to code And they mentioned technical documentation and
stack overflow as some of the top two And I do wonder like I've only to be honest
recently been able to really be able to learn from docs I think that when you're
learning to code docs are not always the best way to learn how to code because
you need to see somebody use it right Like when it says put run this command
Where am I running this What supposed to do Where am I supposed to see and videos
give you that And you know I I follow some Instagrammers I'm not on TikTok but I see
the tos that leak into Instagram And it's interesting to see like the coding and
programming like Instagram tos because they're super short So you're not going to
really teach anything but they're almost like a let's get this person interested in
a thing to go to my YouTube channel to go watch the full video right Or to go watch
my Twitch stream where I'm gonna build my to-do app and react or whatever that
might be and so I do think like TikTok and Instagram probably has something to do
with that video piece But you know again I I don't know that these boot camps and you
know in some cases when you're learning how to code how do you learn how to learn
from docs a big part of it especially If you're learning Ruby sometimes you find
just like the pure Ruby docs and that's like a terrifying website to end land
on If you don't know you're looking at
CJ Avilla: Yeah I think when you know as you build experience when you land on
a readme for an open source project or whatever and you see the a bash command
that says you know you should at this point you should use gem install whatever
We as Rubus who've been doing this for 10 years or whatever we're comfortable And
we can like look at that and be like okay Yeah here's how I this is how I install
it And then you might see a couple of lines of code that are like okay here's
how you initialize the client in passing your API key and then make a make an API
call but as someone who's brand brand new who's never interacted with an API before
I Video is an incredibly powerful way to both inspire them but also give them the
confidence that they too can absolutely do this by seeing someone else perform
exactly the same steps that they need to perform Especially if it's like in a tool
that's familiar to them And so yeah as we talk about these other tools something
that has definitely come up in the comments for me is like people will say
why aren't you using vs code Why are you doing this Like inside of your terminal or
whatever And it's because they literally want the IDE to match what they're seeing
And in some cases even like the theme right They want the theme to look the
same They want like the colors to look the same They want all the output to be
exactly the same which feels comfortable and is yeah Confidence inspiring And We're
Colin Loretz: all waiting for that We're waiting for that CJ vs code theme to
come out you it's We you gotta have the links to your merch and your your vs gosh
CJ Avilla: we I have a theme and I think we're gonna open source It It's the one
we use for the strip developer YouTube channel it when we're in vs code but
Colin Loretz: Yeah I mean you'd be surprised I mean the number of people
when I when I like I said like those Instagrams and YouTubes people the biggest
questions like what theme are you using Or like if I have an auto completer or
something it's like oh how did you do that It's the extensions and the themes
and stuff like that yeah I mean when I we taught a bootcamp here at our co-working
space and we used to do everything live and we found that you know in like the
TAs and myself were being asked the same questions over and over again And so
instead we inverted it almost like Khan academy where we recorded the content so
that they could watch it at home And then the in person sessions were the office
hours So that way they could watch it they could stop it they could rewind it
they could watch it faster They can skip to the part that they got stuck on And
they can just do that over and over again without feeling like They don't have
to worry about like oh am I not smart enough Cuz I'm asking a question that no
one else in the class is asking You can just get through and then I think I've
done this myself Like I'll try to do it without the video Right Let me see if I
really understand this and then okay I didn't get far enough I need to like go
back and watch it again Do it again Maybe I'll do another sample app and see if I
can do it without it And you know that YouTube channel that I made Surprisingly
got picked up by just people learning rails and I think there was like a video
series that was like one of there was like 13 videos And I think somehow there's the
13th video is not there And all of the other videos people are so upset They're
like where's the last video And like
project Like video is pretty compelling to me It obviously takes a lot of work to
produce those things as you know but I do think that people are finding it really
interesting I think on the bottom of this list I see things like programming games
and podcasts as being on the lower end of that you know we're not teaching you
how to code on this podcast So I don't think that speaks to anything here but
I think there's been that dream that we're gonna have these games like code
combat and and some of like Disney things that are coming out That help you learn
through gaming which maybe that's just early and maybe we're gonna see that
stuff get better over time Cuz I think some of those games can be really fun
for kids to get into it Even if it's maybe you're not learning how to code but
you're starting to get that programmer's mindset and the problem solving mindset
CJ Avilla: Yeah So funny enough the there's a book that's called something
like learned a program with Minecraft And so I sat down with the kids last
weekend and we set up a Minecraft server and the whole goal was like let's connect
to the Minecraft server with Python and it took like an hour to get it just set
up You have to like install all these like crazy packages to get it even like
to run the right version of the right server And then once that's up and running
there's several different like Python libraries that interact with different
versions of Minecraft So there's like you know the Java edition or the the
raspberry pie edition And when I by the time I finally got it set up they were
exhausted They were like we don't even care anymore We're just gonna like go play
Roblox or some other game I'm like okay
Colin Loretz: Well like Minecraft was not designed for that Right People hacked
Minecraft but it whether wasn't designed to teach programming it'd be interesting
to have a game with that as like the core principle Right Like it's just designed
to be easy to connect to in any language like the APIs maybe it's even literally
a web API or something it'd be kind of or like you know like Twilio right
It's like how do we connect to a game without knowing all the underlying stuff
Just like we connect to a bank through Stripe without having to know how all
that stuff works I think be interesting
CJ Avilla: Totally All right Should we move Let's move on from learning how to
code I know you had a bunch of stuff about professional devs What was surprising
to you about how yeah How people are
Colin Loretz: Yeah I I couldn't find what they define as professional developer
Maybe we'll find that as we talk but 88% of professional developers code outside
of work with 73% of them coding as a hobby So I think that means that some of them
are doing work like on the side or maybe they're making like a theme for Shopify
as like a little side hustle but a lot of people just do it as a hobby And I think
this does parlay into the how do you learn you know some people like to geek out with
like I'm gonna go stand up Kubernetes this weekend just for fun Right And then maybe
they're not using it at work and I think that probably also goes into this question
that I really love that they asked which is like what do you work with versus what
do you want to work with you might not get to work with the new thing at work
And so people are playing with them on the side You know as you get to become
more senior it looks like senior devs have more and more influence on what tools
and maybe even purchases that they're gonna make in their companies So you
know some of those hobbies end up turning into influence on the tech product or
you know or tech stack of of the company
CJ Avilla: Absolutely Yeah I think our I don't know if this happens to you but
I've been hit up on LinkedIn all the time with people just kind like sales people
cold emailing and trying to pitch their enterprise software product or whatever
Do you get these these like cold emails
Colin Loretz: Yeah When I was at panty drop it was a lot more it was like every
CRM and like enterprise I forgot what they're called anymore The the whole
backend for logistics and shipping and all that stuff It was like almost daily
a little bit less so now but yeah I mean they know that senior devs have some
influence and so if you can you know gain I would say like we'll we'll talk
about Stripe for a second Like it's like when people look at the docs for Stripe
versus someone another payment gateway like a lot of devs are gonna be like we
wanna go with that one Because of what that experience is like or maybe they
have a really pleasant experience using it on the side and they built their own
side project with it And so now when it's like Hey we need a payment provider at
work Like oh we already know how to use this one And you know we there's not a
big risk in us choosing that how much do you code outside of work I think that's a
CJ Avilla: Okay Yeah That's an interesting question Also there's like this meme going
around right I think that it's something like if you were a lawyer no one would
come to you and be like you should do a bunch of law outside of work you know
like spend your weekends like writing like
Colin Loretz: contracts
CJ Avilla: contract Yeah Whatever writing contract like no lawyer
is gonna do that Right And so we're in a weird industry I feel
Colin Loretz: The other one I saw was like what do you do with
your money or something like that
CJ Avilla: yeah I have also seen it done like with like medicine like
as a doctor you're not like spending your weekends like going around
and trying to find people to fix
Colin Loretz: or but all your friends are asking you questions anyway So I
to escape that
CJ Avilla: Yeah but yeah I also have encountered lots of devs in my career
who are just like I'm just here to get a paycheck and you know To go home and
live my life outside of the computer and outside of my phone and outside of the
internet And I've also met a lot of other people And I think maybe both you and I
probably fit into this camp which is more like we truly genuinely love this stuff
And so we I don't know like maybe yeah I'm putting words in your mouth but I I
personally really really enjoy building things and experimenting and it to me
it feels a lot some artistic or creative outlet where you can build and write
code that solves some problem or build and write code that is you know creating
some creative some creative output So I think I absolutely code outside of
work It waxes and wanes for sure But depending on the year you can probably
go look at the GitHub squares but like yeah if if we were to add up all the time
outside of work I think You know it's probably more than people would say is
healthy but it's definitely definitely something that I enjoy doing especially
when I kind of find or start working on a project that I'm really really
interested in So if I've if I'm building a you know like a side project or if I'm
building a side hustle or whatever and I get really really into it then I can
easily sink like 20 hours on a weekend into something Also come out on the
other end feeling like really energized And like I had a ton of fun so I don't
Colin Loretz: I think this is the tricky one And that's probably where that meme
is coming from too is though I think that some people believe like that It's not
a good sign That like if a recruiter's expecting that you spend your weekends
building side projects or Like cuz a lot of people don't have the time or
the energy Right They might not have the ability to do this and that doesn't make
you a bad programmer I I would say like for me I actually noticed this when I
was reading the survey like in my current job I don't always Code every single day
like they'll definitely be meeting heavy days and then I'll have my kind of flow
productive days But like at the end of the day I cannot code like right now Like
I'm just in a phase right now And maybe this is just more of like this season
is not the season for side projects and side coding but it's like by the time
the day is over I am spent I need to get away from a screen I need to go out and
do stuff That way I can come back and do it again tomorrow And it doesn't and I'm
not feeling like burnt out by any means It's just I know that if I also went home
and sat in front of a screen again and did some more code I would get burnt out
And so I'm okay with that right now I'm like trying to like just say I don't need
I have all these ideas I've got lots of things right We all do but they don't
need to be done right now and I'm okay Giving that energy to to my job right now
But when I was you know more like when I was running the co-working space I was
tinkering with you know all sorts of APIs for Google calendars and door locks and
stuff because it was like a tool And for me it's kind of like DIY like working
around the house or whatever It's like I have a hammer that I know how to use
and this can be good or bad Right It's like okay now everything is gonna be a
code solution but you you don't have to go out and look An app when you can maybe
like wire together some APIs and things And that can be really fun I think for me
playing with APIs is the most fun but I do think like you said like I'm a lawyer
I'm not gonna be writing contracts for you know acquisitions on the weekend So
why do I expect this from from a software developer And I think you know if you're
trying to learn It is a great way to learn if you're trying to level up I think they
like I said in this survey like how are people up leveling going literally from
levels to levels and increasing their salaries Like does that require this on
the side Or is there a way to carve this out at work so that you're doing your
learning at work I know Like at orbit if someone has a goal of learning something
the engineering manager's like put it on your calendar don't make it a side project
put it on the table If it's reading an hour in the morning to start your day
whatever it looks like like that's good cuz it's gonna make you better So I think
you know it's important to make sure that people don't think that they have
to like be always on a hundred percent programmer to make it in this industry
CJ Avilla: Yeah I that is a great point And yeah I I've definitely been in phases
where after work there's I cannot write another line of code I do not wanna see
it And I've also had phases where it's like Work for eight or nine hours writing
code go have dinner and then come back and write eight or nine more hours of code for
like three months straight you know like building all these little side hustles
inside projects and doing contracts and wherever yeah like just really getting
getting into flow and loving it but yeah it I think like you said yeah you'll
go through seasons and it's not a hard requirement to be good I also sometimes
when I think about it too I think like obviously at the end of those second
shift like eight hour sessions I would be hitting bugs where I'm like what is
going on here And it would be something so so trivial and then you just go to
sleep you wake up You're like okay I was obviously like way burnt out and like
well beyond the not the baller curve but whatever the curve is that you need
Colin Loretz: sleep
CJ Avilla: Yeah exactly so yeah that can be that can be bad too but I don't know
I think oh right Coming back to this like concept of the 10,000 hours or whatever
right Like in order to become an expert you kind of like gotta put in the gotta
put in the hours And so for some people they Want to front load that and like
learn as much as they can early early in their career and then start to smooth it
out for other peoples It it's more of a you know a marathon where you wanna make
a career outta this and you know you're gonna be in this for 15 20 years And so
you can kind of pace it out this kind of brings us to another part of the survey
that I thought was pretty interesting And that is the like years of coding question
where it's like how many years have you been Writing code and why I think this
is interesting is cuz I wonder like are people okay so first of all if you look
at the graph it peaks out at about 30% of the people responding have between five
and nine years of experience 20% with one to four and then around 20% with 10
to 10 to 14 And so I'm like okay people are peaking around Like nine years right
and then what are they doing after that Right If you like people learn to code
they put in all this effort to learn how to code online or whatever through books
and then they only spend nine years doing it Whereas maybe going back to the lawyer
analogy right If you become a lawyer you might be a lawyer for like 60 years or I
don't know not 60 40 years And then retire
Colin Loretz: But you also had to do all your learning front loaded like
in a very extreme way Right It's
CJ Avilla: True Yeah
Colin Loretz: very extreme and very expensive My brother went to law school
and I think he's got some regrets when he looks at like programming
CJ Avilla: Oh really interesting
Colin Loretz: I won't speak for him Maybe we'll have him on one day to talk
about the difference between programming and lawyers Since that's not a an area
I thought that we would compare to but it's yeah there's Again I think go and
look at the survey and kind of interpret it and kind of put yourself in it If you
didn't participate in the survey like just look at it see if it kind of matches
what you expect reality to look like or if there's some surprises for yourself
Cuz I think you definitely found some of the more fun things I think when we
start getting into programming languages you mentioned like how far down the
list some Most commonly used programming languages are JavaScript is pretty much
at the top of the list and I loved that Ruby was like 50% loved and 50% dreaded
CJ Avilla: yeah so well we have to frame it like loved and dreaded So yeah in
the survey I don't actually remember how they asked these questions Do you
Colin Loretz: I don't either but because I think that might have changed how people
interpret it but like cuz I love how they're like this one is the most there's
I think there was a programming tool that was like the most highest paying but it
was also the most dreaded I think it chef was the highest paying but most dreaded
tool so clearly like they're trying to get a sense of like what do people like
to work with versus what do Have to work with and what do they dread I'm gonna
actually it up in another window here
CJ Avilla: It's also super interesting to see how much things pay right Because
if you look at tech stacks the you know rails is pretty far down the list in terms
of the tech stacks that people prefer But then when you look at the highest paying
tech stacks rails is number two So that's like I don't know It's I think that's
pretty interesting especially depending on what you're trying to optimize for So
Colin Loretz: well without looking at it what would you have guessed the high
the most loved language would've been
CJ Avilla: the most loved language I would've guessed JavaScript Y
Colin Loretz: And would you have been surprised to hear rust as the answer
CJ Avilla: yes
Colin Loretz: Because how many people are even using rust like that guess is
the bigger part of this Like it does have the number of responses for each
of these So like for example type script had 18,000 responses whereas rust only
had 5,746 So I don't know if there's a way to see this This is by percentage
of responses I think but even like rust Elixer closure type script Julia like we
still haven't hit I guess we got a little bit of JavaScript in there Python comes
in at 67% loved versus 32% dreaded but again Ruby is literally down in the bottom
here with the middle 50 50 and then on the very bottom we got Matlab and Cobal.
CJ Avilla: So yeah like from my experience which is limited I've done
like hello world and rust and hello world plus a little bit with a Elixer and I
definitely prefer to Elixer over rust And so part of me is wondering like okay
nobody has written well very very few people have written every single one of
these languages Number one number two like the communities are probably going
to have different resources So this this Only really represents those developers
who are on stack overflow engaged on stack overflow And so there's a chance
that there's languages on here that are misrepresented because they're much easier
to use and maybe you don't end up going to stack overflow for answers and so
Colin Loretz: We're over indexing on why why you would go to stack overflow
CJ Avilla: Well I think okay So part of me thinks that stack overflow plays obviously
it plays a very very important role in all programming right You that's where you're
gonna go when you have your questions But I also know that stack overflow is built
with.net and early in my career as a.net dev When stack overflow is just starting
out I remember using it heavily and there being a lot of C sharp and.net question
and answer And so part of me wonders is the.net representation of like the
answers here skewed a little bit because more.net devs are using stack overflow
or or is this yeah like a pretty pure
Colin Loretz: I I mean I would even say that like for ides like I would say the
one of the more surprising things is how fast visual studio code has like rocketed
to like the most used tool Neo VM was the highest by 1% more but visual studio
code like who would've thought like I use visual studio forever go but let Microsoft
would be the one to release the IDE that everyone on you know is using on the Mac
and on the PC And you know obviously they bought GitHub as well which gave them
Adam which looked very similar And I think they had kind of absorbed that But it
is fun to kind of see all the different tools there It's just it's so interesting
to think about like what what bias might exist in this They do have a methodology
section and don't know if they go into the the stack overflow bias here at all
but you know it's it's like if you hang out in places where people like to geek
out about rusts like of course Russ is gonna be the top one but it's similar to
when we talk about you mentioned highest paying Technologies like we see what we we
are we're a rails shop at orbit and some PE like I see a lot of job openings for
rails but then you hear people saying like rails Dying rails is old Rails is slow
Like you hear all these things and it's also productive It's also like there's
all these other things that people don't write Those like thought leadership pieces
about because just they're busy writing code and being productive I guess But
CJ Avilla: Yeah Yeah I think one of the things so just yesterday I was watching
some of the talks from jams stack comp from 2021 and the the creator of spelt
rich Harris right yeah Rich Harris the creators felt was talking about these
new this new type of like front end jams stack application that's felt sort of
embodies And that is something that can pass server rendered HTML Or it can render
on the client or it can be like partially rendered on the client And there's all
these like really really interesting technologies that are happening in the
JAMstack ecosystem And with front end frameworks in general with like next and
server side rendering and spelt kit and remix and all of these different tools on
the front end And he was kind of bagging on rails a little bit saying like oh hot
wire Has X Y and Z issues And like if you look on GitHub and he was able to point
out like here is some Jan that you find on GitHub because GitHub is built with
rails and using hot wire that you would not have if you were to build like this
high fidelity jams stack app basically And so part of me number one wonders
like like obviously his felt is pretty high on the list of web frameworks but
also Are people saying that rails is dead because it's falling behind in terms
of the trends that are happening on the front end but then I also question like
like remix are coming out where a lot of your tooling is server side rendered
HTML going back to the web browser basics and really kind of embracing like all of
the standard HTTP stuff Like okay Yeah You put a form and you have an action
in the form which specifies the route to which you're gonna send your post
request And like that's just gonna use the names on your inputs and pass those
back to the server and use kind of like all the things that we would've used
Colin Loretz: in rails
CJ Avilla: Exactly It's a giant cycle Yeah And so I am kind of curious to see how
that waxes in wanes over time Obviously it doesn't feel as sexy right Like the
using remix Is is I'm I'm so so glad that remix is kind of like making it cool again
to use standard web fundamentals because it wasn't sexy to just be like okay
this is a boring app That's just written with HTML and has like these server
rendered routes that are just gonna spit back HTML or put stuff in the database
or pull things outta the database So
Colin Loretz: Yeah they didn't get into it in the survey but I think like the
next level is even just standard web components Like I got exposed to those
through Shopify and it's like I don't have to include any JavaScript Right I mean
I have access to whatever is built into the browser I don't have to use react I
don't have to worry about what this is This the thing that I'm in Right All this
kinds of things are really interesting and I haven't played with spelt but what you
just talked about is making me want to go play with spelt a little bit see how that
works Cuz I have also haven't touched hot wire or or any of those things in rails
yet but I know we use some of that at orbit and it's been interesting to see
like how much of this is us geeking out on tools and how much of it is like how
us ship stuff Better faster and maintain it all of that Like how easy is it to
onboard a new member which actually I think there was a conversation about that
in here which is just like how easy is it to find answers to things How easy what's
like the Perceived time to onboard And a lot of people are like yeah if it it
always takes longer than than the company thinks it's gonna take for me to onboard
Which I think is important Like if you're joining a new team and you feel like you
don't understand what's going on like Existing code bases are hard your team
may or may not have a good onboarding flow It's not necessarily your fault
give the feedback and maybe even use the survey to prove that that's the
case for most people And it's not you
CJ Avilla: when you when you onboarded at orbit how long did it take Like how
long did it take and how long did you were you sort of told like okay we've
allotted two months for you to get up to speed or like two weeks for you
to be like shipping your first stuff or whatever What was that experience
Colin Loretz: I was joining kind of at like transitional time So they were trying
to figure that out and I think you know most teams it's probably likely The case
when most people joined anything they're like oh we're changing some stuff you
know and there when I first joined I found a document that was like a 30, 60,
90 plan never really had to follow that though Cause that kind of stopped being
adopted What was more interesting to me was like once I had all my accounts and
had access to everything it was just like world building in my head Like I gotta
build up what do we use When do we use it How does this code work becomes what
is important for me to know to do the ticket That is my first ticket you know
was this first ticket even designed to be an onboarding ticket or was it just like
thrown in the deep end type of thing And like I was actually thinking about this
the other day because I was working on a piece of code that when I first joined
I was like I do not even understand what this why this is even in here Like what is
it doing Why is it so complicated And now it's I'm refactoring that because I really
understand what it's doing And I know that like actually I think it was like Rubo
cops specifically said this thing is too complicated Now you can't commit And I was
like all right we're gonna fix it because I knew it was complicated when I joined
I I didn't understand it then So like is every new engineer gonna look at this and
be like I don't know how to coat because I don't understand this thing I was like no
it's it was written in a way that could be made better it had to do with devise and
Omni off and all that fun stuff but like it is really fun when you I don't know if
you've felt this but There's almost like a light switch moment where you've just
been in a code base for a certain amount of time And all of a sudden it's like
oh I understand where things are where how they work whereas like a few days
ago it might have been like you were in another country not speaking the language
CJ Avilla: Yeah I think it definitely depends on the size of the code base the
like familiarity with the language Right Like I think when I started at when I
started at my VR I didn't know any Python And we were building a Jengo app with
an angular front end I never worked with angular and I never worked with Python
And so it was like okay you have to learn this giant code base that O at the at the
time I think it had over a million lines of code You also have to learn Python You
also have to learn angular and like the business and the people and the processes
and the whatever And While I was fixing bugs probably in the first couple weeks
I definitely was not like productive in terms of adding like massive features
or being able to pull my own weight for three to six months And this is something
that we tell people that join our team at strip too is like yeah like when
you join we expect the bandwidth of the team to go down Like there's going to
be negative Based on you joining because we all need to work together as a team
to bring you up to speed and like answer any question that you have and make
sure that you feel fully supported and enabled so that you can get off on a good
foot so yeah I think if you're joining a new team or if you're just starting
out as a junior dev like don't feel bad if you're not you know crushing it in
your first couple weeks like I would say
Colin Loretz: Yeah well and like an onboarding document is only gonna get
you so prepared right It's shadowing you know the teammates it's asking questions
It which I think you know brings up some of the other questions around remote A
lot of people surveyed here Again this is gonna be skewed based on stack overflow
but 85% of organizations are at least partially remote which I think changes a
lot of this stuff I think the other one that I wrote down that which I thought
was key to stack overflow was that more than 60% of the developers surveyed and
I I collapsed a bunch of the options It was basically the 30 to 120 minutes a day
spent looking for answers Right So that means that at a minimum I would say more
the most of the people we're spending at least an hour So if you have an eight
hour Workday one hour is chalked up to just looking for an answer to something
you might have a meeting you might have a standup So like already you're starting
to see the day get whittled away you know and when I've talked to my engineering
manager we we kind of talked about like I used to be really productive at nighttime
and I would get all I would like Do my meetings during the day kind of slack off
during the day maybe take some long lunch do some errands And because I'm remote
I'm gonna work at night and I get so much done at night Right And we really had
to think like okay why can't we get work done during the day Like we need to fix
this and you learn a little bit of like the remote work hygiene of like setting
statuses and turning off alert alerts and putting on headphones and all that kind of
stuff so that you can just get into your state cuz I would prefer to not have to
work at Right And I've figured out ways of having maybe like no meeting days or
no meeting afternoons whatever that looks like So that that's flow time and making
sure that like I know that some of that time's still gonna be spent reading docs
looking for answers maybe even talking to the team but that you know again you're
not going to be writing code for eight hours a day Like it's just impossible
CJ Avilla: Yep Totally Totally Yeah It's it's unrealistic too to believe that
you can write code for eight hours a day and it come out in any valuable state
like without it being yeah something that takes a long time to parse or
get merged or whatever especially like if you're collaborating and you need
to like work through PRs whatever.
There was one last thing that I wanted to like one last question on here that
I thought was super surprising And then I think we could wrap it up hugging face
transformers was the number one most loved library And I before reading the survey
and like Googling this I had never heard
Colin Loretz: of this
CJ Avilla: So I was like what the what is hugging face transformers and so
what I gather from the website hugging face.co Is that it is build the AI
community building the future So it's like a community of models and machine
learning tools for building some like AI stuff but I don't know Had you heard
Colin Loretz: tell you can tell that we do not do this stuff
CJ Avilla: we try to
Colin Loretz: explain it I had not heard of it And I did Google it as well Cuz it
stuck out in the list What I love about this is that it brings some of the fun
and joy of like what we used to see in the early days of Ruby to AI right This
idea like I don't know the origin of why it's called hugging face I'm sure there
is one We'll have to look for it if you know about this and you're listening
out there we'd love to talk more about this Cause this is like a whole area of
the internet and programming that I know nothing about Right And I know models and
machine learning and AI are getting really popular You have people sharing all these
like Dolly generated photos and things I don't know if this has anything to do
with that if we don't even know what we're talking about but it does look like it's
transformers for pie torch TensorFlow and jacks So those are all three things I've
never used before but I love the fun to it There's another link that I'll post
in the show notes that I loved which is just like why is the internet not fun
and weird anymore kind of becoming like These like Facebook's starting to look
like Instagram and Instagram's looking like this other thing And everything's
just becoming like either everything looks like bootstrap and tailwind and
not like the old geo citys mice face like explore blink you know all that kind of
fun stuff So how do we make the internet fun and weird again again there might be
a reason why this is called I don't know if you found it why this is called what
it's called but it looks like it might be something we might have to play with
CJ Avilla: Yeah I did not figure out what it's called right before we recorded this
podcast though I hosted a Twitter space with Mike by Foco who is another developer
advocate at Stripe and he is working on this thing called speech writer.ai Which
is a tool That'll let you write like best man speeches or inauguration speeches or
things like this where it's using open AI which is another tool that uses or
that has like G P T three is some other model And so there's like some API you
basically like ask a questions and then it will do some fancy machine learning thing
and then spit back some answers But yeah hugging face transforms looks Like it's
related in some way so we'll have Yeah
Colin Loretz: We'll we'll have to dig into that one and come back
to it in the future but awesome
CJ Avilla: Yep
Colin Loretz: So yeah that's the 2022 Stack Overflow developer survey definitely
take a look at it We'll put a link in the show notes if there's anything
that you wanna see us talk about in future episodes definitely hit us up
on Twitter my Twitter is @colinloretz.
We'll put it in the show notes And what is yours CJ?
CJ Avilla: Mine's at C J underscore dev and yeah Thanks so much for listening
Really appreciate your time and attention
Colin Loretz: All right we'll see you next week