<?xml version="1.0" encoding="UTF-8"?>
 <rdf:RDF xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://web.resource.org/cc/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://pinboard.in">
    <title>Pinboard (earth2marsh)</title>
    <link>https://pinboard.in/u:earth2marsh/public/</link>
    <description>recent bookmarks from earth2marsh</description>
    <items>
      <rdf:Seq>	<rdf:li rdf:resource="https://www.sue.codes/blog/fingerscode/"/>
	<rdf:li rdf:resource="https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html"/>
	<rdf:li rdf:resource="https://www.davidpoll.com/2026/02/code-review-is-not-about-catching-bugs/"/>
	<rdf:li rdf:resource="http://margaretstorey.com/blog/2026/02/09/cognitive-debt/"/>
	<rdf:li rdf:resource="https://htmx.org/essays/yes-and/"/>
	<rdf:li rdf:resource="https://sebastian-hans.de/blog/patbatnihs-en/"/>
	<rdf:li rdf:resource="https://www.perl.com/pub/2000/12/advocacy.html/"/>
	<rdf:li rdf:resource="https://martinfowler.com/articles/exploring-gen-ai/sdd-3-tools.html"/>
	<rdf:li rdf:resource="https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667.html"/>
	<rdf:li rdf:resource="https://hojberg.xyz/the-programmer-identity-crisis/"/>
	<rdf:li rdf:resource="https://surfingcomplexity.blog/2025/07/26/formal-specs-as-sets-of-behaviors/"/>
	<rdf:li rdf:resource="https://blog.kowalczyk.info/article/d-2025-06-26/go-is-8020-language.html"/>
	<rdf:li rdf:resource="https://sites.google.com/schrag.ca/consulting/home/whose-opinion-matters"/>
	<rdf:li rdf:resource="https://samwho.dev/turing-machines/"/>
	<rdf:li rdf:resource="https://www.theatlantic.com/technology/archive/2015/01/why-i-am-not-a-maker/384767/"/>
	<rdf:li rdf:resource="https://www.catharsisinsight.com/reports"/>
	<rdf:li rdf:resource="https://simonwillison.net/2024/Oct/16/markdown-test-framework/"/>
	<rdf:li rdf:resource="https://tante.cc/2024/09/03/why-ai-projects-fail/"/>
	<rdf:li rdf:resource="https://niedermeyer.io/2023/06/20/why-is-writing-hard/comment-page-1/#comments"/>
	<rdf:li rdf:resource="https://jenniferplusplus.com/losing-the-imitation-game/"/>
	<rdf:li rdf:resource="https://nicholas.carlini.com/writing/2024/how-i-use-ai.html"/>
	<rdf:li rdf:resource="https://www.linkedin.com/pulse/two-laws-startup-physics-eric-paley-ekzxe"/>
	<rdf:li rdf:resource="https://bessey.dev/blog/2024/05/24/why-im-over-graphql/"/>
	<rdf:li rdf:resource="https://selfimproving.dev/contents.html"/>
	<rdf:li rdf:resource="https://tailscale.com/blog/sso-tax-cut"/>
	<rdf:li rdf:resource="https://www.codium.ai/blog/we-created-the-first-open-source-implementation-of-metas-testgen-llm/"/>
	<rdf:li rdf:resource="https://www.nytimes.com/2020/12/28/science/math-conway-game-of-life.html"/>
	<rdf:li rdf:resource="https://blog.ceejbot.com/posts/understanding-software/"/>
	<rdf:li rdf:resource="https://chaos.guru/essays/2024/hostile-environments/"/>
	<rdf:li rdf:resource="https://rachelbythebay.com/w/2024/02/08/ldap/"/>
	<rdf:li rdf:resource="https://www.val.town/"/>
	<rdf:li rdf:resource="https://clig.dev/"/>
	<rdf:li rdf:resource="https://monaspace.githubnext.com/"/>
	<rdf:li rdf:resource="https://martinfowler.com/articles/201701-event-driven.html"/>
	<rdf:li rdf:resource="https://martinfowler.com/articles/bitemporal-history.html"/>
	<rdf:li rdf:resource="https://www.bitecode.dev/p/hype-cycles"/>
	<rdf:li rdf:resource="https://news.ycombinator.com/item?id=25855303"/>
	<rdf:li rdf:resource="https://www.youtube.com/watch?v=ZfytHvgHybA&amp;t=16m04"/>
	<rdf:li rdf:resource="https://blog.pragmaticengineer.com/project-management-at-big-tech/"/>
	<rdf:li rdf:resource="http://blog.pamelafox.org/2022/08/a-browser-based-runner-for-faded.html"/>
	<rdf:li rdf:resource="http://subsimple.com/bookmarklets/jsbuilder.htm"/>
	<rdf:li rdf:resource="https://docs.python.org/3/library/argparse.html"/>
	<rdf:li rdf:resource="https://skamille.medium.com/an-incomplete-list-of-skills-senior-engineers-need-beyond-coding-8ed4a521b29f"/>
	<rdf:li rdf:resource="https://www.jolie-lang.org/"/>
	<rdf:li rdf:resource="https://cuelang.org/docs/about/"/>
	<rdf:li rdf:resource="https://queue.acm.org/detail.cfm?id=3454124"/>
	<rdf:li rdf:resource="https://martinfowler.com/articles/is-quality-worth-cost.html"/>
	<rdf:li rdf:resource="https://www.recursive.design/"/>
	<rdf:li rdf:resource="https://www.hyrumslaw.com/"/>
	<rdf:li rdf:resource="https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/"/>
	<rdf:li rdf:resource="https://www.linkedin.com/pulse/code-great-heres-why-we-need-yes-anil-dash/"/>
	<rdf:li rdf:resource="https://www.youtube.com/watch?v=BxV14h0kFs0"/>
	<rdf:li rdf:resource="https://www.transposit.com/blog/2020.02.26-rewarding-documentation-in-devops/"/>
	<rdf:li rdf:resource="https://doriantaylor.com/agile-as-trauma"/>
	<rdf:li rdf:resource="https://mithril.js.org/"/>
	<rdf:li rdf:resource="https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/"/>
	<rdf:li rdf:resource="https://www.nytimes.com/2019/02/13/magazine/women-coding-computer-programming.html"/>
	<rdf:li rdf:resource="http://wiki.c2.com/?AlanKayOnMessaging"/>
	<rdf:li rdf:resource="https://www.javaworld.com/article/3388036/what-is-jdbc-introduction-to-the-java-database-connectivity-api.html"/>
	<rdf:li rdf:resource="https://trinket.io/"/>
	<rdf:li rdf:resource="https://people.neilon.software/"/>
	<rdf:li rdf:resource="https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/"/>
	<rdf:li rdf:resource="https://gist.github.com/hellerbarde/2843375"/>
	<rdf:li rdf:resource="https://medium.com/@darutk/diagrams-and-movies-of-all-the-oauth-2-0-flows-194f3c3ade85"/>
	<rdf:li rdf:resource="https://glitch.com/"/>
	<rdf:li rdf:resource="https://erikbern.com/2017/03/15/the-eigenvector-of-why-we-moved-from-language-x-to-language-y.html"/>
	<rdf:li rdf:resource="http://antirez.com/news/107"/>
	<rdf:li rdf:resource="http://exple.tive.org/blarg/2016/08/29/free-as-in-health-care/"/>
	<rdf:li rdf:resource="http://starecat.com/the-robots-are-killing-us-but-why-we-never-programmed-them-to-do-this-if-crazymurderingrobot-true-then-killhumans-programming-code/"/>
	<rdf:li rdf:resource="http://arlobelshee.com/good-naming-is-a-process-not-a-single-step/"/>
      </rdf:Seq>
    </items>
  </channel><item rdf:about="https://www.sue.codes/blog/fingerscode/">
    <title>Do your fingers remember how to code?</title>
    <dc:date>2026-03-24T04:57:41+00:00</dc:date>
    <link>https://www.sue.codes/blog/fingerscode/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>I run employee training at my work, I teach teams within the company to use our product. And when I first proposed this it was met with skepticism, some people thought that teaching our technical product to teams they didn't regard as technical would not work. But I was insistent about doing it. 1 because I’m delusional enough to think I can teach anyone anything, and 2 because it’s a cheap way to test training resources before they get put in front of customers.

