<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Professional Python, Clean Code and Debugging on kodkod | Intro Course</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/</link><description>Recent content in Professional Python, Clean Code and Debugging on kodkod | Intro Course</description><generator>Hugo</generator><language>en</language><copyright>מבואות קודקוד</copyright><atom:link href="https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/index.xml" rel="self" type="application/rss+xml"/><item><title>Clean Code A: Good Names, Small Functions and a Single Responsibility</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/03-naming-and-small-functions/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/03-naming-and-small-functions/</guid><description>&lt;h2 id="what-will-we-learn"&gt;What will we learn?&lt;/h2&gt;
&lt;p&gt;Until now the goal was &amp;ldquo;make the code work&amp;rdquo;. From today, the goal is also to make it &lt;strong&gt;clear&lt;/strong&gt;. We will learn:&lt;/p&gt;</description></item><item><title>Clean Code B: DRY, KISS, Separation of Concerns, Comments and Refactoring</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/04-dry-kiss-soc-comments/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/04-dry-kiss-soc-comments/</guid><description>&lt;h2 id="what-will-we-learn"&gt;What will we learn?&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;DRY&lt;/strong&gt; — Don&amp;rsquo;t Repeat Yourself.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;KISS&lt;/strong&gt; — Keep It Simple, Stupid.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Separation of Concerns&lt;/strong&gt; — separating responsibilities between parts of the program.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Comments&lt;/strong&gt; — when a comment helps and when it hurts.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Refactoring&lt;/strong&gt; — improving the structure of the code without changing its behavior.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-do-we-need-this"&gt;Why do we need this?&lt;/h2&gt;
&lt;p&gt;In the topic on the computer and the operating system we wrote &lt;code&gt;project_check.py&lt;/code&gt; with four almost identical blocks. What happens when we need to check 20 more files? Or change the message from &lt;code&gt;OK&lt;/code&gt; to &lt;code&gt;✓&lt;/code&gt;? You have to touch 20 places, and in one of them you will surely forget.&lt;/p&gt;</description></item><item><title>Debugging A: What a Bug Is, Kinds of Errors and Reading a Stack Trace</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/05-bugs-and-stack-trace/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/05-bugs-and-stack-trace/</guid><description>&lt;h2 id="what-will-we-learn"&gt;What will we learn?&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;What a &lt;strong&gt;Bug&lt;/strong&gt; is.&lt;/li&gt;
&lt;li&gt;The three kinds of errors: &lt;strong&gt;Syntax Error&lt;/strong&gt;, &lt;strong&gt;Runtime Error&lt;/strong&gt;, &lt;strong&gt;Logical Error&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;How to read a &lt;strong&gt;Stack Trace&lt;/strong&gt; (Traceback), Python&amp;rsquo;s error message.&lt;/li&gt;
&lt;li&gt;The most common errors, and what each one says.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-do-we-need-this"&gt;Why do we need this?&lt;/h2&gt;
&lt;p&gt;Developers spend a huge part of their time finding and fixing bugs. The difference between a beginner and a professional is not that the professional has no bugs, but that they &lt;strong&gt;read the error message&lt;/strong&gt; and know within seconds where to look. Beginners see a lot of red text and panic. By the end of the lesson, the red text will become a map.&lt;/p&gt;</description></item><item><title>Debugging B: The Debugging Process and the VS Code Debugger</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/06-debugging-process-and-tools/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/python-clean-code/06-debugging-process-and-tools/</guid><description>&lt;h2 id="what-will-we-learn"&gt;What will we learn?&lt;/h2&gt;
&lt;p&gt;In the previous lesson we learned to &lt;strong&gt;read&lt;/strong&gt; errors. Now we will learn to &lt;strong&gt;hunt&lt;/strong&gt; bugs, including ones that have no error message:&lt;/p&gt;</description></item></channel></rss>