碎碎念

换位思考

有个很有意思的现象, 就是说不管是怎样的人, 温文儒雅的男生或是温柔知性的女性, 一坐上驾驶位, 立马就会变成悍匪和泼妇, 另一个说法是司机们眼里其他司机只有两种, 比我慢的傻逼和比我快的二逼

我自己开车几个月了, 感觉大部分情况确是如此. 当我们是行人或骑行者时, 经常会抱怨车不让我, 车乱开, 雨天溅人一身水等等, 而在驾驶位上的时候, 经常痛恨的又是那些不按标线和信号灯过马路的非机动车, 随时可能乱冒出来的行人. 其实多去换位思考下, 可能就没那么多问题和纠结. 自己还是尽量做到以下内容, 希望诸位司机和行人共勉

司机角色

多看行车标线, 不随便变道, 特别是去不熟的地方, 提前在导航上做下功课, 提前看好各种路牌, 要变道事先准备, 避免急匆匆变道被人滴甚至被人撞上

不野蛮开快车, 也不开太慢挡住其他人, 高速或快速路上开慢了挡住后面人一是让人烦心, 二是其实反倒不安全, 自己如果慢, 自觉去右侧道, 把左边留给要超车的人

绿灯了赶快起步给后面人拉开空间, 杭州大部分交通灯都有倒计时, 提前挂档准备松离合走人, 节省宝贵的绿灯时间, 提升通行效率

停车时多考虑下经过的车和前后左右别的停着的车, 不要让其他车以非常难受的姿势从你身边擦过去, 另外也考虑下停车位置旁边车经过的速度, 速度快的地方多留点空, 后视镜能叠起来就叠起来给其他人省空间

尽量让行人, 经过时减速, 在路口和公交站附近多留意随意乱穿马路的人, 特别要注意小朋友和女性, 尤其是还在打电话或玩手机的, 切记不要用常规思路去理解还在吵架的情侣 (最后这一条是开车以来唯一一次差点撞上人, 一对吵架的情侣从公交站前非斑马线横穿, 走到一大半又突然折返, 防不胜防)

行人和骑行角色

行人走路边的人行道, 骑车时走非机动车道, 别跟汽车去抢. 骑车如果被逼的走机动车道了, 尽量靠边让车能从你旁边安全经过, 不要非得让车需要擦着你过, 有能转进非机动车道的机会立马转进去, 命比速度重要多了

过马路走斑马线, 看自己的灯, 并留意机动车的绿灯情况, 红绿灯还分左右转等方向性的, 不要随意看到个绿灯就过

多左右看, 保持自己是匀速直线运动, 不要突然冒出来或停下来, 汽车其实没法很快刹住, 而且突然加减速会让车很难受, 司机一般不会喜欢在你面前玩个急刹然后烧胎起步的

不要站路上让车很难受的位置, 比如支路路口的正中间, 让车从你左边或右边过都很不爽, 没事往旁边站一点, 方便他人, 也让自己处于更安全的位置

路上就尽量别低头玩手机了, 打电话也长话短说, 多注意看四周环境, 雨雪天时司机的视野下降很厉害, 自己打着伞也多回头看看, 新交规更保护行人, 但最好也别被用上相关条款, 用上一般都是出事了

举手之劳, 顺势而为

凑个热闹, 点评下微信送红包收获这么多绑定的银行卡, 手段远好过支付宝的事

在我看来, 二马最大的不同, 一个是在努力创造需求, 一个只是在帮人解决已有需求. 无论是双十一, 还是双十二, 抑或是现在全员 all in 在推的来往或淘宝无线客户端的航母版, 无处不是在努力的创造需求设定目标让大家去做某件事情, 去玩游戏抢红包制造日均活跃用户, 去刻意制造一个购物狂欢节, 去画饼描绘用户需要的各项功能然后去提前实现结果发现没市场又要努力推, 最后搞的自己人全员神经衰弱, 局外人凑过热闹后就再无兴趣. 反观微信, 极少有在刻意推自己的新功能, 更多的时候使用过程都感觉是这个功能我需要, 而微信恰好有, 一些放到别的产品本该大力推的特性微信反倒一直在打压, 比如功能明显受限的朋友圈, 入口还藏那么深

从知乎 微信红包的产品经理是谁 这个回答上看, 这似乎是微信无足轻重的一着棋, 但真的要让这个功能能用, 财付通后面应该也是做了很久的蓄力, 不然银行卡不可能可以被绑上. 腾讯推什么似乎都不会那么刻意, 但又感觉排山倒海势不可挡, 这种企业太可怕了. 相比较另一边总各种咋呼, 让员工鸡飞狗跳诚惶诚恐, 路人被吸引眼球围观下然后就走掉, 虽说媒体效果非常棒, 但最终收获和世人口碑未必能有多好

之前听淘宝支付宝余额宝的故事感觉都挺好的, 都是先有需求, 再有产品, 或两者在同步前行. 现在不知道是盘子大了人多了要找事, 还是只是为了上市在酝酿故事, 某厂各种揠苗助长急于求成, 当然可能换个思路是未雨绸缪, 可能只是我多心. 笨狗提醒下注意人心向背, 不然可能要坏大事, 反正我是跑了做别的去了, 帮人发财就能自己发财

广告从业者的良心

最近又回到做计算广告的路上, 在重新熟悉和看问题时, 想起来曾经看过这么一句话, 大概是 Facebook 的某技术高管离职时说的 “我们这一代最聪明的人竟然都在这里思考着怎样让人们去大量的点击广告, 真衰” (翻译的总不太对味, 原文是 “The best minds of my generation are thinking about how to make people click ads.” by Jeff Hammerbacher, 大家可以去搜下原文看看前因后果). 我个人对这句话也还是有一些不一样的看法, 倒不是反驳或辩解, 只是从我的角度来看看为什么会造成这样的现状

