• iTunes
  • Stitcher
  • facebook
  • twitter
  • Home
  • About
Mentoring Developers

Mentoring Developers

Helping software developers thrive

Episode 73 – These kid coders are cool!

November 28, 2019 By arsalan Leave a Comment

Timothy Amadi with his brothers Eugene and Daniel
https://media.blubrry.com/mentoringdevelopers/p/content.blubrry.com/mentoringdevelopers/MD-episode73-Emadi_Family.mp3

Podcast: Play in new window | Download

Subscribe: Apple Podcasts | RSS

For parents of younger children, we understand how fleeting dreams and aspirations can be with our children. One minute they want to learn karate and then next minute they’re interested in basketball. One minute they want to be a teacher and the next a princess. One minute they want to be a policeman and the next a movie star.  

Dreams often change with children. We know this. It’s all part of their development and trying to figure themselves out. Yet, what if your young child approached you with persistence about wanting to learn to code? As interesting as that might sound, it would also be reasonable for you to have some initial reservations. After all, we’re talking about learning technology – complex technology, but what if that dream and plea continued to persist and through discovery, you learned that your young child had somehow developed a strong urge to code an app or a game or a website or a piece of software or … fill in the blank?  

What if your young child aspired to code? That’s exactly what happened with our next, young guest. Meet Timothy Amadi and his brothers, Eugene and Daniel. They are the coding trio of the Amadi family. Timothy started his journey at the young age of 9. He even went to a local coding boot camp to learn Ruby on Rails, JavaScript, and iOS … and Timothy codes without scaffolding! When he caught on with coding, he brought his brothers in and the trio collaborates together between project management, coding, and QR. Listen in today to episode 72 to hear the rest of the Amadi family’s coding adventures. Don’t miss this incredible episode! 

Timothy’s Bio:

Timothy Amadi is 10 years old and loves coding. He has built his own apps from the ground up including an eCommerce application, a blog application and even his very own version of Twitter. He also has an app that he is introducing to schools to help kids learn how to spell in a fun way using the computer, and he also participates in speaking engagements about coding, especially when it comes to inspiring other kids to learn to code as well.
 

Additionally, Timothy brought his older brothers into the fold of coding as well. Now, the trio collaborates on various coding projects and events and share in the excitement of their tech journey. The three boys have also authored nine books about coding that encourage other kids to try it out as well. Their mission is simple: “Everyone can code, including kids.” 

Episode Highlights and Show Notes:

Arsalan: Hi, Everyone. Welcome again to Mentoring Developers. I have a very special set of guests today. They are young kids who started programming when they were very little. Now, they are publishing multiple books on programming.  So, they have a consulting practice or some kind of business. Let’s talk to them about what this is all about. It’s super exciting. If you have little kids and you’re a parent or you’re a little kid yourself and in school and wondering how to get started with programming, or whether it’s something that kids can even do, then today’s episode is for you. 

Arsalan: Hi guys. How are you? Okay, so let’s get everyone’s name. I’m talking to Timothy right now. Timothy how old are you? 

Timothy: Eleven. 

Arsalan: Eleven. Okay. Can you guys get a little closer to the computer so that I can hear you better? 

Timothy: [inaudible]  

Arsalan: We’ll try to make do with what we can make do with. I couldn’t hear you very loudly, but that’s okay. So, that’s Timothy and who else do we have? 

Daniel: I’m Daniel. 

Arsalan: Hi, Daniel. How are you? 

Daniel: I’m 13 years old. 

Arsalan: You’re 13. Okay, and we have one more. 

Eugene: I’m Eugene Amadi and I’m 12. 

Arsalan: Eugene Amadi and you’re 12 years old. Wow. So, we have 11, 12, and 13. Is that right? 

Timothy: Yes. 

Arsalan: Wow. Okay. So, if you guys could speak a little louder so that we can hear you, that’d be better. Okay? If you can … if you can’t, then we’ll just look at your faces because that’s pretty awesome too. 

Arsalan: So, you guys were little kids when you decided one day to get into programming. How did you come to programming and then think about writing a book? Tell us a little about why you started and how you got here. 

Timothy: I began coding so that I could help my mom pay her bills. I tried making apps so that I could accomplish this task, but I didn’t know that I had to code to create an app. So, we went to school. There was this one time when we met with the student board and they told me that if you want to create an app, then you have to learn how to code. So, I told Mom that I wanted to code, but she didn’t believe me. So, she started buying books, but it still wasn’t enough. I looked all over the place for schools, but none of them had kids. Then we found one called Tech Talent South. It was our first code camp and lasted eight weeks. 

Timothy: So, on Day one, everyone was looking at us. We did ice breakers where we all introduced each other. 

Arsalan: How old were you at that time? 

Timothy: I was nine when that happened. 

Arsalan: Nine years old. Okay, and everybody else was probably in their twenties. 

Timothy: Yes, they were older. 

Arsalan: So, you were like “Oh, everybody is older” and they were like “What is this kid doing here?” How did you feel about that? Was that hard for you? 

Timothy: No. 

Arsalan: OK. So, tell me how your first day went in that code academy, that code school where you were the only kid and everybody else was a grown–up. On your first day, what did you do? 

Timothy: I answered a bunch of questions that they had. Mom sat with me during every class. The code camp was held one day per week. So, every day for eight weeks mom would sit with me during class. 

Arsalan: So, you started that and did that for eight weeks. What did you learn during those eight weeks? 

Timothy: I learned a lot. I coded many apps, they were mostly on the Ruby on Rails application. I built one without using scaffolds by using it on the Command line and trying to make a kind of class for Ruby. It was a quick way to make things easier when you started up the Rails app. I made an app complete without using it. 

Arsalan: Wow. That’s amazing, and you made it without using scaffolding? Scaffolding, for people who don’t know, is a way to quickly create code by starting a skeleton off of a program without having to start from scratch. It’s like having an empty canvas and then you have to fill in all the other pieces. So, a lot of people use scaffolding, but you said that you didn’t use scaffolding and you just basically wrote from scratch by using an empty document. You start by defining this class and defining this and defining that. Then, everything else you were able to do in Ruby on Rails, which is a web framework using a model view controller design principle. That is pretty advanced because there are lots of things that you would never have heard about, but you were able to do it. Did you find it hard to do Ruby on Rails in eight weeks? 

Timothy: Yes, when I started out. When I was making my own version of Twitter, I didn’t have time to lead the whole project, but then I re-did it and that’s why it’s successful on the Bug Zero website. 

Arsalan: Alright. So, you made your own version of Twitter. Twitter, for people who don’t know, is a website or an application that you can use to send small messages. You can use it to send it to the world or people can subscribe to it and certain people can listen to it. There’s a published subscriber model that can be pretty complicated. So, it’s not an easy project, but it’s a very interesting project. So, you were able to do that. Did you have to get a lot of help from people? How did you get across issues where you didn’t know how to do something or you were stuck or maybe had a bug? A bug is just a mistake, a defect, or something that didn’t work. How did you get around that? 

Timothy: I began by trying to figure out where it was going wrong. Then, I tried to debug it. If that didn’t work, then I would call on someone to help.  

Arsalan: Okay. Well, how did you know how to debug? 

Timothy: First off, sometimes we made a capitalization mistake or [it was a] syntax thing. Or, sometimes, it was just easy to figure out and I just fixed it. 

Arsalan: Did you read any books to better understand how to do advanced things in Ruby on Rails while you were the class for eight weeks. Did you have books to read or were you just going there, listening to lectures, and doing your projects? 

Timothy: The projects were all part of the courses in the boot camp and I did the projects. 

Arsalan: Okay. That’s wonderful. You were able to do certain projects on Ruby on Rails and now you’re learning about it. I have a kid who’s eight and she’s a little interested in programming, but not that interested. I know a lot of people because I teach kids programming as well sometimes in after-school programs and such, and very few kids have an actual interest in learning how to program, in my experience. Yet, maybe there are exceptional cases like you. So, what happens in a class is that they are bored – even if the class is meant for kids and we try to keep it interesting. We try to make it fun with games and interactive things. So, it’s not too boring because there are graphics and games and this and that. Yet, it is still hard for younger kids.  

Arsalan: You are nine years old and you are sitting in with adults who are not really interested in games and stuff. They’re basically trying to get a job. That’s why they are learning it. They’re not learning it just to have a skill. They want to get a job. So, they’re very serious. I’m assuming that the classes were probably not much fun. Yet, you really stuck with it. You didn’t give up. You weren’t bored. You weren’t like “I don’t want to do this. This is boring.” Why was it not boring for you? 

Timothy: It was exciting to see the end product and each time I achieved something, I felt accomplished. 

Arsalan: Yes, it feels great to do something. That’s wonderful that you’re able to do it. Are you a good student in general? 

Timothy: Yes. 

Arsalan: Are you a straight-A student? 

Timothy: Yes, often – pretty much. 

Arsalan: Okay. So, you get pretty good grades. So, you’re used to studying. Do you study … and do homework by yourself or do you need to have someone sit and make you do your homework? 

Timothy: No. 

Arsalan: Okay. So, you’re pretty independent. What I’m trying to understand is why you were able to do it when so many other kids are not able to do it. You’re independent. You like doing things yourself and you love to accomplish things. When you do homework, it feels great, right? You’ve finished it and when you go to school the next day you can show your teacher and the teacher is going to appreciate what you did. So, it feels good, right? 

Timothy: Yes. 

Arsalan: It feels good to be able to do it. It’s similar to programming. It’s dry and it’s not really that interesting sometimes. Sometimes it is and sometimes it’s not. Yet, when you do it, you feel great because when you have a problem, you solve it yourself. Sometimes you have help and that’s okay. Everybody needs help sometimes. 

Arsalan: So, now, eight weeks later did you feel like you were now a programmer or were you still feeling unsure of whether you could still do this? 

Timothy: I was still trying to find more with the program. So after … we went on to JavaScript class and after that, we had an iOS class, which on the last day Mom had a headache and we couldn’t go.  

Arsalan: Oh. Well, that happens. Mom had a headache and you couldn’t go, but you were still able to go through another eight weeks of JavaScript. That was eight weeks of JavaScript, was it?  

Timothy: Yes, that was JavaScript. 

Arsalan: That’s amazing. 

Timothy: It came before iOS. 

Arsalan: Then, after that, you did iOS and you took all of them except for the last class and that was because your mom was sick. That’s amazing. Wasn’t it hard for you? That is a lot. Most grownups don’t know those things. 

Timothy: It was very difficult though.  

Arsalan: Then why did you do it if it was so hard? You already knew Ruby on Rails. You already knew JavaScript. Why did you want to do iOS? 

Timothy: I just wanted to be able to show them that I could make a difference … that I had the potential to do great stuff. 

Arsalan: Okay, and you wanted to show this to whom? Your mother? Someone else? 

Timothy: Yes, mostly to my mom. 

Arsalan: That’s good. You wanted to show your mom “I can do this.” Your mom didn’t believe you in the beginning. Right? She didn’t think that you were serious about programming. What happened when you first told your mom that you wanted to do programming? 

Timothy: When I told my mom that I wanted to do programming? 

Arsalan: When you told her, you wanted to go to a program. In the pre-interview with my producer, you said that your mom didn’t actually take you very seriously at first. She didn’t know that you really wanted to do it. Then, something happened. You got some books. There was someone who helped you and you persisted and kept asking, and she finally found a place where you could go. You went to different places and they wouldn’t let you in, but then this particular program took you in. So, how was her reaction when you first talked to her about this? 

Timothy: I didn’t give up … I kept trying. If I wanted to make an app, I had to believe that I could do it. That’s when I first asked Mom. She slowly started seeing that I was serious about it. So, she bought me some books. I eventually made a game that 50 people across the world could play. 

Arsalan: You made a game that 50 people could play … together? At the same time? Is that what you mean?  

Timothy: Yes. 

Arsalan: How did you make that game? This was before you went to that code school, right? Was it before or after? 

Timothy: Before. 

Arsalan: You already made a game? Which programming language did you use to make that game with? 

Timothy: Lua 

Arsalan: Lua? Hmm. How did you learn Lua? 

Timothy: It was really simple. I just began a code to show what each thing did … function. 

Arsalan: Wow. How old were you at that time? Nine? When you did the Lua program? 

Timothy: Yes, I was nine. 

Arsalan: Wow. That is impressive and you’re like “I can do this, Mom, and look, I just made this program.” So, 50 people across the world can play this game simultaneously. It doesn’t matter what it was. The point is that you proved yourself and you really wanted to do it and that’s really amazing. A lot of kids can learn from this and say “If Timothy can do it, then maybe I can do it. It’s fun!” So, tell me what is so amazing about programming? Why do you like it so much? 

Timothy: I want to be able to make a difference in the world and show that kids are capable of doing it. 

Arsalan: Okay. You want to make a difference in the world. You want to prove that kids are capable of doing great things. So, do you think that you can make a difference by doing programming, that you can solve some problems using programming? 

Timothy: Yes. 

Arsalan: Okay. Yes, because when there’s a problem, software is often a way to go. Software is everywhere. You were trying to help your mother with something and that was why you wanted to do programming. Were you able to do that? Were you able to make that app that you wanted to make for your mom? 

Timothy: Yes. 

Arsalan: You did? Can you tell us a little about that app? 

Timothy: What app? 

Arsalan: You said that you wanted to do programming because you wanted to make something for your mother. That’s how you started. Do you remember that? 

Timothy: Yes. 

Arsalan: Were you able to make it finally? Sometimes that doesn’t work. You started with “Oh, I’m going to make an app for my mom to help her, but then, you know, you forgot. That’s okay. 

Timothy: I’m still trying to achieve that goal. 

Arsalan: Okay. So, that’s still a goal. That’s wonderful. We have to achieve our goals one little thing at a time. Let me tell you a little about myself. When I wanted to be a programmer, I was a kid as well. When I wanted to do programming, I just wanted to make games – video games that I could play. That’s what I wanted to do, but I never got to do it. I never got to actually realize that original dream because I discovered other things that I really wanted to do. So, it’s totally okay if you make a little goal and then later in life if you realize that maybe there’s something even better. You can change your goals and pursue that. It gives you direction. You know where you can go. You’re good at programming. You’re good at software and computers and technology and you’ll discover great things as you go. Companies and other people will value that. 

Arsalan: So, fast-forward. You were doing programming. You were learning iOS development, JavaScript, and Ruby on Rails. You’ve already done Lua. What happened after that? 

Timothy: I wanted to create a company for the apps so I could bring the profits to my mom and I could help her. 

Arsalan: Okay. So, you figured that now you know how to make apps. Maybe you could make them for other people who need these apps and they’ll pay you money and you can then help your mom. It’s great that you were thinking of bringing in money. That’s wonderful. So, you just decided to start a company. So, how did you start a company? Did you just register a website? You made a pretty good website. I went to your website. It looks very nice – BugZero.codes. So, you said “Now, I’m open for business” and anybody who wants to make an iOS app, they can ask you. Is that right? 

Timothy: Actually, it got renamed. It was originally just BugZero, but Mom decided to add ‘.codes’ to it because that was our URL. So, it became BugZero.codes.  

Arsalan: Okay. So, how did you find a customer? It’s hard for people. I can tell you from myself [my perspective] because I do consulting. So, how do I get someone to pay me? It’s hard because you have to find the right people and then you have to convince them that you are the right person. So, you were able to find somebody to pay you to do some work for them. Is that right? 

Timothy: No. 

Arsalan: Oh. You’re still working on that? 

Timothy: No. 

Arsalan: That’s what you want to do, right? You want to … so, if I wanted to hire somebody to do an app for me, an iOS, could I hire you? Are you available for that? 

Daniel: Actually – I’m Daniely, by the way… 

Arsalan: Hi. 

Daniel: BugZero is actually a non-profit. 

Arsalan: Okay. So, what does it do? What does BugZero do? 

Daniel:  We’re pretty much a platform and we want to spread around coding and teaching kids how to code. 

Arsalan: Ah. Okay. So, you’re not making apps for other people. What you’re doing is … you want to inspire other children to learn programming because programming is a good skill. It’s not necessarily to make money because children are not really working at jobs and making money. What we’re saying is that programming is a fundamental skill just like math. People do math and they can also do programming. It’s one other thing and it’s very useful. So, can you tell me why you think kids should learn programming? 

Eugene: We believe in teaching kids programming because coding is the future and everything around us has coding pretty much in it. We believe that every profession could use some form of coding or technology. If kids learn how to code and use technology, they’ll really influence and change jobs and maybe change the future. 

Arsalan: Okay, so programming is a very important skill and will give you the tools so that you can get jobs. That’s good. Also, programming has the other benefit that it expands your mind. It makes you smarter because it makes you think in different ways. Your brain has these neurons and it makes certain connections and you actually become smarter by learning a programming language.  

Arsalan: Yet, you also become smarter by learning anything new like a new language. If you wanted to learn French or Arabic or Chinese or any kind of a different language from your native language. You then build those connections in your brain and you become smarter. That’s just what it is. So, if you ask a kid who knows several languages, you will be able to exercise more of your brain. Similarly, if you know programming, that will make you smarter and will allow your brain to expand a little bit. So, I agree with that. I think this is pretty useful. 

Arsalan: Now, what happened after that? At some point in time, Timothy got you guys involved. Timothy, you got your brothers involved in this programming thing. How did that happen? 

Timothy: We first started to work together on apps. Eugene, here, is the quality assurance person. Daniel does the project management, and I’m the one who makes the apps. Eugene makes sure there are no errors or bugs in the apps and if there are, then I am responsible for fixing them. 

Arsalan: Okay, so you have divided the labor. You do the programming. Eugene does the QA or testing to make sure it works and Daniel is the one who manages the projects as the project manager to make sure that everything is done properly. Is that how you divide it? 

Timothy: Yes. 

Arsalan: Okay. So, why did they decide that they wanted to do those jobs and why did they not do programming? They’re not programming. They’re part of your software development enterprise. In software development, there’s not just programming. It’s not just coding. There are lots of different roles. There’s a role for somebody to make sure that what your building is going to be what the customer or the world needs. There’s somebody who is going to make sure that what is being built is proper. So, there’s a tester role and there’s a coding role. Many times, a programmer wears all these hats in small organizations and they do all of it. So, why did you decide to divide the work into these different hats where one person is doing one thing and the other person is doing the other thing. Why did you do that? 

Timothy: I knew that it’d be too much of a task for one person doing all the work like thinking up the project and making sure the project has no bugs. It’s all too much for one person. So, my brothers took some of the lead on projects with each brother being responsible for one aspect of one program. They are to think up the projects. I am to actually code the projects and Eugene’s last task is to make sure that they always work right. 

Arsalan: Okay. So, tell me a little about your company, BugZero. Is that a registered company? Did you register it as a company? 

Timothy: We’re still working on that. 

Arsalan: Okay. That’s totally fine. You can get an LLC, but obviously, you need a grownup to do that. I don’t know that as a child you could do it. A limited liability company is very easy to do. You just fill out a form and you’ll have a company if you really wanted to, but you don’t have to. You can just be yourself. You can be a proprietor as well – a sole proprietor and just have a website and that’s totally fine, too. It matters if you are going to collect money. If you’re doing projects to collect money and you’re doing projects for other people who are going to use it, then it’s a good idea to create a company. We can talk about that. If you want to know how to do that, I can talk to you about this. 

Arsalan: This has only been going on for about two years. In the meantime, you’ve learned all these different languages and then you and … all of the kids are in the process of publishing nine different books about programming. Is that right? 

Timothy: Yes. 

Arsalan: Nine different books. Okay, so that is incredible because writing a book is not a small feat. You need to have authority. You need to know what you are saying. You need to be able to say it. You need someone to publish it. So, there are lots of things involved. So, do you think that’s what you want to do? You just want to write a lot of books and that’s kind of your business model? When you sell the books, then you can bring in some revenue, like you said, to help your mom and so on and just make some money for the company. Is that kind of what you’re thinking? 

Timothy: No.  

Arsalan: Okay. So, tell me a little about these books. What is the first book that you decided to write? 

Timothy: A picture book about how everyone can code, including kids. 

Arsalan: Say that again. What’s the name of that book? 

Timothy: “Everyone Can Code, Including Kids” 

Arsalan: Ah, “Everyone Can Code, Including Kids.” That would be the picture book and how old would the kids be who should read this book? 

Timothy: Ages seven to 11. 

Arsalan: Ages seven to 11. Okay. It’s a picture book for kids ages seven to 11 and just letting people know that anybody can code. Why did you think about writing that book? 

Timothy: We wanted to show that everyone, no matter their ages, can code. 

Arsalan: Okay. So, tell me a little about this. What’s in that book? 

Timothy: It shows examples of JavaScript and different people coding … a police officer, a firefighter, a teacher, a chef … 

Arsalan: Okay. Did you do your own artwork or did you have someone else do it? 

Timothy: No. Someone else did it. 

Arsalan: So, did you hire someone to do the artwork or was it a friend? 

Timothy: It was the person who helped set up the Bug Zero page. 

Arsalan: Ah, okay. So, there is someone who designed the Bug Zero page, which is a website that you made using WordPress and that designer also helped with the artwork for your book. That’s wonderful. So, that’s a book that you’re still writing? Or, did you already write it? 

Timothy: We already wrote it. 

Arsalan: Okay. So, it’s already finished. It’s not published yet, though, is that right? 

Timothy: Oh, no. It is published. Wait, no it’s not. 

Arsalan: Oh, it’s not published yet. 

Timothy: No, not yet. 

Arsalan: So, if I wanted to buy that book, what do I have to do? 

Daniel: Excuse me. What did you say? 

Arsalan: If I wanted to get that book or anyone who is listening to this podcast right now, how would they get this book? Will they have to wait until you’re published? 

Eugene: Uh, yeah. …. 

Arsalan: Are you self-publishing it? Are you publishing it yourself or do you have a publisher? 

Eugene: We have a publisher. 

Arsalan: You have a publisher and it’s in the process of publishing. Okay, and my producer who did the pre-interview, she said that you have some kind of agreement in different countries. So, tell me where this would be published. Which countries? 

Eugene: Well, we want this book to be published in places like Haiti and … Well, first, we want it to be published here in America. Then, we want to spread it out to other places like Haiti, Ghana, and libraries in mostly third-world countries because we want to improve people’s lives there. 

Timothy: …and Liberia. 

Eugene: …and Liberia. Places like those. 

Arsalan: Okay, so, countries in Africa and certain other countries that are third-world countries where there’s a lot of poverty and people are struggling and you think that if the kids over there learn programming, then it would give them the tools to maybe get some jobs or make some money by making apps or websites for other people. I think that’s the social thing that you want to do. You want to help those people to have the means to support themselves. 

Daniel: Yep. 

Arsalan: And you also want to publish it in America. Well, that’s a big task and I wish you good luck. When it is published, you’ll have to come back on this show and tell us about it so that we can learn a little more about the book and our audience can, perhaps, go and pick up a copy. So, that’s wonderful. We’ll talk about this when you publish. 

Arsalan: So, then you decided to write other books. So, what was the second book? 

Daniel: So, the second book was my book and It’s called “Learn the Terms” and it’s a teen edition. It [helps] teenagers to learn the different terms in coding. So, when they begin coding, they aren’t saying things like “I don’t understand this. What is that? What does that mean?” They will already have a guide. 

Arsalan: Wow. I never would’ve thought about a book like that. I think that a book like that could be really useful, especially for people who may be feeling a little shy or maybe they don’t know and don’t want to ask a dumb question. 

Daniel: Right. 

Arsalan: So, you want to help those people and I think that adults could probably use that book too. So, that’s pretty useful because whoever is starting out, if they don’t have any background, how would they know? So, give some examples of the terms that you are explaining in that book. 

Daniel: We define what a bug is – a defect or a problem that stops the program from doing what it’s supposed to do. We define what functions are – like how your code uses functions and what they do. We also define scaffolding, like you said, which is like a skeleton or a preset to code something. It’s things like that and terminal and different things like that. 

Arsalan: Okay. So, you didn’t go to code school or any kind of code academy, did you? 

Daniel: I had a website resource list … 

Arsalan: Okay. How did you learn all these terms? Did Timothy tell you? 

Daniel: Yes. Some of them he told me. He has a coding mentor who comes to our house and they teach and work on coding. So, I’m there and I listen in to what they’re doing and I learn some of the things that they’re doing. 

Arsalan: Okay. So, let’s talk about this mentor. So, Timothy, you have a mentor that comes to your house every week, once a week? 

Timothy: Once on Saturdays. 

Arsalan: Once on Saturdays – and spends maybe one hour with you? 

Timothy: Yes. 

Arsalan: Okay. So, why did you want to have a mentor? 

Timothy: To help me improve my knowledge of coding. 

Arsalan: Okay and was it your idea or was it your mom’s idea? 

Timothy: It was my mom’s idea. 

Arsalan: So, your mom said: “You need someone to help you.” This is perfect because Mom had some background in programming, too, because she did computer science back in Nigeria. That was Nigeria, right? Did I get that right? 

Eugenia (Mom): Yes, you’ve got that right. 

Arsalan: Okay and you already did your computer science and math. So, you already know a little about programming and you were able to guide him. That’s perfect, but even if you didn’t, you know about having a mentor – this podcast is about mentorship, mainly. We need mentors. We need people to help. We can help each other, especially people who have been doing this for a while. We can make it easy for new people. So, that’s wonderful. You said that if he had a mentor, that would be good and he could ask questions. What does the mentor do? Do you have a curriculum that you follow or do you just ask any question? 

Eugenia: They meet on Saturdays and get to do fun projects. They do different exercises and he’s been able to get his brothers up to speed on the coding adventure. 

Arsalan: Okay and is there any particular programming language or a thing that they do like making websites or just whatever the kids want to do? 

Eugenia: Right now, BugZero.codes is bringing kids to tech. That’s what they say they are doing – bringing kids into technology. So, they work on the curriculum that they use for their workshop. They have a workshop once a month, where they teach kids how to code. So, the boys prepare for that and he kind of looks at what they are doing and [says] “Do we do this” or “I think we should go this way. What do you think we should do?” They get to talk about it. 

Arsalan: Okay. How did you find that mentor? That’s the hardest thing because if I wanted to find a mentor for my child, I think that I would have a very hard time. So, how did you find one? 

Eugenia: He actually taught Timothy in his technology school. Recently, a man named Mr. Roys reached out to Timothy, too, on LinkedIn. He wants to teach him AI. So, they actually started on that today – learning AI. 

Arsalan: Hmm. So, you have two mentors. 

Eugenia: Yes. 

Arsalan: Are you paying them or is that pro bono? 

Eugenia: One is pro bono and the other is a little tip. It’s nothing much. The whole idea is that they want to teach him. They want him to learn. They always say it is exciting, you know, to get him up to speed. They can’t believe that he is able to do the things that he does. 

Arsalan: [Laughter] Yes, I can’t believe it either. It’s quite incredible because most children – they want to do other things. They want to watch T.V. or maybe play with their toys, but your child wants to create things. You must be a very proud mother. 

Eugenia: Am I proud? No, but I am thankful. [Laughter]. He reads a lot of books. 

Arsalan: Okay. 

Eugenia: In a week, he could read as much as 20 books – in a week, I’m telling you – seven days. He sleeps with books under his pillow. He wakes up in the morning and the first thing he does is grab a book. 

Arsalan: Well that’s wonderful. What kind of books do you like to read, Timothy? 

Timothy: Mostly chapter books and sci-fi fiction. 

Arsalan: Okay. Not programming books. These are fun books. 

Timothy: We do have programming books, but I’ve already read them all. 

Eugene: He’s read them all. 

Arsalan: [Laughing]. You’ve read all the programming books. 

Timothy: Yes. 

Eugenia: …he’s read them all. 

Arsalan: Okay and what do you do? Do you just read them like a novel like you’re turning pages and reading code? Or do you say “Let me type it in and see if it works,” but that takes a long time. What do you do? 

Timothy: So, usually, I just do the pages – flip the pages and look at examples. Then, they often have results. I looked up what the code results in. 

Arsalan: Well, I think that you are a very special child and we need to explore a little more about all of the wonderful things that you know and are doing. We need to learn a little more about BugZero.codes, your projects, your website, what’s going on there, and your mentorship. This episode has been wonderful. It’s late where you are and where I am and I know that you have school tomorrow. So, I don’t want to keep you today for very long. Would you like to come back and talk a little more about all of the things that you guys are doing? 

Timothy: Yes. 

Arsalan: Okay. We would love to have you and thank you, Mom, for letting us talk to your kids. To your mom, I just want to ask if she has any messages for parents who have children and who would like their kids to maybe learn a little bit of programming or at least try a dabble in it. Is there any advice that you could give them? 

Eugenia: Every kid can code if we give them the chance. Sometimes we just don’t believe that they can do it. I didn’t believe that Timothy could do it. I didn’t even believe that his brothers could coincide, but they are. They are doing it. If we would just give them a chance, I think they would code. 

Arsalan: Wow. I think that’s a good message.  

Eugenia: Everyone, not anybody. It’s collectively everyone can code, including kids. 

Arsalan: Including kids – and adults, if they wanted to. 

Eugenia: Yes, if they want to. The whole idea … we need to take this fear that is attached to coding and programming … people don’t even wait until they get into it before they say “No, I can’t do this” or “No, I know my child can’t do this.” Some people think that the kids who do it are special. No. That’s why they are taking their messages to schools, libraries, and the community – to say that everyone can code. Every child can. 

Arsalan: That’s wonderful. You’re taking your message and basically talking to as many kids as possible and going to libraries. He’s getting ready for his first speaking engagement, is that right? 

Eugenia: Oh, no. He’s already done several in the last year. This year is just beginning. So, we’re going to be signing up some. 

Arsalan: Wow. What kind of speaking engagements has he done so far? 

Eugenia: He’s gone to different schools within the community. He’s gone to coding clubs within the community and he’s gone the libraries in the community. 

Arsalan: Okay. 

Eugenia: And, he’s gone to Meetup events to talk to adults and how they can increase the tech community because we need more people in technology. We need to bring more people on board. 

Arsalan: Yeah, absolutely. 

Eugenia: Every profession is waiting for the tech community. So, we need to grow the tech community. So, he reaches out to them, too, to tell them that you can get somebody on board. You can mentor somebody. You can pull somebody. You can encourage somebody. You can inspire curiosity in other people. Let’s not just keep our knowledge and our skills to ourselves. We need to pass it on. Pass it on the next person. Pass it on to your child. Pass it on to your neighbor. Pass it on to a friend’s friend. If only we could just make a little time. 

Arsalan: That’s a wonderful message. Yeah, let’s not hoard our knowledge. Let’s spread it, especially when it comes to something that is so exciting and amazing that even children are excited. Children are able to do amazing things with it. They feel accomplished. They feel great and they become smarter. Then, when they grow up, this is a good career for them, if they wanted to. You don’t have to become a professional software developer, but you could. That’s wonderful. 

Eugenia: Yeah. I was actually surprised. I was at a speaking engagement that he went for. There were about 300 developers and when he asked the question “Is there anyone here who is teaching a kid how to code,” there were none. I said “Whoa, really? None.” … Then, he came up with the acronym Mr. Ted – Mentor A Kid. So, replicate your problem-solving skill. T – Teach a kid how to code. E – Encourage a kid. D – Do it with all of your heart. If we do that, we will grow the tech community. 

Arsalan: Yeah, I think that’s a wonderful message. So, Timothy, is there anything else that you would like to say before we say goodnight for now? 

Timothy: No. Not necessarily. 

Arsalan: Okay. Your mom said it for both of you. You are very articulate. I am very glad to have finally met you guys and I think we would love to have you back. We’d love to learn a little more about all of your kids and all the things that you like to do. Let’s hope that we can keep this conversation going and let’s hope that anybody who is listening to this right now is encouraged and they get excited and maybe they follow in your footsteps. Then, maybe they can pick up one of your books to get that inspiration. When you publish it, you’ll have to come back so we can share it with the world. 

Eugene: Absolutely. 

Arsalan: Alright, kids. Everybody, I’m saying goodbye for right now, but we’ll see you later. Bye. 

Important Links

  • Tech Talent South 
  • Bug Zero Codes 

Thanks for Listening!

Do you have some feedback or some advice for us or our audience? Please give us a review on iTunes, Spotify, Google Podcasts, or Stitcher and share your thoughts.

If you found this episode useful, please go ahead and share it with your friends and family. You can also listen directly and give your feedback on the website.

You can subscribe to Mentoring Developers via iTunes, Stitcher Radio, Spotify, or Google Podcasts. 

https://media.blubrry.com/mentoringdevelopers/content.blubrry.com/mentoringdevelopers/MD-episode73-Emadi_Family.mp3

Episode 70 – How to start when you are clueless about technologies?

February 5, 2019 By arsalan Leave a Comment

Richard Kronick with Arsalan Ahmed and Mentoring Developers
https://media.blubrry.com/mentoringdevelopers/p/content.blubrry.com/mentoringdevelopers/MD-episode70-Coaching_For_Richard_Kronick.mp3

Podcast: Play in new window | Download

Subscribe: Apple Podcasts | RSS

Special guest, Richard Kronick, the guy who learned that sometimes you’ve got to get a little lost to learn something new – around China, anyway, is back again. This time, our interview will focus on a job counseling session as Richard dives deeper into his newbie coding journey. Show host, Arsalan Ahmed offers up some valuable advice on the importance of setting career goals and realistic milestones to achieve those goals to help Richard on his journey. 

Listen in to this valuable session to hear more about Richard’s journey, challenges, and the advice that Arsalan dishes out. 

Don’t forget to say hello to Richard on Twitter!

Richard’s Bio:

Richard is the co-founder and CEO of Kronick Enterprises, a passive income website development company. 70% of all the websites the company has produced currently receive thousands of daily visitors via organic search results. He has experience with HTML, CSS, JavaScript, and WordPress. 

In August of 2018, Richard decided to become a software engineer and is working towards this goal. He is enrolled in a .NET class where he has been learning C#, ASP.NET MVC, Entity Framework, SQL Server and Object-Oriented Programming concepts. 

Previously, Richard spent 13 years as both an English and Chinese instructor, having learned Chinese while living in China. He has taught at both the high school and university level. He is also a life-long learner and student. 

Richard believes in a life of service – that the great goal of life is to be useful and that achievement without fulfillment is empty – and a life of continuous growth. He hopes to join an organization where he can be a part of a team that contributes to the organization’s success and serves its clients and customers. 

Episode Highlights and Show Notes:

Arsalan: Hi, Richard, how are you?

Richard: Just fine. How are you, Arsalan?

Arsalan: Pretty good. Alright, everybody. This is another episode of Mentoring Developers. I’m talking to Richard about his career choices. We’re doing a little bit of counseling here. He really wants to do well in his fledgling software development career. He’s really passionate, but he has so many questions as I’m sure that people who are listening and watching right now will have questions as well. I love to help and I’d love to help you. Richard reached out to me and I’m here to see what we can do to help him.

Arsalan: So, how are you feeling this week?

Richard: I’m alright. I have no complaints. As time goes by, things become clearer and clearer, which is always a nice feeling.

Arsalan: So, what were your impressions when we had the first session last time when you had to force yourself to think about this in a different way. A couple of weeks have passed since then. So, what happened in the meantime?

