• 函数式编程的两种路线

    Posted on: Sun, 08/26/2018 - 07:30 By: Huahai

    可能很多人没有意识到,函数式编程(FP)有两种非常不同的路线。

    一条路线,为类型疯狂。这条路线的语言以Haskell为代表。这种FP,一切以类型为
    中心,编程的主要任务,是要把类型搞对了,让编译器高兴,号称是“如果程序编译通
    过了,程序就是对的”。这条线来自学术界,有很长的历史,是FP的主流路线,有很多
    其他FP语言以此为模版。科班出身的同学们说到FP,说的就是这条路线的FP。可能他们
    上学的时候学过Haskell,甚至可能还给Haskell课当过助教,但是他们恨死了Haskell
    。所以这些同学们,是打死不信FP能实用的。

  • Backup Discourse with External PostgreSQL Server

    Posted on: Sun, 01/21/2018 - 05:58 By: Huahai

    Discourse is a modern forum software that is quite popular in the technology circle. One can install a Discourse server easily with the recommended method of using docker. All the services needed by the Discourse server, e.g. Postgresql and Redis, will be running inside a docker container, which is fine for a small installation. However, if one has already an external Postgresql server running, e.g.

  • FreeIPA in AWS EC2

    Posted on: Thu, 12/07/2017 - 23:34 By: Huahai

    Show how to install and configure freeIPA server and clients in AWS EC2 using Route53. Point out several important issues.

  • Ecobee3 installation with K wire

    Posted on: Fri, 12/01/2017 - 06:13 By: Huahai

    How to install Ecobee3 smart thermostat when one of the existing wire connection is labeled K on the old device? This is problematic because K wire does not appear in the Ecobee3's documentation, nor in the on screen menu. I found a solution: simply connect the K wire to Y1, then enable the G connection on Ecobee3 configuration screen.​

  • Data-Oriented Programming (DOP)

    Posted on: Sat, 12/03/2016 - 23:33 By: Huahai

    JSON is arguably the world's most popular human readable data format today.  It has largely replaced XML as the data exchange format on the Internet. One of the key reasons for the proliferation of JSON is its simplicity.  The data structure are very limited: only arrays, enclosed with []; and objects, enclosed with {}. That's it. It cannot be simpler.

    Apparently, this dead simple data format is enough to represent the vast landscape of data that JSON becomes the de-facto data format for Web services. Most Web APIs we use today speaks JSON. However, JSON is not native for most programming languages. It becomes a pain to convert to and back from JSON in programming languages.

Subscribe to Huahai's Blog