我们先跳开这句话, 来说说现在我们这个圈子里最聪明的人都在哪, 很多人第一反应都是说去了 Google, Facebook 这样的商业公司, 或者曾经是 NASA, Bell Lab 这样的实验室, 那既然是商业公司, 公司必然先需要活下去, 那就要去获得收入, 而实际上, 绝大部分的互联网公司的收入都来自广告, 这应该也是不争的事实. (互联网盈利主要有 广告, 增值服务, 游戏, 电商等, 在国内游戏是很大一块, 但是全球无论何处广告也都是压倒性多数的一部分, 很多光芒四射的创业公司不做广告, 可能只是他们还在烧风投的钱在攒用户, 还没到把资源变现的那一步而已) 去看看大公司的财报, Google, Facebook, 百度等公司的收入大部分来自广告, 微软目前可能还在靠企业应用和游戏, 但是互联网业务群也有广告盈利的压力, 国内腾讯网易等早转型为主要依靠游戏, 阿里系有服务费 (算增值吧), 但是广告也还是相当大一部分. 综上, 至少可以得到一个结论, 广告是生存之本, 是必需品

很多理想主义者还是会说那我们能不能只要维持公司的基本收入, 然后让更多聪明的人去做造福社会让人类进步的工作, 比如 Google 怎么去提升搜索质量, Facebook 怎么去让 SNS 更好用. 这样的模式不是没有, 比如维基百科, 就一直没有放广告, 而是靠捐赠和全民编辑, 但这毕竟是少数, 而且商业公司还需要追求利益最大化, 所以聪明的人去优化广告效果提升收入也无可厚非. 这是偏阴暗的理由

我想说的重点更多的是阳光的一面. 广告的本质是什么呢? 是广而告之, 是希望让一个特定的受众群获取一条特定的信息, 且希望受众采取一定的后续措施. 比如超市的广告希望告诉你他们在促销, 你们快来买. 这个信息之所以需要通过广告的形式送达到听众那, 就说明走常规的途径是到不了的, 广告商希望付费去送达信息, 而对收到广告的人来说, 如果这条信息对他有用, 而如果没有广告他就没法获知, 那这条广告就应该有正面价值. 实际上每个网民耗费在网络上的时间是无法被广告公司和广告商所左右的, 而这些时间内他们看到的广告也应该是一个相对固定的量, 我们计算广告的从业者, 提升的本质并不是用户看广告的数量和时间 (即更多的广告), 而是这些广告里对用户有用的比例要更高 (更高的广告点击率), 当然从另一个角度说, 广告看多了其他内容就看的少了, 但是如果这些广告信息确实是有用的, 那和其他内容比, 对用户产生的影响谁好谁坏还说不好吧

有很多信息, 没法通过自然信息流 (比如用户的固定订阅, 习惯性的浏览) 到达目标用户那 , 例如有限定的优惠, 新出现的内容, 那就需要广告在正常流程外给出合理的送达渠道. 我记得我最早踏进计算广告这个圈的时候, Google 在 AdSense 上给 wikipedia 做了很多免费的广告, 比如 “世界上最大的哺乳动物是什么? – 来维基百科查看”, 这样的广告我觉得很好, 因为我对这样的信息是感兴趣的, 对维基百科来说也很好, 因为他们作为一个新兴事物, 需要更多人的了解和关注, 对 Google 而言, 他们一是在做慈善 (免费给维基导流, 不然这些广告位也可以拿去赚钱), 二是避免自己给用户出不合适的广告影响特定网站上的用户体验 (相对而言维基的广告没有什么指向性, 不会让用户反感), 这是一个四赢的局面 (用户/广告商(维基)/广告中介(Google)/放 AdSense 广告的网站), 也是计算广告从业者的奋斗方向. 多说一句, 当时百度的网盟广告也有一定的比例在给百度百科导流, 虽然也赚不到钱, 但是还是有只分东西给自家的嫌疑, 所以没拿出来当完全正面的典型好好夸

如果只是让用户通过正常渠道获取到自己该获取的信息, 更多可能是一些循规滔矩的工作, 而在更激进的渠道上, 让多方的信息获取送达更高效合理, 听起来会更有挑战一些, 而且广告跟收入也直接挂钩, 很多改进可以非常明显的反应在账面上, 带来的成就感可能也更直接. 这是我个人的经验和看法, 所以我觉得当今世界最聪明的那拨人里有很多在做计算广告也是一个合理的状况. 另外, 我认识的计算广告从业者大部分还是很有节操良心未泯的优秀青年, 当然整个圈子里还是有一些让人无奈只能呵呵的存在, 我们不喜欢的是

  1. 想办法收广告主钱但是没给他们带来收益
    a) 投递给错误的用户, 没给广告主带来希望的影响受众 (违反广告宗旨一或二, 特定受众/特定信息不符合)
    b) 诱骗用户点击, 实际上没法产生后续行为让广告主获利 (违反广告宗旨三)
    c) 玩弄游戏规则, 让广告主花更多的钱干更少的事
  2. 助纣为虐, 违法乱纪 (赌博, 色情, 欺诈网游)

这些事情可能有法律管, 但是至少国内的法律在这方面是相当不健全, 除了违法乱纪的可能有点约束力, 其他都只能靠从业者和老板们的良知了. 目前我在的这个地方, 虽然技术上可能比其他地方要弱, 不过好在良心还算可以 (至少我能看到的范围是), 所以还是值得回到这个有意思的圈子来. 以后的工作中还是要勿忘初心, 有节操的去改善人类信息获取的方式. 与君共勉

租房提取公积金流程记录

更新 2014-09-30, 因政策变化, 本文部分内容已不适用 (新闻来源: 人民网: 北京提取公积金无需购房合同 租房可3月提1次)
更新 2013-04-18, 发票和租房合同原件已取回
更新 2013-03-28, 钱已到账, 发票暂未取回

