Files
learning-log/daily-log.md
2026-01-16 09:16:12 +01:00

7.0 KiB

Daily Logs

2026-01-16 - Nand2Tetris Unit 2.

Tasks: Implmenting the ALU chips in HDL. Blocker: Time and understanding. Lesson: Learned about some HDL syntax. Also the FullAdder, Add16 and Increment16. Got all of them. Was struggling with the Increment due to the syntax. I had the right idea. Tomorrow: Building the ALU chip from all the building blocks. Looking forwart to it. Time Spent: 90m

2026-01-15 - Nand2Tetris Unit 2.

Tasks: Reading the unit 2 chapter and starting the project 2 tasks. Blocker: Not a lot. Read some parts a couple of times. The theory makes a little bit more sense now. The ALU implementations i'm worried of but lets see. Also the ALU inputs i did not understand fully. Implemented the HalfAdder but was struggling with the FullAdder. Lesson: HalfAdder, FullAdder, Incrementers and the basics of binary addition and subtraction. Learned about two's complement for negative numbers. Tomorrow: Continue with the project and implementation of the ALU chips. Time Spent: 90m

2026-01-14 - Nand2Tetris Unit 2

Tasks: Watched the whole Unit 2 on youtube.
Blocker: Nothing really. Understanding if anything.
Lesson: Learned about the ALU(Arithmetic Logic Unit) and what it is used for and how it is built. Learned of adding/substracting binary numbers. Binary to decimal conversion simple.
Tomorrow: Trying to implement the ALU in HDL. Will start the Project 2 tasks.
Time Spent: 90m

2026-01-13 - Reading a little bit about C

Tasks: Only read a little bit about C. Did some git setup on my laptop.
Blocker: Time was pressed today.
Discovery: Multiple git users on the same laptop. Also learned of a selfhosted gitea solution. That works very good.
Lesson: C information and gitea selfhosting.
Tomorrow: Reading nand2tetris unit 2 text.

2026-01-09 () - Nand2Tetris Unit 1

Task: Finalize the last logic gate implementations for project 1.
Blocker: They were hard to understand at first. The logic is not quite there for me. Hope that it later will make more sense.
Discovery: A little bit of a realization of how the logic gates work together. Still a bit fuzzy. dMux4Way and all that.
Lesson: HDL. Trial and error.
Fix: I got it at last, and the the dMux8Way was just copy paste from dMux4Way with some adjustments.
Tomorrow: Probably read up on Unit 1 again. Otherwise start Unit 2.
Time Spent: 90m

2026-01-08 () - Nand2Tetris Unit 1

Task: Implementation of the HDL logic gates.
Blocker: The logic behind it. The coding mindset. Need to change the mindset a bit to be more systems hardwiring. It's okay. It's a process.
Discovery: Learned about a web tool that helps build the logic implementation. It clicked a little bit with the gates and creating valves instead of doing if statements in my head.
Lesson: Building the logic gates. It's kind of cool.
Fix: Just playing around with it. Visualizing it. Drawing the diagrams before trying to code it.
Tomorrow: Finish the last Logic Gates.
Time Spent: 90m

2026-01-07 () - Nand2Tetris Unit 1

Task: Getting started with the project 1 implementation.
Blocker: Struggling a little bit with HDL and getting started.
Discovery: That the first building blocks of gates are used on top of each other. Not, And and Or gates all build on top of each other.
Lesson: HDL scriping/coding. Built And, Or and Xor gates. Wrote them i guess. Had a hard time understanding and planning the implementations. Had to look some of them up on Wiki. Not the HDL solution. Only the diagram.
Fix: Researching the HDL language.
Tomorrow: Continue with the Project 1 implementation. The next gates.
Time Spent: 90m

2026-01-06 () - Nand2Tetris Unit 1

Task: Basically just reading and understanding the first unit of Nand2Tetris.
Blocker: Understanding the logic gates and how they work together. Did not block too much. Read some sections twice.
Discovery: Logic gates and how they can be combined to make more complex components. HDL.
Lesson: Same as above. Reading through the material helped a lot.
Fix: Nothing.
Tomorrow: Starting on the first project of Unit 1. Implementation section of the first project.
Time Spent: 90m.

2026-01-05 () - Nand2Tetris Start

Task: Getting started with Nand2Tetris.
Blocker: Not really anything.
Discovery: Read about what the project really entails.
Lesson: Not much yet. Played around with their online IDE.
Fix:
Tomorrow: Starting Chapter 1.
Time Spent: 90m.

2025-12-18 () - Svelte Mostly

Task: Play around with Svelte and get used to it.
Blocker: Not really knowing the syntax.
Discovery: $state, $derived, general file structure syntax.
Lesson: Playing around teaches you.
Fix: ...
Tomorrow: Clean up and reflect on the week. Time Spent: 90m.

2025-12-17 () - Svelte, Generators

Task: Generator functions and yielding a mock stream of data.
Blocker: Not being very comfortable with Vim & Svelte. Meaning slow movement.
Discovery: Generator functions are pretty sweet. Helps open the call stack.
Lesson: Generators, Svelte and some Vim.
Fix: Not a lot. Tomorrow: Play around with Svelte and finish the UI. Learn more about Svelte. Time Spent: 90m.

2025-12-16 () - WebLLM

Task: Read up on the WebLLM and play around with it.
Blocker: Had some problems with the WebGPU in the browser.
Discovery: Found out that it's new technology and some browsers blacklist the use of the GPU in the browser.
Lesson: Learned about about:config in Firefox and how to enable different configs and blocked things.
Fix: Above lesson. Allowed it and removed the blacklist. WebLLM ran in the browser and i was ready to test it out. Tomorrow: I will create a fake stream of data in the UI and yield the results with a generator function. All in Svelte. Time Spent: 45m.

2025-12-15 (Mon) - Event Loop

Task: Play around with Event Loop and Svelte.
Blocker: Understanding the Event Loop & Being new to svelte.
Discovery: Svelte Setup & Syntax. Event loop yielding & Tasks.
Lesson: How to yield promises. Understanding the Event Loop somewhat. Svelte syntax a little bit. Playing around with functions and loops that can crash your browser.
Fix: Yielding will make hard to compute functions easier to manage for the browser and eyes.
Tomorrow: WebLLM.

2025-12-11 (Tue) - Event Loop

Task: Learn and understand the Event Loop.
Blocker: Needed to understand the event loop properly.
Discovery: How the call stack works. Performance checking Firefox.
Lesson: SvelteKit init/quick crash course. Difference between Call stack, microtask & macrotask. Also which order they're being called.
Fix: Run SvelteKit app & play around with the Event Loop. /lab in the app.
Tomorrow: Play around more with the Event Loop in the browser to understand properly.