So I would start by guessing what the learners already knew and what needed explained, you need to go where the learner is then take them where they need to be. I would guess what they already knew and create a space where they felt able to tell me I was wrong, and they’d no idea what I was talking about. I hadn't explained things that needed explained. I would feed that back into the flow and go again. So it was a process of revealing my own assumptions to me</blockquote>]]></description>
<dc:subject>teaching devrel training programming skills technical</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:78a6b72a576c/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:teaching"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:devrel"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:training"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:skills"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:technical"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html">
    <title>E.W.Dijkstra Archive: The Humble Programmer (EWD 340)</title>
    <dc:date>2026-03-23T17:17:04+00:00</dc:date>
    <link>https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise.

— Edsger Dijkstra</blockquote>]]></description>
<dc:subject>quotes abstraction programming talks precision</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:2d2a2c00b70f/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:quotes"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:abstraction"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:talks"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:precision"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.davidpoll.com/2026/02/code-review-is-not-about-catching-bugs/">
    <title>Code Review Is Not About Catching Bugs</title>
    <dc:date>2026-03-21T23:50:29+00:00</dc:date>
    <link>https://www.davidpoll.com/2026/02/code-review-is-not-about-catching-bugs/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>What teams collaborate on during review is changing. Less time spent on style nits and mechanical correctness, more time on intent, architecture, and whether a change moves the product in the right direction. That’s a good shift. And the collaborative act itself – multiple humans exercising judgment together, developing shared taste, building mutual understanding of where the system is heading – that’s not a bottleneck to eliminate. It’s something to uplevel.

This is the part that concerns me most about framing code review as a bottleneck. Yes, review takes time. But some of that time is doing real work. The question isn’t how to eliminate that time. It’s how to make sure it’s spent on the judgment that matters rather than the noise that doesn’t.</blockquote>]]></description>
<dc:subject>coding code reviews programming ai llms</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:2e2e07146bd8/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:coding"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:code"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:reviews"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:llms"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://margaretstorey.com/blog/2026/02/09/cognitive-debt/">
    <title>How Generative and Agentic AI Shift Concern from Technical Debt to Cognitive Debt</title>
    <dc:date>2026-03-04T05:41:58+00:00</dc:date>
    <link>http://margaretstorey.com/blog/2026/02/09/cognitive-debt/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>what can teams do concretely as AI and agents become more prevalent? First, they may need to recognize that velocity without understanding is not sustainable. Teams should establish cognitive debt mitigation strategies. For example, they may wish to require that at least one human on the team fully understands each AI-generated change before it ships, document not just what changed but why, and create regular checkpoints where the team rebuilds shared understanding through code reviews, retrospectives, or knowledge-sharing sessions.

Second, we need better ways to detect cognitive debt before it becomes crippling</blockquote>]]></description>
<dc:subject>ai llms debt cognitive programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:96644a7588ae/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:llms"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:debt"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:cognitive"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://htmx.org/essays/yes-and/">
    <title>&lt;/&gt; htmx ~ Yes, and...</title>
    <dc:date>2026-03-02T06:13:14+00:00</dc:date>
    <link>https://htmx.org/essays/yes-and/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Computer programming is about solving problems with computers and businesses have plenty of both of these.

Some business folks look at AI and say “Great, we don’t need programmers!”, but it seems just as plausible to me that a programmer might say “Great, we don’t need business people!”

I think both of these views are short-sighted, but I do think that AI can give programmers the ability to continue fundamentally working as a programmer while also investing more time in understanding the real-world problems (business or otherwise) that they are solving.</blockquote>]]></description>
<dc:subject>ai llms programming coding shifts</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:d42f9a3d6121/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:llms"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:coding"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:shifts"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://sebastian-hans.de/blog/patbatnihs-en/">
    <title>Transcript: Programming as Theory Building and the Not Invented Here Syndrome (english) — Sebastian's blog</title>
    <dc:date>2025-12-30T02:08:23+00:00</dc:date>
    <link>https://sebastian-hans.de/blog/patbatnihs-en/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Programming as Theory Building is an essay by Peter Naur. It is 40 years old now, but its topic is still just as relevant as it was in the 80s. I recommend to everyone to read it themselves some time; there is a lot of wisdom in it. For our purposes here, it is enough to know the core thesis: a program does not consist of its source code, but of a theory. And programming does not consist of translating facts from the real world into source code, but of building this theory. The theory – and thus the program – lives in the heads of the developers.