Richard: Over the last few weeks, the biggest result of our chat was that it directed my attention more to thinking about deciding when I wanted certain things to be done. When you spoke to me about what interests I had and what area of web development might be most suitable to me, it really helped focus my thoughts in a direction, which resulted in a written plan of attack, really. I know that we planned this meeting to lay that all out, but it feels like it’s all sort of falling into place just from being forced to really take a serious look at it.

Arsalan: So, it’s always a good idea to take a step back if you’re in the middle of something. If you’re in the middle of a forest, you can’t really see the big picture. You don’t know where, in the scheme of things, you are. It’s the same for everybody. It happens to me a lot. When I’m in the middle of something, I forget why I’m here and where I’m going.

Arsalan: It’s always important to know where you’re going. It’s like a lighthouse back in the day … I think they still have lighthouses … so, if you on a ship and don’t know which way to go, you have this lighthouse and if you follow that, you’re going to get there, but along the way, you’re going to have challenges. You’re going to have minor goals and milestones. It’s common sense, but only seems to be common sense to you once someone points it out and then you’re like “Oh yeah, of course. Of course, I should have goals … and mile markers … and milestones.”

Arsalan: It makes sense, but it’s hard to do that when you’re in the middle of it because you’re stressed out. You have life issues. Some people have health issues. Some people have technical problems. It happens to me all the time.

Arsalan: When I have a big plan, about how to, for instance, build my own software product. So, I think about all the technologies that I could use and I pick the technologies that are up-and-coming or the ones that I think are most appropriate or I think I should know. Most of the time, this is the first time I have encountered that. I have read about that, but I have not really done it.

Arsalan: So, I go all in and say “Let’s do it.” I’m thinking that maybe I’ll spend a couple of hours and get some features or something and then I install it and then I’m getting stuck because something doesn’t work. Something fundamental doesn’t work. It can’t do Hello World because maybe the server isn’t configured properly or maybe there’s a library that’s missing.

Arsalan: So, you go on these forums and you go on Google and try to figure out how to set it up and you spend hours and hours doing that only to forget why you’re doing it in the first place and that leads to frustration. So, a good friend will tell you to take a step back, get up from where you are if you’re sitting, take a nap, lie down, go for a walk. Do whatever you need to do to take a step back and get out of that situation. Then, visualize where you want to be.

Arsalan: You can close your eyes and meditate. That’s fine. I like to have a piece of paper or a whiteboard where I’m just drawing random things I’m thinking about. I start with bubbles and boxes and where I want to go. It clarifies things so much. So, then, you could compartmentalize what you need to do at that particular moment. Sometimes, maybe what you’re trying to do is not really that important.

Arsalan: In my case, if I want to build a product, if my goal is to build a product, technology is not that critical – the choice of technology. I could use framework A, framework B, framework C. Framework C is the up-and-coming – the hotshot. It’s what’s going to be the dazzling stuff. I can show it around and say “Look what I can do with this new technology that everybody is crazy about,” but I’m not good at it. So, now I have two challenges: I have to be good at it and I have to do a product.

Arsalan: So, I’ve created a very large problem for myself. Yet, if I took a step back and said “My goal is not with this exercise was not to learn this new technology. That was a fringe benefit, but it was not the goal. The goal was to build a product. So, if I give myself two hours, what is the best way to do it?” Maybe framework A might be the best technology because I’ve been working with it for several years and I know how to set it up and am not going to get bogged down in just the plumbing. I’m not going to get bogged down because I know it; I do it all the time. That’s something that a friend or a mentor will tell you.

Arsalan: I will tell you again. If you’re in this situation, listen to this podcast again and hear me say that. Take a step back. Find your goal. Once you have the goal, then remove all the fluff and then I think things will be easier. Alright. So, enough of all of that. So, what we need to do is to find a path for you. Before you go to the path, a lot of times what I see is people trying to figure out what they need to do today. They wonder what kind of college they should go to or they wonder what kind of books they should read and they go into that ‘what kind of framework or technology I should invest my time in.’ They go into that, but they don’t have a goal yet. So, don’t do that. Let’s make a goal.

Arsalan: I think we settled on web development for you, right? That’s what you’re passionate about. That’s what you want to do and it’s important to be passionate about programming. In programming, it’s important to be very passionate about your choice of technologies, or … Let’s take a step back. I shouldn’t use the word ‘technologies’ here. You’re passionate about your goal. If you want to be a doctor, if you want to be a general physician, then you need to know that you want to be a physician who works in your own private practice and so on. You need to know exactly which place you want to get to. Then, walk back and consider for that type of job you should go to this type of medical school and so on and then you go from there.

Arsalan: In your case, I should not have used the word ‘technology’. I get into that trap myself. I shouldn’t have said that. What you need to do is to figure out “Okay, I want to be a web developer who can build modern web apps that are responsive.” Responsive apps are simply apps that look differently based on the type of screen that you run them on because that has a certain application. If you’re on a tablet or a phone or if you’re on a desktop computer, it will just scale and resize itself and shift things around to make them look nice. That’s a certain ethos. I think that’s important to know that this is where you want to go.

Arsalan: If you wanted to do that and to build a modern app that is a single page app that is an idea … I mean, you don’t have to say that you’re only going to do single page apps, but I think you should focus when you’re making goals. Then, you can deviate a little from it here and there, but you should focus. I think that if you wanted to do that, then that is one approach.

Arsalan: That is almost a different type of goal than to say a developer, who builds web applications for large companies, for enterprises, for business needs – critical business needs. In a lot of cases, when you have a large business, or when you have an important business …

Arsalan: Maybe you have a factory. It’s not a large business, but it’s critical that what you do works and only the people who are working inside the factory will see it. That’s a different goal, in my opinion. Not only the product that you’re going to build for them will be different – fundamentally different than what you would build for something like a Facebook. It would be a completely different animal. Not only will it be different, but the process to make it will also be different. The process to change it will be different. Your daily activities, what you do on a day-to-day basis when you get into work, will be different. What you do on the weekends will be different. Everything will change based on your goal.

Arsalan: There are other types of applications. There are different extremes. There are very public web technologies, web services, or websites that are in the public domain. Everybody knows it. So, there’s that type of work. Then, there’s enterprise type of work or more closed type of work, which is essentially internal applications that are critical for business, but they’re only going to be used by that business. Then, there’s also something in the middle, which is a little of this and a little of that and a lot of times governments — state governments, county governments, federal governments — have that. They may have certain needs or certain websites or certain software that other people can interact with a little bit, but a little bit of it is internal. It’s important, but it goes at a different pace.

Arsalan: So, if you can imagine yourself working five years at a company that is making public-facing websites and that’s what you’re primarily doing, and then someone is working for the state of Nebraska in their IT department, or someone is working for Berkshire Hathaway or whatever … I know, I’m dropping names … I know, these are all Omaha companies. So, these are some of the places where maybe they are making some investments and creating and pulling reports for all the different kinds of stock activity and whatever else they do. Those are not public. Those are internal, but they’re critical. Your lifestyle in each of these positions will be different and that’s why I harp on about goals.

Arsalan: What you need to know as a family man because you have a family, you have to decide on what kind of outcome you want for yourself. Right? That’s a hard question because obviously, you don’t know since you haven’t experienced it, but I can tell you from my experience.

Arsalan: If you wanted a 9 a.m. to 5 p.m. job, that is steady and less about programming and more about the structure and environment and you just go there, do whatever needs to be done – you may or may not be coding all the time, you may be doing something you like or something you don’t because that’s not your focus – your focus is to get a good job that has good health benefits and good vacation time and that you’re not going to get easily fired from.

Arsalan: It’s something that you can count on, depend on. That’s a very attractive option for some people. That would be something within the government or maybe at a university. Those are the types of jobs that you could get. I’m not going to knock off that. That’s great. The problem with that is that they’re not going to pay so much, but for some people, that’s not an issue. So, that’s one.

Arsalan: The other is you could work on proprietary technologies or these internal applications. I’ve seen companies … for instance, there was a factory. It was a very small company – maybe a few dozen people. They have a computer that runs the factory floor. They need to build something that can keep track of what’s coming and what’s going and it’s critical because if it breaks, they’re going to lose money because a factory needs to keep going 24/7 and breakage in the production line costs them a lot of money. So, because it is a critical piece, they’re willing to pay a lot of money. So, it would be a lot more than a government or university job, but the technologies are going to be very, very different. You probably would not be very happy with the technologies, but that’s been my experience.

Arsalan: Every time I’ve been to a place and I’m new to a city and I’m thinking about what kinds of jobs I could get. I’ve had those interviews where I’d go in and I know this is what’s happening, but they need me to build a Windows client application – essentially, a native Windows application, which is something that I could do, but then I would not be doing web development because they don’t need web developers.

Arsalan: They don’t want it. They want a … system where an application that you install on a computer does not need to connect to the internet. There is no server. There are no client servers. It’s a self-contained unit. It doesn’t need to contact others outside of its little world. So, that’s very good. The pay is decent. The work hours … and again you have these two issues … it will be like a 9 a.m. to 5 p.m. job.

Arsalan: I shouldn’t really call it 9 to 5 because in factory situations or unlike other types of work environments, they may have unorthodox work hours. It’s possible that they work different, weird hours, but the hours will be fixed for sure unless they make you do overtime, which can happen anywhere. Normally, though, you would just be working fixed hours – whatever those hours are. Those types of jobs are very important. They’re critical, which means that if something goes wrong, and it could be the middle of the night, you are on the hook for that. That’s a pretty common thing, by the way.

Arsalan: If you’re listening … I’m thinking about the listeners who want to be developers … keep this in mind. If you’re working on an application, a piece of software that is in production, which means that people are actively using it, and it’s a very important piece of software where peoples’ lives depend on it or money is being lost while something is wrong, then you’re probably going to have to support it by being on-call a lot. Sometimes that means getting a call in the middle of the night and then getting on the computer and trying to fix it. In extreme cases, it could mean driving to work in the middle of the night to try to fix it. Sometimes, you can’t avoid it. So, you have to think about this.

Arsalan: The third type of job is a different kind of company that is maybe a startup company or maybe a different type of company that is doing work that they’re trying to sell to consumers or maybe to other businesses, but essentially to the general public. There are two problems here. For instance, you may get a job at Yahoo and say “Well, Yahoo is a public-facing website.” You’ll find that a vast majority of programming jobs there are not public-facing. Very few people actually work on the Yahoo or the Facebook website because it’s not just a website. It seems simpler to an outsider.

Arsalan: If I came from the Amazon jungle and I knew some programming and somebody showed me the Google homepage, I’d be like “Well, that’s easy. That’s just one text box and one button and you click a button and it does a search. I can do that in a weekend. It seems easy.” The reality is that Google website is a behemoth. It’s a monster. It probably takes hundreds of developers to build just that website because most of the work is behind the scenes.

Arsalan: We don’t see that. So that’s what you end up doing. I know people who work for these companies and they don’t ever touch the public-facing part of the system. They’re over there. They’re maybe one of the thousands of developers who are working on this one, little piece and maybe there’s no actual web page. Maybe they’re writing reports or building this very small feature in the overall billing system. It’s a very small feature. It’s important, but when you’re in the middle of it you might as well be working for a different company, right?

Arsalan: So, we have to understand where we want to go. What I’d like, Richard, for you to do is instead of saying “I’m only going to work on web technologies that are of this nature,” or “I’m going to work on native technologies that I don’t have to worry about state management and the web world like this,” or “I want to build this type of software.” That’s not a bad way of looking at it, but there’s a problem with it. First, that changes from one era to another. In ten years from now, the world may change so much that these choices will make no sense.

Arsalan: The second thing is that the companies themselves evolve and they pick up different technologies. What I want you to do is to look at the three different segments that I just highlighted for you and say where you see yourself working. Which of these sets of companies or industries or sub-industries do you feel excited about? You are the only one who can answer that.

Richard: So, none of the three that you mentioned repulsed me, which is good. I think I mentioned last time that I’ve been running a WordPress website development company. There are no 9 a.m. to 5 p.m [shifts] when you’re doing that. I haven’t done a 9 a.m. to 5 p.m. [shift] in a long time and I like that. What I do is pretty much always on my mind. Maybe that makes me a workaholic. I try my best to stay balanced.

Richard: I always have time for what’s really important in life, but I can’t help but think about what I do most of the time. So, I suppose that I most naturally fit into the third option that you mentioned, but going to work from 9 a.m. to 5 p.m. and coming home and continually working is probably something that I would do if I ended up in the 9 a.m. to 5 p.m. position.

Richard: The reason I started doing what I’m doing –- building websites with WordPress – was because I couldn’t get it out of my mind. I was fascinated with it and when I started seeing results with it, then it just became more exciting. As I started to look ‘under the hood’ a little bit at what was going on behind the scenes, that’s what has attracted my attention – the actual code behind the scenes. That’s why I decided to pursue it myself. So, I guess I probably resonate most with the third option that you mentioned.

Richard: Ideally, what I really want to be able to do is to use my skills and abilities to help solve problems. To me, that’s what it seems that software development is. It’s a lot of problem-solving. I like that and it’s fun. So, I feel that I could be adaptive to almost any situation as long as the goal is to produce or maintain or improve something of value – something that serves.

Arsalan: Well, I have good news for you. Any software job that you’ll ever get, you’ll get to solve problems. That’s a given. So, that’s good that you want to do that.

Arsalan: The other thing is that I forgot to mention one other avenue with one other goal. Although, I don’t think it’s applicable to you. That is to go independent and solving other peoples’ problems as your own company. You don’t need a job, but if you’re starting out, then I would recommend that you get a job. That way you learn best practices and you learn from other people and not have to figure everything out yourself.

Arsalan: One other thing about the other sets of sub-industries, like the one in the government and the universities and the other ones in clothes shops and enterprises, a lot of times, you are on your own – especially if you are working in a factory environment where you are the programmer. They have an IT guy who takes care of the network and makes sure that the computers are running and then they have a programmer and you are that programmer. That means that it can get lonely, first of all.

Arsalan: Also, the problem that I see, especially for people who are just starting out, is that you have no opportunity to learn from anybody. So, how would you know the best practices? How would you know what’s a good way of approaching a problem? The other thing is that everything is on you. So, if something goes wrong, you’re on the hook. So, it’s more stressful. So, that’s another thing.

Arsalan: What I would recommend for you is to look for a job at a company where the people are really smart and humble. You’ll find a lot of places where there are lots of smart people, but they’re pretty arrogant. It’s an ego thing for them. If you fit into a certain profile and are good buddies with them, then maybe it’s okay. Otherwise, you’ll get the cold shoulder.

Arsalan: I’ve seen some really weird behavior. At times, though, it’s great because there are some people who are really down to Earth. They don’t have any pretensions. They’re good. They’re hard-working, but they don’t play politics and that’s a very hard thing to judge as you’re interviewing people, but that’s something you can do. If it’s easy-going and you feel that these people are not uptight, then I think you’ll have a better chance because your goal right now is not to get your ‘perfect job.’

Arsalan: It’s almost impossible to get a perfect job regardless of how my much you’ve gone to school, how well you are at programming, or how good you are at doing interviews because you are starting out. When you’re starting out, your goal should not be to get your perfect job. Your goal should be to set yourself up. This is something that I tell everybody.

Arsalan: Your first goal for your first job should be to put you in a state where you can get your second job. The entire purpose of getting and keeping your first job is so that you can get your second job where that will hopefully lead you to the right place. That’s still not your ‘ideal’ job, but it’s taking you in the right direction.

Arsalan: What you need right now is a place that will allow you to just absorb and learn. They will allow you to understand the business and business practices, understand the ‘behind the scenes’ work of software, understand software development methodology. There’s this pretty heavy word that people throw around. Basically, it’s how you build software.

Arsalan: Unfortunately, we don’t have a standard. I’m going to go out on a limb, here, and say that most companies don’t follow anything. It’s called ‘seat of the pants.’ This is what we do. This is our development methodology. A lot of companies will claim that they do agile, which is a buzz word that people like to throw around, but they are absolutely not agile.

Arsalan: Agile development is a very fascinating area of development and you can spend a lot of time learning about agile. It’s a structured way of developing software where you are coding, you are building your software, but you have one eye out for the ‘big picture.’ You have one eye out for what’s really needed and what’s really important. So, you are talking to your customers all the time and you are thinking about where this thing that you’re working on fits in with this whole thing because that’s what it is. That’s what agile is.

Arsalan: It is not necessarily TDD – test-driven development, where you write the test, which is sort of like a prototype. Well, I shouldn’t say prototype. You write the test. That test describes what your features should do. As you’re building new features and building new methods and you’re adding more and more stuff. Before you do it, you think about what it’s supposed to do. That’s what it is. That’s what test-driven development is.

Arsalan: It’s not about the actual test. It’s not about getting code coverage. That’s another thing that people say and I keep throwing new terms out and I have to remind myself to explain them. So, code coverage is just a way for us to know that when you’re writing a test – an automated test – where you can run a piece of code and it can test the piece of code that you want to write … to prove that it works appropriately.

Arsalan: This thing that you’re building – this important piece of software, and this little thing on the side is testing it. A code coverage number will tell you that when you run your test what the percentage of your entire code base is that you’ve tested. They keep track of every line that is hit in one of those tests and if you’ve hit 70 out of 100, then you’ve hit 70% code coverage. Code coverage is a number that people like to push towards 100.

Arsalan: Some people have rules that you cannot submit code or you cannot check code into a repository until it has 80% coverage or whatever. That’s another thing. I don’t agree with that necessarily because it sometimes makes sense to write a lot of tests and sometimes it doesn’t. Never the less, that is what you’ll find. When you’re out there looking for work, this is what you’ll find. A lot of people believe that that’s agile. That’s good to learn and it’s good for you to be out there experimenting with things, but you’ll end up learning bad habits and there’s nothing that you can do about this.

