Coding Blocks - Stack Overflow 2022 Survey Says …
Episode Date: July 18, 2022Once again, Stack Overflow takes the pulse of the developer community where we have all collectively decided to switch to Clojure, while Michael is changing things up, Joe is a future predicting trail...blazer, and Allen is "up in the books"
Transcript
Discussion (0)
you're listening to that's cutting box
see i i came in with like so much punch the last couple times i'm like yeah forget it
yeah you got something tricky do you call it a slider uh i don't know or a change up
could be a change up okay yeah sports ball reference that's right it could be any of those yeah so yeah subscribe whatever
visit hey wait whatever what number are we on oh wait this is oh 89 yeah 189 there we go all right
okay so with that you could uh visit us at codingblocks.net where you can find all the
show notes examples discussions and much much more you can send your feedback questions and
rants to comments at codingblocks.net.
And follow us on Twitter
at codingblocks or head to codingblocks.net
and find all our social links
at the top of the page.
You know, it's been 189 episodes. That's been our
intro thing, right? Like all of that.
Yeah.
But that's why...
Different orders.
Yeah, different orders.
And I didn't exactly follow it
this time no no that's pretty good you know we actually recorded this ahead of time so listeners
you may not know this but um you know it's different every time but we actually recorded
all of the intros for the last nine years all basically in that first week and we've just been
kind of sprinkling them out throughout do you believe it's nine years though like can we
acknowledge that for a moment?
It may not be. I'm not great with numbers.
We've aged. We're a quarter
older than we were when we
started. Quarter? Speak
for yourself. 21 over
here.
The ageless. Michael,
by the way, who are you?
I'm Joe Zach.
Oh, by the way, who are you? I'm Joe Zach. Okay. Oh, geez.
What are we doing?
I'm sorry. I'm sorry, Joe.
I didn't mean to. Well, let's start it.
Okay. I'm Alan Underwood.
I'm Michael
Outlaw.
You're still Joe
Wait no this didn't work
We should probably just get to the episode
Yeah let's do it
But first a bit of news
So we have a review this time
And I didn't even see it
This is what happens when we don't let
Jay-Z do the reviews anymore
Guess what happens we get some reviews So Jay-Z do the reviews anymore. Guess what happens? We get some reviews.
So thank you, Fizzy, Buzzy, Beezy.
That's pretty awesome.
Great.
Also, a little bit of news here.
So I am going to be doing an in-person presentation at a new meetup here in Orlando,
the Elastic Search Meetup in Orlando.
And it's Wednesday, July 27th.
So this episode will be out before then.
And we'll be talking about running elastic on Kubernetes.
So come check it out.
I got some shit.
And so you can try to kick them if you're fast enough.
Wait,
what's this in person stuff you,
you speak of like,
I never heard of that.
It's like virtual,
but you actually have to go there and park.
That sounds awful.
Why would anyone do that?
Virtual in person.
That's a new thing.
Yeah,
that's fair. There's stickers and stuff. Yeah, there's stickers and stuff.
Oh, there you go.
All right.
All right.
So are you going to have some coding block swag to give out?
Yeah.
Oh, you do, right?
Yeah.
Good.
Excellent.
All right.
So before we get into this episode, which is going to be about the new 2022 Stack Overflow
survey, I had something I wanted to discuss.
So I brought it up.
Oh, this is a trick.
It's not even in the show notes, Joe.
He's like, oh, no, it is.
It is.
It even says before we do the survey.
Oh, yeah, okay.
It is.
It's in a different section.
Actually, every word he just said is written right there.
Exactly.
Okay.
So I brought this up on Slack, and I put it out there,
and design pattern evangelist, uh,
Jim Hummel sign.
He's also written something about this as well.
And I just, we've talked about this in the past before, but I want to reiterate it because
it's super important and it bit me recently and I know why it bit me and I'm going to
explain it quickly, but here's the gist of it. If you were writing an
API, let's call it just a restful API or whatever. I don't even care. But if you're writing an API,
don't put any of your implementation code in that same project or module, just don't do it.
And, and I say this because ultimately that API, we've talked about this, the endpoint itself should have almost no implementation, right?
Outside of maybe security filters or things like that.
But it's going to call into an implementation somewhere.
What I'm saying is make that implementation another module somewhere and import that into the project.
Okay, can I say this a different way?
Because when I read this, it was kind of confusing,
even the way you worded it.
But I think what you're saying, if I'm understanding,
is don't make the API part of the web project, right?
Because then you have the web server stuff baked into it.
Make the API to access it,
like, you know, part of the web API, but the, the, the true API that's being called behind
the scenes is in like another library that can be tested and can be like reloaded in a command
line interface or loaded as part of a website or reloaded as part of a desktop application,
whatever. Totally that. So if you have a web API, yeah. So I can see why it
would be confusing, right? Depending on the terminology, the actual implementation of
whatever it is that you want it to do should be separate from whatever API is calling that stuff.
Right. And I'll give an example why, because somebody asked me about it when I brought this up on Slack the other day.
And we ran into this on a project that me and Joe Zach are working on.
And here's the reality.
Like when we stood up our web API, our endpoint for our consumers to use, we put some stuff in there because we needed to get stuff done quickly.
Right.
And breaking things out into modules and setting things up to publish and do all that. Like it takes time. And, and we didn't have that time. Well, I ran into a situation
like, I'll give an example of something that could happen. Let's say that you're writing software for,
for a multi-tenant type thing. Let's say that you're writing a service that's multi-tenanted.
Well, chances are, you're not going to store each tenant's data in the same database if you're using databases.
Or if you're using Elasticsearch, like Joe Zach's going to be doing a talk on.
They probably have their own indexes, right?
Like you separate things out and they might even be on different servers and in different clusters and all that. And so you're going to have logic to say, Hey, if, if I have, if I'm trying to access
Michael outlaws data, how do I get to that database? Right? There's going to be something
that tells you how to get there. How do I get to outlaws search data in elastic search? There's
going to be something that tells you how to get there. And what can happen is over time,
you're going to need things that access that API. Well, that API is going to
start injecting other modules into it. Well, some of those other modules might need access to those
same things that know how to get to those databases. And so now if you inject that module
into that web API endpoint, the only way it knows how to call is through an HTTP request, which is basically like it
calling itself through the most inefficient possible way there is. If those pieces have
been broken out, right? Like if you had your how to access my Postgres database over here and how
to access my Elasticsearch in another module, those could have been imported into your web API project, and then they can just be used.
And anything else that might need to use those modules that might need access to those same type
things can inject those into their projects. And so now you don't have these circular dependency
type things that are really hard to unwind after you've put them in place, right? And that's kind
of why i was
like man i gotta i gotta get this out there maybe this will save somebody down the road
if they're getting ready to start something just break that stuff out into separate modules and we
talked about it in clean architecture and clean code like drawing the lines and where to inject
things and where those boundaries should be it's really hard to do sometimes especially when you're
under the gun to get things done but yeah i think i even did this but and i like now time was like yeah
of course you just have the web stuff's totally separate one thing i hate that was like the
obvious answer is kind of have a core library just like one you know big stupid core thing but
that's uh i know that's the anti-pattern but what's the alternative like you start breaking
up into modules that you may or may not need based on what you think things are going to be like and how you think it's going to be used so it i mean it's gross software is gross
it's it's not easy i mean we've got i feel like we've definitely covered this before though
but or something similar but yeah i mean i i know that even in past projects that we've hit where
like you know we've had a desire for like some kind of functionality that,
you know, might have, uh, somebody might've baked into like a specific web API call and you're
later like, Oh, I want to reuse that functionality in a command line interface, but in its current
implementation, I can't. And so I am forced to break it out. But if you just started with it that way, then, you know, you would, you wouldn't have had to go with that. But also like,
I don't know. I mean, I feel like we as software developers, we're, we are
extremely hard on ourselves, right? Because like, you know, we will say stuff like that.
It almost feels like, well, don't let good enough stand in the way of perfect because also I don't know how I'm going to use that thing. And so when I do know that I'm going
to use it, then like, you know, okay, that's a fine time to break it out. But you know,
if I didn't do it the first time, I don't know that I'm necessarily going to beat myself up
about it. Is it the best pattern? Absolutely not. Right. It would definitely be better to go ahead
and have that thing already broken out ahead of time. Because even then, like, you know, it definitely is like the other downside is if you,
if you didn't break it out, is that, uh, you know, you, you, how are you testing that thing?
You probably aren't right. You know, cause, cause you know, unless you're like creating a mock web
server as part of your test, which man, that sounds gross, but I don't know.
Well,
so I have a couple of extra thoughts on that too.
Like what you said about,
we don't put implementation in the endpoint itself.
Some people will be like,
okay,
well that's fine.
I won't put it there.
I'll just create another class in the same project and then it'll call that
class.
And then that class is reusable amongst other things in there,
but then it's not reusable by external components, right? Like it, that, that's really the rub there. Um, what's interesting is
like, I wanted to give an example, like where you could almost mentally sort of break this down,
right? Like what I said, where, you know, you have your, your search indices and it needs to
know how to get there. So you could easily see, okay,
let's break that thing down into a component, right?
Like we're going to have our elastic search infrastructure type component,
right? That knows how to get there.
And then we're going to have our Postgres infrastructure type component that
knows how to get to this tenant's database over here.
But I don't think, at least in my mind,
I don't think that the right way to use those is whenever you're writing your next thing and you need to update some tenant data.
I don't necessarily think that you just start munching all those things together.
That's where like at least bits of domain driven design come into my head.
And I'm like, you should probably have a module that's for tenant management.
Right.
And then and then maybe another module
for some other type thing. And then those modules can bring in the Postgres and the Elasticsearch
things and they know how to use it. So the problem is, right, it ends up being multiple layers. And
that's why I said it's easy not to do that stuff up front because when you're just trying to get
stuff done, you're like, hey, I know how to get to this database. I know how to get to there. I'm going to just code this stuff to make it work. The problem
is, and this really comes up when you start using dependency injection type, like inversion of
control type stuff, like spring framework really forces you to think about how you want to do this
stuff because everything's getting created for you behind the scenes and it's real easy to start creating these circular dependencies so yeah as soon as
you you are out of the uh construct object construction job then you have to think about
things differently but i mean i i get it i just uh i don't know like i said i feel like sometimes
we're just so hard on ourselves like oh man why man, why did I, why did I miss that? Like, you know, and, and like I said, I mean, don't,
don't let good enough stand. The thing that drives me wild about it, it's like, you know,
you look at like all of the, all of the things that we've talked about over the years, right?
Like all the different, uh, you know, the best practices and patterns and any patterns and like
what you should and shouldn't do. And if you try to start up a startup company,
if you try to start a startup, is that right?
Startup, a startup?
And you adhere to all of those right from the get-go,
how would you even get your minimum viable product out there?
The MVP would never see the light of day.
And it'd be so good. You'd still be trying to set up your DevOps pipeline your minimum viable product out there, right? The MVP would never see the light of day, right?
And it'd be so good.
You'd still be trying to set up your DevOps pipeline before you even got to it.
And then you're like, okay, I think that's ready to go.
Now let's focus on authentication.
Wait, DevOps?
Not until we got our security model figured out.
That's right.
Yeah, so, I mean, that's why I say that like i don't know we we gotta be a little bit
forgiving with ourselves sometimes you know and like yeah whatever oh oh that's one other thing
and i totally agree right like you cannot absolutely cannot start something and think
that you're gonna make it perfect right like that's not even possible. It's not within the realm of reality. However, the reason this came up so much is if you happen to be using different applications or different technologies that might write a library that says, hey, I know how
to connect to Elasticsearch for this tenant, you can now reuse that module across different areas,
right? And that's where it really starts to bite you if you don't think about that stuff up front
a little bit, because now you find yourself copying and pasting code all over the place.
And guess what happens when they decide that they're going to change the way that they
assign tenants to clusters.
Now, all that, those places you copied and pasted that code, you got to go find all that
and fix it.
So it's, I guess what I'm saying is like, that's a different anti-pattern there, right?
Because like in that scenario that you're describing, you saw a need for it a second
time somewhere else.
And rather than refactor it out into something that was reusable, you copy and pasted.
And that's definitely bad.
I mean, that's the point at which, like, you can say, okay, it's now time to make this thing something else, right?
I mean, none of what you're saying is wrong.
I'm not trying to suggest that any of that is wrong.
Right.
You know.
Right.
No, no. What you're saying is absolutely correct, right? Like, you have to. that any of that is wrong. Right. You know, right. No, no.
What you're saying is absolutely correct.
Right.
Like you have to,
there's some give and take.
You can't go.
Yeah.
Yeah.
You can't go over after everything whole hog.
Right.
Like you just don't have the time.
You don't have the resources,
whatever.
And,
and to your point about like when you saw that you needed this somewhere else,
you know,
you can't copy and paste.
Well,
the thing is,
and we know the reality here is the right way to do it is to break that thing out into a separate module,
include that module in the project that was using it, include that module in the other project
that's using it, find a way to publish it to whatever your artifact repository is. Like we're
not talking about an insignificant amount of work, whereas copying and pasting the code is a 15 minute thing, right? So it's, you're,
as a developer, you're always stuck in, in this, how badly do we need this now versus how much
time do I have to try and do this right so that it sets us up for success in the future. And it's a
hard balancing act sometimes it really is. But my whole bringing this up if you can think about how you can break
out these modules up front and if you can don't keep them in the same project as whatever your
actual api endpoints are that are being called put them out into separate projects or modules
whatever the terminology is depending on your language or your stack don't just put them as
a separate namespace within the same library,
the same shippable artifact.
They should be in their own shippable artifact,
be that a jar or a DLL or whatever it might be.
And to your point a minute ago,
outlaw where you're probably not going to know exactly how this stuff's broken
out.
At least if you took those initial steps,
refactoring in the future,
if you need to change it,
it won't be terrible, right?
Whereas if you had it all baked into that same namespace area, it gets ugly, right?
It gets really nasty really fast.
Yeah, I guess I just see the whole development process that like we read so many of these books, and they're just so opinionated but alsoated but also like kind of like hard on ourselves about
like you should do it this way right yeah true and at the same time it's kind of like you know
no like like take the the tdd approach like i'm gonna like write something ugly and i'm gonna
like make it work and it tests or whatever and then like i'll refactor it over time and refactor
and refactor and refactor and refactor and i mean, that's the reality. I mean, I don't mean to say that my code is ugly.
I was refactoring Joe's.
Right.
Yeah, so whatever.
Yeah, so that's the reality, though.
Software development is more a life of just, like,
you have an idea, you write it, you build it,
you say, okay, that works. Now
let me tinker with it and redo it and redo it and redo it and redo it and redo it and redo it and
redo it. And you're going to do that a few more times. I'm not done yet, but I'm going to stop.
And you do the best you can within the constraints you have, right? Like that's the reality of it.
Because there's so many times that you're not even going to know how you want to use it ahead of time.
And so that's the thing.
It's like, I don't know.
I mean, you could make a thing in a library and then never use it.
So you went through all that effort for nothing.
Or maybe it becomes like the next hottest library
that gets used by everyone.
I don't know.
But I tell you what I do know.
Some numbers.
Numbers?
Oh.
Yeah.
So we're talking about, I don't think we've said what we're talking about, have we?
I thought we did.
Sort of.
I mean, Alan kind of mentioned it.
Well, don't say it now.
Okay.
It's too late.
You'll have to figure it out, Lister.
Mm-hmm.
It is.
We're going to keep you in your toes.
It's that topic that shall not be named.
Yeah. Okay. I guess it's going to be painfully painfully obviously we're talking about the stack overflow survey uh it came out
in june was it june 22nd and uh we got a couple numbers just on like where the uh what the survey
like where the results came from and then we'll go through and talk about the numbers a little bit
uh like some we'll call out some stuff i think is interesting and we're all pretty fresh on it
right like we didn't really dive into it so it'd be kind of fun to just
get uh get those hot takes right yeah but the one thing we actually did this go around is we sort of
looked through some of it just to understand what they were doing this time uh oh yeah i think last
time we were kind of like just swimming around trying to figure out what some of it was so yeah yeah we're iterating
i'm just waiting to see how's my boy vb doing come on i got big hopes for you vb i got big hopes
well let's see so about the about the survey uh the results came from about 73 000 developers
that all were from stack overflow so you can imagine you know there's definitely uh some
bias there just on how like kinds of people that they got and the kinds of people that they didn't um there is also a very
large possibility for uh some questions to have much fewer responses so sometimes like one question
would lead to another so if you said no on the first one you're not going to get the second one
also sometimes you can just not answer a question so um we won't call out everyone but if you do go
follow any of the links in show notes you can kind of see the basic numbers and stuff, the respondents on each of the questions that we're talking about.
I do have a couple of Jay-Z call outs for you though.
Oh boy.
I don't, I, Alan, did you know that we are in the presence of greatness?
Like Jay-Z is a fortune teller.
Did you know this?
I did not know this oh i did not know this so literally one of the first lines of the stack
overflow 2022 survey results says last year we saw git as a fundamental tool to being a developer
this year it appears that docker is becoming a similar fundamental tool for professional developers. Docker is the new called it increasing from 55 to 69%.
Yep.
Oh,
wow.
And also,
also,
this is another one that,
uh,
Jay-Z is going to super like,
and also,
you know,
again,
where he's like,
you know,
lead,
he's a trailblazer,
man.
Like seriously,
it really is people.
I'm stack.
No, no. It really is. Jamstack. No.
Hey, it's still around.
No.
People learning to code are more likely to be using 3D tools than professional developers.
Like Unity 3D, 23% versus 8%.
And Unreal Engine, 9% versus 3%.
Teaching themselves skills for 3D VR and and ar oh very right so i'm
still so there's mr game jam i've not been talked out of clients for a long time i was mr ssr
and then i got talked into client-side rendering and i'm still there i know that ssr is having a
resurgence but we'll see what the survey has to say about it. Cool.
A couple other things that we wanted to say here, just in what they did when they gathered
this stuff, is they actually asked the people how they felt about the survey.
Like, was it too long, too short, whatever?
And 76% of people said that it was about the right length, right?
So people weren't annoyed by it, which is good.
That means that they probably stuck to it and answered things.
And then there was a question.
I was really surprised with that one, though.
Sorry to interrupt you.
I was really surprised with that one, though,
to see that there was a large portion of the respondents
that cited they preferred the coding block surveys.
So I was like, okay, well, you know, I get it.
That's awesome.
How easy or difficult was it to complete the survey?
And 67 some odd percent said that it was pretty easy.
And this was out of 70,000.
I mean,
I don't know.
15 minutes.
I can't do anything for 15 minutes.
Yeah.
Okay.
Is that,
that's,
that's how we're describing if something is easier or hard now is just
literally the duration of time that it takes.
Yeah. I mean, 15 minutes without being interrupted by at least one meeting.
Well, then you must hate sleeping because that takes several hours.
I do hate sleeping.
Are you serious?
That's like my favorite activity on the planet.
If I could not sleep, I would not sleep.
Okay, well, this just got weird.
So then you must hate being awake because that takes several hours of your day then.
Yeah, also.
Look, if ascension is on the table, I'm ascending.
That's all I'm saying.
That's hilarious.
Beam me up.
All right.
And then the last thing that we had here is they sort of polled people to find out what their profession is.
And this go around 73% of people were developers by profession and we had some other
ones like learning to code 8.6 percent not primarily a developer but i write code sometimes
7.9 and then there's some others but so a vast majority of these people are full-time coders
yep so a little bit about demographics should we hop into the overview section yeah let's do it
all right uh and then we had some some nice little blocks here that kind of talk about about demographics, should we hop into the overview section? Yeah, let's do it. Alright.
And then we have some nice little blocks here that kind of talk about different kind of things,
like things evolved from like last year
and, you know,
from last year to this year.
Oh my gosh.
We're not going to read through all these, but just kind of like looking for
highlights of things that are kind of interesting.
I already mentioned the Git thing.
Yes, yes, yes. Hey, i already mentioned the get thing yes yes yes
hey real quick on the on the docker thing do you not find it a little bit ironic that it is
such a big part of it now and now you got to pay for it if you're working in an organization with
enough people they gotcha yeah i mean they had to do something right like they needed to make
money at some point so it's amazing they pulled it out like that was a nosedive for a minute there it was yeah all right do you see uh i still think it's limited i i i question that move still i mean
i get that they needed to make money but in the long run though i just gotta see that like a bigger
player like a microsoft amazon google is just gonna, you know what? There's like this other container management
that does the same thing, or not management,
but tool to build and run and whatever.
We'll just use that and make it open source
and we don't need Docker.
It'll probably happen.
I mean, Jay-Z's already talked about a couple of them
like Pod man and and
some others yeah i'm not advocating for i'm not saying i'm gonna be thrilled about it but
yeah yeah all right we'll see it's a question whether they ran far enough fast enough to
to get enough of lead it is but but docker and kubernetes are in the first and second place
is the most loved and wanted yeah i gotta say i understand i get it see what i did
i saw um russ is still a seventh year as the most loved language i don't like how you're just
ignoring my get joke there oh kitty kid i get it no you don't no you don't i do now i do not
uh but yeah kubernetes and docker uh first second place is uh most loved tools um phoenix
overtakes svelte spot as the most loved web framework what the heck is phoenix i don't know
i was expecting jay-z to tell me on that one because he's the trailblazer so i thought for
sure he'd be like well listen i've already created the jamstack site all in phoenix yeah so uh you're
familiar with svelte yeah okay so it's kind of a disappearing framework
i use it to build your stuff it kind of goes away it's cool uh phoenix is elixir
familiar with elixir i'm not really you know i've just kind of like looked at it a few times
it's supposed to be kind of like a functionalist kind of language you know that's um transpiles
down to javascript um but it looks pretty nice it's so builds on top of erlang as a like it's a
kind of successor to erlang i have heard about this it's been a couple years ago so it's getting
popularity now yeah it's not new at all but it's like wait what what where did this come from
crazy world no doubt yeah so that's interesting. Well, you, you can,
you want to be able to gauge how well Google knows you is if you search for
Phoenix,
like what kind of result do you get back first?
Comics.
No,
I got,
uh,
let me see.
Did you get like location or library?
I got location.
What about you, Alan?
Phoenix Suns basketball team.
And I got a Fallout video coming up.
Sorry, Fallout Boy video coming up in a quick second.
Well, that went down real fast.
Yeah.
So, yeah, so we're all switching to Clojure, though,
is I think the takeaway.
Highest paid language to know.
What?
Wait, where's this one?
It was like the top-paying technologies.
Clojure remains the highest paid language to know.
Chef developers are the highest paid,
but also the most dreaded tool yeah that's
unfortunate we were just talking about chef where is it like last episode yeah yeah change management
they also mentioned big data and data streaming skills are well compensated including apache
spark apache kafka and hadoop so that's good news for us. We're adjacent, if not on top of those things.
Oh, I forgot to mention this too, that the desire to start using
Docker, they say, has increased
from 30 to 37%.
So not only is Docker the new git, it's also the
most loved and, you know,
it's increasing in popularity, which I can't, I was thinking about this the other day.
Ask yourself honestly. Okay. Now, if you were to spin up from scratch, any kind of like new
web related kind of project, right? Why, even if it was a small thing, why wouldn't
you do it containerized in like a Kubernetes or something type of world? Like, like I can't
imagine going back to a world where I would have to go buy and set up and install a server and the tools on it and then, you know, put my application on it.
That sounds so awful and also so extremely dated.
Yeah, I really don't know.
If you're not doing containerization and you don't want to, like, what is it you like?
Because I don't want to ship ISOs anymore.
I don't want to build AMI images or whatever for, you know, one of the cloud providers.
Like, I don't want to run anything like, you know, you know have a specific like bare metal kind of hardware type thing like
containers uh i guess i drank the kool-aid but i mean i absolutely that's how i would start even
if i don't go full kubernetes if i've got a small project uh still i'm running docker using one of
the cloud like container registry container services but But even if it was a small project,
that's what I'm saying.
You can go on Linode and start a Linode account
and get free credits right away.
And there's services like Linode and others
that make using Kubernetes really simple.
So it's not like you've got to super work for it.
You know what I mean?
Yeah.
Well, it's funny you said that.
So that's actually where I see that there would be some people that wouldn't necessarily
jump into Docker or containers.
If you don't have the skillset, then it's daunting, right?
I mean, I've actually talked to people before where I'm like, look, this is what you need
to do.
And they're like, I don't have time.
Whereas if you go into something like Leno, we've talked about it before. You can go
and say, hey, I want a MariaDB. And they've got, what do they call them? They're not.
Where you can go in their marketplace where they'll just spin it up for you.
Start it for you, right. So you're not having to do a lot of that configuration,
like what we're talking about with ISOs and all that stuff in the past. So it's almost like the
step towards containers. And that's probably what they're doing sort with ISOs and all that stuff in the past. So it's, it's almost like the step towards containers and that's probably what
they're doing sort of behind the scenes for you.
Um,
but that,
that's the one area where I could see like,
like,
like in fairness,
basically that's,
we're saying like if it's skill level,
like if you're brand new,
like if you're year one in your college degree,
then you're probably going to like install stuff and maybe even like year one,
like out of college.
Right.
Like,
you know,
because the three of us were coming out from a point of view of like,
okay,
well,
you know,
I'm not going to claim to know everything,
but like,
you know,
enough to get to,
to be able to get my hands dirty with,
you know,
setting up the image and,
uh,
and building that container
and then trying to set up a Kubernetes cluster and whatnot, right?
But in fairness, right,
just to sort of help those out trying to follow along here,
I mean, Outlaw, you just recently did a lot of work
and optimizations with Docker build files
and all that kind of stuff.
And that's where I say, like,
getting a Docker container running, it's not hard getting to the point to where you feel effective and efficient
with it enough to even just do like a Docker compose,
take some time.
And then to take that next leap into Kubernetes.
I mean,
I know all three of us at the time we were like,
well,
this is a,
it,
it wasn't just a big step.
It was a complete breakage of everything that you'd learned for Docker, right?
Like, because it's not the same world.
So, yeah, I don't know.
I mean, I agree.
Like, if it was one of three of us, we'd probably just be like, oh, this is Kubernetes, right?
Like, we're going to figure out how to do it there.
We're going to start there because we know the benefits we get from it.
Whereas, you know, people that haven't lived in that world, like, that's a whole lot to bite off when you just want to start up a SQL
server.
So I know I understand like all the networking involved behind it as well as,
you know,
in handshakes between and,
you know,
yeah.
Okay.
I,
I mean,
I,
I see your point is fair.
I mean,
the point that you're making though about the,
like the,
the Docker thing that I was working on though,
I mean,
in that example,
that's kind of extreme though. Cause there's, because there's you know to get your container built and running
you know it's not so hard to get it to build super fast you know that's where you start like
super tweaking it you know like and scrutinizing like every little thing that you're doing like
can i collapse some of this or where should I do the collapsing? You know, but in the beginning, like who cares?
You don't care at the beginning. Yeah, you don't care. But for sure, I think it's just a comfort
level, right? And that in all honesty,
if you are thinking about doing something that's going to be setting up multiple systems that have
talk each other and you want them to be running, you want to know that they are running and all that.
Kubernetes is a good place to start, right?
Like learn it, learn it.
Yeah.
Is Kubernetes the new Docker?
It might be.
I've been wondering about that.
I think there's enough people that like only work on a front end or only work on a back
end and stuff that I think that maybe we'll just never need to touch it.
But I think it's, it's here to stay.
I think for sure.
Well, it's a solid investment
well check this out so we just like really talked up kubernetes right go learn it now
here's the reason why you don't want to do it you ready this is according to stack overflow
developers that have co-location experience are paid more than their cloud only counterparts.
Interesting.
Yeah.
I was very surprised by that.
I am.
I getting paid more for that job just because I'm willing to get in a car and
drive to the Colo.
That actually seems really dumb.
I mean,
we can't argue it,
but that seems if you learn the cloud stuff,
the cloud technologies, the services and things that you have, you can be way more effective.
I got to imagine, though, that there's like.
It's got to be something about because you like have some kind of relationship or, you know, like some details that are very specific to that provider or something.
I can't I'm with you.
I can't understand why that
would be the case maybe just seniority like the people that working in colos are more likely to
be working in businesses that have been around for 20 years and they're more likely to be senior
or something like i mean i was thinking well maybe i mean because like the example that i was thinking
of in my head is like um i think it was last chapter that we were talking about from the sre
book and they were talking about how they still use some colos.
But, you know, because originally it was all colo
and now it's like mostly Google data centers
where they still had some stuff in colos
where they would want to do like,
I think their case was for like edge kind of computing
to like, you know, for CDNs and stuff like that.
So maybe in that scenario,
like it's kind of a rarity that we're going to have it and
so when we do need it we need somebody who really knows that thing you know that specialty and so
it's a super kind of specialized super niche within a niche within a niche kind of thing like
i don't know i'm grabbing at straws that's the only reason that i could make sense of it in my
head because it like alan said said, I was, what?
Yeah, definitely surprised me.
So did you see that they added a new question for learning to code this year?
No.
So I guess we'll start.
So as far as education goes,
like the results were pretty similar to last year,
like 41% of people have a bachelor's degree,
professionals, sorry, actually that's all respondents,
professionals, it's a little bit higher, 47%, almost 50%.
Master's degree was up there at 23%.
None of that stuff is really surprising or new, but they did add a new section for learning the code.
And this question in particular is, where did you start learning the code?
And number one was actually American high school, German real school.
Basically, I think it was high school german real school basically
well i think it was high school um there's different names for it based on your culture
whatever but um yeah 32 of people started coding in you know their teenage years basically wait
where did you see it written like that though uh it's under education if you go to the last one
learning to code yeah i saw that but but they have like i thought i thought i noticed that
like all of the questions well i guess it would depend on like what the question was as to whether
or not they had uh learning because like if you go into technologies right they had it broken down
like that too so i just thought that that was like across the board thing so they had um in the intro
we'll we'll have a link in their resources but they actually talked a little bit about how they
added these recently,
like kind of how you learn to code type questions throughout the whole survey.
No, no, no.
I'm saying like I thought that that I interpreted that as like you're still a student,
so you're still learning to code.
What's your educational attainment?
Not where did you learn to code?
Because like then it's.
Oh, you mean like the highest level?
Then the question is weird for like the
technology like
question, right?
The learning to code subcategory was for
students. Okay, yeah.
You're already a professional or
you're a student. I tricked you. This is
highest level of... Yeah, absolutely.
Now, what's interesting about this and
what kind of stinks about this learning to code is
there's only 6,300 responses here.
So it's less than 10% of the overall.
Yep.
But I will share my kids started doing Python coding in seventh grade, no, sixth grade.
So like they're starting earlier and earlier now.
Now, it wasn't like hardcore Python, you know, scripting.
It's the whole blocks thing that you've probably seen.
Yeah.
Sketch or whatever.
Yeah.
So it was that type of thing where you could toggle over to the code,
but they were actually doing those logic things using Python in sixth grade.
So, you know, yeah, they're pushing that stuff further down now.
The things that they're going to just take for granted that we had to, like, work for.
Right. Right. I had to go to the bookstore.
To kind of put it in perspective, professional developers, 48% had a bachelor's degree.
But the people who are learning to code, 32% of them have only completed high school.
So it just kind of shows you the changing face of things.
People who are getting into this have very different levels of education than the ones that are currently there now.
But it's also like, I mean, this industry is one that is like, you can't make, okay, let me start over.
If you wanted to be a doctor, I can absolutely tell you there's one path, right?
You're going to spend years and years in school, right?
But if you wanted to get into software development, then it's really like, well, I don't know, what kind of software development do you want to do?
Because you can have an extremely lucrative career as a software developer without going to a university of any kind.
And so you can come straight out of high school.
And to your point, Alan, depending on where you're going to school,
you might already have a pretty good foundation to start building on
as you walk out of that high school.
Yeah, totally.
I mean, yeah, I can totally see it.
It's possible. I know plenty of people in my career that never stepped foot on a university campus.
And actually, the next question is how people are learning the code.
And for all respondents, so this is almost 72,000, so almost everybody answered this question.
The top one, 70% said they primarily use online resources, so videos, blogs, podcasts,000. So almost everybody answered this question. The top one, 70% said they primarily use
online resources. So videos, blogs,
podcasts, forums.
School was number two at 68.
2% obviously there's overlap.
So it's not,
this isn't going to add to 100.
Books were still high up there. I was surprised
at that. Physical media, 55%.
Online
courses, they have that broken out from other online resources
so cool to see that that's up there 46 and then it kind of starts dropping off a cliff
it's not far after that did you click on the by age for this one yeah it's totally flip-flopped
because like the younger you are the more you're going to be in the online camp and the older you
are you're going to be in the more physical book the older you are, you're going to be in the more physical book camp.
So like literally that,
that the,
you know,
the pyramid,
whatever you want to call it,
like shifts depending on the age.
Yep.
Totally.
The,
the one thing that I did find kind of interesting,
you remember when boot camps were like a bigger thing,
like that's kind of how people started.
That's only like 11% now.
So yeah,
camps.
And I think a lot of them shut down
too because they just weren't profitable so um it's definitely fallen to the wayward a bit
yeah i was enthusiastic about i'm so bummed about that
wow yeah people that are 55 and older they they up in the books
that's pretty funny they up in the books that is the if we only had a quote for every show
that would definitely they up in the books that we should make that the title of this show
stack overflow survey 2022 they up in the books they up in the books
the next question is basically going and diving in a category looking for online resources learning
how to code and um 88 percent of people said they use technical documentation not a big
surprise there stack overflow 86 the last place is auditory material for example podcasts that's
because there's only a couple of them that are really good out there i know you gotta spread
the word everybody spread the word, everybody. Spread the word.
But isn't it also interesting, though, that this is a Stack Overflow survey?
People answering on Stack Overflow about their Stack Overflow account.
They go to Stack Overflow to figure something out.
And the number one answer is not Stack Overflow.
Yeah.
You know what's funny?
This one about blogs up here, I kind of hate that one
because I almost never like how people do their blogs with code.
Yeah, blogs have really gone downhill
because people really started farming out the content
and, yeah, just milking the system.
Yeah, I don't like it.
You know, I am curious because I would venture to say,
and I don't know, but I'd venture to say, and I don't know,
but I'd venture to say that a lot of people that listen to like our podcast,
like we'll say something, it'll put a little like nugget in the back of their head. Right.
And then they'll go look it up later because it'd be like, Hey, they said something. I want to go
see some more. You know, I wonder how, how that would, would show up on a survey like this. Is
it that they learned about it through the podcast
or did they go learn about it after they heard it on
the podcast and they went to a blog?
I wonder how that
translates. Earworm?
Right. Yeah, exactly.
I kind of feel like everyone's lying by saying
they go to the technical documentation because
they're just afraid they're going to get...
No, of course I read the documentation
before I asked the question on the technical survey the story says mr pessimist yeah uh but you noticed
that like online forum was in there though at around 40 so this would be a call out to uh if
you haven't already joined our slack community that you know that would count as an online forum
i think that that should count definitely just don't ask anybody to do your
homework you do that well obviously somebody's gonna kick you in the shin but other than that
you don't ask them you just give them a link to your git repo and say hey if you just like
submit me a pr great give me your paypal account and i'll uh yeah all's good all's good
uh you know speaking of those demographics so they have a section on
years coding um interesting to see that five to nine years is the 30 of respondents by far the
biggest category so you can see that like um of most people who've answered this question like
they're kind of in the like the i guess you call it mid mid career early to mid well what it made
me question is like is that is that the life expectancy of a software developer
is like up to 14 years?
Because there was one to four was the first big step.
Then the next one is five to nine at 29%.
And then the next big step was 10 to 14.
And one to four and 10 to 14 were both in that
like almost 19% range, right?
Yeah.
Right.
So like, is it, should Yeah. Right. So like,
is it,
should I read this to say like,
Hey,
after 14 years,
you should have moved on.
Right.
We've,
we've peaked.
Hey,
Hey,
real quick.
I know we're not doing all of these,
but I did want to hit the,
the ones about the online course one only because I think it's relevant to,
to people who,
who listen to this in case you're not aware of it.
So the number one online resource that people like to learn for learning platforms was Udemy.
And that makes sense to me.
I don't know about you guys.
Mainly because you can buy them in chunks, right?
Like if I'm interested in Python, they'll have sales all the time.
I can buy a 900-hour course on Python for like 12 bucks,
right? And then I can go look at it anytime I want. Then there was Coursera was next at 35
ish percent code Academy, 26% plural site, 22%. And then on down. But I think the reason why
Udemy is so high is because of what I said, you can buy something for 12 or 13 bucks and you
don't feel like you drained your bank account to do it. Whereas the difference to me between like
a Udemy and Pluralsight is Pluralsight has some super high quality content, right? But you're
spending some money on it, right? Like even on sale, you're typically in for what, 200 bucks a
year or something. What they do really well is they sort of, they're almost like the
Apple of online learning in that they sort of vet all the courses that go up there to make sure that
they're high quality content and all that, and that you're adhering to their standards and all
that. Whereas on Udemy, anybody that has a camera and a recorder can go on and make something and
it might be absolutely something and it might be
absolutely terrible or it might be amazing, right? Like you won't know until you see the reviews or
whatever, but at any rate, I thought it was interesting. So if you weren't aware of those,
that's, this is something to look at just to see if, you know, you could go look for your next
learning resource. Oh, they're having a sale right now. Hold on. I got to get some things.
They are every day, man. Yeah, but this one is normally 139 and it's on sale right now. Hold on. I got to get some things. They are every day, man.
Yeah, but this one is normally $139 and it's on sale for $19.
That's usually what they – so that's what I hate about Udemy, by the way, is – and actually, so I think behind the scenes stuff here, Jay-Z and I had talked about for a while like creating our own courses.
Both of us started doing it and it's just a lot of work.
And so we never finished it, but you can read things online where they'll talk about like, where are the best places to put your content? And the biggest complaint about Udemy
is they'll force you to put your stuff on sale. So even if you, you know, created a course and
you spent 800 hours creating the course and, and you think it's worth $99.99,
when they go to put it on sale,
it's going on sale for $10.
Like, deal with it, right?
And that's, you know, I don't know.
It's good and bad.
Yeah, but this one's only got five hours left.
He just bought it.
I'm about to.
It's a CKA or CKA, whatever.
The Certified Kubernetes Administrator. audit i'm about to it's a cka or ck whatever uh the certified kubernetes administrator well kid
i mean this is gonna be an awkward transition then because like i also want to like throw out
a shout out to uh educative io who's been a past sponsor they would fall into that like other
category i think according to the stack overflow survey results here. And then really nice thing that differentiates them from the others is that
you can,
you have that,
uh,
interactive playground right there in there in the browser that you can like
code and,
and see how well you're doing with an X,
you know,
everything like that versus,
uh,
you know,
having to like install tools on your own system and run and play or
whatever,
you know? Um, and then, uh, you know, having to install tools on your own system and run and play or whatever.
And then CodingBlocks.net
slash Pluralsight.
Also
Yeah, absolutely.
Yep.
You think about getting some stuff, check us out.
Alright, so sorry I went backwards
in here.
I really am buying this, by the way.
I knew you were. look, there are some fantastic courses on, on Udemy.
I mean, I bought one that seriously, it was like the complete, uh,
web site. What dude,
there was so much content that I was like, I'm buying it just because there's
so much here. Like it's ridiculous.
All right.
So, so we did, we did the years coding.
All right.
Let's see.
Experience by developer type.
We have that.
So your senior executives, your VPs, they've got 17 years of experience.
Managers are 14 years.
Product manager, 14 developer is pretty close to 14 so yeah i mean it seems like the average on here is like 13 to 14 years experience on a lot of
these so yeah but they break developer up a lot though i mean so there's like developer desktop
or enterprise application which i don't think we would count as right.
Cause well,
maybe it's like enterprise,
I guess maybe because then there's,
there's developer embedded or devices,
developer QA or test developer backend,
developer mobile developer,
full stack developer front end.
So yeah,
they got a lot,
but it's all like between 12 and 14 years experience on a lot of these.
Well, I mean, that's what I'm saying though. Like you go down to developer front end but it's all like between 12 and 14 years experience on a lot of these well i mean that's what i'm saying though like you go down to developer front end it's 10 developer full stack 10 developer mobile 10 developer back in 10 so it's like it really
depends on i don't even know like where we honestly i i'm confused now like where i think
we're enterprise i'd say we're enterprise apps Instead of full stack? What's the difference?
Meetings.
That's right.
We sit on phone calls all day.
How far ahead do you plan out?
Yeah.
You'll get a kick out of this.
I was trying to buy that course and I was having a hard time.
I'm like, come on, just take my credit card.
I bought the course in 2019. I had it so i couldn't buy it
again you tried to rebuy how much did you pay for it in 2019 it was a little cheaper 1999 this 2499
both were on super discount though right yeah that because they always are if it's not hey that's a
that's a tip of the week for you yeah if you're looking at a course on Udemy and it's not on sale, don't buy it.
Wait.
Wait until next week and then come back and look again.
Next week.
Yeah, maybe two days.
Just don't ever buy a course for full price on Udemy.
You can't need it that bad.
He's looking at the use of professional experience
by developer type.
Yeah, we did that oh the next one's basically more of the same what else we got
well i'll tell you what how about we use this as an opportunity to say
if you haven't already left us a review uh we would greatly appreciate it and it would be better like i know
in the past if you've listened to past episodes jay-z is like giving you some weird advice
and uh it obviously i mean listen to fizzy buzzy busy uh it works out better to just ignore that
advice from jay-z and just leave us a good review i mean it's fine you know or i should say a review i'm not trying to taint i'm not trying to like sway your opinion but definitely don't jay-z and just leave us a good review i mean it's fine you know or i should say a review
i'm not trying to take that i'm not trying to like sway your opinion but definitely don't jay-z's
asked for like weird ones and let's just stay away from that can we agree terrible terrible
reason five stars please gosh he did it again all right well uh with that we'll head into my favorite portion of this show.
Survey says, all right.
Uh, a few episodes back, we asked SLIs and SLOs sound awesome, but does your team use them?
And your choices were, of course, how else would we track our error budget?
Or, I mean, they sound great, but yeah, we don't have those.
Or, oh, wow, we have so many slow parts. Oh, it's an acronym. Never mind. Or, we're in our way and
it looks promising. Or lastly, I'm convinced and we'll implement them in the near future.
So this is 189. According to Tutuco's trademark rules of engagement, Alan,
you are first. So let's go with, we're on our way and it looks promising.
That's Mr. Optimistic. Okay. Of course he was going to say that. I should have guessed that
from now on. That's what I should do. I should guess what answer is Alan going to say. There we go. Then we can all be involved.
I'm going to go
with 40%.
I'm convinced
40%.
Okay.
I'm convinced we're on our way
and it looks promising.
It was the other
optimistic. We're on our way.
I'm convinced it was just we're on our way. You're doing We're on our way. Oh, it wasn't I'm convinced.
It was just we're on our way.
We're on our way.
Yeah.
You're doing we're on our way.
Yes.
I'm going to say, I mean, they sound great.
21%.
All right.
21%.
Okay.
Very safe guess.
Apparently, Joe is not convinced, but Alan is going to go with, we're on our way and it looks promising, with 40%.
40.
And Joe says, I mean, they sound great, but yeah, we don't have those, at 21%.
Not 20 and not 22.
That's right.
21%.
It's important.
All right.
Well, guess what?
Your winner?
Winner, winner, chicken dinner.
Woo.
Jay-Z.
Thank you.
Thank you.
Jay-Z wins it.
What's my prize?
Thanks to win.
How many percentage?
It was 40%.
Oh, I hit the number.
Nice.
Dang it.
Yeah, yeah, yeah.
All right.
Alan is like an orange.
Why didn't the orange win the race?
We need to have a, I'm convinced, but I'm not doing that.
Yeah, you're right.
Why didn't the orange win the race?
I don't know.
It ran out of juice.
Oh.
I like it.
All right.
So, you know, we're going through the Stack Overflow survey results.
And, you know, like sometimes these things like you look at these and you're like, what?
So for this episode survey, we ask, how well does the Stack Overflow survey results align with your reality?
And your choices are absolutely spot on.
There must be a lot of me's answering this thing.
Or who are these people?
I need to move or change careers or do something.
Or somewhere in between.
Some answers are pretty close, but others are whoa.
So.
All right.
All right.
Good stuff.
Let's dive into technologies, huh yeah i like it you see uh
2022 is javascript's 10th year as the most commonly used programming language
i don't see it going anywhere for a very long time i mean until web assembly like really becomes the
thing to where you can just do your development in any language and it gets
compiled down i don't see javascript going away anytime soon man it really is crazy so for me at
least on this particular section i'm more interested in the professional developers than
the learning to code or any of that um but yeah i mean i don't don't see JavaScript going anywhere either because you can do everything with it.
Like everything, server side, client side, UIs, backends, it doesn't matter.
You can do everything, mobile, all of it.
It is the best all-around language there is, even though I don't even get to use it that much anymore.
Yeah, not seeing any real big surprises here. You're in JavaScript
at the top. We got HTML, CSS, you know,
controversial for languages, but
SQL is number three for professional
developers and for all respondents.
Now, did you look at learning to code in comparison?
They've actually
got HTML and CSS as number one,
which is interesting. I could see
that being kind of a gateway. So, okay, fine.
JavaScript number two. Python's number three. Okay, fine. SQL's number
five. Well, we'll find out under Java. So it's kind of interesting to see like
do people not need the SQL? Do they perceive that as being harder or something?
I think when you're learning, you're not dealing with data as much, right?
I actually remember people coming out of school when I had interns
that I was training up and they would ask questions like, well, what do I do with the data here?
So it's just not something that I don't think you encounter that much while you're in school or while you're trying to learn something.
Yeah.
And hey, BBA, it's on the list.
It is while it's down there.
People are learning it even. And hey, BBA, it's on the list. It is. Wow, it's down there.
People are learning it even.
You know what's interesting to me is how high TypeScript is in regards to everything else.
So JavaScript's at 68%. TypeScript's at 40%.
TypeScript is just under Python.
That's really impressive.
When you consider all TypeScript.
I'm probably going to get killed for this.
All TypeScript
really is
a layer on top of
JavaScript to make it more OO-like.
It's sort of
a nice facade on top
of it to do things that you would want
to do in an OO type way.
With the ability
to get compile time stuff.
Right.
So that's,
that's the thing I was going to say.
It's,
it's trying to put some boundaries on like the loosey goosey nature that was
JavaScript.
Right.
And put some,
put some,
you know,
boundaries on it.
Yeah.
But that's really hot.
More than,
I was going to say that more than the object oriented,
but I get where you're going with the object oriented.
That wouldn't.
And it's just above. And I mean, Java and C-Sharp are right there,
neck and neck, but TypeScript's got a significant lead over both of those,
which is surprising to me.
Yep.
Well, because it's a JavaScript thing, though, right?
It is.
Yeah.
If you lump those two together, like really, I mean, if you're doing TypeScript,
guess what?
You're doing JavaScript.
Ooh, I like this next section.
That's true. Well, yeah, so a couple quick things. Interesting, guess what? You're doing JavaScript. Ooh, I like this next section. That's true.
A couple quick things. Interesting. So we said
Clojure employees, people
with Clojure near the top of the pile
as far as pay.
People aren't learning it.
People aren't working with it now, so it's way
down, way, way, way at the bottom.
Also, BGA. Well, that's the language, though, that people
are learning to code with, though language though that people are like learning to
code with though so like most people that are learning to code are starting with like html
and javascript yeah but i'm just saying like uh you know closure and but we also talked about
like elixir and the phoenix framework being popular people yeah way down on both professional
coders and learning to code which is kind of interesting so it's like wait where are these
people like you're not working with this stuff now i guess it's like kind of you know on the side for elixir
enclosure you're working with it but you don't really want to be maybe right elixir is 2.46
percent and closure was or closure is 1.66 percent so yeah wait wait it's lower than vba
exactly on both lists people are learning VBA today than they are,
people learning to code are learning VBA more so than Clojure and Elixir.
Yeah, but that makes sense to me, though,
because if you're learning to code, right,
you're going to try to start with an easy language to start with.
You're not going to start with something complex.
So you're going to say, well, what's the biggest
bang for buck in terms of
what I can get my students to do
and to get excited about it, right?
But wait a second. Even professionals
are down at the bottom of the list. It's not like
it's a big difference between the two.
Right. I'm just trying to make the distinction of
learning to code, though, where it's
It makes sense
there for sure yeah but
professionals aren't they're not doing it either well that's why you get paid so much to do it
because there's not that many doing it nobody wants to do it yeah oh now the next one is fun
i think the next one is this one's gonna make outlaw excited here this is where like jay-z and
i get to duke it out come on so're going to jump to professional developers here on this.
Oh, we're starting with that.
Okay.
Let's do it.
I don't like the all respondents because it mixes in too much stuff.
I want to see what people are doing in the real world.
Your virtual in-person tech talk is on the wrong subject there, Jay-Z.
Yeah, it looks like it.
It looks like it might be.
So I think Outlaw asked this question, like maybe last episode, the episode before about like,
you know,
what do we think the most popular database server is out there?
Yeah.
We were comparing it using the DB rankings or.com.
Yeah.
Well,
the people that answered this survey as professional developers,
Postgres now has the number one spot with 48,000 respondents.
Yeah.
That's a lot.
So, you know, pretty good. It's kind's a lot. So, you know.
Pretty good.
It's kind of a big deal.
I don't know if you've heard.
But did you look at learning the code?
It's number four.
25%.
MySQL is number one.
See?
See, Jay-Z?
This is where you and I can't get along.
I'm actually surprised that MySQL is number one there.
I would have expected MongoDB to have taken number
one. It's weird to me
there's this weird gap. Maybe MySQL
is easier to learn or maybe it's
closely correlated with things like HTML and CSS
that people learn.
I don't know. I kind of think of it as the
professional demand to me is a reading of
where the industry is now
and it's learning codes. Don't you kind of want to go
to where the industry is now? it's learning codes like that. You kind of want to go to where the industry is now.
Yeah.
Yeah.
I don't know.
You're right.
I mean,
Postgres is definitely geared more towards business,
right?
Like it's,
it's the,
the open source enterprise database.
And,
and maybe when people are trying to learn stuff,
they're not trying to go that deep.
I don't know.
Yeah.
But yeah,
next up in the professional we
have my sql second sqlite third sql server fourth mongodb fifth redis i'm sort of shocked that
redis is is listed as a database server because it's a it's a key value store right um but i don't
know i mean i guess he doesn't go out place. There top 10 for people using it,
learning code way,
way down though.
Get with it.
People.
It's good stuff.
Yeah.
I think it just goes to people.
We've seen it in the past.
When you learn a database system,
you do everything with that database system until you start ripping all your hair out.
And then you realize that you need something like an elastic search.
Now, if we get into the cloud platforms, I mean, is there any surprise here?
No, not at all.
I'm surprised Google is as high as it is.
I was about to say the same thing.
Really?
They're catching up to Azure.
You thought that Google would be further down?
I did.
I thought that Azure would have been further up,
and I think Google Cloud would have been about where it is.
So Google Cloud is listed at 26%, Azure 30, AWS 55.
I would have expected to see Azure creeping up closer to the 55, I think.
But then if I, has the math and chicken been teaching you math?
Because if there, if AWS and Azure were both near around 55,
then where does everybody else fit in?
No, I guess what I'm saying is I think they, I would have expected to see them creeping up towards that more like in the
forties or, you know, somewhere around that 40%.
I mean, it's not, it's a big deal the 40s or you know somewhere around that 40 percent um i mean
it's not it's a big deal though like you know azure is at a third and google is at you know
a quarter of the of it while aws has half of it and i think that makes sense though right because
like aws isn't 100 this isn't 100 though if you look at these numbers there are people that
are choosing multiple of these so i mean just the first three alone's over 100
uh okay sure i mean they math my chicken did you strike again um okay fine fine
so my my thirds and halves or whatever are all messed up because math yeah i would again but i
was happy to see like there's some other there's some of the other players in here that i was like
oh it's pretty neat like linode's in there linode made the list digital ocean made the list yeah i
mean there's some good ones yeah but did you see learning the code yeah one is for roku and i've
never understood heroku because to me it's just a layer on top of something else.
Like I'm paying more for...
It's a layer on top of AWS there.
Yeah.
So I've never understood like why.
But, you know, I guess it's easier to use this usability.
But it's interesting to see that it's number one for learning code.
I guess it's people wanting to take it easier route.
You know what it is?
It's absolutely the tutorials out there that that
people are getting started with are like hey go set this up on heroku and it's easy yeah also i
mean these are the the inventors of the 12 factor app so let's not take that away from them yeah
sure they're fine they're good yeah i just surprised on google cloud here now seeing them
high on google cloud that's interesting but i think google cloud is definitely an advantage
with k, but also
I think what we're seeing here more
might be the tie-in with Firebase. Firebase
is so popular for getting started type stuff
and it leads so nicely
into Google Cloud.
Yeah.
These are good. I mean,
the fact is you can't go wrong with any one of these
that they have listed up here.
Yep.
What's OVH? O. Yep. OVH.
OVH.
I don't know.
Yeah, I hadn't heard of that one either.
Yeah.
Google Cloud Service Provider.
Yeah, it's a European company.
So I guess headquartered in France.
So I don't know.
Maybe OVH
means something more to them.
Yeah, I've never heard of it.
This next one's going to be
fun.
Yeah, Web Frameworks and Technologies.
Yeah.
And here it looks
like the professional developers and learning code
are pretty close with jQuery being
a little higher.
Node.js and Reactor, of course, are at the top of both files.
I hate it that jQuery is still up there.
Yeah.
I hate it.
Oh, man.
I'm actually surprised to see Angular so low.
I'm surprised.
Yeah, I don't know.
It seems like Angular, as far as my Twitter feed is concerned,
I don't hear much about Angular.
I'm surprised to see AngularJS so high for sure.
Yeah, same.
I'll tell you why Angular is as low as it is. It's because when Google made that breaking change between AngularJS and Angular,
they ticked off a bunch of people.
Yeah, they have a bad,
they Google really needs to work on that of like how they'll create something and then just drop it.
Yeah.
I remember,
I remember tons of developers being like,
I'm done.
I'm not,
I'm not going to the next version of angular because let's say they're not
going to do this in another year or two.
And then all the time that we spent on our previous applications,
like there was no
migration path right and that's that that made people mad and they did it themselves a huge
disservice in my opinion like okay fine you created angular js and you're like you know what
we've discovered an entirely better pattern to do this and and you know we don't want to call it
angular js how about also don't just call it Angular?
Come up with a completely different name
from a branding perspective.
And then it probably would have taken off better
because it makes it so ridiculously confusing
when you're looking at documentation
and you don't recognize right off the top
that the link that you're looking at is AngularJS.
And you're like, wait a minute, really?
You can do that?
No, come on.
Oh, wait a minute.
So there are some interesting things here, right?
Like they mix up different.
So they talk about web frameworks and technologies and they're totally
mixing things in here, right?
Like the peanut butter and the jelly is all messed up here. So Node.js is like just a JavaScript, you know, run anything type thing on server, on whatever you want, on, you know, a client side command line interface if you wanted.
React.js is a view only web client type thing.
jQuery is sort of DOM manipulation, um you know so you can use it for
all kinds of stuff express is a server only technology angular is is ui so like they've
mixed a bunch of stuff here um and i think that's what kind of stinks is when you start talking
about web nowadays it gets confusing because this isn't just web no js could be an application for all intensive purposes right
then you get asp.net core right asp.net uh and you have blazer i mean like asp.net core like you
you don't have to even touch the web for that it could just be an asp.net core command line
command line yeah and that's what i'm saying. But so could Node.
And honestly, some of these aren't frameworks.
Yeah, I don't know.
Angular is truly a framework.
It's like an MVC-type framework with DI and all kinds of garbage built in.
I can see that.
Some of these aren't. Is Node.js a framework, or is it just a bunch of libraries you can use?
Well, it's really weird.
Java has no representation on this list.
No.
The pro are learning, like, what is that?
What?
Well, there's nothing Java for the web anymore, right?
Like, what have you seen in the past decade that's Java on the web?
Micronaut or Spring, that's it.
It's usually the server endpoints, right?
But it's not.
Yeah, it's interesting. But Python is in's usually the server endpoints. Right. But it's not, yeah,
it's interesting.
But Python is in there.
Ruby's in there.
Um,
yeah,
I thought it was in there twice.
Yeah.
I thought that,
yeah,
but I mean,
it kind of makes sense though.
They're,
they are different,
different packages.
So I'll give it.
Yeah.
Blazers in there.
Django is actually a framework,
right?
Python's not Python's a language.
Django is a framework.
So yeah, I don't know. These are interesting and it's, and it, right? Python's not. Python's a language. Django's a framework.
So, yeah, I don't know.
These are interesting, and again, it makes sense.
Like JavaScript is the top three in the professional four, five,
the top five that are being used there.
Phoenix is super low, by the way.
So people love it, but not many people are using it,
which we've seen before.
Also, there's an interesting Deno, like the guy from guy from no js went and started uh dino uh very very low it's still you know brand it's still very new so
it's interesting you know maybe we'll see that kind of coming up but both lists it's uh near
the bottom well let's get into the one everybody wants to know though so like don't scroll before
before you go you remember the other one that was super popular or that was supposed to be popular
that got started by somebody that had left one of the popular ones.
You remember Aurelia?
Oh, yeah.
That kind of just died off.
That's not even here.
Yeah.
So it'd be hard for me to go grab something like Dino knowing that if it doesn't get like a snowball rolling down a hill type attraction.
Yep.
You're going to spend time and it's going to be gone.
It could be amazing.
But if no one else is using it, it's going doesn't matter yeah all right so so let's let's
get to the heart of what everybody really wants to get into like most loved and dreaded now don't
scroll all right don't cheat but what do you think that most loved is rust
mate which takes what we're doing other frameworks well you're not supposed to
scroll what part of
are you like joseph you're like
scrolling around like where am i going
you skipped a couple so i was just making sure i was
a couple because i wanted to get to the one that we care about
yeah yeah it's gotta be rust because
that was the one that everybody loved last year that
yeah and they said it was like the eighth year in a row or
something yeah nobody uses it
86.7 percent out of 71 000 responses clearly i am using the wrong programming language because
rust is again the most loved language how many responses replied to this? 71,000.
I don't believe that many people clicked Rust.
That many people haven't even looked at Rust.
The weird thing is, is not that Rust wasn't the thing that people are coming to Stack Overflow for.
Yeah.
Like, back up a few questions, right?
Like, that wasn't the thing that people were coming for.
But yet, yeah, that was the most loved language on here.
I can't believe it.
Elixir was number two, Closure,
TypeScript number four,
Julia number five.
That doesn't make sense. That's why I see stuff I'm like,
y'all got some FOMO.
You don't know. You don't know.
You think it looks nice. What do you think the most dreaded is?
Most dreaded.
What'd you say?
VB. Okay. You got Joe's answer.
No.
It's not going to be VB. Most dread Joe's answer. No, it's not going to be VB.
Most dreaded.
Uh,
objective C.
That's a,
that's a good guess.
They're,
they're both good guesses.
Matt lab was number one at 80.8%.
Most dreaded.
Then cobalt,
then VBA,
then objective C,
then Fortran.
Surprised to see that groovy was so low on the list.
I didn't expect that.
Did you?
I did think Groovy was like, you're doing Jenkins or you're doing Gradle.
Yeah, that's really it, right?
I mean, I've seen it used in other things, but...
I mean, it's just another JVM, you know, compiled down to like a bytecode kind of thing, right?
So...
Hey, I wasn't far off on Objective-C.
No, yeah, you weren't.
Yeah, it was number four.
I think it was with Groovy.
If you're working on Jenkins or Gradle, like, I mean, you kind of hate your life, right?
So it doesn't really matter what the language is great or not.
Like, you're going to be at the bottom of that pile.
That's hilarious.
Wow. Okay. Those are good things. Those are going to be at the bottom of that pile. That's hilarious.
Those are good things. Those are very good things that I use all the time.
They have a very positive impact
on my life. I don't hate
them. Of course, the
wants aren't too far off from
what we were talking about. Rust, Python,
TypeScript, Go, and JavaScript
are the top five for Rust.
Kotlin making its way to number six.
Dude, I like that.
If people touch Kotlin, they
like Kotlin.
Where was it?
Four or five.
It just missed the top ten though
on most loved.
Came in at
63%.
C Sharp
was number 10.
Closure, get out of here.
Get out of here.
Google it just to make sure.
Most Loved database, though?
Wait, wait, wait.
The bottom of the wanted was Delphi.
I kind of feel sorry for him.
It's up there with Most Loved, too.
Whatever.
But did you see Most Loved Database?
I do.
You're happy.
You just barely eked out number one there with Postgres.
Postgres SQL, 72%.
Right.
Most Loved Database.
Redis at number two, Mongo, number three, SQLite,
and then Cloud Firestore. Most dread database. Redis at number two, Mongo at number three, SQLite, and then Cloud Firestore.
Most dreaded IBM DB2.
CouchDB, that's kind of surprising.
Wasn't CouchDB supposed to be the event-driven one,
or am I thinking of something different?
Is CouchDB the time series one?
I can't remember.
It's high on the dreaded list.
I thought it was another document database.
Am I wrong?
Clustered.
It's an Apache project.
Clustered.jsql.
Okay.
JSON.
Okay.
MapReduce. okay jason okay um i produce i mean i i recall the one that you were talking about but i thought
it started with an r it might have been roach db or something i don't remember man well now i think
you're just making stuff up you're like possibly possibly roach db like that would be such a weird
there's cockroach db there is cockroach. Yeah, I knew there was something like that.
Hey, we are an hour and 20 into this.
We're going to have to kick this into high gear.
What?
Are we talking about top-paying technologies?
Oh, it's broken up in a couple different ways.
Closure had the top somehow.
Erlang, number two, F-sharp.
Well, Closure made sense
because it was like the top paying job before like i
mentioned that at the start right yeah so no surprise to see closure there php and dart at
the very bottom matlab it seems not fair that matlab is at the bottom i feel like if you're
doing matlab you're doing really cool stuff but it doesn't pay very well apparently but that's in
the programming scripting and markup languages section right yeah how do you i i see dart below matt matt lob yeah it is those are
just the bottom three matt lab php and dart oh okay i'm sorry i didn't miss that when you said it
yeah yeah for databases dynamo number one all right hey how people make money yeah poor post
cross poor one out Didn't make it.
Yeah, you can see all the top paying ones here are kind of ones that are known for scaling.
So it kind of makes sense.
Like bigger business types.
DB2's high though.
Geez.
Well, yeah.
To keep it alive, you're going to have to get paid for it. Yeah, you got to pay someone.
Yeah.
And yeah, Firebase is way below all the others.
Platforms co-location was 30 grand higher than
AWS. Yeah.
That doesn't make sense, man. Nope.
Like I said, if you're
willing to make the drive,
they'll give you the keys.
How about web frameworks?
Ruby on Rails still paying high.
I wonder if there's still a ton
of jobs.
Ruby was really low on both learning
and professional developers.
It was like near the, I don't know, bottom third maybe.
Yeah, I'm guessing they just can't get people.
I know the Orlando Soli survey,
when they did that for Orlando,
it was really skewed by a few different things too.
And so I got to think that's going on with Phoenix.
Because Phoenix, the use was just like 1%.
You look at Web Frameworks pay and it's like, oh, we're at the top.
But look at where some of the Python machine learning type stuff falls into place, though.
Like Keras, TensorFlow, Psychic Learn, Torch and PyTorch.
I mean, Torch and PyTorch were the highest at 66,
and then the lowest was down to 54.
This is under other frameworks and libraries.
Okay.
Pandas and NumPy, they're 67 and 66.
That seems low for that type of area that you'll be working in.
Yeah, that's what I was thinking.
If you're doing that type of work, that seemed be working in. Yeah. That's what I was thinking. Like if you're doing that type of work,
that seemed like a low number for those.
Yeah.
That's ML type stuff that you're typically dealing with there.
Apache Kafka is high and that makes sense.
I mean,
if you're in streaming technology,
big data type stuff,
that's yes,
but these numbers seem low to comparatively.
I mean,
wait till you get to other,
other tools.
Oh,
real quick before we leave this,
I just want to mention
Hugging Face Transformers.
What is that?
I don't really know anybody.
It's for training machine learning data.
Hugging Face Transformers.
That one I hadn't heard of.
Other tools, Chef.
Super high.
Look where Kubernetes is.
Homebrew is above Kubernetes.
That don't make sense.
Homebrew.
Let me say this again.
Homebrew.
Homebrew.
Right.
Above Kubernetes.
What?
Now, it does make sense to see Terraform up there a bit because that's dealing with cloud providers.
But Kubernetes.
Yeah, that doesn't make sense that it's so low
i think if you're doing heavy work with kubernetes in the u.s and you're making 85 we should maybe
maybe shop around a little bit yeah look you could make some more
all right so what do we got next change in salaries whoa whoa first one more thing if you click ide uh in this yeah number one is text paint emax is number two wait where's the
ide yeah i think it was the top paying technologies and we can also see only 37 000 responses for this
so like this is like oh let's have a survey and this is so you can just tell right here like so
much of this these questions on salary are skewed yeah i mean visual studio code 65 and like that is by far and away my favorite editor these days like if i don't have
to go into anything else then i won't yeah i don't care what the language is i will stay in visual
studio code as long as i can until i'm like okay let me spin up intellij or your kind of visual studio wait for it yeah it's it's really
good 94 get out of here and ruby mine is number three like what i know you say so but i mean
tell j overall like great representation they're doing great you know what's interesting i mean i
don't think that we should go over too much of these ones that are the change in the median salaries between 2021 and 2022.
Other than to say that they all went up about 50% on a lot of them.
Well, they said,
they said that the average median salaries increased 23% between 21,
2021 and 2022.
Yeah.
So there's a big jump on all of them.
Some of them were closer to 50%,
but most of them were close.
We're very close to what outlaw just said,
like that 20 some odd percent.
So,
yeah,
I will say like the,
if you were depressed by the numbers that we talked about in the,
uh,
the great resignation,
uh,
episode,
you should look at these numbers cause you'll feel a lot better.
Like the overall salaries in general are much,
much lower than other things we've talked about.
Now,
do you care to take a guess at what the most popular version control was?
Yeah, it was absolutely Mercurial.
Dang it, he got it.
I didn't expect him to get that one.
No!
Of course not!
It was Git.
Of course. Get out of here.
Oh, hold up, though.
Learning to code. Did you see
what they said?
I don't use one. That makes sense though right that totally makes sense if you're just learning to code you you probably
don't know anything about version control yet you probably have 15 different versions of that file
that you're working on you do in 20 different folders yeah yeah some of them are on the cloud
too like and you don't even know to call it that you're like it's in my one drive oh oh this next one's good hold on professional
developers interacting with version control how do most people do it yes these are my people
i like it command line 85 all right bring it on yes, 54%. I even mentioned recently I do like the code integration in IntelliJ.
It's stolen a little bit of my love because it's really good.
But still, I mean, the command line wins.
Yeah.
Yep.
So, yeah, there's a bunch in here.
I don't know that we need to go through all of it.
Most popular version control platform.
I mean, is it really even a surprise that it would be GitHub for everything,
whether it be personal or professional use?
I mean, of course, that was number one.
Well, how close was GitLab?
That's interesting to me.
Well, the takeaway that I had was how sad it was how far down Azure is.
Okay.
It's so good.
Yeah, it's so good.
It's owned by the same company as GitHub, people.
And it's better.
It's better.
The interface is so much better.
It really is.
GitLabs, I mean, look, it's not GitHub, but they're at 20%.
That's pretty good.
Or 29% professional use. Yeah. Yeah, it's pretty good, but they're at 20%. That's pretty good. Or 29% professional use.
Yeah.
Yeah.
It's pretty good.
Hey, hold up.
Hold up.
There's a, there's another good one.
Cause I know, I know we're trying to move this along company info, um, number of people
working at companies.
So there were, there were 46,000 respondents.
It's company size, um, under work.
I see. respondents. It's company size under work. What's interesting, the biggest percentage of these 46,000
respondents worked at companies with 20 to 99 employees. That was 21% of these people.
And then 100 to 500 employees was 18%. And then everything else just about, well, there is the
10,000 or more employees. That's 13%.
That's probably your Amazons and that kind of stuff, right?
But then everybody else is like less than 10%.
10% working companies with two to nine employees.
5% they were the only employee.
So, yeah, I mean, it seems like there are a decent amount of people working at pretty small companies.
Like 2% don't know.
It's like they only have a key to the basement or something like what's
going on there.
I don't know.
Yeah.
I Google it.
Yeah.
Salary.
Like you're working for a company and you don't know how big it is.
You're just like,
whatever.
I don't know.
I don't care.
Yeah,
that's true.
And salary,
like when she kind of hinted up before like a number is much lower than
numbers we talked about for like fan companies which is no big surprise but uh
they and they did mention depends on which country you click on too there right yeah and so i clicked
on uh united states because that's just my my frame of reference so uh you know like when we
talked about the the great resignation we were talking about salaries of like 200 and up like
300 400 like it was like
grads coming out of school getting you know jobs for like 400 grand like netflix and stuff and
here they got it capped at 200 000 they didn't have a statement talking about how they did some
thresholding so basically the top two percent of salaries they just capped it at 200 000 so like
you know these you can kind of think of them as being higher but even still like uh here if you
look at the united states um they've got senior executives,
basically CEOs,
COOs,
vice presidents.
They've got those at 200,000 and it goes down from there.
Yeah.
I got to figure out how to become one of those.
So listen,
if you have a job opening for a senior executive C suite,
you know,
level,
you hit me up,
you know?
Yeah.
I've been around for a minute.
Apparently we've aged ourselves out of being developers.
Whoa,
whoa,
whoa.
That's the next. Well, you're 21.
You've got a few years.
Thank you.
The interesting thing here, though, is the entry level in the U.S.
for a student working is $100,000.
Yeah, I don't get that.
Is that because they're co-ops and they're making that?
Or are they interns?
That's going to be workers.
Yeah, it's very weird.
The lowest in the U.S. is $100,000.
I don't buy that.
I don't buy it either.
8,000 respondents, by the way, for U.S.
Now, I will say the U.K. is only 2,600 respondents.
But what's interesting is these numbers seem higher than what we've heard
talking to people that,
that we know.
Right.
So,
um,
this one's kind of interesting,
but all right,
what do you do?
Well,
by the way,
the prices shown are in us dollars.
So it's been adjusted for,
um,
our convenience.
But if you're international,
there's probably a way to change it.
Maybe I hope.
All right.
Well,
how about we'll have plenty of links to the resources we like in the show
notes,
obviously including the stack overflow survey,
but there've been some other ones in here.
Like,
you know,
there's this great article that I read called is Docker than you get.
And I think that the author nailed it.
That'll be in there as well.
But otherwise, yeah,
we head into Allen's
favorite portion of the show.
It's the tip of the week.
So I was getting the link to
that article. Oh,
you're you're you're you're already put it in there. Yeah.
Okay. Yeah. Yes. So you doubt me.
I'm going to recommend
something I've not tried, but
I thought it was pretty cool.
Joe has never done this before.
It's the first time. Bear with me.
There is an app
called UnBlaw.
It's on Hacker News today for people
like myself who sometimes talk
too much when they get nervous in meetings.
It's basically a little app that will keep track of how long you've been speaking and will kind of give you a little warning if you're dominating the meeting.
That was pretty funny.
So we've got a little dial here.
So I haven't tried it, but it's supposed to work great with Zoom teams.
Others, it's got like a kind of a gentle reminder to let you know, like red, green,
kind of traffic light type stuff.
They'll be like, well, you've been going a little bit whoa you've been going a little bit it's even going a little bit shut it down boy shut it
down yeah that was pretty cool it's only for mac only for mac yes yes i see i fear this kind of
thing like what if it's never like i would install it and it would just always be red and then oh
yeah i should say i should say i'm not installing this on my computer i'm i'm
gonna try and get other people to install on their computers so if you get a note from me saying hey
you should install this app that you then you know that i think you have a problem that you talk too
much so when i get that email tomorrow i'm gonna be a little bit hurt yeah if you're on the distro
to list uh tomorrow and you're you know hearing this i'm you know sorry that's true that's awesome all right
so it's called unblah.me so unblah.me we'll have a link very cool all right so i've actually got
two because i was doing a little bit of work this week that felt pretty good um the first one is i
needed to search a file that was on a linux machine and i them, but I needed, so I had this, I couldn't grip
because things were across multiple, like they were broken up and it wouldn't show up in the
thing. And for whatever reason, grip wasn't working either. We can do a multi-line regex.
You can do it in them. And I didn't know you could do that in Vim. So by default, I believe that Vim actually has regex turned on and you shouldn't have to do this.
So like if you were trying to search for foo bar and they were on separate, it's in the same block, but maybe across multiple lines, then you could do like a slash foo dot star, meaning any number
of characters in between and then bar. And it will highlight the whole, the whole line and show you
where it is. And the beautiful part about that is too, you can then, after you hit enter, you could
do in to go to the next match or shift in to go to the previous match and them, right? If for whatever reason, it doesn't have the regex matching on in
Vim, you can do colon set space magic and hit enter, and then it will turn on that feature
and you'll be able to do it. So I found that really useful and interesting. And then there
was another thing, again, my tip from last week, you know, read the tips that pop up in your IDEs.
There was another one that came in that was really interesting. So Jay-Z, this might be again, uh, my tip from last week, you know, read the tips that pop up in your IDEs of,
there was another one that came in that was really interesting. So Jay-Z, this might be useful for you because I know you're an intelligent, decent amount. Um, and, and I'll
have to get the image in here, but if you're typing something like you have a Boolean that
you're trying to see, like, um, that like the dot is open, right? Something like that.
If you wanted to say is not open, you know, typically you'd say you'd hit the enter and
it'd pop in is open with your open close parentheses. Then you go to the beginning
line, maybe put a bang in front of it. Or if you didn't want to do that, you'd say equal,
equal false at the end of it, something like that. Well, in IntelliJ, apparently when it's highlighting is open in that auto completion,
you can just hit the exclamation mark on your, on your keyboard and it'll automatically do the
negated is open, which I thought was really cool. I didn't know about that. Um, and then also I
included a link here to several other really cool things that exist in IntelliJ that I didn't know about that. And then also I included a link here to several other really cool things
that exist in IntelliJ that I didn't know about are various code completion tips that they have
things like it's almost like templating, like what you'd see in visual studio code or in other
things, but like you can type something and do dot var and it'll set up
a variable on the line with it and set the value to whatever you're doing. Like it's got a bunch
of like little shortcuts to do things. So I'll have a link in there for that. And, uh, those
are mine for this. So, so was your regex search, like you couldn't use grep, like the multi-line
search wouldn't work for you. So grip wasn't working for me at all, which was really interesting.
So to give you the situation I was doing, and it made no sense at all.
I was doing a Kafka cat and it was spitting out things that were happening,
right?
Like it was reading through the entire topic and then I'd say grip dash I,
and then I'd put in the beginning of a GUID that I was looking for it wouldn't find it would not find it could not figure out for the life of me why it wasn't
so what I um no no it didn't so what I ended up doing is I Kafka catted that stuff out to a file
and then them the file and then did the search in it and And it was there. Like I could do the same exact thing, you know, ABC123, and it would go find it.
But when I was doing the grep on the Kafka cat output, it would not hit it.
First time I've ever seen that happen.
So by default, the input to grep is one line at a time.
So if you want to do a multi-line grep search, you have to do some other workarounds for it.
So here's a link that I'll put next to yours.
Like if you wanted to do a multi-line grep search.
So that's where I thought you might have been going was that like,
because I could see where like if the output coming out of Kafka Cat
was like wrapping that GUID on lines, then grep wouldn't find it.
Right.
By default,
by default.
Right.
Yeah,
no,
this was worse than that.
I mean,
the,
the actual gooid,
at least the portion that I was searching for,
cause I was only trying to do like the first six or seven characters.
It was all there.
It just wasn't,
it was the first time I've ever run into this to where it just wasn't getting
it.
And I was like, why?
Like I, at one point I had the whole good in there and I was like, okay, let me just hit the first part of it and see what's going on.
And it still wouldn't come out.
And I was like, all right, I'm done with that.
So yeah, it was an interesting, odd problem.
All right.
Well, for my tip of the week, well, for one, okay,
you can't ever underestimate the value of a good thesaurus.
So I finally bought myself a new limited edition thesaurus that I've always wanted.
I was so happy when I opened it, all the pages were blank.
I have no words to describe how angry i am that tip aside that one aside uh so good
so this one like a friend of ours uh a colleague of ours ran into this and uh i thought i would
share this when we're like be careful with your yum installs because if you try to install your dependencies
as part of the same exact command line
that you're trying to install their dependents,
then it's a problem.
So the way I wrote it, though, was more fun
because it's like yum install dependencies
independent of their dependents.
Got that?
Yeah.
Yeah. So basically the problem was
in our specific case was that
we wanted to install
JQ, which is like a
JSON
query command
line tool
and to install it you
have to add in
the Red Hat distro as a source, the EPEL release source as one of the destinations that you can install from.
So if you do a yum install and you try to install both of the two things at the same time, then it will install
the ePel release but die on the JQ. And where it messed us up was that, silly me,
Yum will happily not return back an error code that it didn't install both of the things.
And I'm not sure I understand the logic behind that
because it seems really weird.
If I tell you to install two things and it's like,
well, I got one of them.
We're good.
Come on now.
I mean, beggars can't be choosers, right?
You got one of them.
That's good enough.
So, yeah.
So it ended up biting us because, you know,
Docker would happily go along, do the build.
And, you know, I was trying to be clever and concatenate some layers and, you know, compress some things.
And oops, those needed to be two different yum install commands.
So, you know, just a word to the word to the wise there. So I'll have a link to a stack overflow answer that explains more about it. And yeah. So, uh, with that, like I said, subscribe,
I don't know, subscribe, but you know, I, as I, I was more energetic when I asked for the review.
So if you haven't left us a review,
we would greatly appreciate it.
We've said this before too.
Like,
uh,
you know,
we really do appreciate reading those.
They really do mean a lot to us.
So if you haven't already,
you can find some helpful links at dub,
w dub dot coding blocks.net slash review.
Yep.
Hey,
and,
and outlaw said it before and,
we should probably say it more like if you have some friends that are coding or getting into coding or something,
share the podcast with them, and maybe they'll get something out of it,
and it'll help them out along the way too.
So at any rate, while you're up at codingblocks.net,
make sure you check out our show notes.
We usually have really good ones.
They probably won't be on this episode, but hey.
Wow.
Usually.
Right, usually.
Just not this one. but we do have discussions
more but hey just for that i'm gonna like have some great show notes up there so you better
check it out i like it i like it so this will be codingblocks.net slash episode 189 and definitely
let's get a discussion up there i'm sure that there will be some good good things that come
out of this particular stack overflow overview overview. And lastly, but not
least, if you're not a member of our Slack
channel, definitely go up to codingblocks.net
slash slack and join up there.
Group full of amazing people.
And, you know, if you have
any questions or comments or anything, that is
a great place to put them because
it's really just a friendly
awesome group of people up there.
That's right. And make sure to follow us on Twitter at CodingBox.
We're heading over to CodingBox on that.
And you'll find all of our social dillies at the top of the page.