I have had 2 meetings with James so far. In the first meeting, we discussed my plans for in-depth and how he could aid me along the way. I showed him my contract and we slightly altered my initial schedule. Besides the plan or how I’m going to get to my product, he said that the final goal was both challenging and doable for me. However, to get the skills of building a calculator, game, or website, I need skills that I have to build. We discussed several ways I could do this:
- Codecademy
- This is an online tool to learn the basics of a language or anything else related to coding.
- Although I would learn various skill to do certain tasks, my mentor reasoned that it doesn’t teach you how to apply those skills. For example, it could teach me things like how variables work in python, but it wouldn’t tell me how to apply it in a calculator.
- Online classes
- I found a udemy class online and showed my mentor. He said it was a great place to get started as not only will it teach me the necessary skills to code in python, it also teaches how to apply those skills, albeit not for a calculator. But learning skills of application for something can still transfer over to something else.
- The course is about how anyone can automate something they do on a computer. Instead of doing something repetitive for a job, the course teaches you to make a program that does it for you.
- Right now, the course costs money but when I bought it during the holidays, it was free.
- Books
- We didn’t talk a lot about books since they are hard to work with. With online sources, not only do I have access to it anywhere, but it’s also much easier for my mentor to keep track of my progress. I can send him screenshots of where I am in my lessons. Also, with books, I either have to buy them or borrow from the library. They can get pretty expensive sometimes and borrowing from the library means I either have to renew it or return every few weeks.
My mentor helped me install python on my computer, which wasn’t too hard to do. However, he strongly recommended that I use the command prompt to practice and do exercises for whatever I learn. This is because command prompt is like the overlord of your computer. It makes looking for files very easy and it can also perform other administrative tasks on your computer. We pathed the command prompt to where I had my python program installed so I could freely use that on command prompt for easy access. He does that at work and he said that starting with this helps in the long run. We also discussed other benefits of starting with Automating the Boring Stuff with Python. Automating anything can be useful in any job. For example, if I was an accountant, there might be a lot of repetitive work I have to do with things like putting information into Excel. With python, I can program the computer to put things into Excel without me having to do anything. So this can benefit me whether or not I get into Computer Science.
So for the past weeks, I have been making my way through the udemy course, learning stuff like variables, ordered and unordered lists, file managing, all with python. I didn’t have too much trouble going through the program because it explain everything pretty clearly. I also have an ebook as a reference so that helps me as well. My mentor and I discussed in our second meeting how I was going to start my first big project: the calculator. This is something fairly simple to make but what makes it difficult is the front-end of the code, the thing that the viewer will see. Python can manage everything to do with the back-end or the thinking. For the front-end, my mentor said that I might have to learn a bit of another program to and know how to draw buttons and stuff, just to show what it happening.
A couple months ago, I was reading my mom’s psychology book. It talked about when having a discussion with someone, it is better to face the same direction they are facing than facing across from them. They are more likely to agree or see your thoughts better. This was helpful for me when talking to my mentor because it allowed for a more fruitful discussion and less contrast of conflicting ideas. Being side-by-side also made sure that he could see my computer during the meeting so that was another bonus. During the discussion, we were more so casual than formal which allowed for more candid and open discussion. It allowed us to talk more which I think, is important. Considering that I have known my mentor for a long period time means that we have more than a mentor-mentee bond. We know each other from taekwondo so there were instances where we would talk about that in times of silence. A factor that I see impeding on our relationship in the foreseeable future is the absence of my mentor from March 27 – April 11. Sometimes, over Discord, I messaged my mentor about a small problem, usually dealing with personal preference. One example is the dir command on the cmd. In that period of time, he cannot help me. To overcome this obstacle, I can check Stack Overflow for answers. My mentor recommended this website for times when I have a question because you can see the credibility of the person who answers.
By our next meeting, I hope to have made my way through the makings of my calculator program. Next meeting, as my mentor and I discussed, will focus on inputting programs like the calculator into a https server so I use that for my base for my other projects.