Welcome to the first episode of Unwind in podcast form! Web developer turned CPU engineer Alex (aolo2) joins us to discuss three amazing programs he made from scratch: a collaborative whiteboard, a chat application, and a processor trace viewer.
For those listening via a podcast feed, welcome to Unwind. Unwind started as a live interview show on Twitch, but this year we've decided to change the format and bring it to podcast platforms. We're still keeping the old Handmade Network Podcast episodes around, so you can listen through the backlog at any time.
This episode is intended to be watched in video form. We recommend watching on YouTube or Spotify.
Show notes:
Join the Handmade community: https://handmade.network/
Edited by Vital Ash: https://youtube.com/@vitalash
Rudy Faile - community member, former podcast guest, navy veteran, and systems engineer - joins us to discuss the Handmade movement in 2021, including the Handmade Seattle conference, Handmade projects, and Handmade Network, and where we are planning to go with Handmade Network in 2022 and beyond.
Tyler Leeds is a network engineer for Automattic. He works as a member of a small team that manages a massive network, responsible for a massive portion of the entire web. He and Rudy Faile, a coworker of Tyler's, community member, and former podcast guest, join us in this episode to dig into the guts of how networking works at a lower level. We discuss both the technical and human aspects of how the Internet comes together, and what that means for software developers.
Tyler was kind enough to provide a practical example of a BGP update (which we discuss in the podcast) in action for us to check out: https://handmade.network/static/media/podcast/hmn/bgp_example.txt
https://www.arin.net/resources/guide/asn/
https://en.wikipedia.org/wiki/Internet_service_provider
https://en.wikipedia.org/wiki/IPv4
https://en.wikipedia.org/wiki/IPv6
https://en.wikipedia.org/wiki/Local_area_network
https://www.cisco.com/c/en/us/support/docs/ip/routing-information-protocol-rip/13769-5.html
https://www.cisco.com/c/en/us/support/docs/ip/border-gateway-protocol-bgp/13753-25.html
https://en.wikipedia.org/wiki/Domain_Name_System
Ben Visness and Asaf Gartner—web development professionals and Handmade Network staff members—join us in this episode. We discuss the problems that the web is trying to solve, the source of performance problems in web-based software, how the web could improve practically in the short-term, and how it could improve dramatically in the long-term.
https://developer.mozilla.org/en-US/docs/Web/CSS
https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model
https://www.w3schools.com/csS/css3_flexbox.asp
https://www.chromium.org/developers/how-tos/trace-event-profiling-tool
https://developer.chrome.com/docs/devtools/evaluate-performance/
Demetri Spanos is a machine learning expert, PhD recipient, and former university professor. In this episode, he joins us again to discuss the subject of education, particularly in universities. We dig into the perceived problems of computer science and software engineering education, whether they are real or serious, why they are there, how they have been solved elsewhere, and how we might solve them in the future.
https://en.wikipedia.org/wiki/Halting_problem
https://ncu.libguides.com/writingresources/synthesis
https://en.wikipedia.org/wiki/Blind_men_and_an_elephant
https://en.wikipedia.org/wiki/Java_(software_platform)
Andrew Richards (also known as cancel), creator of Ripcord, joins us to chat about how he got into low level programming, the development and technical challenges of Ripcord, programming languages, teaching low-level programming, and modern software.
https://en.wikipedia.org/wiki/UTF-8
https://en.wikipedia.org/wiki/UTF-16
https://en.wikipedia.org/wiki/Pascal_(programming_language)
Andrew Kelley and Allen Webster join us to discuss the funding model of Zig language and making Handmade-style projects self-sufficient in funding.
https://drive.google.com/drive/folders/1ucHARxVbhrBbuZDbhrGHYDTsYAs8_bMH
Andrew Reece, creator of Handmade Network project WhiteBox (https://whitebox.handmade.network), a real-time debugging tool, joins us to discuss WhiteBox, low-level programming, improving the cycle of human-computer interaction both in the physical and software spaces, instant feedback, providing insight into the multiple dimensions that define a program and its effects, and the future of computing.
https://twitter.com/whitebox_sys
https://infovis-wiki.net/wiki/Visual_Variables
https://www.axismaps.com/guide/general/visual-variables/
https://en.wikipedia.org/wiki/Jerome_Bruner
Creator of 4coder and RAD Game Tools engineer Allen Webster joins us to discuss teamwork on a new project he started with Ryan, sparked by topics discussed last time he joined us. Using this project as an example, we explore various problems with approaching a team-based Handmade project as programmers used to working on projects alone, and some of the solutions used for approaching those problems.
https://handmade.network/podcast/ep/14a5407e-5f73-4c59-a422-44c4ece6a1bf
Martijn Courteaux, programmer on the SilverNode project (https://silvernode.handmade.network), joins us to discuss the architecture and development of SilverNode, a RAW photo editor to improve the efficiency and abilities of photographers when editing photos.
https://silvernode.handmade.network
https://www.youtube.com/channel/UCtrDnkbsSQG7UqQm57f17Hw
https://en.wikipedia.org/wiki/Raw_image_format
https://en.wikipedia.org/wiki/Bayer_filter
https://en.wikipedia.org/wiki/JPEG
Programming educator and community member Patrick Eye joins us in discussing programming education, simplicity, approaches to programming, and game development.
https://en.wikipedia.org/wiki/Lisp_(programming_language)
https://en.wikipedia.org/wiki/Class_hierarchy
https://en.wikipedia.org/wiki/Unified_Modeling_Language
https://en.wikipedia.org/wiki/Abstraction_(computer_science)
We are joined by Ramon Santamaria (raysan5), creator of the popular C programming library Raylib for video game programming, to talk about Raylib, API design, education, programming techniques, and simplicity.
https://raylib.com/cheatsheet.html
https://solarlune.itch.io/masterplan
https://github.com/Guevara-chan/Midday-Commander
https://github.com/raysan5/raygui
Community member, systems engineer, and U.S. Navy Veteran Rudy Faile joins us in turning the tables by interviewing the usual host of the podcast, Ryan Fleury. Together they discuss Handmade Network's history, its purpose and mission, the web, Ryan's experience and how it relates to Handmade Network, and the future of computing.
https://handmade.network/projects
https://en.wikipedia.org/wiki/QBasic
https://en.wikipedia.org/wiki/RPG_Maker
https://en.wikipedia.org/wiki/Adobe_Flash
https://en.wikipedia.org/wiki/Final_Fantasy
https://en.wikipedia.org/wiki/The_Legend_of_Zelda:_A_Link_to_the_Past
Creator of the Odin programming language, Ginger Bill, joins us to discuss programming languages, syntax decisions, programming philosophy, memory allocation, non-textual programming, debuggers, empiricism, and tools.
https://www.gingerbill.org/article/2018/03/12/on-the-aesthetics-of-the-syntax-of-declarations/
https://en.wikipedia.org/wiki/Programming_language
https://en.wikipedia.org/wiki/Imperative_programming
https://en.wikipedia.org/wiki/Procedural_programming
https://en.wikipedia.org/wiki/Object-oriented_programming
https://en.wikipedia.org/wiki/Functional_programming
https://www.gingerbill.org/series/memory-allocation-strategies/
https://www.gingerbill.org/article/2016/12/01/the-metaprogramming-dilemma/
https://www.gingerbill.org/article/2020/01/25/a-reply-to-lets-stop-copying-c/
Creator of the Nuklear immediate-mode UI library and engine programmer at Keen Core joins us in discussing immediate-mode APIs, his library Nuklear, how an immediate mode API can help simplify problems (both technical and team), memory allocators, data structures, and API orthogonality and diagonality.
https://github.com/vurtun/nuklear
https://twitter.com/MichaMettke/status/1235213089026576384
https://en.wikipedia.org/wiki/User_interface
https://en.wikipedia.org/wiki/Immediate_mode_(computer_graphics)
https://en.wikipedia.org/wiki/Retained_mode
https://en.wikipedia.org/wiki/Immediate_mode_GUI
Creator of 4coder and RAD Game Tools engineer Allen Webster joins us to discuss architectural decisions and challenges in 4coder, text editors, programming languages, programming tools, and a better future of computing.
https://en.wikipedia.org/wiki/Dependency_hell
https://en.wikipedia.org/wiki/Operating_system
https://en.wikipedia.org/wiki/Memory_management_(operating_systems)
https://en.wikipedia.org/wiki/C_(programming_language)
https://en.wikipedia.org/wiki/C_preprocessor
Artificial intelligence industry veteran Demetri Spanos joins us in discussing artificial intelligence, machine learning, low level programming, an optimization problem that was solved with making something from scratch, understanding computing and engineering problems, the Internet of Things, and software stacks.
https://en.wikipedia.org/wiki/Artificial_intelligence
https://en.wikipedia.org/wiki/Machine_learning
https://en.wikipedia.org/wiki/Scientific_computing
https://en.wikipedia.org/wiki/Computational_finance