Bot 甘苦談,使用者至上 Maxis Kao @ Yahoo Search
Bot 甘苦談,使用者至上Maxis Kao @ Yahoo Search
什麼是 Bot
程序員鼓勵師
Nov. 6, 2015
PTT 表特版
Heroku + MongoLab + Slack APINode MongoDB Webhook
Heroku + MongoLab + Slack APINode MongoDB Webhook
Heroku + MongoLab + Slack APINode MongoDB Webhook
> db.beauty.lists.findOne()
{
"_id" : ObjectId("563b17bef26ec7b20aabe962"),
"push" : 26,
"full_title" : "[正妹] 又正又會讀書",
"tag" : "正妹",
"title" : "又正又會讀書",
"url" : "https://www.ptt.cc/bbs/Beauty/M.1446701090.A.658.html",
"post_id" : "M.1446701090.A.658",
"mark" : "",
"fetched" : true,
"raw_meta" : {
"作者" : "pk698326889 (JiMiHua)",
"看板" : "Beauty",
"標題" : "[正妹] 又正又會讀書",
"時間" : "Thu Nov 5 13:24:47 2015"
},
"author" : "pk698326889 (JiMiHua)",
"image_count" : 8,
"datetime" : ISODate("2015-11-05T05:24:47Z"),
"display" : 2
}
> db.beauty.posts.findOne()
{
"_id" : ObjectId("563b5a3af3526d750e61f5ad"),
"img_total" : 35,
"post_id" : "M.1446558454.A.167",
"img_idx" : 0,
"img_url" : "http://i.imgur.com/h4f2E15.jpg",
"display" : 1
}
鼓勵 +長腿 >50
4,735 posts
37,849 images
ButSide effects
鼓勵 + 新加坡 = 悲劇
> db.beauty.lists.findOne()
{
"_id" : ObjectId("563b17bef26ec7b20aabe962"),
"push" : 26,
"full_title" : "[正妹] 又正又會讀書",
"tag" : "正妹",
"title" : "又正又會讀書",
"url" : "https://www.ptt.cc/bbs/Beauty/M.1446701090.A.658.html",
"post_id" : "M.1446701090.A.658",
"mark" : "",
"fetched" : true,
"raw_meta" : {
"作者" : "pk698326889 (JiMiHua)",
"看板" : "Beauty",
"標題" : "[正妹] 又正又會讀書",
"時間" : "Thu Nov 5 13:24:47 2015"
},
"author" : "pk698326889 (JiMiHua)",
"image_count" : 8,
"datetime" : ISODate("2015-11-05T05:24:47Z"),
"display" : 2
}
使用者要什麼,就給他什麼
「X,給我男的是要鼓勵什麼?」
版本控制也救不了你
$ git checkout tags/v1.7
$ npm install [email protected]
BDDBehavior-driven development
重質不重量
Quality
VolumeRevenue
Quality
VolumeRevenue
Quality
VolumeRevenue
為使用者設想
$ clear
https://www.npmjs.com/package/lorem-ipsum
簡化常見的指令
4,600searches in the query log
> _________
> _________Alan
> _________Conrad
> _________布萊恩
user log 是珍貴的資產
看著儀表板開車
鼓勵師 v2.0
Heroku + MongoLab + Slack API
Heroku + MongoLab + Slack API
3~5 s (including dyno sleeping)
Heroku + MongoLab + Slack API
3~5 s 1 s3~5 s
Heroku + MongoLab + Slack API
1 s3~5 s
NodeMongoDB
PREPROCESSING: 0ms
DB_CONNECT: 8ms
QUERY_LOGGING: 4ms
RECORD_COUNT: 1ms
CONDITION_SEARCH: 57ms
Ping: 8ms Webhook: 30ms
server mongodb slack
30x faster3s → 100ms
鼓勵師 v3.0
Elasticsearch
● Full-text search● Analytics● High Availability
Feedback
● Personalization● User preference
Recommendation
preprocessor
slackbot
middleware