(A small side note: In the following, I am going to talk about “programs” because Naur's essay uses this term. But everything applies to systems and system compositions as well – just to make that clear.)

Therefore, to really understand a program in this sense, reading the source code is not enough; and neither is looking at the documentation; you somehow have to get at this theory.

The term “theory” that is used here does not only refer to factual knowledge, e. g., what the code does, where to find which functionality and so on, but also the ability to explain it, to justify it, and to connect it to the real world. You can imagine the code to be like the shadow of a real object. Here we see a shadow. If I only look at this, I can see it is a circle. But this on its own does not constitute a theory, because I have no idea what creates the shadow. And there can be quite different theories. It could be a sphere, for example. Or a cylinder. Or a cone or an Easter egg. If I am in possession of the theory, I can explain why the shadow is circular. Let's take the cylinder as the theory. Then the reason is because it is being illuminated along its axis. And if someone comes along and says, “Look, our requirements have changed by 90°, make sure the shadow matches!”, then I only ask for the axis, and if it is the vertical axis, then I say: “OK”, and – boom – I am done. Someone who is not in possession of the theory and only sees the circle cannot know what needs to be done – and they also cannot somehow reconstruct this knowledge from the circle. That simply is not possible.</blockquote> … plus not invented here syndrome]]></description>
<dc:subject>software programming theory models</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:2ee8389c0273/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:theory"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:models"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.perl.com/pub/2000/12/advocacy.html/">
    <title>Why I Hate Advocacy</title>
    <dc:date>2025-10-19T22:38:29+00:00</dc:date>
    <link>https://www.perl.com/pub/2000/12/advocacy.html/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>I think the root of the problem is that we tend to organize ourselves into tribes. Then people in the tribe are our friends, and people outside are our enemies. I think it happens like this: Someone uses Perl, and likes it, and then they use it some more. But then something strange happens. They start to identify themselves with Perl, as if Perl were part of their body, or vice versa. They’re part of the Big Perl Tribe. They want other people to join the Tribe. If they meet someone who doesn’t like Perl, it’s an insult to the Tribe and a personal affront to them.</blockquote>]]></description>
<dc:subject>perl advocacy programming languages identity</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:7e4616b05aef/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:perl"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:advocacy"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:languages"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:identity"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://martinfowler.com/articles/exploring-gen-ai/sdd-3-tools.html">
    <title>Understanding Spec-Driven-Development: Kiro, spec-kit, and Tessl</title>
    <dc:date>2025-10-15T17:56:51+00:00</dc:date>
    <link>https://martinfowler.com/articles/exploring-gen-ai/sdd-3-tools.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Ultimately, MDD never took off for business applications, it sits at an awkward abstraction level and just creates too much overhead and constraints. But LLMs take some of the overhead and constraints of MDD away, so there is a new hope that we can now finally focus on writing specs and just generate code from them. With LLMs, we are not constrained by a predefined and parseable spec language anymore, and we don’t have to build elaborate code generators. The price for that is LLMs’ non-determinism of course. And the parseable structure also had upsides that we’re losing now: We could provide the spec author with a lot of tool support to write valid, complete and consistent specs. I wonder if spec-as-source, and even spec-anchoring, might end up with the downsides of both MDD and LLMs: Inflexibility and non-determinism.</blockquote>]]></description>
<dc:subject>llms vibecoding specifications programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:3e13e5c9d1d2/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:llms"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:vibecoding"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:specifications"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667.html">
    <title>E.W.Dijkstra Archive: On the foolishness of &quot;natural language programming&quot;. (EWD 667)</title>
    <dc:date>2025-10-12T22:32:48+00:00</dc:date>
    <link>https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Instead of regarding the obligation to use formal symbols as a burden, we should regard the convenience of using them as a privilege: thanks to them, school children can learn to do what in earlier days only genius could achieve. (This was evidently not understood by the author that wrote —in 1977— in the preface of a technical report that "even the standard symbols used for logical connectives have been avoided for the sake of clarity". The occurrence of that sentence suggests that the author's misunderstanding is not confined to him alone.) When all is said and told, the "naturalness" with which we use our native tongues boils down to the ease with which we can use them for making statements the nonsense of which is not obvious.</blockquote>]]></description>
<dc:subject>language programming formation logic</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:3d6f8b1455c7/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:language"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:formation"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:logic"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://hojberg.xyz/the-programmer-identity-crisis/">
    <title>The Programmer Identity Crisis ❈ Simon Højberg ❈ Principal Frontend Engineer</title>
    <dc:date>2025-10-12T22:25:22+00:00</dc:date>
    <link>https://hojberg.xyz/the-programmer-identity-crisis/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Joan Didion, the great American essayist, famously wrote: “I write entirely to find out what I’m thinking, what I’m looking at, what I see and what it means.” Peter Naur explores this same concept in his work, “Programming as Theory Building.” Naur’s “Theory” embodies the understanding of a codebase. How it operates, its formalisms, and its representations of the real world. A context and insight that is only gained from immersion. Naur describes the “Theory” as the primary outcome of programming, the actual product, as opposed to the software it resulted in. Only with a well-developed “Theory” can one effectively apply extensions and bug fixes to codebases. With the ambivalent glances at code that comes with vibing, building such a theory is difficult. Naur would deem it impossible, I’m sure.</blockquote>]]></description>
<dc:subject>llms writing code thinking quotes programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:913bcb21d0f9/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:llms"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:writing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:code"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:thinking"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:quotes"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://surfingcomplexity.blog/2025/07/26/formal-specs-as-sets-of-behaviors/">
    <title>Formal specs as sets of behaviors – Surfing Complexity</title>
    <dc:date>2025-07-30T04:01:37+00:00</dc:date>
    <link>https://surfingcomplexity.blog/2025/07/26/formal-specs-as-sets-of-behaviors/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>The summary of this post is: a program is a list of instructions, a formal specification is a set of behaviors. But that’s not very informative on its own. Let’s get into it.</blockquote>]]></description>
<dc:subject>specifications programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:97ead94d9e6b/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:specifications"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://blog.kowalczyk.info/article/d-2025-06-26/go-is-8020-language.html">
    <title>Go is 80/20 language</title>
    <dc:date>2025-06-30T23:04:08+00:00</dc:date>
    <link>https://blog.kowalczyk.info/article/d-2025-06-26/go-is-8020-language.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>If 80⁄20 is good, wouldn’t 70⁄15 be even better? No, it wouldn’t. Go has shown that you can have a popular language without enums. I don’t think you could have a popular language without structs. There’s a line below which the language is just not useful enough.
Finally, what does “work” mean?
There’s work by the users of the language. Every additional feature of the language requires the programmer to learn about it. It’s more work than it seems. If you make functions as first class concepts, the work is not just learning the syntax and functionality. You need to learn new patterns of coding, like functions that return functions. You need to learn about currying, passing functions as arguments. You need to learn not only how but also when: when you should use that powerful functionality and when you shouldn’t.
You can’t skip that complexity. Even if you decide to not learn how to use functions as first class concepts, your co-worker might and you have to be able to understand his code. Or a useful library uses it or a tutorial talks about it</blockquote>]]></description>
<dc:subject>language programming complexity design</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:2ff7689a0c7f/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:language"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:complexity"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:design"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://sites.google.com/schrag.ca/consulting/home/whose-opinion-matters">
    <title>John Schrag - trainer, coach &amp; facilitator - Whose Opinion Matters?</title>
    <dc:date>2025-01-03T17:22:49+00:00</dc:date>
    <link>https://sites.google.com/schrag.ca/consulting/home/whose-opinion-matters</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>
Teams that don’t value design and content opinion can create software that demos well, but that is error-prone (due to inconsistency), too hard to learn or use, or that doesn’t solve the user’s problem in a useful way.  

 

Teams that don't value product management opinion  can squander resources building things that won’t help move the business forward with its strategic objectives, or that won’t create competitive separation, or that people just don’t want to buy.

 

Teams that don't value developer opinion can end up with a precarious, fragile code-base with features tacked on all over and no firm foundation.  The cost of this grows and grows over time as the codebase becomes more and more brittle.

 

Teams that don’t value customer-facing staff opinion (sales, support) can miss key opportunities for improvement and risk to customer retention and competition.

 

If you have a HiPPO at the top, a boss who imagines that they are smarter than all their staff, you can end up with all of the above happening simultaneously</blockquote>]]></description>
<dc:subject>design development culture programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:26f5cf28fd12/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:design"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://samwho.dev/turing-machines/">
    <title>Turing Machines</title>
    <dc:date>2024-12-24T08:27:01+00:00</dc:date>
    <link>https://samwho.dev/turing-machines/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>The way Turing did it was to imagine a "universal machine", a machine that could compute anything that could be computed. This idea, the "Turing machine" as Alonzo Church christened it in 1937, laid the foundations for the device you are using to read this post. If we look hard enough we can see Turing's legacy in today's CPUs.

By the end of this post, you will know:

What a Turing machine is.
What can and cannot be computed.
What it means to be Turing complete.
How modern computers relate to Turing machines.
How to write and run your own programs for a Turing machine.</blockquote>]]></description>
<dc:subject>computing history programming Turing machines explanation</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:16c2c9d7200d/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:computing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:history"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:Turing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:machines"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:explanation"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.theatlantic.com/technology/archive/2015/01/why-i-am-not-a-maker/384767/">
    <title>Why I Am Not a Maker - The Atlantic</title>
    <dc:date>2024-12-22T07:20:57+00:00</dc:date>
    <link>https://www.theatlantic.com/technology/archive/2015/01/why-i-am-not-a-maker/384767/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[https://archive.ph/20230920194104/https://www.theatlantic.com/technology/archive/2015/01/why-i-am-not-a-maker/384767/
<blockquote>A quote often attributed to Gloria Steinem says: “We’ve begun to raise daughters more like sons... but few have the courage to raise our sons more like our daughters.” Maker culture, with its goal to get everyone access to the traditionally male domain of making, has focused on the first. But its success means that it further devalues the traditionally female domain of caregiving, by continuing to enforce the idea that only making things is valuable. Rather, I want to see us recognize the work of the educators, those that analyze and characterize and critique, everyone who fixes things, all the other people who do valuable work with and for others—above all, the caregivers—whose work isn’t about something you can put in a box and sell.</blockquote>]]></description>
<dc:subject>gender capitalism engineering education programming teaching making makers</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:02ea5a5c7e0f/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:gender"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:capitalism"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:engineering"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:education"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:teaching"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:making"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:makers"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.catharsisinsight.com/reports">
    <title>reports | Catharsis Consulting</title>
    <dc:date>2024-11-25T04:35:39+00:00</dc:date>
    <link>https://www.catharsisinsight.com/reports</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Themes from these interviews revealed an important learning tension: the work that code writers needed to do to understand code often did not feel like what was rewarded in the evaluation of their work. Code review often did not recognize code writers’ effort when it did not result in lines of code. Despite stated ideals about knowledge sharing (e.g., documentation and collaboration), this work was often contradicted with negative cues from colleagues about what was “truly” valued. This tension was exacerbated by code writers’ fears about “not looking like an engineer,” and their desire to perform to the expectations of their environments.

 

