<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>kodkod | Intro Course</title><link>https://intro-kodkod-6.nm-ambition.com/en/</link><description>Recent content on kodkod | Intro Course</description><generator>Hugo</generator><language>en</language><copyright>מבואות קודקוד</copyright><lastBuildDate>Mon, 01 Jan 0001 00:00:00 +0000</lastBuildDate><atom:link href="https://intro-kodkod-6.nm-ambition.com/en/index.xml" rel="self" type="application/rss+xml"/><item><title>Installations: Everything You Install in the Course</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/installations/01-installations/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/installations/01-installations/</guid><description>&lt;h2 id="in-this-lesson"&gt;In this lesson&lt;/h2&gt;
&lt;p&gt;This lesson is built from a few short chapters, in the same order as the slides:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Chapter 1&lt;/strong&gt; — the course tools: what each tool does&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chapter 2&lt;/strong&gt; — the installation steps, one by one&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chapter 3&lt;/strong&gt; — checking that everything is installed, and what we will install later in the course&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="chapter-1-the-course-tools"&gt;Chapter 1: The Course Tools&lt;/h2&gt;
&lt;h3 id="what-will-we-learn"&gt;What will we learn?&lt;/h3&gt;
&lt;p&gt;In this lesson we will get to know the course and how we work in it, and then set up the &lt;strong&gt;development environment&lt;/strong&gt; — the set of tools we will use to write and run code throughout the course. By the end of the lesson all the tools will be installed on your computer, and you will know what each one is for:&lt;/p&gt;</description></item><item><title>A Database and Setting Up MySQL: Tables, Keys, Docker and a Driver</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/databases/01-what-is-a-database/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/databases/01-what-is-a-database/</guid><description>&lt;h2 id="in-this-lesson"&gt;In this lesson&lt;/h2&gt;
&lt;p&gt;This lesson is built from two chapters, in the same order as the slides:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Chapter 1&lt;/strong&gt; — what a Database is: table, row, column, Primary Key and data types&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chapter 2&lt;/strong&gt; — setting up MySQL: Docker, Database Client and a Driver&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="chapter-1-what-a-database-is--table-row-column-primary-key-and-data-types"&gt;Chapter 1: What a Database Is — Table, Row, Column, Primary Key and Data Types&lt;/h2&gt;
&lt;h3 id="what-will-we-learn"&gt;What will we learn?&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Why&lt;/strong&gt; you need a Database.&lt;/li&gt;
&lt;li&gt;What a &lt;strong&gt;Relational Database&lt;/strong&gt; is.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Table&lt;/strong&gt;, &lt;strong&gt;Row&lt;/strong&gt;, &lt;strong&gt;Column&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Primary Key&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Basic &lt;strong&gt;Data Types&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;div class="teach-box teach-box-tip"&gt;
 &lt;div class="teach-box-title"&gt;What we will not learn here (on purpose)&lt;/div&gt;
 &lt;div class="teach-box-body"&gt;
