The long way through Software Craftsmanship

Self-Study in August 2024

Aug 1, 2024 - 8 minute read - Comments - self-study-aggregation2024august3803acagentaiair-conditioningairpodalan-kayalgorithmanalysisankianxietyapiappatomicbasicbitwisevibebookbootloaderbovembreakdownburnoutbusinesscaliforniakarlcareer-managementcensorshipcertificatecertificate-authoritychartcloudflarecoding-horrorcommitcompilercopilotcpythoncrcastlecryptographyd2langdata-independencedata-pipelinedatabasedatasettedave_universetfdavid-caindavidbarkerdebugdecompilerdetectivedevelopmentdiggandigicertdistributed-databasedogsheepdowntimedurable-appdxeditorencryptionexfiltrationexploitexpression-problemeye-hazardeye-protectionfindmyfork-bomberfreewheeling-appgamegarbage-collectiongdprgitgit-commitgogoalhackernewshandfuloflightheapheatpumpheinz-kabutzhigh-availabilityhostingida-proigiturimportedin-memoryinferenceingveinjuryinsightinstrumentationinterfaceinterpreterinterviewjavajava-enhancement-proposaljava-tipjaxejeff-atwoodjepjoelpjohn-s-mccainjustinskycakkarpathykartik-agaramlanguagelarsdu88laserlaymanleaklearninglichtenbergerlifestyle-businesslisplistllmlocallocklostlow-levelmakemakefilemarketmathmathematicsmaturity-levelmaturity-scalememorymemory-addressmemory-allocationmemory-usagemessagingmifaremillmodelmooredsmxstbrnasandiddyneovimnoncenovelnullabilityollamaomnibrainotooleppassionpath-finderpersistancepersonalpersonal-data-pipelinepersonal-projectpersonalizedphysical-designpinescriptplanningpluginpointerposthogprimeprime-numberprivacyprocessprogrammingprogramming-bookprojectproject-interfacepromptpythonquanta-rayquestraneboraptitude.comraywrcerecroadrecursivereflectionreliabilityremote-code-executionrepairreportresignationresponsibilityretentionreverse-engineeringrich-hickeyrisc-vrockrobotrockrop-chainrqliterspivakrustrust-compilersaassecure-bootsecurityselfhostingservershipshoggouthside-hustleslacksmalispaced-repetitionsqlitesrestackstoragestrcpystudysurprisetalkswahswitowskisyntaxtactile-feedbacktdrhqteachingtechnology-readiness-leveltime-managementtime-planningtimothy-listertiptom-demarcotooltoshtprow50tradingtranscribetranscriptiontransporttrluiusageuxvivimwalwatchweb-developmentxalxboxzdwzedzerojames

Breakthrough a step toward revealing hidden structure of prime numbers

https://news.ycombinator.com/item?id=41126944

Tags: hackernews, imported, igitur, mathematics, math, prime-number, prime

Id: 88d89b5c-5d23-4d59-84aa-1d612b111e6d Read: Thu, 01 Aug 2024 07:34:30 +0000

How I got my laser eye injury

https://news.ycombinator.com/item?id=41127706

Tags: hackernews, imported, omnibrain, laser, injury, quanta-ray, eye-protection, eye-hazard

Id: ab6cba10-aede-4ce1-9673-2481d4684c22 Read: Thu, 01 Aug 2024 10:25:34 +0000

JVM/Java: Null-Restricted and Nullable Types

the markers ?, !, (default) for nullability in Java

https://news.ycombinator.com/item?id=41136974

Tags: hackernews, imported, lichtenberger, java, programming, null, nullability, language, syntax, jep, java-enhancement-proposal

Id: 69af00e4-d269-40f0-ae5b-0e07e286cda6 Read: Fri, 02 Aug 2024 08:02:52 +0000

RustPython: A Python Interpreter Written in Rust

A new python interpreter, written in rust

https://news.ycombinator.com/item?id=41139595

Tags: hackernews, imported, bovem, rust, python, cpython, interpreter, project

Id: 0afc3e71-74f1-444f-96a0-72271b63a876 Read: Fri, 02 Aug 2024 15:23:18 +0000

Primitive Recursive Functions for a Working Programmer

https://news.ycombinator.com/item?id=41146278

Tags: hackernews, imported, ingve, recursive, layman, programming

Id: b804aed3-19dc-47a5-8a46-fcc151939f72 Read: Sat, 03 Aug 2024 12:32:01 +0000

How I Program in 2024

Kartik Agaram discusses some level of maturity for tooling; tools created for personal use