大约半年前发现公积金放在国家那是不划算的 (计算方法见最后), 所以一直想着把钱盘出来, 最近完成了提取的大部分步骤, 把过程写下来供他人参考

步骤和注意事项

a. 开租房发票和完税证明
a.1) 房屋所在区的任一地税或代征点办理, 代征点一般几个小区就有一个
a.2) 带上 1/2/3/4/7/8 去, 交租房合同上总租金的 5% 税费, 一般都只收现金, 得到 11/13
a.3) 注意发票的付款人是租房人, 收款人是房东
a.4) 注意完税证明的纳税人名称是房东
a.5) 注意发票上的租房时间和合同一致
a.6) 注意发票上项目只能是 “房租”
a.7) 注意发票上总额除以租房月数后是整数
a.8) 房产证在最近一年及发票上租房周期内没有其他租房提取记录
b. 在中智办理支取手续
b.1) 中智在汉威大厦 27 层 4 号窗口
b.2) 先在后面电脑上提交电子申请, 桌面第三个快捷方式, 点打印 (实际不用打出来) 后再提交
b.3) 提交 1/2/3/4/5/6/7/8/9/10/11/12/13/14/15 给窗口工作人员, 验证后当场返还 1/3/5/9
b.4) 据说 7/11/13 办妥后由驻公司的中智员工还我
b.5) 每月 20 日前办理当月的申请, 月底到账
b.6) 提取人最近一年需没有提取记录

所需材料

  1. 房东身份证原件 (a/b 用, 验证后当场返还)
  2. 房东身份证复印件 (a/b 用, 收走)
  3. 房东房产证原件 (a/b 用, 验证后当场返还)
  4. 房东房产证复印件 (a/b 用, 收走)
    —- 如果房产多人所有则需每个人的身份证和房产证原件复印件
  5. 租房人身份证原件 (b 用, 验证后当场返还)
  6. 租房人身份证复印件 (b 用, 收走)
  7. 租房合同原件 (a/b 用, b 处收走, 办妥后归还)
  8. 租房合同复印件 (a/b 用, 收走)
    —- 非中介用合同建议用北京住建给的模板, 没用的可以删掉, 关键是要有房东和租房人信息, 房屋地址, 租期, 租金这几个
  9. 支取用银行卡原件 (b 用, 验证后当场返还)
  10. 支取用银行卡复印件 (b 用, 收走)
    —- 不强制要求公积金联名卡 (反正是一年一次的操作)
  11. 租房发票原件 (步骤 a 获得, b 处收走付款人一联, 办妥后归还?)
  12. 租房发票复印件 (b 用, 收走)
  13. 完税证明原件 (步骤 a 获得, b 处收走, 办妥后归还)
  14. 完税证明复印件 (b 用, 收走)
  15. 提取申请书原件 (b 用, 收走)
    —- 中智的在这里下载

提前支取的理由和其他的一些感慨

公积金中心的计息方法是: 当年缴存的公积金按活期利率算存款利息 (目前是 0.72%), 去年及之前的按三个月定期利率算存款利息 (目前是 2.75% 左右)
一般的投资收益应该在 4% 以上 (随便哪个银行的理财产品都不会低于 4% 吧? 这还是最稳妥收益最低的)
提取公积金要交的税是 5%
所以, 如果一年半内不买房, 花 5% 的手续费 (税费) 把钱取出来做投资, 一年半内能回本 (如果有其他更好的投资渠道回本时间更短), 而且钱放自己手里比放国家那显然更放心, 谁知道政策以后会变成怎样

感觉我办这坨事还算是没怎么折腾, 关键是有朋友肯借我房本和身份证用, 不然就算是正常租房, 一般的房东也绝对不会把这两样东西给你哪怕半天, 而且对应房本在这个时间段内还不能有其他租房提取, 所以现在中介帮弄都是要 15%~20% 的手续费, 他们租房本什么的也还是挺贵的, 而且都是把一个房本对应到好几个合租租房合同上去帮人取. 另外公积金中心不对个人, 必须是以公司或人才市场的名义去, 这应该也是中介手续费高的原因.

ps. 朝阳的公积金管的比较严, 中智卡的更严 (那个房东房本和身份证原件就是中智的土规定), 所以如果在海淀能取建议在海淀取了, 据某些中介说可以用买房等发票套出来, 最低的时候手续费只要 3%

12306 和火车票那点事

每年春运时铁道部和 12306 都要被喷死, 自己也和 12306 斗智斗勇了两三年, 这个冬天跟着 @scat 君折腾了很久, 随手写点什么说说这事.

提前说明我只是火车迷, 不是铁道部的人, 用不着帮铁道部把黑的说成白的, 我自己也有各种怨气要喷, 只是希望能提供一个相对客观的事实供大家来参考参考. 前半段跟喷子对喷和对 12306 的吐槽的会多点, 后面有一些胡思乱想的一些可能称得上是建议的东西.

喷子和不那么容易的 12306

然后以一个标准喷子的口气对那些说 12306 做的很烂随便找个本科生就能写的人骂一句, 去你大爷的什么时候国内的学生素质这么高你有多少我要多少; 再对一些所谓业内人士说的这种负荷找淘宝什么的能轻松解决的观点说句很抱歉, 这两个虽然在规模和突发性上有不少相似点, 但是还是有很多不一样的地方, 比如淘宝上一件商品如果有多件是无区别的, 而火车票一张就是一张, 有人买到上铺还不干非得换下铺, 而且这里面一张票就是一个锁, 而且淘宝超售了最多补货或退款, 火车可不是说加床或加位子就能加上去的, 而且要是先跟你说买到票了然后说不好意思超售了我们退钱给你, 不知道有多少人想直接穿过显示器把那边的服务器给砸了; 最后说说 12306NG 那帮人, 最近没关注, 一年前看了下那个论坛和所谓的发起人, 很可惜里面大部分都只是夸夸其谈一些自称砖家的喷子, 很多人估计都没做过百万规模的系统就敢各种意气风发指点江山, 这种人都能说出靠谱的整体解决方案和细节注意点来那就见鬼了.

