diff --git a/content/posts/elm-csv-package-and-talk.md b/content/posts/elm-csv-package-and-talk.md index 676f406..c8a3586 100644 --- a/content/posts/elm-csv-package-and-talk.md +++ b/content/posts/elm-csv-package-and-talk.md @@ -1,6 +1,9 @@ +++ title = "elm-csv, package and talk" date = 2021-02-15 + +[extra] +project = "elm-csv" +++ In the beginning of February, I spent a lot of time working on a new library for parsing CSV data in Elm. diff --git a/content/projects/elm-csv.md b/content/projects/elm-csv.md new file mode 100644 index 0000000..f40fe35 --- /dev/null +++ b/content/projects/elm-csv.md @@ -0,0 +1,16 @@ ++++ +title = "elm-csv" +description = "a CSV parser" +date = 2021-01-19 +updated = 2021-11-23 + +[extra] +when = "past" ++++ + +In early 2021, I was working on a page at [NoRedInk](https://noredink.com) that let our curriculum team import big batches of updates to premade assignments for teachers to use. +The page was taking *for-ev-er* to work since the CSV parser we were using at the time was fairly slow. +I decided to fix it that! + +I ended up publishing the resulting code as [BrianHicks/elm-csv](https://github.com/BrianHicks/elm-csv), a CSV decoding package that works like Elm's [JSON decoders](https://package.elm-lang.org/packages/elm/json/latest/). +It's super fast—there's a lot of hand-rolled character-wise parsing work to thank for that—and at the time of publishing was the only CSV package for Elm that didn't force you to separate character parsing from interpretation. \ No newline at end of file diff --git a/content/talks/elm-csv-be-as-boring-and-as-fast-as-possible.md b/content/talks/elm-csv-be-as-boring-and-as-fast-as-possible.md index 99f6c7f..62f4b1f 100644 --- a/content/talks/elm-csv-be-as-boring-and-as-fast-as-possible.md +++ b/content/talks/elm-csv-be-as-boring-and-as-fast-as-possible.md @@ -4,6 +4,7 @@ date = 2021-02-09 [extra] event = "the London Elm User Group" +project = "elm-csv" +++ {{ youtube(id="_z6V1143TDE", title="elm-csv: be as boring—and as fast—as possible") }}