The long way through Software Craftsmanship

Self-Study in June 2024

Jun 1, 2024 - 5 minute read - Comments - self-study-aggregation2024juneadvicealawamiazamazonanniversaryanti-patternaranchelkarchitecturearmausten-allredauthorauthoringavx2avx512backlogbenjamin-sandofskybirthdaybookmarkbootcampbrian-kernighanbwidlarcc-programming-languageclicode-golfcommunitycompany-culturecompilercomplexitycopy-paste-managercrenshawcryptographydeceptiondeconstructiondredmorbiuseaton-philefficiencyengagemententropyeventevent-driven-architectureexportfederationfsharpfunctional-modelingfunctional-programmingfunctional-shell-imperative-corefuzz-mapfuzzinggarbage-collectiongfairbanksglassglassblowergotogregor-hohpegroup-chatguiguilherme-puidagumroadhackernewshandoverhardwarehaskellikryanovimportedincomeindentitinstruction-setiocccisakeyboardkillbufferlambda-schoollanfeustlawsuitlcamtufleakleanpublibrarylinklistloopluumacosmarcusbuffettmatt_dmattrighettimeetupmeetup-organizationmemory-managementmessage-queuemetromtmkmynameistrezneonnothacking_one-time-useoptimizationorganizingorganizing-meetuppassive-incomepatternpaulhouleplinkplonkproduct-ownerprofessionprogrammingprogramming-languagepseudoluspublic-key-cryptographypublic-transportpublisherpublishingrajuraygraywreal-worldreflect-as-you-goreflect-as-you-workrenderriskrisk-managementrob-pikeroyaltiesrustsecretseniorshortcutside-effectsignaturespring-cleanupsqlsriram-krishnanstatic-arraysustained-effortswitchsynacktech-meetuptechnical-booktechnical-debtteleforcetodsacerdotitokentooltopictradeofftrickuiuniversityutilizationuxvariablevectorvectorizationvisual-mapvisual-testingvitalik-buterinwriting

Let’s Build a Compiler, by Jack Crenshaw

Crenshaw’s tutorial on building a compiler

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

Tags: hackernews, imported, synack, compiler, crenshaw, brian-kernighan, rob-pike, programming, programming-language

Id: 3b2e9382-1144-4cfe-bdaf-72b30e8c3712 Read: Sat, 1 Jun 2024 09:14:25 +0000

Scientific glassblower continues century-old campus tradition (2021)

the story of a glassblower dedicated to producing specialized hardware for a university

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

Tags: hackernews, imported, dredmorbius, glassblower, university, hardware, profession, glass

Id: e07b0ed2-185b-4cf7-bdbe-a134c555d797 Read: Sat, 01 Jun 2024 21:26:29 +0000

Eight years of organizing tech meetups (2023)

Discusses learnings after organizing tech meetups

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

Tags: hackernews, imported, luu, tech-meetup, meetup, organizing, organizing-meetup, meetup-organization, sustained-effort, community, engagement, eaton-phil

Id: 12b95b34-da42-442b-b2d1-cd0039cc75c0 Read: Sun, 02 Jun 2024 23:31:00 +0000

Half a century of SQL

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

Tags: hackernews, imported, pseudolus, sql, programming-language, anniversary, birthday

Id: f971c65c-8034-47c1-b2f5-24358c2de7b4 Read: Mon, 03 Jun 2024 11:04:06 +0000

Entropy, a CLI that scans files to find high entropy lines (might be secrets)

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

Tags: hackernews, imported, lanfeust, tool, entropy, leak, secret, token

Id: 9d13bb1f-d681-489d-9db9-e30c5a27ce58 Read: Tue, 04 Jun 2024 19:25:47 +0000

Instruction Sets Should Be Free: The Case for RISC-V [pdf] (2014)

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

Tags: hackernews, imported, mtmk, instruction-set, isa, neon, avx2, avx512, arm, hardware, vectorization, optimization

Id: ad947ed7-a1da-48b6-b614-141ebd56cb80 Read: Fri, 07 Jun 2024 13:06:43 +0000

Garbage collect your technical debt (2021)

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

Tags: hackernews, imported, gfairbanks, backlog, garbage-collection, spring-cleanup, technical-debt, product-owner

Id: 9bbeab61-f658-420f-8461-e9e85438476f Read: Sat, 08 Jun 2024 11:54:08 +0000

Anti-patterns in event-driven architecture

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

Tags: hackernews, imported, indentit, event-driven-architecture, event, anti-pattern, message-queue, topic

Id: 3da43d37-0023-4aeb-845d-07fd9d2c5fed Read: Sat, 08 Jun 2024 18:56:29 +0000

Betula – federated bookmarking software for the independent web

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

Tags: hackernews, imported, guilherme-puida, tool, bookmark, link, federation

Id: 400c95a9-40cd-476f-8854-7e5c04c779c5 Read: Sun, 09 Jun 2024 05:07:06 +0000

Show HN: A keyboard-centric clipboard history app for macOS

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

Tags: hackernews, imported, ikryanov, keyboard, shortcut, copy-paste-manager, killbuffer, macos, tool

Id: 67387934-11fc-4ea8-8ede-10c43392213c Read: Tue, 11 Jun 2024 16:40:12 +0000

Group chats rule the world

Some patterns of group chats to keep in mind. Mentions: Gardener, not carpenter; Cooling rods and nuclear reactors; The n-1 group; Dinner party alchemy; Gravitational pull of a few topics; Size and Pruning; Shared rituals

Tags: vitalik-buterin, sriram-krishnan, group-chat, pattern, hackernews