喷爽了咱们来摆事实讲道理说说 12306 的各种不容易, 先说我们是怎么搞他的:

最早的 12306 基本上就是一个高校实验室的产品, 空闲时段可用, 用的也还凑合. 据说有收钱不出票的情况, 不过我还没遇到过, 所以不好评论. 退票的钱不是实时到账的, 快的几天慢的一个月我也都遇到过

等到了高峰期的时候, 开始各种登陆不上, 各种刷不开页面, 或提交不成功. 这时候最大的问题是带宽和前端服务器不够, 压根抢不到一个有效连接.

等把带宽问题基本解决后, 发现每一次页面加载都需要做太多次 GET 操作, 而且很多页面数据不优化不压缩, 虽然系统还用了 jQuery 什么的至少看起来算是跟上先进生产力的技术, 但是整体还是比较糙, 据说是用 CDN 和大量加机器来算扛住. // 不过到现在一次页面加载需要获取的资源还是太多, 而且一开始没做内部的负载均衡, 容易出现一个 ISP 解析过去都在少数几台机器, 所以同一地区不同 ISP 接入的速度会有明显差异 (比如北京联通用户多, 基本就卡成幻灯片, 用用户少的电信线路就相对靠谱点), 而且个人认为不少机器加的很浪费

有了缓存机制后发现一个巨坑爹的地方, 12306 似乎把后台实时数据和 CDN cache 在某些地方用反了, 比如余票等实时性非常强的数据反倒在前端有一个 cache, 平时还好, 但是高峰期放票瞬间这个 cache 就要命了, 如果你赶巧碰上一个更新较慢的 CDN, 估计等你刷到数据时票都被别人买完了 // 这个问题现在还是没有解决, 所以才有使用一些专线 CDN (比如传说中的海外线路) 可能会保证网络比较通畅 cache 更新也比较快的说法

等机器, 带宽, 缓存什么的搞差不多后, 开始有技术流的 hack 手段出现, 曾经有这样的刷票方法: 要买 2.3 的票, 但是还有几分钟才放票, 不确定自己是否一定能命中更新较及时的 CDN, 于是可以先查 2.2 的票找到对应车次的任意席位的票, 在填写乘车人信息时改 POST 请求中的参数, 把时间改成 2.3, 席位改成自己想要的 (比如硬卧), 然后强制提交, 只要到了放票时间, 不管自己连的前端服务器是否更新余票缓存, 都可以把这个请求提到后端进行处理. 这方法我用过, 很爽, 可惜现在被封了. // 封的手段是在提交订单时加了一个加密串, 发到站, 时间和车次必须和加密串对应才能提交. 不过这个加密串在同样条件下每次查询都可能不一样, 但是同一个验证码可以用无数次 (或者是一个比较长时间段内都可用, 没确认), 所以可以用大量的机器密集轮询 12306 不同的前端服务器获得对应的加密串, 一旦有这个数据就可以构建数据强制提交了. 此方法目前还可用且有人在用, 不过需要考虑 12306 现在开始限 IP 或限同 IP 的连接数了

12306 注册帐号需要提供证件号, 不能坑别人, 所以默认大家一人就是一个帐号, 同帐号只要有订单没完成, 就不能去下别的订单, 如果一次要买不同车的票, 那就疯了, 还好 12306 允许护照/港澳通行证什么的也可以注册, 谢天谢地又多几个帐号可以一起刷了, 果然办个护照什么的还是没坏处的. // 这个限制其实也能绕过去, 你收集一堆朋友的帐号给你抢一张票不就行了. 还有个更 ws 方法能很容易搞到成百上千的帐号, 个人使用怎么着也都够了, 具体方法还是不说了, 免得被封

能搞到提交所需数据, 也有足够的帐号去刷, 那接下来的问题就是怎么把能自动化的地方自动化. 各种抢票助手的原理大致都是做一个浏览器插件, 自动重试查询, 并且监控对应的票额, 然后把一些能自动完成的步骤自动完成 (比如点下一步什么的) // 这里还是有带宽的问题, 其实并不是每次都要把所有的流程都走完, 获取的数据也只要核心数据, 不少插件应该没考虑好这个, 还是对用户的网络有比较高要求. 另外 12306 也做了一些限制, 比如连续两次重试时间不能小于五秒, 偶尔也改一下 URL, 做个 302 跳转什么的. 不过整体而言这个封不了, 完全模拟用户行为, 后面的一些 hack 也基本是这个思路

一直到上一步, 应该说已经能将大部分操作自动化完成, 唯一的麻烦就是验证码. 12306 一直到 2013/01/25 用的都还是用一套非常弱的验证码, 字迹清晰颜色差异明显, 最关键的是字体似乎只有两种, 随便找个学过基本的图形学的本科生应该就可以搞定, 先做二值化提取出有字的部分, 然后做水平和垂直方向的投影, 按区块直接跟已知的单个验证码特征库最对比就可以了. 死猫君和其同伙用 C/C++ 实现, 能做到 1ms 一个验证码, 99%+ 的准确率, 12306 在这样的识别效率面前已经完全不设防, 想怎么搞就怎么搞. // 但是超简单的验证码已经从 2013/01/26 开始变成了一个相对复杂的, 原来的方法需要做一些优化才能用, 且识别率可能不那么高

