Under the Radar

152: Removing the Bumpers


00:00:00   Welcome to Under the Radar, a show about independent iOS app development.

00:00:04   I'm Marco Arment.

00:00:05   And I'm David Smith.

00:00:06   Under the Radar is never longer than 30 minutes, so let's get started.

00:00:10   So today I wanted to talk about an experience that I had this last weekend that I think

00:00:16   taught me some interesting lessons as well as just was kind of a fun, silly experience.

00:00:21   And at a high level, I think I'm going to talk, it's talking about the usefulness of

00:00:26   having kind of messy development experiences.

00:00:29   And for me, this got started when I was-- so my son, who's nine, I've been kind of working

00:00:36   through exposing him to programming.

00:00:38   Like it's always a bit perilous when you're trying to push your chosen career onto your

00:00:42   children.

00:00:43   But he likes it, enjoys it.

00:00:45   He says if you ask him what he wants to be when he grows up, he wants to be an Apple

00:00:48   developer.

00:00:49   So like, he has interest as well as my interest.

00:00:52   But we've been doing a lot of work in Swift Playgrounds.

00:00:56   And the great content that Apple put out there, and it's a lot of fun, and he's been kind

00:01:00   of working on it.

00:01:01   But I kind of had this realization that in my experience learning to program, a lot of

00:01:07   my formative time learning to code wasn't in a classroom, wasn't in a clean, kind of

00:01:14   like straightforward, sanitized environment.

00:01:17   It was very messy, for lack of a better word.

00:01:19   There was a lot of just kind of like duct tape and opening-- my first programming was

00:01:24   in QBasic.

00:01:25   And it's like, I just remembered, you just try stuff, and it doesn't work, and you don't

00:01:29   know why.

00:01:30   And then you just try more stuff.

00:01:31   And there's that kind of learning to push through when things don't work.

00:01:36   And there's a messiness about that that I think can lead to both an important set of

00:01:41   skills that are important to develop as a programmer and is also just like-- I don't

00:01:48   know.

00:01:49   It's not like I want to make sure that he has the same experience that I had.

00:01:52   But I think it's an important part.

00:01:53   It gives you the full picture of what programming is like, because programming is usually not

00:01:59   like using the great content in Swift Playgrounds, where it's very clean and precise.

00:02:04   And if you have a syntax error, it sort of points it right out to you.

00:02:07   And it's very sort of clean.

00:02:09   It's sort of like when you're going bowling, and they put the bumpers down on the side

00:02:14   of the lane.

00:02:15   And you really can't go wrong too badly.

00:02:19   And so I wanted to kind of give him that experience.

00:02:20   And I was trying to think about a way to do that that would be appropriate for his level

00:02:26   and where he is and also just be kind of fun.

00:02:28   And so this last weekend, we worked on a little project together.

00:02:31   And this project was coming out of something that he'd been saying or getting around Christmas,

00:02:35   and he was talking about what he wants.

00:02:37   And the thing that he wanted most was a time zone clock, which if my son loves time zones

00:02:43   and apparently he wants to become a programmer, I've yet to break the news to him that he's

00:02:48   in for a tough time or his love of time zones may diminish as his interest in programming

00:02:54   increases.

00:02:55   But that's what he wanted.

00:02:56   Well, at least you know he has a sure job at Apple.

00:02:59   Yeah.

00:03:00   It's like time zones are a rough thing.

00:03:03   But I didn't want to break, sort of, limit that too much.

00:03:06   He wanted a clock that you could push a button and it would show you times around the world,

00:03:12   basically.

00:03:13   And so at first, we're going to Amazon or whatever, and like, is this a thing that exists?

00:03:18   Like, can you buy a time zone clock?

00:03:20   And you really can't.

00:03:21   Like, they just don't exist as best as we can tell.

00:03:23   And maybe they do it at some degree.

00:03:26   But the closest we could get is like those crazy clocks that you see in like the back

00:03:30   of newsrooms or like situation rooms where you have like 12 analog clocks in a row, each

00:03:37   showing a different time.

00:03:38   Those are awesome.

00:03:39   Which is great, but it's not really what he wants.

00:03:42   What you want is called a world timer, but go ahead.

00:03:44   Well, so anyway, we thought this would be a fun project.

00:03:48   Like, well, why don't we make one?

00:03:50   And at first, I was like going down the road of like, I wonder like how if we made it like

00:03:55   with like Arduino and like really low level stuff.

00:03:58   And I very quickly realized like this is like I ejected out of that idea because I got very

00:04:04   low level to like trying to like, you know, solve solar things together.

00:04:09   And like it was no good.

00:04:10   And I was like, what about something like a Raspberry Pi?

00:04:13   Something that like is a small, simple, low power computer that I could like put a little

00:04:18   display on and ended up digging around for a while.

00:04:22   Like that Raspberry Pi world is both awesome and terrifying and that there is like infinite

00:04:27   diversity and things for how you hook things together and like options for ways you can

00:04:32   do.

00:04:33   But eventually I found something that I could get a little Raspberry Pi Zero that came with

00:04:36   a little OLED screen.

00:04:38   And on the OLED screen, there's like a on one side, there's a directional sort of

00:04:44   set joystick and two buttons on the other side.

00:04:46   So this was perfect.

00:04:47   It was like a little project that we could do to make his timezone clock.

00:04:52   And it was like, I'll talk about a little more of the experience in a minute.

00:04:55   But I think it was like I can say having now done this with him, like we built this, this

00:04:59   awesome clock is it was what I was hoping for.

00:05:03   It was messy.

00:05:04   It was really problematic in a lot of ways.

00:05:06   And I think it was helpful for me to be able to go through the experience with him that

00:05:10   I didn't like, just like let him loose and be like, you know, just like try all this

00:05:14   crazy stuff until it works.

00:05:16   But I was able to work through it in a fun way.

00:05:19   And I think that's an important lesson that like there's sometimes a lot of what we

00:05:22   do is not clean is not sanitized is not something that like what makes you a good developer

00:05:29   is sometimes how you can how well you can program when the bumpers are up.

00:05:34   - Yeah, I have a lot of fun when I'm forced to program without those bumpers.

00:05:40   And I know not everybody finds that fun.

00:05:43   But for me, like I consider that kind of thing like a fun challenge, an intellectual challenge.

00:05:48   Raspberry Pi for me was like I did a few small household projects with Raspberry Pis last

00:05:54   year or earlier this year, I forget when.

00:05:56   And I loved it.

00:05:58   I absolutely loved it because, you know, I already knew how to do basic Linux system

00:06:03   administration.

00:06:04   And a Raspberry Pi is just a tiny like $30 Linux computer that runs in your house and

00:06:09   you can put whatever you want on it.

00:06:11   And it's kind of amazing like that the computer, you know, quote the like the entire computer

00:06:17   costs almost nothing relative to, you know, to, you know, Western prices of anything like

00:06:23   like I've bought vitamins that cost more than my Raspberry Pi.

00:06:27   So like to have something like that, that is like, yeah, it's a little bit harder to

00:06:32   use.

00:06:33   It's a little bit lower level.

00:06:34   I did actually do some soldering to to like wire up some LEDs to something.

00:06:38   You're braver than I was.

00:06:39   I did get all the pre-made stuff that I could get.

00:06:42   Oh, I did too.

00:06:43   Like, but there was a there was like one thing.

00:06:44   Oh, it was an RFID board that I wanted to like I want to attach an RFID board to this

00:06:49   thing.

00:06:50   Like the only ones I could find that work with the RFID tags that I got was like I needed

00:06:54   to solder like six wires.

00:06:56   And I did.

00:06:57   And I broke a Raspberry Pi doing it.

00:06:59   And so I bought another one for another like $25, $30, whatever it was.

00:07:05   And the second one I did correctly.

00:07:06   So that was okay.

00:07:09   And because I'm not good at soldering, it turns out.

00:07:13   But it was fine.

00:07:14   Like and it's it was kind of fun.

00:07:15   First of all, it was kind of fun to fail and to fail so embarrassingly like, oh, well, I

00:07:20   scorched this trace off the board and now it doesn't work anymore.

00:07:24   So there's a problem.

00:07:27   It was also nice that I you know, I hadn't killed like $1,000 computer or like, you know,