Code writers navigated this by divesting from their own learning and from the “invisible” work of knowledge transfer, leaving future collaborators without guidance in their own ramp-up to unfamiliar code. As a result, code writers frequently expressed a poignant loneliness, even in highly resourced teams. This maladaptive cycle can be understood as Learning Debt. Research from learning science describes how environments that discourage sharing mistakes and valuing “in-draft” effort lead to long-term costs in people’s motivation, wellbeing, and learning. Under this discouragement, even formal processes which are ostensibly meant to maintain productivity and provide support (e.g., code review, conversations with senior code authors) can reinforce these negative norms</blockquote>]]></description>
<dc:subject>management programming learning culture incentives</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:ef8f5cf01019/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:management"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:learning"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:incentives"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://simonwillison.net/2024/Oct/16/markdown-test-framework/">
    <title>[red-knot] type inference/checking test framework</title>
    <dc:date>2024-11-25T02:58:03+00:00</dc:date>
    <link>https://simonwillison.net/2024/Oct/16/markdown-test-framework/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Ruff maintainer Carl Meyer recently landed an interesting new design for a testing framework. It's based on Markdown, and could be described as a form of "literate testing" - the testing equivalent of Donald Knuth's literate programming.

A markdown test file is a suite of tests, each test can contain one or more Python files, with optionally specified path/name. The test writes all files to an in-memory file system, runs red-knot, and matches the resulting diagnostics against Type: and Error: assertions embedded in the Python source as comments</blockquote>]]></description>
<dc:subject>documentation markdown programming testing</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:af5040ac6b44/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:documentation"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:markdown"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:testing"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://tante.cc/2024/09/03/why-ai-projects-fail/">
    <title>Why &quot;AI&quot; projects fail</title>
    <dc:date>2024-09-04T21:32:14+00:00</dc:date>
    <link>https://tante.cc/2024/09/03/why-ai-projects-fail/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>we’ve been doing this for decades now, with every new technology we spend a lot of money to get a lot of bloody noses for way too little outcome. Because we keep not looking at actual, real problems in front of us – that the people affected by them probably can tell you at least a significant part of the solution to. No we want a magic tool to make the problem disappear. Which is a significantly different thing than solving it.</blockquote>]]></description>
<dc:subject>ai technology products programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:3004b84540ed/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:technology"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:products"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://niedermeyer.io/2023/06/20/why-is-writing-hard/comment-page-1/#comments">
    <title>Why Is Writing Hard? – E.W. Niedermeyer</title>
    <dc:date>2024-08-30T04:51:20+00:00</dc:date>
    <link>https://niedermeyer.io/2023/06/20/why-is-writing-hard/comment-page-1/#comments</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>“The difficulties that ensue are no more rooted in syntactic rigidities than is, say, the difficulty of writing a good sonnet rooted in the rigid form demanded by that class of poem. To write a good sonnet or a good program, one must know what one wants to say.”</blockquote>
<blockquote>To understand something sufficiently well to be able to program it for a computer does not mean to understand it to its ultimate depth. There can be no such ultimate understanding in practical affairs. Programming is rather a test of understanding. In this respect it is like writing; often when we think we understand something and attempt to write about it, our very act of composition reveals our lack of understanding even to ourselves. Our pen writes the word “because” and suddenly stops. We thought we understood the “why” of something, but discover we don’t…

Programming is like that. It is, after all, writing too. But in ordinary writing we sometimes obscure our lack of understanding, our failures in logic, by unwittingly appealing to the immense flexibility of natural language and to its inherent ambiguity. The very eloquence that natural language permits sometimes illuminates our words and seems (falsely, to be sure) to illuminate our undeserving logic just as brightly. An interpreter of programming-language texts, a computer is immune to the seductive influence of mere eloquence… a computer is a merciless critic…</blockquote>]]></description>
<dc:subject>programming writing ideas authoring thinking essay critique inspiration</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:574a43b57a28/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:writing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ideas"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:authoring"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:thinking"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:essay"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:critique"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:inspiration"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://jenniferplusplus.com/losing-the-imitation-game/">
    <title>Losing the imitation game</title>
    <dc:date>2024-08-26T06:37:34+00:00</dc:date>
    <link>https://jenniferplusplus.com/losing-the-imitation-game/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>The fundamental task of software development is not writing out the syntax that will execute a program. The task is to build a mental model of that complex system, make sense of it, and manage it over time.</blockquote>
<blockquote>
AI like ChatGPT, recall what it actually does and doesn't do. It doesn't know things. It doesn't learn, or understand, or reason about things. What it does is probabilistically generate text in response to a prompt. That can work well enough if the context you need to describe the goal is so simple that you can write it down and include it with the prompt. But that's a very small class of essentially trivial problems. What's worse is there's no clear boundary between software development problems that are trivial enough for an LLM to be helpful vs being unhelpful. The LLM doesn't know the difference, either. In fact, the LLM doesn't know the difference between being tasked to write javascript or a haiku, beyond the different parameters each prompt would activate. And it will readily do a bad job of responding to either prompt, with no notion that there even is such a thing as a good or bad response
…
The hard part of programming is building and maintaining a useful mental model of a complex system. The easy part is writing code. They're positioning this tool as a universal solution, but it's only capable of doing the easy part. And even then, it's not able to do that part reliably. Human engineers will still have to evaluate and review the code that an AI writes. But they'll now have to do it without the benefit of having anyone who understands it. No one can explain it. No one can explain what they were thinking when they wrote it. No one can explain what they expect it to do. Every choice made in writing software is a choice not to do things in a different way. And there will be no one who can explain why they made this choice, and not those others.
…
But it's worse than AI being merely inadequate for software development. Developing that mental model requires learning about the system. We do that by exploring it. We have to interact with it. We manipulate and change the system, then observe how it responds. We do that by performing the easy, simple programing tasks. Delegating that learning work to machines is the tech equivalent of eating our seed corn. That holds true beyond the scope of any team, or project, or even company. Building those mental models is itself a skill that has to be learned. We do that by doing it, there's not another way. As people, and as a profession, we need the early career jobs so that we can learn how to do the later career ones. Giving those learning opportunities to computers instead of people is profoundly myopic.
</blockquote>]]></description>
<dc:subject>programming ai code coding models mental LLMs</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:be49d9bacd38/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:code"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:coding"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:models"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:mental"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:LLMs"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://nicholas.carlini.com/writing/2024/how-i-use-ai.html">
    <title>How I Use &quot;AI&quot;</title>
    <dc:date>2024-08-06T23:20:26+00:00</dc:date>
    <link>https://nicholas.carlini.com/writing/2024/how-i-use-ai.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>So in this post, I just want to try and ground the conversation. I'm not going to make any arguments about what the future holds. I just want to provide a list of 50 conversations that I (a programmer and research scientist studying machine learning) have had with different large language models to meaningfully improve my ability to perform research and help me work on random coding side projects. Among these:

Building entire webapps with technology I've never used before.
Teaching me how to use various frameworks having never previously used them.
Converting dozens of programs to C or Rust to improve performance 10-100x.
Trimming down large codebases to significantly simplify the project.
Writing the initial experiment code for nearly every research paper I've written in the last year.
Automating nearly every monotonous task or one-off script.
Almost entirely replaced web searches for helping me set up and configure new packages or projects.
About 50% replaced web searches for helping me debug error messages
If I were to categorize these examples into two broad categories, they would be “helping me learn” and “automating boring tasks”.</blockquote>]]></description>
<dc:subject>ai LLMs programming examples</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:299bc253cbc3/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:LLMs"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:examples"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.linkedin.com/pulse/two-laws-startup-physics-eric-paley-ekzxe">
    <title>The Two Laws Of Startup Physics</title>
    <dc:date>2024-07-19T06:00:06+00:00</dc:date>
    <link>https://www.linkedin.com/pulse/two-laws-startup-physics-eric-paley-ekzxe</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>If you lack confidence in the ROI of your investments, the best thing to do is pause and experiment with a new thesis – as inexpensively as possible. A pause might negatively impact your relationship with investors and your team. However, to win you must ensure your team invests capital wisely to create long-term intrinsic value. It is better to slow things down and reorient towards sustainable growth instead of pursuing an agenda that relies more on luck than logic.</blockquote>]]></description>
<dc:subject>programming business startups advice</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:289a1fb80a43/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:business"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:startups"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:advice"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://bessey.dev/blog/2024/05/24/why-im-over-graphql/">
    <title>Why, after 6 years, I’m over GraphQL</title>
    <dc:date>2024-06-01T06:18:38+00:00</dc:date>
    <link>https://bessey.dev/blog/2024/05/24/why-im-over-graphql/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>However, as the years have gone on and I have had the opportunity to deploy to environments where non functional requirements like security, performance, and maintainability were more of a concern, my perspective has changed. In this article I would like to take you through why today, I would not recommend GraphQL to most people, and what I think are better alternatives.</blockquote>]]></description>
<dc:subject>graphql apis performance programming rest openapi criticism Imported</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:5d1e21d2d23b/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:graphql"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:apis"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:performance"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:rest"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:openapi"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:criticism"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:Imported"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://selfimproving.dev/contents.html">
    <title>Table of Contents · The Self-Improving Developer</title>
    <dc:date>2024-05-28T06:24:47+00:00</dc:date>
    <link>https://selfimproving.dev/contents.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>This book is an attempt to bridge the gap between the “I can write code” level and the “I understand reified types” level of software development.

The focus is on breadth over depth. After reading this book, you’ll have a good overview of the things that a good Software Engineer encounters in about the first 10 years of experience. You will have an intuitive understanding of these topics. You will not become an expert in fuzzy logic or backtracking, but you’ll know what people mean when they say those words.</blockquote>]]></description>
<dc:subject>programming development articles explainers hashing</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:b92798a929d6/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:articles"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:explainers"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:hashing"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://tailscale.com/blog/sso-tax-cut">
    <title>SSO tax, cut</title>
    <dc:date>2024-05-28T06:12:36+00:00</dc:date>
    <link>https://tailscale.com/blog/sso-tax-cut</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Many service providers do not yet share our philosophy that SSO has become a basic security requirement, and they tend to charge more (and sometimes significantly more) for the "luxury" to log in via an SSO identity provider. This practice is now infamously called the "SSO tax" in security circles. There is even an SSO Tax wall of shame in its honor — a publicly maintained list of companies who do it.</blockquote>]]></description>
<dc:subject>sso identity features pricing programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:916f70cf5306/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:sso"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:identity"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:features"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:pricing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.codium.ai/blog/we-created-the-first-open-source-implementation-of-metas-testgen-llm/">
    <title>We created the first open-source implementation of Meta’s TestGen–LLM | CodiumAI</title>
    <dc:date>2024-05-23T20:34:36+00:00</dc:date>
    <link>https://www.codium.ai/blog/we-created-the-first-open-source-implementation-of-metas-testgen-llm/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>In February, Meta researchers published a paper titled Automated Unit Test Improvement using Large Language Models at Meta, which introduces a tool they called TestGen-LLM. The fully automated approach to increasing test coverage “with guaranteed assurances for improvement over the existing code base” created waves in the software engineering world.

Meta didn’t release the TestGen-LLM code, so we decided to implement it as part of our open-source Cover Agent
2.0K
 and we’re releasing it today!</blockquote>]]></description>
<dc:subject>llms programming tests testing coding</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:0420c52fc443/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:llms"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:tests"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:testing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:coding"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.nytimes.com/2020/12/28/science/math-conway-game-of-life.html">
    <title>The Lasting Lessons of John Conway’s Game of Life - The New York Times</title>
    <dc:date>2024-05-20T18:49:10+00:00</dc:date>
    <link>https://www.nytimes.com/2020/12/28/science/math-conway-game-of-life.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[some history of the phenomenon]]></description>
<dc:subject>programming math article history automata life</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:e95ab2523a12/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:math"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:article"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:history"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:automata"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:life"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://blog.ceejbot.com/posts/understanding-software/">
    <title>Understanding Software – Ceejbot's notes</title>
    <dc:date>2024-03-30T14:37:31+00:00</dc:date>
    <link>https://blog.ceejbot.com/posts/understanding-software/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Understand the real-world problem.
Analyze it from a software point of view.
Imagine a solution.
Align a team on the problem, the solution, and the values that shape the solution.
Coordinate to express that understanding in code.
Get feedback and iterate.
SHIP IT.</blockquote>]]></description>
<dc:subject>programming software explainer explanation</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:eeb1926a5778/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:explainer"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:explanation"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://chaos.guru/essays/2024/hostile-environments/">
    <title>Shipping quality software in hostile environments | Chaos Guru | Luka Kladaric</title>
    <dc:date>2024-03-14T22:19:50+00:00</dc:date>
    <link>https://chaos.guru/essays/2024/hostile-environments/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Tech debt is the implied cost of an easy solution over a slower and better approach accumulated over time.</blockquote>]]></description>
<dc:subject>culture programming tech debt platformengineering</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:3ed33b65aee4/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:tech"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:debt"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:platformengineering"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://rachelbythebay.com/w/2024/02/08/ldap/">
    <title>Figure out who's leaving the company: dump, diff, repeat</title>
    <dc:date>2024-02-13T06:15:51+00:00</dc:date>
    <link>https://rachelbythebay.com/w/2024/02/08/ldap/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Figure out who's leaving the company: dump, diff, repeat
One common element of the larger places where I've worked is that they tend to have a directory service of some sort that keeps track of who's an employee and who isn't. You can learn some interesting things by periodically dumping that list and then running comparisons against the previous dump.

A certain company had this rolled up into an internal service called "epitaphs" where an entry for a person would appear a day or two after they "disappeared from LDAP" - meaning, they left the company. Then other people who still worked there could add comments like "went back to school", "moved to Idaho to raise sheep", that kind of thing.</blockquote>]]></description>
<dc:subject>ldap programming culture hacks epitaphs</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:a75a66dc902c/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:ldap"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:hacks"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:epitaphs"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.val.town/">
    <title>Val Town</title>
    <dc:date>2024-01-28T07:40:26+00:00</dc:date>
    <link>https://www.val.town/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[need to play with this]]></description>
<dc:subject>javascript programming scripting serverless tools</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:d4dfccdec71b/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:javascript"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:scripting"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:serverless"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:tools"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://clig.dev/">
    <title>Command Line Interface Guidelines</title>
    <dc:date>2023-12-19T16:23:31+00:00</dc:date>
    <link>https://clig.dev/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day.</blockquote>]]></description>
<dc:subject>programming cli guide design</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:a267ce39ceac/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:cli"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:guide"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:design"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://monaspace.githubnext.com/">
    <title>Monaspace</title>
    <dc:date>2023-11-11T04:35:42+00:00</dc:date>
    <link>https://monaspace.githubnext.com/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[that healing tho! swoon
<blockquote>Monospaced fonts are generally incompatible with one another. Each one uses different metrics, making it impossible to mix different fonts. Each Monaspace font is designed to be seamlessly mixed and matched. Layer more meaning onto code, with a palette that goes beyond colors and bolder weights. Build interfaces for code that require more structure and hierarchy.</blockquote>]]></description>
<dc:subject>monospace programming fonts font</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:bc000b74ebc8/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:monospace"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:fonts"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:font"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://martinfowler.com/articles/201701-event-driven.html">
    <title>What do you mean by “Event-Driven”?</title>
    <dc:date>2023-10-25T16:18:56+00:00</dc:date>
    <link>https://martinfowler.com/articles/201701-event-driven.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>The biggest outcome of the summit was recognizing that when people talk about “events”, they actually mean some quite different things. So we spent a lot of time trying to tease out what some useful patterns might be. This note is a brief summary of the main ones we identified.</blockquote>]]></description>
<dc:subject>architecture events programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:405a3c9f0afe/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:architecture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:events"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://martinfowler.com/articles/bitemporal-history.html">
    <title>Bitemporal History</title>
    <dc:date>2023-09-27T23:00:24+00:00</dc:date>
    <link>https://martinfowler.com/articles/bitemporal-history.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>It's often necessary to access the historical values of some property. But sometimes this history itself needs to be modified in response to retroactive updates. Bitemporal history treats time as two dimensions: actual history records what history should be given perfect transmission of information, while record history captures how our knowledge of history changes.</blockquote>]]></description>
<dc:subject>data history programming time changes techniques</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:8cf5eb274293/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:data"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:history"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:time"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:changes"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:techniques"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.bitecode.dev/p/hype-cycles">
    <title>XML is the future - Bite code!</title>
    <dc:date>2023-09-06T00:08:44+00:00</dc:date>
    <link>https://www.bitecode.dev/p/hype-cycles</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>rants programming history trends hype</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:96d49aa91108/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:rants"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:history"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:trends"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:hype"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://news.ycombinator.com/item?id=25855303">
    <title>One of my all time favorites. Can’t remember where I first read it (Quora?), but... | Hacker News</title>
    <dc:date>2023-06-15T16:29:10+00:00</dc:date>
    <link>https://news.ycombinator.com/item?id=25855303</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[A man is flying in a hot air balloon and realizes he is lost. He reduces height and spots a man down below. He lowers the balloon further and shouts:

"Excuse me, can you help me? I promised my friend. I would meet him half an hour ago, but I don't know where I am."

The man below says, "Yes, you are in a hot air balloon, hovering approximately 30 feet above this field. You are between 40 and 42 degrees North latitude, and between 58 and 60 degrees West longitude."

"You must be a programmer," says the balloonist.

"I am," replies the man. "How did you know?"

"Well," says the balloonist, "everything you have told me is technically correct, but I have no idea what to make of your information, and the fact is I am still lost."

The man below says, "You must be a project manager"

"I am," replies the balloonist, "but how did you know?"

"Well," says the man, "you don't know where you are or where you are going. You have made a promise which you have no idea how to keep, and you expect me to solve your problem. The fact is you are in the exact same position you were in before we met, but now it is somehow my fault."]]></description>
<dc:subject>jokes programming development engineers projects management</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:4ce0b6d3e677/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:jokes"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:engineers"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:projects"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:management"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.youtube.com/watch?v=ZfytHvgHybA&amp;t=16m04">
    <title>Bret Victor - Stop Drawing Dead Fish - YouTube</title>
    <dc:date>2023-03-24T02:08:31+00:00</dc:date>
    <link>https://www.youtube.com/watch?v=ZfytHvgHybA&amp;t=16m04</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[An incredible talk by Bret Victor about the essence of digital art.]]></description>
<dc:subject>art graphics programming interaction media medium digital video talk bret_victor</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:6ecdf3116f35/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:art"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:graphics"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:interaction"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:media"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:medium"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:digital"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:video"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:talk"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:bret_victor"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://blog.pragmaticengineer.com/project-management-at-big-tech/">
    <title>How Big Tech Runs Tech Projects and the Curious Absence of Scrum - The Pragmatic Engineer</title>
    <dc:date>2022-11-08T19:14:59+00:00</dc:date>
    <link>https://blog.pragmaticengineer.com/project-management-at-big-tech/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[<blockquote>Autonomy for software engineers and teams. The expectation of developers at traditional companies is to complete assigned work. At SV-like companies, it's to solve problems that the business has. This is a huge difference. It impacts the day-to-day life of any engineer.
Curious problem solvers, not mindless resources. A motivated engineer easily makes multiple times the impact of a "factory worker" who only does what they’re told.  For organizations with a factory worker attitude, this approach will bias towards more heavyweight project management approaches that leave little room for interpretation, on purpose.
Internal data, code, and documentation transparency</blockquote>]]></description>
<dc:subject>process management scrum agile programming comparison</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:467711a58bfa/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:process"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:management"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:scrum"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:agile"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:comparison"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://blog.pamelafox.org/2022/08/a-browser-based-runner-for-faded.html">
    <title>A browser-based runner for Faded Parsons Problems</title>
    <dc:date>2022-09-11T06:52:33+00:00</dc:date>
    <link>http://blog.pamelafox.org/2022/08/a-browser-based-runner-for-faded.html</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>education programming patterns techniques pedagogy</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:11804f147c35/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:education"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:patterns"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:techniques"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:pedagogy"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://subsimple.com/bookmarklets/jsbuilder.htm">
    <title>Bookmarklet Builder</title>
    <dc:date>2022-08-03T00:12:53+00:00</dc:date>
    <link>http://subsimple.com/bookmarklets/jsbuilder.htm</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[handy! prettify and compress]]></description>
<dc:subject>bookmarklets bookmarklet tools programming javascript</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:575a14dfc9aa/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:bookmarklets"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:bookmarklet"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:tools"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:javascript"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://docs.python.org/3/library/argparse.html">
    <title>argparse — Parser for command-line options, arguments and sub-commands — Python 3.10.0 documentation</title>
    <dc:date>2021-12-05T21:47:08+00:00</dc:date>
    <link>https://docs.python.org/3/library/argparse.html</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>python cli arguments documentation hacks programming</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:d410e2a6a6bf/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:python"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:cli"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:arguments"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:documentation"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:hacks"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://skamille.medium.com/an-incomplete-list-of-skills-senior-engineers-need-beyond-coding-8ed4a521b29f">
    <title>An incomplete list of skills senior engineers need, beyond coding | by Camille Fournier | Jun, 2021 | Medium</title>
    <dc:date>2021-06-18T21:09:41+00:00</dc:date>
    <link>https://skamille.medium.com/an-incomplete-list-of-skills-senior-engineers-need-beyond-coding-8ed4a521b29f</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[Not just engineers!

"How to run a meeting, and no, being the person who talks the most in the meeting is not the same thing as running it
How to write a design doc, take feedback, and drive it to resolution, in a reasonable period of time
How to mentor an early-career teammate, a mid-career engineer, a new manager who needs technical advice
How to indulge a senior manager who wants to talk about technical stuff that they don’t really understand, without rolling your eyes or making them feel stupid
How to explain a technical concept behind closed doors to a senior person too embarrassed to openly admit that they don’t understand it
How to influence another team to use your solution instead of writing their own
How to get another engineer to do something for you by asking for help in a way that makes them feel appreciated
How to lead a project even though you don’t manage any of the people working on the project
How to get other engineers to listen to your ideas without making them feel threatened
How to listen to other engineers’ ideas without feeling threatened
How to give up your baby, that project that you built into something great, so you can do something else
How to teach another engineer to care about that thing you really care about (operations, correctness, testing, code quality, performance, simplicity, etc)
How to communicate project status to stakeholders
How to convince management that they need to invest in a non-trivial technical project
How to build software while delivering incremental value in the process
How to craft a project proposal, socialize it, and get buy-in to execute it
How to repeat yourself enough that people start to listen
How to pick your battles
How to help someone get promoted
How to get information about what’s really happening (how to gossip, how to network)
How to find interesting work on your own, instead of waiting for someone to bring it to you
How to tell someone they’re wrong without making them feel ashamed
How to take negative feedback gracefully"]]></description>
<dc:subject>management programming engineering career skills productmanagement</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:a833506c0a6e/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:management"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:engineering"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:career"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:skills"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:productmanagement"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.jolie-lang.org/">
    <title>Jolie Programming Language - Official Website</title>
    <dc:date>2021-06-18T15:28:29+00:00</dc:date>
    <link>https://www.jolie-lang.org/</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>distributed language microservices services opensource programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:c66ca93bdf76/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:distributed"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:language"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:microservices"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:services"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:opensource"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://cuelang.org/docs/about/">
    <title>About | CUE</title>
    <dc:date>2021-05-01T20:27:40+00:00</dc:date>
    <link>https://cuelang.org/docs/about/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[CUE is an open-source data validation language and inference engine with its roots in logic programming. Although the language is not a general-purpose programming language, it has many applications, such as data validation, data templating, configuration, querying, code generation and even scripting. The inference engine can be used to validate data in code or to include it as part of a code generation pipeline.

