之前跳槽的时候加了好多刷题群,在群里问过很多问题,也从其他大佬分享的经验里受益匪浅。 所以跳槽之后我也没有退群,希望能够分享一些经验给后来人。 在这类群里水的多了,就经常能看到很多人在“炫技式编程”。 比如列表推导这种入门级别的;进阶一点的就是TMP,脑子展开的时候经常容易溢出;更高端点的就是宏+TMP,基本上想上一天能想明白这代码干了啥。 我刚开始工作的时候也特别喜欢这么写代码,感觉每次不加点语法糖就浑身难受。那时候用C#,基本上是能上LinQ的就绝不用循环,能用异步的就绝不用同步。后来用了python,能列表推导就不写循环,能lambda就不写人话。再后来,有一次要给别人讲我的代码,点开文件后我自己都懵了——这是我写的?这在推导啥?这个lambda 在干啥?这都是个啥啥啥(王宝强脸)? 随着看的代码多,写的代码多,收到的评审多了,我慢慢的感觉到学习一门编程语言的边际效用:当你对一门语言的特性应用的越多,你的代码的可读性就越差。而且当你用到生僻的特性或者方法时(哪怕是标准库里的),很难保证未来修改你代码的人是否同样也熟稔这个特性,他可能也会像你不熟悉这个方法时一样大挠头皮,然后翻阅文档,最后找到这个方法,然后以掉落几根头发的代价掌握了这个方法并读懂了你的代码。 所以学语言学到这么一个平衡点的位置就好。再多钻研下去,除非你立志想精通这门语言,否则意义不大。不如更好的着眼于如何安排结构、架构,对未来的发展更有意义。

Read More → 编程语言的边际效益

2019年对我来说是一个圆梦之年。这一年买了几件电子产品:M10, iphone 11 pro,ergodox,。还借了借件电子产品: iMac, pixel3 XL, ergodox ez. 顺便还体验了一段时间的chrome book. 接下来是对各个产品的一个总结 最有价值& 最有逼格:Leica M10 黄铜铸就,健身伴侣,帕金森患者的福音书。 街拍神器,护体利器,激励我学习的永动机。 纯手动用起来真的是有门(逼)槛(格),黄斑我练了一个多月才能够合焦准确。不过确实是德味满满,尤其是夜景,真的是好看。也迫使自己开始研究拍照,要不然这么贵的相机岂不是浪费了。 至于最有价值,这相机买来就涨价,都成理财产品了…… 最关爱身体:健身环大冒险 自从买了之后就开始了日日深蹲活动,感觉自己离健身达人已经不远了。感觉是那种买了就会觉得自己已经变瘦就不需要健身的产品了。嗯买了就会瘦,可以放开吃了! 最佳体验:iMac Pro 实话实说开发机用iMac是真的舒服,性能强劲,显示效果极佳。本来想在家配一个一样的机器,看了一下开发机的配置和价格之后我就放弃了——$6999 真的只能是地主家发的金锄头了,长工真的是消费不起。 最平滑升级:iPhone 11 pro 没有惊喜也没有意外的升级,从8升级到11之后终于用上了face id 解锁。ios一贯的平滑迁移,让我无缝衔接新老设备。 最轻薄:Chromebook Chromebook真的是轻,跟Mac book pro比起来跟玩具似的。而且还支持触屏和手写笔做笔记,第一次接触真的感觉不错。不过最后我决定把它换成macbook 的原因有二:chromebook 的触控板太差了;chromebook 没有像alfred 这样的杀手级应用。 最刚需:Ergodox EZ 刚买键盘的时候,同事老秦问我这键盘如何。我说你要是有腱鞘炎的话你会爱死它,你要是没有腱鞘炎的话会恨死它。 现在有腱鞘炎的我已经离不开二狗了,而健康人秦老板买的二狗已经吃灰很久了。 最吃灰:la metric 这东西是我看C菌的视频时种草的,当时特别迷它,买来了之后还给它写了个插件,后来发现因为在家里没有办公桌,最后只能放在那儿吃灰。 最失望:Pixel 3 XL 整体来说和pixel 2 XL 体验一致,而且我那台指纹识别还出现了问题,现在只能用密码解锁手机。各方面和2都没有明显的提升,连挤牙膏升级都算不上。

Read More → 2019电子产品及周边剁手总结

与年龄呈负相关的,除了发量还有记忆力 ——沃资基硕得 最近事情很多,过年,冠状病毒,封城,隔离,perf,项目……坐下来想写点什么的心思都没有。 本来年初想写个年终总结再加个新年立志,后来想想19年一年似乎也没干什么,职场高光都是在18年了;19年前半年划了四个月的水,又用了半年wrap up,剩下三个月基本上是快放假了划划水。今年回来才体验到due 卡到脖子上急吼吼的拽着同事干活的感受。 再说立志这个事,我觉得除了“我今年想买个XX”之类的愿望值得写,其他的真的都还是憋在自己的日记里吧,要不然等再过个三五年被翻出来批评一番会觉得当年太中二了(画外语:你们有人翻过自己的人人或者qq空间么?)。当然三五年之后有人愿意翻这破玩意也算好的…… 最后说说记忆力这个事。我强烈觉得自己是单线程生物,在线程切换这方面不是很好。尤其是并行的项目多了之后经常抓狂。后来跟隔壁的小哥学了一个很好的方法:记笔记…… alright,写完之后继续看代码去了。

Read More → 杂事

原来电影里的都是真的 每年在拉斯维加斯都有一个展销会。我父亲以前是很少去的。自从我来美国了之后,这个展销会却成了为数不多的碰面机会。所以经常是今年我去拉斯维加斯,明年我父亲来纽约。 今年又轮到我去维加斯了。因为之前那次去维加斯没看成什么好的秀。于是这次我提前订了太阳马戏团的KÁ,订好了宾馆租好了车,准备当一次尽职地陪+翻译。 奈何从纽约直飞维加斯的飞机不多,并且为了在他们落地之前我先料理好一切事宜,于是我订了早上6点的机票。如果一切顺利,我会在上午9点左右落在Vegas,提了车子,等他们落地先接他们去吃顿好的,然后去宾馆休息下,晚上再去看个秀。完美。 于是我早上3:30左右起床,洗漱,然后4点多打车去了机场。强忍着困意领了登机牌,过了安检,在候机厅等了半个小时,等到5点多的时候开始有人排队登机了。这里要吐槽一下纽瓦克机场:我的登机牌上写的是Gate 41,然后 1.Gate 41那里没有显示器显示登机航班,2. 他根本没有Gate 41,只有41A和41B,而且是紧挨着的,两边的队伍都连在一起了。当时考虑到这个时间起飞的飞机应该就是我要乘的航班,于是强忍着困意站起来排队。到了我的时候,机组扫了我的登机牌,并挥手让我进去。于是我就进了飞往迈阿密的航班。 本来到这里依然是可以发现我做错了航班的,但是一来我太困了,上飞机就开始睡;二来我本该坐的航班的座位在去往迈阿密的航班上竟然是空的。于是我上机倒头就睡,全程都没觉得有问题。甚至到飞机快落地的时候听机组说local time是9:02 —— 我“应该”坐的那班航班是9:10落地。当时我还庆幸居然提前了8分钟落地。 落地之后我就懵了——怎么是welcome to Florida? 然后急忙忙的开始联系重新订票,联系宾馆late checkin,最担心的是我那语言不通的老父亲要在Vegas等我8个小时(后来远程协助打到了车,入住了宾馆,KA的票也退掉了)。在餐厅的时候还和服务生卖了个惨,她听闻我要在机场等8个小时,送了我一瓶苏打水(同样的招数在想升舱的时候被识破了,并没有任何同情价/折扣)。 最后统计一下,整个损失是: 吃了两顿机场餐(尽管有21块钱的代金券,依然自己掏了20块) 比预期晚了11个小时到Vegas KA秀没看成 整个事件中学到的教训是: 再困也要问一嘴。。。。工作人员都太不靠谱 不要买早上9点以前的机票 随身带switch是我做的最正确的决定。 另:坐上飞往Vegas的航班,点开娱乐系统看电影推荐,前三个里面有两部是home alone。sigh.

Read More → Fly Alone

一个也不能分割 今天美东时间早上十点pixel 4 发布了。与它同场发布的还有stadia,期货耳机,pixelbook go,还有nest home mini。 本来计划看直播的我,因为和同事讨论一个问题,一直到10:40 才开始看直播。20分钟之后,发布会就结束了。开始只以为发布了pixel4,后来重新看了发布会:一个小时里居然发布了这么多硬件产品?? 对于pixel 4 本体,浴霸镜头早在8月就在推上自曝了;相关的soc也被各路媒体根据供应链猜的八九不离十;soli(雷达芯片)更是四年前就布好了局。唯独一丢丢让我惊艳的就是手机摄像。居然都能拍星空了! 记得17年在阿拉斯加拍极光的时候。有个老哥吐槽我说:“你用的啥破相机,拍的星星还不如我用手机拍的多”。我看了一眼他的星空照,满屏的“星星”基本全是噪点。这回pixel 4拍出来星空的成图真的很惊艳。还有那个super zoom,真实贯彻了“software defined camera”。 然后stadia,11月19终于能玩上了。(嗯,没了,就这么一句话带过) google home mini改名叫nest home mini了(那是不是以后要说hello nest了?)。新feature:挂壁。 pixelbook go,据说安全性上提供 titan M级别的加密。多了粉色! 全程看下来,感觉除了Rishi削微有点激情,其他人都在看着提词器念稿。尤其是Ivy,pixel book go 和可再生能源那段看的我尬死了。一个小时的日程安排也是有待商榷:这么多硬件特性,本来每个单独提出来讲讲,发布会摊到两个小时时长都会很好。生生压进一个小时里,感觉就是拿着佛跳墙的料,做出来了个乱炖。

Read More → Pixel 4 和它的小伙伴们

翻译腔依旧 Change List(CL) 是一个公开的,包含有“修改了什么”,以及“为什么修改“的记录。它会被永久的存储在版本控制系统里。并且,不仅仅是你的组员,其他部门甚至其他公司的工程师也常常会参考这些CL描述。 如果你的CL描述过于含糊,重点不明,或者只是简单的“修复bug”,“重构”,“重排格式”,那其他的工程师将很难通过仅仅阅读CL描述来理解你做了什么。同理,当你在阅读别人的CL时,你也不想每次都阅读长长的代码,而是希望有一个简短精准的描述告诉你他/她做了什么。因此,本文档将概述如何写易读易懂的CL描述。 第一行 简短描述你在CL里做了什么。 完整的一句话,尽量使用祈使句。 后面加一句空行 CL描述的第一行应该是一句简短且具体的做了什么的总结,和一个空行。因为大多时候代码搜索工具在显示历史树的时候,它会显示每个CL的第一行。所以第一行应该具有足够多的信息量,这样其他工程师不必点开每一个CL,阅读它完整的描述才能知道这个CL做了什么。 按照传统,CL描述的第一行应是一个完整的祈使句。比如,说“Delete the FizzBuzz RPC and replace it with the new system.” 而不是“Deleting the FizzBuzz RPC and replacing it with the new system.” 不过,除第一句外,剩下的CL描述不必都是祈使句。 正文应当信息丰富 除第一行外,剩余的描述应当提供尽量多的信息。它可能包括对要解决的问题的简要概述,以及为什么这是最好的方法。如果该方法有任何缺点,均应在CL正文中提及。如果有与之相关的设计文档,bug 号,基准测试的结果等,均应提供相应的链接。就算CL只有一行代码修改,也应尽量包含上下文信息。 最差实践示范 “fix bug” 是一种最没用的CL描述。工程师们无法获知:修复了什么bug?如何修复的?和它一样糟糕的描述还有: “Fix build.” “Add patch.” “Moving code from A to B.” “Phase 1.” “Add convenience functions.” […]

Read More → CL描述信息的最佳实践

真是浴霸不能 自从ip7之后,我觉得换手机已经不再是一个每年秋季的常规活动了。但是随着我64G的手机被app,照片给填满,换手机又成了我今年的非常规活动。 考虑到5G在纽约还没有大面积铺开。以及就算5G彻底铺开了,其对于手机应用的影响在我来看依旧不大。加上我现在一整套苹果的全家桶用着颇为顺手,于是7月份的时候我就已经准备好买个新苹果了。 20号晚上,我终于喜提了iPhone 11 pro AKA 浴霸手机。 先聊几个比较喜欢的地方:对于第一次用刘海屏的我来说,face id的体验真的很棒。再也不会因为湿手刷不开touch id。真的是 盯~ 然后手机就开了。第二个让我觉得惊艳的就是A13,新手机上Lightroom出图真的是秒出。其三就是三摄的13mm广角效果真的是好,有小鱼眼的效果。最后一点就是每次换手机后都会短暂感受到的续航爆发式提升,一天中度下来手机还剩大概40%的电。 聊过了喜欢的地方,再谈谈不喜欢的地方:第一个ios 13上依旧有很多app没有更新适配好,包括schwab 还会闪退。第二是在刘海屏手机上,依旧有很多app没有做显示适配,所以这些app会有诡异的内容被刘海遮挡现象。第三就是新手机真的沉啊,跑步时放在口袋里打的腿疼。最后就是无home键之后很多手势操作我自己还没适配过来,还没有熟悉很多操作。 最后谈一点相对中立的,就我个人体验来看,iPhone 11 Pro的三摄与我的预期相差很远:除了广角镜头之外,另外两个镜头和iPhone 7 的双摄体验没有太大差别。软件层面上的比如夜景模式等体验也很一般,或者说和我的预期有一定的出入。当然,三个镜头调料的参数强一致也体现了苹果强大的工业水平。

