TadasBaltrusaitis/OpenFace: OpenFace – a state-of-the art open source tool intended for facial landmark detection, head pose estimation, facial action unit recognition, and eye-gaze estimation.

Over the past few years, there has been an increased interest in automatic facial behavior analysis and understanding. We present OpenFace – an open source tool intended for computer vision and machine learning researchers, affective computing community and people interested in building interactive applications based on facial behavior analysis. OpenFace is the first open source tool capable of facial landmark detection, head pose estimation, facial action unit recognition, and eye-gaze estimation. The compu

Source: TadasBaltrusaitis/OpenFace: OpenFace – a state-of-the art open source tool intended for facial landmark detection, head pose estimation, facial action unit recognition, and eye-gaze estimation.

Notes for setting up a Ghost blog on Docker, with Dropbox backup

Blog server provisioning

  1. DigitalOcean: Docker One-Click image
  2. Install docker-compose
  3. Follow [this tutorial] to get ghost up and running http://nknu.net/how-to-deploy-your-ghost-blog-using-docker-machine-and-docker-compose/
mkdir ghost
# install docker-compose binary
# Follow the turorial. Relevant scripts:

$ wget https://ghost.org/zip/ghost-latest.zip
$ unzip ghost-latest.zip "content/*"
$ rm -f ghost-latest.zip

nano docker-compose.yml

# paste the following
blog:
image: ghost
command: npm start
volumes:
- content:/var/lib/ghost
ports:
- 9999:2368
  1. Insetall nginx
apt-get install nginx
cd /etc/nginx/sites-available
nano ghost

# Paste this script
server {
listen 0.0.0.0:80;
server_name fundamentallyhuman.com;
access_log /var/log/nginx/*your-domain-name*.log;
client_max_body_size 100m;

location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_set_header X-NginX-Proxy true;

proxy_pass http://127.0.0.1:9999;
proxy_redirect off;
}
}

# End of pasting

cd ../sites/enabled
rm default
ln -s ../sites-available/ghost
service nginx restart

  1. Backup
apt-get install sqlite3

cd /ghost

# https://github.com/andreafabrizi/Dropbox-Uploader
curl "https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh" -o dropbox_uploader.sh

# set up
$chmod +x dropbox_uploader.sh
$./dropbox_uploader.sh

nano backup.sh
# paste
#!/bin/sh
rsync -av --progress content/ backup/ --exclude data/
rm -f backup/ghost-dev.db.bak
sqlite3 content/data/ghost-dev.db ".backup backup/ghost-dev.db.bak"

name=$(date '+%y-%m-%d')
tar -zcvf --overwrite "$name.tar.gz" backup/
./dropbox_uploader.sh upload "$name.tar.gz" "$name.tar.gz"

# done

# set up cron job

# http://stackoverflow.com/questions/14710257/running-a-cron-job-at-230-am-every-day
# back up every day at night
crontab -e

# add
30 2 * * * /root/ghost/backup.sh

  1. Start after reboot

# ghost/start.sh #!/bin/sh docker-compose up -d # end crontab -e # add @reboot /root/ghost/start.sh

简单梳理fintech的历史,与fintech行业内的玩家_36氪

1815年6月18日,在比利时布鲁塞尔近郊展开的滑铁卢之战,不仅是拿破仑与威灵顿两人之战,也是成千上万投资者的赌博。如果英国败了英国的公债的价格将跌进深渊;如果英国胜了,英国公债将冲上云霄。

正当两只大军进行殊死搏斗时,罗斯柴尔德家族早在十年前建立的战略情报收集和快递系统发挥了作用。傍晚时分,当格鲁希元帅错失战机在战场外游荡,普鲁士军队与威灵顿的大军会合击溃拿破仑时,一个名叫罗斯伍兹的罗斯柴尔德快信传递员亲眼目睹了战况,他立刻骑快马奔向布鲁塞尔然后转往奥斯坦德港。当罗斯伍兹跳上了一艘具有特别通行证的罗斯柴尔德快船时已经是深夜时分。这时英吉利海峡风急浪高在付了 2 000 法郎的费用之后他终于找到了一个水手连夜帮他渡过了海峡。当他于 6月19日 清晨到达英国福克斯顿的岸边时,内森·罗斯柴尔德亲自等候在那里。内森快速打开信封浏览了战报标题然后策马直奔伦敦的股票交易所。

Source: 简单梳理fintech的历史,与fintech行业内的玩家_36氪