就算验证码的识别率下降, 但哪怕只有一两成的成功率, 机器还是比人快的. 12306 的对策一开始是加浏览器参数校验, 如果是裸的 POST 请求就拒绝掉, 但是 http header 这种东西, 自己人肉走一遍流程把对应的数据扒下来让机器模拟还是毫无压力. 接下来 12306 是不停的改接口 URL, 虽然最后还是落到同一个处理接口上, 但是加上了跳转判断, 直接提到最终接口的会被拒绝, 到这就变成猫鼠游戏, 12306 改一次 URL 对应的机器行为就要跟着改一次. 估计是今年各种机器行为搞 12306 搞的比较疼, 虽然他们已经提供了超过一千个对外 IP, 也还是怕被这么搞, 接下来的一招是加了更严格的间隔时间限制, 这时候机器行为的成功率就很重要了, 一旦重试最少五秒就过去了, 而且有一些步骤加了很猥琐的隐藏等待时间, 机器提交太快会报错, 而慢一点接近人的速度就没事. // 最后那个限制真心无解, 不过对手快的人也是很伤的, 别人眼尖手快你还能不让别人买? 跟 @scat 吐槽说看来 12306 对他们的网络很有信心, 正常人五秒内是刷不开第二次或能提交上请求的. 另外机器重试时加个随机附加时间, 可以对人的行为模仿的更像, 这个 12306 没法做特征库来判断是人的行为还是被机器刷

攻防到这阶段, 两边基本就没什么办法了, 不过 12306 干了件更 NB 且 WS 的事情: 同 IP 限制登陆人数和封 IP. // 不知道 12306 怎么判断的, 反正 jike 他们那种抢法绝逼是要被封 IP 的, 但是很多企业对外出口就一个, 要赶上员工集体抢票, 结局就是集体悲剧, 反正我在公司悲剧过几次 -.-|

目前拉锯战就到此, 如果是真的搞技术的人, 要是自己的产品成天都在被一群这么蛋疼的人这么玩, 估计早就疯了, 所以说 12306 今年系统一直还可用 (虽然还是会卡还是没有票), 且一直在增强防御, 还是挺不容易的

关于 12306 和铁路客运的吐槽及建议

前面在同情了半天 12306 后还是吐槽没票这个现实, 没票的最大原因还是运力不足, 大家都想过年前一天到家, 那单日发送量必然爆表, 但车就那么多, 只能靠抢

运力不足有一些变通的方法, 比如加挂车厢, 动车重联等方式来提升已有运力, 这个大家都很爽; 比如卧代座 (硬卧车厢当硬座买, 一节车厢大概多卖 20 来张票), 这个大家也觉得还好, 遇上比较 nice 的车上铺还能爬上去轮流躺着睡觉; 比如开临客, 这个似乎就不那么灵光了, 大家对临客的印象还是又慢又破的绿皮车, 经常让车和晚点, 殊不知现在连高铁都有临客, 只是不挂 L 的车次, 临客最大的问题还是时间不好, 一般都半夜出发或到达, 除了这个其他都还好, 我坐过北京到南宁的临客, 空调车人也不多, 除了慢了点其他都巨爽; 比如提升车底周转率, 普速时代最多就是把长途车到终点后再开个短途, 把到下一次发车前的这段间隔用起来, 这个意义好像不大, 而且本来车还是要整备的, 但是动车和高铁时代提升周转率就很有意义了, 同样的北京到武汉 1225 公里, 一路不停按 250 的速度要至少五个小时, 但按 380 的速度跑就不到四个小时了, 同一列车底长短混跑, 一天可能就能多开一趟车, 可惜这个被现任铁道部的猪头领导以安全为由强制降速, 而且给动车组生产厂家的订单也不加, 导致需要车的时候没车, 单车底也还有检修里程限制, 不可能 7*24 连轴转, 坑爹啊这不是

另一个导致运力不足的问题是车票价格, 现行火车票价格已经十多年没变了, 期间还经历了六次大提速, 其他交通方式和物价已不知道涨了多少, 偏偏铁道部自己还涨不了价 (发改委什么的一堆流程要走), 所以只能绿皮改空调, 普速变快速 (虽然实际时间可能还慢了) 来曲线救国, 动车和高铁的票价是明显上了一个档次, 所以也能解释为什么有高铁后普速必然会少一堆, 大部分国人还是缺钱不缺时间的主, 特别是学生这种巨叽歪的群体. 造成同样结果的还因为人民群众的生活水平提高了, 也娇气了, 以前有硬座就很好, 现在很多人还非卧铺不坐, 最狠的是只要硬卧下铺的, 人家理由多充分: 软卧太贵硬座不爽上铺难爬, 需求就这样被密集化 (很多人都是只坐某趟特定车的某种特定铺)

在供给远小于需求的供需现状下怎么搞都无解, 那只能把问题退一步, 让大家怎样以一个 “公平” 的方式来搞. 我自己想过一个方案, 后面有一次问了 @cnberg 印度是怎么弄的, 发现跟我想的基本一样, 我先说说印度怎么订票:

  1. 订票提前周期很长. 订票时
    1.a 如果有票则付全款出票, 完成
    1.b 如果没票则交押金 (大约 10 人民币) 进入一个排队队列
  2. 排队过程中
    2.a 可随时查询在队列里的位置, 当新票额放出或有人退票或退出排队, 你在队列里前进, 排到后付全款出票, 退押金, 完成
    2.b 如果到开车时间还没排到有票的位置, 退押金, 完成
    2.c 主动退出排队队列, 押金不退, 完成
  3. 退票
    3.a 退票收取大约 10% 的手续费, 完成

这里面最爽的是引入了排队机制和获知自己排队位置的查询接口, 让整个过程对乘客而言更透明. 但是当时我们讨论时也说到, 中国春运是刚需, 提前半年估计也会在订票的时候就把系统和队列压爆, 只是把现在提前 20 天的坑爹提前了而已, 而且对那些没法提前那么长时间确定行程的人是一种伤害. 而且估计印度网民远没中国多 (具体数据没查, 但是用脚也能想到), 所以系统压力没那么大

