Beating Paralysis and Printing a one-handed Keyboard
What happens when you think that a door which was open, suddenly closes in your face? Bobbi's story of overcoming a severely debilitating injury to continue his journey of being a programming is remarkable!
Jonathan: Well, hi everyone. My name is Jonathan. I'm hosting a podcast with Bobbi Towers. Bobbi is one of our community members at Exercism. I'm super privileged to have him here with me today. I'm currently in Cape Town in South Africa, the very bottom of the world in one sense. Bobbi, where are you currently?
Bobbi: I'm in Portland, Oregon and the pleasure is all mine. Usually to get to do something like this, you have to be like famous or wildly successful or something, so I feel like I just skipped so many levels.
Jonathan: and well, it's awesome to have you here. I know you contribute a lot to Exercism in the community. You do some maintaining as far as I'm aware. You can go into that in a little bit of detail later on. But we're really pleased to have you here with us and as part of just giving you opportunity to share a little bit about your journey in tech and kind of what you love about tech and all of that kind of stuff. So why don't you just tell us a little bit about where you come from in terms of your background, a little bit of your story. We would love to, I'd love to dig into that a little bit and then we can maybe talk a little bit more technically further down the line.
Bobbi: Yeah, so I grew up in central New York state on a farm. Well, we didn't have animals or anything. My dad was kind of a primitivist. He ran a business making one in two man crosscut saws for the lumberjack industry like what they used to use before chainsaws. And but you know, this leads into tech because he was also an early adopter of computers. And he had the original, well, it was a clone of the original IBM PC. And this was, you know, to do his home business work like database management and desktop publishing to print out the catalog. And so I got handed down this thing. Well, it was released in 1981, which was the same year I was released. And we also had the first consumer text to speech device. It was called the speech thing. And it was this little contraption that would hook up to the parallel port on your computer and it would talk and just the whole family crowded around this thing. It was the most amazing thing ever.
Jonathan: Well, so that was your introduction to you could say the technical world and I'll let you carry on. I'm just intrigued by the fact that.
Bobbi: And uh... Yeah, you know what? What I really wanted was a Nintendo, but they... They wouldn't allow that. They wanted us to run around, build forts, and play with the cows across the street like normal farm kids. Presumably chop down trees.
Jonathan: presumably chopped down trees with the double handed saw or the double person saw as well.
Bobbi: Yeah, yeah. But yeah, so we had a strict no video game rule, which I never understood. But eventually, all my friends had cool toys to play with. And I was so upset about it. So we compromised on the computer. And I kind of have that to thank in a way, because it kind of turned me into a wannabe hacker, rather than someone who spends more time consuming media. So we had to create our own fun.
Jonathan: That's a.
Bobbi: And so... This speech device had a talking blackjack game that was coded in BASIC, which was the first programming language that was really easy for people to learn. It was BASIC? What did you say it was? BASIC. Yeah, the beginner's all-purpose symbolic instructional code.
Jonathan: Would you say it was......basic? A classic. Nice. Cool. Cool. So making it easy for people to access.
Bobbi: And so, yeah, that was. This was in the days when we used to type in computer programs out of magazines. And then it wouldn't work because your version of BASIC was slightly different from the one that they used. Maybe that important.
Jonathan: So versioning ends with that whole program.
Bobbi: There was no internet, so there was no Exercism at the time. And so that was a major thing. When you had a problem, it wasn't like today where you Google your problem and it's already been answered somewhere. You were genuinely stuck. It was challenging learning to code in that day. And to be honest, I kind of got distracted by music for the next 15 years or so.
Jonathan: When you say you got distracted, what do you mean by that? What happened?
Bobbi: Oh, well, I kind of spent my childhood playing with tape, actually. And now this was the root of my major obsession with capturing and preserving media and composing it after the fact, which is really a form of time travel.
Jonathan: Interesting, I'd never thought of capturing music as a form of time travel, which is really cool. I mean, I remember having, I think it was a four track. We had one of these like old tape rack things, which you could, if you pushed the pause and the play at the right time and you hit the record button simultaneously, it was like really quite mechanical in terms of getting things right. But I remember being able to be like, oh wow, I can actually record something and then play it back from another tape rack. So I had now two tapes at the same time. So I recorded onto one and then was able to somehow put the recording onto the next one and then bounce it back and forth. It's funny that you mentioned getting distracted by music because I can completely relate to that experience. But it all started with the tape machine and being able to sort of work out the timing of stuff, which was a whole problem on its own. I kind of feel like we cheat a little bit now with all of the tools that we have access to. But tell me a little bit more about the tape machines and how that kind of, where that led you.
Bobbi: Well, you know, I had my Fisher-Price cassette recorder and I would kind of, I remember pretending that I had a radio show and just playing music and just recording myself, you know, just goofing off, talking and I'm still doing that really. And then also VHS video, I even was able to do really crude stop motion animation because I had a camcorder that had this snapshot feature. It would just take, not a frame, it was actually quarter second snapshots, which was just enough to kind of simulate motion in a very comical way.
Jonathan: That's awesome. So then, growing up on a farm, you then end up with a focus on an old IBM computer machine as a compromise because realistically you wanted a Nintendo and that didn't materialize. So actually I think your parents probably paid you a good, did a good thing because they made you inquisitive and curious in that sense, you could say. Maybe not at the time it did.
Bobbi: Yeah, well, my life dream from that point on was actually to code my own version of Mario. Okay. And, you know, like, have you ever thought, you know, if you could go back in time and tell yourself something? This is mine, without a doubt. I would go back to that kid that was just wondering how I would recreate Super Mario Bros. And I would tell that kid that you have to learn math.
Jonathan: Thank you.
Bobbi: And, you know, I might actually have to choose this for the hill that I might die on. Okay. Well, but maybe we can actually… I was…
Jonathan: Well, but maybe we can actually, I was a little bit as well. So what, so what made you get to that realization about maths specifically for you?
Bobbi: Well, you know, I never really used maths ever, even though I was a musician. And I used to hear people all the time talk about the connection between music and maths, and I would just laugh at them. No, it's not math, silly, it's music. Rock and roll. But it was not until I was, well, over 30 years old trying to make the first program, when we're skipping ahead a bunch of years, when I started actually learning programming for real, the first thing that I said I wanted to make was some kind of audio, music synthesizer, music sequencer. It got to the point where I had to calculate the lengths of the notes according to the tempo, the beats per minute. And that was, you know, other than maybe little things like scaling up and down recipes and whatnot, this was actually the first time that I ever used math, was to extend my music sequencer so that it could play at a tempo other than 60 beats per minute, which, you know, would be a quarter note being exactly a quarter second or whatever.
Jonathan: So luckily for you, maybe being able to extend beyond 60 beats a second allowed you to enjoy music more. Imagine if everything was stuck at 60 bpm for music as a whole. Yeah.
Bobbi: Yeah, and then it went from there, and it was a perpetually descending rabbit hole. Then I had to find the formula to calculate the frequencies of the notes. The first version, I actually just painstakingly built this ridiculous lookup table where I had the frequency of every note in hertz. The program would just consult the table, but then eventually I learned the formula for converting the MIDI numbers, which middle C is 60, and then every integer is just a half step on the staff.
Bobbi: Yeah, the math thing, you know, it was actually, it was my math teacher who got me into coding again. You know, I was going to college in Austin, Texas. And I had to take math courses. And I got to use this really interesting system that was called ALEKS, which stands for the Advanced Learning Environment for Knowledge Spaces. And it was learning math through interactive exercises. It was actually the first time that it ever really worked for me. And I realized that it's because there's so many concepts in math that depend on each other. It's this huge graph of hundreds, maybe even thousands of topics. And it would be virtually impossible for a teacher to, in a reasonable classroom environment, to keep track of even one student's position on this graph to know exactly the next right thing to teach them. And it was interesting because I realized that something like that should be taught with computers. And that was the huge revelation, really, was the power of interactive learning and the way that we can use technology to assist the process of education.
Jonathan: It sounds strikingly like what Exercism kind of looks to achieve with its tracks.
Bobbi: I was thinking of that exact thing because it's the concept graph.
Jonathan: So then you've gone to college. So you've grown up in upstate New York, correct? You've then done life on the farm. You've kind of got your feet wet with coding at a very primitive basis in the sense that no Google, no information really, internet, to be able to refer to. It's kind of like you get stuck. You have to figure that thing out. You have to really pull it apart and gain understanding. Then music and kind of just the curiosity around how machines worked and how you sort of match things up means that you now go in the direction of music, pretty much, broadly speaking. And then you're now at college. And you start realizing that actually for you maybe to learn, the best way is to do exercises, which kind of triggers you into this motion or this momentum of learning by doing stuff and actually having a practical connection point with the world, you could say. Is that a fair reflection of the journey up until this point in college?
Bobbi: Yeah, yeah, I was expressing my human creativity through intuition in the audio realm, where some people might have taken the opposite path, have learned from the more abstract, you know, and then maybe went on to learn something like music later on. So how did you?
Jonathan: How do you personally bridge, obviously you found exercises which seem to be quite a natural bridge you could say because it brings a level of creativity and a level of outside of the box thinking. You strike me as someone who likes to think outside of the parameters with which you're given. So how do you see, I guess I'm trying to understand a little bit more deeply about that connection of music and the arts and the creativity with the scientific, the rational and that overlap. How did that play out then in your learning specifically and how is that affecting now how you approach like a problem?
Bobbi: Well, let's see, well...
Bobbi: Yeah, actually, I'm not sure how to approach that, actually.
Jonathan: It's quite a, I think it's probably quite an explorative question, maybe not so, not that categorically clear to work out. I guess try and rephrase it. Do you think that...your experience of learning to code and develop. Going from a creative perspective and then trying to bring structure or from going would you say like would you have preferred to have gone the other way around which was learn the structure and then learn to break out of the creative you know out into the more sort of creative way of approaching things.
Bobbi: Well, the way I kind of look at it is that I used to write songs, and now I write songs that do stuff. Okay. And so it was almost like practice and it ties into this little thing that I like to call Plato theory.
Jonathan: Okay, explain that.
Bobbi: And this goes back to when I had my first job, other than working for my dad, my first job working somewhere else was at the local pizza shop. And so first I washed dishes for too long actually until I started eating.
Jonathan: Time watching.
Bobbi: I got really good at it, so then I would get all the dishes done so that I could help the pizza guy. And so that's how I learned to make pizza. But the most fun was when they got to show me how to make the dough. And oh my God, I just love it. I used to get in trouble always mixing things together in the house. It was just something about the dough mixing up. And so I told my boss that this is like Play-Doh. It reminds me of Play-Doh. And he looks at me and he says, well, yeah, what do you think this is all about, Fun and Games? It's teaching kids the business. And so yeah, it's the Play-Doh Fun Factory. It is a trick to teach kids the bakery industry.
Jonathan: Really? Was that, is that, is that just a fairy tale or is that genuinely the sort of play-doh was the mechanism in which kids...
Bobbi: Plato, like Plato and Aristotle. Yeah, it's Plato's theory.
Jonathan: So that's actually like a theory. So I mean that's hilarious because I've got a little 18 month old kid and she just puts everything in her mouth and the Play-Doh gets eaten prior to being cooked and then that's a whole new experience. Wow, that's really cool. OK, so keep going. So you're now in this pizza shop, and you've nailed the washing of the dishes. You're an expert in dishwashing. And now you're getting into the next, into making the dough and spinning it. Did you spin it on your hand? And were you able to learn how to do it in that way?
Bobbi: Yeah, it was really fun. Then I actually built a pizza kitchen on a school bus and drove around the country giving away free pizza. I made the dough and everything on the bus. We had this little antique oven. So was that in 1966?
Jonathan: Or was that just you?
Bobbi: I had three friends with me on the pizza bus. We made the front page of the newspaper.Amazing. I'll have to send you the picture because... We'll put it in the show notes, definitely.
Jonathan: We'll put it in the show notes definitely because that's... Yeah. I kind of feel like, yeah, so that's, sorry, Bobbi, I just interrupted you there. Keep, keep going. I had a thought there that I.
Bobbi: So yeah, that was the missing years, actually. I dropped out of high school and then just kind of traveled. I was just kind of wandering. That was when I did the pizza kitchen thing. I took the one trade that I had learned and decided to – I took my last paycheck and I told my boss I wanted a 50-pound bag of flour and six number 10 cans of tomato sauce and –
Jonathan: And off you went.
Bobbi: She went, took the pizzas with me.
Jonathan: Yeah, and so Bobbi, just around that high school, so you say you dropped out. What was the feeling or what kind of led you to being like, you know what, this isn't working for me so much.
Bobbi: Ah, well, you know, um...I kind of have recently discovered, and I mean just in the last couple of months, that I'm pretty sure that I'm autistic.
Jonathan: So what does that mean for you and how does that affect life?
Bobbi: Well, it makes my life make sense, actually, if I had only known that. I really had no idea what autism was, even though we went to school with someone, but he was very... we don't like to use the words high functioning, low functioning, because everybody's functioning. So we classify according to the needs. You can have more additional needs or less additional needs. And the one example, his name was Joey, and he was very hard to interact with. He had a little computer that he would type on. But that was the one example, and it took until just a few years ago when I started actually making friends with some autistic people and became aware of the diversity of that... I don't even want to use the word condition. It's like a way of being. And we kind of... I kind of recognized some of myself in them.
Jonathan: Okay, so that must have been quite a relief you could say. I mean, how did that...So it's almost like you've been carrying something that you don't really know you've been carrying, like a big bag that's on you, and then to recognize that, and please do tell me if I'm being completely ridiculous in what I'm saying, but it kind of feels like you've been carrying this thing and suddenly you're made aware of it and it's almost like, okay, this has been this thing, how was that and what kind of then has it allowed you or facilitated you to be able to move into or...
Bobbi: It's like I'm defragmenting my hard drive, just recalling all of my memories of my entire life and thinking, oh, that's... That's why I thought that. And it's a continuous process of, almost like a rebirth, actually.
Jonathan: That's really cool. That's fantastic. I'm pleased that that's come into the light, you could say, and you kind of can see that for what it is. So then, okay, so now you're driving around with pizzas, selling pizzas, and you've finished high school, you've pulled out of high school because of, you know, you said, you know, that it wasn't really working for where you were at. You've got then gone to college, right, in Texas. So how come Texas? Because that's quite a long way from there.
Bobbi: Well, no, actually, what happened is, well, I crashed the school bus. And that was one of the first major kind of tragedies of my life. And I kind of struggled for a while because then I was just hitchhiking. But I found, I settled in this town, Ashland, Oregon. And I found a Jewish synagogue, a Jewish community that let me, I started volunteering actually just teaching the kids music.and This was incredible. Not only that, I there was, we had a choir and so I started receiving my first formal vocal training. Okay. And also learned how to compose and arrange choral music. Well, it's a musical tradition that is rooted in the Bible for the cantillation of the Scriptures, where the Hebrew text actually contains, you could kind of look at it as like glorified punctuation marks, but different musical traditions that are just passed down orally by different regions of the world created their own melodies to sing the verses.
Jonathan: So I did a bit of Hebrew at university. So I did a year of Hebrew study. It was one of the most fascinating modules that I've ever done. It went completely over my head, I'm not gonna lie. Like half of the time didn't really have a clue what was going on, but I do remember them talking a lot about the pointing, I think I'm right in saying, which is how the vowel sounds correlate to the consonants and then the variation in different texts that have different, well have the same pointing, but you can infer very, very different meanings according to the pointing that you can interpret or see. And that has quite big impact, you could say, across how you read the scriptures. So just to jump in there, that's really interesting. And so now you're talking about the musical aspect of the text, keep going.
Bobbi: Oh really? Yeah, and you know, music has an extraordinary power to help us learn, to help us memorize things. But music is more than just music. It's a syntactical construct where that's how you know how the text should be interpreted, you know, where the semicolon is that separates the two stitches of the verse. And so that has a little musical ornament that has the strongest pause in the verse. And then there's another one that would be analogous to commas and different strengths of commas.So I just, this blew me away that there was actually this primitive musical notation system built right into the text. And so I wanted to learn as many different melodies as I could. And actually I taught a class. This was my first time teaching adults at the synagogue actually. I taught a class in how to cantilate the five books of Moses from the Torah scroll. And then there's a different tune for the prophets. And then where it got really deep was in the, so there's the Torah, the writings, the prophets and the writings, like the book of Psalms and Proverbs and Job, which are written in a more, it's a more poetic style where actually the cantillation marks are very different in those books. And I was like, what the heck is this? How do you sing this? And so I was actually Googling how to chant the verses of Psalms. And I found the website of Rav Natanyel Frankenthal, who was in Jerusalem, Israel, teaching at a yeshiva, a Jewish study house called M'Khon Meir.
Jonathan: Okay, well.
Bobbi: So I moved there. In Israel? In Jerusalem. So you went? Yeah. Wow. Yeah, I moved to Israel and was planning on, you know, I was doing rabbinical study, but it was also, I mean, that's what I was officially doing, but what I was actually doing was a study in ethnomusicology for purely recreational purposes.
Jonathan: Wow. And Bobbi, do you have, are you Jewish? Is that your family background? Like, was that, so why the synagogue? Or was it just that you happened to stumble upon a community? Or is there like a sort of a background or a context that is from the Jewish...
Bobbi: Yeah, well, we were reformed. Well, not, there's reformed Jewish, and then there's conservative, or actually that's not what it's called. Anyway.
Jonathan: Thank you.
Bobbi: My grandparents came here from Russia and just kind of decided to make their own rules. So it's okay to eat lobster and shrimp, but not pork. And it was kind of a formality, actually.
Jonathan: Thanks for watching!
Bobbi: did not understand it, I didn't enjoy it, well, I actually secretly enjoyed the music. And that is, you know, that extraordinary power to infect you. I think there's actually something going on on the genetic level that we are kind of spiritually wired to use song to try to contact whatever might be out there.
Jonathan: Well, it's vibration, isn't it? It's frequency. If you think we're made of water as well, which is highly responsive to sound waves. Even healing, when you go to the physiotherapist and they put that little sonar thing on your leg, that breaks up knots using sound. There's a whole realm of information out there that is, we've hardly even explored, but it's definitely key. But I just find that the relationship between music and tech fascinating because everyone's like, oh, they are very polar opposite. Music, artistic, creative, fluid, but actually underpinned by patterns, consistent, how would you say, it's like on the piano, you have your intervals, all of that kind of stuff. It is very mathematical if you really, really boil it down. So I'm just fascinated that you ended up in the context that you ended up in Jerusalem. I mean, Jerusalem, correct? Or just Israel? Like where were you in Jerusalem?
Bobbi: Yeah, Jerusalem. I studied in Jerusalem and Safed, the birthplace of the Kabbalah.
Jonathan: Okay, interesting.
Bobbi: Yeah, that was really interesting.
Jonathan: Wow. Okay, so now I didn't expect, I didn't, I hadn't factored in that maybe you'd lived in Israel. That's really cool, really interesting. And so now you spent time there studying ethnomusicality. How would you define it as ethnomusicality?
Bobbi: Ethnomusicology, yeah. I fell in love with the Yemenite tradition so much that I wanted to just adopt all of the customs. They preserved a very unique form of Judaism, including the, well, the most carefully preserved dialect of Hebrew that still actually sounds like Arabic. So, I got to learn lots of different sounds. Wow, that's awesome. And, yeah, so, they have, well, it's Judeo-Arabic. And it's this really interesting web, because I was also very much into Sufi music called Qawwali. Sufi being...
Jonathan: Is that the mystical aspect of Islam? Is that correct?
Bobbi: Yeah, yeah. And so this is the most incredible music I've ever heard is Qawwali. It is just, they use harmoniums, which is a really great instrument. It's kind of like an accordion. It's a free-read instrument and it's used for chanting.
Jonathan: Like a drone-y, kind of that drone-y sound to it.
Bobbi: Yeah, yeah. And so it's the Pakistani tradition. And I discovered the music of the ancient music of the Jews of Afghanistan. And it blew me away because they use harmoniums. And it sounded like Qawwali. And so I created a project called Kabbalah Qawwali, where I took Yeminiyat tunes and tried to make it in the style of Qawwali music. It was totally wild.
Jonathan: And you did all this at home on your laptop with the harmonium or did you just, how did you record and do all of that stuff?
Bobbi: Well, I made a really bold move actually and moved to Israel without an instrument which I, I wondered how that was going to work. I'd never been without an instrument before. How would I express myself? And so I actually, that's when I got really, really heavy into score writing. Using music on the computer, I was using, you know, Lilypond software which was a, it actually uses the LaTeX typesetting language. And so that kind of brought the coding back actually. It reminded me of making some of the original web pages. Kind of like HTML actually, except you are, instead of marking up text and pictures and what not, it's notes on the musical staff.
Jonathan: So it sounds like then what keeps seeming to happen is you go into music and you end up doing a full circle back into the technical coding, scribing almost.
Jonathan: annotating, documenting, that's kind of, it seems like that's the process that seems to continuously happen. So let's just move into the tech side of things because I think we can go into that a little bit. So you started learning sort of scribing and putting all of that stuff on paper, or you could say proverbially, or how would you say it? Digitally, scribing things digitally. And then did you start learning a specific language? I know because you enjoy Clojure. Is it Clojure? How would you say it? Clojure is a coding language? Clojure, yeah. How did you get into that and where are you at on the sort of technical journey at this point in time?
Bobbi: It's been number one for the highest paying technology on the Stack Overflow surveys pretty consistently. And I have to admit that that's the first time that it actually caught my attention. I saw it on the chart and said, huh, well, that seems like that's what you want.
Jonathan: There's no-
Bobbi: That's what you want to learn if you want to make the big bucks. But then what I kind of discovered is that the reason why it's the highest paying language is because it just happens to attract very experienced developers. The average experience level of a Clojure programmer is 10 years.
Jonathan: Okay wow, so not because of the difficulty or the application of it, was it just that these senior developers would get bored doing your sort of run of the mill languages or I hate to say run of the mill, that'll probably get me a huge amount of criticism but you know what I mean, more popular languages that then they kind of need a new challenge and then that's kind of who ends up going for it or? Yeah, tell me a little bit about it. I mean, I'm interested to find it.
Bobbi: Well, it's actually an incredibly easy language to learn. And especially if you are ADHD-minded, like me, it has this amazing property that is sometimes referred to as REPL-driven development, or interactive programming, where you can, instead of having to think of your program as like a text file that just gets executed, you get to think of it in just little tiny chunks. And so you just, you have a text editor that is connected to your running program. And you just put the cursor on a piece of code and use a hotkey and it evaluates that form and compiles it and sends it into the program.
Jonathan: So is it almost instant feedback type language which just means that you can see what you're building kind of iterating and growing as you're going. And that's part of the enjoyment of it potentially.
Bobbi: Yeah, yeah, that's my dark secret is that I actually use it because it's very difficult for me to... mentally step through a bunch of stuff and having to do the context switching, that Clojure actually enables me to wrap my head around what each section of the code does.
Jonathan: And then are you able to see how it affects other sections? So it's almost like you get the big picture of what you're building while you're focusing in on the little pieces. So it allows almost the two mindsets to work concurrently, which is having the high level overview of what you're doing while also keeping an eye on the small bits and pieces, the little bricks, you could say, that form it. So is that a fair reflection of how it works? Why you enjoy it or why it works for you from a mental perspective?
Bobbi: Yeah, yeah, like the beginning of this year, I was recovering from COVID. I'm still recovering from COVID. Actually, it kind of it was major life event that brought my mental health issues to the surface and just amplified everything. And I realized that, well, it's like I had to teach myself to think again, because, you know, we, it's like I had this house of cards of coping mechanisms, and it just, and all of a sudden they were no longer working.
Jonathan: So how are you doing now? How are you feeling in yourself? Coming through this last two years which mentally has been a huge challenge, I would say. It's been such a different thing to deal with. How are you doing?
Bobbi: It's, it's, it's, yeah, I was actually, when I was writing my notes earlier, you know, to kind of, just kind of get my mind in gear for this, that was the biggest thing that struck me is this last couple of years and how much has happened.
Jonathan: So what are some of the key, you said you talked about your sort of house of cards. Like how did, And this may be quite a personal point and question is like how did that happen, what played out, how did all of those cope, what did the house of cards crashing look like and how was, what did you come out of that season thinking I want to focus on, I want to prioritise, I want to...
Bobbi: Well, I created a one-handed keyboard. which is right here. There it is! Wow! Yeah, so this was... I created this using code actually. Goodness me. CAD software. and a Clojure library that compiles Clojure code to OpenSCAD. And so I got into 3D printing, because I have a hand that doesn't work. And this was as a result of an accident that happened in 2015.
Jonathan: So hang on you had the pizza truck accident which was significant moment and then in 2015 another accident that is as well as resulted in in a hand that doesn't function properly as you would like.
Bobbi: Yeah, so this was another major life event that really changed everything because, well, it put me on the way I like to think of it is that it caused me to shift from a physically oriented being to more of a mentally oriented being.
Jonathan: Wow. And that's huge, Bobbi. I mean, that's massive. So, and that's three, that probably took three to four years of just changing and then COVID hits, right? So you've just come out of significant mental shift, physical shift, and then pandemic hits so that I can see why that would have been quite an experience.
Bobbi: Yeah, so like we were talking about earlier, about, you know, the connection, where you were asking, you know, how did I bridge the gap between the intuitive arts like music to code. And so I did that, you know, using, you know, music. And then, so at this point, I actually did the reverse, where I... kind of knew how to code, but then...I was just filled with all kinds of self-doubt about my ability to code. And the way I dealt with it was actually learning 3D modeling, because then it was, well, bridging the gap from the abstract world of code back to where your code is actually creating a physical object. And so then you're getting the feedback, the confirmation that my brain is working. I can understand the connection between the execution of your program. 3D printers are so much fun. That was like the best thing I ever bought.
Jonathan: So you have a 3D printer which you design stuff and then print out. I mean that keyboard, I mean what have you, have you done anything further with the keyboard or is it something that you'd like to pursue further and maybe put out there a little bit further because I mean that's the first thing I, that's the first time I've ever heard of a one-handed keyboard. It had frankly never crossed my mind but I can suddenly see that actually huge, huge need for something like that potentially.
Bobbi: when I was learning to, first learning to code for real, as this was, this was after my accident, because you know, that losing a hand contributed to me, well, needing to use my brain, or use my mind instead of the body for things. And, but, you know, I had to ask the question, you know, at the beginning, am I going to be able to code because I can't type? So is this just some crazy idea that I'm not really going to be able to do? And well, one of my friends who is a computer scientist, he told me that there were options. And so I looked into it, and there's one. It's called the Maltron keyboard. It was created in the 70s, and it's really cool, but they are wicked expensive. Prohibitively so, which is really sad because, well, it was out of reach. And so I realized that if I wanted a one-handed keyboard, I would have to make one. And so I looked for the app, and it turns out there's a button that you can use to prod it to even a reasonable page. And that's what you do with the product, which is extremely useful right away, but you need the app in the app for that. And the app then goes away. And so I ended upJoining Well, in order to do that, I had to invest a considerable amount of money into the 3D printer and all the tools and stuff. So the ironic kicker of the whole thing is that I ended up spending more money creating my cheap version than I would have spent just buying a Maltron. So to justify it, I figured that maybe I would turn this into a business or something, because that really doesn't sit very well with me, that they're charging so much and that the people who would be able to benefit from it the most. can't, that there's no option. And so I thought, you know, maybe there's a real hole in the market here, maybe an opportunity to fill it. And, you know, maybe, maybe there would be even a market for one handed typing that we're not even thinking of, you know, if we brought the price bar down enough that, you know, say, you know, there might be a bunch of one handed typing, ninjas, curious
Jonathan: I don't think so.
Bobbi: There's a lot of situations that you could imagine being in, like if you were injured and needed to remain productive.
Jonathan: It was interesting. Well, I was talking to DJ a while back, a couple of weeks back, and his whole hilt that he would want to defend or die on is this whole... One of the things he clearly is a huge fan of is accessibility. And it had never occurred to me because even my wife, for example, or myself when I'm carrying our child, our one arm is out of action. And you still have to sometimes do stuff with your hand. And that's just one example of many. What happens if you need... You have an injury. That seems like a huge piece of the puzzle as well, which is interesting. I don't understand why they would be so prohibitively expensive. Maybe I'm naive, but it's half the size of a normal keyboard.
Bobbi: I'm tempted to just say it's exploitation. If it's covered by people's insurance, then that's kind of a racket. The practical reason is because it's... You should see a picture of this thing. We should... Send me a link and I'll put it in the show notes as well. Yeah, we should put that in the show notes because it looks really cool and it was really kind of ahead of its time because now there's a whole ergonomic mechanical keyboard craze. It looks like a ball. It looks like a crazy 3D sculpture that would go on your desk because it's a ball shape. So that's probably why it costed things.
Jonathan: Send me a link and I'll put it in the show notes as well.
Bobbi: Yeah, so they had to actually hand solder all the switches. Which I mean, that might not sound like that big a deal, but when I had to actually solder, this is 64 switches, so that's 128 connections.
Jonathan: Well, I mean, if you've ever soldered a mic cable, soldering is, or soldering, or however you say it, is not a quick process by any stretch.
Bobbi: I could do a keyboard in a day, but that was like a lot of work to wire up a keyboard.
Jonathan: It's funny.
Bobbi: I'm talking to actually a medical equipment specialist. There's a little bit of a discussion going on about trying to maybe find some resources to market this thing.
Jonathan: Well, you never know unless you try. So maybe it's definitely something to explore. So Bobbi, that brings us kind of full circle to, I just wanted to talk to you about Exercism a little bit and just ask about how you found it, how you got involved and what's next for you in that space. Yeah, go for it.
Bobbi: Yeah, well, I started calling myself the child of Exercism. And I didn't even think about how funny that sounds, actually, but yeah, because it actually makes up the bulk of my coding experience. And well, not just coding, but working in a team. So yeah, coming from where I was, I didn't have an educational background, like not in computer science. And I didn't have industry experience. So really, the only path forward was to build a solid portfolio of projects. And contributing to open source is something that is suggested all the time. How do I get my foot in the door and start writing software? And so then the question is, well, what open source? And so my first GitHub pull request ever was to add myself as a mentor on the Exercism site. Because, well, I mean, honestly, I kind of had no business becoming a mentor at that point, because I was just a student. I completed the Clojure track. And then my mentor said, Oh, great, it looks like you have done all the exercises. And he sent me a link to maybe consider being a mentor. And I was like, Oh, my God. I could do that? Really, it's almost kind of dangerous. I don't want to corrupt people by giving them that advice. The responsibility is very high. Someone told me that, you know, if you're the kind of person that you're worried about Young people, if you're easily fry with a pair of bare hands putting on your Jung. Young people. Don't feel that the way you feel. This is where the fear comes.
Jonathan: The responsibility is very high.
Bobbi: that probably means that your head's in the right place to be teaching people. If you're conscientious about making sure that you're teaching stuff right. I started with just the easiest exercise and found all the different ways to solve it. I remembered what my mentor told me and just started looking at students' answers and said, hey...You know, you could do this instead of this and then...know, I started mentoring other exercises. And it was really amazing, especially when COVID hit. I was so isolated. It was painful. And, you know, Exercism pretty much saved my life at that point. Wow. That's a big thing. To be able to sit in the room, you know, we're quarantined, and to be able to actually help people learn. It was the best thing going on. That's so cool.
Jonathan: and what sorry Bobbi I just had a had a follow-on question on that but I've completely forgotten so I'll let you carry on one remember what I was gonna say
Bobbi: So yeah, that was, we launched V3, which was incredible, because, you know, I've never actually seen the process of so many people working together, building something so huge. And at that point, there were, I was not the only Clojure maintainer, how that happened was just kind of an accident. There were, I was just one of a few, you know, people are interested, but... I was in a unique position because I desperately needed the experience. I was just learning everything along the way. I was the one who really had the most to gain from being able to do that. Everything from the curriculum design to putting the tooling together, like the test runner and stuff. I suddenly found that I was the only one left. And so it was just kind of out of necessity that if we're going to get this track over the line, and I've never written a test runner before, like what does that even do? I didn't know. I just figured it out as I went.
Jonathan: That's awesome.
Bobbi: I didn't get it over the line actually. We launched v3 and it took me about a week after that because I didn't have a concept of how the thing was actually going to work. I had to see it in action and say, oh, that's how it's... I thought it was just... I thought we were just writing a bunch of markdown files.
Jonathan: It's fascinating. And I think the question that I had, which I now remember, was you made a comment the other day in one of our community calls about realizing that you actually teaching is one of the things that really drives you actually. And you hadn't really realized that. So I thought maybe it would be cool to just explore that as our kind of final segment for today. And just talk me through that a little bit. And then we can kind of see where we're at after that. But yeah, expand on that. That was a really interesting comment that you made.
Bobbi: Well, you know, teaching is... kind of the only thing that I find worth doing. Oh wait, no, that's not, that's, that sounds really negative, but I could express it positively by saying that teaching is the activity that I find the most value in. All this time, I kind of assumed that I was learning to code so that I could write code for a company or something. But what really happened is I kind of fell in love with the process of learning to code. And I almost kind of like I'm going through this process of learning from the beginning over and over again, trying to...just attack it from every angle possible and to learn it as many wrong ways as possible. That's really important because when you're teaching, it's guaranteed that the students are going to misunderstand things. And so the teacher needs to not just be prepared with the right answer, but as many wrong answers as you could possibly think of, and be prepared for it to be misunderstood in even ways you would never imagine.
Jonathan: That's interesting because I think that's quite a big realization to come to. Again, it seems like one of those significant sort of moments that, okay, it's that clarity around where you find value and what drives you from an internal perspective. I think what's so cool is that Exercism seems to combine all of those different aspects that you've just described with regards to teaching and helping other people, the creative aspect of problem solving and coming from different angles to solve a problem, all rolled into something which gives you a bigger picture about how everything fits together. I think for me, Bobbi, just talking to you has been really cool because I'm realizing that there's so many different little angles that you can come at a problem from. I'm also a musician. That's my background. I work for a label. I play guitar and I dabble in piano and I've played a bit of the drums and I've done recording and all of that kind of stuff. I'm amazed at the crossover between what coding and development is and how that is correlated to music. I think it's been really cool because the more I've spoken to musicians, the more I'm realizing they actually make phenomenal developers because they have that empathetic side to it. Not that people who don't have that musical background are not empathetic, but more just they have the ability to take abstract feeling and emotion and actually interpret it into a way that is musical or in terms of actually notating it, which I think is actually what I'm realizing is so key. I wanted to just thank you for sharing that, for being vulnerable with your story and your background. I feel like we could talk until the early hours for you and until the late afternoon for me. Bobbi, I just wanted to thank you for your time and thank you for all your contribution to Exercism and just for your openness and being up for it, up for the journey of working together in a team of people from all over the world. Thank you and really looking forward to seeing you on one of the community calls. We will draw this session to an end now and I'll touch base with you in a second, but I just wanted to thank you for your time this day on the 13th of September, 2022. Thank you, Bobbi. We'll put all the notes and the show notes in the description for people to see. I'm thinking about your keyboard and what else? The Yemenite stuff, all of that kind of all the information that you shared. Thank you so much.
Bobbi: Yeah, thanks a lot Jonathan, this was great.
More Stories from our community
Listen, learn and be inspired by our community members.