A key thing that sets CUE apart from its peer languages is that it merges types and values into a single concept. Whereas in most languages types and values are strictly distinct, CUE orders them in a single hierarchy (a lattice, to be precise). This is a very powerful concept that allows CUE to do many fancy things. It also simplifies matters. For instance, there is no need for generics and enums, sum types and null coalescing are all the same thing.]]></description>
<dc:subject>configuration cue languages programming development validation</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:5471340ec48a/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:configuration"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:cue"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:languages"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:validation"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://queue.acm.org/detail.cfm?id=3454124">
    <title>The SPACE of Developer Productivity - ACM Queue</title>
    <dc:date>2021-04-06T02:31:36+00:00</dc:date>
    <link>https://queue.acm.org/detail.cfm?id=3454124</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["This article explicates several common myths and misconceptions about developer productivity. The most important takeaway from exposing these myths is that productivity cannot be reduced to a single dimension (or metric!). The prevalence of these myths and the need to bust them motivated our work to develop a practical multidimensional framework, because only by examining a constellation of metrics in tension can we understand and influence developer productivity. This framework, called SPACE, captures the most important dimensions of developer productivity: satisfaction and well-being; performance; activity; communication and collaboration; and efficiency and flow. By recognizing and measuring productivity with more than just a single dimension, teams and organizations can better understand how people and teams work, and they can make better decisions.

The article demonstrates how this framework can be used to understand productivity in practice and why using it will help teams better understand developer productivity, create better measures to inform their work and teams, and may positively impact engineering outcomes and developer well-being."]]></description>
<dc:subject>research programming productivity development management work developers</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:771833e0fad3/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:research"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:productivity"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:management"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:work"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:developers"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://martinfowler.com/articles/is-quality-worth-cost.html">
    <title>Is High Quality Software Worth the Cost?</title>
    <dc:date>2020-09-11T00:53:04+00:00</dc:date>
    <link>https://martinfowler.com/articles/is-quality-worth-cost.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[also, APIs]]></description>
<dc:subject>quality programming software complexity roi internal apis</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:d95f606acdd9/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:quality"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:complexity"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:roi"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:internal"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:apis"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.recursive.design/">
    <title>Recursive Sans &amp; Mono</title>
    <dc:date>2020-08-07T00:14:06+00:00</dc:date>
    <link>https://www.recursive.design/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["Built to maximize versatility, control, and performance, Recursive is a five-axis variable font. This enables you to choose from a wide range of predefined styles, or dial in exactly what you want for each of its axes: *Monospace, Casual, Weight, Slant, and Cursive*. Taking full advantage of variable font technology, Recursive offers an unprecedented level of flexibility, all from a single font file."]]></description>
<dc:subject>fonts design programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:ad7ee2bb3e05/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:fonts"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:design"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.hyrumslaw.com/">
    <title>Hyrum's Law</title>
    <dc:date>2020-07-16T01:24:44+00:00</dc:date>
    <link>https://www.hyrumslaw.com/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["With a sufficient number of users of an API,
it does not matter what you promise in the contract:
all observable behaviors of your system
will be depended on by somebody."]]></description>
<dc:subject>software architecture engineering programming apis laws</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:013fdf07f8cd/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:architecture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:engineering"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:apis"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:laws"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/">
    <title>Things You Should Never Do, Part I – Joel on Software</title>
    <dc:date>2020-06-24T01:24:07+00:00</dc:date>
    <link>https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["We’re programmers. Programmers are, in their hearts, architects, and the first thing they want to do when they get to a site is to bulldoze the place flat and build something grand. We’re not excited by incremental renovation: tinkering, improving, planting flower beds.

There’s a subtle reason that programmers always want to throw away the code and start over. The reason is that they think the old code is a mess. And here is the interesting observation: they are probably wrong. The reason that they think the old code is a mess is because of a cardinal, fundamental law of programming:"]]></description>
<dc:subject>code development rewrite programming engineering mistakes</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:cc021618ce3e/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:code"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:rewrite"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:engineering"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:mistakes"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.linkedin.com/pulse/code-great-heres-why-we-need-yes-anil-dash/">
    <title>(31) &quot;No Code&quot;​ is great. But here's why we need *Yes* Code. | LinkedIn</title>
    <dc:date>2020-05-04T21:19:04+00:00</dc:date>
    <link>https://www.linkedin.com/pulse/code-great-heres-why-we-need-yes-anil-dash/</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>coding programming culture nocode apis clients</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:f800acaecb50/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:coding"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:nocode"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:apis"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:clients"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.youtube.com/watch?v=BxV14h0kFs0">
    <title>This Video Has 485,855 Views - YouTube</title>
    <dc:date>2020-04-06T18:44:36+00:00</dc:date>
    <link>https://www.youtube.com/watch?v=BxV14h0kFs0</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[""]]></description>
<dc:subject>programming apis youtube</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:cbc8e23a2d51/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:apis"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:youtube"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.transposit.com/blog/2020.02.26-rewarding-documentation-in-devops/">
    <title>Rewarding Documentation in DevOps · Transposit</title>
    <dc:date>2020-02-27T00:55:42+00:00</dc:date>
    <link>https://www.transposit.com/blog/2020.02.26-rewarding-documentation-in-devops/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["Riona MacNamara from Google has a great talk on how to do docs better. It includes some useful insight into how to judge documentation quality. According to Riona, there are two ways to measure a piece of documentation: Structural and functional quality.

Structural quality is related to the style and usage of guidelines, including spelling, grammar, voice, tone, and if it is well-organized and easy to navigate. I talked about some of this in my last blog post on writing runbooks. For functional quality, you have to ask a few questions of the document: Is this document effective? Does it do what it is supposed to do? For example, does a specific runbook reduce the time to troubleshoot during an outage?

Riona proposes that:

High structural quality + Low functional quality = Poor overall quality
Okay structural quality + High functional quality = Good overall quality
If a piece of documentation is well written but functionally useless, the document is not helpful during an incident. (This isn’t to say it can’t improve and become useful!) Functional quality must be the overall goal of documentation. See this part of Riona’s talk if you want an example of how one piece of the documentation might meet all of its core functions."]]></description>
<dc:subject>documentation engineering programming tech metrics</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:07eb1b9a3953/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:documentation"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:engineering"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:tech"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:metrics"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://doriantaylor.com/agile-as-trauma">
    <title>Agile as Trauma — Dorian Taylor</title>
    <dc:date>2020-02-15T01:06:11+00:00</dc:date>
    <link>https://doriantaylor.com/agile-as-trauma</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["What if the Agile software movement was the manifestation of an entire industry that was, just, like, dealing with some stuff right now?"]]></description>
<dc:subject>programming software agile history</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:621722ce3922/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:agile"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:history"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://mithril.js.org/">
    <title>Introduction - Mithril.js</title>
    <dc:date>2020-02-05T06:28:02+00:00</dc:date>
    <link>https://mithril.js.org/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["Mithril is a modern client-side JavaScript framework for building Single Page Applications. It's small (< 10kb gzip), fast and provides routing and XHR utilities out of the box."]]></description>
<dc:subject>javascript framework frameworks programming SPAs</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:ee2e2c8a4e89/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:javascript"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:framework"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:frameworks"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:SPAs"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/">
    <title>Falsehoods Programmers Believe About Names | Kalzumeus Software</title>
    <dc:date>2019-06-20T21:17:59+00:00</dc:date>
    <link>https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>programming names falsehoods list validation mistakes assumptions tips</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:00c6ec49145f/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:names"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:falsehoods"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:list"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:validation"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:mistakes"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:assumptions"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:tips"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.nytimes.com/2019/02/13/magazine/women-coding-computer-programming.html">
    <title>The Secret History of Women in Coding - The New York Times</title>
    <dc:date>2019-05-19T23:12:59+00:00</dc:date>
    <link>https://www.nytimes.com/2019/02/13/magazine/women-coding-computer-programming.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[""]]></description>
<dc:subject>computing history programming women coding</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:3ad5090531d8/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:computing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:history"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:women"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:coding"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://wiki.c2.com/?AlanKayOnMessaging">
    <title>Alan Kay On Messaging</title>
    <dc:date>2019-05-09T23:45:58+00:00</dc:date>
    <link>http://wiki.c2.com/?AlanKayOnMessaging</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[I'm sorry that I long ago coined the
 term "objects" for this topic because it gets many people to focus on the
 lesser idea.

 The big idea is "messaging"...

[later]
The key in making great and growable systems is much more to design how its
 modules communicate rather than what their internal properties and
 behaviors should be.]]></description>