我的方案比这个更激进点, 不同的是

  1. 排队时就可以先付全款, 这样一旦排到票马上就能出票, 不至于说排到票时自己不方便, 因为没法付款而导致被从队列里强制踢出去
  2. 退票费按退票时间到开车时间的间隔依次递增, 越晚退票手续费越高, 这样也让那些买多张票备用但最后只用一张的人提前把资源让出来给有需要的人 // 现在就很多人买好几张票备着, 走之前才退, 结果其他有需要的人也来不及捡漏

这些都是比较大的系统性变化, 我们这些玩票也就吐吐槽, 如果有不妥或没考虑到的地方也欢迎讨论

落到 12306 本身, 感觉可以提供一个精简版入口来满足订票需求, 像界面/退票/添加修改常用联系人之类的操作很少用到, 没必要每次都为了兼容这些操作而走那套有巨多图片和 .js 加载的系统, 刷票助手什么的其实就是在帮忙减轻网络压力, 反正大家只要能定到票, 直接做个纯文本界面也无不可

自吐 & 自勉

今天百度最高奖, 看了下, 最终入围的五个团队有三个自己呆过, 拿奖的仨也呆过俩, 好多认识的人, cong~ (附: 拿奖的新浪微博消息) 他们都做的很赞, 自己曾经在这么好的团队, 耐不住性子, 做不出东西, 因种种原因离开, 开花结果自然无份

现在么, 好好做事, 手头事情也很有搞头, 那就好好搞吧, 皇天不负有心人 :P

自吐部分开始, 曾经有一个帖再引用了以前的一个段子 (原文见: 被诅咒的 Snoopy)

Me 13:23:45
我从 b 家离职后不久, b 家的碳酸饮料就免费了
我从 g 家离职后不久, 餐补就直接发钱了, 等我开学, 上海也是自助餐了
小强 13:25:56
你快点离开武大
Me 13:26:16
why?
Me 13:26:23
这样师弟师妹的伙食就有希望了?
小强 13:26:57

小强 13:27:18
你离开acm acm就拿到金牌了
Me 13:28:20

我一定要把这个段子续下去:

  • 2007 年夏离开武大 ACM 队, 该年秋天武大第一次拿区域赛金牌, 第一次进入世界总决赛
  • 2008 年初进微软俱乐部, 该年夏令营活动被取消
  • 2009 年初离开微软俱乐部, 该年夏令营活动恢复, 并增加 UCLA 夏令营
  • 2009 年秋天回归百度, 过了一个月从普天搬西二旗, 自助碳酸饮料机被取消了
  • 2011 年秋天离开百度, 半年后自己做废了的俩项目重新上线
  • 2011 年秋天离开百度, 次年原团队拿百度最高奖

互联网企业的 x 文化?

在去年的年度盘点里有提到一些公司文化差异的问题, 当时想说的是这个世界越来越 x 的文化导向, 怎么就变这样了呢? 民间口语中略有轻浮个人觉得还能接受, 可以用尚未开化完全或民风彪悍等理由解释. 但是在一些公众场合, 特别是有影响力的公众场合, 还是觉得很难忍受, 过 x 的文化在很多地方会被认定为性骚扰才对?

这个问题最早是看 CCAV 某年的内部年会 东方红时空 时想到的, 里面有不少荤段子, 具体细节现在回忆不起来了. 当时看到平常很严肃那些主持人什么的也这么恶搞和低俗, 有点震撼. 不过要说那个片子留下了什么, 最有影响力的应该是电影剪接恶搞的兴起 (胡戈早期的剪接作品都是如此, 一个馒头引发的血案和讲春运的那个), 以及敬一丹还是谁说的一句 “在这样的夜晚, 除了创造人类, 我们还有什么追求”. 但是跟后面的那些比起来, 这个又算很纯洁的了.

后面看到网络上一些对阿里系的传闻, 觉得明显过头了, 比如知乎上在淘宝的工作挑战这个问题中提到的男女关系, 这里面的内容我向一些阿里的员工求证过, 无法证实, 但是从交谈来看, 很多无法证伪不那么夸张的事情似乎也是事实, 甚至都算公司文化了. 另一件很震撼的事是 @Fenng 曾经在新浪微博上转过一个淘宝新人培训时跳恰恰舞的图, 但他转的那个原微博已经被删, 只找到这张图, 搜 “百淘 新人” 能找到不少淘宝人的辟谣, 结合人人奥斯卡上类似的那一段, 应该是谣言. 去年冬天跟一去了淘宝的大学同学聚时也聊了下这方面的话题, 感觉阿里在那方面的企业文化确实是明显超过我的底线了, 淫而不荡, 这个太难了, 在网络上见过太多说着说着就成真的事了. 个人认为之所以阿里系会这样, 是因为阿里是一个销售导向的企业, 当今社会很多生意和黄赌毒都有说不清道不明的关系, 那销售等对外团队中这种文化就比较盛行, 继而带的整个公司都是这样. 由于这个文化冲突, 找实习, 毕业找工作, 换工作时, 阿里系都是被我直接忽略的对象.

到人人后只是觉得这边的某些文化更本土化一些, 连加入的第一个群名字都叫 “土俗骚”, 日常也有一些比较三俗的事, 但是整体还好, 不会过. 在人人奥斯卡上是被小震撼了把, 虽然以前也听说过会很黄很暴力, 但是一看这名字 基情穿越, 再结合下内容, 确实也还是有点过. 听闻销售那边会比较狠, 技术方向会稍微好一点.

回想下以前呆过的那些地方, 似乎都比较保守, 外企对这个问题都很敏感, 毕竟性骚扰是很严重的问题. 百度也挺保守的, 最多就是很熟的小圈子内闷骚下. 是说这些地方的大部分人以前在学校还是比较传统的乖宝宝, 所以比较正派?