Arsalan: So, the bottom line is that your goal is to learn and that’s all that you can do. If you can get a job and be there for one year and a job where you’re working with other senior people – people who are down to Earth and people who are doing things themselves and hopefully, you’ll be doing something worthwhile. If you’re an intern and all you’re doing is making Excel reports, it’s still better than nothing because you may get a chance to talk to people and at least look at the code. You try to get the best and most attractive work that you can find, but for your first job, it’s more the people that you find. You can learn so much, so quickly with people.

Arsalan: I’ve seen [new] developers who find themselves in the amazing company of other [senior] developers. They develop in leaps and bounds and are so far ahead of everybody else. Within two years, [these developers] are giving conference talks. I’ve seen that. Then, in some places, people work for 10 or 20 years and they don’t know much at all. As some people like to say, they have their first year of development and they just repeat it 10 times. That can happen. Don’t be that guy.

Arsalan: What I’d say is this. It seems to me that you need something that is a little bit challenging for you. A lot of the corporate jobs and a lot of the jobs in the Midwest – that’s my assessment, but I could be wrong about this – in the Midwest, where you are, most of the jobs are corporate jobs for the first and second category, not the third category. The third category jobs exist, but they tend to be very small. They are startup companies that are very small and they’re making something or pushing something and maybe presenting something to the customer.

Arsalan: For someone who really wants to be in this third industry, you may want to be flexible so that if it’s in Chicago, you could say “yes.” In your case, and I’m not saying that you have to do it, but in general, you should be able to say “yes” to a job that’s in a location that you weren’t thinking about. New York — “yes.” Remember, this is not your dream job. It’s not supposed to be your dream job. It’s not supposed to be this perfect place where you just go in and build a nest around it and stay there for 20 years before retiring. That’s not your goal. Your goal is to get a job that will help you get your second job.

Arsalan: So, if it’s in New York and you have no interest in living in New York, but it’s a good job and the work is good and the people are great, then, if you can, I’d say go and take the job. Do it for a year and work hard and build yourself a portfolio of things that you’ve done. Understand the business. Understand the business processes. Understand software development methodologies. Understand whatever it is that you can understand from that environment. Soak everything up. Then, with one year’s experience, believe it or not, is enough to get you a much better job and in a much better location.

Arsalan: In your case, you may be able to … let’s say you worked for a year in New York on … let’s pick a technology, say Angular, Angular with Java or Angular with Python backend or something, and maybe you worked on the financials for a hedge fund – something related to stocks. With that experience, and hopefully, it was an intense experience, you could probably find a job for somebody in Omaha who needs this type of expertise, but they couldn’t find it. They are not going to teach you because they don’t know how to teach you.

Arsalan: This is another problem with our industry. We don’t have mentorship programs. We don’t have a system where you can bring in a new person and teach them the ropes and help them grow and become part of the team. We don’t do that. Every other industry does that. With every other industry in the world this is what happens, but in our industry, we want somebody who already knows everything. In our industry, we don’t have the time … the skills … any interest in a sort of graduating you.

Arsalan: With one year of experience, you might be able to get into the company that you really wanted to get into because maybe it’s close to home and so on. So, that’s something that you should really be open to if you can. If you have a family and kids and they’re into school and such, then if you can’t do it, then you can’t do it. Then, that’s not for you.

Arsalan: Then, what we need to do is look at lifestyle. Are you able to put in a ridiculous number of hours doing the work and then going home and doing more work? That’s the question.

Richard: I already do.

Arsalan: You do that right now, but are you going to give that up for this new thing that you’re learning? If you want to be a WordPress developer, that’s a very lucrative career, but on its own, it probably doesn’t pay as much as some of the other things. Yet, WordPress work is expanding; it’s exploding. There’s so much work for WordPress developers. So, that’s a career on its own.

Arsalan: If you wanted to work at a company that is doing Python or they’re doing Big Data analysis. Or, it’s a financial services company and they do mortgages and they’re doing all kinds of financial calculations and you’re working with all kinds of quants, which I learned that that’s what they’re called by the people who do the math. Or, maybe you’re working in healthcare. You’re working at a company that does medical records. That could be exciting for you. That could be really rewarding for you, but you’d probably have to give up working on WordPress for that because you only have so much time.

Richard: I’m not sure if I’ve mentioned it, but I actually don’t spend any time working on my business anymore. About five or six months ago, I actually trained someone to do everything that I was doing. Now, I spend all of my time learning software development. So, that’s what I meant. I spend all of my time working on that right now.

Arsalan: Okay, so you will be able to devote [the time]. That’s perfect.

Arsalan: Okay. So, the next thing is that you want to work on the web. So, we have established that you want to work on the web. You want to work in a challenging position, but not necessarily 9 a.m. to 5 p.m. One of the benefits to doing that Once you’ve learned the skills and gone through the grind, once you’ve spent about two years — with your entrepreneurial background, then there’s nothing stopping you from getting your own clients and not having to work [at a traditional job]. You could totally do that, but you need to do the time [first]. It’s like a jail for people who like to be independent to then have to work at a company and have a boss and all the constraints that go with that, but it’s time. When you do the time, you come out of it with all the tools. So, that’s pretty exciting for someone like you who already knows how to run a business. That’s good.

Arsalan: Now, let me ask that other uncomfortable question. Are you in a position where you could relocate for a year for a job?

Richard: Yes.

Arsalan: Okay. That’s great.

Richard: Yes. Since my wife is from the Philippines and we have family from four different countries and on two different continents, years ago I started trying to make us as mobile as possible. That’s one of the things that led to the business. I used to run the business from my laptop and it’s still completely mobile. So, yes, we’re very flexible. My wife and I enjoy moving and traveling. We spent quite a few years overseas. So, we’re happy to jump into a new environment.

Arsalan: Well, that’s great. My wife is exactly the opposite. She does not like to move and I’ve made her move over the years and I never hear the end of it. So, that’s wonderful. That gives you options. You’re in a small city. Yet, even if you’re in a big city, by deciding that you don’t want to move for the culture or the food or the family, you are limiting your career options. Initially, I think you should really give yourself the best chance of success.

Arsalan: It’s like a train. It’s slow to start. You need as much push as you can give it. Once it starts, it’s easy to keep it going. Just by being flexible, you’ve opened up a lot of options for yourself. I can tell you that there are a lot of companies that are looking for people … and maybe they just can’t find enough people in the local environment.

Arsalan: There are some remote working jobs as well. That’s something that has to be mentioned because they exist where you could work from home, but I do not recommend it for new developers. The whole point of it is that you need to be in an environment where you learn. You can’t really learn while you’re at home. You can, but you can’t learn the processes. You can’t learn businesses. You can’t learn it when you’re isolated. So, that’s wonderful.

Arsalan: Now, in terms of industries, do you care about any industry or is there something in particular that you hate? [I’m talking about something] that you never want to do. “I hate this industry.” Or, the type of business? Or, is there something that you really love and just wish you could do. The reason I say this is … I think that it’s important that I say why I asked this question … because if you are super-excited about something more than anything else, then you are going to put in the crazy effort that is needed. Also, if you absolutely hate something, then there’s no point in even going over there. Over to you.

Richard: Okay. Well, I probably haven’t given your question enough thought, but having spent over a decade in education, that’s one area that I resonate with a lot. [I enjoy] educating and helping the next generation of people in general. I suppose that anything that I absolutely would not want to do would be [a situation] where the business was deceitful or it wasn’t creating value or it was taking away rather than giving. That, I would not want to be a part of.

Richard: I would want to be part of something that is increasing and growing, improving life rather than taking away. So, that would be the big ‘no-no’ for me. Something like that.

Arsalan: Okay.

Richard: It’s important [to me] to be of use, of service.

Arsalan: So, in other words, you don’t want to work for hedge funds. Just saying.

Richard: Probably not. (Laughing)

Arsalan: A lot of times there are businesses that are in the business of making money out of nothing. Sometimes that is not so fulfilling as something where someone is building software for K-12 and helping teachers achieve success. Here’s the problem [with those]. It’s something that you have to reconcile. A lot of these jobs and careers that are high causes feel good to be able to do it, but they don’t pay much. Sometimes they pay enough, but for sure they don’t pay as much as other things that may not be as pure or as satisfying. That’s totally fine.

Arsalan: Personally, I like for my life to be meaningful. I want to be able to contribute to society just like you do. I want my life to mean something. It’s very important for us. We’re not just living for money. Yet, at the same time, money is important because it lets us do things that we want to do. It lets us be charitable in other ways. So, that’s a very important decision that you now have to make. What matters more to you? It’s not something that you have to answer right now, but it is something that you have to think about.

Arsalan: I think for your first job, it doesn’t matter what type of job or what type of industry you’re in if I’m being honest. The first job is not your goal, not your end goal. The first job is just a way for you to get a second job. If that’s true, then the first job, if it’s in something that you don’t necessarily want to do, that’s still okay. Ideally, it would be. If you want to make games, work for electronic arts and build games, or you just like that 3-D gaming stuff and like spending all that time doing it, then maybe you should start there. If you are working at a financial firm, then you would not be learning the business process that you need to learn.

Arsalan: The problem is that our software industry is so fragmented that building a game is a lot different than creating regulatory reports for the government. It’s a different way of doing things. So, for those extreme cases, I would say to try to get the job as close to your dream job as possible. Yet, if you are more of a generalist, then I would say that you need to work at companies where you can learn and grow. So, the question for you is: What are those companies? So, what we need to do now is to make a profile for those companies.

Richard: So, there’s one thing that’s very important to me. I don’t want to work at a place where they expect you to know everything. I want to work at a place where they expect you to be willing to learn. It would be nice to work somewhere that it’s understood that there is so much to learn in our field and you won’t be a master of everything, but there will be a culture where people will help each other out and understand that sometimes we have to learn some things.

Richard: If you’re willing to learn, then with the right atmosphere and people are going to help you rather than pretend that you know everything while you’re trying to learn everything on the side. It’s hard to succeed in an atmosphere where you have to be like that. So, one thing that’s very important to me is this understanding or recognition that we’re all learning and even the most experienced developer has something to learn.

Arsalan: Yeah, we’re all constantly learning, but we never like to admit that. Now, that’s a dirty secret here.

Richard: Yeah.

Arsalan: We all pretend. I like to not pretend. I like to be brutally honest. If I don’t know something, then I like to say that “I have no idea. I can figure it out. Let’s do that.” If I don’t know, then I don’t know. There’s no shame in not knowing. What I’ve noticed is that it doesn’t work. In corporate America, you pretend. Everybody pretends. If you don’t pretend, then you end up being looked down upon. People the thing “Oh, he’s not as important.”

Arsalan: That’s another thing that I’ve noticed. There are a lot of politics in software companies. You wouldn’t expect that because of generally younger people … why would there be politics in a software company or a department within a company that is focused on software?

Arsalan: It feels wrong because not many developers are going to become CTOs or CFOs. So, stepping on top of each other makes very little sense, but it happens as human behavior. So, you’ll end up in situations where people like to project that they know a lot and they’re pretty good. You will find places where this will not be the case and I hope you find a job in those places. Maybe for your second or third job you should keep a lookout for those kinds of places, but for your first job that may be a little unrealistic. It’s good to know, though, that that’s where you stand.

Arsalan: If a company is advertising for a junior developer position, then they really should expect that you don’t know. If you look at the job listing, it’ll still show a thousand things that you must know … but by the way, it’s a junior developer position. It makes no sense. Most of the time, it’s really more like a wish list. They don’t really expect anybody to have that. Maybe it’s a way to filter out candidates. It’s a way to scare people off.

Arsalan: It’d be like if I had a gun and I had a mob coming to my house and so I said “Hey, I’ve got a gun” because I’m hoping that most of them will run away. The fact that I wouldn’t have any intention of using that gun would be the wrong example to give. (laughs). That’s probably a pretty bad example.

Richard: Makes sense.

Arsalan: The point is that it was [used as] a threat [in the example]. It [the detailed junior developer job description] is a threat that [they] will not allow you in the gate unless you have these 20 things. They’re hoping that most people will say “Oh, man. I can’t do it.” That way, they don’t have to deal with all those people. Then, they only have five to 10 resumes per job to go through.

Arsalan: So, if you are able to contact the hiring manager, not the recruiter because when you see a job opening, a lot of time … and this is really bad, these are third-party companies, other companies that are trying to be the recruiter or trying to get you into a company and that’s how they make a lot of their money. That’s their business model, but they’re not the actual hiring manager. They’re not the people who need you. So, they don’t really know anything about the company. They know very little. They don’t know anything about you. They don’t care about any of that. All they care about is to get you to agree to work with them and only with them so that now they can sell you to the company. You become the product.

Arsalan: So, they want you to sign a contract where you will never be able to or not be able to go directly to the company. So, don’t fall for that if you can help it. Initially, try to stay away from … we call them body shops. Don’t go to body shops. Try going to the company directly. Find out where the job is.

Arsalan: A lot of times you will see a job listing, but it will not mention the company. So, you think that the company that is posting the job is the one that has the job, but no. They’re just trying to place you somewhere. The actual company where the job exists, you will have no idea where it is. So, maybe sometime you can do some Google searches. Try to be a detective and figure out where the job is, exactly. Sometimes you’ll find jobs posted with the actual hiring companies.

Arsalan: You really should try your best to find out where the job is. Then, try to figure out which department it’s in and who the manager is because the most likely reason they are advertising for this job right now is that there’s a really big problem that they need to solve.

Arsalan: It’s not because they need five more people in the department. It’s because there is a problem and they’re under stress and they really want to fix it. They want someone to come in right away. So, what do they do? They go and talk to their HR department and place an ad. Or, they talk to a special vendor – these companies that have a special agreement with them, to give them candidates because they don’t have the time to go and look for candidates themselves. So, they blast these job sites with all of these ads.

Arsalan: So, there could be five different companies all advertising for the same job. None of them have any actual idea of what the job is really about. They’re just copying and pasting. So, what you need to do is find out who the company is and who the hiring manager is. Go to LinkedIn and do a search. Find out what they’re about and what other things they’re passionate about. Where do they hang out? Maybe you know them already or maybe you know somebody who knows them.

Arsalan: So, when you get all this information and you figure out what this company is … maybe it’s even in your neighborhood and you just knock on the door one day. I’ve done that. You just ring the bell and say “I just wanted to see what you guys are doing.”

Arsalan: Maybe they’re friendly enough to let you in to meet them. Then, if they really have a need and ask what you do, then you can say “I’m a developer and I’ve been doing this. I just wanted to see if you guys had a need for someone with my skills to help you guys.” Then, if they’re free and have a need, they may say “Sure. Why don’t you sit in the meeting room and I’ll see if I can find somebody?” Then, maybe, possibly, you can get the process started. If not, you could email them or call them.

Arsalan: If all else fails and you have to use the recruiting company or placement company, then sure. At least you’ll have an idea of what they want. When you know what they want … and I don’t want you to lie. A lot of people will say to just make your resume reflect everything that the job wants. If you know it or don’t, just put it in. The reason to get your first job is to get your second job. Your first job is not to launch your career. Your first job is to get your second job. The reason to have a resume is not to get a job, but to get the interview. Once you’re doing the interview, then the resume kind of doesn’t even matter. So, while all that is true, I would not want you to lie in your resume. It’s a very common practice. People lie all the time.

Arsalan: You don’t need to lie. You just need to give the reader who’s looking at your resume the information that they need without the fluff. You may have done a lot of things in life and you may have a lot of experience in WordPress, but if this job has nothing to do with WordPress, then that’s a detail that you should reduce or omit because it’s a distraction. You’re not lying by omitting that. If they ask you, then you can tell them “Yes, this is what I do as well.”

Arsalan: Let’s say that it’s a job that requires JavaScript and CSS because they’re going to be building these custom websites and they want somebody to go in there and make these modifications, which will make the UI – the user interface – look very nice. For that, they have decided that they’re going to use CSS and JavaScript and a framework. Let’s say they want to use the React framework. That’s what they want to use for various reasons. So, if you don’t have any React experience, then you shouldn’t say that you do. You shouldn’t lie about it.  

Richard: Right, because then you’d have to pretend that you do if you get the job.  

Arsalan: I’m not saying that if you lied about it and you put all the technologies in your resume that you’d never get the job. People get jobs like this all the time. They make up stories. You could make up a story and say “Yes, I did this job. I worked on React and worked on this thing.” Unless they make you write code in front of them, they don’t know.   

Arsalan: It’s just a matter of ethics. It’s being a good person. I believe that it’s important that you’re true to yourself. You should not … because lying is like admitting that there is something wrong with you, that you’re not good enough. That’s really not a good place to be. You are good enough. You have what it takes to succeed and to also help this company. This company needs you as a candidate. You don’t need them. They need you. You need to have the self-belief that you’re good enough. You can’t have that if you’re lying because, obviously, that means that you don’t think that you’re good enough. So, I want you to be truthful.  

Arsalan: Let’s look at an example. Let’s say that there’s a job that requires React, but you have never done it. You’ve done JavaScript. You’ve done CSS, but you’ve never done React. You have two options. You could just show up, go there and, hopefully, you get the interview, but you can say “I have not done React. I have looked at it. I have read about it. I know what it does. I can tell you a few things about it … it’s a framework for building single page applications. It has a very interesting view of the DOM. It does certain things in a unique way, which is why people are picking it up. I know that, but I have not had a chance to work in it. Yet, I know that I can pick it up … because I’ve picked up JavaScript and I can do these five things and … React is built on top of JavaScript. React uses JavaScript, a certain brand of it and has certain idiosyncrasies, but I can learn that … in a couple of weekends. I’m pretty sure that if I got this job, then I’d be pretty good at it. There’s so much more to software development than the technologies themselves and I know the business processes. I know this methodology. I know test-driven development, for instance.”   

