Coding Blocks - Stack Overflow 2022 Survey Says …

Episode Date: July 18, 2022

Once 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)
Starting point is 00:00:00 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.
Starting point is 00:00:47 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...
Starting point is 00:01:02 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?
Starting point is 00:01:25 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?
Starting point is 00:01:42 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.
Starting point is 00:02:04 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
Starting point is 00:02:22 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.
Starting point is 00:02:42 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,
Starting point is 00:02:54 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.
Starting point is 00:03:04 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?
Starting point is 00:03:13 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.
Starting point is 00:03:28 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.
Starting point is 00:03:38 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
Starting point is 00:04:01 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?
Starting point is 00:04:48 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
Starting point is 00:05:16 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.
Starting point is 00:06:00 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
Starting point is 00:06:46 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
Starting point is 00:07:32 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
Starting point is 00:08:14 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
Starting point is 00:08:53 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
Starting point is 00:09:48 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,
Starting point is 00:10:27 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
Starting point is 00:10:40 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,
Starting point is 00:11:10 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.
Starting point is 00:11:43 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
Starting point is 00:12:21 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,
Starting point is 00:13:07 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.
Starting point is 00:13:30 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
Starting point is 00:13:59 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.
Starting point is 00:14:54 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.
Starting point is 00:15:22 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.
Starting point is 00:15:30 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.
Starting point is 00:15:37 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
Starting point is 00:15:52 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
Starting point is 00:16:44 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,
Starting point is 00:17:02 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
Starting point is 00:17:36 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,
Starting point is 00:18:04 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.
Starting point is 00:18:32 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.
Starting point is 00:18:49 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.
Starting point is 00:18:58 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
Starting point is 00:19:20 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
Starting point is 00:20:03 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?
Starting point is 00:20:37 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.
Starting point is 00:21:09 And also, also, this is another one that, uh, Jay-Z is going to super like, and also, you know, again,
Starting point is 00:21:16 where he's like, you know, lead, he's a trailblazer, man. Like seriously, it really is people. I'm stack.
Starting point is 00:21:24 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
Starting point is 00:21:55 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.
Starting point is 00:22:27 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.
Starting point is 00:22:44 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.
Starting point is 00:22:58 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.
Starting point is 00:23:12 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.
Starting point is 00:23:31 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
Starting point is 00:24:04 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.
Starting point is 00:24:22 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
Starting point is 00:25:06 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
Starting point is 00:25:29 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
Starting point is 00:26:16 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
Starting point is 00:26:59 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,
Starting point is 00:27:16 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.
Starting point is 00:27:43 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.
Starting point is 00:28:02 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%.
Starting point is 00:28: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.
Starting point is 00:29:32 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,
Starting point is 00:30:05 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.
Starting point is 00:30:24 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
Starting point is 00:30:45 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,
Starting point is 00:31:10 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,
Starting point is 00:31:26 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,
Starting point is 00:31:35 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,
Starting point is 00:31:44 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,
Starting point is 00:32:07 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,
Starting point is 00:32:22 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.
Starting point is 00:32:38 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.
Starting point is 00:32:55 Okay. I, I mean, I, I see your point is fair. I mean, the point that you're making though about the, like the,
Starting point is 00:33:01 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
Starting point is 00:33:32 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.
Starting point is 00:33:52 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
Starting point is 00:34:18 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.
Starting point is 00:34:38 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
Starting point is 00:35:06 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
Starting point is 00:35:32 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
Starting point is 00:36:01 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,
Starting point is 00:36:21 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
Starting point is 00:36:48 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,
Starting point is 00:37:26 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?
Starting point is 00:37:44 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.
Starting point is 00:38:00 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.
Starting point is 00:38:24 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.
Starting point is 00:38:46 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?
Starting point is 00:39:31 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.
Starting point is 00:40:03 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.
Starting point is 00:40:35 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
Starting point is 00:40:57 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.
Starting point is 00:41:12 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,
Starting point is 00:41:23 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
Starting point is 00:41:59 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.
Starting point is 00:42:38 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.
Starting point is 00:42:59 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
Starting point is 00:43:25 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...
Starting point is 00:43:41 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
Starting point is 00:44:22 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%.
Starting point is 00:44:55 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,
Starting point is 00:45:08 Hey, after 14 years, you should have moved on. Right. We've, we've peaked. Hey, Hey,
Starting point is 00:45:15 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.
Starting point is 00:45:34 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
Starting point is 00:46:10 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
Starting point is 00:46:50 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
Starting point is 00:47:33 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.
Starting point is 00:47:59 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,
Starting point is 00:48:28 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,
Starting point is 00:48:40 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.
Starting point is 00:48:56 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,
Starting point is 00:49:17 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.
Starting point is 00:49:40 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,
Starting point is 00:50:09 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
Starting point is 00:50:34 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.
Starting point is 00:50:59 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.
Starting point is 00:51:30 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
Starting point is 00:51:57 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.
Starting point is 00:52:56 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
Starting point is 00:53:40 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.
Starting point is 00:54:01 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.
Starting point is 00:54:10 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.
Starting point is 00:54:30 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?
Starting point is 00:54:46 Winner, winner, chicken dinner. Woo. Jay-Z. Thank you. Thank you. Jay-Z wins it. What's my prize? Thanks to win.
Starting point is 00:54:54 How many percentage? It was 40%. Oh, I hit the number. Nice. Dang it. Yeah, yeah, yeah. All right. Alan is like an orange.
Starting point is 00:55:05 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.
Starting point is 00:55:23 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.
Starting point is 00:55:53 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
Starting point is 00:56:13 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.
Starting point is 00:57:03 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,
Starting point is 00:57:20 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?
Starting point is 00:57:50 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%.
Starting point is 00:58:17 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.
Starting point is 00:58:35 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,
Starting point is 00:58:46 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,
Starting point is 00:58:56 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,
Starting point is 00:59:07 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?
Starting point is 00:59:21 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.
Starting point is 00:59:35 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
Starting point is 01:00:03 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.
Starting point is 01:00:41 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.
Starting point is 01:00:58 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.
Starting point is 01:01:25 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.
Starting point is 01:01:40 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,
Starting point is 01:01:57 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?
Starting point is 01:02:12 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
Starting point is 01:02:26 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
Starting point is 01:02:41 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,
Starting point is 01:02:52 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.
Starting point is 01:03:03 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.
Starting point is 01:03:29 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.
Starting point is 01:03:45 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?
Starting point is 01:04:08 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?
Starting point is 01:04:38 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
Starting point is 01:05:20 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.
Starting point is 01:05:50 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
Starting point is 01:06:15 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.
Starting point is 01:06:37 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.
Starting point is 01:06:51 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.
Starting point is 01:07:08 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
Starting point is 01:07:23 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.
Starting point is 01:07:43 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,
Starting point is 01:08:09 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.
Starting point is 01:08:20 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.
Starting point is 01:08:50 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.
Starting point is 01:09:10 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
Starting point is 01:09:48 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.
Starting point is 01:10:32 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?
Starting point is 01:10:50 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.
Starting point is 01:11:05 But Python is in there. Ruby's in there. Um, yeah, I thought it was in there twice. Yeah. I thought that, yeah,
Starting point is 01:11:12 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.
Starting point is 01:11:19 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,
Starting point is 01:11:35 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
Starting point is 01:12:04 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.
Starting point is 01:12:21 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
Starting point is 01:12:50 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
Starting point is 01:13:16 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.
Starting point is 01:13:44 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?
Starting point is 01:13:59 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.
Starting point is 01:14:10 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,
Starting point is 01:14:21 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...
Starting point is 01:14:41 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.
Starting point is 01:15:01 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
Starting point is 01:15:18 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?
Starting point is 01:15:33 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.
Starting point is 01:15:49 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.
Starting point is 01:16:09 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,
Starting point is 01:16:24 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.
Starting point is 01:16:51 I thought it was another document database. Am I wrong? Clustered. It's an Apache project. Clustered.jsql. Okay. JSON. Okay.
Starting point is 01:17:04 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?
Starting point is 01:17:34 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
Starting point is 01:18:02 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.
Starting point is 01:18:32 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.
Starting point is 01:18:51 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
Starting point is 01:19:06 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%.
Starting point is 01:19:23 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.
Starting point is 01:19:58 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,
Starting point is 01:20:13 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,
Starting point is 01:20:22 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.
Starting point is 01:20:37 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.
Starting point is 01:20:52 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
Starting point is 01:21:10 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
Starting point is 01:22:14 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.
Starting point is 01:22:41 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,
Starting point is 01:22:52 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,
Starting point is 01:23:02 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.
Starting point is 01:23:20 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
Starting point is 01:23:55 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.
Starting point is 01:24:26 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.
Starting point is 01:24:48 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.
Starting point is 01:25:04 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
Starting point is 01:25:16 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?
Starting point is 01:25:48 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.
Starting point is 01:26:12 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.
Starting point is 01:26:19 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
Starting point is 01:26:38 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,
Starting point is 01:27:07 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,
Starting point is 01:27:16 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,
Starting point is 01:27:24 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?
Starting point is 01:27:43 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.
Starting point is 01:28:00 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,
Starting point is 01:28:13 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,
Starting point is 01:28:23 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.
Starting point is 01:28:39 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.
Starting point is 01:28:51 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.
Starting point is 01:29:09 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.
Starting point is 01:29:33 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
Starting point is 01:30:02 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
Starting point is 01:30:47 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
Starting point is 01:31:53 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
Starting point is 01:32:38 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
Starting point is 01:33:25 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,
Starting point is 01:34:02 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.
Starting point is 01:34:50 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.
Starting point is 01:35:10 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.
Starting point is 01:35:18 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.
Starting point is 01:35:36 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
Starting point is 01:36:19 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?
Starting point is 01:36:44 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
Starting point is 01:36:59 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.
Starting point is 01:37:49 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.
Starting point is 01:38:00 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.
Starting point is 01:38:46 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,
Starting point is 01:38:55 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.
Starting point is 01:39:14 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
Starting point is 01:39:27 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.
Starting point is 01:39:54 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.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.