Speaker 1: Hey, folks, welcome back to another episode of JavaScript Jabber
Speaker 1: now here in.
Speaker 2: Oh what is that? Sorry?
Speaker 1: I'm using a system that I haven't used in a while,
Speaker 1: and it's got new features. So it just popped up
Speaker 1: and said, hey, you've got your live So I guess
Speaker 1: we're live on Twitter, YouTube, LinkedIn, and riverside if you
Speaker 1: want to come watch us on the app or recording
Speaker 1: on so anyway, it's just me because it's a holiday
Speaker 1: here in the US, and so AJ and Steve apparently
Speaker 1: have other things going on and didn't show up. Dan
Speaker 1: said he has very good reasons for not being here,
Speaker 1: usually has very good reasons when he's not here. And
Speaker 1: our guest, honestly, we just switched over to this system,
Speaker 1: and so I am going to chalk that up to
Speaker 1: essentially accounting or pros us error. Right, he probably tried
Speaker 1: to go to the stream yard link. That's some kind
Speaker 1: of messed up. They actually lost some of our recordings
Speaker 1: when we switched, because I guess they're happy with us
Speaker 1: for switching here.
Speaker 2: I don't know.
Speaker 1: I shouldn't imply any motives because I don't actually know
Speaker 1: if it was malice or in confidence, but I'm working
Speaker 1: with them to try and figure it out, and they
Speaker 1: basically told me to quit asking for help. So we'll
Speaker 1: see how all of that goes. But we switched from
Speaker 1: stream yard or to Riverside, and it turns out Riverside
Speaker 1: has pretty much all the features that I've been asking
Speaker 1: stream Yard for so and they're cheaper. So at the
Speaker 1: end of the day's that I'm not sad that we switched.
Speaker 1: If you're looking to do more live streaming than Streamyard
Speaker 1: does have better features. But it looks like riversides features
Speaker 1: have come a long way since we switched off of them,
Speaker 1: and it wasn't terribly hard to hoo cut up. So
Speaker 1: I'm pretty happy here and maybe we'll dive into that,
Speaker 1: or maybe I'll do an episode on how to record podcasts.
Speaker 1: But in the meantime, since no one showed up, I thought, hey,
Speaker 1: I'm just gonna get on and I'm just going.
Speaker 2: To record and just talk about some war stories or
Speaker 2: you know.
Speaker 1: Essentially, what I wanted to do is just talk about
Speaker 1: the highlights of my career. And I don't want to
Speaker 1: just get into hey, look how great I am. What
Speaker 1: I want to do is I want to talk about, Hey,
Speaker 1: I was in these positions and these were the things
Speaker 1: that really helped me get ahead, or these were the
Speaker 1: things that really helped me learn, or things like that.
Speaker 1: And that way I can kind of give you ideas
Speaker 1: if you're feeling stuck, or if you're like, why am
Speaker 1: I not happy in this job? Or you know, whatever,
Speaker 1: you know, just give you a chance to hear oh,
Speaker 1: oh okay, maybe I should try that right, or maybe
Speaker 1: I should take this kind of a leap, or things
Speaker 1: like that. So just to give a little bit of background,
Speaker 1: I took electronics classes in high school and that was
Speaker 1: kind of my thing, and I really enjoyed it. We
Speaker 1: actually did get into programming some eighty eighty five or
Speaker 1: eighty eighty eight chips, right, so we would write programs
Speaker 1: and it would make LEDs light up, right, And so
Speaker 1: we were programming the native language of the eighty eighty eight,
Speaker 1: which was assembly language. And you know, we also built
Speaker 1: some robots that would follow a line and things like that,
Speaker 1: and so I've always kind of had that bent toward technology.
Speaker 1: My grandpa actually was an inventor, and he invented a
Speaker 1: smaller ellipsometer, which is a device that tests the elect
Speaker 1: or the oxidation coating on silicon wafers that are used
Speaker 1: to make chips, right, they have to be uniform or
Speaker 1: pretty close to uniform, and we're talking. The term he
Speaker 1: always used was angst, which is like the thickness of
Speaker 1: a what of an oxygen atom or something. I can't
Speaker 1: remember which atom it is, but you know, so it
Speaker 1: had to be it had to be that accurate on
Speaker 1: the coating or you get bad chips. And so he
Speaker 1: invented a system that would do. They had ellipsometers, but
Speaker 1: they would take a long time. They were really slow,
Speaker 1: and they were really big, and he he invented one
Speaker 1: that fit basically in the size of kind of a
Speaker 1: computer case, and he could swap the wafers out every
Speaker 1: few minutes, right, so instead of taking hours to take minutes.
Speaker 1: He also was involved in the after the Challenger the
Speaker 1: shuttle blew up in the eighties. He was working for
Speaker 1: a company called Rockwell International, and he he invented a
Speaker 1: laser system that checked the inside of the solid rocket
Speaker 1: booster for impre because apparently that contributed to the O
Speaker 1: rings failing. And so anyway, he had pictures up in
Speaker 1: his office of this device that was sitting and pointed
Speaker 1: at the side of the rocket boosters. So anyway, so
Speaker 1: I came across all of the interest in tech kind
Speaker 1: of honestly, right, he kind of took me under his wing,
Speaker 1: and you know, and so I was always interested in
Speaker 1: this kind of a thing. And he invented some other
Speaker 1: stuff that I don't know that anybody would ever use.
Speaker 1: He built himself literally this chair. So he liked to
Speaker 1: fly remote control airplanes, which honestly is something that I
Speaker 1: think would be fun to get into.
Speaker 2: But he built himself a chair, and he built himself.
Speaker 1: Like the yoke for the pilot's chair, so it was
Speaker 1: a pilot's chair, and he built it so that it
Speaker 1: had polleys and stuff in it so that he could
Speaker 1: put the remote in there and he could fly the
Speaker 1: airplane as if he were the pilot, right, And so
Speaker 1: he could turn the yoke and he could pull it in.
Speaker 2: And out to make it go up and down.
Speaker 1: And anyway, I have fond memories of climbing trees to
Speaker 1: retrieve his airplanes at the remote control airplane parks. But anyway,
Speaker 1: so I got into that in high school. We were
Speaker 1: building that stuff. And then after high school, when I
Speaker 1: went to college, I signed up as an electrical engineering major.
Speaker 1: I went on a two year mission to Italy, and
Speaker 1: I lived in Italy for two years and taught the gospel.
Speaker 1: That's not really relevant to this, but if you're Italian
Speaker 1: and you want to chat, I would love to practice
Speaker 1: my Italian. But yeah, So then I came back and
Speaker 1: I started working on my degree for electrical engineering. And
Speaker 1: as I got further in some of the classes that
Speaker 1: they make you take or more related to chip design
Speaker 1: and how computers work and things like that, and I
Speaker 1: enjoyed that a whole lot.
Speaker 2: More more than some of the just esoteric and you know.
Speaker 1: Deeper electrical engineering stuff. So I changed my major to
Speaker 1: computer engineering. I had to take some computer science classes
Speaker 1: as part of either major, and so I, you know,
Speaker 1: I picked up some programming in college. I also did
Speaker 1: some programming on an eighty eighty five or a TI
Speaker 1: eighty five calculator that I had when I was in
Speaker 1: junior high but it was mostly just so I could
Speaker 1: do my homework and do it faster than just punching
Speaker 1: everything in. But yeah, so I started taking these classes,
Speaker 1: and I have to say that after taking that many
Speaker 1: computer science classes, I knew for a fact I didn't
Speaker 1: want to be a programmer. Which is kind of funny
Speaker 1: to a lot of people. It's like, oh really, yeah,
Speaker 1: I was not so keen on that. I got a
Speaker 1: job working it at the university and so I set
Speaker 1: up probably dozens of Linux servers and Windows servers in
Speaker 1: the data center the first few years I worked there.
Speaker 1: I actually worked in the data center, and so we
Speaker 1: would monitor batch jobs and you know, get into the
Speaker 1: computers and run commands and stuff like that, so you know,
Speaker 1: help just maintain the network. So and so is having
Speaker 1: an issue on the networks, so we'd get in and
Speaker 1: check the configuration on the switches across campus and things
Speaker 1: like that. So I do have kind of a strong
Speaker 1: bent and pretty pretty good familiarity with the command line,
Speaker 1: and that has really served me well over the years.
Speaker 1: If you're looking for a skill set that a lot
Speaker 1: of programmers don't have a good basis in that will
Speaker 1: help you out long term, boy, I can tell you
Speaker 1: learning the command line and learning how Linux works.
Speaker 2: Will do you a world of good.
Speaker 1: And it's translated really nicely into areas like Docker. So
Speaker 1: you know, just putting it out there, if that's something
Speaker 1: that you're looking to, you know, it's like, okay, what
Speaker 1: can I learn that makes me more competitive and you know,
Speaker 1: a better.
Speaker 2: Programmer and things like that.
Speaker 1: Anyway, Yeah, that's that that was something that really made
Speaker 1: a big difference. So anyway, so that's that kind of
Speaker 1: gives you some background. Before I got that first job,
Speaker 1: and incidentally, that job out of college, so I had
Speaker 1: some other jobs. I left the IT job to go
Speaker 1: take an internship where I was actually writing patent applications
Speaker 1: because I thought I wanted to be a patent attorney.
Speaker 1: And yeah, I figured out real quick that that wasn't
Speaker 1: really my cup of tea. So I went back worked
Speaker 1: in IT a little longer, setting up servers things like that.
Speaker 1: We used VMware on the servers and so we got
Speaker 1: multiple servers on the same hardware. And then I got
Speaker 1: hired at Mosey and Mosey. I was working for them
Speaker 1: answering support, mostly emails. They expanded they put out a
Speaker 1: pro product for businesses, and so then we were doing
Speaker 1: phone calls as well. And this is where I really
Speaker 1: got into programming, and I figured out that I loved programming.
Speaker 1: And the difference was was that we had this problem where.
Speaker 2: We needed to.
Speaker 1: Be able to keep better track because there were two
Speaker 1: of us and we were answering emails in Thunderbird, which
Speaker 1: is an email client, and so what we would do
Speaker 1: is we would just grab the next unread or unreplied.
Speaker 2: And we would start working on it.
Speaker 1: And sometimes we would figure out that the other guy
Speaker 1: was working on it too, and we were getting enough
Speaker 1: support requests to where we were starting to need other people,
Speaker 1: and so we were going to have to hire a team.
Speaker 1: And so it just wasn't going to work, and so
Speaker 1: we went to our boss, who incidentally we found out
Speaker 1: later that were related. His mom and my mom are cousins,
Speaker 1: but we just hadn't really done anything with his family
Speaker 1: because they lived in California and we lived in Utah.
Speaker 1: But anyway, so we went to him and we said, hey, look,
Speaker 1: you know, we need something better to manage the emails
Speaker 1: coming in and stuff like that. And he looked at
Speaker 1: us and basically said that he didn't have budget for it,
Speaker 1: and so we started building it. And the technology that
Speaker 1: they were using at at Mosey for the web based
Speaker 1: technology was Ruby on Rails, and so we started building
Speaker 1: the system in Ruby on Rails and essentially what we
Speaker 1: would it would do is it would ingest the emails
Speaker 1: periodically and then what it would do is if one
Speaker 1: of us loaded the email, it would put a mutex
Speaker 1: or you know, or basically lock it for ten minutes
Speaker 1: or something on the server on the database, so that
Speaker 1: if I opened the email, he wouldn't open it.
Speaker 2: Right and for ten minutes.
Speaker 1: And so then if I replied, then it would be
Speaker 1: Marcus replied, and he would you know, he would never
Speaker 1: see it the other guy. And so then when we
Speaker 1: hired more people than they could just get in and
Speaker 1: they could do it well. It also turned out that
Speaker 1: like eighty percent of the people who were requesting help
Speaker 1: were also requesting the same probably handful of issues, and
Speaker 1: so we put in canned replies and we basically said, hey,
Speaker 1: look we're you know, here's here's your answer.
Speaker 2: So that was that was the deal.
Speaker 1: But what was really interesting was that the issue that
Speaker 1: I had with the with programming and the reason I
Speaker 1: didn't want to be a programmer based on my computer
Speaker 1: science stuff, was that I wasn't solving real problems, right,
Speaker 1: I had no stake in it other than my grade,
Speaker 1: and some of the problems felt kind.
Speaker 2: Of contrived, right.
Speaker 1: It was like, hey, we're going to make up a
Speaker 1: problem for you to solve that nobody cares about, right,
Speaker 1: And so I didn't feel like I was making a difference.
Speaker 1: And I realized working for MOSY that that was something.
Speaker 2: That I really cared about.
Speaker 1: And so when I talked to people now about their
Speaker 1: careers and where they're going and what they want to
Speaker 1: learn and things like that, is like, look, you know
Speaker 1: what what gives you fulfillment at work?
Speaker 2: Right?
Speaker 1: Because some people I've figured out and for me some
Speaker 1: of this applies. But the biggest thing for me is
Speaker 1: I want to feel like I'm making a difference. So
Speaker 1: for me, usually I'm looking for opportunities to mentor other
Speaker 1: people I'm using. I'm looking for opportunities to save a
Speaker 1: big pile of money for my employer. Right, it's like, hey,
Speaker 1: we made the application, you know, six times more efficient,
Speaker 1: so you don't have to pay for you know whatever
Speaker 1: server and other the other the other systems. Right, you
Speaker 1: don't have to pay for all of that, right, So,
Speaker 1: or you know, we clean up the code, right, and
Speaker 1: so it's like, hey, we can get we can get
Speaker 1: the programming done faster when we need new features, or
Speaker 1: it's more easy to maintain, or we catch more bugs.
Speaker 1: And because we have a better test suite or things
Speaker 1: like that. Right, So for me, it's I really want
Speaker 1: to move the needle. I want somebody to look at
Speaker 1: the work I did and say wow, that that changed
Speaker 1: the complexion of things for us. Right, So in the contract,
Speaker 1: I'm working right now, right, they we figured out that
Speaker 1: it was doing a whole bunch of repeat work in
Speaker 1: the workers.
Speaker 2: That were you know, it's like, hey, do this job.
Speaker 1: Well, it turned out that a lot of times when
Speaker 1: it said hey, do this job, effectively what it was
Speaker 1: doing is it was it was saying do this work,
Speaker 1: but the work was going to be done by a
Speaker 1: job that was already in the queue. And so I
Speaker 1: set it up to just look in the queue and say,
Speaker 1: are you already going to do this work?
Speaker 2: Okay, don't schedule it.
Speaker 1: And we got less complaints from from the client, right
Speaker 1: because they're like, it's not calculating all the time, right,
Speaker 1: It's it's telling us it actually finished the calculation so
Speaker 1: we can use the numbers that are in there. This
Speaker 1: is for a hedge fund, by the way, So so
Speaker 1: so those are the kinds of things that that I'm
Speaker 1: looking for, right, is this Like, I mean I like
Speaker 1: getting paid, right, and I need to get paid. But
Speaker 1: the reality is is at the end of the day,
Speaker 1: I'm really looking for that place where I can just
Speaker 1: knock it out of the park. So anyway, I decided
Speaker 1: that I wanted to be a programmer, right because at MOSY,
Speaker 1: I was still running the support I had hired at
Speaker 1: that point like thirty people to work for me answering
Speaker 1: support issues. But what I really love to do was
Speaker 1: work on this system. And eventually we had built out
Speaker 1: like a full ticketing system.
Speaker 2: We had added in a knowledge base, right.
Speaker 1: We tracked phone calls, I mean the whole nine yards
Speaker 1: because they had brought in an Asterisk phone system which
Speaker 1: ran on my SQL so we could query it from rails, right,
Speaker 1: And so we were tracking all kinds of stuff. And
Speaker 1: I was loving working on this system, and I was
Speaker 1: I enjoy talking to people and helping him out over
Speaker 1: the phone, but it just really wasn't the thing that
Speaker 1: really lit me up. And for the really hairy stuff.
Speaker 1: Since I had been there as long as I had
Speaker 1: been and kind of touched every system, if somebody needed
Speaker 1: to trouble shoot something for one of our larger clients
Speaker 1: across the entire system, I was the person that was
Speaker 1: pulled in and so I was kind of the last
Speaker 1: resort for tech support. And then there were some political things,
Speaker 1: and eventually I kind of got pushed off to the
Speaker 1: side and they put somebody else in charge of the
Speaker 1: support team, at which point I looked at him and said,
Speaker 1: I want to be a programmer.
Speaker 2: What do I do?
Speaker 1: And we kind of compromised and I wound up in QA.
Speaker 1: And I worked in QA for a while, and then
Speaker 1: eventually I left because it just it wasn't worth it.
Speaker 1: They had actually listed a job to hire a third
Speaker 1: person for our QA team, and that person was getting
Speaker 1: paid like twenty or thirty percent more than me, and
Speaker 1: when I could in front of them about it and
Speaker 1: asked them about it, anyway, it's not worth going into.
Speaker 2: But there were some political things that went on, and so.
Speaker 1: I left, and then I kept hearing from the people
Speaker 1: that were working for me about how bad things got afterward.
Speaker 1: But I went on and I worked on another project.
Speaker 1: This was for a lead end company, and there again
Speaker 1: I got to mentor some people. I was, you know,
Speaker 1: I didn't have any no. I went to the consulting
Speaker 1: firm first, and let me tell you that, like this
Speaker 1: was the perfect setup for me to launch my career from.
Speaker 1: So there were a couple of things there, and I
Speaker 1: feel like I've had this in a couple of other places,
Speaker 1: and so I kind of want to talk about the
Speaker 1: commonalities between this and a couple of other places where
Speaker 1: I've worked, because it this is kind of the ideal setup,
Speaker 1: and this is what I'm trying to create with JavaScript Geniuses,
Speaker 1: is to give people all of these things that you
Speaker 1: may or may not be getting wherever you're working. So
Speaker 1: one of the first things that happened is, I guess
Speaker 1: I went in for the interview. And when I went
Speaker 1: in for the interview, I did the kind of the
Speaker 1: who are you and what's your experience interview with the
Speaker 1: general manager of the consulting firm, and then he got
Speaker 1: their senior guy on the phone and we did the
Speaker 1: technical interview over the phone. And so I'm sitting there
Speaker 1: next to this general manager guy and I'm on the
Speaker 1: phone with this other programmer, and so he's asking me questions,
Speaker 1: and of course, right, I have how much experience do
Speaker 1: I have in Ruby on rails? Well whatever I've been
Speaker 1: able to pick up on my own working at Mosey, Right,
Speaker 1: So so I answer the questions, and so he asked me, like,
Speaker 1: what what are design patterns? And I'm like, I have
Speaker 1: no freaking idea.
Speaker 2: Right, So then he explains it to me, and then
Speaker 2: I turn around and I say, oh, I gotcha.
Speaker 1: So like, when rails makes you do things in this way,
Speaker 1: that's a design pattern. He's like, yes, you know. And
Speaker 1: so the interview kind of went like that. And so
Speaker 1: the interview was not like I didn't show up knowing
Speaker 1: all of the things that they wanted me to know.
Speaker 1: I showed up basically with an open mind and was
Speaker 1: willing to learn, and he would explain something to me
Speaker 1: and I would immediately connect it to other things. And
Speaker 1: so I wound up getting that job. I got basically
Speaker 1: a twenty thousand dollars a year raise, and yeah, I
Speaker 1: got to work there with a bunch of other guys. Now,
Speaker 1: a lot of the guys at the company, there were
Speaker 1: like two or three of us that were doing Ruby
Speaker 1: on rails.
Speaker 2: Most of the guys at the company.
Speaker 1: Were doing Java or c sharp, and there were a
Speaker 1: handful of people that were picking up Flash.
Speaker 2: And so.
Speaker 1: The deal was is I got onboarded onto the same
Speaker 1: project as the guy that interviewed me, and so we
Speaker 1: wound up doing I mean, we would pair a program
Speaker 1: quite a bit. If I had any quest sessions about anything,
Speaker 1: I literally would just call him and ask him and
Speaker 1: he would walk.
Speaker 2: Me through it.
Speaker 1: My IT experience allowed me to help out the rest
Speaker 1: of the company with some of their stuff. Right, so
Speaker 1: they had internal servers where they hosted the code using
Speaker 1: SVN subversion, which was the predecessor to GET. Eventually everything
Speaker 1: moved to GET but anyway, so all that work I
Speaker 1: was able to do too. And Yeah, it was just
Speaker 1: kind of an ideal setup because at the end of
Speaker 1: the day, if I if I had something that I
Speaker 1: needed to ask a question about, or I got stuck
Speaker 1: on anything, I had somebody to talk to.
Speaker 2: And when I'm putting.
Speaker 1: Things together for JavaScript geniuses, I want the same thing, right,
Speaker 1: I want people to be able to come We're doing
Speaker 1: weekly calls. I want people to be able to show
Speaker 1: up and say, Hey, I've got a question. I ran
Speaker 1: into this thing with react or express or whatever.
Speaker 2: How do I handle this? How do I learn it?
Speaker 2: How do I fix it? How do I whatever right?
Speaker 1: And be able to have people there to answer their
Speaker 1: question and maybe walk through it, hold their hand through it.
Speaker 2: A little bit so, and that was a major thing.
Speaker 1: And what's funny is is, like I worked for Public Engines.
Speaker 1: We ran crime reports dot com, which is if you
Speaker 1: go there now it does the same thing, but it's
Speaker 1: not the same app.
Speaker 2: But we.
Speaker 1: I worked with David Brady and he helped mentor me
Speaker 1: on a whole bunch of stuff. Right at that point,
Speaker 1: I was I was not in a place where I
Speaker 1: had to ask questions all the time and you know,
Speaker 1: have my hand held on stuff. But occasionally there were
Speaker 1: some things where for example, when I was trying to
Speaker 1: figure out if a point on the map, right, if
Speaker 1: I had latitude and longitude was within the city limits
Speaker 1: of the city that was giving us the crime data, right,
Speaker 1: or if it was within a certain precinct of the city.
Speaker 1: And so he's like, well, this is how we solve it, right,
Speaker 1: And he just kind of explained the algorithm to me,
Speaker 1: and it was up to me to actually build it right.
Speaker 1: So it was stuff like that, or oh wow, I'm
Speaker 1: running into this problem.
Speaker 2: He kept putting things into the tests.
Speaker 1: Right, So I would go home at five and then
Speaker 1: he would stay and work until seven or eight, and
Speaker 1: the test would start failing at six o'clock because we
Speaker 1: were GMT minus six and so the time zone stuff
Speaker 1: was screwing up, right, And so he'd leave a note
Speaker 1: for me in the test, Chuck, fix your crap. And
Speaker 1: so I would go in and I would, you know,
Speaker 1: I would make some changes and the test would pass,
Speaker 1: and so I would go home. And that was like
Speaker 1: a week and then finally, you know, he helped me
Speaker 1: figure out what those issues were, right, And so having
Speaker 1: that level of mentorship and having people that I could
Speaker 1: kind of come along with really helped. The other version
Speaker 1: of this that also made a major difference was I
Speaker 1: started going to the users group, and so Utah had
Speaker 1: a Utah Ruby Users Group. We're starting it up again,
Speaker 1: but at the time we had one in Utah County,
Speaker 1: which is where I lived. But I live basically all
Speaker 1: the way up on the north end and so getting
Speaker 1: to Salt Lake County is not really that big a deal.
Speaker 1: They had another one in Salt Lake County on the
Speaker 1: southern end of Salt Lake County. So again right, both
Speaker 1: of these were within ten twenty minutes of my house.
Speaker 1: They had one downtown, they had one in Davis County
Speaker 1: or Weaver County, I can't remember. And then they had
Speaker 1: one up in Cash County and Logan, which is like
Speaker 1: two or three hours away from here, right, So I
Speaker 1: hadn't go to all of them, but I would go
Speaker 1: to the two that were closest to me and sometimes
Speaker 1: get to downtown, which is half hour away in traffic.
Speaker 1: So just having that, right, and so people would be
Speaker 1: presenting on the latest stuff and you know, showing us
Speaker 1: what they were doing and all of these things, right,
Speaker 1: it was a great place to just go and just
Speaker 1: compare notes. Another thing that worked out for me was
Speaker 1: that in twenty eleven we started the Ruby Rogues podcast,
Speaker 1: and so I wound up on this call every week,
Speaker 1: initially with Aaron Patterson, James Edward Gray, David Brady, Peter Cooper,
Speaker 1: and I think there was somebody else. And then Aaron
Speaker 1: and Peter figured out pretty fast that showing up every
Speaker 1: week was a little bit too much with everything else
Speaker 1: they had going on, and so we wound up with
Speaker 1: Avdy Grimm and Josh Susser came in and replaced those guys,
Speaker 1: and so I was like the junior guy by years
Speaker 1: in my career on a call every week with these guys,
Speaker 1: and then whoever we got in as an expert right,
Speaker 1: and so I could ask all my lower level questions
Speaker 1: and I could get answers to him every week, and
Speaker 1: I was talking to people who were up on the
Speaker 1: latest things in Ruby right. And then six yeah, it
Speaker 1: was eight months later, we started JavaScript jabber right, and
Speaker 1: so I started picking up the same kinds of things
Speaker 1: from there. And so I started a freelancing show at
Speaker 1: the same time, because I had gone freelance in that
Speaker 1: window in September of twenty eleven, and so again I
Speaker 1: was getting that mentorship from guys that.
Speaker 2: Had been doing it a whole lot longer than me.
Speaker 1: And so this is what I'm trying to create with
Speaker 1: having the weekly calls is just to give people, hey, look,
Speaker 1: we're going to bring in experts.
Speaker 2: We're going to have them walk through stuff. Right.
Speaker 1: You'll be able to learn kind of like for what
Speaker 1: I got from the podcast being on the podcast and
Speaker 1: showing up to the users groups. And then you know,
Speaker 1: if you get stuck or have any other questions, right,
Speaker 1: we can stick around afterward. You know, I've scheduled these
Speaker 1: calls to run for an hour and a half, but
Speaker 1: we could stay a little longer if you know, if
Speaker 1: our guest is done answering questions about what they're expert
Speaker 1: in and just see if we can help you with
Speaker 1: whatever you're running into. I've also played off and on
Speaker 1: and it's probably gonna end up as an add on
Speaker 1: for the coaching is having basically where you can text
Speaker 1: me or send me a message on WhatsApp and say, hey, Chuck,
Speaker 1: I'm stuck right, and then I can either answer it
Speaker 1: because I know the answer, or because I've been doing
Speaker 1: the podcast so long, I can reach out to the
Speaker 1: people that I know and say, hey, so and so's
Speaker 1: running into this issue, what do you think right, and
Speaker 1: then they can point me in the right direction I
Speaker 1: can give you an answer. So that's another piece of this,
Speaker 1: right that kind of comes down to that mentorship level.
Speaker 1: So anyway, that was a major thing, just just working
Speaker 1: with Nate and then working with Dave. I actually worked
Speaker 1: with Dave twice. I worked with him on a contract
Speaker 1: later on and got the same kind of mentorship from
Speaker 1: him and a couple of the other guys that were
Speaker 1: working in that space. And that was on a financial
Speaker 1: medical billing app right, So we got the best of
Speaker 1: both worlds. We had to do HIPPA and we had
Speaker 1: to do PCI compliance. But anyway, so that was that
Speaker 1: was major thing for me. I also heard about a
Speaker 1: conference that was going on Mountain West Ruby Conference. Mike
Speaker 1: doesn't run it anymore, but I went out to that
Speaker 1: right and it was in Salt Lake.
Speaker 2: So I just showed up early because I was so
Speaker 2: excited to be there.
Speaker 1: So I remember walking into the Salt Lake City Library
Speaker 1: and sitting down in the auditorium right next to this
Speaker 1: other guy that was sitting there, and you know, so
Speaker 1: we start chatting, you know, and I'm like, yeah, I've
Speaker 1: you know, I'm in my first programming job and you
Speaker 1: know whatever, and so, you know, we start chatting, and
Speaker 1: I was like, Okay, I've got a couple of programming
Speaker 1: questions if you're willing to answer him, because you seem
Speaker 1: like you know what you're doing. I didn't know he
Speaker 1: was speaking at the conference, and so he, you know,
Speaker 1: he answers a bunch of my questions. And then at
Speaker 1: the end I figured out that this is who several
Speaker 1: of my friends were excited to see at the conference.
Speaker 2: It was Jim Wyrick.
Speaker 1: And in the Ruby community, he had written about half
Speaker 1: of the utilities to do the things that I was
Speaker 1: asking him about and then you know, just being around people.
Speaker 1: I got invited to go to dinner with a bunch
Speaker 1: of you know, the speakers and stuff like that, just
Speaker 1: because I knew enough of the right people to get
Speaker 1: in the right rooms. And I have to say, I mean, really,
Speaker 1: a lot of this is stuff that you all can do.
Speaker 2: And I'm also hoping to be able to put together
Speaker 2: some of these.
Speaker 1: Summits so that you know, if you can't afford to
Speaker 1: travel to wherever the Ruby or the JavaScript conference is, right,
Speaker 1: you can't make it to the React conference.
Speaker 2: You can't make it to the Angular conference. You can't, right,
Speaker 2: It's like.
Speaker 1: Hey, look, I just I can't afford the airfare, I
Speaker 1: can't afford to take the time off. I can't afford
Speaker 1: whatever right to give you the same kinds of opportunities
Speaker 1: where it's hey, look, we're gonna you know, we're gonna
Speaker 1: have talks. We're gonna have a hallway track, right, We're
Speaker 1: gonna have you know, zoom calls where it's effectively you know,
Speaker 1: I'm gonna sit down with a handful of other people
Speaker 1: and we're just gonna chat over dinner, right, And so
Speaker 1: we'll have some dinner groups and things like that, you know,
Speaker 1: And so I'm looking to put that together too. That
Speaker 1: won't be part of the membership, but you'll get a
Speaker 1: discount if you have a membership, but just create those
Speaker 1: right in the Ruby community. I'm looking to do the
Speaker 1: same thing because Ruby Central, who has run Ruby Coff
Speaker 1: and rails comp for the last I don't even know
Speaker 1: how many years, twenty years, they announced that they weren't
Speaker 1: going to run rails Comf anymore, that this year twenty
Speaker 1: twenty five is going to be the last year. And
Speaker 1: so what they said is we're not going to do
Speaker 1: a Ruby coff this year, We're just doing rails cop
Speaker 1: and then in twenty twenty six we're going to do
Speaker 1: Ruby Cof only. And so what I want to do
Speaker 1: is I want to put together a summit in the
Speaker 1: fall as a kind of a replacement for Ruby Comf
Speaker 1: this year and just say hey, look if you want
Speaker 1: to come, right. But the other thing is is I
Speaker 1: look at some of the other JavaScript conferences out there,
Speaker 1: and I just want to make a lot more of that,
Speaker 1: a lot more accessible, and not just on the level
Speaker 1: of hey you can watch the talks, right, I really
Speaker 1: want to give you an opportunity to go to the
Speaker 1: conference and rub shoulders with people as much as you
Speaker 1: can in a virtual environment. So anyway, but these are
Speaker 1: the major wins that I got from this. And then
Speaker 1: from there, as you know, Ruby Rogues took off as
Speaker 1: some of this other stuff kind of came around, and
Speaker 1: then I was able to go to some of the
Speaker 1: bigger conferences.
Speaker 2: Right.
Speaker 1: Incidentally, my podcasting careers kind of followed the same trajectory
Speaker 1: in a lot of ways because I got in with
Speaker 1: enough of the right people early and had enough of
Speaker 1: the right opportunities.
Speaker 2: To go to some of those big events.
Speaker 1: I actually was one of the people that funded podcast Movement,
Speaker 1: which is the big podcasting conference now when it started,
Speaker 1: what twenty fourteen right in Dallas, Texas, right, and so
Speaker 1: I got to rub shoulders with a whole bunch of them.
Speaker 1: I already knew some of the people in the space
Speaker 1: because we'd already been talking, and so again I just
Speaker 1: I really want to give people the opportunity to get
Speaker 1: to get to know each other and find these opportunities.
Speaker 2: So, you know, let's fast forward a little bit.
Speaker 1: You know, one of the high end low points of
Speaker 1: my more recent career was I worked at Morgan Stanley,
Speaker 1: and because I'd done the podcast and because I had
Speaker 1: been involved in the local community. It was right during
Speaker 1: the COVID stuff, so everybody was working from home. Morgan
Speaker 1: Stanley kept telling us that they were going to have
Speaker 1: us come back to the office, but by the time
Speaker 1: I left, they still hadn't and there were some political
Speaker 1: things going on there too, And I'm not going to
Speaker 1: get into all of that other than to say that
Speaker 1: eventually we had enough people leave from the group that
Speaker 1: I was working in that I had essentially taken on
Speaker 1: project management, team lead and architecture for the application and
Speaker 1: was just trying to.
Speaker 2: Get it over the line because.
Speaker 1: It had started as a groovy on grails app and
Speaker 1: they had never fully transitioned it, and.
Speaker 2: So I kept telling them, look, we lost the guy.
Speaker 1: That had written a lot of it in Grails, and
Speaker 1: so I was saying, look, we just need to transition
Speaker 1: this thing so we can even just maintain it. And
Speaker 1: so you know, I was setting the priorities and working
Speaker 1: through the processes and stuff until I eventually let them too.
Speaker 1: But when I went in for the interview, the interview
Speaker 1: essentially was them asking me all the questions about all
Speaker 1: the people I knew from the podcast and talking to
Speaker 1: me about what it was like to run the podcast
Speaker 1: and stuff like that, they knew I was already capable.
Speaker 1: And so that's one other thing that I would like
Speaker 1: to kind of build into things, is to give you
Speaker 1: all the opportunity to kind of raise your flag and
Speaker 1: say say, hey, I'm capable of doing this stuff, and
Speaker 1: you can know that by listening to my podcast or
Speaker 1: watching my screencasts or things like.
Speaker 2: That, so that you can level up.
Speaker 1: And I guess I need to kind of rewind a
Speaker 1: little bit because back in the early days of my
Speaker 1: career there were screencast series. One in particular was Rails Casts,
Speaker 1: and Ryan Bates was putting those out.
Speaker 2: He started with one a week.
Speaker 1: He eventually went to two a week if you wanted
Speaker 1: to pay for the premium. I never quite understood why
Speaker 1: he stopped doing it, because he was, you know that
Speaker 1: two videos a week. He had like sixty thousand people
Speaker 1: paying him, and so, you know, anyway, whatever the reasons were,
Speaker 1: it was a huge, huge boon to the community, and
Speaker 1: it made it really easy for people to figure out, Okay,
Speaker 1: I want this kind of a thing. Here are a
Speaker 1: couple of videos I can watch, and there are video
Speaker 1: series out there. Now, what's funny to.
Speaker 2: Me is I don't see as many of them in JavaScript.
Speaker 1: You know, I see courses on things like plural Site,
Speaker 1: but I don't see anybody just putting out a weekly
Speaker 1: video every week for something for JavaScript or React or anything.
Speaker 1: And so I'm looking to create that as well. Right,
Speaker 1: So for JavaScript geniuses, I want to build an application,
Speaker 1: I want to put it up on cloud Flare workers
Speaker 1: I'm looking at using super base on the back end. Right,
Speaker 1: So it's all mostly just front end front end dish
Speaker 1: right as much as possible, and just kind of make
Speaker 1: it as d dost proof as possible. I'm fairly involved
Speaker 1: in Utah politics, and when we ran our caucus night,
Speaker 1: what we ran into was somebody who doesn't like the
Speaker 1: caucus system de dosst our registration app, and so there
Speaker 1: were some places that just had some issues getting people
Speaker 1: registered for caucus that we're legitimately there as members of
Speaker 1: the party, and so I just want to show people
Speaker 1: how to solve that.
Speaker 2: It's like, hey, look, you know, if you.
Speaker 1: Have a part of your app that you want to
Speaker 1: peel off and make it so that it'll just run
Speaker 1: no matter who's throwing what at it?
Speaker 2: You know, here's how you can use cloud Flare workers
Speaker 2: to do it.
Speaker 1: I also want to dive a whole bunch into the
Speaker 1: capabilities that are being built in now on the browsers
Speaker 1: and on mobile browsers so that you can use like
Speaker 1: Bluetooth and location services and stuff like that, and just
Speaker 1: show you how to build all that stuff in so
Speaker 1: that you have the PWA Progressive Web app that does
Speaker 1: a lot of this work for you, so that maybe
Speaker 1: you do or don't need a native mobile app, and
Speaker 1: then if you do need one, then go bring something
Speaker 1: in like Turbo Native or Cordova or something like that
Speaker 1: where you can put a wrapper around your app and
Speaker 1: get all that functionality without having to completely rewrite it
Speaker 1: in something like React Native. But then at the same
Speaker 1: time there are advantages to React Native, and so if
Speaker 1: those advantages matter to you, you know, it gets into
Speaker 1: that area. Well, it depends, right, Should I use this
Speaker 1: or that? Well it depends right. And so give people
Speaker 1: the capability of understanding, hey, you know you can do this,
Speaker 1: you can do that, you can build these kinds of apps. Yeah,
Speaker 1: I would love to just show people what you can
Speaker 1: do as a programmer and just just open the gates
Speaker 1: on all that stuff.
Speaker 2: So that's the big direction I'm headed in. But yeah,
Speaker 2: at the end of the day, it.
Speaker 1: Also gives me the opportunity to learn some of this
Speaker 1: stuff that I want to learn that I just it's like, Okay,
Speaker 1: well I can go build a toy app. But I've
Speaker 1: already explained to you that building a toy app just
Speaker 1: isn't my jam, right. I want to build a real
Speaker 1: app that makes a real difference for real people and
Speaker 1: be able to mentor other people by showing, hey, this
Speaker 1: is how I did it right that if you're stuck that,
Speaker 1: well I got stuck there too, here's how you.
Speaker 2: On stick it.
Speaker 1: And so anyway, at the end of the day, that's
Speaker 1: that's the thing that I'm looking to to build. So
Speaker 1: I don't know that I have a whole lot else
Speaker 1: to to really explain. I mean, everything's up at JavaScript
Speaker 1: Geniuses dot com. And so I'm just gonna roll in.
Speaker 1: I'm gonna throw you some picks and then we will
Speaker 1: we'll call it a day. So I always do that
Speaker 1: board game pick and so one of the picks I
Speaker 1: want to pick this time is called Groundhog Day.
Speaker 2: It's based on the movie.
Speaker 1: So if you've ever seen Groundhog Day of the movie, right,
Speaker 1: he wakes up every day and it he kind of
Speaker 1: has to learn a new skill until he eventually has
Speaker 1: the perfect day, right, and then and then he uh
Speaker 1: and then he graduates, I guess, and.
Speaker 2: And and life goes on. Right.
Speaker 1: He gets the girl, he does the thing for work,
Speaker 1: he gets all that stuff together.
Speaker 2: So it's a pretty simple game board game.
Speaker 1: Keek has it as a way at a weight of
Speaker 1: one point two two out of five, so, right, pretty simple,
Speaker 1: pretty approachable game. I think we played it two or
Speaker 1: three times in an hour, so, I mean just and
Speaker 1: the first time was basically two of my friends explaining
Speaker 1: to the rest of us how to play it.
Speaker 2: There were five of us playing, and yeah, it was.
Speaker 2: It was pretty awesome. So effectively, what you wind up
Speaker 2: doing is.
Speaker 1: You have so many days to beat the game, right,
Speaker 1: I think they're like eight, eight or ten days, right,
Speaker 1: And each day you get fewer and fewer cards that
Speaker 1: you can play to have the perfect day.
Speaker 2: And the perfect day is you play.
Speaker 1: All red cards, and all the red cards are worth
Speaker 1: four stars, and so each day you have to get
Speaker 1: more stars than the previous day, right, so the gray
Speaker 1: cards have zero stars, the the blue cards have one star,
Speaker 1: the what was it orange cards had two stars, and
Speaker 1: then there were there was another color that had three
Speaker 1: stars and they were yellow and so or hearts. They
Speaker 1: were hearts, not stars, but anyway, so each day has
Speaker 1: to have progressively more hearts. When you play a card
Speaker 1: on a day, it has to be higher than the
Speaker 1: previous card played on that day. There's six cards in
Speaker 1: a day and anyway, so so you kind of play
Speaker 1: off all your lower value cards first, and there's you
Speaker 1: don't take turns. So if you've got the next so
Speaker 1: you know, somebody plays the one of gray and you
Speaker 1: have the two of gray, you just played the two
Speaker 1: of gray, And I mean that's kind of how it
Speaker 1: all goes. So you just play it out and try
Speaker 1: and get that perfect day. It took us a couple
Speaker 1: of tries to kind to really figure it out, because
Speaker 1: if nobody has a card.
Speaker 2: That you can play to complete the day, then you lose.
Speaker 1: If you can't make it add up to more hearts
Speaker 1: than the previous day, you lose, right, And some of
Speaker 1: the yellow cards give you more red cards, and so
Speaker 1: you can't win without playing some of the yellow cards.
Speaker 2: But anyway, if you don't solve it by that last day,
Speaker 2: you lose.
Speaker 1: And basically the way that we played it was that
Speaker 1: we didn't we wouldn't play any of the red cards
Speaker 1: until we felt like and you can't talk to each other,
Speaker 1: so you just kind of have to guess. But you know,
Speaker 1: we wouldn't play the red cards until we felt like
Speaker 1: we had a decent shot of making it based on
Speaker 1: where everybody was at, so you know, everybody's kind of
Speaker 1: calculating the odds in their head. Okay, do we have
Speaker 1: seven red cards between all of our hands, and you know,
Speaker 1: what are the odds that we can get them out
Speaker 1: in the right order. So anyway, it was fun. It
Speaker 1: was really really fun. I really enjoyed it. So I'm
Speaker 1: gonna go ahead and pick Groundhog Day.
Speaker 2: The game.
Speaker 1: And the movie's funny too, so definitely definitely worth checking
Speaker 1: out there. So let me paste it in here so
Speaker 1: that we can keep track of it. But yeah, and
Speaker 1: then we played more of the Gang. I think I
Speaker 1: picked that last week, which is the kind of the
Speaker 1: poker game where you're playing Texas Holding poker as a
Speaker 1: team and you're trying to get everybody in the order
Speaker 1: you know, from the best hand to the worst hand. Incidentally,
Speaker 1: when we played it this last time, there were five
Speaker 1: of us playing and one of the hands, one guy
Speaker 1: had like two pair, and then everybody else's hand was
Speaker 1: effectively the same, and so all that had really mattered
Speaker 1: was that the first the guy that took the five
Speaker 1: star chip got the five star chip, because the rest
Speaker 1: of us.
Speaker 2: What you do is you you score your.
Speaker 1: Hand based on Okay, I've got this many pairs or
Speaker 1: you know, and and then the number of the pairs
Speaker 1: and then it's just whatever your higher cards are.
Speaker 2: But it turned out that.
Speaker 1: The the the hand that was on the table was
Speaker 1: the best hand for four of us, right the cards
Speaker 1: that we had in our in our pocket, the two
Speaker 1: pocket cards didn't change the hand we had because they
Speaker 1: were so low. And so that was kind of funny
Speaker 1: because we were like, okay, who's next, and it was like, well,
Speaker 1: he's next because he has the higher the next high
Speaker 1: you know, he has the next highest card. But then
Speaker 1: I was like, no, because his highest card doesn't figure
Speaker 1: onto the texas hold the hand anyway, So that was fun.
Speaker 1: The gang is a fun one. A couple of other picks.
Speaker 1: My wife and I have and watching The Night Agent.
Speaker 2: I don't.
Speaker 1: It's funny because a lot of times, if I can
Speaker 1: find some criticism like what I have for the show,
Speaker 1: I tend to not like it as much. But I'm
Speaker 1: really enjoying this one in spite of it. What I'm
Speaker 1: finding is that a lot of the stuff in this
Speaker 1: show is fairly predictable, right, It's fairly formulaic.
Speaker 2: But I'm enjoying it anyway, So definitely check out The
Speaker 2: Night Agent. We're watching the second season.
Speaker 1: I feel like the first season was a little bit
Speaker 1: less formulaic, just because the main protagonist wasn't like a
Speaker 1: trained operative, and so, you know, there was a lot
Speaker 1: of luck by the seat of your pants kind of stuff.
Speaker 1: So anyway, what else do I have to pick? I
Speaker 1: think that's about all I've got, So I'm gonna go
Speaker 1: ahead and wrap it up here. I really appreciate you
Speaker 1: sitting through this episode, and until next time, next out,
Speaker 1: mm hmm.