Id: 5e42cb33-8b5c-4f6a-973e-028b08c943a9 Read: Fri Jun 14 06:18:05 2024

Just Enough Software Architecture (2010)

project management risks: “Lead developer hit by bus” software engineering risks: “The server may not scale to 1000 users” You should distinguish them because engineering techniques rarely solve management risks, and vice versa.

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

Tags: hackernews, imported, teleforce, architecture, risk, risk-management, handover, company-culture, complexity, tradeoff

Id: 63422b05-404c-4eae-89e3-ab50463c1a30 Read: Sat, 15 Jun 2024 19:02:38 +0000

Static arrays are the best vectors

an article explaining how to mantain a vector on top of a static array in C. The trick is to allocate a big static buffer and only consume whatever is needed.

Tags: hackernews, imported, bwidlar, c, static-array, vector, memory-management, mynameistrez

Id: b8982368-5df9-415d-aa3a-9813443a278b Read: Sun, 16 Jun 2024 10:22:49 +0000

I learned Haskell in just 15 years

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

Tags: hackernews, imported, aranchelk, functional-programming, haskell, functional-shell-imperative-core, fsharp, programming, real-world, side-effect, functional-modeling

Id: aad90830-b24b-4c93-aefd-a3b3a2f32b55 Read: Mon, 17 Jun 2024 03:44:20 +0000

What happens to latency if service time is cut in half (2022)

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

Tags: hackernews, imported, luu, utilization, efficiency

Id: 3b06f5c4-3890-45b3-9152-4f241bec4be7 Read: Tue, 18 Jun 2024 06:10:40 +0000

Fast Crimes at Lambda School

an investigation on the deals that happened at Lambda School

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

Tags: hackernews, imported, plinkplonk, programming, bootcamp, lambda-school, benjamin-sandofsky, austen-allred, lawsuit, deception

Id: 0e3bb4f5-5dba-4911-9a08-3f46159ee262 Read: Wed, 19 Jun 2024 15:57:28 +0000

Fuzz Map

Fuzz Map is a fuzzer for GUIs that automatically identifies states using code coverage and builds a visual map. Ideally, the map is useful even to people who’d prefer not to read code.

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

Tags: hackernews, imported, paulhoule, tool, visual-testing, gui, fuzzing, fuzz-map, visual-map, ux, ui

Id: 7dbee8e7-7279-4e58-bb4a-2042875b41a1 Read: Thu, 20 Jun 2024 18:59:34 +0000

Show HN: Envelope – A modern environment variable cli tool

cli tool to manage env variables of a project

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

Tags: hackernews, imported, mattrighetti, tool, cli, export, variable, rust

Id: bed763bf-2b40-4c93-8dfb-3cf44719f73a Read: Sat, 22 Jun 2024 12:39:57 +0000

The tiny chip that powers Montreal subway tickets

one-time usage cryptography chips for the metro in Montreal, Canada

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

Tags: hackernews, imported, todsacerdoti, cryptography, metro, public-transport, signature, one-time-use, public-key-cryptography

Id: 028b0e1d-a181-4469-8789-900ce6641d97 Read: Sun, 23 Jun 2024 17:22:52 +0000

Homegrown Rendering with Rust (2021)

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

Tags: hackernews, imported, alawamiaz, render, tool, rust, library

Id: b1d269cb-f967-4b30-a282-79c90c41009c Read: Mon, 24 Jun 2024 11:05:18 +0000

Misconceptions about loops in C

Investigation about the loop in C

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

Tags: hackernews, imported, matt_d, programming, c-programming-language, c, loop, goto, trick, deconstruction

Id: 68a46e7e-8140-475b-87e3-0cde1fdaee15 Read: Thu, 27 Jun 2024 17:46:21 +0000

A bunch of programming advice I’d give to myself 15 years ago

learnings from a senior developer to a more younger self:

  • If you (or your team) are shooting yourselves in the foot constantly, fix the gun
  • Assess the trade-off you’re making between quality and pace, make sure it’s appropriate for your context
  • Spending time sharpening the axe is almost always worth it
  • If you can’t easily explain why something is difficult, then it’s incidental complexity, which is probably worth addressing
  • Try to solve bugs one layer deeper
  • Don’t underestimate the value of digging into history to investigate some bugs
  • Bad code gives you feedback, perfect code doesn’t. Err on the side of writing bad code
  • Make debugging easier
  • When working on a team, you should usually ask the question
  • Shipping cadence matters a lot. Think hard about what will get you shipping quickly and often
  • You are not your job

Tags: hackernews, imported, marcusbuffett, advice, list, programming, senior, reflect-as-you-go, rayg, rayw, reflect-as-you-work

Id: 4e671827-8080-404a-90f0-e6e215823535 Read: Sat, 29 Jun 2024 11:38:01 +0000

The economics of writing technical books

about writing technical books

Tags: hackernews, imported, raju, technical-book, publishing, writing, author, authoring, gregor-hohpe, income, royalties, passive-income, gumroad, leanpub, amazon, publisher

Id: 2cba60b9-f190-4941-93c7-fdd805075601 Read: Sat, 29 Jun 2024 13:26:46 +0000

Weekend projects: getting silly with C

How to use the goto, switch statements to modify the structure of a C program

Tags: hackernews, imported, nothacking_, c-programming-language, c, switch, goto, code-golf, ioccc, lcamtuf

Id: aa970bde-192c-485e-8a41-2022f69609ee Read: Sun, 30 Jun 2024 05:07:53 +0000

Self-Study in May 2024 Self-Study in July 2024