00:07:32   a $700 iPad or anything like that.

00:07:35   And yeah, it was it's nice because, you know, like as you mentioned, like we so often have

00:07:40   all these modern tools and luxuries and it makes it very easy on us in certain ways.

00:07:46   And not to say the programming has gotten easy, but in certain ways it has become easier

00:07:52   or certain classes of mistakes are pretty much impossible to make anymore.

00:07:56   Now we can make new new kinds of mistakes anyway, but it's kind of like like when you

00:08:01   when you like work out a muscle in your body accidentally that you have never really used

00:08:06   before or that you haven't used in a long time.

00:08:09   You know, and and like you get really sore in some like, you know, embarrassing way like,

00:08:14   oh, I was playing we tennis and I got sore because I was swung my arm and just this right

00:08:20   way that I haven't swung my arm in five years or whatever and you get sore from like playing

00:08:24   a video game.

00:08:25   It's it's kind of like that we're like we have all these like atrophied programming

00:08:29   muscles from types of mistakes types of programming types of difficulties that we don't really

00:08:36   have to deal with most of the time anymore.

00:08:38   And so to be thrown back into that and to exercise those atrophied muscles does feel

00:08:43   good on some level and it is something that probably for like the overall health of your

00:08:47   programming mind.

00:08:49   You probably should be forced to deal with some of these things every once in a while.

00:08:53   And I think it isn't that like this experience is like it isn't the difficulty of it or like

00:08:59   the messiness of it that makes that is like intrinsically valuable that isn't like we

00:09:03   want to always be working in messy things.

00:09:04   I think there is but I think the way you described it there is that like there's elements of

00:09:09   being a well rounded developer that are enhanced by doing this kind of like more kind of in

00:09:17   the weeds messy like things don't quite work together like you kind of are like patching

00:09:20   things together and like hoping this works so this doesn't work and that like that that

00:09:25   it I think in many ways it is it's forcing you to be creative in a technical way that

00:09:32   is a useful thing practically useful muscle to develop that doesn't always get developed

00:09:39   otherwise.

00:09:40   I mean so like some examples like some of the really funny things that we had to deal

00:09:43   with like I have a brutalist thesis we went because it's just I mean I had a blast doing

00:09:47   it but it was just kind of funny.

00:09:48   Like the first one was so the Raspberry Pi in order its display is via HDMI and so at

00:09:56   first when I bought it I think I can plug it into a TV and like we can just use that

00:10:00   and like that'll be fine but then I remembered that in my in my garage in the I haven't quite

00:10:06   like I have a whole I have like a box of technology that I've said I'm going to like take for

00:10:11   recycling but I have a hard time recycling old technology because I liked like there's

00:10:16   in the back of my mind well one day I might need it one day I might use it and I remember

00:10:19   that in this bag of things and I'm trying really hard to not internalize that this was

00:10:22   actually successful I went out to the went out to the garage and I found a really old

00:10:27   monitor that I had that I thought might have an HDMI in.

00:10:31   I take this monitor out of the box I go and put it on my desk and then I remember why

00:10:35   I stopped using this monitor and that's because the controls like the buttons on the front

00:10:40   that turn it on that like part of the monitor had just physically broken like it just kind

00:10:45   of like you know like the button the button connector had broken and so you couldn't turn

00:10:50   the monitor on but I'm in this mode where I'm like you know like rolling up my sleeves

00:10:55   so I like a pull open the thing and there's there's just like this collection of wires

00:11:01   and there's six little control wires that presumably like went into some kind of board

00:11:05   that are now just hanging free and so the first thing I did is like well okay so let's

00:11:09   see if I can turn this on and so I just sat there sequentially like shorting the wires

00:11:13   against each other and like I have no idea which like combination gave up at first I

00:11:19   was trying to be systematic about it and eventually I just kind of like took all the wires and

00:11:22   just like smushed them together randomly for two or three minutes and eventually the monitor

00:11:26   turned on like I got the right combination of wires that like I should you know like

00:11:30   this one was the power button like these two wires you know touching each other so first

00:11:35   thing like I felt really like this is great this is messy I'm in the weeds like shorting

