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: 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?
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.
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.
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 firstname.lastname@example.org. 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.
Thanks for Listening!
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.