相信当时好多小伙伴和我的心情是一样的——懵逼。但 PingCAP 这个公司却更加吸引我了。...我第一次知道测试还可以这样搞,各种故障注入手段层出不穷,目的就是为了去虐我们的系统。现在想想,当初奇叔分享的不正是混沌工程的思想,同样没有想到的是这个主题会成为我后面一段时间内持续耕耘的事情。...程序员都是懒惰的,这个事件之后我们就开始谋划着如何去偷懒,其一是手动实验很难持续,其二是为了更加全面地测试 TiDB ,做一个数据库其实不难,但是如何证明一个分布式系统的正确性和健壮性确是一件很有挑战的事情...项目中,让更多人能够参与进来,Chaos Mesh 为之做了更多工作和努力。...最后附上 Chaos Mesh 社区调查链接,填写有惊喜哦:https://bit.ly/2LzES5o
那时我不太喜欢社交,因此我决定以我所知道的最佳方法来找工作,即开发一个应用程序,这篇文章就介绍了我是如何做到的。...Craigslist有公开供个人使用的RSS feed。RSS feed是网站发送更新的计算机可读摘要。RSS feed能让我获取发布的工作列表,这非常适合我的需求。...有了这个新工具,我的工作流程就搞定了。...我的工作流程 我准备进行下一个任务:从实际发布贴中爬取邮箱地址。 开源技术的好处在于,它们是免费的,而且性能强大。BeautifulSoup能让你在网页上搜索特定的HTML标记。...我知道最终目标是什么,真正的挑战是将正确的部分组合在一起,从而实现最终目标。每一步都有不同的挑战,整个过程中我学到了很多新知识。
给出我的解决方法,不一定对你的症,也不一定对我下一次的症。但至少,我把病根抓出来晾晒。 前面的所有工作都不说了,最终我发现是由于内存被占满导致无法正常进入图形界面的。...我去看了,原创作者是那样解决了,底下一堆评论问为什么他们那样做不能解决。那不是废话吗,环境都不一样。至于网上其他抄袭的底下根本没评论。跟着做大概率是不行的。...我来解释一下这第三步操作是什么:是清理内存碎片(就像手机内存不足的时候清理一下垃圾)。这我在外面就可以做的事情,做了无效的。 那个博主我挺佩服他的,虚拟机上能有那么多的垃圾?...删除大文件,卸载大软件,是最快的。当然,要是愿意一点点做内存清洗我也没意见。 最终的目标是要开机,其他事情都可以靠边站,要开机,开机!!!...5、临时挂载命令:mount 分区路径 预挂载路径 6、如果挂载错了,想取消挂载:umount 分区路径 或 挂载路径,我为什么写俩,自己机灵点。 ---- 至此,问题解决。
本文首发于政采云前端团队博客:我在工作中是如何使用 Git 的 https://www.zoo.team/article/how-to-use-git image.png 前言 最近在网上有个真实发生的案例比较火...Git简介 在介绍 Git 的相关操作前,我觉得非常有必要了解 Git 的由来,以及 Git 是用来解决什么问题的。...Git 的工作区域和流程 要想弄懂 Git 是怎么对我们的代码进行管理的,那首当其冲的是了解 Git 的工作区域是如何构成的。...Workspace:工作区,就是平时进行开发改动的地方,是当前看到最新的内容,在开发的过程也就是对工作区的操作。...此时,我正在开发一个新功能,修改了 1.js 文件里的内容 ?
最近字节的朋友要在公司分享Copilot,但是他们公司当前是禁止使用Copilot的,所以找到了我。正好总结下半年来的使用感受。 减少重复的、逻辑少的工作。...例如经常写依赖注入wire的New方法,没有包含太多逻辑,仅仅是依赖注入,初始化对象。针对这类代码,Copilot一般都能正确生成。...例如已经编写普通Url分类功能的代码,在编写安全Url分类代码时,Copilot能自动编写同样的逻辑,并使用安全Url分类相关变量。开发人员只需要修改不同逻辑的那部分代码。...Copilot能学习本地项目函数的逻辑,从而生成更符合开发人员期望功能的代码。 函数名、变量名提示更准确、更全面。 相较于IDE的代码提示,提示内容更多、更符合当前项目的风格。...Copilot能编写基本的测试函数,以及丰富的测试用例,从而更全面的测试代码,提升代码质量。 Post Views: 10
数据科学家 Sheila Teo 最终夺冠,成为最终的提示女王(Prompt Queen)。之后,Teo 发布了一篇题为《我如何赢得了新加坡 GPT-4 提示工程赛》的博客文章,慷慨分享了其获胜法门。...提示工程是一门融合了艺术和科学的学科 —— 它既需要对技术的理解,也需要创造力和战略思维。这篇文章汇编了我一路以来学习到的提示工程策略,这些策略能让 LLM 切实完成你想完成的任务并做到更多!...作者注:写作本文时,我试图摆脱已在网上被广泛讨论和整理成文档的传统提示工程技术。相反,我的目标是分享我通过实验学习到的新见解以及对理解和处理某些技术的一些不同的个人看法。希望你会喜欢这篇文章!...本文包含以下内容,其中 是指适合初学者的提示工程技术,而 是指进阶技术。...你脑袋冒出的第一个问题可能是:我为什么应该在 System Prompts 中提供指令,毕竟我可以在一组聊天的第一个 prompt 中提供这些指令? 答案是因为 LLM 的对话记忆有局限。
为什么我会把它和语音助手相提并论,多少有点侮辱gpt了,但是我身边的人不搞技术的人还是比较多的,他们认知里面GPT就是一个相对比较聪明的语音助手,当我试图和他们解释的时候我发现我竟然说不出来什么理由,他确实就是一个比较聪明的语音助手...,这是目前的语音助手的一个简单的工作机制,当然他的实际搜索要远比我说的复杂得多,我只是简单的描述一下他的大致工作流程,那么话说回来GPT解决了上面几乎所有的短板,他可以像人类一样结合上下文和语境对你的问题进行回答...我对提示工程师的看法 最近一个工种的出现,引起了热议,随着GPT的普及,提示工程师的岗位慢慢的出现在人们的视线里,他的工作就是将我们的需求描述给GPT听,以便于GPT可以精准的给到我们希望得到的答案,...,但是提示工程师的出现恰恰说明了GPT的不成熟,一个技术足够成熟的话,是可以接受普罗大众的行为语言,而不是需要通过一个类似中介的人进行转述,这就好比程序员的工作是一样的,我们是将业务方的需求描述给电脑听...,使用编程语言告诉pc他应该怎么做,这样是不是就意味着,随着提示工程师的兴起,程序员就可以失业了,毕竟智能ai可以直接提示pc进行工作,提示工程师可以指挥GPT进行工作。
为什么我要选择Java 最近有一些小伙伴问我,为什么当初选择走Java这条路,为什么不做C++、前端之类的方向呢,另外还有一些声音:研究生不是应该去做算法方向么,本科生不就可以做开发了吗,为什么还要读研呢...其实吧,这个问题搁在不同人身上,回答可能也是完全不一样的。我可能还是主要以我的角度出发,结合一些读者的问题,来说一说为什么要选择Java这条路。...很多人对这个方向趋之若鹜的原因,很大程度上是因为这个方向的薪资高,并且相对工程方向来说,工作强度要低一些。...我是如何学Java的? 教练,我想学Java! 怎么学Java,一个简单的命题,我自己也折腾了好几年,现在虽不能说是Java高手,但也算是小有所成,至少还不至于搞不懂一些基本概念和技术原理。...从我大三那一年第一次在课堂上听老师讲JAVA课程到现在,也已经快4年的时间了,回顾我的学习历程,可以说是充满艰辛的,但又是不断在进步的,所谓道路是曲折的,前途是光明的,大抵就是这个意思吧。
() 运行效果如下图所示: 上面是众所周知的写法。...但如果有一天,你发现我写了这样一个类: class People: def say(self): print(f'我叫做:{self.name}') def __new...一个不能被初始化的类,有什么用? 这就要引入我们今天讨论的一种设计模式——混入(Mixins)。 Python 由于多继承的原因,可能会出现钻石继承[1]又叫菱形继承。...为了保留多继承的优点,但又摒除缺点,于是有了混入这种编程模式。 Mixins 是一个 Python 类,它只有方法,没有状态,不应该被初始化。它只能作为父类被继承。...显然,这样写会报错,因为两个类的实例是不能比较大小的: 但在现实生活中,当我们说 某人比另一个人大时,实际上是指的某人的年龄比另一人年龄大。
03 关于工作 当时发的offer是测试,后来入职后发现是个运维的活。组长是测试经理,算我就俩测试,刚开始写过验收文档,用户操作手册,测试用例,测试计划,写完就写完了,并没人告诉我对不对。...哭泣并不能解决任何问题,只会让别人为你担心着急。 在那之后我就再没哭过了,而且大部分时间都在学习和看书,把时间排的满满的。...当时老板问我师父,你为什么那么爱教他帮他,我师父说,别看他笨呀,可是我就喜欢教他……此时写到这里,我鼻子有点酸了,回老家后,和师傅联系很少了,只是偶尔会通个电话…… 06 关于学习 你可能不会想到,我有多么笨...但慢慢的,我发现,即使发生了天大的事情,脑子里立刻呈现的不是怎么办,而是罗列出一二三四怎么解决,并且迅速冷静下来,就这样,我从一个菜逼在慢慢成长了起来…… 07 关于未来 从第一家公司离职后,我陷入了极度恐慌中...,看到这你可能没想到六哥,在工作一年的时候,测试用例都不会写。
所以我当时的目标是花一个月的时间找一个我觉得靠谱的工作,至少能长期稳定的工作 3 年以上。...最后我也问了为什么选 Go,这位 CTO 给我的回答和上一家差不多 虽然最终也没能去成,但也非常感谢这位 CTO,他是我碰到为数不多会在面试前认真看你的简历,博客和 GitHub 都会真的点进去仔细阅读...但这个的前提是要自己长期记录,不能等到面试的时候才想起去更新,长期维护也能加深自己的印象,按照 “艾宾浩斯遗忘曲线” 进行复习。...这个确实也是说起来轻松做起来难,我最近也一直在思考能不能在工作之余做一些小的 side project,这话题就大了,只是我觉得我们程序员先天就有自己做一个产品的机会和能力,与其把生杀大权给别人,不如握在自己手里...当然这里得提醒下,在国内的企业,大部分老板都认为签了合同你的 24 小时都是他的,所以这些业务项目最好是保持低调,同时不能影响到本职工作。 欢迎关注作者公众号于我交流。
为什么 Go 语言是我最喜欢的编程语言 2017-08-19 发表,上次修改 2020-11-21 我努力尊重每个人的个人喜好,所以我通常会避开关于哪种是最好的编程语言、文本编辑器或操作系统的辩论。...一个示例是 image/jpeg 包:我当时不知道 JPEG 如何在此时工作,但通过在维基百科 JPEG 文章和 image/jpeg 代码之间的切换,很容易就能掌握。...golang.org/x 命名空间也是新代码进入标准库之前的一个暂存区域:Go 1的兼容性保证排除了任何破坏性的改变,即使它们显然是值得的。...在 Go 中,我们认为它们是理所当然的。 入门 希望我能够表达我为什么喜欢用 Go 工作。 如果你有兴趣开始使用 Go,请查看人们加入Gophers slack 频道时指出的初学者资源。...注意事项 当然,没有哪个编程工具是完全没有问题的。鉴于这篇文章解释了为什么 Go 是我最喜欢的编程语言,它的重点是积极的一面。不过,我还是要顺便提一下几个问题。
遵守这条规则,你就能确保 Hook 在每一次渲染中都按照同样的顺序被调用。这让 React 能够在多次的 useState 和 useEffect 调用之间保持 hook 状态的正确。...,在 Dan Abramov 的 为什么顺序调用对 React Hooks 很重要?...但我的想法是,能不能借助 babel 插件的编译能力,实现编译期自动为每一次 Hook 调用都注入一个 key, 伪代码如下: traverse(node) { if (isReactHookInvoking...也许有一些我没有考虑周到的地方 总结 本文只是一篇探索性质的文章: 介绍 Hook 实现的大概原理以及限制 探索出修改源码机制绕过限制的方法 其实本意是帮助大家更好的理解 Hook。...感谢大家 我是 ssh,目前就职于字节跳动的 Web Infra 团队,目前团队在北上广深杭都还缺人(尤其是北京)。
遵守这条规则,你就能确保 Hook 在每一次渲染中都按照同样的顺序被调用。这让 React 能够在多次的 useState 和 useEffect 调用之间保持 hook 状态的正确。...这个限制在开发中也确实会时常影响到我们的开发体验,比如函数组件中出现 if 语句提前 return 了,后面又出现 Hook 调用的话,React 官方推的 eslint 规则也会给出警告。...ok 自动编译 事实上 React 团队也考虑过给每次调用加一个 key 值的设计,在 Dan Abramov 的 为什么顺序调用对 React Hooks 很重要?...但我的想法是,能不能借助 babel 插件的编译能力,实现编译期自动为每一次 Hook 调用都注入一个 key, 伪代码如下: traverse(node) { if (isReactHookInvoking...我并不希望 React 取消掉这些限制,我觉得这也是设计的取舍。 如果任何子函数,任何条件表达式中都可以调用 Hook,代码也会变得更加难以理解和维护。
你一定知道这个职业,数据科学家被《哈佛商业评论》称为是“21世纪最性感的工作”,并且在Glassdoor上连续三年被评为是美国最受追捧的工作。...最近IBM预计,到2020年数据科学家的市场需求将飙升28%。 这些吸引人的就业前景也让许多人投入数据科学的领域。 那么你肯定会想知道:为什么我要拒绝一份数据科学家的工作呢?...选择工作性质而不是职位名称 令我惊讶的是,职位描述中提到的70%的工作要求并不在实际工作范围内。 ? 我的工作是为不同的公司构建用于可视化的仪表板,当中无需进行数据分析。...当然,数据可视化是任何数据科学过程中的一个重要部分,但是这个工作性质并不是我所想做的事情。...如果你曾经遇到任何类似的问题,我希望你知道,陷入困境是没关系的,特别是当你刚进入数据科学领域时。 花点时间弄清楚,在你的职业生涯以及将来的生活中,你希望实现什么。
出现这个状态表示的是,现在有一个线程正在表 t 上请求或者持有 MDL 写锁,把 select 语句堵住了。 场景: ? 2....等 flush flush tables t with read lock; flush tables with read lock; 这两个 flush 语句,如果指定表 t 的话,代表的是只关闭表...在 session A 中,我故意每行都调用一次 sleep(1),这样这个语句默认要执行 10 万秒,在这期间表 t 一直是被 session A“打开”着。...第二类:查询慢 select * from t where c=50000 limit 1; c是varchar类型的,全盘扫描了,没啥好说的。或者c是没有索引的。 情景: ?...带 lock in share mode 的 SQL 语句,是当前读,因此会直接读到 1000001 这个结果,所以速度很快;而 select * from t where id=1 这个语句,是一致性读
诸如“我想成为一名开发人员并从事游戏行业”这样的目标就过于模糊。你的首要任务是什么?是寻找一个真实的开发工作,还是在游戏行业工作?如果你在游戏行业找不到工作怎么办?...我在2017年12月犯了一个错误:我认为首要任务是找到一份前端开发的工作。但我没意识到,在我的地区 C#/php/Java 的工作与前端 JS 工作的比例为9:1。...你再也不会搞不清:为什么你不能修改一个字符串,或者为什么是通过引用而不是值来传递非基本类型。这对提升你的学习速度,加深你对计算机运行原理的了解具有重要意义。 10)不要跟着视频学习。...而且要注意,很多做这些课程的人并不一定是优秀的程序员;即使他们是,他们也不见得是好的老师。我不是说“不要使用视频”。有很多视频帮了我大忙,帮我理解概念,解决问题,以及看怎么使用一些技术。...假设没人推荐你,没人用你写的代码,你的 GitHub 上是一堆刚初始化或者废弃了的项目,或者是从教程里复制来的一些片段;假设你被问到一些基础问题(其实也是最难的),而你不能自信地给出一个清晰的答案,谁会付你钱呢
看完视频你就明白为什么不能出门了,千万不要放松警惕!(@Ele实验室 ) 在家憋了一段时间的人们,耐心也在一点一点消磨中。很多人已经忍不住开始想蠢蠢欲动了。...他们总有一套自己的理论:我们城市才一点确诊病人,而且在距离我们很远的地方,我就出去一会儿,哪有那么巧合,就感染上了。没事儿的!大街上都没人,我戴着口罩又没事。...疫情的防控工作的防控点或者是成功与否主要在于感染人员是否戴口罩、医院里的隔离床位(或者是自我隔离位)、人口的流动。...因此通过这一次的疫情防控,为了你、我、他,请以后感冒发烧生病之后,能够带个口罩,减少传染率。因为不知道你体内的这一个病毒威力如何。 ?...希望大家不要抱着侥幸的心理!尤其是这几天,很多地方天气变好了,感觉疫情已经得到了控制,但是放松警惕的时候恰恰是最危险的时候!
以前这位人工智能大牛一天可能发好几条推特,然而从3月22日一直到5月1日,一个多月的时间,吴恩达没有再说只字片语。 这个时间,也是外界最关注吴恩达为什么离开百度,下一步要去向哪里的时候。...其中的一个问答环节,主持人是普利策奖得主John Markoff,嘉宾有创新工场李开复、Udacity创始人&谷歌无人车之父SebastianThrun、吴恩达。...Markoff向吴恩达提问:能不能谈谈,下一步你要做什么? “我这阵待在家里”吴恩达回答说:“我老婆说我是她认识的失业者中,工作最努力的。”说完吴恩达笑了。但关于下一步,吴恩达表示还不便透露。 ?...尽管目前还不能透露更多,但有一些猜测已经可以正式否认。 例如,有传言说吴恩达会加盟他老婆的公司,以及有传言说他会加盟腾讯,以及曾经猜测吴恩达会接受软银的投资等等,基本都不靠谱。...值得注意的是,吴恩达一直对人工智能的教育工作颇为投入。 此前作为老师,吴恩达在斯坦福贡献了经典的课程讲授,另外他还是在线教育网站Coursera的联合创始人。前两天,他还在一个教育会议上主讲AI。
动态语言无时不刻在体现动态性,而静态语言也在通过其他方法来趋近于去弥补静态语言的缺陷。 为什么么要使用反射: 反射是框架设计的灵魂 框架: 半成品软件。可以在框架的基础上进行软件开发,简化编码。...关于为什么要使用private访问权限的构造器,使用这个构造器不就不能外部访问了嘛,不也就无法进行实例化对象了吗?...总结 这时候又会有小朋友问: 为什么要这么麻烦,我直接调用不就好了?...写在最后: 我叫风骨散人,名字的意思是我多想可以不低头的自由生活,可现实却不是这样。...你的点赞、收藏、关注是对我最大的鼓励!
领取专属 10元无门槛券
手把手带您无忧上云