Developers can build self-directed learning habits through interactive coding exercises
When you get stuck while learning a new technology, you can develop the ability to solve problems on your own instead of simply looking for answers. This resource is an interactive note designed to help you internalize learning methodologies by using programming languages as tools. Readers understand concepts by running code directly and form learning habits through repetitive practice.
Starting Learning Through Coding
The author explains why programming serves as an introduction to self-study. Code trains logical thinking, provides immediate feedback, and naturally teaches the process of breaking down complex problems into smaller units. This book uses Python and is structured so that readers input and run code directly in a Jupyter Notebook environment. Readers maximize learning effectiveness by writing code by hand and fixing errors, going beyond simply reading.
Structure by Learning Stage
The entire content is divided into stages from basic concepts to advanced topics. The first part covers the theoretical background of why self-study ability is important and why coding is its starting point. The second part deals with basic Python syntax such as functions, variables, and control flow, providing practice problems to help understand each concept. The third part covers more complex topics like classes, regular expressions, and recursive functions, deepening problem-solving abilities. The final appendix guides the installation and setup of necessary tools such as Jupyter and Git.
Prerequisites and Environment Setup
To use this resource effectively, a Jupyter Notebook environment is required. The README includes a separate note guiding the installation and setup of Jupyterlab. The appendix also covers how to manage projects using Git and how to configure Visual Studio Code. After installing these tools, readers open the notes for each chapter and run the code to proceed with their learning. A Markdown version is also provided, allowing readers to read in their preferred format.
Target Audience and Precautions
This resource is suitable for those learning programming for the first time or those who want to systematically master learning methodologies. It is particularly helpful for readers who want to develop problem-solving abilities rather than simply memorizing knowledge. However, this resource is distributed under the CC-BY-NC-ND license, so commercial use and modification are restricted. It also requires the latest versions of Python and the Jupyter environment, and readers must run the code themselves to see the benefits. Passive reading alone is difficult to achieve the intent of this resource.