00:11:39   manually shorting out wires to turn on my monitor then the next thing was trying to

00:11:43   get the keyboard and mouse to work on the Raspberry Pi which for some maybe it's just

00:11:48   like the stuff I had or the setup I had but it was incredibly challenging to do so as

00:11:54   best I could tell is like the way you do this is you have you need to have a powered USB

00:11:59   hub that you plug into the Raspberry Pi because it can't power the the mouse or keyboard itself

00:12:04   like okay that's fine so I get I take out my my I have like three of those in the closet

00:12:08   because I can never get rid of technology I try the first one mouse or keyboard won't

00:12:13   work at all try another one doesn't work try a third one and finally I was able to get

00:12:19   the keyboard to work the mouse still wouldn't be recognized but I could get a keyboard to

00:12:24   work so like okay great I mean like this is a massive improvement this is Linux you don't

00:12:29   really need a mouse in Linux but you sort of do but I got to that there unfortunately

00:12:35   I then discovered that the keyboard was in the wrong layout or like localization which

00:12:42   was awkward because there were two characters that I could not type and that is the pipe

00:12:49   and the quote characters which in Linux the pipe character is something you actually use

00:12:56   quite a lot and specifically I was when I was trying to debug all of the keyboard stuff

00:13:01   and the mouse stuff to work out what was going on it's like I was doing a lot of you know

00:13:05   like dumping the log file and usually I would like to pipe that to grep but I couldn't because

00:13:12   there was no pipe on my keyboard even if I pushed if I push the pipe key it's like I

00:13:16   got you know an ampersand or something and it was just maddening eventually I was able

00:13:21   to like with key work out how to go into the menu system and re-map that to be correct

00:13:28   and eventually then I was able to use just the keyboard to turn on VNC and then from

00:13:32   VNC you know once I got VNC turned on I could work out how to get VNC connecting after I

00:13:37   manually assigned an IP address to my computer the Raspberry Pi and then I was off to the

00:13:42   races and now I have a fully functional computer that I can just you know VNC in from my big

00:13:47   Mac but I just love that experience like it's so weird that it was so frustrating in a lot

00:13:53   of ways but it was like frustrating in a way that felt like I was like an explorer I don't

00:13:59   know it's a bit weird when you say it but I felt like I was you have like really having

00:14:03   to solve these problems that I know are solvable that are totally out of something that I normally

00:14:08   do and it's not like I'm solving like fitness sinking problems or you know the usual stuff

00:14:12   that I have to deal with it's these are just kind of like random silly technical problems

00:14:17   and I was able to you know experience sort of show my son kind of that this is what you

00:14:22   know being a programmer sometimes like that things just like don't quite work and you

00:14:25   just kind of keep trying things until they work and but it was just kind of a fun experience

00:14:30   as a result.

00:14:31   We are brought to you this week by Squarespace. Make your next move with a beautiful website

00:14:36   from Squarespace. They'll let you easily create a website for your next idea with a unique

00:14:41   domain, more wedding templates and so much more. Whether you want to create an online

00:14:45   store or portfolio, a blog or a podcast, Squarespace is the all-in-one platform that lets you do

00:14:52   any of that and there's nothing to install, no patches or upgrades to worry about because

00:14:57   Squarespace has all that covered for you. If you need any help they have award-winning

00:15:01   24/7 customer support and while you're building your site you can quickly and easily grab

00:15:06   a unique domain name as well. They have easy easy to use easy to modify templates. These

00:15:11   are beautifully designed for you to show off your great ideas and you can very easily customize

00:15:16   them to whatever you want as well. Squarespace plans start at just $12 a month and you can

00:15:22   start a free trial with no credit card required by going to squarespace.com/radar. When you

00:15:28   decide to sign up use the offer code radar to get 10% off your first purchase of a website

00:15:32   or domain and to show your support for under the radar. So once again that is squarespace.com/radar

00:15:38   and code radar to get 10% off your first purchase. We thank Squarespace for their support. Squarespace,

00:15:44   make your next move, make your next website.

00:15:46   See I think a lot of the value in doing these kinds of you know like different projects

00:15:52   or like removing some of the safeties and everything is that you end up not only exercising

