Tienson Qin@tiensonqin

Father, spurs fan, Clojure && OCaml.

To contact me about potential contract or full time work (or just to say hi), email me at tiensonqin [AT] gmail.com.

2018/12/09Pearl No.4 - Kth Smallest in the Union of 2 Sorted Collections
2018/12/08The Swiss Army Knife of Hashmaps | Arrow of Code
2018/12/07Clojure 1.10's Datafy and Nav - An Architect's View
2018/12/06Drawing graphs with dot
2018/12/03最长回文子串——Manacher 算法 - 曾会玩 - SegmentFault 思否
2018/12/03高可用Redis服务架构分析与搭建 - Horstxu - 博客园
2018/12/02Ocaml vs Maybe Not - NHM Tech Articles
2018/12/02Flutter on desktop, a real competitor to Electron – Flutter Community – Medium
2018/12/01Maybe Not - Rich Hickey
2018/12/01Titan: A Distributed Redis Protocol Compatible NoSQL Database
2018/11/30The road to WebAssembly GC for OCaml – Sander Spies – Medium
2018/11/30Clojure : Deep Walking Macros
2018/11/30Polymatheia - Clojure's Transducers in Haskell
2018/11/30Polymatheia - From Transducers to Conduits and Back Again
2018/11/30Core Async Go Macro Internals - Part I
2018/11/30The State Machines of core.async
2018/11/29Everything You Need to Know about Linux Containers, Part I: Linux Control Groups and Process Isolation | Linux Journal
2018/11/29Zero Copy I: User-Mode Perspective | Linux Journal
2018/11/29Twitter’s Kafka adoption story
2018/11/29Erlang/OTP 21's new logger
2018/11/29Clojure Concurrency: Ultimate Guide (15+ Concurrency Primitives!)
2018/11/29Clojure concurrency and blocking with core.async - Eli Bendersky's website
2018/11/28New – Amazon DynamoDB Transactions | AWS News Blog
2018/11/27On fast ClojureScript React templates
2018/11/27The Art of Tree Shaping with Clojure Zippers
2018/11/27Open Source is Not About You · GitHub
2018/11/27Handling Exceptions with Middleware in Clojure | 8th Light
2018/11/27One-box stream processing with CSP - Adam Bard and his magical blog
2018/11/26Gagallium : Safely typing algebraic effects
2018/11/24[Paxos三部曲之一] 使用Basic-Paxos协议的日志同步与恢复 | Oceanbase列传
2018/11/24RabbitMQ vs Kafka Series Introduction — Jack Vanlightly
2018/11/23You need neither PWA nor AMP to make your website load fast @ tonsky.me
2018/11/23MySQL · 引擎特性 · B+树并发控制机制的前世今生
2018/11/23POLARDB · 敢问路在何方 — 论B+树索引的演进方向(上) - 知乎
2018/11/22Our current OCaml best practices, part 1
2018/11/21Things I Wish I Knew About Core Async in Clojure // Dan's Thoughts
2018/11/20Errata Security: Some notes about HTTP/3
2018/11/20The Road to 2 Million Websocket Connections in Phoenix
2018/11/19Lisp Programming Language in Chinese - Monolune
2018/11/18On Rigorous Error Handling - 250bpm
2018/11/18Datafy and tap> in Clojure 1.10
2018/11/16Gagallium : Parser Construction With Menhir: A Couple Appetizers
2018/11/16Side by side figures in org-mode for different export outputs
2018/11/16Ex-Hack: a Haskell Example-based Documentation
2018/11/15The Cost Of JavaScript – Dev Channel – Medium
2018/11/15A WebAssembly backend for OCaml – Sander Spies – Medium
2018/11/15Master Emacs in 21 Days
2018/11/14Unikernels as processes | the morning paper
2018/11/14A Multi-Language Computing Environment for Literate Programming and Reproducible Research
2018/11/14Finally Tagless, Partially Evaluated
2018/11/14Val on Programming: Datomic: Event Sourcing without the hassle
2018/11/13Optional Attribute Access in Reason | Jared Forsyth.com
2018/11/13Val on Programming: DataScript as a Lingua Franca for domain modeling
2018/11/13A major upgrade to Megaparsec: more speed, more power
2018/11/11My missing frustration with ClojureScript | Maurício Szabo
2018/11/11What nobody tells you about documentation - Divio
2018/11/10Beating hash tables with trees? The ART-ful radix trie
2018/11/10How to do distributed locking — Martin Kleppmann’s blog
2018/11/09HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你! | crossoverJie's Blog
2018/11/09Log Structured Merge Trees - ben stopford
2018/11/09Lightning mdb 源代码分析(1) - 天将 - 博客园
2018/11/09Key / value 数据库的选型
2018/11/09WiscKey: Separating Keys from Values in SSD-conscious Storage
2018/11/09Is LMDB a LevelDB Killer? | Symas Corp
2018/11/09Design Review: Key-Value Storage
2018/11/09Modules Matter Most | Existential Type
2018/11/09Sml - (ML) Modules vs (Haskell) Type Classes - Stack Overflow
2018/11/09Getting acquainted with Clojure zippers - josf.info
2018/11/08Typed-Holes and Valid Hole Fits | Octopi
2018/11/08Effective REPL-driven Clojure · rymndhng
2018/11/08Getafix: How Facebook tools learn to fix bugs automatically - Facebook Code
2018/11/08A Persistent Union-Find Data Structure
2018/11/08Reitit, Data-Driven Routing with Clojure(Script)
2018/11/08Spec Transformers
2018/11/07判断点是否在三角形内的算法精度问题 - 云风的 BLOG
2018/11/06A Netflix Web Performance Case Study – Dev Channel – Medium
2018/11/06Scalability of Go and OCaml on a particular problem
2018/11/06Algorithmic Art - Tyler Hobbs - A Generative Approach to Simulating Watercolor Paints
2018/11/04How to implement strings
2018/11/03In which a game jam is recounted
2018/11/03Minesweeper in clojure
2018/11/02IBM releases Elm-powered app - Elm Discourse
2018/11/02Shayne Fletcher: More type classes in OCaml
2018/11/02First steps with Category Theory and OCaml - Tales of a Fractal Spectrum
2018/11/01Val on Programming: What makes a good REPL?
2018/11/01Clojure at Netflix
2018/11/01Representing Lazy Values - the blAAAAAAAg
2018/10/31OCaml: run it on 24 cores
2018/10/31A Comparison of Adaptive Radix Trees and Hash Tables
2018/10/31The Adaptive Radix Tree
2018/10/31A new fast hash table in response to Google’s new fast hash table | Probably Dance
2018/10/31Org mode 文本的一些简单样式
2018/10/31A look at the design of lua
2018/10/30Haskell vs. go vs. ocaml vs. ...
2018/10/30Polymorphic typing of an algorithmic language
2018/10/29Gooact: react in 160 lines of javascript – paul marlow – medium
2018/10/29Good leaders are game changers: raft & paxos | mysql high availability
2018/10/29Etcd raft库解析 - codedump
2018/10/29Raft算法原理 - codedump