我这些天其实除了上班,偶尔和邻居闲聊,还有孩子们朋友过来的话也会闲聊几句,其他大部分时候都是一个人待着,完全没有想要和人交流,而且自己忙的也很乐呵。我本来以后我一个人待着肯定会不适应呢,没想到这么惬意,看来人确实需要独处啊,尤其是娃走之前每天上下班外还要和邻居聊天,一起看着娃玩儿几个小时,大概我的社交被提前透支了,后面就急需一个人待着平衡一下。
独处真的很能恢复精气神儿呢。
我的朋友V又问我借床上用品,说的还冠冕堂皇的,说自己的公公要来伦敦,她没有多余的床上用品,而且就用这么一次不值当买,所以要问我借然后洗了还给我。问题是她说的理由只适用于她不想多买一套床上用品,不适用于我要把我的借给她啊。我家每个屋的床上用品都是分开的,我常用的为什么要给一个陌生老头用,哪怕她洗了再还我,我也不舒服啊。再说,只用一次不值当买的理由根本站不住脚啊,她去年就问我借过一次啊,说自己的堂姐妹一家来要用,我当时还借给她了。但是这次一个陌生老头用,我真的不想借。还好我最近收拾家,从阁楼翻出来以前的床上用品,反正我也不用了,我什么话都没说,直接拿给V,跟她说自己留着吧。
我和V还有H三个人本来关系最好,但是今年明显大家的往来减少了许多,当然忙是一回事儿,我忙工作忙菜园子,但是那两家意大利人的孩子经常过来玩儿,我不是也接待了吗?所以我可能是潜意识把一些优先级的顺序改变了,更喜欢跟一些让我没有负担的人来往。H家因为他老公和M的关系,总是回避和这些邻居的往来,明显有自己的小圈子了,我也不想掺合他们之间的事情,所以我和H还是正常交往,但是老公们的圈子就有点分化,进而分化了家庭间的聚会,不过只以妈妈为单位的话还是跟往常一样。
AI辅助写的程序,很多人是很少挨行检查的,我还算好的,改过的文件都粗略看过。我的manager review PR 还是会挨行大概看,就导致有时候他的问题我根本不清楚答案,因为太细致了,我根本没问过claude怎么那么编程。我倒不觉得尴尬,因为AI辅助编程的发展趋势就是这样,人在这里只能做高级审阅者,甚至做不到逐行审阅,AI本身喜欢的面面俱到因而冗长的特点,虽然每次写完程序我都会要求它删减冗余,但是总是不会删减到所有的。
今天参加了个engineering组的会,他们现在的工作方法更系统性,写linear ticket,一个agent来recursively refine ticket,另外一个agent来implement,之后,第三个agent来review,非常系统。我们data science的工作很多时候不是这么直接的,有时候并不能直接通过chat来refine ticket,需要experiment证据来决定怎么refine。虽然如此,还是应该学习一下他们的系统性工作方法在一些工作了比较小的任务中的应用。同事非常好,因为我和M不属于engineering,加上我们这一个月要么度假要么在忙别的,engineering的manager A直接给我们约了时间单独来教我们他们这个系统性的工作方法,也说了可能不完全适用于我们的工作,但是总体来说非常有用。
这个会的后续来了。因为这个会之前还有一个会,我没来得及准备一个新的ticket来做练习,A建议就用现有的ticket,而我其他所有ticket要么在review要么改成done,要么outdated,所以我们就用了M的一个正在工作中的ticket,A说那个ticket的description完全不符合他们的新的工作principle,直接创建了一个新的ticket,然后想加入flow和expected outcome,data science的好多工作内容其实要来来回回地试,很多时候不会有一个特别清晰的flow,反正开了一个小时的会,A用他们的skills帮着创建了一个新的ticket,给我们演示了新的工作流程,M完全不同意这个新的ticket比旧的好哪里去,可能是因为M已经工作了两周了,A创建新的ticket的时候说你就忘了你之前的工作重新来,他并不是字面意思你之前的工作就不要了,只是说如果从头开始工作,那新的ticket应该这样创建,反正他们两个相互不理解,M又总是用否定词汇,我从中协调也不成,J也保持一贯沉默,S中途断网下线了,最后呢,A说自己现在气炸了,byebye,就下线了。
A是engineering组的领导,在我和M转到现在主要做agents的组来之前,他其实是我们的manager。反正所以呢,我就是开会的时候巨尴尬,但是工作很多,我忙起来就搁置这个了。下午吃完饭了M也没来办公室,我给他留言,说希望早上的会不要太影响他的情绪,主要可能是误解,而且我们用一个在工作中的ticket在试新的skills,绝对不是个好主意,我们用新的工作来试试就好了。我也跟他说了我的看法,这个新的work principles其实是让我们在创建tiket之前,多思考,像一个project manager一样思考,这其实是AI使用的趋势,每个人都是一个manager,管理多个AI agent来工作。
我当天的工作内容强制claude code使用我们自定义的skills,然后第二天早上给了A和其他几个人反馈,还有问了问题。我当然把M也加入我们群聊了,和老外工作的一个非常大的好处就是:说话直接是可以的,有问题解决问题,不会出现那种穿小鞋的状况。而且他们都是男的,更是这样的。
再说点工作的事情吧,我其实差不多从cursor完全转向claude code了,还没有尝试codex。第一个是因为IT组给了我一个claude code的premium会员,我有fable的使用额度了,还挺高。第二是因为claude code对于解决复杂问题的能力远胜cursor。第三是因为现在的工作习惯是每天有工作总结,都是agent帮忙做的,那就最好用同一个公司的agent做大部分的工作。我其实没有用claude code的desktop app,因为不喜欢vibe codeing,我是在cursor的terminal下用claude code 的ide extension。我还是一个老程序员,习惯我能看到directory下所有的文件,习惯editor,而不是agent给我显示它改了哪些内容,我在不知道他们在哪个路径下就直接审核,这对我来说还是有点可怕。当然这只是我现在的感受,我一年前还不怎么用agent呢,现在不也是把claude code当成我最重要的工作伙伴了。另外一点是简单的问题我还是会问cursor的agent,它的回答速度要快很多,再说简单问题一般我也不会记入每天的工作日志中。
周四早上的demo会,都开始了,我的manager S突然跟我说,我们展示我们的工作吧。我说好,迅速测试了我们新上线的API,又pull出我们的文档,跟S说我准备好了,你来讲,我来展示。S说工作是你做的,应该完全由你来讲。我说好,迅速share screen,展示了我们的新的feature,解释了为什么我们需要做这个,还有拉出文档,展示了跟之前几个版本比现在的节约的资源比例。问了S有没有什么要补充的,S说没有,我们的环节就结束了。在last minute要求展示工作内容,我也做的很好,不抢功,提议让S来讲,但是S也很好,最终是我来讲的。因为是内部demo,帮我们把api上线的Y没有在这个会议里,我就完全忘了提他了,后来想起来了,赶紧在zoom 的chat里写了:sorry i forgot to mention this but i would like to give a big shout out to Y in T’s team……. 热烈赞扬他的工作速度和质量。
我到底在说什么呢,我只是在展示我的工作原则,这个展示我和S都可以做,我一点都不介意他来做,但是他坚持要我做的话,我也可以做好。另外对我们帮助特别大的同事,必须公开大声表扬。所以我每天和agents认真工作,一天结束做总结,并doc重点工作内容,然后我的工作时间就真的结束了,不会因为没做完什么睡不着觉,不会因为抢了什么功劳睡不着觉,不会因为忘了感谢谁睡不着觉,就是工作结束就真的结束了,我脑袋里不会想工作的事情,第二天早上一早跟我的agent说早安,我们开始今天的工作吧。因为昨天的工作总结,没做完的工作agent也不会把昨天的全部谈话内容pull过来,只用查看工作总结就够了,这样context少了更省token。
claude code的另外一个好处是它的工作方法更透明,我跟它说以后如果我说打开文件,不要显示在terminal,用cursor的editor来显示。它说好,然后会显示这个preference它加入哪里了。我看到它几次都是加入这个project的memory,提醒他这种类似的请求是global的,不是针对某一个project,它也会改过来。
用agent工作的一大好处是可以学很多东西,像我们的api新的deployment需要我们和infrastructure team的合作,我对这个deployment完全不懂啊,在claude code的帮助下也了解了很多,这次的redeployment的需求就写的非常清楚,不会像上次一样,只知道改好我们的代码,甚至根本不知道image是我们这边来创建的,Y上次做了很多我应该做的东西我都不知道。因为这次的需求写的特别明确,加上Y本来工作能力就好,我们的新API几个小时就上线了。后来我们又改了一些内容,Y的team甚至告诉我可以自己在他们的repo创建PR,他们来审核就好了。claude code又帮我写了一个的redeployment的工作流程方便下次用。和agent工作虽然学东西很快,但是感觉都不是很深入,我很多时候都会刨根问底,或者告诉它我不懂让它用更generic的语言给我讲一遍。使用agent迄今为止,其实我只有一个问题还没有空深入研究一下,其他的时候都是看明白的,没有出现那种用agent来解决一个问题,又用agent来审核,自己处于半知半解的程度。当然我也不会借着agent来拖大,跟infrastucture来沟通的时候,会如实说,helm chart这个东西我其实昨天才知道你们用的是这个,如果要加入model的weights,需要你们在chart里加一个initcontainer,因为我不了解这个东西,如果你有困难的话,我们有其他的方法在bake model weights到image里,但是处于model version control的需求,最后是你们改chart。
literally,这个东西两天前我都不知道是个什么玩意,我都不知道infrastucture在用这个东西,但是在跟他们沟通这个deployment的时候,最起码我已经知道有这么个东西了,所以需求提的就很具体,沟通就会很顺畅。但是我对helm chart的了解也就仅限于此了。很多时候我对一些新知识的收纳只会进行到可以使用它方便与其他team沟通,我非常清楚我不会去做他们的工作,当然我也会最大限度的做好自己的工作,比方说下次的redeploy我就会自己创建新的image,跑去改他们repo下的tag,然后交给他们审阅。我当然可以推脱一些工作到他们那边,但是那只会降低我们的沟通效率,再说这些实际的工作都是agent来做,很快的,没什么。
agent会让自己以一种不可思议的速度在成长,但是也不是说我的工作内容轻松了,我实际的代码编程工作少了很多,但是作为supervisor的计划plan,审核review多了很多,感觉大脑比以前累很多。以前的话,不想思考了,我就编个程轻松一下,现在就不行,没什么轻松的环节。