&lt;p&gt;Here we learn &lt;strong&gt;only the basics needed for CRUD&lt;/strong&gt;: a connection, one table, and creating, reading, updating and deleting. We will &lt;strong&gt;not&lt;/strong&gt; learn JOIN, GROUP BY, HAVING, Sub-Queries, advanced normalization, indexes or Stored Procedures. You will learn those in depth later in the track.&lt;/p&gt;</description></item><item><title>Backend and HTTP: Who Does What, Methods and Status Codes</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/backend-fastapi/01-what-is-backend/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/backend-fastapi/01-what-is-backend/</guid><description>&lt;h2 id="in-this-lesson"&gt;In this lesson&lt;/h2&gt;
&lt;p&gt;This lesson is built from two chapters, in the same order as the slides:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Chapter 1&lt;/strong&gt; — what a Backend is: Client, Server, Database, API and Endpoint&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chapter 2&lt;/strong&gt; — HTTP Methods and Status Codes&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="chapter-1-what-a-backend-is--client-server-database-api-and-endpoint"&gt;Chapter 1: What a Backend Is — Client, Server, Database, API and Endpoint&lt;/h2&gt;
&lt;h3 id="what-will-we-learn"&gt;What will we learn?&lt;/h3&gt;
&lt;p&gt;Now we move from programs that run &lt;strong&gt;on our own computer&lt;/strong&gt; to software that &lt;strong&gt;others&lt;/strong&gt; talk to over the network. This lesson gives the big picture and the words:&lt;/p&gt;</description></item><item><title>Classes and Objects: From the Problem to a Complete Class</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/oop/01-classes-and-objects/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/oop/01-classes-and-objects/</guid><description>&lt;h2 id="in-this-lesson"&gt;In this lesson&lt;/h2&gt;
&lt;p&gt;This lesson is built as one story, in the same order as the slides. We start from a small bank system written with dictionaries and functions, see where it breaks, and in every chapter add one tool that solves one problem:&lt;/p&gt;</description></item><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>Connecting Routes to Database Actions: the Architecture</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/students-api/01-connecting-routes-to-db/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/students-api/01-connecting-routes-to-db/</guid><description>&lt;h2 id="what-will-we-learn"&gt;What will we learn?&lt;/h2&gt;
&lt;p&gt;Now we &lt;strong&gt;connect everything&lt;/strong&gt;: the server from the backend and FastAPI topic, and the database from the databases topic. This lesson focuses on the &lt;strong&gt;architecture&lt;/strong&gt;, that is, how the parts connect, and implements the first two Endpoints (reading). In the next lesson, the rest.&lt;/p&gt;</description></item><item><title>Exceptions A: Why Error Handling Is Needed, try and except</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-errors-logging/01-try-except/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/python-errors-logging/01-try-except/</guid><description>&lt;h2 id="what-will-we-learn"&gt;What will we learn?&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;What an &lt;strong&gt;Exception&lt;/strong&gt; is.&lt;/li&gt;
&lt;li&gt;Why real software has to &lt;strong&gt;handle&lt;/strong&gt; errors and not crash.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;try&lt;/code&gt; / &lt;code&gt;except&lt;/code&gt; syntax.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Different&lt;/strong&gt; handling for different kinds of errors.&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;Imagine a small calculator server: one client sends &lt;code&gt;&amp;quot;hello&amp;quot;&lt;/code&gt; instead of a number, &lt;strong&gt;and the whole server crashes&lt;/strong&gt;. All the clients who come after them get &amp;ldquo;Connection refused&amp;rdquo;.&lt;/p&gt;</description></item><item><title>list: Creating, Accessing, Adding, Removing, Searching and Looping</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-data-functions/01-list/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/python-data-functions/01-list/</guid><description>&lt;h2 id="what-will-we-learn"&gt;What will we learn?&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;list&lt;/strong&gt; is the most common data structure in Python. We already used it briefly. Today we will learn it properly:&lt;/p&gt;</description></item><item><title>Modules: Why We Split into Files, import, from and as</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/python-modules-files/01-modules-and-import/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/python-modules-files/01-modules-and-import/</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;Module&lt;/strong&gt; is.&lt;/li&gt;
&lt;li&gt;Why a project is split into &lt;strong&gt;several files&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Three forms of importing: &lt;code&gt;import&lt;/code&gt;, &lt;code&gt;from ... import&lt;/code&gt;, &lt;code&gt;as&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;What &lt;strong&gt;exactly&lt;/strong&gt; happens when Python imports a file.&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;We already used modules: &lt;code&gt;import os&lt;/code&gt;, &lt;code&gt;import logging&lt;/code&gt;, &lt;code&gt;import socket&lt;/code&gt;. Today we will write &lt;strong&gt;our own&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Networks and the Internet: Client-Server, Addresses, Protocols and the Journey of a Request</title><link>https://intro-kodkod-6.nm-ambition.com/en/docs/networking/01-networks-internet/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://intro-kodkod-6.nm-ambition.com/en/docs/networking/01-networks-internet/</guid><description>&lt;h2 id="in-this-lesson"&gt;In this lesson&lt;/h2&gt;
&lt;p&gt;This lesson is built from a few short chapters, in the same order as the slides:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Chapter 1&lt;/strong&gt; — computer networks, LAN, the internet, client and server&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chapter 2&lt;/strong&gt; — IP address, port, domain and DNS&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chapter 3&lt;/strong&gt; — request, response and protocols: HTTP, HTTPS, TCP and UDP&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Chapter 4&lt;/strong&gt; — what happens from the moment you type an address until the site is shown&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="chapter-1-computer-networks-lan-the-internet-client-and-server"&gt;Chapter 1: Computer Networks, LAN, the Internet, Client and Server&lt;/h2&gt;
&lt;h3 id="what-will-we-learn"&gt;What will we learn?&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;What a &lt;strong&gt;computer network&lt;/strong&gt; is.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LAN&lt;/strong&gt; (local network) versus the &lt;strong&gt;internet&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;router&lt;/strong&gt;, the device that connects networks.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;client-server&lt;/strong&gt; model, the basis of every website, app and server we will build in the backend and databases topics.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="why-do-we-need-this"&gt;Why do we need this?&lt;/h3&gt;
&lt;p&gt;Every modern app talks to the network: WhatsApp, websites, games, and in the backend and databases topics also the server you will write. Backend developers write exactly the &lt;strong&gt;server&lt;/strong&gt; side. Frontend developers write the &lt;strong&gt;client&lt;/strong&gt; side. Without understanding this model, you cannot understand what your code does.&lt;/p&gt;</description></item></channel></rss>