https://news.ycombinator.com/item?id=41157494

Tags: hackernews, imported, surprisetalk, kartik-agaram, freewheeling-app, technology-readiness-level, trl, nasa, durable-app, app, maturity-scale, maturity-level, tool, personal-project

Id: b4005246-23f8-4795-823e-05ae5da927f6 Read: Mon, 05 Aug 2024 01:28:39 +0000

A cryptographically secure bootloader for RISC-V in Rust

https://news.ycombinator.com/item?id=41161580

Tags: hackernews, imported, fork-bomber, risc-v, bootloader, secure-boot, rust, cryptography

Id: 302b2fa8-de81-4fe6-a97a-2a3627eab0e6 Read: Mon, 05 Aug 2024 14:18:13 +0000

Building rqlite 9.0: Cutting disk usage by half

https://news.ycombinator.com/item?id=41167060

Tags: hackernews, imported, otoolep, tool, rqlite, sqlite, go, wal, distributed-database

Id: 9467d17b-a3cd-42d5-ad00-02a752e443f1 Read: Tue, 06 Aug 2024 01:20:22 +0000

Jeremy Rowley resigns from DigiCert due to mass-revocation incident

https://news.ycombinator.com/item?id=41177161

Tags: hackernews, imported, californiakarl, resignation, certificate, certificate-authority, digicert, responsibility

Id: 7742ff35-7ef6-4f1a-96b9-0bf33a7e327b Read: Wed, 07 Aug 2024 00:54:57 +0000

Tony Hawk’s Pro Strcpy

A story about using strcpy to hack a hole into Xbox’s Tony Hawk

https://news.ycombinator.com/item?id=41183115

Tags: hackernews, imported, ndiddy, strcpy, xbox, strcpy, remote-code-execution, rce, ida-pro, debug, exploit, rop-chain, game

Id: 81aa40c2-8258-466d-9b1b-807568f02e6b Read: Wed, 07 Aug 2024 16:48:42 +0000

Imagining a personal data pipeline

A personal data pipeline: a tool to import all your data to.

Provides privacy, data independence to your data.

You can run queries on top, to extract insights from your data.

What is the point of said tool if you don’t know which data to extract?

This blog creates nice charts, programatically, using d2lang

https://news.ycombinator.com/item?id=41183795

Tags: hackernews, imported, surprisetalk, data-pipeline, privacy, tool, data-independence, insight, personal-data-pipeline, d2lang, chart

Id: d4d0984b-609d-4483-9b9c-225b57827b61 Read: Wed, 07 Aug 2024 18:06:44 +0000

Do quests, not goals

process over goals

https://news.ycombinator.com/item?id=41194431

Tags: hackernews, imported, zdw, process, goal, quest, planning, david-cain, raptitude.com

Id: 7354a834-5fef-453f-b1af-aef32cd05ee4 Read: Thu, 08 Aug 2024 18:02:12 +0000

OTranscribe: A free and open tool for transcribing audio interviews

https://news.ycombinator.com/item?id=41199567

Tags: hackernews, imported, zerojames, ai, transcription, tool, transcribe, interview

Id: efb54d86-d862-47c0-820c-bae342ebe94f Read: Fri, 09 Aug 2024 07:31:15 +0000

Building a highly-available web service without a database

A way of running processes with persistent in-memory storage (from one run to another).

A way of skipping the persistance to database, for a quick proof of concept

https://news.ycombinator.com/item?id=41206908

Tags: hackernews, imported, tdrhq, novel, persistance, database, in-memory, storage, high-availability

Id: 61fa43f4-966d-4eea-89c3-91534637084b Read: Sat, 10 Aug 2024 02:37:55 +0000

Writing a C Compiler: Build a Real Programming Language from Scratch

https://news.ycombinator.com/item?id=41227716

Tags: hackernews, imported, shoggouth, programming, language, compiler, book

Id: a5342b19-9829-46cc-a4b3-0edf058917d8 Read: Mon, 12 Aug 2024 18:26:49 +0000

0xCAFEBABE & 0xFEEDFACE (2003)

About the constants used for finding them quickly in memory dumps

Interesting that the rust-compiler does not allow some magic numbers like 0xCAFEBABE

https://news.ycombinator.com/item?id=41231141

Tags: hackernews, imported, diggan, censorship, compiler, rust-compiler, pointer, memory-address

Id: c23c15f4-69e0-488a-9c29-11b6653e1a9b Read: Tue, 13 Aug 2024 01:03:12 +0000

Using a list to manage executive function

https://news.ycombinator.com/item?id=41234038