Arsalan: You could make a case for yourself, not because you could sweet talk your way into a job, but because you believe that you have what it takes. You believe in yourself first. That’s one approach. That’s one of the two approaches that I’d recommend.  

Arsalan: Another even better approach is for you to say [to yourself] “Okay, this company works with React. I want to get this job, but I’m not ready yet. Let me set a timeline for six months later. I’m going to apply for this job and I’m going to get it. During those six months, I’m going to do two React projects to showcase what I can do. Not only that but maybe these are projects that I can do at work at my current job. Firstly, I’m going to make these two React projects on my to-do list, not random Hello World projects, but something useful. I’m going to make it. I’m going to put the software code on GitHub, which is a shared repository. It’s a public place where people can see what you’re doing. They can not only see what you’ve produced, but they can also see the progression, every week, every day – what you throw there. So, they can track you and see that you’re not lying. Then, you deploy them to a public website, maybe your own domain or a different website.  

Arsalan: For instance, I have a virtual server that I rent and I put all of my websites there. I don’t need to pay a hefty subscription for every website that I want to run, for instance. I could run twenty of them because the traffic is not so much. If the traffic becomes a problem because it’s a virtual environment, then I can turn it into a virtual machine and, hopefully, there’ll still be enough. So, you could go and rent one of those from one of the various companies that do that and then you can start making websites and start putting them online. Then, your [goal] is to get that job in six months.   

Arsalan: So, for the next six months, your task is to do these projects. They go onto your resume. You don’t have to say that you did them for a client. You can say that they are personal projects. Make a heading called ‘personal projects’ and put it in there. Give as much detail as possible on the important things – the things that you learned, the things that you accomplished. Maybe, if you have telemetry like how many users use it and so on … anything that you can do to show that you not only know React, but you also know a little about how it’s being used and you know about software development. Then, you already know the company that you want to work at. Do a little sleuthing to figure out where they hang out. Maybe there’s a user group where they’re always at.   

Arsalan: Maybe there’s a React user group in your area. Just go there and see if you can meet them and then meet as many other people as you want. Then, you don’t have to start selling yourself. You can just be friends with them. If they know you already – if they know your name and a little about you … and as you’re working on React, maybe you have an idea of giving a talk. It could be a ‘lightning talk,’ but if you don’t feel comfortable doing that, then maybe you could write a blog post and share it within the group. You can do that. Even if you don’t share it – even if you just have it on your GitHub, on your blog, in your YouTube videos or whatever you’re doing.   

Arsalan: Then, when the time comes because the six months pass and you need to apply, you won’t have to go to a ‘third party body shopper’ to apply. You can just go directly to the company and say “You know, I’ve noticed that you’re working on React. I’ve been working with React for six months and I really enjoy it. I think I could be very good at your company and if you want to take a look at my portfolio and have a chat with me, I’d love it. I’ll buy you dinner. Or, I’ll buy coffee.” If they’re friendly enough, they might say “Yeah, let’s talk about it.” You could buy them lunch or you could buy them coffee. Or they might say “No, let’s talk to the HR” and whatever. In this case, the should most likely talk to you and that’s when you can go and present yourself.  

Arsalan: Be honest. Be straightforward. I like to be honest for ethical reasons, but there are also practical reasons. When you’re honest, you believe in yourself. If you believe in yourself, Richard, they are going to believe in you. That’s how you get a good job. You’re not filling up your resume with all sorts of technologies. You’re not out blasting 100 people. That’s not how you get a good job in my opinion. What do you think?  

Richard: I agree with you. I believe that many job opportunities are not found through these job placement websites. I mean, sure, some are, but I’ve found very few jobs in my life that way. It’s about being real, being yourself, and getting to know people. If you’re a human face to someone, it goes a lot farther than details on a page.   

Arsalan: Yeah. Okay, I didn’t want to stop in the middle of this consultation, but we have gone way over. Yet, I think that it is important that we went through some of these topics. For you and for anyone who is listening, and for myself, to just be able to say it. So, I believe we have covered a lot of ground. We know what type of jobs you want. We have a strategy on how to get a job. Now, the original question was “What type of technologies should I learn and what should I learn?” I turned it around into this big quest for a goal and milestones. It seems wishy-washy, but I think we’re getting there. So, if you’re up for it, we can continue this next time and then we can go a little deeper on your choices of technologies and so on. What do you think?  

Richard: Sounds great.  

Arsalan: Sounds awesome.  

Richard: I’m up for it.  

Arsalan: Alright, and I know that you’ve been feeling sick for the last couple of days and I’m hoping that you’ll feel better next time with a lot of positive energy. Talking to you and giving you advice and giving you a consultation is giving me energy.  

Richard: Good! That’s nice to hear. It was just a small cold. I’ll be just fine, but thank you, though.  

Arsalan: Awesome. Okay, so we’re going to schedule you for another one of these consultation counseling sessions. If you’re someone who is listening right now and is thinking “That’s pretty good. I wish I could get a counseling session with Arsalan. If you want, then just let me know. You can email me at us@mentoringdevelopers.com and I’ll see what I can do. If I have time, we’ll go online and we’ll record a session. If not, then maybe I’ll just answer your emails. I’d love to hear your comments and if this show is helping you, how it’s helping you, or if you want to see something different. That’s great. There’s also a mailing list on the website at mentoringdevelopers.com where you can sign up and get the ‘Five Steps to Success’ email course, which Richard has been going through.  

Arsalan: How’s your experience reading those emails?  

Richard: It was great. I think they came about once a week. It’s nice because my impression is that the goal of your emails is to help us look at the big picture – to see things from the big picture in the grand scheme of things. It’s very motivating and encouraging. I highly recommend them.  

Arsalan: Yeah, that’s good to hear. Basically, what I do is I take a step back and put myself in your position. When I was starting out, I was really struggling. Nobody was helping me and there was nobody who I could ask for help. I always struggled in spite of the fact that I always wanted to do programming. Since I was a kid, that’s all I wanted to do. I wanted to be a programmer and work with computers. I wanted to build games. That never happened, but close enough.   

Richard: Still time.  

Arsalan: Yeah. In spite of spending so much time … in spite of going to college to learn this and being dedicated to this, I still struggled. So, I was thinking about all those who didn’t have that background. So, I don’t want you to struggle and that’s what I’m doing. I feel like there’s not enough empathy in our industry. Hopefully, by listening to or watching this podcast and by going through the emails and emailing me for feedback, I’m hoping it makes this world a little better.  

Richard: I think so.  

Arsalan: Alright. Okay, we’re going to stop now and we’ll see you the next [counseling consultation] episode. I’ll see you, Richard, very soon.  

Richard: Sounds good. Thanks, Arsalan.  

Important Links

  • Kronick Enterprises Org 
  • Richard’s Portfolio
  •  GitHub

Thanks for Listening!

Do you have some feedback or some advice for us or our audience? Please give us a review on iTunes, Spotify, Google Podcasts, or Stitcher and share your thoughts.

If you found this episode useful, please go ahead and share it with your friends and family. You can also listen directly and give your feedback on the website.

You can subscribe to Mentoring Developers via iTunes, Stitcher Radio, Spotify, or Google Podcasts. 

https://media.blubrry.com/mentoringdevelopers/content.blubrry.com/mentoringdevelopers/MD-episode70-Coaching_For_Richard_Kronick.mp3

Episode 69 – Mauro Chojrin from Standup Comedy to Coding Success

January 15, 2019 By arsalan Leave a Comment

Mauro Chojrin with Arsalan Ahmed and Mentoring Developers
https://media.blubrry.com/mentoringdevelopers/p/content.blubrry.com/mentoringdevelopers/MD-episode69-Mauro_Chojrin.mp3

Podcast: Play in new window | Download

Subscribe: Apple Podcasts | RSS

You don’t always end up precisely where you started in your career life, and that includes the industry, but a calling is still a calling. According to the Bureau of Labor Statistics, at least in the US, it’s not uncommon for a person to change jobs 11 to 12 times over the course of their career life. With that said, once you find your true calling, your ‘dream job’, even if you initially leave the field, it’s easy to see why you might return to it. That was the case with our next guest, Mauro.

Meet Mauro Chojrin, an Argentinian authority on PHP, professional training, and coaching. Mauro dipped his hands in coding at a young age, thanks to the help of supportive parents, a Commodore 64, and an uncle who owns an IT company, but things were not always easy. When his programming took a left turn, Mauro decided to try his hand at standup comedy.

While comedy was fun for a while, it began to pale in comparison to his original love…computer programming. So, Mauro returned to tech and hasn’t looked back since. He gained an education and continued to find ways to practice and build on all those juicy, but essential coding skills. Today, Mauro runs his own tech business focusing on PHP and combines his love to code with his love to teach. Listen to his story in episode 69 now…and don’t forget to say hello to Mauro on Twitter!

Mauro’s Bio:

Mauro is a PHP trainer and consultant from Buenos Aires, Argentina. He’s been teaching programming since 1997. He has learned several different languages and technologies along the way and has been working as a professional web developer since 2003.

Mauro has worked for different-sized companies, acting as an architect, a technical leader, and a project manager among other roles. Today, his main activities aim to help PHP dev teams improve the quality of their deliverables through more streamlined processes.

Episode Highlights and Show Notes:

Arsalan: Hi, everyone. Welcome, once again, to Mentoring Developers. Here we are with a very interesting guest today who was doing programming and had a nice job, but then he got fed up with it and decided to go into standup comedy. We want to know why it happened and what didn’t work. So, are we talking to a software developer or a standup comic? Welcome, Mauro, how are you?

Mauro: Hey, Arsalan. How are you?

Arsalan: I’m pretty good. Tell us a little bit about your foray into standup comedy.

Mauro: Well, the thing is, I was working full time for a large software company in Argentina. At the time, I had it with software. I had been a software developer since I was very young, and I had always liked the standup thing. One day, I picked up a flyer that read Come Study Standup Comedy with Us. I saw this is my chance. So, I went into it and did a couple of shows. I was considering ditching my computer completely. Then, I realize that it would be really hard for me to make a living out of standup comedy. So, I made peace with the computer side of my life and I must say that I do always enjoy programming and stuff. So, I put standup comedy aside and went back into development and computer-related tasks.

Arsalan: So, how long did you stay in the comedy world?

Mauro: Approximately a year and a half, maybe. The other thing that happened was that once I decided I wasn’t going to pursue it as a career, I still wanted to keep doing it because I really enjoyed the activity. Then, I got married and between all the preparations for the wedding and my two teachers that were fighting between each other… there wasn’t really much to go back into. It’s one of those things where you say to yourself, “I will pick it up later,” but that day never came.

Arsalan: Tell me honestly. How much of this was your wife’s idea to quit?

Mauro: I thought about quitting, for real. I never really wrote any…

Arsalan: You realize that there’s no money here. In software development, as boring or as repetitive as it can be, it’s still one of the best careers and you could make a pretty good living and software development. All of us have realized that. I went into artistic endeavors in my own life. At one point I had considered leaving software development because I thought I was good at other things. Then, I realize that software development is pretty cool. You can carve your niche. You can make a good living and you sometimes it’s just a give-and-take. So, it’s wonderful.

Mauro: Yeah, it’s about finding the niche to make it interesting for yourself. I usually consider myself a very creative person and I don’t like doing the same things all the time. Yet, I think it’s very possible within the software industry to have many different roles.

Arsalan: You can have different roles within the company. The company can change directions and start to do different things and you can get involved with that. Or, you can change companies. You can move around. You can move to different countries if you don’t have opportunities where you are. Okay, that’s pretty good. Take us back to when you were a kid and you said that you got into programming early. What was your first experience with programming and how did you know that there was a thing called programming?

Mauro: Okay, it came from my parents. They bought me a, I don’t know if the audience will be familiar with this computer or not, a Commodore 64 computer. It was an 80s something computer. Back then I was eight. My father has a younger brother who got into computers back in the 70s and he did really well. So, at some point, he said that this was what he wanted for his kids. So, as soon as I learn my numbers and things he went out and bought me a computer. They immediately sent me to a programming course on Logo. You know, the little turtle thing?

Arsalan: Uh-huh.

Mauro: I must say that it didn’t go well. Each time I was in the class, I would do the exercises and everything, but when I got home, and I tried to show my dad what I had learned, things never worked. In my own computer, things did not work. That was very frustrating, I have to say. So, for 3 to 4 years after that, I used the computer strictly for games, which Commodore 64 was very good at that.

Mauro: Then, I eventually went to a friend’s house, who was a year older than me. He knew how to program computers. He knew some Basic. I asked him if he could teach me some. He said that he could but that I would probably want to read this book. He handed me a book called Basic for Kids. That was the change and the tipping point. That became the before and after in my life. Before I read the book and after. I got into it quickly. I started developing my own software programs. Back then I was also completely into gaming. So, I tried to develop my own computer games with Basic.

Mauro: Then, I loaned the book to another friend of mine, who is in the same classroom as me. He also got very excited about it. Then, he bought the second part of the book, which was Advanced Basic for Children. I remember that the cover of the book had a Mr. Potato Head. The first book was to end the second book was three and they covered more advanced topics. The funny thing is, this other friend of mine did not have a computer in his own house. So, he would come to my house on a fixed day every week like a Monday or Wednesday or something and we would create our little programs. Back then, I created mostly conversational games. The graphics were very limited with that. That is pretty much what got me into computers. Besides a standup comedy, which we were just discussing, I never really went very far with it.

Arsalan: Yes. That’s the one wonderful thing about programming. It’s a wonderful skill to have. My daughter is eight years old and she’s learning to program. She has been doing programming for two years. She’s been doing it in Scratch. Now, I’m getting her involved in Python. She likes it. It’s a little boring, obviously, but it’s not like playing games. Yet, it is captivating. You can probably keep her interest for a few minutes and that’s enough to teach her a little bit at a time.

Arsalan: It’s a skill and you get to make things. Everybody likes to make things and they like to show people what they made. As they get older, they like to do. Then, hopefully, with a few years of experience behind them, they find themselves in college or looking for work and by then they have a very good idea of programming. It’s a natural skill for them to get into and it turns out that there are a lot of jobs there. There’s a lot of background noise there. Is there a lot of traffic? What’s going on?

Richard: There are some construction workers around here. Sorry about that.

Arsalan: I just wanted to see where the noise was coming from. We can probably cut some of that out. Will see what happens.

Richard: Okay.

Arsalan: This is how you got started. You were a kid. You got interested. Did you ever go to school, a college or university, and study it?

Richard: Yeah. When I went to high school, it was a technical high school. So, I had some programming courses during the first couple of years. After the third year, every kid got to choose their own major. It wasn’t called that because it was in high school, but that’s essentially what it was. So, I chose ‘computering’ and I had programming courses, all the competencies and everything surrounding computers. So, that was interesting.

Richard: Most of the topics I didn’t have mastery of, but I had an idea of what they were talking about. Yet, I did learn a lot about the computer hardware stuff and what goes into it. Afterward, I went to a university. Technically, I don’t have a degree in computer science, but it’s mostly because I never went to a university to ask for it. I completed all the courses and submitted my CCs a couple of years ago. So, I completed it, but I never went to get my degree. Once I was working and everything, I never really saw the need for it. It’s one of those things where I have to do it and stop nagging about it

Arsalan: So, you don’t have any degree right now, but you finished enough classes that you could’ve had a degree by now with computer science?

Richard: It’s a matter of having a piece of paper. I have all the credits and such. I have a degree as a technician for my high school, but that doesn’t really count for anything.

Arsalan: The reason why I’m asking is that many of our listeners and viewers are in the same position. They believe they can do programming, but they don’t have a degree. Or, they have another aptitude, but they don’t have a degree. So there wondering how they’re going to get hired. Yet, I know for a fact that after a little bit of experience, nobody cares what degree you have. So, that’s why I’m pointing it out. Did you ever bother you or cause you any issues getting a job or getting a good salary?

Richard: That’s funny. The only times that I was rejected because I didn’t have the degree were in teaching positions. It was very little money and very academic environments. Just last year I got involved in a teaching position at a kind of college, but I don’t really know what to call this place. I got through a couple of interviews and was told they wanted me to teach there. However, when I went to sign the paperwork. They told me I needed to attach my degree. I didn’t have one and they wondered why I didn’t have one. It never came up in the interviews and they had hired me. So, I didn’t lie. They just never asked. So, the whole time. They wanted me to go and get it, but I was already teaching the course. It was a situation where if I left the course, they had more to lose than I did. Yet, I wasn’t very happy about the place, or the environment. It wasn’t very serious about their courses and such.

Richard: I have been involved in teaching programming for most of my professional career. When I had finished high school, I stayed in high school as an assistant teacher. Eventually, I had some courses of my own. But, back to the original question. Those were the only situations where having a degree made a difference. Each time I applied and got a job as a developer or a technical leader or any other technical position, the degree was, “Well, it would’ve been nice to have, but it doesn’t really make a difference.”

Arsalan: Yet, you still want to get it. So, what is your motivation for getting it?

Richard: Okay. That’s a good question. In my case, it was when my son was born. I felt that I wasn’t setting a good example for my kids by not finishing. That was really the only reason for me to go in and cross the line. I don’t want my kids to look at me and see me as a quitter. That’s all there was for me, but there are lots of motivations for getting your degree or not getting it.

Richard: For me, it does make a difference if you go to college or if you don’t. If you have no formal training at all, it does make a difference. It’s not so much about finishing and having your degree. I consider that a formality. I liked what I learned at the University. I think that it was a very good education and it was very hard. I had to put a lot of effort into it, but I’m happy that I did it. I don’t think I could do it again, right now. Yet, if I could go back in time, I would definitely do it again.

