Teach programming to my friend

How to go through:

  1. Complete Part 1
  2. Go through Parts 2-6 in a non-linear way
  3. Go through Parts 7-9 in a non-linear way

My friend is on MacOS, so the current curriculum is a bit macos centric.

Important!

https://apps.ankiweb.net/

☮ <- stuff the student should be able to check out first, independently

Curriculum🔗

  1. Basic use and knowledge of common Tools (git,vscode,docker,zola,markdown)
  2. Computers
  3. Networking
  4. Databases
  5. Programming
  6. Engineering
    • Explain tradeoffs and hoe no concepts in the following books are absolute. Always look for the tradeoffs.
    • Joe Armstrong's "The Mess we are in"
    • Rich Hickey's greatest hits
    • Object relational impedance mismatch
    • "Clean Code: A Handbook of Agile Software Craftsmanship"
    • "Refactoring: Improving the Design of Existing Code (2nd Edition)"
    • "Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions"
    • "Domain-Driven Design: Tackling Complexity in the Heart of Software"
    • "Design Patterns: Elements of Reusable Object-Oriented Software"
    • "SOA Patterns"
    • "Site reliability Engineering"
    • "Systems Performance - Entreprise and the cloud"
    • find my book on Queueing systems
    • Deliverables: ?? make a full web app for something, maybe a ladderboard etc. for the gameboy project ??
  7. Specialization to work in my team
  8. Security, debugging, reverse engineering ... lots of stuff i picked up organically there...
  9. Optional

How Internet Work🔗

Internet protocol suite: | layer | protocols | |-------------|---------------------------------------------------------------------------------------------------------------------------------| | Application | BGP DHCP DNS FTP HTTP HTTPS IMAP LDAP MGCP MQTT NNTP NTP POP ONC/RPC RTP RTSP RIP SIP SMTP SNMP SSH Telnet TLS/SSL XMPP more... | | Transport | TCP UDP DCCP SCTP RSVP more... | | Internet | IP IPv4 IPv6 ICMP ICMPv6 ECN IGMP IPsec more... | | Link | ARP NDP OSPF Tunnels L2TP PPP MAC Ethernet Wi-Fi DSL ISDN FDDI |

OSI 7 layers | n | name | protocols | |---|--------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 7 | Application | NNTP SIP SSI DNS FTP Gopher HTTP NFS NTP SMPP SMTP SNMP Telnet DHCP Netconf more.... | | 6 | Presentation | MIME XDR ASN.1 | | 5 | Session | Named pipe NetBIOS SAP PPTP RTP SOCKS SPDY | | 4 | Transport | TCP UDP SCTP DCCP SPX | | 3 | Network | IP IPv4 IPv6 ICMP IPsec IGMP IPX AppleTalk X.25 PLP | | 2 | Data link | ATM ARP IS-IS SDLC HDLC CSLIP SLIP GFP PLIP IEEE 802.2 LLC MAC L2TP IEEE 802.3 Frame Relay ITU-T G.hn DLL PPP X.25 LAPB Q.921 LAPD Q.922 LAPF | | 1 | Physical | EIA/TIA-232 EIA/TIA-449 ITU-T V-Series I.430 I.431 PDH SONET/SDH PON OTN DSL IEEE 802.3 IEEE 802.11 IEEE 802.15 IEEE 802.16 IEEE 1394 ITU-T G.hn PHY USB Bluetooth RS-232 RS-449 |

Notes: