{
    "archive_path": "archive/1750366867.716875",
    "base_url": "blog.edwardloveall.com/cost-of-a-tool",
    "basename": "cost-of-a-tool",
    "bookmarked_date": "2025-06-19 21:01",
    "canonical": {
        "archive_org_path": "https://web.archive.org/web/blog.edwardloveall.com/cost-of-a-tool",
        "dom_path": "output.html",
        "favicon_path": "favicon.ico",
        "git_path": "git/",
        "google_favicon_path": "https://www.google.com/s2/favicons?domain=blog.edwardloveall.com",
        "headers_path": "headers.json",
        "htmltotext_path": "htmltotext.txt",
        "index_path": "index.html",
        "media_path": "media/",
        "mercury_path": "mercury/content.html",
        "pdf_path": "output.pdf",
        "readability_path": "readability/content.html",
        "screenshot_path": "screenshot.png",
        "singlefile_path": "singlefile.html",
        "warc_path": "warc/",
        "wget_path": null
    },
    "domain": "blog.edwardloveall.com",
    "downloaded_at": "2025-06-19T21:01:13.816261+00:00",
    "downloaded_datestr": "2025-06-19 21:01",
    "extension": "",
    "hash": "HZTDFESMW0Q1WZ9K251A",
    "history": {
        "archive_org": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--head",
                    "--max-time",
                    "60",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://web.archive.org/save/https://blog.edwardloveall.com/cost-of-a-tool"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-06-19T21:02:05.683040+00:00",
                "index_texts": null,
                "output": "ArchiveError: Failed to find \"content-location\" URL header in Archive.org response.",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:02:04.056166+00:00",
                "status": "failed"
            }
        ],
        "dom": [
            {
                "cmd": [
                    "/usr/bin/chromium-browser",
                    "--proxy-server=socks5://tor-socks-proxy:9150",
                    "--disable-features=DarkMode",
                    "--run-all-compositor-stages-before-draw",
                    "--hide-scrollbars",
                    "--autoplay-policy=no-user-gesture-required",
                    "--no-first-run",
                    "--use-fake-ui-for-media-stream",
                    "--use-fake-device-for-media-stream",
                    "--simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'",
                    "--headless=new",
                    "--no-sandbox",
                    "--no-zygote",
                    "--disable-dev-shm-usage",
                    "--disable-software-rasterizer",
                    "--disable-sync",
                    "--window-size=1440,2000",
                    "--user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "--user-data-dir=/data/personas/Default/chrome_profile",
                    "--profile-directory=Default",
                    "--dump-dom",
                    "https://blog.edwardloveall.com/cost-of-a-tool"
                ],
                "cmd_version": "131.0.6778",
                "end_ts": "2025-06-19T21:01:30.264650+00:00",
                "index_texts": null,
                "output": "output.html",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:23.402185+00:00",
                "status": "succeeded"
            }
        ],
        "favicon": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--max-time",
                    "60",
                    "--output",
                    "favicon.ico",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://www.google.com/s2/favicons?domain=blog.edwardloveall.com"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-06-19T21:01:18.014793+00:00",
                "index_texts": null,
                "output": "favicon.ico",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:14.391141+00:00",
                "status": "succeeded"
            }
        ],
        "git": [],
        "headers": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--head",
                    "--max-time",
                    "60",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://blog.edwardloveall.com/cost-of-a-tool"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-06-19T21:01:18.543816+00:00",
                "index_texts": null,
                "output": "headers.json",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:18.058033+00:00",
                "status": "succeeded"
            }
        ],
        "htmltotext": [
            {
                "cmd": [
                    "(internal) archivebox.extractors.htmltotext",
                    "./{singlefile,dom}.html"
                ],
                "cmd_version": "0.8.5rc51",
                "end_ts": "2025-06-19T21:01:55.689672+00:00",
                "index_texts": [
                    "The Cost of a Tool - Edward Loveall (/assets/favicon-9d7fbb8eda492c9edbb8965bc3c7fec1e6307f393a6136909b73114a6928e342.png) (RSS) (https://blog.edwardloveall.com/rss) (/assets/blog-83e7a845015bd8b8d98d72616506379307dc5db79ef2a125b0bd7378192a3537.css)  (/) Edward Loveall                           (/cost-of-a-tool) The Cost of a Tool  (/cost-of-a-tool) Posted February 20th, 2024    I just bought a new router. It\u2019s one of those fancy ones that lets me playact IT admin in my free time. I\u2019m setting up ad blockers and custom DNS resolutions left and right. I keep toggling options I don\u2019t understand and my internet is 50% less stable. It\u2019s great. Elizabeth (my partner) is less excited. When all of a sudden she can\u2019t read her lemon cookie recipe, it doesn\u2019t matter to her how many ads I\u2019m blocking. So I revert the setting back; she\u2019s happy that she can make her lemon cookies and I\u2019m happy that I get to eat them. It\u2019s fun to be excited about new technology. Luckily, most of my experiments don\u2019t affect anyone else. I keep downloading new text editors and CLI tools on the off-chance that they make some previously annoying task easy. Most of the time they don\u2019t, but it was a fun use of an hour. There\u2019s this new \u201cArtificial Intelligence\u201d tool\u2014specifically LLMs from OpenAI, Google, Microsoft/GitHub, and others, and text-to-image models like Stable Diffusion from Stability AI\u2014that a lot of people are really excited about. Describe what you want in words and they show some code, or a blog post, or an image, or\u2026 kind of anything. They\u2019re novel and wildly inaccurate which seems right up my alley. But I\u2019ve been around in tech long enough to smell that something\u2019s off. The more I look and consider these tools, the more I am genuinely alarmed at how they can cause harm, and how that harm goes largely unexamined. So I want to write to those people who, like me, enjoy new tools and their potential. I\u2019m talking to you: the prompt engineer, \u201cit\u2019s really good for some things\u201d, gotta-break-a-few-eggs mindset, AI-experimentalist. It\u2019s me: a luddite who nevertheless loves technology. I\u2019m going to show you how I see these tools. Because where you see a tool, I see a weapon. For starters, (https://www.theguardian.com/technology/2024/jan/08/ai-tools-chatgpt-copyrighted-material-openai) none of the current, popular LLMs could exist without stealing their training data . Once it\u2019s stolen, the data must be cleaned up for consumption. (https://time.com/6247678/openai-chatgpt-kenya-workers/) Kenyan workers are paid $2/hour to sift through \u201ctextual descriptions of sexual abuse, hate speech, and violence\u201d \u2014a process that mentally scars them. Those image generators are also stealing left and right from artists. I\u2019d personally like to live in a world where we celebrate artists and their art alike. Being a professional artist is already a financially precarious career, so when (https://www.vice.com/en/article/dy7b5y/artists-are-suing-over-stable-diffusion-stealing-their-work-for-ai-art) Stability AI and others steal that art so they can get (https://techcrunch.com/2022/10/17/stability-ai-the-startup-behind-stable-diffusion-raises-101m/) massive paychecks , we are moving farther away from that world. Speaking of the world we live in, the (https://www.technologyreview.com/2023/12/01/1084189/making-an-image-with-generative-ai-uses-as-much-energy-as-charging-your-phone) energy used to create these images is enormously harmful to the environment . LLMs and chatbots are no slouch here either. In 2021, (https://www.theverge.com/2023/10/10/23911059/ai-climate-impact-google-openai-chatgpt-energy) AI was already at least 10% of Google\u2019s energy bill alone . The (https://arstechnica.com/tech-policy/2017/12/bitcoins-insane-energy-consumption-explained/) energy generated by proof-of-work cryptocurrencies like Bitcoin was a major concern only months ago. As more and more companies train and deploy large, general-purpose models, (https://theconversation.com/is-generative-ai-bad-for-the-environment-a-computer-scientist-explains-the-carbon-footprint-of-chatgpt-and-its-cousins-204096) their environmental impact should be similarly concerning. Sometimes the tool/weapon dichotomy is dependent on who\u2019s doing the wielding. Consider that (https://arstechnica.com/health/2023/11/ai-with-90-error-rate-forces-elderly-out-of-rehab-nursing-homes-suit-claims/) an \u201cAI algorithm\u201d wrongfully denied people health insurance or that (https://www.axios.com/2024/01/18/tech-layoffs-ai-2024-google-amazon) boards and CEOs are laying off their workforce . Those tech company boards (https://blog.jim-nielsen.com/2024/humans-all-the-way-down/) do not understand the complexity of a job that isn\u2019t theirs , so they assume a machine can do it just as well and for much less money. This is just capitalism, but AI is a shiny, new weapon for capitalism to use. Because these tools are products of their source material (the entire internet) they contain massive amounts of regressive ideas. (https://mastodon.social/@danielpunkass/111157716257411904) ChatGPT will explain male, but not female, anatomy . This is sexism. (https://apnews.com/article/ai-chatbots-racist-medicine-chatgpt-bard-6f2a330086acd0a1f8955ac995bdde4d) LLMs spread debunked ideas about black health . This is racism. (https://benmyers.dev/blog/spotless-giraffe/) Generative image tools refuse to generate people of all body types . This is erasure. AI is being used to synthesize political voices (https://timesofindia.indiatimes.com/gadgets-news/watch-how-pakistan-leader-imran-khan-used-ai-to-deliver-this-victory-speech/amp_articleshow/107621815.cms) for political propaganda and (https://www.axios.com/2024/02/07/new-hampshire-fake-robocall-ai-biden-voice-texas) assist in voter suppression . Misinformation in all forms has been, and will continue to be, a weapon. Maybe you think calling ChatGPT/Stable Diffusion/etc \u201cweapons\u201d is too extreme. \u201cActual weapons are made for the purpose of causing harm and something that may cause harm should be in a different category,\u201d you say. But I say: if a tool is stealing work, denying healthcare, perpetuating sexism, racism, and erasure, and incentivizing layoffs, splitting hairs over what category we put it in misses the point. What\u2019s baffling to me is how people praise the abilities of AI without questioning its ramifications. No doubt they look impressive. If you\u2019ve never seen a computer take a suggestion and generate words based on that suggestion, it\u2019s a great magic trick. But this is less like stage magic and more like blood magic: it\u2019s the kind of magic that costs. But there\u2019s gotta be some use for these things, right? I write software for a living, so I\u2019m most qualified to talk about how they write code. A recent study shows that (https://visualstudiomagazine.com/articles/2024/01/25/copilot-research.aspx) code written with GitHub\u2019s Copilot is measurably worse in quality than non-Copilot code . Another details how developers wrote (https://arxiv.org/abs/2211.03622) less secure code with an AI assistant . I\u2019ve heard people say they\u2019re good at reducing repetitive tasks, letting you get past error messages, or helping you learn new syntax. Repetitive tasks can be solved trivially without an LLM, and getting past errors is not worth lower-quality, less-secure code. There are more accurate, less biased ways to learn, retrieve information and reduce repetition that exist today. And learning new syntax is not the most important part of being a good programmer. Jennifer Moore said it well in her article (https://jenniferplusplus.com/losing-the-imitation-game/) Losing the imitation game : The fundamental task of software development is not writing out the syntax that will execute a program. (https://pablo.rauzy.name/dev/naur1985programming.pdf?ref=jenniferplusplus.com) The task is to build a mental model of that complex system , make sense of it, and manage it over time.  I\u2019m not saying all computers or algorithms are bad. Should we ban hammers because they can potentially be used as weapons? No. But if every time I hammered a nail it also broke someone\u2019s hand, caused someone to have a mental breakdown, or spread misinformation, I would find a different hammer. Especially if that hammer built houses with more vulnerabilities on average. A tool\u2019s usefulness and enjoyment must be measured against its cost. I\u2019m frustrated because I see stories daily about the harm AI is causing while my coworkers and friends shout its praises. It\u2019s reasonable if at first you are unaware of those costs, but it\u2019s also up to you to learn about them, and work on mitigating them. Hopefully this helped you with the learning part. And while mitigating the costs of AI might feel daunting, it\u2019s actually quite easy. You stop using the tools.   \u00a9 2025 (https://edwardloveall.com) Edward Loveall \u2022 (https://codeberg.org/edwardloveall/portfolio) Source code \u2022 Select theme: (light) Light  (dark) Dark  (auto) Unset       "
                ],
                "output": "htmltotext.txt",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:55.649137+00:00",
                "status": "succeeded"
            }
        ],
        "media": [
            {
                "cmd": [
                    "/usr/local/bin/yt-dlp",
                    "--restrict-filenames",
                    "--trim-filenames",
                    "128",
                    "--write-description",
                    "--write-info-json",
                    "--write-annotations",
                    "--write-thumbnail",
                    "--no-call-home",
                    "--write-sub",
                    "--write-auto-subs",
                    "--convert-subs=srt",
                    "--yes-playlist",
                    "--continue",
                    "--no-abort-on-error",
                    "--ignore-errors",
                    "--geo-bypass",
                    "--add-metadata",
                    "--format=(bv*+ba/b)[filesize<=750m][filesize_approx<=?750m]/(bv*+ba/b)",
                    "--skip-download",
                    "--cache-dir=/data/yt-dlp-cache/",
                    "--cookies=/data/yt-dlp-cache/cookies.txt",
                    "--proxy=socks5://tor-socks-proxy:9150",
                    "--no-playlist",
                    "https://blog.edwardloveall.com/cost-of-a-tool"
                ],
                "cmd_version": "2024.10.7",
                "end_ts": "2025-06-19T21:02:03.910405+00:00",
                "index_texts": [],
                "output": "media/",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:58.697967+00:00",
                "status": "succeeded"
            }
        ],
        "mercury": [
            {
                "cmd": [
                    "/home/archivebox/.npm/bin/postlight-parser",
                    "https://blog.edwardloveall.com/cost-of-a-tool"
                ],
                "cmd_version": "2.2.3",
                "end_ts": "2025-06-19T21:01:55.607385+00:00",
                "index_texts": null,
                "output": "mercury/",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:51.926777+00:00",
                "status": "succeeded"
            }
        ],
        "pdf": [],
        "readability": [
            {
                "cmd": [
                    "/home/archivebox/.npm/bin/readability-extractor",
                    "/tmp/tmpdtfh9as5",
                    "https://blog.edwardloveall.com/cost-of-a-tool"
                ],
                "cmd_version": "0.0.11",
                "end_ts": "2025-06-19T21:01:35.467382+00:00",
                "index_texts": [
                    "The Cost of a Tool\n  \n  \n  I just bought a new router. It\u2019s one of those fancy ones that lets me playact IT admin in my free time. I\u2019m setting up ad blockers and custom DNS resolutions left and right. I keep toggling options I don\u2019t understand and my internet is 50% less stable. It\u2019s great.\n\nElizabeth (my partner) is less excited. When all of a sudden she can\u2019t read her lemon cookie recipe, it doesn\u2019t matter to her how many ads I\u2019m blocking. So I revert the setting back; she\u2019s happy that she can make her lemon cookies and I\u2019m happy that I get to eat them.\n\nIt\u2019s fun to be excited about new technology. Luckily, most of my experiments don\u2019t affect anyone else. I keep downloading new text editors and CLI tools on the off-chance that they make some previously annoying task easy. Most of the time they don\u2019t, but it was a fun use of an hour.\n\nThere\u2019s this new \u201cArtificial Intelligence\u201d tool\u2014specifically LLMs from OpenAI, Google, Microsoft/GitHub, and others, and text-to-image models like Stable Diffusion from Stability AI\u2014that a lot of people are really excited about. Describe what you want in words and they show some code, or a blog post, or an image, or\u2026 kind of anything. They\u2019re novel and wildly inaccurate which seems right up my alley. But I\u2019ve been around in tech long enough to smell that something\u2019s off.\n\nThe more I look and consider these tools, the more I am genuinely alarmed at how they can cause harm, and how that harm goes largely unexamined. So I want to write to those people who, like me, enjoy new tools and their potential. I\u2019m talking to you: the prompt engineer, \u201cit\u2019s really good for some things\u201d, gotta-break-a-few-eggs mindset, AI-experimentalist. It\u2019s me: a luddite who nevertheless loves technology. I\u2019m going to show you how I see these tools.\n\nBecause where you see a tool, I see a weapon.\n\n\n\nFor starters, none of the current, popular LLMs could exist without stealing their training data. Once it\u2019s stolen, the data must be cleaned up for consumption. Kenyan workers are paid $2/hour to sift through \u201ctextual descriptions of sexual abuse, hate speech, and violence\u201d\u2014a process that mentally scars them.\n\nThose image generators are also stealing left and right from artists. I\u2019d personally like to live in a world where we celebrate artists and their art alike. Being a professional artist is already a financially precarious career, so when Stability AI and others steal that art so they can get massive paychecks, we are moving farther away from that world.\n\nSpeaking of the world we live in, the energy used to create these images is enormously harmful to the environment. LLMs and chatbots are no slouch here either. In 2021, AI was already at least 10% of Google\u2019s energy bill alone. The energy generated by proof-of-work cryptocurrencies like Bitcoin was a major concern only months ago. As more and more companies train and deploy large, general-purpose models, their environmental impact should be similarly concerning.\n\nSometimes the tool/weapon dichotomy is dependent on who\u2019s doing the wielding. Consider that an \u201cAI algorithm\u201d wrongfully denied people health insurance or that boards and CEOs are laying off their workforce. Those tech company boards do not understand the complexity of a job that isn\u2019t theirs, so they assume a machine can do it just as well and for much less money. This is just capitalism, but AI is a shiny, new weapon for capitalism to use.\n\nBecause these tools are products of their source material (the entire internet) they contain massive amounts of regressive ideas. ChatGPT will explain male, but not female, anatomy. This is sexism. LLMs spread debunked ideas about black health. This is racism. Generative image tools refuse to generate people of all body types. This is erasure. AI is being used to synthesize political voices for political propaganda and assist in voter suppression. Misinformation in all forms has been, and will continue to be, a weapon.\n\nMaybe you think calling ChatGPT/Stable Diffusion/etc \u201cweapons\u201d is too extreme. \u201cActual weapons are made for the purpose of causing harm and something that may cause harm should be in a different category,\u201d you say. But I say: if a tool is stealing work, denying healthcare, perpetuating sexism, racism, and erasure, and incentivizing layoffs, splitting hairs over what category we put it in misses the point.\n\nWhat\u2019s baffling to me is how people praise the abilities of AI without questioning its ramifications. No doubt they look impressive. If you\u2019ve never seen a computer take a suggestion and generate words based on that suggestion, it\u2019s a great magic trick. But this is less like stage magic and more like blood magic: it\u2019s the kind of magic that costs.\n\nBut there\u2019s gotta be some use for these things, right? I write software for a living, so I\u2019m most qualified to talk about how they write code. A recent study shows that code written with GitHub\u2019s Copilot is measurably worse in quality than non-Copilot code. Another details how developers wrote less secure code with an AI assistant.\n\nI\u2019ve heard people say they\u2019re good at reducing repetitive tasks, letting you get past error messages, or helping you learn new syntax. Repetitive tasks can be solved trivially without an LLM, and getting past errors is not worth lower-quality, less-secure code. There are more accurate, less biased ways to learn, retrieve information and reduce repetition that exist today.\n\nAnd learning new syntax is not the most important part of being a good programmer. Jennifer Moore said it well in her article Losing the imitation game:\n\n\nThe 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.\n\n\nI\u2019m not saying all computers or algorithms are bad. Should we ban hammers because they can potentially be used as weapons? No. But if every time I hammered a nail it also broke someone\u2019s hand, caused someone to have a mental breakdown, or spread misinformation, I would find a different hammer. Especially if that hammer built houses with more vulnerabilities on average.\n\nA tool\u2019s usefulness and enjoyment must be measured against its cost. I\u2019m frustrated because I see stories daily about the harm AI is causing while my coworkers and friends shout its praises. It\u2019s reasonable if at first you are unaware of those costs, but it\u2019s also up to you to learn about them, and work on mitigating them. Hopefully this helped you with the learning part. And while mitigating the costs of AI might feel daunting, it\u2019s actually quite easy.\n\nYou stop using the tools."
                ],
                "output": "readability/",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:32.018256+00:00",
                "status": "succeeded"
            }
        ],
        "screenshot": [],
        "singlefile": [],
        "title": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--max-time",
                    "60",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://blog.edwardloveall.com/cost-of-a-tool"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-06-19T21:01:30.408635+00:00",
                "index_texts": null,
                "output": "The Cost of a Tool - Edward Loveall",
                "pwd": "/data/archive/1750366867.716875",
                "schema": "ArchiveResult",
                "start_ts": "2025-06-19T21:01:30.376578+00:00",
                "status": "succeeded"
            }
        ],
        "wget": []
    },
    "icons": null,
    "is_archived": true,
    "is_static": false,
    "latest": {
        "archive_org": "ArchiveError: Failed to find \"content-location\" URL header in Archive.org response.",
        "dom": "output.html",
        "favicon": "favicon.ico",
        "git": null,
        "media": "media/",
        "pdf": null,
        "screenshot": null,
        "singlefile": null,
        "title": "The Cost of a Tool - Edward Loveall",
        "warc": null,
        "wget": null
    },
    "link_dir": "/data/archive/1750366867.716875",
    "newest_archive_date": "2025-06-19T21:02:04.056166+00:00",
    "num_failures": 1,
    "num_outputs": 8,
    "oldest_archive_date": "2025-06-19T21:01:14.391141+00:00",
    "path": "/cost-of-a-tool",
    "schema": "Link",
    "scheme": "https",
    "snapshot_abid": "snp_01JY4ZXM9M40CFE42401SX1B0J",
    "snapshot_id": "c4888333-8933-4ebf-a239-958133d0ac12",
    "sources": [
        "/data/sources/1750366865-import.txt"
    ],
    "tags": null,
    "tags_str": "",
    "timestamp": "1750366867.716875",
    "title": "The Cost of a Tool - Edward Loveall",
    "url": "https://blog.edwardloveall.com/cost-of-a-tool"
}