Arsalan: Okay. You’re in Buenos Aires, right?

Richard: Yes. Exactly.

Arsalan: Okay, so, a big city. How big is it?

Richard: I would say that it’s a little bit bigger than New York City if you count the boroughs and stuff. I’m not really sure, but it is probably more like Paris. That’s probably a fair comparison.

Arsalan: Okay. So, it’s a very large city.

Richard: Right.

Arsalan: So, do you think that because you’re in Buenos Aires that you have an advantage in getting a job? How is the do job situation or job market down in Argentina?

Richard: Definitely in Buenos Aires, there are many companies that can hire you if you are looking for a job. Right now, many people in tech in Argentina are looking to be hired by outside companies. There are economic factors. Our currency is basically divided. So, having a salary in US dollars makes a lot of sense. So, everyone who knows how to speak English can get a job working remote and do. For the guys who don’t have that possibility, there is a lot of work in Buenos Aires.

Richard: There are also a couple of other cities who have been to grow the local communities. At the same time, some local companies have been picking up on the fact that the cost of living outside of Buenos Aires is much cheaper. So, they can pay lower salaries and get the same results. So, being in technology and working over the Internet, makes the geographical location completely relevant. It’s a very interesting time to be alive and working, I believe.

Arsalan: Okay. So, how did you get your first job as a software engineer?

Richard: I was right out of high school. My uncle, who is my father’s brother, has this IT company and it was natural for me to go and work with him. The relationship between him and my father wasn’t exactly fluid, but I approached him and asked if I could work at his company. He asked what I could do. And I began as tech support. I was frustrated by it because I saw classmates of mine who had already been hired as developers. They were very much junior developers, but they were doing development while I was reinstalling Windows and boring stuff.

Richard: So, I went to my uncle and asked if he could move me to more challenging work. He did and then I eventually ended up in a developer position, but I had the same salary as I started with. That wasn’t very cool, but… The whole experience was very weird because between him being my uncle and me being his nephew and employee wasn’t very clear. So, I eventually left that company to go into teaching. That’s when I went to teach at my high school. There was about half a year between the moment I left school and the moment I began teaching there. In the beginning, I held two part-time jobs. One of them was teaching and the other was working for my uncle. At night I would go to the University, but I went couldn’t really keep it up. So, eventually, I left the company and stayed with the teaching position.

Arsalan: Okay. So, you started off and had to struggle. So, you had to find a good job. You are starting out. You were working at your uncle’s place because that’s easy. Getting a job in a big company would be your goal because of a secure salary and all that. Was that your goal?

Richard: No. I don’t think that was my goal. I must say that I haven’t been a very goal-oriented type of person. I’m not one of those where do you see yourself in five years type of people. I’m always like “oh, I have no idea.” I more of a “this is what I want to do now and all figure the rest out later” type of person.

Richard: When I was finishing at high school, I was very sure that I wanted to work at my school. I knew they would usually hire former students. I applied there, and they didn’t give me the job. Yet, eventually, they had an opening that needed to be filled. So, they re-contacted me. I don’t think I had a very clear picture of where I wanted to go. I knew that my job at the school wasn’t going to last forever. The money was good for a student, but not for a grown-up. I stayed there for approximately eight years. As I moved closer to the finish line at the University, I would pick up freelance gigs to supplement my income.

Arsalan: So, while you were teaching at your high school, what technologies or techniques were you teaching?

Richard: when I first started, I believe we were using Pascal. I don’t know if anyone will remember this language.

Arsalan: I remember Pascal.

Richard: I have to say that it was my first love.

Arsalan: Yeah, it was a good language to learn.

Richard: I really liked it.

Arsalan: The whole language was invented to be used as a tool for teaching programming.

Richard: Still, I did some pretty nice things with Pascal. We eventually went into C++, some Visual Basic and some ASP. They were all version 3.0. They were nothing like .NET. By the time I left, we were starting to toy around with Java. We also did some Visual Fox and stuff like that. Most of my teaching was in programming. There were other subjects that were more theoretical like database design and stuff like that, but I wasn’t teaching those all the time.

Arsalan: That’s pretty early in high school to be learning about, not just the idea of programming, but to also be writing entire applications and making websites in ASP and Visual FoxPro, which is very specific that let you do a very specific thing. It’s usually for business users and non-programmers and such.

Richard: Right.

Arsalan: It almost seems like these are skills to get a job.

Richard: Yep. That was the vision for the whole school. It was to prepare the kids for life after you get your degree at 18 or 19 years old. You could go out and get your first job as a junior developer or something like that. It was mostly developers.

Arsalan: Is that normal in Argentina to go from high school to a job?

Richard: Yeah. Definitely. People, usually people who go to the University or college, work between classes. In relation to what happens in the US or the UK or something, until they are advanced or finished with the University. It is much more of a concentrated thing here. If you live outside of Buenos Aires, it is much more common to come to Buenos Aires to study here. Yet, if you are local to Buenos Aires, you can commute to the University in about 30 minutes or so. So, it doesn’t really make much sense for you to live somewhere else unless you want to and can afford it. Right?

Arsalan: Right. Okay. So, you got that teaching job and then you quit. I’m assuming that after that you got a job at a commercial enterprise?

Richard: Kind of. After that, I took my first real bite at freelancing. So, I decided to plunge in and see what happens. So, I quit my job at the school and I took on a couple of clients but looking back I can see that I wasn’t ready for the human relationship point of view. So, that didn’t really go very well for me. I eventually took a regular job. I don’t remember now what it was that I was doing, but it was probably something like programming or project-management or something like that. It was a very weird situation.

Richard: I got to work for a very big company. They had won a contract with General Motors to provide support for all their Latin American users, but they had to support some applications that were developed by another company. In order to do that and keep the costs low, they subcontracted some people in India to do the actual maintenance. So, my job was mostly a translator because the Indians wouldn’t speak Spanish in the people in Latin America wouldn’t speak English. So, I was writing messages all around. Yet, when you think about it from a distance, you can see, there was no way that could end up right. Basically, what I noticed very early on was that the code was written by Spanish-speaking people. So, all the value names and the function names etc. couldn’t speak Spanish. So, for them, it was complete. Gibberish. It was a real nightmare.

Arsalan: I can imagine. I have never experienced anything like this, but I can totally imagine it. The whole point of using your universal programming language is so that everybody can understand it, but we forget that within the programming language, we have these different names. And if these names are in a different language, I can completely understand…

Mauro: It was madness. For me, because the way that it was fractured, I couldn’t really put my hands into the code. I was forbidden by contract to do any actual coding or anything like that. So, I had to tell the Indians what they needed to do, and it was a real mess. What you said about the language, it’s something that I did. I took it upon myself to decide that the code would be 100% English. We have this expression. I don’t know if you’re familiar with it, but it’s called ‘Spanglish.’

Arsalan: Mm-hm

Mauro: So, when you look at the code and it’s in Spanglish, it’s like “whoa, no way.”

Arsalan: So, that was pretty interesting. Now, which technologies are you excited about? What are you working on these days?

Mauro: Okay. So, these days, I have a mix of things. First, I have a couple of consulting clients. Some of them I do development for. For the last 10 years or so, I’ve been using PHP. The first time I used PHP, I think it was version 3. I thought it was gibberish. All the dollar signs and such made no sense. You know how it is. Somehow life took me from one PHP project to another. Eventually, I got to know some real frameworks and then thought “Okay, now we’re talking about a different thing.” Since then, I’ve been mostly using the Symphony framework, which I really like. I think it’s a very professional way to develop applications. So, right now, that’s mostly what I do.

Mauro: When I have to face a new development project, I will set up my repository and everything and create a new Symphony project, and then start coding. I like using virtual machines. I like toying around with Docker. I haven’t really made sense of it yet. I failed to see the difference between Docker and Vagrant, which is what I use nowadays. That’s pretty much what I do for this client. On the other hand, and this is probably why am talking to you, I also do some mentoring for developers. I like to take a project and I’ll look at somebody else’s code and let them know what and where they can improve and address why it makes sense.

Mauro: I also like to help other PHP developers live it up by producing higher quality code and etc. The thing is, PHP has a bad reputation out there. It’s mostly due to bad programming practices. I think the language is too open. You can do basically anything you want. You can do very good stuff or you can do very bad stuff. It’s up to you, which can be a blessing sometimes and other times it’s a curse.

Arsalan: Right. So, if you’re trying to build a quick website, and you prefer prototyping and want to show something within a few hours to a client, if you’re good with PHP, then you can do something quickly. You can put something out and set it up nicely.

Mauro: I don’t usually create public-facing websites. Most of the time I use applications like intranets and stuff. It’s more like corporate applications if you will. Some time ago, I discovered a little planning for Symphony, that allows for very rapid prototyping, a fun little fact for the Spanish speaking people out there. I uploaded a video of myself creating an admin panel within 20 minutes using this and it works. So, for prototyping, it’s great. A couple of command line comments and you’re good to go.

Arsalan: Send us the links for that and will put that in the show notes. If you’re listening right now or if your reviewer and you want to see what he’s talking about, I’ll put a link to… Is this a blog post? Is that what it is?

Mauro: Well, this is a YouTube video. It’s a very short screencast. It’s in Spanish, but someday I will do something in English as well.

Arsalan: It’s a good idea. You speak very naturally. What you could do is let people translate. I think Google has a translator for YouTube. You could turn the captions on and it automatically tries to translate. If you’re speaking clearly from Spanish to English, I would think that it would be fairly easy to do.

Mauro: Okay.

Arsalan: But, if not, then you could type your own translations. So, you could type it in and then people would see it and then you don’t have to make another one.

Mauro: Okay.

Arsalan: The other thing you could do is, if you have a blog post that’s in Spanish, you could use Google’s translate feature to translate it automatically into English.

Mauro: Right. Well, most of my material is in Spanish. For one thing, it’s easier for me. For another thing, I’ve realized that there’s not as much content in Spanish as there is in English. Many people in my local area, particularly, are not so good at English and are falling behind. It’s not that they aren’t smart enough, it’s that there is a language barrier. So, I’m trying to fill that gap as much as I can.

Arsalan: I guess that’s a wonderful idea. You should stick with it. There are many countries, not just Argentina, South America-most of it, and even Mexico and other places. You’ll have a lot of audiences. You won’t have any trouble finding users, but if you also wanted to reproduce the content, then you could use the auto-translate feature.

Mauro: I’ll look into that. Thanks.

Arsalan: So, we put a link to your blog post or any blog post that you want to highlight and also this video that was talking about. It’ll be in the show notes. So, if listeners or viewers want to check it out, then the link will be on the page itself, but you could go to mentoring developers.com/episode 69, which is this episode number. Then, they will get all the links and the transcript and all that other good stuff.

Arsalan: Okay. So, this is good. So, you have all this experience and you’ve been doing programming for all those years. Now you are doing PHP and you’re using a framework that you like and your teaching. What’s the future look like? I know you don’t like to plan ahead, but where do you see yourself?

Mauro: The thing is, I started on my own about three or four years ago. I didn’t really have a very clear picture of where I was going. It was sort of like that time when I thought I wanted to do standup comedy. I didn’t really want to do any more development. Time went by implants were not coming together as fast as I needed them to. So, I realized that it wasn’t programming that I was trying to get away from. I had been in a state of burnout from my last job. So I took a couple of steps back and decided to do some programming for clients and stuff. That is how I’ve built my business so far. Then, I got back into teaching and realized that this was my real passion.

Mauro: I really like teaching and the combination of teaching and computers. That’s my sweet spot. I took some of the material for my consulting practice and focused on my brand. I call it Leeway Academy, which was originally a separate unit from Leeway Consulting. Yet, now it took over. Leeway Consulting is gone. I’m putting all my energy into Leeway Academy.

Mauro: What I’m doing now is trying to focus more on corporate clients. I’m trying to help establish teams. It’s funny because I know many PHP leaders who are not very knowledgeable about their own tools and technology. It’s not that they didn’t want to, it’s more of someone came over from another tech stock and led a group of developers and he may not have had as much expertise as thought. So, that’s why I want to be able to help.

Mauro: I want to approach a team and help sharpen their skills and bring them up to speed, which is what I was doing when I was employed. At my last job, I used to be a technical leader. I think I did okay improve the development processes and stuff. So, that’s what I want to do for others.

Arsalan: That’s wonderful. So, you do a lot of teaching. Teaching is one of the most fulfilling, rewarding things that you could ever do. I enjoy it. So, if you want to give advice, not just people in Buenos Aires, Argentina, but also the rest of the world and especially South America to people who are in high school right now and have never done any programming and are interested in it, do you have any advice for them?

Mauro: When you were stating the question, I was running some ideas through my mind and first, I would say to learn English. Go ahead and learn some English. I think anyone can learn how to program. It’s more of whether you want to do this or not. The only way to know this is by doing it and seeing if it sucks or makes sense for you.

Mauro: One thing that I recently did, and I’m really fascinated by what happened is I ran a little experiment. I have a five-year-old son and I started him with some scratch and stuff. He’s probably too young to understand some of the concepts like variables and stuff. So, I actually did the programming for him. I wanted to teach them something. He asked me ”What do you do. Dad?” So I told him I would show him an example.

Mauro: I took this board game that he has, which is called Ladders and Slides. It’s a very common game. So, I told him “Assume that I had never played this game. Teach me how to play.” So he told me to take the dice and throw it and move the little doll as many steps as the dice. I took notes of everything that he said. By the end, I had a complete algorithm of how to play this game.

Mauro: It was fascinating because I thought that this is how programming should be taught. It’s a very simple game. Everybody knows how to play it and it’s very easy to explain. By the end, I was fascinated that it has all the structures of programming. The game continues until somebody hits the last mark. When you land on a certain spot, you get a conditional. Does it have a ladder? Does it have a slide? So you could go with the variables of the position of every character in the game.

Mauro: So, I would probably ask questions like “do you like logic games?” It’s very much like math. I wasn’t into math until I was at the university level. Still, I love playing with computers and programming. I think it comes down to that. It’s more of an exercise into your own personality. When you’re doing something. Do you work on it until it cracks open or do you get frustrated with it? I think it’s more of that than anything else. You must know yourself and which activities you like to do.

Mauro: This is something that I used to tell my students. If you go into it, and it’s hard, you don’t quit. You don’t quit because it’s hard. You quit because you don’t like it. That is the thing. You don’t quit. You don’t give up. The frustration that you get by giving up is hard to bear. If you quit because you don’t like it, that’s fine. You’re not obligated to do it. There are many other things you can do.

Arsalan: I think this is great. Yeah, this is wonderful advice. Don’t give up. Folks, if you are listening to this podcast right now, don’t give up if you are stuck because everybody gets stuck. There are things that you don’t know about programming, in general. There are also things that you don’t know about what you are trying to do. Sometimes we know the programming bit. We know how to write the loops and how to construct the programs, but we don’t really know what we’re trying to do. That keeps changing. Go ahead.

Mauro: Oh no. I was going to add a little piece to that. If you get stuck right now, there’s always going to be somebody who has the answer or can help you get there. It’s like when I started, I had my book on my shelf and if my answer wasn’t in the book, then that was it. I had to figure it out for myself. Right now, you get Stack overflow. You can all sorts of different online forums where you can post your questions. It’s also a matter of persistence and dedication to getting the thing done.

Arsalan: Yeah, sometimes you find yourself stuck on a problem for a day or two and you just need to walk away from it and do something else and sometimes it just happens. So, this is a problem that we all have. The only way to solve the problem is to persist. Keep doing it.

Mauro: Absolutely. That’s my advice. Persist. Never give up.

Arsalan: That’s pretty good advice. So, let me ask you this one final question because we’re coming to a close. Imagine I am a young person in Argentina or maybe another city in South America and I’m listening to this right now and thinking “Yeah, well, that’s easy. I can start it, but there are no jobs where I live, and Mauro is saying that you can just learn English and get projects, but I don’t know how to get projects. How am I going to get clients? Nobody knows me.”

Mauro: That’s a good one. Well, first, I’d like to make a clarification that if you don’t know English, there are some websites where you can go and take projects from Spanish-speaking clients. The reality is that most of my clients are local. So, they don’t care if I speak English or not. I speak Spanish with them all the time. You can play the card of the big city on me anytime, though. Let’s leave that for a second.

Mauro: The thing is, right now, you have so many tools available to make yourself visible. At the very basic, you can participate in online forums. Go writing. Even if you don’t think you can. You can always ask or write or somehow participate. Start getting to know people. Networking is by far the most important thing that you can do to get a job or get freelance gigs or whatever your goal is. Networking is the number one priority for everyone. That’s one thing. You also have to get out of your head as much as you can and be open and exchange with people. It doesn’t really matter what you do. That’s one thing.

Mauro: If you’re trying to get noticed by a recruiter or something like that, one of the things that I’ve seen recruiters do is put more importance in the code that you can show. So, if you code for fun, just make sure you load it to Github or some other public repository, so you can send the link to anyone. That’s another thing that can give you some authority.

Mauro: Another thing you could do is contribute to open source projects. That’s something that may require a little more expertise on your side, but it’s not exclusive. I’ve seen some open source projects that have been coded very poorly and even if you can’t contribute code, you can still contribute some feedback or documentation or something. It all revolves around the same principle, which is getting to know people. You get to interact with as many different people as you can. Eventually, it will come. If you’re persistent enough, opportunities will appear. It doesn’t matter where you live, as long as you have a slightly decent Internet connection, you’re fine. You can do it.

