Park City

周末去 Park City 滑雪三天,哦不对,应该说事滑冰/滑水 – 上午巨冰,下午很水。 先介绍一下,Park City 是2002盐湖城冬奥会的场地,也是一年一度Sundance电影节所在地,坐拥三座顶级雪场(Deer Valley, Park City, Canyons),常年被评为美国最佳户外小镇。这次主要去Park City和Canyons两个雪场。 可惜的是,今年 Tahoe 的雪已经很糟糕了,没想到犹他也一样的。第二天一大早去雪场看到这样的场景心就冷了一半。

IMG_20150327_100443

或者那些 Thin Cover 就已经没有 cover 了。

IMG_20150328_132357 (more…)

跑步爬山+赏花+Holi

记录一下周末一些有趣的事。

昨天吃过午饭,路过FC的公园,只听得里面音乐响起,里面正在印度洒红节(Holi)庆祝活动,便进去一看。几百号人在开着巨大的party,很多印度人,也有很多非印度人,跟着宝莱坞音乐的节奏各种舞动,互相泼红洒绿,好不热闹。刚进去的时候还寄希望于自己能够幸存着出来,拍拍照片就好了,然后就被好客的人们笑着往我身上洒粉了,一个颜色还不过瘾,还招呼着朋友们一起来。又有一群小孩子们四处乱跑着,给过往的人们身上洒上一些颜色。于是我就索性来着某鹤一起和他们大战三百回合,也给他们一点“颜色”瞧瞧。后来的后来,我们身上就五颜六色了,也跟着大家一起狂欢跳舞。这个时候就会感受到美国这种多种文化的魅力吧。

Holi Festival

下午去跑步,两年里第一次跑20mi,往北探索了一条不同的线路,又有一些新的风景,戏称各种park一日游,经过了不止10个大大小小的公园。跑到了快机场附近,还真的蛮漂亮的。跑步的魅力,就在于可以想停就停,不用跑太快,停下来看看风景也是很棒的。可能也是因为最开始不紧不慢的,这次还跑出来了negative split,最后居然都不觉得很累,比起上周16mi最后都快爬回去那种感觉好多了,信心暴增啊。

IMG_20150321_173430 IMG_20150321_183422

春天到了(或者说都快过了),虽然加州大旱,湾区还是郁郁葱葱的,各种野花都开始绽放了。无论是早上去的Mission Peak,还是平时跑步经过的,到处都是一些美美的花。

IMG_20150322_123832 IMG_20150322_123706 IMG_20150314_181517-EFFECTS IMG_20150321_170206

虽然不喜欢,但还是希望加州多多多下雨吧 ☂

玩一玩 Slack 的 bot

Slack 可谓去年的明星企业,年初发布产品,到年末公司已经值 10亿美元了。Founder 也很有意思,执着于做游戏,结果都没有做成功,一转头 pivot 一下就成就了 Flickr 和 Slack,这个以后可以再聊。

熟悉我的人知道我向来就喜欢 bot 这类东西,生活上我也喜欢 automate 一切东西。公司去年从古老的 Skype 换到 Slack,正好有机会玩玩儿 bot,做点有意(wú)义(liáo)的事情。顺便吐槽一下为 Skype 写 bot 真是一件很苦逼的事情,跑 bot 都要 Skype Client 一起跑,实在痛不欲生。

好在 Slack 有 Hubot。Hubot 是 Github 开源的一个 bot framework,最开始是针对 Campfire 开发的,后来也支持了 irc / Hipchat / Slack 等。之前 Slack 的 adaptor 基于 webhook,并不支持一对一 chat 和 private group,需要搭配 irc 一起用,也就是要起两个 bot,一个来接收 public channel 的信息,一个来接收和发布 private message。去年底 Slack 改进了 API 就再也不需要这样了。新的 API 下每个 bot 有自己的账户,这样你可以和他一对一交流,也可以在群里@他。bot 也不再监视所有的 channel,而只是在听他所在的 channel / group。可以把 bot 想象成一个正常的用户,方便很多。

至于这个 bot 可以干什么呢 –

我觉得最有用的是当年世界杯的时候播报比分了。进球了会有通知,甚至我后来不得不加一个 delay(因为看直播的人往往都有延时)。可以查询积分榜,看小组信息,看今日比赛回顾,等等。

世界杯结束之后,我们更多的是和日常的 ops 结合起来,比如 deploy 的时候发个消息,或者查询一下 data pipeline 的 status,或者就是和人调侃的时候来 @bot encourage 一下,总之还是蛮方便的。

所有的 plugin 都是用 coffeescript 写的,像我这种不会 javascript 的人都能随便写,可见是多么的容易。这边我就随便拿个例子:

# Description:
#   Prints out this month's ASCII calendar.
#
# Commands:
#   hubot calendar [me] - Print out this month's calendar

child_process = require('child_process')
module.exports = (robot) ->
  robot.respond /calendar( me)?/i, (msg) ->
    child_process.exec 'cal -h', (error, stdout, stderr) ->
      msg.send(stdout)

更多请看 doc,这里也有更多可用的 plugin,各位看官要是有什么好玩的记得介绍给我哈 😀

Kirkwood

上周末Tahoe终于下了一场暴雪,三天15+ inch。这个雪季本来都已经绝望了,结果绝望中跑出了希望。

两天都在kkw,对他家特别的钟爱。就是喜欢这种open mountain,可以到处乱跑。可惜one man chute还是没敢下。

image

image

回来路上研究mountain collective ,越来越心动了。