00:15:58   muscles that you haven't exercised in a while but also you you do along the way just

00:16:03   pick up skills or you pick up new abilities or you pick up familiarity with new tools

00:16:09   and you never know when that can come in handy. Like when I was doing my my Raspberry Pi experimentation

00:16:16   in order to interact with this RFID board I had to use a C library that like you know

00:16:21   was its driver basically and I think there was a Python option too and like and I didn't

00:16:28   know any pythons but I could have I could have used that to learn Python. I didn't.

00:16:33   I instead used the C interface and I used it to learn this crazy C driver for this type

00:16:38   of hardware I'd never used before and now if I ever need to do some project that involves

00:16:43   reading RFID tags I have that skill and that may seem right now like that's probably

00:16:48   not going to happen when developing a podcast player but like you never know what what opportunities

00:16:53   or what challenges or what needs will present themselves down the road. You know like in

00:16:56   your case you know you just learned a whole lot about configuring the physical side of

00:17:02   Linux server that you didn't do before and at some point maybe you need that. At some

00:17:07   point maybe economics of server hosting change and you want to co-locate something and you

00:17:11   need to deal with some kind of physical thing when you're setting it up and you can now

00:17:13   do that you know you never know and even if even if these kind of like low-level specific

00:17:19   like relatable transfers of skills don't happen by you doing all that you've gotten

00:17:25   better at Linux. By me doing my RFID thing I got better at C and you know so even at

00:17:32   a bigger level these skills are useful you know you are building up skills and experiences

00:17:39   that you might not think you need right now but at some point in the future that may come

00:17:44   up and you'll be happy that you have the skill. Yeah I think there is so true that

00:17:50   there are countless times where I've learned something that eventually that later on becomes

00:17:56   useful in the future and I think the biggest way that it often becomes useful is sort of

00:18:01   what you're saying is like it isn't necessarily that that that specific thing is going to

00:18:05   be you know come up in your life that like in your development of Overcast you're going

00:18:10   to need to use a C library to recognize RFID tags like that very specific narrow thing

00:18:18   is something that maybe doesn't you know come up into your future but I feel like

00:18:22   what often happens is the exposure to this type of thing means that there is some point

00:18:28   in the future there's a new class of solution to the problem that I'm trying to solve

00:18:33   that I consider as a result because until you have experienced or exposed yourself to

00:18:38   something it is like you know it is totally just like black to you you have no sense of

00:18:44   definition of what that like what's the complexity of that have no sense of like how you would

00:18:49   even get started you know and so often the difficulty in a project is knowing where to

00:18:53   start and I feel like these experiences are these things that then like these it's just

00:18:59   all of a sudden now you have a new door that you can walk through for a particular problem

00:19:02   and it's like it may not be the exact same thing but you consider a solution that you

00:19:06   wish wouldn't consider previously you know and it's a skill that you just kind of have

00:19:11   in the back of your mind that isn't it's like if anything it's just making you less

00:19:14   scared to try new things that like for me I ended up going down the Python route for

00:19:20   the same kind of thing where like I needed to do some you know some programming for this

00:19:25   display board and it's like I took I I'd never used Python before like I heard a lot

00:19:30   about it and then route and for a while like I was like I'm a before I was a Apple developer

00:19:35   I did a lot of Ruby development and like for a while that was kind of like Ruby and Python

00:19:40   were these you know like the two heads of the like the scripting language race or whatever

00:19:45   like they were the two big ones I'd never touched Python all I knew in my mind is that

00:19:49   indentation mattered like that was all I had for how Python worked but now like I've written

00:19:55   some Python like not a lot but I wrote some and it's not you know it's not completely opaque

00:20:00   to me it's like what that's like what the experience is like how hard it is to deal

00:20:04   with indentation being important and like it's it's a weird thing that now if I hit

00:20:09   a situation where I run into something and one of the options is you know it's like oh

00:20:14   here's this thing in Python like I have a sense of how that works I have a sense of

00:20:18   what that might be and I think most importantly I'd be open to a new class of solutions to

00:20:23   a problem that previously I might be closed to.

00:20:26   Yeah and I like how you said a minute ago that like it you like you didn't really know

