ChiPy Blog 3 — Reflections

I’m taking a reflective approach to my 3rd blog for the 2017 Spring ChiPy Mentorship Program. I have been coding in Python for 6 months now and would like to share with you some of what I learned in that journey.

I know that I learn new concepts best in a structured, formal learning environment. At the time I started the mentorship program I was also taking a programming and logic class online from a local community college. It was a great way to get introduced to the basic concepts in programming and it gave me a foundation to build upon in my meetings with Nik, my ChiPy mentor. As a bonus, the unit in object oriented programming rolled up just in time as I started to develop the code for my app. In that unit I learned about objects, classes, and encapsulation plus the all-important __init__ method which has opened up a whole new world for me.

We all know that there is no substitute for real-world experience and that is where my ChiPy mentor came in. Overall, the mentorship program has been a perfect experiential learning experience for me. My classroom learning is being applied to an authentic situation (developing a healthcare app) with the help of a Python programming guru (my mentor Nik). For example, I learned the concept of classes in my programming course but what I didn’t know until I was designing my app is that a class links similar data together and allows operations to be done that will cause that data to change. That was a significant learning for me and one that had implications for how I approached writing my code.

Coding is fun and should be done with other people

I spent hours by myself trying to figure out why my code wouldn’t run; I found that very isolating and no fun. While Google and Stack Overflow are great resources, I came to the realization that I would never improve my coding if I didn’t reach out to others for their advice. I admit that this can be a bit intimidating (“Jeez, I am just a newbie! “) but I think the best approach to learning how to code is to work together with classmates or peers since you can learn a lot from each other; plus it’s a lot more fun wrestling on it together. If you are lucky enough, you can find a mentor who is willing to share their expertise and inspire you to keep learning. I am amazed at how my ChiPy mentor can take my cumbersome code and transform it into elegant, readable code. Hey, that’s what I want to be able to do! Seeing that motivates me to keep growing and learning as a Python programmer.

“I don’t think I’m cut out for this”

said everyone who ever started coding. Practice, practice, practice, and ask a lot of questions.

I now have a working web application! Just wow. I never thought I could do something like this. Never mind that it just says “Joe” or “12345–1,” we’ll fix that. One of the final steps of my ChiPy project will be to explore rendering Flask templates so the app will have a more engaging interface. Since the template will act like a skeleton onto which the patient information will be placed, I intend to keep my end users (doctors, nurses, patients) in mind to ensure that the interface is user friendly.

I have learned a lot of Python in the past 6 months and have had lots of fun and made new friends in the process (Bonus!). Once the ChiPy mentorship program is over I will need to set aside dedicated time each day to code and attend the monthly ChiPy meetings so I don’t get rusty. I hope I have inspired you to try your hand at coding in Python and even consider applying to the ChiPy mentorship program or taking a programming course at your community college. Enjoy your journey!