不管是假正经还是真正派, 希望自己能一直光明向前, 言行一致. 不抽烟不喝酒, 只混技术圈, 远离人情世故, 会丢掉一些东西损失一些朋友和感情, 但是留下的会是更经得起考验的朋友吧. 不抽烟是因为家里没人抽烟, 自己也没兴趣, 对身体也不好, 不喝酒是因为酒精过敏 (海鲜过敏一般认为是个悲剧, 酒精过敏我看来还算好事了), 只混技术圈是因为不会人情世故不会说话, 出去绝对被各种拍死. 似乎杜月笙还谁说过, 如果一个男人不抽烟不喝酒, 那还有什么靠得住的 (大意如此), 我说是因为那年代没别什么能爱好了吧, 现在随便找个爱好就各种耗时烧包了.

终于还是没躲过天涯这一波

上周还吐槽那几家顺便感慨自己还好没中招, 今天把 天涯数据.kz 拖下来, 红果果的发现了笨狗的用户名和那个弱的不能再弱只在挫站上用的弱密码, 邮箱居然还是已经不存在了的一个. 话说我怎么会注册天涯呢, 从那个邮箱来看, 应该是在 06 年或更早的时候注册的, 那时候怎么就脑抽要注册个天涯呢, 难道是为了看那个 红色帝国的暴力美学 那个帖?

  1. 用户名是我的, 邮箱已经因为太久没用被服务商关停了
  2. 密码是弱密码, 某些很久没更新密码的挫站估计还在用, 有心人不用费心试了
  3. kz 用 KuaiZip 解压, 估计他们家软件的安装量这两天翻了至少几十倍
  4. 果然文本可以压出很恐怖的压缩率, 1.71G 的 50 个 txt 就被压成了一个 377M 的 .kz, 不过解压速度也放在那, 花了快 6 分钟

CSDN 这个杯具带倒了整个茶几

最近几天要是哪个 IT 民工没有关注 csdn 密码这个事情, 估计要么是被抓去封闭开发了, 要么是死了. 如果还需要回顾下, 具体的事情经过可以参考 http://csdn.aspx2.com/, 按我能统计到的资料, wooyun 的 http://www.wooyun.org/bugs/wooyun-2010-03523 应该是最早的公开信息源, 具体的下载链接我还是不发了, 自己找吧.

csdn 那个库的真实性还是挺高的, 至少周围有不少人能验证上, ACRush 和 Matrix67 都被爆了, 而且被爆的很难看. 但根据网络消息和 scat 等人的人肉分析, 那个库的泄漏时间应该在 09 年. 其他库的真实性存疑, 至少传闻的人人库应该也是 08 或 09 年的数据, 那时候人人还叫校内吧? (刚查了下, 改名是 09 年 8 月的事) 而且密码有效率比较低, 很多能登陆的帐号也都是僵尸号, 没什么内容, 倒是有可能就是以前恶意注册的一堆水号资料被注册的人不小心弄丢了. 而且今天继续流出的新浪微博那个文件 (weibo.com_12160.dbh) 和人人库 (xh-2.txt) 几乎是一样的.

问了人人安全组的人, 以及和人人网黄晶的一些状态互动, 我还是相信人人应该不至于干明文存密码这么弱的事情. 不过从 wooyun 上 http://www.wooyun.org/bugs/wooyun-2010-03337 这个漏洞的回复, 和今天人人上某好友用 HttpFox 检查的结果来看, 这个漏洞很可能是真实存在的, 但是我把这个 bug @黄晶 的时候被否定了, 求有时间的人去验证下. 这种浏览器明文传输密码的事情在 KO 和 littleken 他们做 WOJ 第一版 (Noah) 的时候就被人搞过, 后来通过 SHA1+salt 加密密码, 并在浏览器提交数据前就加密, 才搞定这事.

更多的跟进消息可以见 aspx2 的那个页面, 分析上我个人比较赞同 http://www.36kr.com/p/71020.html 里面的说法, 主要的问题是 1) 新人不懂; 2) 脑残需求; 3) 历史遗留; 4) 政府要求; 5) 站点私心. 问题一个比一个严重, 而且越来越难修复. 一般来说新人不懂还是可以很快学习到, 脑残的需求还是可以被有理想的程序员拍回去, 这两个还算简单, 解决起来也容易. 历史遗留的问题一般大家都不敢动, 能用的系统你没事去改什么改? 又不算 KPI, 再说了, 改挂了谁负责? 而且很多程序员对公司并没有那么大的认同感, 都抱着 “反正过多久我就不在这了, 只要不在我手上出事” 的念头干活, 也难怪现在的很多产品烂成那样. 政府要求这种真的是一朵奇葩, 不过我倒是觉得与其明文存密码, 还不如给政府提供超级通道, 让他可以直接进来, 这样虽然都是被强奸, 好歹也算戴了个套, 痛是必然的, 好歹不会得病和怀孕啊. 站点私心这种完全就是流氓行径了, 小站还有这样可能, 做大了的站应该就不用靠这个赚钱了吧, 还是说这样来钱还是要快很多, 大家还是想赚快钱? 话说开个色情网站用来收密码好像是个挺不错的想法?

目前我看到对此事件的阴谋论包括: 1) robbinfan (csdn 那个头) 得罪了人; 2) csdn 和黑帽价格没谈拢; 3) 反抗政府实名制. 前两个都是就是论事, 听起来也很有道理, 09 年的库现在才爆发, 中间应该在黑市上已经流通很久了, 事实上这么一想, 很可能还有别的新库正在黑帽们手里流通着呢, 而我们还傻乎乎的说还好这次没被爆掉. 反抗政府实名制, 其实也有道理, 让大家看看网络到底多不安全, 还实名个腿, 下次漏的可能就是身份证号和家庭住址了, 再愚昧的民众也会起来反对的. 我个人对反抗实名制这个阴谋论还是挺满意的, 让民众开化最好的方式就是革命, 而革命必然会很痛, 这次痛的人多了点.

