A collection of conversations with people in the Handmade community, all about computing and software.
Happy Thanksgiving! This is a rebroadcast of the memory safety podcast from Handmade Seattle 2022.
Allen Webster (creator of 4coder) interviews three guests on the hotly-contested topic of memory safety:
We hope you learn something about memory allocation and memory safety, and we hope that this can be a model for difficult programming conversations in the future!
This episode was produced by Abner Coimbre for Handmade Seattle 2022, and is made available in its unmodified form under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License: https://creativecommons.org/licenses/by-nc-nd/4.0/
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.
Another Handmade Seattle special, this time from HMS2021! In this episode, Abner Coimbre, host of Handmade Seattle and founder of Handmade Network, has another discussion about new systems-level programming languages acting as alternatives to C and C++. This podcast features three guests: Andrew Kelley of Zig, Ginger Bill of Odin, and Mason Remaley who is on the Zig Software Foundation board, and has experience with both Zig and Rust.
Intro and outro have been added after-the-fact and are not part of the official recording. Rebroadcasted in coordination with HMS2021 to host this conference content on audio-only, standard podcast platforms.
https://media.handmade-seattle.com/the-race-to-replace-c-and-cpp-2/
https://www.anthropicstudios.com/
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
A Handmade Seattle 2020 special! In this episode, Abner (host of Handmade Seattle, Handmade Network founder) discusses compilers and programming languages with Andrew Kelley, Ginger Bill, and Josh Huelsman. Intro and outro have been added after-the-fact and are not part of the official recording. Rebroadcasted in coordination with HMS2020 to host this conference content on audio-only, standard podcast platforms.
https://media.handmade-seattle.com/the-race-to-replace-c-and-cpp/
https://twitter.com/machinamentum
Gunshot Sound Credits:
Gunshot #1: https://opengameart.org/content/sound-effects-for-platformer
Gunshot #2: https://opengameart.org/content/byte-man-sfx-1
Licensed under the Creative Commons license (https://creativecommons.org/licenses/by-nc-nd/4.0/).
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