b123400b123400
Programmer
...
TootRain 1.6 がリリースされました
English version here TootRain 1.6 が来ました、ついにGIFが動きます! さらに@Linkzeroが作ってくれたRIP Tweetrainアイコンに変更できるようにな
...
TootRain 1.0
Mastodon と Slack から画面にコメントを流す Mac アプリです。 元々は Mastodon から流すだけだったが、会社のみんなは会議にコメントを流すのが好きで、なんとか使えないかなと思
...
Better JSON types in TypeScript
This is a post on how to abuse TypeScript’s type system to write safer code.
...
Storing an ordered list in database
To store an ordered list in database, the simplest way is to assign a number to each row. However, t
...
1 year of Haskell at work
I had a few questions about Haskell at work, and now I've been (sort of[1]) writing Haskell at work
...
The unsafe side
I like Haskell and Purescript, and I love telling people how safe they are. However, they are not perfect, there are still unsafe aspects and I have to be honest about them. "If it compiles, it works" isn't always true.
...
Type safer
I was chatting with friends about types. It seems that "type" means so many different things in different programming languages, "type safe" does not really mean anything without context. So here is this blog post, of me trying to explain what do I think about types, and how it helps us to program.
...
Type Level Permission Checking
Few days ago I was working on some API handlers in our server written in Haskell with the framework Yesod. There was a mistake, some secret data was accessible to normal users because we forgot to check the user's type, luckily it's not on production yet.
...
Mapping things
This is an article explaining the concept of functor to programmers who are interested in Haskell but not sure how to get started on those abstract ideas. Many articles introduce functional programming with examples of maping, filtering and reduceing arrays, but it feels like it is not very useful except from array manipulation. This post focus on the map concept and try to explain how is it useful in other ways. (This is the 10th post for Haskell Advent Calendar 2017)