一些趣闻八卦

  • CSDN 杯我最喜欢的密码, CSDN 杯程序员最喜欢的邮箱等活动真是大大锻炼了大家的脚本处理能力, 挺好的技术普及活动. (话说为什么我的角度总这么奇怪?) 今天上午面别人就顺手拿这中间的活动所需技术当面试题给出去了, 不过结果不太让我满意 :(
  • 很多爱情段子, 算是本次惨痛的茶几颠覆 (一地杯具) 事件为数不多让人感到温暖的地方.
  • csdn 有两个比较难理解的高频密码, 一个是 dearbook, 这个我猜到都是 “第二书店”, 就是 csdn 的一个业务; 另一个 xiazhili, http://www.guokr.com/ask/item/81227/ 的 12 楼真的太牛逼了…  (正解答案: xiazhili 是 csdn 下载频道 09 年上传比较多的一 MM 会员, 众多程序员意淫的对象, 故 xiazhili 作为密码不足为奇)
  • 类似 “ppnn13%dkstFeb.1st” (娉娉袅袅十三余,豆蔻梢头二月初) 的密码, 果然是文艺到家, 其实我猜这是某百度员工的杰作? 因为百度的很多密码就是唐诗宋词中的某一段变换而来, 连内网给的好密码样例都是 “Hhzstsla!” (黄河之水天上来啊!), 而用过的类似密码更是不计其数. 话说 MySQL 好像也是个好密码? (明月三千里, 好冷…)

有关密码安全机制, 我自己的密码一直是分级的, 目前来看还算安全. 数字密码有一个纯 6 位数字应对脑残的只能用数字做密码的场合 (比如某些电信业务), 有一个好点的 6 位数字密码拿来给银行卡用. 网络密码有一个 6 位弱密码用来注册那些我不甚信任或无所谓的网站, 丢就丢吧, 反正也不是多大个事, 有一个 8 位的大小写字母加数字做一般强密码 (有些地方不然用特殊字符), 最后有 8-12 位的强密码来把关最后的核心业务 (gmail, 网银, 支付等, 且跟钱有关的都分开设定).

设定密码的方式其实用中文拼音转换就挺好的, 很多字符做下变化就模糊掉了, 比如 {数字 1, 大写字母 I, 小写字母 l, 特殊字符 !} 就是个很好的互换集合, 类似的还有 {数字 0, 大写字母 O, 小写字母 o} 等等. 做个样例: “不怕猪一样的对手” -> “bpzyydds” -> “bPz!yDd5”, 这样就又安全又好记了.

我个人建议密码还是学我那么去保存, 或用一个开源的密码管理器来管理, 开源的意思是至少自己信得过这个东西, 不然这一丢更惨, 所有的都没了.

[谣言辟谣阴谋论] 最近某事

-1. 造谣前先说个八卦, 他喵滴寨厂总部停电了, 半个小时前, 我现在回家了…

  1. 本帖说大家最喜欢的 造谣, 辟谣, 阴谋论. 依旧, 笨狗不对这里面任何东西负责, 都是我家键盘坏了出来的, 所有不代表笨狗, 也不代表寨厂的观点, 不代表赞成或反对或对其中啥玩意儿有想法

  2. 经典的谣言来源, 我同事的亲戚的朋友:

朋友在央视网,找他打听了下。背景如下:
1、中宣部、国务院新闻办、国家互联网信息办公室认为,目前的互联网太乱了。给央视下命令,通过报导揭露互联网乱象和诚信问题,予以改善
2、央视选了多家互联网公司做系列报道。百度很不幸第一个,接下来轮到谁还不知道

// 造谣: 因为要搞所有网媒, 所以大家都不说话, 没人落井下石, 因为下一个可能就是自己

// 造谣: 搜狗/搜狐是国家队卧底, 理由是央视好像从来没搞过他们, 然后他们每年居然有那么多北京户口名额? 这次也只有搜狐出来做污点证人. 腾讯那个, 我觉得是被钓鱼的

// 阴谋论: 先拿百度下手是因为以前收保护费收的轻车熟路, 先说虚假广告, 然后说贴吧, 接下来可能会是天涯/猫扑之类的论坛, 再转去微博, OK, 全部拿下. 你说门户? 门户说什么还不是 diang 说了算

// 辟谣: 这次不应该是国家搞我们, 不然就不会只放 C2 一条狗了, 至少 C1 和新闻频道也提一下这事吧, 最好是新闻联播提一下, 焦点访谈做个专题, 新闻三十分再狠狠吐槽一把, 再把什么今日说法也捆上. 看看 08 年那次, 都只是想收保护费, 都 N 多频道一起上了

// 吐槽: 晚上和几个老大一起吃饭, 说 CCAV 也可能是被人当枪使, 没办法. 老大问我, 如果肉饼要你让每条广告多收五毛钱, 你干不干. 我说显然不干啊, 又不是出去了没饭吃, 做人还是要有点基本道德的. 不过顿了下, 笨狗继续耍流氓, 说如果要是不做会饿死, 那还是干的, 失节事小, 饿死才 TM 事大, 好死不如赖活着, 也许 CCAV 的妓者就真的是没办法, 因为这些没节操的离了 CCAV 还真没地方混饭吃 (多收钱这事只要老大点头, 我是可以做的, 别说五毛, 五块都可以)

// 辟谣: CCAV 钓鱼那个网站, 用正常的证件和网站骗过审核, 正常做了几天广告后, 半夜改成骗子网站, 第二天一上班就被寨厂审核毙了, 可惜, 几个小时完全够无良妓者拍完再蒙太奇一把了

// 辟谣: CCAV 钓鱼寨厂工友, 被寨厂工友出示录音记录做无罪证明, 果然不管是对照片, 还是声音视频, 剪的好都会有很神奇的效果, 断章取义什么的不是无良妓者们的最爱么, 比如山西醋 95% 都是工业醋是谁说的来着?