Read More → iPhone 11 pro 不专业极简测评

北大的唱歌也挺好听 最近在搞两个事情,一个是买了 LaMetric然后自己写程序,一个是在听《乐队的夏天》。 LaMetric这个东西真的挺好玩的,给大家种个草,很方便用,又可以DIY。遇上我这个好折腾的主,真是一个好玩具。虽然某人一直怀疑我这个玩具的热度会持续多久。 乐队的夏天里有俩乐队我特别喜欢,一个是大家都爱的新裤子,他们那个别再问我什么是Disco太洗脑了,每次想起来就想问啥是Disco;另一个是Mr.Miss,是少见的人声爵士组合。让我这个爵士乐圈外自封爱好者简直浴霸不能。 说到浴霸,iPhone 新浴霸今晚就可以入手了。本来说我已经过了年年追着手机换的岁数了,但是现在的手机只有64G,基本上装几个常用的app + 照片就满了。公司用的软件都装不下。新手机有512G的我估计可以用个三年吧。顺手又买了Apple Care+。这回可以把常用的app,不常玩的游戏都装个爽了。 说到游戏,最近风花雪月通了之后没啥好游戏玩,不过前几天发现逆转裁判更了中文,又有星际锁链,又有各类动作游戏……别人家游戏烧钱,老任家游戏不仅烧钱还伤肝。 顺便,这回可以好好体验一下apple arcade了,然后等到年底又能体验Stadia。嗯不枉我给Stadia修Bug。

Read More → Misc

谁也不是草莓味的 我一直就比较喜欢听脱口秀:主题明确;一场大概5分钟;不需要看屏幕,带着耳机听就可以;听完了车也就到站了,不误事。 听的脱口秀多了,我逐渐的理解了“喜剧的内核是悲剧”这句话。 众多脱口秀演员中,我最喜欢的有两个,一个是建国一个是思文。两者共同点是,都十分擅长从生活中汲取段子(当然王建国这个谐音梗真的是……)。两人用脱口秀将当代青年面对的焦虑,压力,人际关系困境表达的淋漓尽致。两者中我更喜欢建国一点,毕竟同是辽宁省出来的,老乡情谊还是有的。 建国又开了一档《隔三岔五国仔饭》。和其他饮食节目要么详细教你做饭,要么疯狂灌鸡汤不同,建国做饭时总是给人一种丧丧的感觉。讲的也都是一些:想做排骨焖饭的是饭菜都在一个锅,可以少洗两个锅;炸虾炸久了就不复炸了,怎么吃不是吃;高汤有最好,没有也不能不做饭是不是等等。很丧很随性。 被各类公众号荼毒了许久的我第一次感觉到了这种丧文化的魅力。也许是每一代人到了30ish都会有莫名的焦虑感。而随着互联网的发展,90后的焦虑感被无限放大扩散了。 第一次和朋友吃饭聊创业的时候,提到到某某创业了拿到了几个M的融资,我说这人运气真好。第N次和朋友吃饭聊到创业的时候,听着各种热钱砸脸的故事,我真的有想过要不要去创业。如果有几个M,是不是房子和未来的孩子教育等等问题都不再是问题。后来和某身价过M的大佬讨论,他说教育投入是个无底洞,几个M丢进去可能连个响都听不到。于是我们又一起焦虑了起来:有钱的考虑财富保值增值,没钱的焦虑如何能有钱。 絮叨了这么多也有点跑题了。从脱口秀到焦虑,诸般种种的缘由还是没能与自己和解。看别人在健身就想到自己肚腩的赘肉;见别人在学习就想起自己一直想要考的证书和没翻过的教材;甚至在朋友圈里看到别人出去玩的照片又想到自己今年尚未度假,随即联想到难做的项目,暂时无望的升职。明明自己尚且年轻,还在学习,有正当职业,却一直对自己现状不满,“想要成为不一样的自己”。 众生皆苦,与其焦虑不止,不如正视自己。既然同样是苦,那就努力去做能回甘的茶——比妄想成为草莓来得实际。

Read More → 众生皆苦