<dc:subject>messaging programming smalltalk alan_kay</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:61522c1546c2/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:messaging"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:smalltalk"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:alan_kay"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.javaworld.com/article/3388036/what-is-jdbc-introduction-to-the-java-database-connectivity-api.html">
    <title>Java World: What is JDBC? Introduction to the Java Database Connectivity API</title>
    <dc:date>2019-04-13T14:17:42+00:00</dc:date>
    <link>https://www.javaworld.com/article/3388036/what-is-jdbc-introduction-to-the-java-database-connectivity-api.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[Was a reaction to odbc in C?]]></description>
<dc:subject>Java apis jdbc programming</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:8e07e99afb0b/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:Java"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:apis"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:jdbc"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://trinket.io/">
    <title>Trinket</title>
    <dc:date>2018-12-15T01:35:30+00:00</dc:date>
    <link>https://trinket.io/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["Trinket lets you run and write code in any browser, on any device.

Trinkets work instantly, with no need to log in, download plugins, or install software.

Easily share or embed the code with your changes when you're done."]]></description>
<dc:subject>coding education learning python programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:0490526252c7/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:coding"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:education"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:learning"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:python"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://people.neilon.software/">
    <title>How to Deal with Difficult People on Software Projects</title>
    <dc:date>2018-12-11T20:30:17+00:00</dc:date>
    <link>https://people.neilon.software/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[""]]></description>
<dc:subject>collaboration culture programming productmanagement developers software people</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:47e3ec3a1324/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:collaboration"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:productmanagement"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:developers"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:people"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/">
    <title>The Joel Test: 12 Steps to Better Code – Joel on Software</title>
    <dc:date>2018-05-22T19:49:13+00:00</dc:date>
    <link>https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["The Joel Test

Do you use source control?
Can you make a build in one step?
Do you make daily builds?
Do you have a bug database?
Do you fix bugs before writing new code?
Do you have an up-to-date schedule?
Do you have a spec?
Do programmers have quiet working conditions?
Do you use the best tools money can buy?
Do you have testers?
Do new candidates write code during their interview?
Do you do hallway usability testing?"]]></description>
<dc:subject>development programming test rubric</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:29a6569359f9/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:test"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:rubric"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://gist.github.com/hellerbarde/2843375">
    <title>Latency numbers every programmer should know</title>
    <dc:date>2018-02-05T21:10:31+00:00</dc:date>
    <link>https://gist.github.com/hellerbarde/2843375</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[Latency numbers every programmer should know
L1 cache reference ......................... 0.5 ns
Branch mispredict ............................ 5 ns
L2 cache reference ........................... 7 ns
Mutex lock/unlock ........................... 25 ns
Main memory reference ...................... 100 ns             
Compress 1K bytes with Zippy ............. 3,000 ns  =   3 µs
Send 2K bytes over 1 Gbps network ....... 20,000 ns  =  20 µs
SSD random read ........................ 150,000 ns  = 150 µs
Read 1 MB sequentially from memory ..... 250,000 ns  = 250 µs
Round trip within same datacenter ...... 500,000 ns  = 0.5 ms
Read 1 MB sequentially from SSD* ..... 1,000,000 ns  =   1 ms
Disk seek ........................... 10,000,000 ns  =  10 ms
Read 1 MB sequentially from disk .... 20,000,000 ns  =  20 ms
Send packet CA->Netherlands->CA .... 150,000,000 ns  = 150 ms]]></description>
<dc:subject>developer numbers performance programming computers developers</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:5b8fe65b62d7/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:developer"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:numbers"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:performance"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:computers"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:developers"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://medium.com/@darutk/diagrams-and-movies-of-all-the-oauth-2-0-flows-194f3c3ade85">
    <title>Diagrams And Movies of All The OAuth 2.0 flows – Takahiko Kawasaki – Medium</title>
    <dc:date>2017-05-27T04:56:42+00:00</dc:date>
    <link>https://medium.com/@darutk/diagrams-and-movies-of-all-the-oauth-2-0-flows-194f3c3ade85</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>oauth programming security visualization flows videos</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:11c5eeb07003/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:oauth"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:security"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:visualization"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:flows"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:videos"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://glitch.com/">
    <title>Glitch</title>
    <dc:date>2017-04-02T04:17:09+00:00</dc:date>
    <link>https://glitch.com/</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>development programming learning community</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:42352bfd7645/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:learning"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:community"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://erikbern.com/2017/03/15/the-eigenvector-of-why-we-moved-from-language-x-to-language-y.html">
    <title>The eigenvector of &quot;Why we moved from language X to language Y&quot; · Erik Bernhardsson</title>
    <dc:date>2017-03-17T21:27:14+00:00</dc:date>
    <link>https://erikbern.com/2017/03/15/the-eigenvector-of-why-we-moved-from-language-x-to-language-y.html</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA["We can actually treat this as probabilities from switching between languages and say something about what the future language popularities will be. One the key is that the stationary distribution of this process does not depend on the initial distribution — turns out this is basically just the first eigenvector of the matrix. So you really don’t have to make any assumptions about what’s popular right now — the hypothetical future stationary state is independent of this."]]></description>
<dc:subject>golang programming language statistics databases shifts frameworks</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:405a3073757e/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:golang"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:language"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:statistics"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:databases"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:shifts"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:frameworks"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://antirez.com/news/107">
    <title>Programmers are not different, they need simple UIs. - &lt;antirez&gt;</title>
    <dc:date>2017-03-03T02:44:05+00:00</dc:date>
    <link>http://antirez.com/news/107</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>programming design api APIs craft</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:8428f718ff09/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:design"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:api"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:APIs"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:craft"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://exple.tive.org/blarg/2016/08/29/free-as-in-health-care/">
    <title>Free As In Health Care – blarg?</title>
    <dc:date>2016-09-01T06:26:47+00:00</dc:date>
    <link>http://exple.tive.org/blarg/2016/08/29/free-as-in-health-care/</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>liability software standards safety culture tech development programming freedom</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:695d5fbe826e/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:liability"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:standards"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:safety"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:tech"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:freedom"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://starecat.com/the-robots-are-killing-us-but-why-we-never-programmed-them-to-do-this-if-crazymurderingrobot-true-then-killhumans-programming-code/">
    <title>The robots are killing us but why we never programmed them to do this. If crazymurderingrobot = true then kill(humans). Programming code | StareCat.com</title>
    <dc:date>2016-08-22T17:42:54+00:00</dc:date>
    <link>http://starecat.com/the-robots-are-killing-us-but-why-we-never-programmed-them-to-do-this-if-crazymurderingrobot-true-then-killhumans-programming-code/</link>
    <dc:creator>earth2marsh</dc:creator><description><![CDATA[hahahahahah!]]></description>
<dc:subject>comparison equivalence robots humor cartoon culture programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:8bfc5a534db0/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:comparison"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:equivalence"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:robots"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:humor"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:cartoon"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://arlobelshee.com/good-naming-is-a-process-not-a-single-step/">
    <title>Naming is a process, not a single step | Arlo Being Bloody Stupid</title>
    <dc:date>2016-08-16T05:42:16+00:00</dc:date>
    <link>http://arlobelshee.com/good-naming-is-a-process-not-a-single-step/</link>
    <dc:creator>earth2marsh</dc:creator><dc:subject>naming programming Design refactoring development culture names</dc:subject>
<dc:identifier>https://pinboard.in/u:earth2marsh/b:54be60e1ae28/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:naming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:Design"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:refactoring"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:development"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:culture"/>
	<rdf:li rdf:resource="https://pinboard.in/u:earth2marsh/t:names"/>
</rdf:Bag></taxo:topics>
</item>
</rdf:RDF>