00:20:30   where to start with some of these things like to me so and I don't know how common this

00:20:34   is but I would imagine it's you know at least it's probably not at least not just me to

00:20:39   me like it's when I when I'm totally unfamiliar with something I always overestimate how difficult

00:20:47   it would be to use or overestimate how difficult it would be to get started right and so like

00:20:52   when I had never used a Raspberry Pi before I like there were a few things that I'm like

00:20:57   oh I like I would like solution X Y or Z like like one of the examples is I had some like

00:21:03   smart outlet plug things that were not homekit compatible but there's this project called

00:21:09   home bridge that allows you it runs on Linux I think and it allows you to to basically

00:21:17   you know make a bridge between other types of home automation devices and homekit when

00:21:22   those devices aren't themselves compatible and let's you do all sorts of other stuff

00:21:25   as well and I had heard about this from our friend Federico fatigue she and a few others

00:21:29   and I just I'm but and it's like oh you have to run on a Raspberry Pi like well I don't

00:21:34   know how to use a Raspberry Pi I don't want to deal with that I don't want to learn all

00:21:36   that now that sounds like it's really complicated and it turns out I got a Raspberry Pi and

00:21:40   it's super not complicated like it's it's incredibly it's way easier than I thought

00:21:44   it would be it was delightful to go through it I loved the feeling of you know learning

00:21:48   at all and just delighting in how much capability was available for how little money and how

00:21:55   like do it yourself at all was it was just delightful and I was so afraid to do it I

00:22:00   was I had built it up in my mind of like oh here's this whole class of things that seems

00:22:05   really difficult or that that that is not a skill that I want to build or that I'm able

00:22:10   to build right now or that I had the time to build and that was all bogus it's it's

00:22:15   totally fine it's totally accessible and that applies to lots of things that I learned you

00:22:20   know like maybe I should have learned the Python interface to my RFID board I think

00:22:24   that's probably that's probably what I should have done you know and like so many things

00:22:28   like you you're presented with this this wall of well here's the thing you don't know turn

00:22:34   around now you know but in reality like if you just plow through that wall because you

00:22:39   are motivated to or you have to for some reason you usually find like hey it's actually not

00:22:44   that bad like I actually I guess learned this thing and it was not nearly as hard as I thought

00:22:49   it would be and now I have this new tool yeah and I think what you said there is the thing

00:22:54   that's interesting is how it feels like it like everything seems everything seems like

00:23:00   seems impossible until you've done it like there's that sense that like the the hardest

00:23:05   time you'll ever do something is like the first time you do it where because you just

00:23:09   didn't know how to do it and now you do and so you have this massive like you know step

00:23:14   jump from knowing nothing to knowing something like the process of learning from there where

00:23:20   you get better and proficient and ultimately master a skill you know that takes a long

00:23:24   period of time you know with a lot of dedicated practice or experience but going from nothing

00:23:30   to something is like this is the scariest part of that learning curve but is often like

00:23:37   is you it's very disproportionate into how it feels like it is versus what it is and

00:23:42   I think something that I've learned or at least like remember remind myself from this

00:23:47   experience is that the best way to learn up learn these skills or to pick things up and

00:23:52   kind of the benefit of these putting yourself into kind of more messy and development environments

00:23:56   is that you if you have some kind of project that you're trying to do it forces you to

00:24:02   learn things that otherwise you just won't that otherwise you will just find you know

00:24:08   you would either you would that would be it's like just naturally we do like forcing yourself

00:24:14   to learn something new is something that I think especially as I become older I find

00:24:18   much harder to want to do that I feel like there's that sense that I don't like feeling

00:24:25   like a novice but when I accept that I am a novice and I push through like those those

00:24:30   feelings and instead like drive through it I actually enjoy the like the process of being

00:24:35   a novice of like picking us picking up a skill starting with something I don't know how to

00:24:39   do and doing it but I think it's important at least I found for me it's something that

00:24:43   I need to have something specific that I'm trying to do that if I just like one day decided

00:24:48   hey I'm going to learn Python like I might write that down on my to-do list like hey

00:24:53   become familiar with a new language or something but I'm never going to do it like I'm never