Arsalan: That’s pretty good advice. All right. If you’re listening to this podcast right now and you want to get in touch with Mauro, all you have to do is go to www.mentoringdevelopers.com/episode69. You’ll see his contact information. You’ll see his blog post and YouTube links and all that good stuff. You’ll also have the transcript for this interview. So, you could read it if that’s easier for you. If you want to get in touch with me, just email me at us.mentoringdevelopers.com. That’s just the fastest way of reaching me. I’ll get the emails, personally, and I’ll look at it and answer it as soon as I can. Then, will go from there. If you want to be a guest on this podcast, if you have something amazing to share, or if you’re like Mauro and you want to inspire other people, just let me know. Otherwise, send me your questions and will see if we can get them answered.

Arsalan: All right, it was wonderful meeting you, Mauro. Am I saying your name correctly?

Mauro: You are.

Arsalan: Excellent. Awesome. That’s good to know. I really don’t want to mess that up. Usually, before the interview, I like to go in and make sure that I’m saying the name correctly. Today, we were crunched for time, so we just started. What I don’t want to do is say something that’s inappropriate. So, that’s good.

Arsalan: So, for anyone out there who wants to be a software developer, and if you don’t really know English very well… Mauro, can you give us a 10-second inspirational speech in Spanish so people can hear it?

Mauro: [Mauro issues message in Spanish]

Arsalan: Gracias. That’s awesome! Alright, Everybody. We’ll see you in another episode and its goodbye from here.

Important Links

  • Mauro’s YouTube Channel
  • YouTube: How to Implement an Admin Panel, by Mauro
  • Leeway Academy
  • Mauro’s Blog: How to Implement Web Services Using PHP

Thanks for Listening!

Do you have some feedback or some advice for us or our audience? Please give us a review on iTunes, Spotify, Google Podcasts, or Stitcher and share your thoughts.

If you found this episode useful, please go ahead and share it with your friends and family. You can also listen directly and give your feedback on the website.

You can subscribe to Mentoring Developers via iTunes, Stitcher Radio, Spotify, or Google Podcasts. 

https://media.blubrry.com/mentoringdevelopers/content.blubrry.com/mentoringdevelopers/MD-episode69-Mauro_Chojrin.mp3

Episode 68 – Richard Kronick on Paving the Path to a Coding Career

December 11, 2018 By arsalan Leave a Comment

Richard Kronick with Arsalan Ahmed and Mentoring Developers
https://media.blubrry.com/mentoringdevelopers/p/content.blubrry.com/mentoringdevelopers/MD-episode68-Richard_Kronick.mp3

Podcast: Play in new window | Download

Subscribe: Apple Podcasts | RSS

From teaching English in China to diving into learning how to code, our next guest is ready to rock out in tech. Yet, from a beginner’s perspective, just how do you do that? How do you go from zero to digital code-craving hero in a matter of months?

Meet our next guest and coding newbie, Richard Kronick. Richard hails from Omaha, Nebraska, but has an interesting past. He spent a number of years in China where he taught English and spent his time learning Chinese by engaging the community where he lived and getting lost on city buses. You heard that right. Sometimes you must get lost to learn something new. Now that Richard is back home stateside, he’s fallen in love with the world of tech…and that’s code talk for programming, of course. Listen in as Richard weaves his tale and Arsalan offers up suggestions and guidance to help pave a path for this up-and-coming coding champ.

Don’t forget to say hello to Richard on Twitter!

Richard’s Bio:

Richard is the co-founder and CEO of Kronick Enterprises, a passive income website development company. 70% of all the websites the company has produced currently receive thousands of daily visitors via organic search results. He has experience with HTML, CSS, JavaScript, and WordPress.

 

In August of 2018, Richard decided to become a software engineer and is working towards this goal. He is enrolled in a .NET class where he has been learning C#, ASP.NET MVC, Entity Framework, SQL Server and Object-Oriented Programming concepts.

 

Previously, Richard spent 13 years as both an English and Chinese instructor, having learned Chinese while living in China. He has taught at both the high school and university level. He is also a life-long learner and student.

 

Richard believes in a life of service – that the great goal of life is to be useful and that achievement without fulfillment is empty – and a life of continuous growth. He hopes to join an organization where he can be a part of a team that contributes to the organization’s success and serves its clients and customers.

Episode Highlights and Show Notes:

Arsalan: Hi, everyone. Welcome to another episode of mentoring developers. Today I have a very special guest who has a very interesting story about his trip to China where he found himself without any means to learn a new language that he didn’t know how to speak, and he had to learn on his own. Then, he found himself in the situation where he had to overcome something similar that many of us face when we are trying to learn a new programming language. So, let’s hear from him. Richard, how are you?

Richard: Good. How are you, Arsalan?

Arsalan: I’m great! It’s great to have you. So, what happened in China?

Richard: Well, I did a master’s program in Asian studies and I was very interested in Asia at the time. After graduation, I was fortunate enough to find a position teaching English at a university in China. That was really my means to get over there. I was just really interested in seeing things from the ground and I wanted to learn the language. In the beginning, I just thought that I would soar everything naturally. Of course, that didn’t happen. I realized then that I would have to buckle down and really study and work hard. I had a local salary.

Richard: So, I really didn’t have the means to enroll in any sort of program. So, I had to spend a few hours each day with books and audio programs. Then, I realize it didn’t really work so well because when I went out and tried to use the language, what I learned was not applicable. So, I would study a little bit and then go out on the streets. I used to hang out in front of a small corner store. The woman was nice enough to let me sit there and talk to people.

Richard: I used to purposefully get lost on the buses. I would take a bus to a place that I wasn’t familiar with and I get often wander around and then try to find my way home. It was a great experience because I learned a lot. One of the most valuable things from that experience was that I learned a lot of confidence and I realize that if I just pushed myself that I could learn anything.

Arsalan: Yes, but did it work, though?

Richard: Yes. After about a year or so, I started to have basic conversations. That was really exciting in propelled me to want to work harder. After about 2 ½ to 3 years, I felt comfortable with the language. So, yes, it did work, and I think that if I wouldn’t have just jumped out there and started talking to people and being out on the streets and everything, then it probably would’ve taken quite a bit longer.

Arsalan: Yeah, I can imagine. This is so good to hear because this is a life lesson, right? When you are trying to learn something that you don’t know, and it could be anything (plumbing, programming, a new language), if you want to learn something new, then you must essentially put yourself in a difficult situation. The lesson that I learned from this is that if I stick with it and don’t give up, then there is nothing that will prevent me from learning. Some people will have a different capacity. It took you a many you months to a couple of years, but maybe it would’ve taken me twice as long. Yet, I think I can say that I probably could’ve done the same thing if I really wanted to do it badly. That’s the thing. If you didn’t want it bad enough, then you would’ve given up within six months. Would you agree with that?

Richard: Absolutely. Yeah. I study language a little bit here and there in school, like most Americans. I also had to study some language in graduate school, but I never really learned at that well and looking back, I realized that I didn’t know why I was learning it. Yet, when I was in China, I knew exactly why was learning Chinese. I wanted to use it to communicate in everyday life. If you don’t know the ‘why’ then it’s hard to stick with something.

Arsalan: Yeah, motivation is so important. Okay, so let’s learn a little more about you. So, why did you go to China and what got you interested in programming? Tell us a little about your origin story.

Richard: I went to China, in retrospect, because I think I was looking for something different and something exciting. I remember when I got to school that everything felt so dull. I was only planning on staying a year, but it was so stimulating and exciting and challenging, that I ended up staying for eight years because I enjoyed it so much.

Arsalan: Wow. Eight years. I didn’t expect that. I didn’t know that. That’s amazing. So, that’s a very large part of your life. Were you working there? Were you teaching the Chinese to learn English there? Is that where you are doing?

Richard: Yeah. The entire time that I was in China, I was teaching English, which I grew to love very much. It was a great career, but somewhere along the way, I stumbled upon an online course about how to build websites. I had no experience in any way on how to do that, but for some reason, I jumped in because it looked interesting. So much so that I ended up building a business out of it. I’ve been running that business for about three years now and essentially what we do is we build passive income websites with WordPress. It’s great and I really enjoyed it a lot. But I’ve always been curious about what goes on behind the scenes.

Richard: In WordPress, there is a visual side with editing a post or a page and then there’s the text side. I started peeking at the text side. I was a little confused, of course, because I was looking at what I realize now was HTML. I wanted to know more. So, I started googling what was behind the scenes there. That led into a bit of CSS and I try to learn more and become better. As more problems with the websites appeared, I realized that I needed to learn more to become better with them. So, that led a little bit into JavaScript.

Richard: I sort of dabbled in all these things until this past summer 2018 when I took a Harvard online CS50 course. It was about programming. It was an intro to programming and computer science. It was one of the most exciting things that I had encountered in a long time. By the end of it, I’d say that I was pretty much hooked on programming. Since that time, my wife has taken over our business and I’ve been spending all my time learning programming. I was fortunate enough, a few months ago in September to get offered a scholarship through a local nonprofit organization called AIM Institute in Omaha, Nebraska. They have a school called Interface and I was able to get enrolled in their .NET course, which I’m in the middle of right now.

Arsalan: So, is that like a boot camp?

Richard: It’s not a boot camp, no. It’s about eight hours a week in the evenings.

Arsalan: It’s not a boot camp and it’s in the evenings. Okay. So, what is it then?

Richard: I guess the purpose of it would be to provide a foundation, a beginner’s course in .NET. The purpose of this foundation is to develop tech talent in the local area. So, they’re trying to give people a start in certain languages.

Arsalan: So, at the end of it. Do they try to place you or have recruiters come in?

Richard: Yes.

Arsalan: Okay. Yes. That’s a boot camp, maybe a longer boot camp, but a boot camp. A boot camp is usually around 3 to 4 months long and sometimes six months. The purpose is that you go in there and do projects and then you learn all the entry-level skills that you need in order to get an entry-level job and hope you get it. That’s the point. I’ve interviewed a lot of people who have gone to boot camps and I’ve interviewed a lot of people who run boot camps. It’s an interesting phenomenon. It’s a very contested subject. Some people love it. Some people hate it. Yet, I think it’s a worthwhile endeavor. Not everyone can afford it and not everyone has the time that you have. I think it’s awesome that you’re doing that. So, when you were joining this, did you think about the technology that this place offers? Did you say to yourself, “should I be doing .NET?” Or were you uncertain and just thinking that this was the only game in town and “let’s do it?”

Richard: Originally, the only availability was for Cobalt, which I had never heard of before but now I know that it is a language, but it’s quite old.

Arsalan: Cobalt? They’re teaching cobalt? Okay, that’s awesome.

Richard: Yeah, there are still some needs for cobalt here. I read a few articles about how a lot of cobalt programmers are retiring and a large percentage of financial transactions still use cobalt. So, that was a scholarship and I was just interested because I figured that any class, any learning with programming, I wanted to join. Then, they opened it up and offered foundations courses as well. In HTML, CSS, and JavaScript, and then .NET. For me, out of the three, there really was no choice. I wanted the .NET because it felt like I could really make the most use out of that.

Arsalan: Right. Okay, so, for the audience, they don’t know the background for this podcast episode and this interview. I’m talking to you, Richard, because you reached out to me. You listen to the podcasts and you really needed someone to help you, to counsel you a little, to guide you. So, I asked you if you’d like to come on the podcasts and do it live so that other people can benefit from it. You graciously agreed to that. So, this is great.

Arsalan: For anyone who is listening to this podcast right now, pay close attention to what Richard is going to say because we’re going to talk about the problems that he is facing in achieving this goal. Many of my listeners are in the same boat as you, Richard. So, what is it that you are trying to achieve? If you could make a list of goals, then what is your biggest goal right now, or within the next two years?

Richard: I do have a list of goals, but I’m assuming you mean professionally.

Arsalan: Professionally, yes, but we can also talk about personal goals. Personal goals are important. You can’t really separate the professional from the personal, but let’s talk about professional goals for now.

Richard: So, professionally, what I would like to do is be able to work in a team as a developer doing something that is contributing a service in some way that also allows me to be constantly learning. At the same time. If there’s one characteristic or trait about me, then I would say that it’s that I am constantly obsessed with learning. That’s my favorite thing to do. I like learning and then being able to produce or create something and use what I learned to solve problems. So, my hope is to get a position where I can solve problems or create things to help solve problems… to be of service.

Arsalan: Would you like to make money doing that or are you looking to just volunteer?

Richard: I would like to make money doing that.

Arsalan: Okay, that’s good. So, you don’t just want work, you want a job that pays money because lots of people volunteer. I’ve talked to startups and companies and nonprofits that would’ve loved to have hired me and not paid me. There are some causes that I would like to support. There are some startups who I would like to help, but I want money. I need it and I want it and there is no negotiating that. The reason why I pointed that out is that I think it’s very important for you to make a note for it even if you don’t say it out loud because you should know that you want to do good work, but you also want to get paid well for it. And, you should know what that means.

Arsalan: It’s very common in our industry, especially at the junior or mid-level, that companies take advantage of developers. It happens a lot. They don’t want to pay you what you’re worth and you don’t really know what you’re worth. You come off saying that you are not in it for the money. That happens. Then they wonder how much money you really need. So, this is a question that gets asked sometimes. “How much money do you really need to live?” If I needed just enough money to live, then I wouldn’t have spent all these years learning programming. This is a highly valued skill. So, you should value yourself as a developer. If they hire you, then they should pay you well. If they don’t offer to pay you well, then maybe you should reevaluate whether this is an offer worth taking. So, these are some things to consider. Okay, anything else?

Richard: About me?

Arsalan: Any other goals? How about your personal goals? What is your number one personal goal?

Richard: it’s getting into the winter here in Omaha and I like to go for a walk every morning. I’ve been getting a little lazy on that not going out because it’s been about 20°. A goal is I don’t want to miss a single day of walking, regardless of the weather. I would like to spend a little bit more time every day practicing gratitude and writing down things that I’m grateful for, just because I’ve realized over the recent years how important. Being appreciative and grateful is.

Arsalan: This is really surprising, and this is really good. I’ve heard some people talking about this. Gratitude is a surprising thing because we don’t really want to feel grateful. Instinctively, we don’t want to feel grateful because when you’re grateful you don’t want anything else. So, our instinct is, especially for people who live in bigger cities and environments, we want to do more, and we want more. When you stop wanting more. You stop getting more. Then, you fall behind. It’s the fear of falling behind. The idea is that if you don’t grow, then you might stagnate and die.

Arsalan: on the flip side, if you are grateful for what you have, then you’ll have contentment. For personal goals, this is powerful.

Arsalan: Okay, so you want to get a job as a developer, and how long do you have left in this program that you’re doing?

Richard: Approximately one month. It ends in the middle of December.

Arsalan: Okay, and how long has it been so far?

Richard: It’s been two months so far. So, it’ll be three months in total. When I finish.

Arsalan: All right, and how do you feel about this goal? Do you think you’re getting closer to it or do you think it feels elusive?

Richard: Well, I feel like I’m getting closer, but my biggest challenge is I can’t really tell how far I have yet to go. I know that there really is no end and that’s one of the things that’s really attracted to me about learning coding and programming. There certainly is no into the challenge. One of the things I really enjoyed about Chinese was the challenge, but after so many years, the challenge was gone. Yet, right now there are so many different technologies and so many different ideas to wrap your brain around and it’s just hard to know how far along I am, and at what point out fill a little more comfortable, perhaps. I don’t worry too much, though, because I can see that if I just keep working it gets clearer. The biggest challenge is figuring out what I need to be spending my time on and learning and where I get the greatest return on improving my abilities so that I can use it.

Arsalan: Yeah, that’s a valid concern. The one thing that I can tell you is that feeling never goes away. As long as you’re learning, you’ll always feel like you’ll never be ready. There something called imposters syndrome. It’s a very common thing and it happens to pretty much everybody. I have interviewed tons of people and we talk about imposters syndrome all the time. This happens. There is a natural thing where you need a basic set of skills that will help you become successful.

Arsalan: I can tell you this. If you have never been to a code camp, if you have never learned any programming, and know nothing about computers, and if I hired you today to become a junior programmer in a team with senior programmers, in six months. You would be a programmer.

Richard: I do believe that. I do think that on-the-job training is some of the most valuable training.

Arsalan: The reason is not necessarily because when you learn it when you do it. The reason is that when they hire you when they surround you with senior programmers, they expect you to learn from them. Those people are going to hold your hand a little bit and try to teach you. They’re going to give you easier things to do and when you make a mistake, they’re not going to make a big deal about it because they know you’re learning. That’s a problem with our industry.

Arsalan: When you join the company and you claim that you know programming, even if you’ve just done a three-month course and you’ve spent a few months dabbling, they will expect you to produce results right away. That’s a problem. The best way to get your foot in the door for someone like you who still uncertain of how to do certain things is to enter the job market as an intern or trainee of some kind, but those are very hard to find.

Arsalan: Most companies don’t do that. Yet, if you do find a big company that understands that you don’t know, they don’t pay you much-you just pay minimum wage, that’s completely okay. That’s perfect if they put you in projects and let you work with other people. Six months is all you need. So, that’s the one approach that I prefer over all the other approaches that were going to talk about.

Richard: Okay.

Arsalan: If you can find a trainee position, like let me shadow you so that I can learn from you and just pay me $10 an hour and don’t worry about it and you’re willing to work 40 hours a week or as many hours as they’re willing to give you. In this way, you could learn at night and shadow people by day. That would be perfect, and I think that in Omaha you might actually find a job like that. In a bigger city that’s much more difficult. In Omaha, you have a couple of problems. One is that you don’t have many jobs because it’s a smaller city, and so on. Yet, you also don’t have a lot of people.