Tags: hackernews, imported, swah, planning, list, time-management

Id: db685a03-7a08-4241-abff-71c464422185 Read: Tue, 13 Aug 2024 10:21:50 +0000

Rust Atomics and Locks (2023)

Announcing the book in rust

https://news.ycombinator.com/item?id=41239913

Tags: hackernews, imported, 0xedb, book, rust, low-level, programming, atomic, lock, language

Id: e9471f2f-d288-4b5f-8de4-163e8c4f6005 Read: Tue, 13 Aug 2024 21:12:32 +0000

Things I learned from teaching (2023)

https://news.ycombinator.com/item?id=41241825

Tags: hackernews, imported, mooreds, teaching, learning, reflection, rayw

Id: ef748972-954e-4d25-a6ec-7574901ad602 Read: Wed, 14 Aug 2024 01:56:35 +0000

Size of Java Objects

How to compute the size of a java object

Tags: programming, java, language, java-tip, tip, memory-allocation, memory-usage, memory, heap, stack, garbage-collection

Id: 510201fb-f642-443d-a476-a07e3365ab8f Read: Thu, 15 Aug 2024 08:32:08 +0000

Instrumentation Memory Counter

How to instrument the JVM to measure data usage

Tags: programming, java, instrumentation, agent, language, memory-allocation, memory-usage, heinz-kabutz, heap, stack, garbage-collection

Id: dd40f89f-284c-4b53-b8d1-289e36d3fa2d Read: Thu, 15 Aug 2024 08:33:08 +0000

Programmers Don’t Read Books – But You Should (2008)

Analysis of why programming books are not so good. Why it’s rumored that programmers don’t read books anymore.

A paper by DeMarco and Lister 1999 shows that most programmers don’t even read one book a year.

https://news.ycombinator.com/item?id=41259034

Tags: hackernews, imported, rspivak, book, jeff-atwood, coding-horror, programming, programming-book, basic, tom-demarco, timothy-lister

Id: c15b3ed7-3e8d-4039-abb2-3c0be3ddcad8 Read: Thu, 15 Aug 2024 18:33:04 +0000

MIFARE Classic: exposing the static encrypted nonce variant [pdf]

https://news.ycombinator.com/item?id=41269249

Tags: hackernews, imported, dave_universetf, mifare, cryptography, nonce, encryption, transport

Id: 3fd17e70-0868-4900-812b-799be3e3939b Read: Fri, 16 Aug 2024 18:53:57 +0000

Increasing Retention Without Increasing Study Time [pdf]

“Teach others what are you trying to teach yourself better”

https://news.ycombinator.com/item?id=41274602

Tags: hackernews, imported, justinskycak, study, retention, spaced-repetition, anki

Id: 7718bcb8-bab1-4fe1-bc9b-a0ec6df814d7 Read: Sat, 17 Aug 2024 13:53:11 +0000

Leaving Neovim for Zed

Steve Dylan explains his change from Neovim to Zed, both CLI editors

https://news.ycombinator.com/item?id=41284322

Tags: hackernews, imported, mxstbr, zed, neovim, vim, vi, editor, git, plugin, tool

Id: e3c8fffe-98f0-4ed0-9383-16461d1aa36c Read: Sun, 18 Aug 2024 18:37:10 +0000

Algorithms we develop software by

Using a day-planner algorithm for planning work. Getting 100k lines under the belt. Throw away work, rewrite it.

https://news.ycombinator.com/item?id=41284409

Tags: hackernews, imported, xal, planning, algorithm, path-finder, time-planning, career-management

Id: a9c93464-3c9f-4081-ab9a-f35bd83f013a Read: Sun, 18 Aug 2024 18:47:42 +0000

What If Data Is a Bad Idea?

A discussion about Alan Kay and Rich Hickey

https://news.ycombinator.com/item?id=41290189

Tags: hackernews, imported, surprisetalk, alan-kay, rich-hickey, lisp, expression-problem, gdpr, dogsheep, datasette

Id: 9e90fd59-4253-4ef5-8e30-112a22e539c1 Read: Mon, 19 Aug 2024 11:47:41 +0000

The U.S. Navy’s $100M checkbox (2019)

How a bad UX/UI caused a 100 M USD repair to one of the USS ships.

Goes in detail to physical design, tactile feedback, analysis.

https://news.ycombinator.com/item?id=41297563

Tags: hackernews, imported, davidbarker, physical-design, tactile-feedback, analysis, ux, ui, john-s-mccain, ship, repair

