Programming Throwdown - Holiday Party

Episode Date: January 2, 2019

Hey all! This is our annual holiday show! We give away prizes and talk about random news stories :-D. Thanks to everyone who chatted with us on Discord, and looking forward to a super excitin...g 2019! I'll be sending an email to all prize winners later today! Show notes: https://www.programmingthrowdown.com/2019/01/episode-85-holiday-party.html ★ Support this podcast on Patreon ★

Transcript
Discussion (0)
Starting point is 00:00:00 programming throwdown episode 85 holiday party take it away patrick welcome to the last episode of 2018 wow got a lot of exciting stuff planned for this episode. That's right. Some giveaways, which we'll explain in a minute. And hopefully they'll be fun and exciting. And we're recording this. We always, I guess, technically record it live. Like, Jason and I are both live, I guess.
Starting point is 00:00:38 But this time, people are listening in on the Discord. And if we get any particularly particularly excited uh people into the discord who want to join us on audio chat we might have that that episode don't know what's going to happen it's uh end of the year 2018 anything can happen that's right anything goes it's wild it's crazy speaking of wild crazy and anything goes uh since we called this episode the holiday party episode i want to talk a minute about uh work holiday parties so uh each year at i guess you know every company i've worked at there's always been a holiday party and i think you know hollywood has made a thing of holiday parties like famously i guess the opening
Starting point is 00:01:18 of die hard is a holiday party right i haven't watched it in a long time yeah i think that's true so holiday like like it's a a cultural thing i guess uh but i guess it's particularly interesting i don't know that i've ever seen portrayed the uh computer science holiday party uh so so you know it's typically for for those of you who you kind of haven't experienced it yet the way i've typically experienced it is sometime uh near to thanksgiving but normally after thanksgiving but before christmas uh your company will decide to throw a holiday party it may be for the whole company it might be for just your team or normally it's been more like i've seen at like the department level um so depending on the size of your company
Starting point is 00:02:00 i've worked mostly at large companies so that's you know several hundred to a thousand ish employee level and um and so that's about the size of the holiday party they have it at some you know conference center or uh you know some museum something it just depends on you know sort of the uh current economic environment the sort of culture of your company various things yeah they actually uh they still do the whole company holiday party where i work and uh it's completely insane it's just so many people it's an unbelievable so this is also an interesting time of year because uh for me the two biggest things that are recurring year after year that are kind of most interesting, aside from the event itself, when it takes place, is one, they typically have people dress up. Typically either like at least business casual, but typically more like you're supposed to often black tie. And so most of the people I work for either own zero or one suit and they haven't worn it until except last year's holiday party
Starting point is 00:03:06 yeah exactly so it's a very interesting time from people who normally wear jeans and t-shirts or even shorts and flip-flops to see them actually kind of suit up and go to a party so that's the first interesting bit and you say also you see some people because they're they're not used to this they might be unprepared so for example um the last time they wore dress shoes was at the last holiday party and uh they lost the dress shoes so you'll see this person wearing a tuxedo and flip-flops oh no no i didn't never seen this and it's not to make fun of people like i mean i think you can own it right like some people wear the jingle bells suit right that has like just bells all over and like i think that's cool like that's okay
Starting point is 00:03:47 because it's kind of a weird thing to ask these people who are not known for wearing sort of nice when i say nice clothes fancy clothes uh to put on fancy clothes and go to this event so it's already a little awkward like everybody kind of gets it not judging those people if if you you know myself i probably don't pull off a, I would be able to be made fun of in 90% of social light circles for what I wear. And it's fine, you know, the faux pas. So I'm not one to throw rocks. So that's the first interesting bit. The second interesting bit is it's typically a you plus one. So you can bring a friend or a spouse or a significant other, your mom, like I've seen, you know, a variety of rules. But it's really interesting because you know these people from work,
Starting point is 00:04:28 but now you're meeting some other person sort of in their life. And most of the time that tends to be someone who's not in computer science. So you get a room that's split kind of, in my opinion, typically almost right down the middle. About 50% sort of engineers and about about 50 kind of non-engineers in a sort of awkward miasma of people in suits and cocktail dresses and ball gowns uh all in an event that probably has some amount of alcohol probably has dancing and music and eating and it's just this uh very interesting time of year did did they change the the alcohol rules
Starting point is 00:05:06 this year uh i think there was i forget what the exact rules are those things like two you got two tickets so you could have two drinks okay yeah so they did so actually uh i was one of the companies that didn't do that so i don't i don't really drink i mean it's not a i don't have a any moral issue it's just one of these things that as I've gotten older, it's like the hangover is getting a lot bigger. And so I just stopped drinking at one point. But yeah, they had just totally open bar. And that's actually starting to go the way of the dodo.
Starting point is 00:05:43 I know fewer and fewer companies are still doing that um and probably for good measure i mean someone could get just just completely hammered but uh yeah um but yeah that was it's an interesting thing that you know okay you bring um you know somebody either a significant other or a friend or something like that the odds that they're in tech is you know is i don't know what it is but it's not necessarily high in the scheme of all things you can do right and so what happens is you meet other you know pairs of people and and you have maybe a connection with this person that goes like you spent 2 000 hours with this person in the past year and so
Starting point is 00:06:23 you have all these things you want to say in a social setting. Um, and then these other two people have to kind of hit it off right away. And it's just, yeah, in general, it's, it's pretty difficult. It's like, it's a, it's a, it's a little bit of a taxing time to like, make sure, you know, everyone's, everyone's happy and things like that. I generally enjoy it. I'm not the most introverted person, so I tend to have a good time. I also don't drink. And so I do see from my perspective there that seeing people get very sloppy is kind of off-putting. So I'm actually pleasantly surprised
Starting point is 00:06:55 when there's a limit on it, just because it's a different... When you get mismatches there, I think it leads to awkward situations. Yeah, that's the thing. If someone is really hammered, get mismatches there i think it leads to awkward situations um yeah that's the thing if if someone is is really hammered they can kind of cause like irreparable damage you know i mean i mean i have a crazy story where um i actually wasn't there so so there was a um i actually worked in tech when i
Starting point is 00:07:21 was when i was 17 years old. And there was a holiday party. And I actually, I don't remember. I either couldn't go or I wasn't invited because it was an open bar. But there was some reason why I wasn't there. And I heard later that this person got completely smashed and grabbed a microphone. Now, it's not like one of these things where there's a band and this person just steals the microphone from the band. It wasn't that dramatic, but there was just, there happened to be a microphone. I think someone had just finished speaking and she got on the microphone and just started saying, you know, a lot of really personal
Starting point is 00:07:59 things about her coworkers and things like that. And, and those wounds, I mean, they don't really heal. I mean, it's not like your family where you could kind of just hash it out, but it was awkward the entire duration that I worked there. I mean, for years, it was awkward. Yeah, I mean, for me, I actually enjoy these events as like getting to meet people and getting to meet their other people
Starting point is 00:08:20 that are in their lives. And like Jason pointed out, it's sort of interesting. You spend so much time with these people, but never often in a social setting or in a very reduced amount of time in a social setting and so bring those two worlds together it's kind of interesting and also um you know i'm married and so my wife is like one of the few times she ever gets to meet all the other people i work with and so even to this day so we actually didn't go to the one this year um but in general uh we've gone in years past
Starting point is 00:08:46 and she still remembers the people she's met like oh yeah now i know if i say so and so she'll be like oh he was the one wearing or she was the one wearing this stuff and i'm like yes that's right and so like that's how like you know they hear the stories but that's how they fix the people and what they look like in their uh in their head was is meeting them in these scenarios so it's actually a enjoyable time but as jason pointed out you uh inevitably end up with some amount of stories from every holiday party yeah that makes sense if i could give people one bit of advice it would probably be not to get hammered at your holiday party i mean it's just life pro tip from jason yeah i mean mean, happy holidays, everyone.
Starting point is 00:09:26 Let me just turn down my gain a little bit. But yeah, it just doesn't seem like a good idea. If you're tempted, then just in your mind, just say, okay, when I go home, I'm going to buy an entire bottle of something and have a huge party with my personal friends who I trust or something like that. But yeah, holiday's yeah. Holiday parties are pretty wild, but in general, I think, um, it's a ton of fun to, to talk to your coworkers. It's really strange because you eat lunch with your coworkers. Um, and so it, it seems like you
Starting point is 00:09:57 would build, but there's just something about being in a completely social setting and also kind of being around your close friends and your coworkers at the same time. It is really cool. And I have a great time. We look forward to it every year. Cool. All right, Jason, why don't you go over this year's giveaway plans?
Starting point is 00:10:14 Let's do it. Speaking of looking forward to it. So, you know, I posted on Facebook and Twitter and all these other things that Patrick doesn't have accounts for yet and i talked about um how now is the last chance to make a patreon account etc etc and then uh i did the cutoff so uh the patrons who were patreon members on this morning uh were in the raffle um and then what i did is i spent about 15 minutes monkeying around in Excel trying to figure out how to generate random numbers that wouldn't change every time I did anything. I finally got that to work.
Starting point is 00:10:53 My Excel skills are absolutely terrible. I don't understand how I can't figure out Excel, but that's my Achilles heel. And so we have the names of people. Now, we're going to do a little bit different. You know, last year we set a mission of sending, you know, a little gift to everybody. We ran into a lot of issues with international shipping. It turns out that's really, really hard. I had no idea. I kind of thought that similar to, you know, calling internationally, that it would be easy. Maybe we'd have to pay a little more money to ship to different places. It turns out logistically, it's a total nightmare. And so what we're going to do this time is, you know, we've been spending the whole year talking
Starting point is 00:11:34 about different books of the show. And so we thought we would do is take 15 people, we'll break them up into five groups of five. So three groups of five. And we'll either give you the option of an e-book, a book from any of our books of the show. It actually doesn't even have to be this year. So it could be any book of the show, an either e-book or physical copy, or you can get a t-shirt um and so what we'll do is after this episode's done i'll send emails out um the nice thing about this too is if people haven't put their address on patreon what i'll do is i'll email you and at that point you could you could either tell me uh yeah i want a physical book and here's my email address or you could give you could suggest the ebook or t-shirt
Starting point is 00:12:22 and uh and you don't need an address to win, which is different this year. So, yeah. So maybe we'll just go through our first five. Drum roll, please. No, I can't do it. I have no rhythm. I wonder if we could just tap. We could just tap the microphone.
Starting point is 00:12:41 Let me give it a shot. No, no, no. We're going to go. Did that work? I'm wincing. It's like Patrick's eardrums are blown out um so i'm not gonna read last names just in case but um the first initial of the last name maybe yeah actually one sec let me see if i can get this all on one screen here oh the dramatic pause jason if i can get this all on one screen here. Oh, the dramatic pause, Jason. If I can get this all on one screen. People are all like on pins and needles.
Starting point is 00:13:10 Pins and needles. There we go, perfect. On the edge of their seat, we're waiting for it. I'll say your first name and your state. How about that? That probably narrows it down. So, or country, if you, actually, well, yeah. So Jansen fromia is actually number one
Starting point is 00:13:28 so he had the highest random number jansen your random number was 0.994 that is very close to one good job sir uh second one is is james uh we don't know where james is from james b um then we have so if you're a james b email i guess you have to email all email i have everyone's email oh okay i'll be able to email i just don't know where Alexander's from. And Ian from Canada. Congratulations. That's our first five. We'll be getting an email from me later on tonight. Oh, spoiler before the episode comes out. That's all right cool well maybe if they're in the discord then uh they'll know yeah i'm just uh just making a note here so okay all right cool well i'll flip around the order of the news of the show so you can do your bookkeeping uh so the first uh news
Starting point is 00:14:38 article we have for this evening is amazon's hq2 now this was in the news a lot or at least i saw a lot of discussion about it because amazon had a search for their new headquarters outside of seattle and it turned into much uh discussion and debate about how that would work and the nature of tax incentives and all of that and that's interesting i guess but i don't really want to talk about it because yeah politics uh and who has time for that and uh well i guess all of you should politics are important but not necessarily on this show and so uh what i wanted to talk about though is i noticed that and i think several other companies since then have talked about kind of looking and expanding i think google apple others are kind of growing their campuses out of the Silicon Valley area. And Amazon is already not in Silicon Valley, but in Seattle.
Starting point is 00:15:28 And I I'm wondering if this is a trend towards diversification or if it's just people making much ado about what was already there. But for some reason or another, it's caught the attention of media, at least that companies are looking to expand into new locations and grow new locations outside of, I guess, what you would call their traditional headquarters and have a more split presence. I believe most of these big companies already have presence in multiple locations. But for whatever reason, they're deciding to kind of emphasize that they are going to be more than just an identity of a single location. And I, for one, hope this is a beginning of a trend. I don't know that it is. I actually don't know enough to make a statement about that. But I hope that it is the start of a trend
Starting point is 00:16:14 because I think it really would be good for people to have more choice than having to live in the West Coast or East Coast, Seattle or Washington, D.Cc or the silicon valley or la like i think there's lots of really great places in the country and there's a lot of reasons family being a big one why many people may not want to relocate and having more choices i think would be great for the industry yeah i totally agree i mean i think um the the unanswered question and and i think nobody has this answer which is why um well yeah i guess yeah i would say no one has this answer which is why it's so on the fence is is is how sort of pareto distributed is is the the software
Starting point is 00:17:01 engineering field right so you know you hear about the 10x engineer and things like that, right? And so, for whatever reason, or well, for historical reasons, there's a lot of incredibly talented people in New York, Seattle, and the Bay Area, software engineers, right? And if you really need, you know, an army of, you know i don't know top coder world champions or something like that then uh that's hard to get anywhere else right i mean if you need three i actually went to visit a company and they weren't even i'm not going to say who it is but they weren't a big company um i mean maybe on the order of hundreds of engineers, maybe even just 800 engineers. And they had two top coder, like, finalists.
Starting point is 00:17:51 So, like, top 10 top coder, you know, world champions. And, you know, the company wasn't even that big. I mean, we're not talking, like, a Google or an Apple or a Facebook or anything like that. And so that's just hard to do anywhere else in the world, right? But I think maybe people are starting to realize that, like, A, that's not as important as people thought, especially as now things are becoming a little bit more of a commodity. And it's really about data science
Starting point is 00:18:20 and understanding large volumes of data and things like that where spreading it out, there might not be that same distribution. And the other part is that that generation is getting older and they're probably, for family reasons and things like that, moving regardless. It doesn't matter even if there's the best job there, they're just going to move back home or move to the Midwest or move wherever. And so that talent is going to diffuse no matter
Starting point is 00:18:51 what opportunities there are, right, to some degree. Yeah. Yeah. I mean, that was a, I mean, I guess even across the rest of the world, as you point out, there are other places in Europe and Asia that have good talent too and i i really hope that companies become i don't know open-minded as you said and there are companies in lots of places like even small shops you know sprinkle all over the place but i feel like you know the focus has largely been the the very high-paying prestigious jobs i guess is one way of saying it uh that aren't just onesies or twosies in a couple small cities, tend to isolate into relatively few places around the globe, which makes them
Starting point is 00:19:31 kind of almost by definition expensive to live in because lots of people go there. And I hope it spreads around a little more. It would be nice to have extra choices and more opportunity to recruit from places where people don't necessarily aren't interested in moving yeah yeah absolutely plus i mean the field itself just keeps getting bigger and bigger yeah and so it just seems silly not to include more and more of the country and as you said to the world right and that's not even to talk about remote work which will this whole separate uh thing so oh yeah we'll just keep going we should do it i think we've already done an episode on that right on telecommuting if not about remote work which will this whole separate uh thing so oh yeah we'll just keep going we
Starting point is 00:20:05 should do it i think we've already done an episode on that right on telecommuting if not we should do one 2019 we already have it lined up um okay my article was on serverless programming which is is uh really interesting it's not what it sounds you know when i first heard this i kind of thought you know bit torrent peer-to-peer, like I thought literally serverless. What it actually means is basically you don't have to maintain an operating system. That's effectively what it means. So there's this thing called AWS Lambda. There's an old thing from Google called, what was the Google one?
Starting point is 00:20:44 Like Google Cloud Compute or something. I can't remember the name. Google Cloud Platform, GCP. And that was similar. And the idea is there's an API. You implement that API and then your program doesn't need an operating system, right? So for example, I mean, think about what the operating system provides, right? It gives you a file system. It lets you access things like the network card and things like that so you can, you know, communicate with other computers. And then there's physical things which you're not really going to use
Starting point is 00:21:22 if it's in a data center, right? So as long as you can wrap that so you so you could wrap the file system if you need to write some local files you just create an API for that or you create you know a fuse user space file system or something like that as long as you can guarantee that someone can connect to the internet you don't really need to have to be maintaining your own operating system. And the nice thing about that is it's much easier to scale versus you don't have to spin up 100 nodes,
Starting point is 00:21:57 run your Docker container on these nodes, things like that. You just have this program and you give it to Amazon or Google or Microsoft. And you say, hey, I want this program to run on 100 machines. And then if all of a sudden, you know, it's Labor Day and you're getting hit with a ton of traffic, you just bump that up to 200 or 300. And of course, you can do that with Docker and this other technology. But but this makes it way, way easier. And so it's starting to really take off i think it's pretty cool i have to admit i i'm not a web developer or even a web backend developer so um i can't say for sure i haven't played around with this yet but i want to
Starting point is 00:22:35 um so i can't say for sure if it's a good idea from a technical perspective but just from a like product engineering or production engineering perspective, it seems like like really nice. Like it reduces a lot of the friction. I mean, I don't really need to maintain a file system when all my program is doing is writing logs and talking to a database. Right. So I think it's pretty cool. And this article talks all about how that works. I want to talk about a recurring theme people who are listening to the backlog of our episodes often write us in and talk about that we made i knew called predictions i guess but things we've said in the past and i know one of the things we've talked about a lot is spacex bigelow space
Starting point is 00:23:16 um whether or not i guess virgin galactic is it yeah on these kinds of things oh which i could have made that the article. Virgin Galactic 2, which is the, or Spaceship 2. I forget the exact nomenclature. But they recently reached by what some people define as the edge of space. They reached space. And this is the Richard Branson-backed company or owned company. I guess he owns it anyways.
Starting point is 00:23:45 And they've been for a while trying to get to space uh and they're wanting to take tourists there they're suborbital so they won't actually be able to orbit like a spacex um but they recently were able to get there so people are kind of like thinking might be soon that sort of paying customers albeit very outrageously expensive tickets will actually start being able to kind of visit space it seems like you know how much that would cost i forget i think i looked up at the time i don't look at it okay cool but the article i actually picked that was a bonus freebie no charge for that one uh is spacex recently had their 20th launch of the year and i think this is a crazy story that there are several companies now offering uh or close to offering um commercial
Starting point is 00:24:28 access to to orbital flights be able to put satellites up and soon hopefully to be able to put humans back uh into space i guess right now it's mostly the the russian uh uh the rockets that are able to put people into space and they recently had a problem and so they've had issues and so now it looks like uh spacex and and other companies might be getting close uh and this uh 20th launch of the year for spacex is it's kind of it's kind of interesting to see how frequently uh rockets are launching and maybe i just never paid attention to it before maybe it's cool again maybe it's always been this common but i actually think uh i should have tried to find a graph of it but i feel like it's becoming more commonplace and i'm excited that you know as my children grow up hopefully they'll be able to you know see uh thriving space yeah for the going to space again low price of
Starting point is 00:25:15 250 000 okay well do we space who's gonna be the first person to say something about like the moore's law of ticket prices to space or something oh that's true yeah just kidding just kidding i know it's not the same um specifically though this 20th launch of spacex was an interesting one if you if you hadn't seen it in the news i encourage you to watch the video of it so spacex when possible tries to re-land their first stage so they can recover the engines and everything and they either landed on a barge or back near the uh where they launched from on land and this one they were headed back to land on the land and i guess the uh approach has it to be targeting sort of not on the land initially but on on the sea like just offshore in the ocean and then once it sort of
Starting point is 00:26:05 sees everything's a-okay it sort of at the last minute kind of pivots over to land on the the landing pad and what happened was it's sort of something in one of the hydraulic motors uh malfunction and so it begins to spin out of control uh and so they actually you know no longer are targeting the the landing pad or they don't move to target the landing pad and the live stream actually cuts away and the people pretend like nothing's happening but then when it comes back and you actually watch the video later uh it sort of spins out of control but they managed to actually regain control which is crazy because they don't have a lot of time to do it they manage the algorithms managed to regain control of the
Starting point is 00:26:42 rocket and they actually effectively land it on the ocean, like in a very shallow water. They kind of land it at the last second. It's like barely hovering. But then, of course, when it goes to land, there's no solid thing there, and so it just sort of tips into the ocean. But for what could have been a very catastrophic failure,
Starting point is 00:27:00 it turns into an almost uneventful thing. And I think they ended up recovering the rocket, and I think they decided they're going to have to just scrap it for parts or whatever they won't be able to reuse it after being in the salt water um that makes sense but it's just it's kind of crazy that it had gone so long without any issues that it's almost become commonplace this thing that people you know i kind of remember on this podcast and having talked to people it's been like oh this is ridiculous that you would fly up and fly part of the rocket back just the amounts of energy involved and fuel you'd have to use and there's no
Starting point is 00:27:30 way that doesn't make sense and now it's just like oh yeah of course they do that yeah it's mind-boggling yeah so i guess that's the nature of progress yeah i guess maybe ai was able to just control that rocket with such efficiency that it makes it worth saving or something um my uh show topic or my second news is flutter flutter 1.0 and so flutter is is pretty interesting i've heard mixed reviews about it but but basically what flutter is um i don't know if we've talked about about reactjs or sorry, React Native. Yeah, okay. Oh, that's right.
Starting point is 00:28:09 We talked about all of that when we were talking about Clojure and there was Clojure script and all of that. So just to recap, React Native is where you write in a mix of HTML and JavaScript. But it's actually not HTML. It's XML, let's put it that way, and JavaScript. And then what happens, React Native ends up, basically, that code ends up driving a bunch of native components. So for example, if you have an XML tag button, then that's going to draw a button on the screen. And that tag takes attributes like text and things like that. And that tag can have children tags for all the different choices and things like that. So what happens under the hood is that button, XML tag,
Starting point is 00:29:03 turns into an iOS button if it's built for iOS or an Android button, like a native button, right? Now, that's really cool. And it feels like a native app. You don't realize that the person hasn't written it in Objective-C or Swift or Java or Kotlin or one of these native libraries. So you don't know that the person has written it once for two phones or even more than two types of phones, but they have, right? Flutter takes a different approach. So Flutter is a little bit more like the web where, you know, you hope that all the browsers more or less behave the same. And so everything kind of looks the same. So if you go to Google.com on your phone and you go on your laptop, more or less it looks the same. And so Flutter, a button in Flutter is going to look exactly the same on Android and iOS.
Starting point is 00:30:00 It's not going to match the theme of that hardware. And so the nice thing there is you when you're designing the layout so for example maybe on android you can fit three buttons across because just the the number of pixels and the border and the the padding and all that the buttons is is less and on ios you can only fit two buttons across but if you don't know that you're writing react native then then you when you deploy an iOS, it just doesn't look good. Like maybe it wraps around in some weird way. Maybe one of the buttons falls off the edge of the screen.
Starting point is 00:30:33 And so you have to deal with all of those inconsistencies. Whereas for Flutter, it's almost pixel perfect, or pixel identical between the two. Now the downside of Flutter is that neither one of, it's never going to look native, right? So there's a sort of uncanny valley where, you know, it's like, okay, the buttons don't feel like regular native buttons. When you scroll, it doesn't really scroll with the same gravity. It doesn't have the same momentum and things just don't quite feel right. And so that's a trade-off, you know? I mean, you can't have iOS and Android look different. So like,
Starting point is 00:31:13 you can't have something that looks the same on both and looks native, right? It's impossible, right? So Flutter makes a trade-off in one direction. React Native does it in the other direction. The jury's kind of still out, but I thought it was really interesting. And I think as a developer, one nice thing about Flutter is you can run it on, let's say, the iPhone simulator and then run it on an Android device. You don't necessarily need an iOS device because the look and feel and all of that is much more predefined. So yeah, check it out. I think it's pretty cool. It's getting a lot of traction.
Starting point is 00:31:52 It's written in Dart, so you have to use the Dart programming language. But I think Dart is, correct me if I'm wrong, but I think Dart is like a superset of JavaScript. I don't know if that's true anymore. I know it's like, what did you call that? Transpilable to JavaScript. Yeah, it used to be a superset, but I think that's not true anymore. I think that not all JavaScript will just run as Dart code.
Starting point is 00:32:24 But either way, I think it's cool. It's definitely worth trying out, especially if you're an app developer, and see how it compares to other frameworks. And let us know. If you build an app in Flutter, shoot us an email, post on Discord some cool pics, and we can check it out.
Starting point is 00:32:40 All right, man. I think it's that time. Time for another giveaway. Five giveaways. so now the next five uh just to recap we're gonna send you all emails um you can uh choose a t-shirt we'll send you a t-shirt from the store we'll send you a book one of the books of the show of your choosing um for those two you'll have to give us your address if it's not already in patreon uh or you can opt for an ebook so any of our books of the show that are available on kindle uh we'll figure out a way to get that too so we have christopher from west virginia we got steve
Starting point is 00:33:17 uh steve p we have alisar from um interesting al Alisar from Merseyside. I don't actually know what that is. Is that a country? I don't know, but we'll find out. Andre, who is from, looks like, Jorbiti. And Jonas, who's from Denmark. So congratulations. I'll send emails to you guys um later on today looks like mercyside is a county in uh in england oh there you go or so says uh my google search and wikipedia it's interesting this this this column is really noisy i don't know why
Starting point is 00:34:01 that is but but you know there's one column in this Patreon report. It has states for some people. It has countries for other people. It must be just like, when people fill out the form, there must be this field that's just principality or something. Or maybe it's pulling it out of a string.
Starting point is 00:34:20 I don't know. But congratulations you folks, and I'll send that information out to you pretty soon. All right, cool. Well, we're going to do one more little activity here. And then we'll draw the final five names. So I found an article, and I had it as the article of the show. And then I decided to actually read through these and see.
Starting point is 00:34:40 Well, Jason hasn't read these yet. And so we're going to see how he responds to this. And this is an article describing a person who learned programming at an early age, but wrote, hey, here's some thoughts I had about the difference between programming and working as a professional software engineer. Nobody really told me these. Some of them are very on point. I think some of them might be a little more interesting.
Starting point is 00:35:04 We won't necessarily read all of them But that you know, I'm gonna read a couple here and see what what Jason thinks All right. So here the number one Jason is it's normal to have more lines of tests than production code That's a tough one, I mean he's definitely close Really? I feel like it's true to more lines of tests and production code. If you're writing good tests, if you're actually writing unit tests for your code. Wait, so you feel like the answer is yes? Like you agree with that?
Starting point is 00:35:34 For code that you are writing unit tests for, yes. I feel the answer is yes. So you're saying there's more unit test code than actual code? Yes. Yeah, I believe it. Yeah, I'm having a hard time visualizing that because a lot of the unit test code is a little bit more boilerplate. But yeah, I think that's true. I agree with that.
Starting point is 00:35:52 All right, cool. Having no choice but to use VI early in this person's career, they meant that now they're stuck using those key bindings everywhere. Yeah, I disagree with that. I mean, I definitely got started with Emacs, but... Oh, here it goes. Well, no, I mean, I've never switched to VI, but I did switch from Emacs to visual IDEs,
Starting point is 00:36:21 like Atom and Visual Studio Code and these things. And to be honest, I haven't turned on the Emacs bindings. Now, there are times where I do like, yeah, like control X, right button and nothing happens or I'll literally draw an X on the screen. Now I'm kind of like, oh, I need to set up the Emacs key bindings, but I never actually do. So, yeah, I mean, personally, i don't seem to have locked in any of these key bindings what about you yes i was gonna say i think i read this more as like you'll lock
Starting point is 00:36:49 into a way of doing things and be stuck that way yeah i don't know i don't know i agree with that either yeah it just hasn't really happened for me i definitely could see it happening in general but personally it hasn't happened all right cool uh yeah so i'm picking and choosing here but um that oh here you could have a hundred percent base salary difference doing the same job depending on whether you work at a small startup or at a big company hundred percent base i think that means you could be paid half as much at a startup as what you could earn if you went and worked at a big company and base salary yeah i mean i feel like that's just that's just a, right? I mean, it's a fact.
Starting point is 00:37:25 Yeah, I think it's true. I mean, the startup is one of these risky, it's a risk versus, you know, like you're not gonna, the whole point of the startup is you own some big chunk of the startup. But yeah, that's fair. Yeah.
Starting point is 00:37:37 So, I mean, I think that's something not a lot of people would know. I think it is true. I think that it can be all over the place. But I think in general, yeah, startups pay much less than big companies. That's a really good point. You know, I just took it for granted. But, you know, if I was straight out of college, I probably wouldn't have realized that.
Starting point is 00:37:53 But yeah, I mean, in my opinion, and tell me what you think about this. I think it's crazy to join a startup straight out of college. I mean, the startups that get really big, like the Googles and Facebook, sure, they're founded by people who are either in college or dropping out of college or what have you. But first of all, those people are the founders, right? And secondly, that's the vast, vast minority of startups, right? The vast majority of startups are actually, you know, they do reasonably well. They end up just mid-sized businesses or they get acquired by a bigger company. But I don't feel like they have that
Starting point is 00:38:32 enormous upside that a Google or Facebook as a startup has. And so, yeah, I mean, if you don't realize that there's a huge risk, then probably you should be at a bigger company, in my opinion. Yeah, I think so. I've personally wondered about this. So I'll say that you should do the thing that's right for you. So if out of college, you're really interested in a startup and a startup is a good fit for what you're, I don't think there's anything to lose per se, like going to a startup isn't going to mean you never go work at a big company. But I think you have to realize that, and this is actually going to be another one of the points uh in here uh is that how much time you actually spend coding versus a whole variety of tasks this is not exactly this person's point but um i think the amount of time you spend coding relative to a whole suite of other tasks
Starting point is 00:39:19 is uh varied across your position across your role across your current team and between startups and big companies so at a big company you know you might find yourself often fighting with build systems that are mandated by your company uh whereas a startup it might be like oh i just ditch that go use a different build system because why not um and so i think that you might learn the actual coding i don don't know. I've never worked at a startup. It might be quite similar. The actual like Java or C++ or Python you write might be pretty similar. But the context around it, the amount of testing, the amount of speed, the flexibility, I think those things can be very different. And so I'm not sure how directly
Starting point is 00:40:00 transferable it always is. Yeah, that makes sense. I mean, I think at a startup, you're trying to find the right product market fit. So just to recap, I mean, not to spend a whole show on startups, but the whole point of a startup is to find a monopoly, like start with a very, very tiny monopoly. Maybe your monopoly is in your city. You know, you are the people that do fax, converting faxes to emails. And for whatever reason, maybe it's because of marketing. Maybe it's because you're famous in your hometown. I don't know, whatever. But for whatever reason, you just own a ton of that market, 70% of that market. You have a monopoly. And then the question is, can you grow grow that market and can you end up with you know
Starting point is 00:40:47 a monopoly of of uh you know all taxi drive all taxi cabs or something i guess uber when i say monopoly like i'm kind of waving i'm waving my hands a little bit i mean obviously uber doesn't have a monopoly you can just download lyft but like effectively can can you reduce the the space of people who are in this in this in this in this market to like a handful of people and is it a huge market right and so while you're doing that you know you might be radically changing the software and so tests and things like that might not be as important as you're probably if you're in a startup you'll probably be writing pretty cavalier code that that's what i would expect i've never as a generalization yeah i mean i feel like that would generally be i mean it depends now if the startup is
Starting point is 00:41:34 medical equipment you know to please write like a pacemaker or something that's totally different but i feel like in general a lot of these startups, I feel like you're going to be writing pretty cavalier code, especially if it's product code and not like a database. So getting off of the startups, another interesting point that I thought they had here that was good was that different roles can be valued. Oh, here they say, here it goes, have different cachet that in your local culture, in the local culture of your company. So saying you're a test engineer or an automation or front end or web or database or an optimization, a low level compiler guy, like whatever the kind of thing you say you do can vastly impact how people feel about you. I'm expounding a little on their point, but how do you feel about that? Yeah, I mean, I think I kind of wish it was a little bit more formal. And I think we're getting
Starting point is 00:42:29 there. We're not quite there yet. But it's kind of weird. I mean, I'll get an email from someone and they'll say, hey, we're looking for a software engineer for this company. And then you look at the job description and it's, oh oh needs to be able to to write you know Motorola assembly or needs to know a whole lot about optimizing a database these things which which I've literally known nothing about um and so you know I'm hoping actually that these things that they're calling kind of it sounds like they're they're making it seem more like a social label, right? But we should just go so far as to make it stratify the software engineering job a little bit, right?
Starting point is 00:43:11 I think it cuts both ways. I think that you can say, oh, all that person does is blah. All that person does is write front-end code. They're not a real engineer uh and i guess to what you're saying about stratifying yeah i think that can become dangerous because i think the skill set you need there might be and i'm not saying this is true i'm just going to invent something as a generalization but to say like oh right in front end oh that's not as technical and that you you don't even need to know differential equations
Starting point is 00:43:44 to do that and it's like well that might be't even need to know differential equations to do that. And it's like, well, that might be true. But it also means working with artists and constantly vastly changing requirements and having an eye for design because you don't always have the designer at your disposal. It might mean a skill set that's actually quite difficult and hard to do um but you know working on you know compiler optimization theory uh and the symbolic logic of that or whatever you know maybe that is a much more academic thing but it turns out like yeah that's very rigorous and difficult and those puzzles are very very hard to find and making progress comes in you know spur, spurts rather than, you know, UI mocks.
Starting point is 00:44:27 But that doesn't stratification is weird because stratification implies like almost a strict ordering. And I don't know that I know that's the right word, but like I don't know that it's strictly this one's better than another. It might be different people are suited to different. Yeah, stratification is totally the wrong word. I think it's more like, what's the word I'm looking for where it's just clustering or just split out so that front-end engineer, like if someone wants a front-end engineer, they don't put stuff on. More defined roles, like more nuance, more granularity in the roles. Yeah, exactly. Now, one unfortunate thing is that is that any time you put two different labels on two different things, there's going to end up being a hierarchy. Right. Like if nothing else, the supply and demand dynamics of those two jobs will be different and that will cause the pay to be different and that will cause a hierarchy, right? I mean, but that happens already, right? So by sort of hiding under the software engineer label, it actually just makes it harder for people to advocate for
Starting point is 00:45:35 better salaries and things like that, because it just adds more variance, right? But yeah, to your point, I don't think, I think it would be wrong to assume that any of those jobs is better than any other one. I mean, they're they're all they're all sort of require a different set of skills. But you are right. I don't. And without getting in, I don't want to drag it onto a giant conversation. But you are right that they're different. One may be better or worse or harder or easier. But supply and demand will dictate that prices might be different. Like the pay. Yep. Yep. So, yeah. so I can see it both ways as well I personally still lean towards like why not I mean especially if we if
Starting point is 00:46:11 software engineer becomes I mean let's imagine in the future 10% of all employees globally our software engineers I mean that's that's obviously what much farther from the universe we're living in now, right? But let's say that happened, right? I mean, you can't just have software engineer as a job title then. It would be absurd, right? And so, you know, I think that as that job becomes more and more prevalent, eventually that will have to happen. So, I mean, I think that I guess on the fly trying to come up with an analogy,
Starting point is 00:46:42 if you talk about a medical doctor, so people still say you're a doctor, but there's pediatricians and there's surgeons and there's cardiologists and there's general practitioner. I mean, I'm not, I'm not an expert. Yeah. Right.
Starting point is 00:46:57 You have all these different things. If you looked at a job description, it probably wouldn't say doctor, right? Right. But you would still, other people might call it that even if they know there's more nuance, you'd still say, Oh, you're a doctor right but you would still other people might call it that even if they know there's more nuance you'd still say oh you're a doctor like you're
Starting point is 00:47:09 still that thing you're still a doctor you still go to medical school but then you develop a specialization and you're right a job offer would be very clear about hey this is a position for you know working in the hospital as a chiropractic surgeon i don't i'm terrible anyways i don't know what that is either but but you know it's going to say very specifically what that job is it's going to have a good label because it's a sort of stable thing and everyone knows what it means um but it's probably true that like a pediatrician doesn't make as much money as a brain surgeon despite the fact that people both call them doctors and they probably both refer to themselves as doctors yeah i agree with that cool next one or another one is that the best technology doesn't always win in fact it often doesn't interesting the best what's
Starting point is 00:47:57 that one more time the best technology technology doesn't necessarily win in fact it often doesn't huh i know i never i never thought about that well i mean what's your take on that i need to mull on that a little bit oh i mean i feel like that's yeah that's definitely true right like the best website or take it like a programming language people are always like lisp lisp is amazing well this is pretty cool uh and some people would say it's the best but even if whether or not it's the best is arguable. But even if you believe it is best or even if it was the best, a whole host of things, conditions, context, corporate backing get into whether or not that technology wins out. Yeah, I mean, definitely. I mean, the statement is weak in the sense that, you know, the best is just one thing. And there's so much noise that it's like saying,
Starting point is 00:48:50 pick any quality. That one quality isn't going to guarantee success, no matter what it is, or even however you compose best, right? But in general, I mean, I definitely think better languages succeed. Like I think languages that aren't as good. Is that even true?
Starting point is 00:49:09 No, I don't. I mean, I think it's a true statement. As you point out, it might be weak in that it's a little hard to prove best, right? So, like, would you say, I mean, let's take the top languages. Let's say C++, JavaScript, Java, Ruby. Are those, you know, better or worse than an average language than an average they're probably better yeah then the best there are probably other ones that are best but didn't get backing or were ahead of their time or uh you know insert a whole host of other reasons that are they in the top let's say 15 oh i don't know man
Starting point is 00:49:46 because i feel like a lot of people create a lot of languages and don't ever sort of fully execute on the idea yeah that's true so i that's difficult but i mean look out there in in let's take websites right like um uh isn't true that the site with the best, most, let's say the quickest and most accurate sports scores, the latency between event happening in the sports world and their update of the score, doesn't necessarily mean that that website will become how everybody checks sports scores. Most people are still going to go to ESPN or whatever equivalent for your sport broadcasting might be in Europe, because that has marketing, it has already organic traffic. And as long as if those sports scores are good enough, you might cultivate a crowd around your specific, as you said, your definition of best, like I have
Starting point is 00:50:38 the lowest latency and highest accuracy, but that doesn't guarantee you're going to get traffic. Yeah, I think it makes sense. Yeah. So I think, you know, in general, really popular languages are good. Um, are they the best? Yeah, there's no way. Cause as you said, there's too many other factors. Yeah. Um, let's see if there's any other, Oh, here's a kind of two, the appropriate use of emojis would become a very important communication skill. The appropriate use of emojis would become a very, no, I don't really, I mean, it's just me. Maybe it's like a generational thing, but I don't use emojis, to be honest.
Starting point is 00:51:14 I mean, I'll use the smiley face sometimes, but almost everything, like when's the last time I did anything other than a smiley face? And I've been talking to you for like a decade. Fair enough. That's just me though i use the table flipping emoji thing where the guy and he like flips it down like that oh yeah that one's hard to draw unless you have it saved somewhere i just copy the table flipping one and the guy shrugging the ascii art shrugging guy those are like my those are my go-to emojis i have to admit i really like both of those um but they have no reason personally what yeah i mean when i see
Starting point is 00:51:51 someone do the table flipping it legit it legitimately makes me laugh so i mean i i get a lot of value out of it but i just i haven't you know taken the time to macro it and i never i'm always too lazy to search it like in, in the middle of a conversation. So I haven't had a chance to use it. Maybe if someone used it on me, and it was quick enough where I could get to it and use it back on them, I would do it. All right, hang on, hang on, give me two seconds.
Starting point is 00:52:18 I'm going to text it to you. I need a table-flipping, like, literally a table-flipping emoji, you know, like in the keyboard so so if you know if in the tray of the keyboard i could choose table flipping i'd probably do it like you replace the letter i like who needs the letter i just make it there's no i in table flipping oh patrick just sent me the table flipping this This is a really good one. This is like a really fancy, like... Yeah, that does look fancy. This is not the normal one.
Starting point is 00:52:47 Okay. I think it's time, man. I think we need another five. Wow, that one is fancy. He has a symbol for his nose. What an interesting nose. So now I'm just sending... I found a website that has like a whole bunch of
Starting point is 00:53:02 random table flipping emoji out of the Unicode characters. And so there's some really good ones in here. Okay. We can put a link in the show notes here. I'll add a link to this. This is good. You just bookmark this page, Jason, and your life will be at least a hundred times better, at least guaranteed or your money back. Yeah. I think people will actually listen to me in group conversations at work now. Yes. Okay, cool. All right. I don now yes okay cool all right i don't have to just say i don't have to just say i told you so all the time people have listened oh man um all right so our last winners well first of all thanks everyone for signing up we have people who have been patrons for a while actually let me take a
Starting point is 00:53:45 look at that uh i don't have i don't have a way to look at that off the top of my head we'll have to do it next year oh yeah next year we should have like categories like five people based on like how long they've been there five people based on like distributing by geography like we should have that'd be cool yeah i won't remember that by next year i thought well geography is a good idea i thought about doing it based on how long they've been there but but i have a feeling those people have already won like some of our really long time yeah i looked at the names and some of them i recognized um yeah i remember sending gifts to them already so so i yeah at the last minute i kind of didn't do that but well there's no one way to cut it fair, right? So this is as fair, I guess, as anything.
Starting point is 00:54:26 Uniform random. Can't beat it. All right. So this person's last name is NPC. I don't know. I have a feeling that's not real. They're a bot. They're a bot.
Starting point is 00:54:44 But we're going to give it to you anyways and um uh i'm not gonna announce the the people in the overflow um because i don't want you know you didn't realize oh i was the first person who didn't get it oh yeah but if but if but if npc doesn't get it uh you will be someone else we'll definitely make sure 15 people get prizes. That's what that's what. Yeah, there we go. But Glenn NPC, who doesn't have an address. Glenn, you are you're coming in number 11. Stephen from the UK.
Starting point is 00:55:19 Thomas K. We don't have an address for Paul from the UK as well. And Chris, Chris L. So those are our winners. I'll be sending all of you folks emails. And insert applause, clapping from the crowd. Yeah, actually. Yeah, I can't.
Starting point is 00:55:43 I'm not going to reveal anyone's email. That wouldn't be right. But but you have some hilarious emails. Congrats on you. If you're a patron of Programming Throwdown, you come up with some pretty good email addresses. So props to you on that. Cool. All right.
Starting point is 00:55:57 Well, we didn't end up with anybody who was willing to participate in recording. Yeah, there's someone who uh there's a there's an audience here but uh but i think there's people are a little bit shy i actually i didn't want to just randomly open the mic up and people just be like oh ah so so i i posted uh um does anybody want to to join the chat and some people are gun-shy. I think it makes sense. It's recorded forever. It's in an MP3. Tell me about it. I know.
Starting point is 00:56:33 On the internet for your entire life. I don't blame you, but definitely keep up chatting on the Discord. We answer all of the questions. We literally answered every question on the Discord that people have asked. Congrats again to our winners and uh you have a great um holidays merry christmas happy new year happy uh hanukkah oh i found there's this thing called ed or ed or something like that it's like a it's a it's a it's a holiday tradition i don't actually know much about it
Starting point is 00:57:05 but happy ed or eid okay um uh kwanzaa um i think that covers everything i'm gonna go short and sweet and just say merry christmas and see you guys next year merry christmas happy new year and next year we have an unbelievable show. We actually already recorded it. I'm not going to spoil it, but it is definitely, in my opinion, the highest profile interview we've ever done up until now. It's an absolutely phenomenal show. We don't know when it's going to come out. The day is going to be. It's actually not coming from us,
Starting point is 00:57:43 so we're not necessarily in control of the day. But it's ready to go, actually not um it's it's not coming from us so so we're not necessarily in control of the day but it's ready to go and uh really looking forward to it i think it's going to absolutely knock your socks off um you have an amazing year and let's let's do it again next year see ya the intro music is axo by binar Pilot. Programming Throwdown is distributed under a Creative Commons Attribution Sharealike 2.0 license. You're free to share, copy, distribute, transmit the work, to remix, adapt the work, but you must provide attribution to Patrick and I and sharealike in kind.

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