topic: TypeScript

Everything I’ve written on the subject, from the beginning of this version of the site.

I may also have written on this on earlier versions of my website:

  1. 2006 – 2011 (link coming soon!)
  2. did not have a blog!
  3. 2012 – 2013 (link coming soon!)
  4. 2014 – 2019
  • 2019

  • 2020

    • Feb

      • 23

        • 17:25 ⚓︎ — NOTES

          I’ve spent a good chunk of this afternoon working through and tweaking and fixing some things about this website, and as much as I like 11ty, at this point I would love to be doing this work in Elm instead. A tool like elm-pages seems very appealing.

          As for why: I just spend a lot of time sad about JS sorry bro that’s undefined stuff and templates being totally type-unaware. Even something like Gatsby + TS would probably be better here, but Elm’s rigor and top-to-bottom integration of types and rendered HTML and CSS would be a huge win for the way I build websites.

    • Apr

    • May

      • 12

        • 10:15 ⚓︎ — NOTES

          TypeScript: it’s regularly absurd or weird, and I am frustrated regularly by so many things about the type system… but nearly all of them come down in practice to this works this way because JavaScript and JavaScript developers.”

      • 13

        • 08:11 ⚓︎ — NOTES

          Last night I threw away almost all the build config I’d been blinded by this spring while working on rewrite: webpack config, TypeScript integration, you name it. What I have left: a simple bunch of npm scripts that I can run in parallel in different terminal sessions:

          {
            "scripts": {
              "clean": "rm -rf dist/*",
              "build:static": "cp static/* dist",
              "build:css": "sass --load-path=./node_modules src/style.scss dist/style.css",
              "watch:css": "sass --watch --load-path=./node_modules src/style.scss dist/style.css",
              "build:elm": "elm make src/Main.elm --output dist/app.js",
              "watch:elm": "watchexec -w src 'elm make src/Main.elm --output dist/app.js'"
            }
          }
          

          It’s not fancy, but it gets the job done just fine for the things I’m actually working on — rather than things I’ll need eventually — and that’s exacty the right balance at this point.