00:24:57   going to just like go and get you know 21 days to becoming a Python developer out of

00:25:02   the library and read it like it is never going to happen I have to have something specific

00:25:07   that I'm trying to accomplish that I think is interesting in its own right and that this

00:25:12   skill or this ability is like collateral damage along the way almost that I have to do it

00:25:19   just because if I don't I can't accomplish something else that I actually want and it's

00:25:23   like I'm trick it's almost like I'm tricking my brain into learning something by making

00:25:27   it and think that it's not actually learning that what it's actually doing is like doing

00:25:31   this fun project with your son but what you're really doing is you know learning a new programming

00:25:35   language and platform yeah I feel like like you know learn Python is not an actionable

00:25:41   item like there's no like what's the first step of that like get a book and then what

00:25:45   like read it like that you don't learn programming by reading you learn programming by programming

00:25:50   you know like so you know anything that forces you into the action that forces you to just

00:25:55   do something you just plow through I find very satisfying and and way more effective

00:26:02   at actually teaching me something new as opposed to like read this thing and then what like

00:26:07   then unspecified right like and then you know that's that doesn't lead anywhere really that

00:26:12   doesn't stick whereas if you are forced to do something you are building a skill right

00:26:17   there and and you and like you aren't even realizing it necessarily like you weren't

00:26:21   realizing quite how much of the news of the new thing whether it's Python or Linux administration

00:26:27   or using Raspberry Pi's like you don't quite realize how much you're learning when you're

00:26:31   doing it you think you're just plowing through and doing the bare minimum but then like next

00:26:35   time you have to do something you realize oh this is all incredibly familiar to me now

00:26:39   like now I can I can do this a lot more easily than I thought I could yeah and I think maybe

00:26:44   to wrap this up I will say something that has been an interesting like result of this

00:26:49   experience and not only this experience but something that I've been working thinking

00:26:52   about for a while is that I went out and on Black Friday I bought a pixel three and I'm

00:26:59   diving back into getting myself familiar with modern Android development which I've got

00:27:04   to say feels a little messy feels like I did I have the bumpers way up and I have no idea

00:27:10   what I'm doing but maybe I'm slightly less scared of it as a result of the the earlier

00:27:16   experience with the Raspberry Pi and I think there'll be many topics to get into on the

00:27:20   show about it but I think it was an interesting experience where it's like I'm like yeah this

00:27:24   feels familiar this is just kind of like what I just practiced over the weekend as I'm like

00:27:29   downloading Android studio and like I don't know how anything works and things aren't

00:27:32   working right and I'm learning to new but another well I'm learning Kotlin I don't know

00:27:38   how to say it there's a new like this Swift equivalent for Android I also don't know how

00:27:41   to say it but yeah it's probably Kotlin, Kotlin I'm learning that I'm relearning Java which

00:27:47   is a language I knew very well at one point but that was a very long time ago and just

00:27:52   seeing how things have changed and like learning how to do things and it's it's fun it's interesting

00:27:57   and I don't know exactly where this is gonna go from where I'm gonna end up but it's something

00:28:02   that I'm glad that I'm doing and you know I'm reminded that even if I never ended up

00:28:06   shipping something on Android I'm developing a set of skills that I wouldn't have otherwise

00:28:13   and that'll make me better as an iOS developer they'll make me better as a person that like

00:28:17   they'll just is better in general. Well we can at least get a couple episodes of the

00:28:21   podcast out of it. Yeah I'm sure we will there's there's a whole it's like it's a whole wide

00:28:25   world that was just hiding behind a door like it's not like like it's in the weird the weird

00:28:30   way is sometimes I did Android development many years ago and in a weird way like sometimes

00:28:36   in your mind you kind of imagine that if you when you turn away from something it stays

00:28:39   exactly as it was forever. It's like nope it's actually it's like it's been cruising

00:28:43   along changing and developing it has all kinds of things that have come out of that that

00:28:47   I think it was interesting for me and hopefully yeah we'll make some interesting topics down

00:28:51   the road. We'll keep you posted so I don't have to do it. Yeah I'll let you know. Thanks

00:28:56   for listening everybody and we'll talk to you next week. Bye.

00:28:58   Thank you.