You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<content type="html"><p align="center"><img src="/images/python_what_next.png" alt="Python what next" /></p>
@@ -8590,6 +8590,7 @@ The substitution works from start of the line for every iteration of the while l
8590
8590
<li><a href="https://py.checkio.org/">Checkio</a>, <a href="https://www.codingame.com/start">Codingame</a>, <a href="https://codecombat.com/">Codecombat</a> — gaming based challenges</li>
8591
8591
<li><a href="https://old.reddit.com/r/dailyprogrammer">/r/dailyprogrammer</a> — not active currently, but there's plenty of past challenges with discussions</li>
8592
8592
</ul>
8593
+
<p><img src="/images/info.svg" alt="info" /> See also this article on <a href="https://www.pythonmorsels.com/programming-exercise-tips/">solving programming exercises</a>.</p>
8593
8594
<p>Once you are comfortable with basics and syntax, the next step is projects. I wrote a 10-line program that solved a common problem for me — adding <code>body { text-align: justify }</code> to <code>epub</code> files that are not justify aligned. I didn't know that this line would help beforehand. Found a solution online and then automated the process of unzipping <code>epub</code>, adding the line and then packing it again. That will likely need you to lookup documentation and go through some stackoverflow Q&amp;A as well. And once you have written the solution and use it regularly, you'll likely encounter corner cases and features to be added. I feel this is a great way to learn and understand programming.</p>
8594
8595
<p>These days, I use a better EPUB reader that allows me to customize alignments. Here's another real world example. I'm on Linux and use the terminal for many things. I wanted a CLI tool to do simple calculations. There's <code>bc</code> command, but it doesn't accept direct string argument and you need to set <code>scale</code> and so on. So, I looked up how to write a CLI tool in Python and <a href="https://learnbyexample.github.io/practice_python_projects/calculator/calculator.html">wrote one using the built-in <code>argparse</code> module</a> that works for my particular use cases.</p>
8595
8596
<p>Here are some resources to help you get started on projects:</p>
@@ -8649,6 +8650,7 @@ The substitution works from start of the line for every iteration of the while l
8649
8650
<li><a href="https://dabeaz-course.github.io/practical-python/Notes/Contents.html">Practical Python Programming</a> — covers foundational aspects of Python programming with an emphasis on script writing, data manipulation, and program organization</li>
8650
8651
<li><a href="https://inventwithpython.com/beyond/chapter0.html">Beyond the Basic Stuff with Python</a> — Best Practices, Tools, and Techniques, OOP, Practice Projects</li>
8651
8652
<li><a href="https://www.oreilly.com/library/view/python-distilled/9780134173399/">Python Distilled</a> — this pragmatic guide provides a concise narrative related to fundamental programming topics such as data abstraction, control flow, program structure, functions, objects, and modules</li>
8653
+
<li><a href="https://www.oreilly.com/library/view/python-in-a/9781098113544/">Python in a Nutshell</a> — use modern Python idiomatically, structure Python projects, how to debug</li>
8652
8654
</ul>
8653
8655
<p><strong>Algorithms and Design patterns</strong></p>
8654
8656
<ul>
@@ -8658,9 +8660,10 @@ The substitution works from start of the line for every iteration of the while l
<li><a href="https://www.oreilly.com/library/view/fluent-python-2nd/9781492056348/">Fluent Python</a> — takes you through Python’s core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time</li>
8663
+
<li><a href="https://www.oreilly.com/library/view/fluent-python-2nd/9781492056348/">Fluent Python</a> — takes you through Python's core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time</li>
8662
8664
<li><a href="https://nostarch.com/seriouspython">Serious Python</a> — deployment, scalability, testing, and more</li>
8663
8665
<li><a href="https://www.manning.com/books/practices-of-the-python-pro">Practices of the Python Pro</a> — learn to design professional-level, clean, easily maintainable software at scale, includes examples for software development best practices</li>
8666
+
<li><a href="https://github.com/dabeaz-course/python-mastery">Advanced Python Mastery</a> — exercise-driven course on Advanced Python Programming that was battle-tested several hundred times on the corporate-training circuit for more than a decade</li>
8664
8667
</ul>
8665
8668
<br>
8666
8669
<h2 id="handy-cheatsheets">Handy cheatsheets<a class="zola-anchor" href="#handy-cheatsheets" aria-label="Anchor link for: handy-cheatsheets">🔗</a></h2>
0 commit comments