Id: dc741a79-273f-4d28-84fa-58728bbe0231 Read: Tue, 20 Aug 2024 07:09:36 +0000

The anatomy of a 2AM mental breakdown

Describes the experience of responding to a downtime on your own. Cause by PostHog

https://news.ycombinator.com/item?id=41300368

Tags: hackernews, imported, recroad, posthog, tool, downtime, sre, reliability, cloudflare, report, anxiety, breakdown

Id: 2019be3c-6d89-4855-97bd-2cc108d40030 Read: Tue, 20 Aug 2024 14:25:03 +0000

Host Your Own Copilot

How to host your own copilot

https://news.ycombinator.com/item?id=41301150

Tags: hackernews, imported, larsdu88, security, privacy, ai, llm, copilot, ollama, model

Id: 832a6399-e029-43a2-bf38-37a8399b2072 Read: Tue, 20 Aug 2024 15:52:49 +0000

Data Exfiltration from Slack AI via indirect prompt injection

Showing an attack against slack, via its AI

https://news.ycombinator.com/item?id=41302597

Tags: hackernews, imported, tprow50, security, slack, exfiltration, leak, llm, ai, prompt

Id: a727e2ce-3b47-46fa-bb29-cca968228234 Read: Tue, 20 Aug 2024 18:27:45 +0000

I’ve built my first successful side project, and I hate it

Describes in depth the small business he built around trading, pinescript, signals.

How he stopped loving it and finally caused him burnout

https://news.ycombinator.com/item?id=41308599

Tags: hackernews, imported, switowski, business, side-hustle, pinescript, burnout, market, trading, lifestyle-business

Id: bb250665-5974-4c78-8266-03549800eb59 Read: Wed, 21 Aug 2024 09:59:41 +0000

I’m tired of fixing customers' AI generated code

AI has lowered the bar for creating small scripts and tools. That makes the population that can use an API/SaaS/Interface larger, therefore creating more issues.

This user highlights that somebody that has read the documentation or can program won’t make those mistakes

https://news.ycombinator.com/item?id=41315138

Tags: hackernews, imported, bitwisevibe, ai, llm, api, interface, saas, usage, ux, ui, dx

Id: 74ec45c3-430b-43ed-bed9-5db943d402c6 Read: Wed, 21 Aug 2024 23:16:21 +0000

Designing my own watch (2020)

Somebody sells all his big name watches to create his own, personal watch.

https://news.ycombinator.com/item?id=41316598

Tags: hackernews, imported, handfuloflight, watch, personal, passion, mill, personalized

Id: 2097a8a8-b439-40f9-adde-98020dfb1c9e Read: Thu, 22 Aug 2024 03:41:41 +0000

Did you lose your AirPods?

How somebody plays detective and finds the owner of the airpods

https://news.ycombinator.com/item?id=41334207

Tags: hackernews, imported, rockrobotrock, detective, airpod, messaging, lost, findmy

Id: 5c2db410-f884-485d-a484-b374362419b7 Read: Fri, 23 Aug 2024 23:54:28 +0000

Makefiles for Web Work (2022)

A very well written article on how to manage projects with makefiles

https://news.ycombinator.com/item?id=41334387

Tags: hackernews, imported, crcastle, makefile, make, project-interface, project, web-development, development, programming

Id: 639feeab-1fe8-4808-a39d-4aadca3be947 Read: Sat, 24 Aug 2024 00:22:13 +0000

Server Setup Basics for Self Hosting

https://news.ycombinator.com/item?id=41353284

Tags: hackernews, imported, joelp, hosting, selfhosting, security, server

Id: 887a42c0-6b0c-49b2-b8e0-600741e2e07f Read: Mon, 26 Aug 2024 01:50:43 +0000

A little utility that auto-generates Git commit message based on the Git diff

Using a local LLM to generate git commits based on the contents

https://news.ycombinator.com/item?id=41355050

Tags: hackernews, imported, tosh, llm, ai, inference, local, ollama, git-commit, git, commit, karpathy

Id: 59ba381e-a893-4357-8cf9-9346bb396e2d Read: Mon, 26 Aug 2024 08:20:42 +0000

Air Con: $1697 for an on/off switch

A reverse engineering job on how to replace a tablet controlling a smart system for air conditioning

https://news.ycombinator.com/item?id=41386319

Tags: hackernews, imported, ranebo, reverse-engineering, smali, java, jaxe, decompiler, air-conditioning, ac, heatpump, programming

Id: ea32498b-a1a4-47de-8723-7e614f78bbe2 Read: Thu, 29 Aug 2024 01:28:01 +0000