Member-only story
Learning to Code? Learn Program Design, Too.
Many jump straight into popular languages such as Java or Python. Still, program design with Racket is often overlooked — how program design is different, why it’s an essential skill, and how to get started with DrRacket (for free).
Everyone Knows How to Program
What do data scientists, artists, or fitness coaches have in common? Although there may be many answers, in this story, the answer is they all know how to program. However, I’m not referring to “program” in terms of writing a computer program. Instead, I refer to programming as a problem-solving approach that requires “systematic thought, planning, and understanding.”
Take, for example, the fitness coach who considers a client’s goals and then programs for the client a regimen of varied exercises and nutritional guidelines to achieve those goals. Likewise, the artist takes a specific approach to create a painting that is meant to express a concept or elicit an emotional response. Lastly, data scientists also benefit from taking a systemic approach to solving problems (in addition to actually writing lots of code).
Analogies aside, the point is, most of us already know how to program before learning to code; however, the problem is we may not fully understand program design. Why does it matter? According to How to…