If you want to hire me
The best way to hire me is by hiring Monadfix services. I'm also open to other opportunities, especially in sales engineering and marketing roles. Here's my resume.
Haskell
I've written some libraries, see https://hackage.haskell.org/user/Artyom.
I also started the /r/haskelltil subreddit (for Haskell tips and tricks and code samples and oddities and curiosities and idioms and interesting facts and everything that is short enough that you'd be ashamed to submit it to /r/haskell or write about it in a blog). It didn't catch on but some content there is still useful.
Right now I'm busy working on Aelve Guide, a wiki-like guide to Haskell ecosystem and community.
lens over tea
A series of articles (called “lens over tea”) about lens and its implementation.
part 1 – lenses 101, traversals 101, a bit of implementation details (also lens operators, functor composition,
Const,Identity, difference lists, monoids of endomorphisms under composition, default signatures for class methods, equality constraints, and irrefutable patterns).part 2 – composition, laws, getters/actions/setters (also history of lenses, categories, the way to write lenses which would compose “normally”, some links to
Reader/Writer/Statelearning materials,Void).part 3 – folds (also
Foldable,Apply, a nice trick for combining folds, andFold1).part 4 – isomorphisms, some profunctors, lens families (also
Forget,Tagged,Proxy, a bit about pure profunctor lenses, existential types, algebra of types, and a cat video).part 5 – prisms (also a recap of isomorphisms with diagrams, a bit about affine traversals,
Pointed, andcoerce).part 6 – Template Haskell, aka “write your own
makeLenses”
It's a work in progress; the future parts will mention:
- indexed things
Bazaar/Magma/Molten/Mafic, traversal stuff likepartsOf,takingfusingandconfusing- benchmarks (
view _1vsfst? how much doesfusinghelp? etc) - vertical composition, link
ala,AlongsideLeftupon, link- pure profunctor lenses and traversals, link 1, link 2, link 3, link 4, symmetric lenses (
(g a -> f b) -> g s -> f t), link Control.Lens.Plated,Control.Lens.Level,Control.Lens.Zoom
Other stuff
Stuff that is sort of related to psychology
Stuff that is sort of related to linguistics
Racket
Several years ago I've been learning Racket and making notes (which then became somewhat popular):
Introduction. First three days, no prior knowledge, getting a feel for the syntax... You get the idea.
Macros, Macros and a Bit of Modules. Another three days. Mostly macros, as you could've guessed.
- list of topics to cover. Gray because it can't be finished almost by definition.
I'm not learning Racket anymore, but I might start again in the future.