Arsalan: People from California, New York, and other places are not thinking of Omaha. That’s a benefit that you have. That’s a unique advantage in a smaller city where it’s farther away from bigger cities, you’re sort of isolated. There is a business in Omaha and they need software developers, so they don’t have a lot of choices. This code camp that you’re going to could be a very good deal for you because after having gone through the code camp. The code camp can say that you know a little bit. The relationship with the instructors who are running your program will help because although they may say that you don’t know much, they can say that you’ve at least touched on these things. So, you have a tiny bit of advantage over those other people.

Arsalan: Okay, so when we talk about .NET or any programming platform… For people who don’t know, let’s introduce .NET a little bit. So, .NET is many things and it can mean different things to different people. Essentially, a set of technologies and tools and infrastructure and a whole bunch of stuff, you can create a little ball and call it .NET. You can use .NET to create a website or to create an app for a program that runs on Windows. You can even make something that runs natively in Windows or, Macintosh. Now, you can use .NET to make an app that runs on Android natively, on iOS natively, or pretty much anything. You can even use .NET to build your little IOT devices. So, .NET, now in 2018, encompasses many things. 10 years ago, .NET was very limited. Now, .NET means many things to different people. So, we’re going to distill this down to what you really need to learn.

Arsalan: What if you didn’t want to do .NET? Let’s say that your program didn’t do .NET, so it did another program or platform, and this big ball of technologies. It could’ve stayed in the Java or Java machine land. That’s another option. Those two are sort of competitors. They are replaceable or interchangeable, not really, but kind of in the enterprise. If you want to work at a Fortune 500 company, or a large or more established company or a company that is a non-technology company (like a retail store or a chain of retail stores. That’s not really a technology company. They need computers, websites, and internal systems, but that’s not their main business), for those companies. .NET is very popular, and we’ll talk about why that is.

Arsalan: but if you didn’t have these two Java or the Java ecosystem or the .NET ecosystem, then you could have a different ecosystem. You could be doing open source Ruby or Python and so on. Or, you could be doing something like Perl or something completely different. There are many different programming languages and many different frameworks and technologies are little balls of things that work well together. So, we have all these different little pockets and as a technology company, they need to pick.

Arsalan: For enterprise customers, which means large companies, companies that are not technology focused, but they do have to use technology, often there are choices between the Java ecosystem and the .NET ecosystem. People are moving towards .NET a bit more than Java. Java used to have a bit of a monopoly in the enterprise world and there are reasons for that. The reasons for that is that .NET has a very good and evil ecosystem. It started as small as the underdog to the Java behemoth. Then, it grew in the tooling and the editors that you use on the platforms that you go on, C#, has evolved faster and better than Java. On the Java platform, you no longer need to use the Java programming language. You can use other programming languages that work with the virtual machine. Okay, so that’s the background.

Arsalan: Now, .NET is an excellent choice. If you’re listening to this podcast and you’re wondering which technology stack to use, then I would say that .NET is a very good choice for beginners. Often getting started is the hardest part of starting with a new programming paradigm or a new programming language and such. Getting started is hard. Getting your first Hello World. Getting your first to do app. Getting your first full stack at that you can do something, something happens, and it gets to work, and you can retrieve it, what we call Crud, which is the standard application that can save things and show things and that you can build on. That stuff is super easy and .NET.

Arsalan: So, now, Richard, out of all the things that .NET can do, have you thought about what you want to focus on or do you want to learn everything? There’s only one good answer to that question.

Richard: Well, of course, I can’t learn everything. There’s always the struggle between breadth, how much you need to know about all the different things and going deep in one or two areas. Ideally, you want to become good and one or two areas. I’m uncertain of which of the technologies that I will be most effective with. That’s what I’m exploring now. I’ve been looking at ASP, .NET, MBC. I’ve been learning about entity framework. I’ve been fiddling around with WPS Windows apps for the desktop. Right now, I tend to gravitate more towards the MBC and web development. That could be because that’s just what I’ve been doing and that’s where I feel more comfortable, but I’ve been trying to become more familiar with databases and SQL and entity framework. That’s been quite a bit more challenging. Even after a couple of months of spending all my time learning about this ball that is .NET, it is still a little fuzzy of all the things that can be done with it because the possibilities seem massive. So, I’m still working my way through gaining an understanding of all the possibilities with .NET.

Arsalan: Okay. So, there are two ways of approaching this. You could say “let’s see what I want to learn in .NET.” There is MBC. You might like learning that. There’s MB framework. There is a SQL server database. That’s one way of doing it. The problem of doing it this way is that it creates confusion because you don’t know why you’re doing it. So, you might want to start with the goal. This is what we talked about before this interview when I emailed you. If you start with the goal and you know exactly where you want to be, then you know what you need to do to get there because it’s easy to walk backward. It’s very hard to go forward because you can’t predict. You don’t know. If you learn ASP, .NET, MBC, then you don’t know where it will take you because you literally have not thought about it. So, let’s go back. Forget about the technologies.

Arsalan: The good thing about .NET is that you can pretty much do anything you want. So, start with what you want…the end result. You’re talking about how you want a job. Imagine yourself having that job that you want. You have that job. You’re going there. You’re happy. Monday morning, you are the only happy person in Omaha. So, what is that job? What do you see? What are you doing?

Richard: Perhaps, my biggest challenge is making that picture clear because I know that you’ve got to know what you’re going towards, but for someone who’s only been programming for a few months, I don’t yet have a clear picture of all the roles out there.

Arsalan: Let me help you with that. So, one thing that you could be doing is building web pages and websites, essentially, they would be a lot more complicated than a WordPress site, but they are essentially a website. People are going to go to the browser and type in the URL and then a page will show up and they will do something, and then a new page will show up or some interaction will happen. Imagine something like Gmail. Gmail is a website and it does things that are very complicated. Yet, you can imagine a less complicated version of Gmail. It could be anything. It could be any website that you’ve visited. There are lots of websites made in .NET. If you go in there, you do something and then something happens. You save some records or something more interesting in there happens. So, that’s one thing, making websites and web pages.

Arsalan: Another thing you could be doing is making native applications. For instance, in a controlled room, if you’re in a factory environment where they are looking at different processes and have different machines running… So, on the factory floor, you’re going to have different lanes. A part of something is being manufactured and it goes from one station to another. It’s like a conveyor belt. As an administrator or somebody who’s in charge of monitoring what’s happening, you want to see what’s going on. You’re not going on the web. You don’t need to make a website. You don’t need to because you’re doing one thing. This computer is dedicated to doing one thing. That application can be a native application, which means that it gets installed and it runs regardless of whether you have Internet. That’s one type of activity. You could do for windows or you could do it for a Mac.

Arsalan: Now, imagine that you have a new type of developer whose job it is to make android apps, business android apps. It is essentially the same idea. You go to an app and enter some values and then you see something. You see reports. You see dashboards. You click a thing, and something happens. You could do it for an android. You could do it for an iPhone. You can do it for an iPad. Those are different people and those are different roles.

Arsalan: You could also do something completely different. You could also be the guy who’s responsible for building and maintaining the API, application programming interface, which means that there is no page. There is no user who goes in and types things and makes things happen. It’s just functionality that’s available to other websites, or other human beings, usually, other websites and other services. For instance, Gmail, or Google maps can get the longitude and latitude of addresses. So, if you have an address and you want to see with the longitude and latitude value of that is, they’ll let you do that. You just send them the value and the return something to you. Essentially, it is a machine to machine communication. You can read it, but it’s not really meant for you to read. It’s meant for you to process. So, that’s just backend API work, a web service as a say.

Arsalan: a web service is a term that is often abused in the general media. If you don’t know anything about programming or tech, you might think that Gmail is a web service or a service that is provided on the web. That’s not what that is. If you’re listening right now and you are confused about what a web service is, send me an email and I try to answer it. My email address is us@mentoringdevelopers.com. So that’s something that you could do. You could be in API builder.

Arsalan: Or, perhaps you really enjoy working with and looking at data. In that case, you may enjoy being a SQL ninja. You could write these giant store procedures even if you don’t know any loops or any programming in C sharp. Yet, perhaps you’re good at doing some crazy SQL stuff. What that means is this. If somebody needs to crunch data, if someone needs to solve problems with their data store database, then you might be there guy. That person is completely different and usually, it’s a dedicated job, which is called a DBA. DBA stands for database administrator. So, you could be doing that.

Arsalan: It could be something completely different without any programming. Some people are very good at visualizing a solution to a problem. Some are very good at writing down or eliciting a problem and solution. They are good at going to a customer and explaining the situation to other people so that they understand the full picture. They are tech savvy, but they are not necessarily people who do tech work. They are called business analysts. You won’t find them in small companies, but they do exist in large corporations and that is a very legitimate career. Business analysts could also be former programmers. They could be someone who used to program and has since moved on or they could be someone completely different. I’ve seen that happen and this is a career that pays well. However, there are not so many jobs for this type of profession, but it is a valid thing. If you could work for a Fortune 500 company, then you could probably get a job like that.

Arsalan: Another thing could be a tester or a QA analyst. This would be someone who would make sure that something that you are building or working on does not get passed on to the user before it is good. Their job is not to ensure quality, but rather to validate quality. This is something that I’ve spoken about in the past and it gets developers by surprise. They are like “what do you mean? Their job is to ensure quality.” I’m like “No. As a developer, your job is to make sure that you are putting out quality work. Their job is to see if you messed up. They are validating it. You are ensuring it.” What often happens is that developers decide they’re going to put something out as quickly as possible and let the QA’s figure out if it’s good or not. That’s wrong in my opinion, but of course, there are different opinions out there.

Arsalan: I’ve been in environments where the speed of delivery is preferred over accuracy. If you’re in that kind of an environment, then you don’t have time to ensure anything. Hope is your best policy at that time. So, now you know. These are essentially all the jobs that I can think of. These are all the different things that you could be doing, and all are legitimate, and all will pay you decently. Which of these things attracts you the most?

Richard: First, that’s very helpful. It’s incredibly helpful just to have that all laid out. I can honestly say that most of those I would be generally excited to pursue. There are a few that stand out that I think would be a bit more exciting, or that I gravitate more towards – web development, app development, and actual programming. SQL hasn’t really attracted my love yet. I may be missing something because I haven’t really spent a ton of time with SQL yet. There are a couple of things that I find that I really enjoy, and I just can’t stop until it’s done or solved. One is front and development. It’s the look and the feel of the website in CSS.

Richard: For a couple of years now, I’ve really enjoyed that. What I’ve discovered recently that I also really enjoy is actual programming. Most of what I’m programming in is C sharp. It is such a feeling of elation when I solve a problem or get something to work. When something goes wrong, I enjoy rolling up my sleeves and say to myself, “okay, here’s something to solve.” It’s a great moment when it happens and then it’s nice to move on to something else. For me, it feels like a continuous, enjoyable thing to do. I’m really excited at the prospect of not just spending all my time doing it but getting paid to spend all my time doing that. So, that is helpful to hear that all laid out. I do appreciate that.

Arsalan: So, what I’m hearing is that you like to touch things and have different things happen. You like to see it. It’s the visual feedback. I love it too. I think what you want to do, it seems, is that you want to work on the web, which is very legitimate. You want to make websites that you can tinker with because websites are very fun to tinker with. Not everything is that easy and straightforward.

Arsalan: people who work on APIs are doing algorithms and other things and that’s also satisfying to do because you control so many different things, but it’s not visual. You can’t show it to people. It’s like an art project. You will probably never have an art project in API. You could do it on a website. You could show it to your wife. You could show it to your kids. You could show it to other people and they would be able to see. There is some value in that. So, I think you should stick with web development. You should say to yourself, “I am going to get a job as a .NET web developer. I am going to be a .NET web developer in six months to a year.” Set a date. For you to become a .NET web developer, all you need to do is declare it. From the day that you say, “I am,” you are.

Richard: I believe that.

Arsalan: You don’t need a job to be a web developer. That’s a mindset thing. You must believe in yourself. Right? So, believe in yourself, but back it with something that you’ve done. You’ll be working on projects in this program, this code camp that you’re doing. What I want to do is give you a program that you can follow that will not only give you some important skills, but will also give you the confidence to know that “Yes, I am a developer and I may not know everything, but I am a developer and if somebody hires me, then I’ll show them. I can learn. I can produce results. I will do what it takes to show that confidence. I will do what it takes to show that confidence just by practicing a little.” So, we’re going to talk about this.

Arsalan: if you have a piece of paper, write down ‘goal’. Now, the goal is: I am a web developer in .NET. That’s it. Okay. Set a timeline for that. Let’s say May 2019. On 1 May 2019, you are a web developer in .NET. So, now you have an end goal. This is the place where you want to be, and now, this is the place where you are. So, now we need to put mile markers there. Right? It’s very easy to walk backward. So, now you need to go back and decide that for you to be a web developer on May 1, what do you need to do April 1? Then, March 1. Then, February, and then keep going backward. So, first we’re going to talk about what the mile markers should be and then we’re going to talk about what you should know. These are basic abstract concepts. These are the basic things that you need to know.

Arsalan: I want you to start with the concept. Don’t start with the technology. Don’t start by telling yourself that you want to learn energy framework. Don’t tell yourself that you want to learn SQL. Don’t say that because all that does is box you in. It doesn’t allow you to see the bigger picture. Always come out with the big picture. For instance, you could say “I want to learn how to persist data.” How do you persist data? Somebody is entering information into a form. You want to save it so that the next time they open this form they get that information back. You want a way to persist data. So, how do we persist data? What are the options? What are the pros and cons? And then you’re going to narrow it down until you arrive on the persistence system. There is so much to learn there, and we should go into that.

Arsalan: There are different ways of making websites in .NET. So, let’s talk about one. Let’s talk about the pros and cons. So, let’s do all of that. However, unfortunately, I am out of time, but let’s have you back for a follow-up and then will go through this process. We’ll make the mile markers. Will work on the different technology choices. Let’s take a step back a moment. We’re going to talk about concepts that you should know. Within those concepts, will discuss the technology choices. Then we’ll go over the pros and cons. We’ll discuss everything and then you can ask questions. How does that sound?

Richard: Sounds great. Absolutely. I appreciate it.

Arsalan: Of course.

Richard: It’s nice having help planning out a route from someone who’s already been there.

Arsalan: Absolutely. This is what this podcast is all about. It’s about helping people like you. So, I am so happy that I was able to help you and I think this interview was going to help a lot of other people. So, if you’re watching this podcast, or listening to it, it’s an honor and a privilege that I’m able to serve the community and I get a lot of emails and a lot of people who tell me that it’s helping them, and it inspires them and that’s the whole point. For anybody who really wants it, and they have some aptitude, they can be software developers, but it’s not for everybody.

Arsalan: If you’re not into it, that’s okay. Yet, if you want to, then I want to help you achieve your goals because I believe that the world needs more people from different diverse backgrounds to come into this field and help us a bit. What we have is kind of more of the same. One kind of people. One kind of person. One kind of background. For instance, you bring your Chinese background, your teaching experience with English and when you solve a problem, all that knowledge and all those other things will go into that solution. So, we’re going to build better software in the world. Right? We have talked about this in the past in this podcast and this stuff happens to us all the time. I am very happy that new people are coming into this industry and if I can help them, that would be great.

Arsalan: So, will see you. Let’s schedule something and then will see everyone soon. Okay?

Richard: Also, just a note. Our industry needs more people like you, Arsalan. Listening to your podcast every morning has been one of the best parts of my education.

Arsalan: Well, that’s really good to hear. That’s wonderful. That makes it all worth it. All right, I’ll see you guys later.

Important Links

  • AIM for Brilliance Organization
  • Interface Web School
  • Kronick Enterprises Org
  • Richard’s Portfolio

Thanks for Listening!

Do you have some feedback or some advice for us or our audience? Please give us a review on iTunes, Spotify, Google Podcasts, or Stitcher and share your thoughts.

If you found this episode useful, please go ahead and share it with your friends and family. You can also listen directly and give your feedback on the website.

You can subscribe to Mentoring Developers via iTunes, Stitcher Radio, Spotify, or Google Podcasts. 

https://media.blubrry.com/mentoringdevelopers/content.blubrry.com/mentoringdevelopers/MD-episode68-Richard_Kronick.mp3
Subscribe To Mentoring Developers Podcast
Subscribe via Stitcher

We Be Tweeterin’

How to fast-track your tech career with author Greg Thomas | Mentoring Developers | youtu.be/z5WK7CVHzZA pic.twitter.com/imjBthnvph

About 4 months ago from Mentoring Developers's Twitter · reply · retweet · favorite

Creating a brighter future for the #success of new and aspiring #webdevelopers includes mentoring as well as #apprenticeships. Listen to an interesting panel discussion between mentors and mentees from @hearsparkbox moderated by @Arsalania at mentoringdevelopers.com/episo… pic.twitter.com/yJv29hNiqx

About a year ago from Mentoring Developers's Twitter · reply · retweet · favorite

Still dreaming of getting your foot in the proverbial #webdevelopment door? Did you know that there are companies that offer you a chance to do a proper #apprenticeship and get your feet wet? We found one in Dayton, OH. Check out “the exposé” :) youtu.be/Grsju8FjSx

About a year ago from Mentoring Developers's Twitter · reply · retweet · favorite

Not all #developer #jobs are created equally. Finding the right opportunity should include a great culture, a great workspace, and #apprentice opportunities for career growth. youtu.be/Grsju8FjSx

About a year ago from Mentoring Developers's Twitter · reply · retweet · favorite

To become a successful #webdeveloper, you need an employer who offers ample opportunities for growth. We met one such employer. Check out our #profile of a sparkling little #design and #development shop called Sparkbox. youtu.be/Grsju8FjSx

About a year ago from Mentoring Developers's Twitter · reply · retweet · favorite

Follow @mentoringdevs

Search

Copyright © 2021 · Mentoring Developers