在本周播客节目中,freeCodeCamp创始人Quincy Larson采访了Lane Wagner。他是一位软件工程师,是freeCodeCamp的积极贡献者,也是Boot.dev在线学习平台的创始人。本播客由Wix Studio的资助支持。Wix Studio为开发人员提供工具,可以快速构建网站,并提供所有开箱即用的功能,然后可以使用代码扩展、替换和突破界限。了解更多信息,请访问https://wixstudio.com。本播客还得到了11,043位通过每月捐款支持freeCodeCamp的好心人的支持。加入这些好心人,通过访问https://www.freecodecamp.org/donate来帮助我们的使命。我们讨论了:- Lane对大学和计算机科学学位的看法- 后端开发以及为什么它与他产生共鸣- 为什么他对Go编程语言如此热情- Lane在人们如何学习方面学到了什么Quincy提到了每年从印度和中国大学毕业的工程师人数(包括计算机科学专业,这通常是最受欢迎的工程学位)。很难找到确切的数字,但是……- 印度:每年超过100万名工程毕业生- 中国:每年超过100万名工程毕业生- 美国:每年只有大约200,000名工程毕业生我们在谈话中讨论的链接:- Lane关于如何获得开发人员工作的4小时课程:https://www.freecodecamp.org/news/how-to-get-a-developer-job/- Lane的5小时HTTP网络课程:https://www.freecodecamp.org/news/http-networking-protocol-course/- Lane的Web开发人员SQL课程:https://www.freecodecamp.org/news/sql-for-web-devs/- Lane通过freeCodeCamp Press出版的免费书籍:https://www.freecodecamp.org/news/author/wagslane/- 可汗学院创始人关于精通学习的演讲:https://www.youtube.com/watch?v=-MTRxRO5SRA- 最近发展区教育理念:https://en.wikipedia.org/wiki/Zone_of_proximal_development</context> <raw_text>0 但是大多数收听节目的听众都低估了你真正应该具备的优秀程度,才能真正作为一名开发人员取得成功。就像在我看来,如果你想成为一名开发人员,为什么不争取成为前10%的开发人员呢?没有什么能阻止你。但是,这也严重低估了实际的空闲时间。
欢迎回到Free Code Camp播客,这是您获取与开发人员进行的原始、未经编辑的访谈的来源。本周的音乐介绍由我自己在鼓、吉他、贝斯和键盘上演奏。我们将回到1990年,玩忍者龙剑传2,我们将回到1990年。
超速驱动。
♪♪♪
欢迎回到Free Code Camp播客。我是Quincy Larson,FreeCodeCamp.org的教师和创始人。
每周,我们都会为您带来来自开发人员、创始人以及科技领域有抱负人士的见解。本周,我们将与Lane Wagner进行交谈。他是一位软件工程师,也是Free Code Camp的积极贡献者。他还是Boot.dev的创始人,这是一个在线学习平台。
本播客由Wix Studio的资助支持。Wix Studio为开发人员提供工具,可以快速构建网站,并提供所有开箱即用的功能,然后可以使用代码扩展、替换和突破界限。了解更多信息,请访问wixstudio.com。
是的。
是的,是的,我一直很钦佩你,我只想首先感谢你为Free Code Camp和社区贡献的许多书籍,完整的书籍。我在节目说明中提供了链接,许多链接指向Lane撰写的不同书籍,当然还有几个Lane创建的视频课程,
Lane在上面创建了关于SQL的课程。天哪,获得开发人员的工作。然后你还有一个关于HTTP网络协议的课程。非常酷的东西。再次感谢你免费提供这些课程。
当然。还有一个关于Go的课程。不能忘记Go。是的。我们将讨论很多关于Go的内容,因为我敢说,这是你目前最喜欢的编程语言吗?是的。已经有一段时间了。是的。
是的,太棒了。所以我很高兴能了解一些关于开发人员就业市场的知识,特别是。让我们开始谈论这个话题,因为人们真的想知道就业市场实际上是什么样的?街上总是充斥着悲观情绪。总有人申请数百个开发人员职位却得不到回复。但是……
在我们进入2025年时,情况与例如2001年相比,从根本上有所不同吗?你大学毕业于何时?不,我长大了。我没有那么老。呃,我毕业了。是的。对不起。我说错了。2021年是你创建boot dev的时候,对吗?呃,它是2021年的一个副项目。我在2022年底全职工作。所以实际上并没有那么久。嗯,
我从2016年开始从事专业编程工作。2016年,好的。那也是我大学毕业的时候。所以2016年,显然离2009年的经济大衰退和COVID大流行都相当遥远。所以你与这些重大冲击的距离大致相同。作为……值得注意的是,你拥有计算机科学学位。
它不是来自一所著名的、知名的学校,但它来自一所不错的……它来自犹他科技大学。犹他科技大学。是的。他们过去被称为迪克西州立大学。它本质上就像……它是一所社区大学,几年前才刚刚升格为大学。是的。从那个项目毕业并申请工作是什么感觉?是的。所以有……
在圣乔治犹他州几乎没有工作,那就是我上学和长大的地方。这是一个非常小的城镇,位于犹他州南部,距离拉斯维加斯大约一个半小时车程。当时只有三家公司雇用程序员。最大的公司可能雇用了大约30名程序员。而另外两家公司可能雇用了大约5名程序员。所以真的没有多少选择。当我还是大四学生时,我非常……我就像……
埋头苦干,努力申请实习和兼职工作,当时我还在大学读大四,所以是我的最后一年。我很幸运……
五个月。不,实际上比这更长。实际上是我的大三学年结束时。呃,我能够找到一份兼职编程工作。我能够在这份编程工作中投入大约每周30个小时。我还在全职上学。嗯,那是我生命中非常忙碌的一部分。仍然不如养育孩子那么忙碌,但非常忙碌。呃,那是为一家当地公司工作的,那不是一家科技公司。它实际上是一家硬件公司,他们只需要有人可以编写脚本用于
用于他们的树莓派和小硬件组件,以便他们可以准确地读取传感器数据,这是我在学校从未做过的事情。所以我必须自学一点。但这很棒,因为我的简历上有一年的经验,所以当我毕业时,或者我应该说随着毕业临近,我疯狂地在线申请,知道我可能必须离开圣乔治,因为再次强调,这里根本没有工作。那时,远程工作
并不常见,对于初级开发人员来说肯定也不常见。嗯,所以我总是认为我必须搬家。嗯,我会把它描述为,你知道,在过去两年里,人们真的认为就业市场非常、非常、非常艰难。我认为这是真的。
但如果你的参考点仍然是2020年,那么在2015年、2016年和2017年,情况并非易事。很容易忘记2020年和2021年是疯狂的,就所有公司都在低利率的情况下疯狂招聘而言。所以我认为它很难,但肯定比2023年中期容易一些。是的。
是的,即使那时,你还比较年轻。你拥有计算机科学学位,我一直告诉人们,计算机科学学位就是计算机科学学位。显然,如果你拥有来自……
麻省理工学院或加州理工学院之类的计算机科学学位,那将更引人注目。但是,你知道,计算机科学学位仍然是某种程度上标准化的,对吧?就像他们可能会假设,你知道,至少一两种编程语言。你可能知道如何使用SQL。你可能知道版本控制,对吧?
我认为几乎每个计算机科学学位课程现在都应该教授这些内容。嗯,然后你,你可能知道一些Linux,你可能知道一些算法和数据结构等等。所以,所以它就像营养标签一样。人们只想看看你是否选中了那个方框,对吧?呃,你没有反式脂肪。所以,所以,呃,
鉴于你已经在就业市场上具有一定的优势,让我们进行苹果与苹果的比较,是的,你和我可能认识许多正在完成学位课程的计算机科学毕业生,我只想明确一点,我们稍后会讨论很多关于自学软件开发的内容,但为了现在进行苹果与苹果的比较,让我们扮演角色,你毕业了
在2024年。也许你将在2025年毕业,你将在2024年末开始申请工作。也许你已经完成了实习。这与你在2015年到2017年期间寻找工作相比,会有哪些不同?
这肯定有所不同。我确实有一个有趣的轶事,那就是我有两个弟弟也获得了计算机科学学位。比我小的那一个在2020年毕业。
呃,左右。所以,而且他立即找到了一份工作。呃,我另一个弟弟实际上还没有毕业。他将在明年毕业。嗯,他已经在镇上找到了一份工作,再次强调,同一个地方,犹他州圣乔治。呃,这并不容易。他不得不寻找大约三个月左右,但这与我寻找的时间大致相同。嗯,所以我想,轶事就是,这仍然是可能的。对。嗯,我,
很难从总体上说,因为你真正能做的就是查看高级数据,它基于地理区域。我认为有一个独特的挑战,那就是
在过去的八年里,人们寻找工作的方式发生了很大变化。嗯,人们发布工作的方式也发生了很大变化。当我毕业时,只是去你认识的正在招聘的办公室并与前台交谈并不是那么奇怪。你就像,“嘿,我听说你们正在招聘。有没有我可以交谈的人?”就像,这样做其他事情并不那么奇怪,这些事情更多的是面对面的,而且你知道,是一种踢开大门的方式。嗯,
现在一切都在线上进行。我对这可能造成的问题有一些理论,但是,呃,仅仅是入门的问题,我认为这是一个更大的问题,即使,而且我并不是说这是事实,但即使2024年的供需与2017年相同,我认为,嗯,
人们寻找工作和提供工作的人之间的联系数量激增。联系更多了。所以即使是相同数量的工作,就像同样100个人都申请了同样的100个工作一样,对吧?所以这意味着每个工作都有100个申请者。即使供需相同,也许以前是同样的10个人申请了同样的10个工作。我不知道这是否说得通,为什么这会让入门变得更加困难。
所以当你使用时,我很想听听你对这方面的理论。你提到你有一些额外的理论来解释为什么事情已经转向在线表格填写。当然,当我得到我的第一份工作时,你可能读过我的书,因为你在你的文章中提到了它,就像我只是去参加一个Ruby on Rails聚会一样,
并且很多人来自同一家公司。然后他们,呃,他们正在寻找一名开发人员。当我还在2010年代初期寻找工作时,呃,那是最好的方式。就像每个人都一样,“是的,不要使用网络表单。不要浪费时间做那些事情。就像每个人都会去尝试结识人们,吃午餐,让自己,去参加会议,去参加黑客马拉松,所有这些事情。呃,而且,呃,
据我所知,仍然有很多黑客马拉松正在进行。仍然有很多聚会。我,你知道,这个周末我正在做一个主题演讲,然后我将在今年晚些时候担任几个黑客马拉松的评委等等。所以,所以我知道它们仍在发生,我想这仍然是一条不错的途径。但是,但是你说很多事情都转移到在线上了。我想我的问题是,为什么是这样?求职者能做些什么来抵制这种趋势?
被塞进那种在线申请工作的流程中,并这样做数百次。当然,我和在OpenAI工作的Logan Kilpatrick谈过,他说他做了
他说他做了大约500份工作申请。这甚至不是什么大不了的事。他只是坐下来完成了它们,因为他知道这是你必须做的事情。但那仍然是你必须做的事情吗?或者仍然存在像只是能够走过去与人们交谈并以这种方式建立关系并找到工作的肉体空间等价物吗?我要说的第一件事是,你是否仍然必须这样做?我会说你仍然应该这样做,即使你还有其他策略。就像
我和很多正在努力寻找新工作的人交谈,他们说,“是的,你知道,我每天在线申请几份工作,没有参加任何聚会。”我能说的只有一件事,那就是你做得还不够。就像,让我们暂时不要太担心策略。你只需要每天花更多时间。
申请工作。就像在2016年,当我申请我的第一份和第二份工作时,我每天会花几个小时填写申请表,寻找我可以实际去往的不同方式。我可以联系到人们。嗯,这并不意味着你需要坐八个小时或任何其他时间,但是你可以在每天坐下来工作几个小时来完成很多事情,嗯,为了回答你关于在线转移的问题,嗯,
我记得当我高中毕业并找到一家当地餐馆的服务员工作时,我和我的朋友一起毕业了。嗯,我在高中的最后一年一直在上大学课程。所以我没有工作,就像,“好吧,我上周毕业了。是时候去工作了。”嗯,
我们甚至没有想过要上网找工作或职位空缺。就像我们只是像一起上我的车,在城里开车,然后走进一些地方。我们就像,“哦,你们在招聘吗?你能像,有没有我可以填写的表格?”我们就像字面意思那样做了两天,就像两个下午。嗯,我们得到了,我们得到了这些,在这些,在这家餐馆一起工作。嗯,
我想说的重点是,我认为关于你如何找到工作的文化心态在过去十年中发生了很大的变化,就像,“不,显然你应该现在,现在你应该像进行谷歌搜索并查看。”但我认为没有什么从根本上改变,因为,嗯,你可以,你可以走进去看看他们是否在招聘。我会打赌,在大多数情况下,至少你会,
通过这种方式更好地入门。是的。因为你真的出现了,他们看到了你的脸,他们能够和你谈一会儿。嗯,你会被注意到。这并不意味着每次都会奏效,但至少你会被注意到。嗯,为什么它转向在线,我,我想这必须是两件事的结合。嗯,
年轻一代被训练成在线做所有事情,因为我们已经将所有事情都转移到在线上了。这就是互联网的工作方式。我的意思是,这是我们的错,对吧?我们把所有东西都搬到网上了。所以如果你更年轻,你只是习惯于做任何与信息有关的事情。你都在网上做。然后是COVID。我的意思是,显然,COVID将很多事情都转移到了网上。是的。我的意思是,COVID加速了许多
社会趋势。当然还有远程工作,我非常喜欢。Free Code Camp一直都是远程的。我不知道。你们所有人都是吗?是的。是的。而且坦白地说,就像
我不明白人们对当面工作的炒作。就像,呃,我曾经当面工作过。我曾经是一名学校主任,并且像字面意思那样与我的员工共用一个办公室,并且每天都与我管理的每个人互动。对。现在我每天都会与我的团队成员进行一些会议。
每隔几个月,也许只是一次简短的,你知道,视频聊天,嗯,看看情况如何,其他一切。我可以像跟踪一样,你知道,获取存储库等等,看看发生了什么。呃,而且,嗯,所以这是COVID肯定加速的一件事。嗯,公司当然正在将人们召回办公室,这很令人难过。我刚刚读到一个统计数据,呃,
过去是七分之一的工作是远程的,现在是十一分之一。所以它正在减少。很多朋友不得不搬家,因为他们的公司说,“好吧,来办公室,否则你就会被解雇”,基本上就是这样。看到经理们没有吸取教训,如果你们需要监督员工……
并将他们置于显微镜下,坦白地说,你们没有招聘合适的人,这就是我会告诉你们的。如果你不信任你的员工,那么你没有招聘合适的人。这是一个你的问题。这不是一个流程问题。但无论如何,我离题了。所以要谈论人们在线申请的现象,
我想提一下,我知道很多人不是所谓的Z世代,就像那些非常年轻的人,但他们年龄在30多岁、40多岁、50多岁、60多岁,他们正在申请工作,并且正在经历类似的阻力以及获得工作的类似困难。是的。
你可以,你知道,使用时光机,你可以去任何地方,你可以查看任何一篇关于找工作的文章,你都可以看到人们抱怨说现在找工作是不可能的。也许你在2020年找不到,那就像,呃,你知道,对于,呃,
拥有开发人员技能的人来说,这是最好的买方市场或卖方市场。而且,你知道,这将很有趣,看看我们是否,我们是否曾经再次经历过这样的繁荣,当时像微软这样的公司,呃,像谷歌这样的公司,呃,只是像招聘他们能找到的每个开发人员一样,并将他们放在一个战备库中,以防他们以后需要他们,因为零利率。对。
看看这种情况是否会再次发生将会很有趣。但是很多人发誓以前从未发生过这种情况,他们甚至可能是高级开发人员,他们都在悲叹找工作是多么困难。就像,你如何调和年轻一代被文化训练成只在网上做所有事情与像我这样的年龄,我43岁,你的年龄,我猜你30多岁,对吧?
不,我刚满30岁。哦,祝贺你开始你人生的第四个十年。我只是不健康。是的。好的。好吧,凭借你的成就,我认为你30多岁了,但我应该不要那么武断。那么你如何调和这一点呢?经验丰富的人在公开抱怨时会有什么感受?请记住,很多人……
我们是美国人,特别是我们有这种,你知道,清教徒的工作道德,而且我们习惯于不抱怨事情。对。抱怨在美国不会让你走得太远。人们不想听到它。这是真的。但是人们仍在抱怨。这说明了一些问题,如果人们真的,你知道,出来说,“这个就业市场太荒谬了”,就像,你认为那里发生了什么?是的。所以。
显然存在问题。再说一次,我认为它没有那么糟糕。所以只是为了让每个人都有一种参考或让你进入我的思维方式,我对世界的看法。这只是,这不是我在断言。这是我对基于我每天与所有学生交谈以及我在layoffs.fyi等网站上查看的数据而得出的就业市场看法的看法。
就像,好吧,从2010年开始,随着Ruby on Rails的出现,软件行业开始出现繁荣。你经历了几乎所有独立黑客软件即服务初创公司的繁荣。
这确实开始获得关注。他们雇佣了一大批开发人员。同样,Rails在这个时期非常流行。Node开始获得关注,Go稍晚一些。它在2010年代逐渐增强。这不像所有人都在获得工作,但开发人员严重短缺。所以这就像工作的数量正在相当快速地增长,
我们并没有以能够跟上工作需求的速度培养新的计算机科学毕业生或训练营毕业生。所以关于2010年代的所有新闻都是,“我们只是没有足够的程序员。就像我们需要更多程序员一样。我们必须有更多程序员。我相信这是你创立free code camp的时候,就像那个周期的早期一样。对。嗯,
2020年到来。就像达到顶峰一样,就像,“我们真的没有足够的程序员。”呃,一切都转移到网上了。Zoom必须疯狂地招聘,对吧?谷歌必须招聘。每个人都在赚取大量的钱,利率为0%。就像我们可以,如果你是软件公司,你可以几乎没有利率地借出500万美元的债务,雇佣一大批程序员。一切看起来都很好。嗯,
2022年发生的事情就像两件事一样。就像所有转移到网上的东西现在都回到线下一样。所以这些,这些公司赚的钱不像以前那么多,利率飙升。所以就像两件事都让一家公司真的想像雇佣太多开发人员一样,太
现在他们不想要这种风险。呃,所以我会争辩说,在2022年、2023年,我们在供需方面确实达到了低谷。很多人被解雇了。现在我的看法是,在2024年,我们已经开始复苏。嗯,它与2020年、2021年不可比拟。我们可能在未来十年内不会再有如此大的差距,或者也许不会。呃,但它开始恢复到我认为正常的状态。嗯,
这意味着在一个正常的市场中,想想程序员的工作是什么。就像当我开始从事程序员工作时,我确实有一些内疚感。就像,“天哪,我赚的钱是我作为服务员时赚的三到四倍。我喜欢我的工作。我整天坐在空调房里。我可以从事一些有趣的脑筋急转弯。
嗯,就像我向外看,我看到建筑工人就像过得很糟糕一样,可能赚的钱没有我多。就像怎么回事?而且就像,我知道成为一名程序员很难,但这并不难。特别是考虑到那时,像我的一半同事都没有计算机科学学位。他们去了训练营。嗯,
所以有些事情看起来有点奇怪。我认为他们就像在一个,在一个更正常的市场中,你会看到人们利用这个事实,对吧?就像你可以学习编码,这增加了供应。所以我想说的是,在今天的市场中,
你只需要,你只需要变得更好。就像那些在其所在任何薪酬等级(例如初级开发人员、中级开发人员)中排名前10%的程序员一样,如果你像前10%一样,你就会得到工作。嗯,
现在,我会说有一个重要的警告,你需要在技术上排名前10%,你还需要能够传达你在技术上排名前10%。因为我遇到过很多技术能力很强但自我介绍很糟糕的人,所以它不起作用。
有一句非常好的谚语。我希望我能记住我在引用谁,就像,“如果你有八十分的技术技能,但只有二十分的沟通技能,你就会传达你的技术技能只有二十分”,这就像,这是超级真实的。所以,嗯,嗯,根本性的最佳建议是,如果你已经做了,我会说超过三个月,就像真的在做,就像申请工作,参加聚会,尽你所能,而你没有在今天的市场中得到任何回应,就像,
我会说现在是时候看看你的技能和沟通技巧了,并且从根本上改进它们了。就像也许,也许你的编程能力不如你想象的那么好,或者也许你不如你想象的那么擅长展示你在编程方面的能力。嗯,因为在,在真正努力工作三个月后,我认为在今天的市场中,这绝对是可行的。是的。是的。
沟通技巧是我会宣传的东西。就像我告诉每个人一样,专注于确保你的英语非常好。如果你正在申请跨国公司的职位,或者如果你正在申请美国的工作,很多人认为他们的英语足够好,但事实并非如此。
人们会非常礼貌,但如果你有非常浓重的口音,北美人很难理解,而你正在北美申请工作,他们不会说这就是他们拒绝你的原因,但这可能是原因。Y Combinator的创始人Paul Graham,他在TechCrunch Disrupt上发表演讲。
这可能是2010年、2011年左右。就像我在黑客马拉松的主舞台上做演讲一样,我们首先上台。这是一场灾难。他们催促我们下台,因为他们试图像做一个例子,说明他们将非常严格地遵守时间安排。所以是300多名演讲者中第一个在TechCrunch上演讲的人
在 Crunch Disrupt 黑客马拉松上,保罗·格雷厄姆做了一个演讲,他非常明确地说,大多数认为自己编程能力不错的人,确实编程能力不错,但可能阻碍他们的是英语水平。我甚至认识一些土生土长的英语使用者,他们在俄克拉荷马城长大,坦白说,他们的英语语法不太好。他们只是勉强能够沟通,你知道的,呃,
就像,我不知道,小学英语水平。这确实有影响。如果你能连贯地表达思想,并且能很好地表达自己,而且不用很多语气词,比如“嗯”和“呃”,我仍然在努力克服这一点,那么人们更有可能认为你很聪明。对。
归根结底,即使你只是坐在隔间里写代码,你几乎所有的沟通都是通过书面文字进行的,你仍然需要能够流畅地说话,你需要足够清晰地表达,以便人们能够理解你在说什么,特别是如果你要使用白板,并且试图沟通一些大的,你知道的,全面的设计变更。
诸如此类的事情,你需要能够真正地表达出来。例如,我遇到过很多来自南亚的人,他们在说英语长大,在学校里用英语作为主要语言,但他们还没有足够的语言能力,因为他们不一定会把它用于学术环境之外,而且他们并没有真正花时间提高他们的英语水平,在某种程度上,
或者规范他们的英语。有一种标准的南亚英语,它与英国英语、加拿大英语或澳大利亚英语一样有效。美国人通常会理解这一点。但是,如果你说的英语是
你工作的人相对不熟悉的当地变体,这将是一个挑战。所以我考虑做的一件事是,你知道的,有很多欧洲人必须这样做,因为如果你听德国人说话,世界上最好的英语教育体系,他们中的许多人仍然难以清晰地发音,就像
如果北美人很容易理解,如果人们不得不花很多精力去弄清楚你说的是什么词,这会把他们的脑力从处理你说的那些词的实际意义中转移开。所以,嗯,所以,所以我和你一样。而且,呃,我只是想强调一下,规范你的英语是值得花费时间和精力的。我不像俄克拉荷马城的一个普通人那样说话,呃,
因为我花了大量时间试图说得更像洛杉矶人那样,因为那是——每个人都看荷里活电影,他们习惯于听到人们这样说话。这使得他们更容易理解我说的话。所以我并不认为这像背叛我的俄克拉荷马州的传统或任何类似的事情。这是一个非常务实的决定,就是尽可能以标准的方式说话,并说我周围人的通用语。所以——
再说一次,为了停止对你刚才所说内容的诗意表达,但沟通技巧是一切。你可能是一个沟通能力很强的平庸开发者,你仍然可以为自己创造职业生涯。作为一个平庸的开发者,你所能达到的高度可能有限,但作为一个优秀的开发者,却难以与人沟通……
的限制将会更加深刻。另一件事是,书面英语并非理所当然。很多人可以说话,然后你让他们坐在电脑前,真正地,比如,写下他们的想法,写出,比如,一个清晰详细的拉取请求或 GitHub 问题,或者类似的东西,他们为此而挣扎。那是……
呃,这表明你需要花更多时间练习你的英语。很多人认为理所当然。我从小就说英语。我是一个英语使用者。这就足够了。让我们继续讨论其他事情。但它确实值得花费大量时间。
重新审视并改进它。特别是如果你正在寻找远程或大部分远程的工作,书面部分变得更加重要。最后一点,我将再次强调这一点,但从不同的角度来看,沟通技巧不仅使获得工作和沟通你是一个优秀的开发者更容易,它们实际上使你成为一个更好的开发者,尤其是在
2024 年,回想一下 2000 年代甚至 90 年代。如果你想成为一名优秀的开发者,并且正在努力解决技术问题,你可能,你唯一的办法可能是你认识的程序员,呃,
IRC 聊天频道或一本实体书来弄清楚 2024 年发生了什么,你解决技术问题的资源是巨大而无限的,你有 ChatGPT。你有谷歌,就像你今天可以更容易地解决技术问题一样,还有困难的技术问题。哦,你不知道如何实现二叉搜索树,很好,你可以从网上复制粘贴一个到你想要的任何语言中,对吧?嗯
我不是说学习这些东西没有价值。我们稍后可能会讨论这个问题,但解决这些问题更容易了。不容易解决的是如何与你的团队其他成员沟通你的代码应该做什么。对吧?所以,就像你可能非常擅长独自完成你的个人项目并解决问题。你甚至没有意识到你正在编写的代码难以阅读和理解,难以让其他人维护和扩展。嗯,
良好的沟通技巧不仅仅是良好的书面英语技巧。它们也是良好的代码编写技巧。你,你,你能够更好地以团队会欣赏的方式格式化代码,你如何构建你的代码。他们将能够更好地使用它。它在面试中显示出来,当你在找工作时,它在 GitHub 上显示你的代码的样子。是的。是的。我一直喜欢将编程比作与计算机沟通。你只是非常字面化,而且,
因为计算机没有人类的归纳能力。他们不能推断出你想告诉他们的内容。显然,随着时间的推移,编程语言变得越来越声明式,我们不必那么精确。将来,我们将
与计算机交谈,它将能够解释我们想说的话。就像如果你使用最新版本的 LLM,它们在试图理解你表达不佳的提示并弄清楚它们认为你想要什么方面越来越好。我认为这会改进。但你所说的只是拥有这种清晰度并能够以结构化的方式思考,让我们过渡到这一点,因为沟通技巧……
只是你如何表达你脑海中已经存在的思想。就真正像程序员一样思考而言,我怀疑你花了大量时间思考思考和思考,你知道的,批判性思维、推理等等。也许你可以谈谈人们在试图以结构化的方式思考时面临的挑战,为什么学习数学和编程等正式主题如此困难。
我将再次错误地引用某人。我不,呃,我试图引用的想法是,类似于,嗯,清晰的思维导致清晰的写作,这又导致更清晰的思维。所以,就像你进入这个虚拟的,这个良性循环,如果你思考清晰,你可以写得清晰,然后你可以,它会,
清晰的写作实际上会帮助你再次清晰地思考。这几乎与以下概念相同:如果你能向某人教授一个概念,那么你在教授的过程中就会学到一些东西。它可以帮助你完善你对事物的思考过程。也许在你脑海中,你用了一些词来描述某事物,但它们并不完全像,你并没有完全以精确的方式使用它们。现在你正在向某人教授它,你必须查阅实际的精确定义。现在你可以更清晰地解释你的想法了。所以,嗯,
我想说的是,你只想进入这个良性循环,并且在你这样做的时候要记住它。对。所以,当你考虑一个程序时,它不仅仅是如何克服这个错误?我该如何克服这个错误?比如,我可以在这段代码中插入什么来克服这个错误?对。我如何获得我需要的行为?比如,我见过很多代码,人们会在其中添加多余的代码行,然后,你知道的,也许三行之后,他们做了一些事情,只是撤销了四行之前的操作,比如,你得到了第三行的代码,对吧?
做一些事情,第六行的代码撤销了完全相同的事情。他们之所以陷入这种状态,是因为他们试图让它工作。现在它已经完成了,实际上,你知道的,你基本上是在给第三行添加三,从第六行删除三。你有一团混乱的,
这并不是因为你是一个糟糕的程序员。这是因为你没有注意每一件事都在做什么。你只是想让它工作。所以……这没关系,尤其是在你刚开始的时候。但如果你真的想改进……
就像,你需要考虑每一件事都在做什么。你真的需要完善你对根本上正在发生的事情的理解,特别是如果你,这是我不鼓励的事情,但很多人无论如何都会这样做。而且,而且,而且人们确实取得了成功。我不想直接说这是一个坏主意。这只是我不喜欢的学习方式,但人们会很早就跳进一个框架,你知道的,使用大量的 API,而不从根本上理解幕后,比如,例如,React API 实际上在做什么。嗯,
为什么,你知道的,钩子按它们的方式工作。你越能继续迭代这种理解,嗯,你的思维就越清晰,你的代码也会因此而更好。是的。但这只是重复。这只是重复。就像我,我没有其他建议,除了像进行重复,并继续,嗯,
消费谈论它的内容,对吧?有很多很棒的播客谈论这类事情,如何组织代码,如何构建代码。嗯,但归根结底,这真的是很多,很多重复。是的。而且,在多大程度上你会,呃,归因于,呃,仅仅是重复和练习的力量以及人类大脑吸收技能的能力?因为你会认为,如果你只是有一些程序,让我们想象一下你有一些电子人大脑,就像你从《星际迷航》中得到的数据,嗯,
而且你可以基本上给他们一个巨大的逻辑表。你可以说,如果这样,那么那样,你可以教他们玩,呃,你知道的,完美的扑克,对吧?有,我不记得这个词了,但基本上你可以完美地玩完美的扑克,呃,
呃,所有统计数据和所有东西都包含在你的所有决策中等等。所以,如果你要给一个强大的电子人像数据,呃,呃,他是一个电子人吗?他不是仿生人,因为他不是器官。他只是一个机器人。好的。顺便说一下,星际迷航,下一代,有史以来最好的节目。如果你还没有看过,它确实经得起时间的考验。它有一些 80 年代的俗气,但它非常有趣。嗯,无论如何,呃,
当我提到数据时,我指的是……如果你看过我们的把戏,那就是那个皮肤灰白、头发向后梳、总是穿着黄色毛衣的人。但是,理论上,你只需要给他一个流程图。我的意思是,这基本上就是一个程序。它就像,呃,控制流,对吧?做什么。然后他可以坐下来,他可以玩完美的扑克。但人类不是那样工作的。人类必须……
逐渐地将我们大脑中的所有皱纹都刻进去。我不认为这确实是那样工作的,但是,呃,我们必须通过我们的联想网络逐渐地弄清楚什么有效,什么无效。而且,呃,你知道的,开发启发式和其他,呃,
工具基本上是潜意识地完成事情,这样我们仍然有带宽来处理更
情况的细微考虑,对吧?请记住,我不是脑科学家。我用的是非常通俗的术语。如果你碰巧是一位脑科学家,并且想来谈谈练习是如何工作的,请告诉我。但是,你会把什么归因于
以及人类,就像重复一样,每个人都谈论重复。你谈论重复,我们的共同朋友 Primogen。呃,你采访过他。我采访过他。呃,我喜欢看他的频道。嗯,有很多开发者在那里。我的意思是,如果你进去,你跟老一辈的程序员谈话,你知道的,呃,编程,对吧?就像所有在 90 年代写书的人,甚至更早的人,人们只是宣扬实践的作用,呃,
你认为实践为什么如此重要?我要说的第一件事是……
我开始 Boot Dev 的原因之一是当时我对看到的训练营感到沮丧。我于 2020 年将其作为副项目启动。所以我指的是我对 2018 年、2019 年训练营的看法,当时的营销是:在极短的时间内学习编码,对吧?比如六周、十二周、十八周,非常非常短,比如从对代码一无所知到在
疯狂短的时间内成为一名可雇用的程序员。在我看来,这意味着疯狂少的重复,疯狂少的接触到作为开发者你会遇到的问题。所以 Boot Dev 的一个主要目标是:不,不,不。我想建立一个平台,专注于
进行大量的、大量的重复,并真正学习所有基础知识。嗯,所以这就像我的,我的,我的哲学,呃,我来自哪里,为什么实践很重要。我认为实际上就像你用《星际迷航》中的数据做出的类比一样,它实际上确实与我们作为人类的工作方式有根本的关系。但我也不是神经科学家。也许你应该请萨姆·哈里斯来谈谈这个,呃,
我们学习,我们练习,这改变了我们大脑中的神经通路。这就是我能说的关于它的生物技术方面。但这只是我们作为人类的工作方式。这也是我们构建的神经网络的工作方式。我们已经构建它们来模拟我们自己的学习风格。但它们会自动重复,因为我们正在以极高的速度将示例馈送到它们的神经通路中。但对于人类来说……
在我们能够将 Neuralink 植入你的大脑并将不同的神经通路直接下载到你的大脑皮层之前,我认为我们仍然只能获得大量的接触并以艰难的方式重新连接我们的大脑。所以,即使我无法详细解释为什么是这样,根据我在 2024 年的经验,最好的方法仍然是……
获得大量的练习,是的,我不知道这是否是你在寻找的答案,我喜欢这个表达“以艰难的方式重新连接你的大脑”,是的,因为简单的方法只是科幻小说,而且它可能在很长一段时间内仍然是科幻小说,嗯,可能不会,我们会看到的,我是一个乐观主义者,我很想能够通过快速眨眼来学习如何驾驶直升机,嗯,我会说有更好和更坏的重复类型,我见过很多
我认为可能没有以最有效方式学习的程序员。但我的意思是,归根结底,进行重复总比不进行重复好。好的。让我们谈谈这个。那么,你会认为理想的重复是什么样的呢?假设一下,这是一个永恒的问题。如果你必须重新开始,你会怎么做?是的。
所以在教育科学中有一个术语。当我还在一家名为 LALTAL 的创业公司工作时,我被介绍给了它。近端发展区?就是那个。近端发展区,我只有听说过它。所以我不能引用研究或任何东西。但基本的想法对我来说似乎相当合理,那就是,
你只想处于这样一个空间,你正在努力做你正在做的事情。嗯,但这并不难到让你完全撞墙而无法进步。你想要在这个,这个,
近端发展区中来回跳动,不做太容易的事情。太容易的事情的例子是,我见过一些开发者只是不断地重建投资组合网站,对吧?嗯,只是,只是不断地用 HTML 和 CSS 做新的设计。就像,如果你想成为一名设计师,也许这是一个提高这方面技能的好方法。但如果你想成为一名开发者,这可能不是,你可能没有努力到足以解决技术问题。嗯,
然后当然还有,还有,还有人走得太远而停滞不前,这只是,你知道的,你正在处理你还没有准备好应对的项目。你还没有学习基础知识。所以你花费的时间比你应该花费的时间多得多,嗯,直接进入最难的部分。所以让自己进入这个近端发展区,并留在那里,在那里进行重复,你应该在那里移动得最快。
好的。所以,如果我必须重述或概括你刚才所说的话,这就像学习的“金发姑娘”区域。它不太容易。它也不太难。你会感到某种程度的不适。是的,存在这种模糊性,模糊性就像敌人一样,因为它使得
不清楚我们是否朝着正确的方向前进,下一步是什么。我一直告诉人们,只使用由了解他们正在做什么的教育者开发的课程。只使用一本好教科书,使用一个固定的课程,比如 freeCodeCamp 课程或 Boot.dev 课程。而且,呃,
相信它会像,它从教学设计的角度来看是设计的,以让你保持在那种近端发展区。而且,很多人也说,但是间隔重复呢?比如我们加入了间隔重复。我们是教育者。我们了解所有这些有效的方法,它们非常有效地编码在 freeCodeCamp 的流程中。如果你只是在谷歌上搜索,并且你像,freeCodeCamp 甚至有效吗?比如我觉得我没有学到任何东西,那是正常的。这完全正常。嗯,
感觉你已经停滞不前,感觉你没有以前移动得那么快。这种进步可能是看不见的。但很多时候,你只是碰到了模糊性,你不确定哪条路是前进的,你不确定你正在做的事情是否有意义。所以,就像《空手道小子》……
80 年代的伟大电影。他必须学习“打蜡”和“抛光”。宫城先生给了丹尼尔很多不同的任务要做。把夹克挂在衣架上。现在把它拿下来。丹尼尔没有意识到的是,他正在发展所有肌肉记忆,所有重复等等,以便在空手道方面变得非常出色。但是……
宫城先生本可以使整个事情不那么戏剧化,而且更像,如果它是真实的,它不会像一部令人兴奋的 80 年代电影,因为你会像,哦,我明白了。所以我正在学习所有我正在致力于肌肉记忆的所有不同的事情,我需要能够格挡攻击等等。
但他没有这样做。所以丹尼尔非常沮丧,他只是说,哦,我不明白。为什么我没有,我什么时候才能真正学习空手道?整部电影,他只是说,好吧,我的比赛就要来了。宫城先生,请你教我空手道好吗?所以 FreeCodeCamp 的课程就是这样开发的,你正在做所有这些事情,但我们也试图有意地提醒你,嘿,这就是你学习你正在学习的东西的原因。我们实际上正在进行,比如,
圣诞节重新发布的全栈开发认证将包含更多理论,因为人们过于专注于获得重复。我们给了他们太多的重复和太少的背景。我的想法是,很容易欺骗自己,让自己感觉好像通过观看 YouTube 视频和阅读书籍而取得了进步,而实际上并没有花费足够的时间不断地敲击键盘。
完成代码。对。所以,所以,所以这是一种,有,有这种混合,比如让人们真正地完成工作,因为他们很容易欺骗自己。感觉不像我学习得像看这个知道自己在做什么的 Twitch 直播主一样快,他们正在做所有这些事情。我觉得我,
我觉得我是世界上最好的程序员,但随后你意识到,好吧,我实际上并没有编程。这是一种现象,我觉得我在编程,因为我在观看是一样的。如果你观看某人非常擅长玩电子游戏,观看感觉非常令人满意,但你实际上并没有在电子游戏中变得更好。也许你通过接触他们如何处理游戏而变得更好了一点。也许他们在大声说话,谈论他们使用的不同启发式方法等等。但是,
归根结底,你实际上必须练习,它需要是有意识的练习,它需要在近端发展区内。否则,你只是不断地重复做同样的事情,这可能有一些价值,对吧?比如,在构建你的投资组合页面并第 10 次重新设计它时,确实有一些边际价值。但也许你想构建一个编译器或类似的东西。它会把你推向一个完全不同的方向,并扩展你的技能,对吧?它就像……
这里有一个 80-20 或 90-10 规则,涉及到实际编写代码与观看、阅读或收听关于代码的内容。其中 80 或 90 应该是你编写代码。而 20 或 10% 应该是你消费关于编写代码的内容。我实际上认为这 10-20% 非常有价值。就像……
80-20 或 90-10 比 100% 编写代码要好得多。它会让你避免很多错误。就像你说的,你会看到……你会听到很多让你思考如何以不同方式编写代码的事情。但 80% 观看、收听和阅读关于代码的内容,而 20% 编写代码则完全是错误的方向。你会取得进步。这将非常非常缓慢。是的。是的。我的意思是,你可以把它看作是某种……
燃料混合物,对吧?喷气燃料将包含许多不同的成分,如果你弄错了过程,喷气机就会爆炸。但学习,学习有点不同,对吧?但是,但是你知道的,存在最佳混合物,我会鼓励人们,所以一件事情,当然你有一个播客 FreeCooking,我们有一个播客 Back in Banter,一个好的播客。我知道你现在正在休息,我希望它能回来,但是
这是一种可以在一天中加入一些学习内容的方式。所以你正在跑步,或者你正在洗碗,或者类似的事情。这是一种你可以用来填补你一天中空隙的偶然学习。如果你考虑一下,你可以用很多盘子装满水槽,然后你也可以倒入大量的水和洗洁精。所以一天的总量是由……
而且有一些大的块状的东西,比如坐在电脑前进行代码会话,坦白说,你可以进行快速浏览,你知道的,就像信息浏览和快速挑战,freeCodeCamp 就是这样设置的。我认为 Boot.dev 也是如此,你可以进去做一些编码挑战,你可以通过这种方式取得一些进步。但在我看来,真正的学习发生在你可以坐下来一两个小时不被打扰,只是
真正地在一个编码挑战上伸展你的大脑。但因为这些资源是有用的,就像你可以打开 YouTube,你可以在开车去上班的路上观看 YouTube 上的东西,或者类似的事情,不要在开车的时候观看。但是因为……
这非常方便,因为我们口袋里这些设备比 20 年前世界上最强大的计算机还要强大,嗯,我们可以轻松地访问所有这些信息。所以我确实认为它非常有用。嗯,
但是,就我个人而言,我会推荐,我很想知道你是否同意这一点,你不必仅仅因为这是我的节目就同意。但我想说的是,如果你真的有一台笔记本电脑在面前,优先考虑编程。你永远不应该在笔记本电脑上看YouTube。你应该总是像做编程练习一样,然后,你知道的,在你离开实际键盘的时候听YouTube或看YouTube。你对此感觉如何?
因为我实际上是在说,我认为我第一次认识你可能是,我的意思是,我很久以前就知道FreeCodeCamp了,但我第一次亲自认识你可能是你在IndieHackers播客上与Cortland Allen的第一次采访。我听了大量的播客,平均每天大概两个小时,有时更多,有时少一点。而且它没有占用我哪怕一分钟的时间。
因为我只有在开车的时候才听。我只有在健身房或散步或做其他我本来也会做的事情的时候才听。我从来没有在坐在电脑前,而我本可以完成工作的时候听播客。我认为很多人没有利用这一点。我认为很多人要么没有利用生活中所有这些空闲时间,因为我们都有。我们都有排队、开车、在健身房的时间,等等。对。
嗯,他们要么没有利用它,要么把它用于娱乐。所以你听音乐,你听,你知道的,有趣的游戏视频等等。并不是说你永远不应该这样做,但是,如果你真的想快速变好,嗯,
那就把它换成教育性的东西。你会进步得快得多。我认为很多人没有这样做。很多人都会找这样的借口,哦,我一天中没有时间坐下来看什么东西。所以对我来说,这是一个很容易获胜的方法。我已经做了八年了。在我职业生涯的前四年,都是编程方面的事情,在过去的四年里,更多的是商业和创业方面的事情,但是,我一直都在做。嗯,这是第一件事。
嗯,关于编码的第二件事是,是的,我只是,我只是同意。就像,如果你在电脑前,你应该做的事情比被动消费更有意义。嗯,我在所有free code camp的视频开头都这么说。就像,嗯,你知道的,如果你在看这个东西,你实际上应该在另一个窗口打开代码,你应该像积极地暂停、启动和打字一样,如果你只是放松地拿着爆米花,看着我编程,你就是在浪费时间。是的。是的,百分之百。我喜欢你刚才说的。嗯,
我一天听两个小时的播客,它没有占用我哪怕一分钟的时间。那是,伙计,一种很好的方式,所以我鼓励大家。我也听大量的播客。我一直很直言不讳地说,嗯,我认为这实际上是一顿免费的午餐。实际上每个人,
在2025年,都将能够使用某种智能手机,甚至像树莓派这样的东西,至少可以播放这些,你知道的,100兆字节的音频文件,对吧?关于音频如此美妙的一点是,你可以通过RSS将其联合起来,人们可以在任何地方收听,他们可以在任何情况下收听。这真是太棒了。文本,就像,当我……
在大学里,真正让我领先于同龄人的事情之一是充分利用我的时间。这是在智能手机出现之前。我认为这是1999年或2000年,我开始上大学的时候。和你一样,我去了一个相当小的当地学校,它几乎只是一个社区大学。我会……
抽认卡。我有这样的,我订购了这些大约500张抽认卡的包装,我只是用铅笔,把它们都填上不同的东西。这可能是当我阅读《纽约时报》之类的文章时接触到的英语词汇。我会查看,我会查出来,然后写下来。或者可能是外语单词。因为我当时正在学习日语和中文。20年过去了,我仍然在学习。我仍然觉得自己是个新手,但是,是的,
但是从不让自己在一天中有一刻空闲。有些人可能会说,哦,有,你知道的,但是你必须反思。你必须,你知道的,花时间思考生活之类的事情。
我实际上也经常这样做,但我是在文本编辑器中这样做,而不是只是站在那里思考生活。我思考,我在文本编辑器中组织我的想法,嗯,正是因为你前面所说的,就像思考然后把你的想法写下来。嗯,这很好。然后我最后就删除了文本。文本仅仅是为了作为画布,我可以在上面组织我的思维,阐述我的想法,然后重新阅读并质疑我的假设等等。所以,嗯,
很多人可能会说,停下来享受玫瑰,闻闻玫瑰,做所有这些。所以我们不是说不要这样做。永远不要听音乐。永远不要看与视频游戏相关的视频。就像,就像,但是,
如果你真的想竞争,要知道我和Lane以及许多其他人,可能是我在Free Code Camp播客上邀请过的每一位嘉宾,都在不断学习。他们不满足于仅仅坐在车管所。我会去车管所。当我住在加利福尼亚州的时候,由于某种原因,我不得不经常去。而且……
我会坐在那里,看着所有的人。大多数人只是坐在那里看着钟表,然后用脚敲打着等等。我想,你们都错过了巨大的机会。我会翻阅我的抽认卡。现在我会戴上耳机。我会听像外语播客之类的东西。但是有很多机会可以倾听。我认为很多人把这与奋斗文化混淆了。
对吧?就像人们,人们会说,哦,你必须早上5点起床,你必须立即去健身房,你必须洗冷水澡,做所有这些。不,有一个适中的方法,对吧?
这不像做一个十足的懒汉,或者是一个把自己累垮的超级人物。你不会在早上6点用马库斯·奥雷留斯的冥想开始你的一天,然后是冷水浴?是的,很多人这样做。是的,我知道。需要明确的是,我尝试过这类事情。斯多葛主义等许多说法实际上只是流行心理学,它实际上与实际实践的斯多葛主义无关。是的。
在白天,你知道的,但是,但是人们把它当作一种生产力工具,感觉你在这样做的时候正在取得进步。而且,
向任何阅读马库斯·奥雷留斯或阅读任何来自你的文件并试图像,你知道的,投射到当代生活的人致敬。我不希望抨击任何这些东西。我认为所有的好奇心都应该得到奖励和庆祝。但是我想说的是,我只是想明确一点,因为评论中总有人说,好吧,就像那样。
你知道的,我们有孩子,你有孩子。我有孩子。我刚看到你的孩子进来了。如果有人正在观看视频,就像,哦,我忘了锁门。是的。就像我们生活很忙碌。你是一名开发人员。你还在运营boot.dev。嗯,我是一名开发人员。我也在运营free code camp。嗯,我正在尽我所能做一个父母,为了我的孩子,为了,你知道的,帮助做家务,比如割草等等。而且,嗯,
我仍然有时间做这些事情。我不是说每个人都有这种奢侈,但我是在说,如果你有这种奢侈,如果你有任何属于自己的时间,有些人正在努力工作,他们花一个半小时乘坐破旧的公交系统上下班,或者在一个公共交通不好的城市里。有些人正在努力争取基本上……
申请他们可以用来获得食物来养家糊口的东西,因为他们的工作付给他们的钱不足以生存等等。我并不是一定要给那些人发送这条信息,因为我意识到他们可能非常忙碌,如果他们能够抽出时间,也很难抽出时间。如果他们能够抽出时间,我当然会鼓励他们这样做。但是对于那些正在收听的人,他们可以找到一些他们可以节省一些学习时间的小片段,就像,嗯,
我鼓励你这样做。在我做这件事的20多年里,这对我来说是一个巨大的突破。因为我过去常常只是坐在那里看着钟表,感到无聊等等,而且没有求知欲。这并没有让我走得很远。就像我,我非常直言不讳地说,我过去很笨,嗯,
而且我,你知道的,就像那个笨拙的吸毒的孩子,像高中辍学之类的事情。我对自己的期望并不高。没有人对我的期望很高。发生了一次转变。这主要是因为求知欲以及投入的时间和精力。无论如何,这是昆西……
个人历史时间的一个采访,但我确实想花一点时间来反思你所说内容的深刻性,并予以认可。是的,是的。我想很快跟进一下,这显然是我们无法对任何人说话。我们不知道你的生活状况。我们不知道你有什么具体的困难。现实世界中有很多人的工作比我忙得多。但我也会争辩说,还有很多人并不比我忙。所以我只想推动一下,再积极一点,因为从数字来看,人们花在社交媒体上的时间,只是滚动浏览信息流,是天文数字。就像,这真的很悲哀。我希望我面前有数字,但它就像,一天超过三个小时。就像四五个小时,而且在过去的五年里它一直在上升。嗯,
所以我确实认为大多数人,不是每个人,不是你,而是大多数收听这个节目的人,嗯,低估了,嗯,
你真正应该有多好才能真正成为一名成功的开发人员。就像在我看来,就像,如果你想成为一名开发人员,为什么不争取成为前10%的开发人员呢?没有什么能阻止你。有很多前10%、前1%的开发人员没有学术资格。所以我认为你应该争取更高,但这也严重低估了他们一天中真正有多少空闲时间
去做事情。如果你开始减少我们沉迷于的许多垃圾,我沉迷于我的手机。我需要开始卸载很多应用程序。这已经成为一个很大的问题。嗯,但是,我认为我们很多人低估了我们真正有多少时间去做一些事情,你知道的,你还没有养成这个习惯。
是的。而且这是艰苦的工作。对我来说很难。就像每天晚上我都会非常疲惫。我整天都在工作,我需要花,你知道的,一个小时弹贝斯和吉他。而且,而且就像,我必须坐在那里,经历,你知道的,我的,我的鼓节奏等等。我知道你也是一名鼓手。而且,如果你想取得渐进的进步,你必须投入时间。然后我必须做我的,我的语言。嗯,那是另一个小时,我像,你知道的,坐在那里做这件事。发生了什么?好吧,我花了,嗯,
基本上没有时间在社交媒体上。就像我认为人们给我发了Twitter私信。我大约一周才第一次打开Twitter,我有很多私信需要回复。我只是把它当作收件箱,试图达到收件箱零,然后离开那里。也许我会发一些音乐作品之类的推文。但是对我来说,我基本上有效地没有花时间滚动浏览其他人正在做什么。我对此感到难过,因为我正在发布东西,我没有看其他人正在做什么。但是我需要保护我的时间。是的。
还有很多人在看,我发誓。没关系。他们会帮你搞定的。是的。是的。所以,你知道的,我们有很多话要说,但我确实想,我的意思是,你是一个完成很多事情的人,对吧?我刚刚读了你的《学习编码的状态》,读到了你正在做的所有工作,比如分析,你知道的,Free Code Camp做了所有这些事情。但是把所有这些都放在一篇文章中,只是展示了你为boot.dev所做的努力付出了多么大的思考、关注和努力。所以我非常有兴趣了解你的生产力,作为,你知道的,一个工作的爸爸,而且,嗯,你知道的,你如何度过你的一天。就像,就像,是的,我想,我想从Lane那里获得尽可能多的生产力技巧。
所以我开始做boot dev的时候,它是一个副项目,我的生活基本上是,我每周工作40个小时。我妻子每周工作40个小时。她是一家医院的X光技师。这就像,我想说的另一件事是,就像我相信如果你,如果你,如果你单身,基本上没有其他责任,我不应该说单身。如果你除了工作之外没有其他真正的责任,这就是我当时的生活状态。
每周40个小时不算多。就像,天哪。我一天中有那么多额外的时间。就像,我早上8点上班。我下午5点下班。有很多……如果你一天只睡8个小时,就像,一天还有另外8个小时。所以,就像,我花了2到3个小时……
构建现在已经成为Boot.dev的东西,每天仍然有五个小时的空闲时间。我玩Dota 2。我是一个游戏迷。我玩了好几个小时的Dota 2。我和妻子一起度过时光。我们每周出去吃几次饭。我们会一起看电影。所以我知道我可能每周工作60个小时,但对我来说,感觉真的……
没有过度工作。我没有感到倦怠,什么都没有。所以那是第一年。然后,嗯,2021年有了我的女儿。嗯,然后就像那真的,就像孩子们需要很多工作。我喜欢那,那真的改变了我的一切。嗯,所以现在游戏少了很多。我得到一个
但是我现在的大部分时间都花在boot dev上,或者和孩子们一起玩,帮助孩子们,做家务等等。我很幸运,在我有了第一个孩子之后,我妻子能够辞职。所以这使得事情变得容易得多。我知道两个工作的父母会让事情变得困难得多。但是……
它,你对我来说,这真的就是对你的时间采取非常积极的态度,并尽可能地有计划地利用你的时间。就像我几乎从不坐在沙发上滚动浏览社交媒体。嗯,
这不是我做的事情。就像我说的,我从来不在车里或健身房不听播客。嗯,如果我要坐在电脑前,我一直都在远程工作,就像我直到2022年中期都有一份工作,我是一名全职的工程经理,在做boot dev的副业。嗯,
如果我在电脑前,我就会完成工作。我是在远程工作,对吧?这不像有人用摄像头对着我检查我是否坐下来。如果我坐下来,我就专注。我正在努力。如果我休息,我会好好休息。我会去散步。我会和孩子们一起做一些事情。对我来说,就是这样。这只是尽可能有计划地利用我一天中的每一刻。是的,我喜欢这样。如果我休息,我会好好休息。
就像滚动浏览社交媒体并不是一种有益的休息,对吧?信息浏览并不是一种有益的休息。能够带我的孩子去公园,看着他们爬树等等。嗯,那是一种很好的休息。是的。
我会说这听起来,我可能会让它听起来像是一种枯燥的工作。这很累人,但这真的,真的不是。这真的只是,再次强调,这是有计划性。这是正念。是在每天开始的时候思考你正在做什么,确保你真正按照你想要的方式度过你的时间。因为我认为我们很多人以某种方式度过时间,不一定是我们想做的事情。这只是我们养成的习惯。是的。对。所以这真的只是关于,
几乎是对此的正念。是的。是的。我完全明白很多人会把这听起来像几乎是反乌托邦的。这个词被过度使用了,但基本上就像,就像,哇,即使是那些处于顶尖的人也在努力工作以跟上,你知道的,这是一场激烈的竞争。嗯,而且,嗯,对此,我说,我说,我,我理解,嗯,
你来自哪里,但世界不会突然变得更容易。有一种棘轮效应,这种现象。我们有,你知道的,每年都有数百万工程师从中国的大学毕业。我们在印度有超过一百万。这些都是来自优秀学校的优秀工程师。他们拥有与美国人相同的根本知识。就像,是的,
对不起,但是,就像那个你只需要,你知道的,嗯,参战,回来,然后就像,哦,有点像白领办公室工作,就像《广告狂人》时代。我一直喜欢提到《广告狂人》,因为它是一个时代中的异常现象,当时美国是唯一的游戏参与者。而且,嗯,基本上欧洲完全被摧毁了。嗯,像日本这样的地方实际上是从零开始重建。韩国后来也从零开始重建。嗯,而且,
在某种程度上,就像美国是二战后唯一真正幸存的国家。我认为很多人把目光投向了婴儿潮一代的异常现象,嗯,那些能够,你知道的,担任秘书,仍然可以买到全新的汽车,仍然可以,你知道的,买房子等等的人。我不知道这是否会回来。就像,
我希望这项技术能带来丰饶。这实际上不值得推测,对吧?无论你我是否相信,它都会回来。这是一个很好的观点。或者我应该说,无论你我是否相信它会回来,它都会回来或不会回来。是的。是的。是的,但我认为它不会很快回来。是的,我不会指望它在明年回来。是的。是的。所以我想说的是……
它看起来我们工作非常努力,我确实认为自己是一个努力工作的人,我尽量睡足觉,我尽量多锻炼,但我尽量坐下来完成很多事情,因为那里有数百万人渴望拥有我现在所拥有的职位。可能数百万人都渴望拥有你现在所拥有的职位。嗯,而且,嗯,
他们没有处于那个位置的主要原因是他们出生时拿错了护照。他们甚至有护照,对吧?就像很多美国人甚至没有护照。他们出生在他们不一定会,他们不一定会被鼓励努力工作的情况下。他们后来在生活中意识到,哦,该死的,我必须忙碌起来。所以Lane像他那样努力工作,而我像我那样努力工作,以及我在这个播客上邀请过的每个人都像他们那样努力工作的事实。
就像我们想成为那些顶级开发人员中的佼佼者,对吧?我们想成为那些能够表现出色的人中的佼佼者,而且,
当竞争如此激烈时,你只需要接受现实,对吧?这不会是杰森一家,你出现后按下按钮,你的工作就是字面意义上按下按钮,成为参与循环的人,让整个工厂运转起来,对吧?就像这是我们被承诺的未来,但这不太可能是我们的未来。我们可能拥有的未来是进一步激烈的竞争,以及人类需要竞争。
表现并不断提高绩效,并培养对不适、模糊性和变化的更大容忍度。坦率地说,事情变化得非常快。你对此感觉如何?就像,你,你是否觉得在不久的将来可能会取得突破?我知道你说了,就像这超出了我们的控制,但是让我们,让我们假设一下,我们戴上我们的预测帽,我们的神奇思维帽。而且,而且我们正在思考需要发生什么才能让我们,
你知道的,多边裁军,这样人们就不必那么努力工作了。是的,有,有经济问题。然后还有政治问题和激励问题。因为例如,你可以争辩说,就像,
想象一下一个世界,我们自动化了许多当前的工作。而且,我们可以,我们可以,我们可以作为一个社会决定,我们同意生活在这种稳态中,就像,我们不再取得进步。我们只是有点像,就像也许我们堕落到这种愚蠢的境地,就像每个人都有食物。每个人都有一间小公寓。每个人每天都可以消费16个小时的Netflix。我们可以去,每个人都可以生存。
也许没有那么多人实际上每天都必须工作才能实现这一点。但我们作为一个社会并没有进步。这里有很多关于人类心理学的假设需要考虑。就像,嗯,那些正在工作的人是否真的会同意成为唯一正在工作的人?而其他人则只是闲逛和做事情,而且没有花那么多时间。所以就像……
有经济问题,有人类文化问题,就像为了激励每个人做某事,需要有激励去做这件事。总会有这样的人,当他们有动力去做的时候,就会做得很多。对。就像我们给人们宝石来完成boot dev上的课程一样。就像有些人做了很多课程一样。就像有些人做了很多课程一样。嗯,
所以,是的,我很难,但我希望的是,作为一个社会,我们不会停止进步,让我们的生活变得更好,发明新事物,嗯,
探索太空,无论什么,你知道的,我真的很想拥有悬浮滑板。如果有人能做到这一点,那就太酷了。我希望这种情况继续发生,但是,你知道的,我们以一种理智的方式去做,就像,嗯,基本上你能下降的最低点保持上升。我说保持上升。我不应该说一直都在持续上升,但是我的希望是它会上升,而且,嗯,但是总会有动力让人们超越自我,努力工作,发明东西,创造真正很酷的东西。是的。
是的,好吧,我的意思是,这不是一个政治或经济播客,所以我不会深入探讨。但我不得不说,食品价格持续上涨,即使农业在很大程度上实现了自动化,生产在很大程度上——就像分销在很大程度上实现了自动化一样,这很有说明意义。为什么食物越来越贵?好吧,这是因为——
它可以更贵。所以我不知道我们是否会到达这样一个点,那里没有一些寻租者想出办法让我们更加努力地工作。无论如何,我想以积极的姿态结束这个话题,然后转到下一个话题。所以你提到了游戏化。好吧,我没有积极的姿态来结束这个话题。让我们直接转到游戏化。好吧。
在本周的播客节目中,freeCodeCamp创始人Quincy Larson采访了Lane Wagner。他是一位软件工程师,是freeCodeCamp的积极贡献者,也是在线学习平台Boot.dev的创始人。本播客由Wix Studio的资助支持。Wix Studio为开发者提供工具,可以快速构建网站,并提供所有开箱即用的功能,然后可以使用代码扩展、替换和突破界限。了解更多信息,请访问https://wixstudio.com。本播客还得到了11043位通过每月捐款支持freeCodeCamp的好心人的支持。加入这些好心人,通过访问https://www.freecodecamp.org/donate来帮助我们的使命。我们讨论了:- Lane对大学和计算机科学学位的看法- 后端开发以及为什么它与他产生共鸣- 为什么他对Go编程语言如此热情- Lane在人们如何学习方面学到了什么Quincy提到了每年从印度和中国大学毕业的工程师人数(包括计算机科学专业,这通常是最受欢迎的工程专业)。很难找到确切的数字,但是……- 印度:每年超过100万名工程毕业生- 中国:每年超过100万名工程毕业生- 美国:每年只有大约20万名工程毕业生我们在谈话中提到的链接:- Lane关于如何获得开发者工作的4小时课程:https://www.freecodecamp.org/news/how-to-get-a-developer-job/- Lane的5小时HTTP网络课程:https://www.freecodecamp.org/news/http-networking-protocol-course/- Lane的Web开发者SQL课程:https://www.freecodecamp.org/news/sql-for-web-devs/- Lane通过freeCodeCamp Press出版的免费书籍:https://www.freecodecamp.org/news/author/wagslane/- 可汗学院创始人关于精通学习的演讲:https://www.youtube.com/watch?v=-MTRxRO5SRA- 最近发展区教育理念:https://en.wikipedia.org/wiki/Zone_of_proximal_development</context> <raw_text>0 所以你提到你使用gems,并且你在boot.dev中想出了所有这些很酷的机制。Free Code Camp也使用了这些类型的东西。我们有连胜、积分等等。多年来,我们已经取消了一些内容,因为我们觉得,这激励的是一种“死磕”的态度,而不是我们真正想要的,那就是,“好吧,我会告诉你我心目中理想的使用者……”
你知道,他会从天而降,坐下来使用free code camp,并在两年内找到工作。我认为两年是一个合理的时间线,也许三年,这取决于你每周学习多少小时。但是,
他们会每天工作一小时,然后无论他们工作多努力,他们都会停下来。他们会去做其他事情,然后他们就会回来。我的想法是,至少在语言学习和学习乐器方面是这样的,努力的边际收益递减,大脑需要时间来吸收和消化东西,并睡个好觉。然后你回来,然后几乎奇迹般地,你会变得更好一点。然后你将这一点在两年内积累起来,
做某事,你就会变得非常擅长……你知道,比如获得一万小时的经验。整个说法就像一个神话,没有科学依据表明做某事一万小时就能让你成为专家,但这是一种流行的说法。但我确实相信其中有一点道理,那就是你做了很多,你得到了很多练习,但与此同时,你的练习可能是周末做10个小时,然后一周剩下的时间都不做,或者因为做了太多而筋疲力尽而停止。
回来。所以它可能是一种不稳定的开始-停止的事情。那么,在你们调整这个游戏化系统以鼓励人们进行适量的学习并以正确的方式学习,而不是仅仅追求高分或登上排行榜的过程中,你们在boot.dev上观察到了什么?你们是如何平衡这些的?是的,是的。
所以它当然不是完美的。多年来,我们根据反馈以及你所说的我们观察到的行为进行了许多更改。让我给你讲几个失败的案例,然后我会给你讲一些成功案例。在boot dev的早期,有三种类型的成就。一种是里程碑。你只需完成更多课程就能获得更大的徽章。这个仍然存在。非常简单明了,对吧?就像你在课程中走得越远,你就会获得更多徽章。这似乎非常有效。最大的失败是我们有一个速度成就,那就是在一定时间内完成一定数量的课程。这些简直是一场灾难。人们编写非常粗糙的代码。他们被激励去赶进度,而不是去理解
为什么他们的代码有效。我们希望他们复习。我们希望他们查看讲师的解决方案。我们希望他们在完成课程后与Boots聊天。是的,Boots是你的LLM工具。是的。是的。是的。
这,我的意思是,相当新。它并没有随最初的boot dev一起发布,因为我在ChatGPT出现之前就发布了它。但是,是的,它是一个令人难以置信的工具,你知道,你必须花一些时间,我们已经微调了它的工作方式,这样它就不会给你解决方案。它只会尝试使用苏格拉底方法来问你更多关于你的代码的更深入的问题,这样你就可以继续尝试理解它做了什么。是的。
但无论如何,速度成就,巨大的灾难。这真的很糟糕。嗯,
让我给你举一个不好的例子,我们一直在迭代它,现在它处于一个相当好的位置。所以我们有这个叫做药水的概念。所以,当你学习boot dev课程时,你会获得经验值,经验值就像游戏化的圣杯一样。当你获得经验值时,是的,你会升级,你会获得新的角色,解锁Discord中的频道。当你达到最高角色“方舟大师”时,你会收到一枚硬币。所以它就像,它是真正的目标。让我们获得经验值。我的意思是,显然目标是学习,但它就像主要的激励目标。
药水,你可以激活药水。它是什么呢,就是30分钟内你会获得50%的额外经验值。问题是它给人们带来了很大的压力,因为50%的额外经验值很多,而30分钟并不长?有时候,我的意思是,boot dev中有一些很难的课程,几乎就像一个小型项目,你很容易花一两个小时来完成这个课程。而且,嗯,
当你激活药水时,这真的很令人沮丧,你甚至没有完成一节课就能获得经验值。所以我们最近做出的一个改变是,它只有+25%的经验值,而且持续一个小时。就像我们一直在做很多这样的调整,并且真正了解药水的背后心理学原因,因为我们还有其他建议,比如,也许你应该让药水只计算一定数量的课程,这样我就不会感到任何时间压力。
药水的目的实际上是制造一定程度的时间压力,因为我们将其用作学习计时器或番茄工作法。它就像一个游戏化的番茄工作法时钟。是的,番茄工作法是25分钟工作,5分钟休息。在意大利语中是西红柿的意思。我们不在Free Code Camp上称它为番茄工作法计时器,因为它有商标。
我们使用25加1,25加5。也许我需要把它从描述中删除。我们在药水的描述中写道:嘿,这就像一个番茄工作法计时器。是的,我不知道。他们从不主动。我们是一个小型慈善机构,我们不想被起诉。我们在知识产权的使用上是防御性的。也许我不应该提及它,但重点是,
我们发现30分钟时间太短,会造成太大的时间压力。所以我们正在延长它并进行调整。但是我们发布的每一个游戏机制,我们都没有仅仅因为我们认为它很有趣而发布任何游戏机制。
我们发布的每一个游戏机制,我们都是因为我们已经想出了一个潜在的心理学原因,我们认为,而且它总是在测试和迭代,但我们认为这将帮助人们以健康的方式更专注于学习。因为正如你提到的,我们不希望人们过度努力。
是的,这很有道理。嗯,你们有没有发现什么疯狂的、有悖常理的激励机制?比如,通过反复试验,比如,“我的天哪,我们再也不会这样做”。我的意思是,你提到了一些,比如,我认为你提到了,呃,速度,呃,让大家基本上进行速度竞赛,呃,
速度不好。速度竞赛free code camp。我认为如果你已经知道你在做什么,这很酷,但如果你正在学习,这是一种糟糕的学习方式。慢慢来,对吧?是的,速度成就很糟糕。另一个我们不得不彻底修改的是神射手。
所以有一个神射手成就,好吧,在boot dev上,你有两个按钮。你有运行和提交。运行按钮是你的调试工具。你可以把它想象成你在本地机器上作为专业开发者工作时的类比。没有惩罚,你可以随意更改和测试。这就是运行按钮。
还有一个提交按钮。当你认为,“好吧,我做对了。我认为我做对了。”时,你应该使用这个按钮。它通过了我允许测试的测试子集。现在让我们看看我是否真的捕捉到了所有边缘情况。嗯,
如果你弄错了这个按钮,你就会失去你的神射手连胜。所以它会随着你的前进而积累,对吧?比如连续三节课正确,连续四节课正确。它以前的工作方式是它会无限增长。所以你可以获得300连胜。在第301节课上,你知道,你错过了一个边缘情况,砰,又回到零,这就像,
太令人沮丧了。当你已经持续了一个半月,然后你的神射手连胜全部回到零。而且你获得更高的连胜会获得经验值奖励。这是一个乘数吗?比如我们获得数百倍。它有上限,但它确实会上升。嗯,所以我们的解决方案是,好吧,我们将使连胜
计数器无限增长,但你每连续15次正确才能获得一次计数。换句话说,你连续15次正确,砰,你获得一个神射手连胜。现在你开始一个新的,一、二、三。如果你输了,你只会回到零。
所以你仍然有动力去尝试。因为我们试图通过这个运行、提交和神射手机制来做的是让你更清楚地了解你正在向用户发布什么,对吧?作为一名开发者,在某些时候,不仅仅是本地测试了。你必须部署,并且必须注意你的代码是如何工作的以及边缘情况是什么。这就是我们试图灌输给学生的东西。嗯,
但我们不希望它成为一件令人沮丧的事情。到目前为止,这非常有效。它已经投入生产大约一年了。关于测试,你说你有可见的测试,然后你还有隐藏的测试?是的,有点像。它们不一定是隐藏的,但你不能针对它们运行。所以会有三四个测试……
当你点击运行按钮时,你的代码会运行这些测试,你总是可以添加打印调试语句等等来测试其他边缘情况或查看你的代码中发生了什么。嗯,但是,是的,有一些隐藏的测试用例,通常包含一些边缘情况。例如,列表输入为空,呃,或者其他什么。呃,
只有当你点击提交按钮时才会运行。有趣的是,人们仍然会知道失败的测试是什么,但直到他们提交之后才会知道。在那时,他们还能修改吗?修改是否有任何惩罚,或者他们只需要继续前进?是的,有点像。对不起。他们根本无法使用运行按钮针对它运行。所以当他们点击时,他们基本上会看到,比如,一个分数或类似的东西……
它会显示他们失败的测试吗?或者他们只是没有进展?你能在没有通过所有测试的情况下取得进展吗?我将按时间顺序进行介绍。所以你开始编写一些代码。你点击运行按钮。也许它显示四个测试中只有一个通过。你继续坐在那里并进行迭代,只使用运行按钮。最终,你得到了四个测试全部通过。现在你点击提交。假设你错过了一个边缘情况。它
如果现在测试的最大数量是6个,你得到了6个测试中的5个通过,砰,你就会失去你的神射手连胜,除非你购买了护甲,这是我们拥有的另一个游戏机制,嗯,它可以保存它。但是,嗯,所以如果你在boot dev上正确地玩游戏,你应该总是有一些护甲。嗯,但是,
在那时,你会失去你的神射手连胜。这实际上是唯一的惩罚。所以你仍然会获得课程的全部经验值。所以是的,你会修复你的代码。你仍然会提交。你会获得经验值。只是神射手机制。所以你会失去你的额外经验值奖励。每个神射手连胜,你都会得到一个宝箱,它会给你物品和宝石。所以你将不得不花更长的时间来获得它。所以它并不那么惩罚性。所以它就像从哈佛毕业与优等生毕业一样。是的。
是的,是的,完全正确。好的,好的。所以它就像锦上添花。所以如果我不关心游戏化机制,我通常会忽略它们,即使是在Freeco Camp上,我也会忽略它们。我在其他……
你会惊讶地发现有多少人在boot dev上这么说。然后在两章之后,他们会说,“好吧,你知道吗?我需要获得一些宝石。”是的,我认为这是人性。比如我查看我使用的某些语言学习工具的排行榜,嗯,这不是Duolingo。我使用了很多其他的,但是,嗯,但我确实查看了排行榜,我看到有些人,我必须每天花几个小时才能赶上他们。所以在某种程度上,排行榜在这方面让我感到沮丧。呃,
你们是如何识别实际上可能让人沮丧的游戏化机制的?你谈到了对失去神射手奖励的恐惧。好消息是人们让我们知道。所以我们有一个非常活跃的Discord服务器。我们规模如此之大,许多学生加入了Discord服务器,我们在那里有反馈频道,我们监控它们,我们每天收到很多消息。
老实说,就这么简单。我们每天都在倾听学生的声音,我们得到很多想法,我们会把它们写下来,我们会调整一些东西。我认为是这样。这是另一个弱点。我认为目前我们的排行榜系统并不像我希望的那样好。它对极少数具有超强竞争力的学生有用。我们即将进行一项重大改变,我认为这将真正地,真正地,
让它变得更好,仍然会有一些人对竞争方面不感兴趣,所以这完全没问题,我们会让排行榜远离你的视线,嗯,但我认为我们可以让它对任何对任何类型的竞争感兴趣的人都有用,让它感觉好得多,所以这是一个我们计划进行的改变,哦,天哪,我本来想说一些关于……如果你以后想起来可以提,让我们
我想谈论的一件事是社区管理。你说你们有一个非常活跃的Discord服务器。很多人,无论他们是在直播编码,还是只是试图为他们的编程文章建立受众,很多听众也可能有他们自己的播客,对吧?他们正在试图找到一个地方……
让关心他们所做的事情的人聚集在一起,你们选择了Discord。Free cocaine也有一个Discord。你说它非常活跃,根据里面的人数来看,每个人都非常非常投入,听起来你们在社区方面学到了什么?管理方面,作为社区的创始人,以及
是的。嗯,最大的,所以我们已经将boot dev与Discord紧密集成。如果API被取消,我会非常沮丧。我们在这两个平台之间构建了如此多的自定义集成。就像我说的,当你升级时,你就可以访问Discord中越来越多的频道,这很酷,因为你基本上可以获得更高的……
层次的讨论,对吧?就像你一样,现在你只与达到平台70级的人聊天,这意味着他们投入了大量的时间和精力。他们理解一定数量的技术知识,并且想谈论它。嗯,这本身就非常棒。嗯,
这让我听起来像是一个守门人,我发誓这不是那种我想把人们拒之门外的那种守门人。嗯,但我确实想把坏人拒之门外。最好的,我的意思是,Discord充满了坏人。就像你总是会有垃圾邮件发送者加入服务器,只是加入服务器,留下指向色情网站或加密货币诈骗的链接然后离开。嗯,它困扰着许多服务器。我们已经做到了,你只能与服务器互动。如果你真的有boot dev帐户并且你已将其链接到你的Discord帐户,嗯,
一夜之间,这几乎消除了所有垃圾邮件。因为没有垃圾邮件发送者愿意付出那么大的努力来创建一个boot dev帐户并将其链接到他们的Discord帐户,然后加入服务器。嗯,这对于社区管理来说非常有帮助。但是,我要说的另一件事可能是最重要的。很多像YouTuber和社区,呃,
在线上创建一个Discord服务器作为他们的观众闲逛的地方。他们大多自己不闲逛在那里,对吧?所以你会看到一个大型YouTuber有一个Discord,几乎从不在那里与他们的粉丝聊天,特别是如果他们是一个更大的YouTuber。嗯,
根据我的经验,这些社区并不好。即使他们有社区管理员之类的,嗯,它也没有那么有趣。你是在那里与正在做这件事的人一起闲逛。所以我和整个boot dev团队,我们的内部沟通,我们不使用Slack。我们只是在我们的社区服务器中拥有私人的内部Discord频道。我们的所有工作都在那里进行。我们有九个人,我们整天都在Discord上与学生聊天。所以它就像,你知道,我们直接接触到平台上的每个人,我认为这是,这是,这是它如此棒的另一个原因。是的,这真的很酷。我的意思是,它就像一个很大的单点故障。我们有很多经验,比如我们尝试过Slack,我们尝试过Gitter,呃,你知道,被收购了,比如,你知道,
我们在不同的地方经历了很多变动。我们现在使用Google团队,因为慈善机构可以免费获得它。而且,呃,因为它足够好,呃,Google聊天。呃,
我们不必为此付费。就像我们一样,作为一个慈善机构,我们非常节俭。你可以想象,我们基本上除了Century之外什么都不花钱,这不是Century赞助的,但Century是我们实际花费每月30美元或其他费用的少数几件事之一。我们有一个OpenAI帐户。我们经常使用GPT,呃,很多。嗯,但是,呃,我的意思是,嗯,
想到如果Discord取消了API访问,或者如果Discord开始根据你组中的人数收费,或者在free code camp的情况下,如果你达到了Discord可以达到的这个巨大的无形限制,这有点可怕。现在,我不认为存在这样的限制,因为我相信他会先这样做。是的,Midjourney。是的,Midjourney永远不会达到这个限制,因为它是一个如此突出的Discord服务器,我相信Discord工程团队会确保,比如,
即使他们确实限制了其他服务器,他们也基本上可以无限增长。但是,是的,我们确实达到了一个无形的限制。他们告诉我们,哦,我们不能再让更多人加入你们的Slack。
我们是第一个达到这个限制的人。这太令人沮丧了。我们不得不离开Slack。这太疯狂了。所以,你知道,希望这样的事情永远不会发生。但是,是的。我认为你们与实际社区一起闲逛真的很酷,因为我有时会觉得我们都在自己的服务器里,我们
很多原因是因为安全通信等等。比如Google,呃,有非常明确的权限,而且Google被入侵的可能性与其他……相比非常低,你知道,呃,我只是认为,因为像政府使用Google等等,可能会有更多的安全措施等等。但是,我认为对于你们正在做的事情来说,这听起来是一个非常酷的方法。呃,我,我,
我也想加入Discord,这样我就可以打个招呼,并探索一下。我想说的是,我们一直在探索重新游戏化free code camp。而且,而且听到你的见解很棒,因为我一直试图向很多其他处于先锋地位的人学习。你比我们晚进入很多年。因此,你知道,就像,
这几乎就像固定电话与手机一样。所有从未有过固定电话的国家都不需要再建设固定电话了。他们有点像跳过了这项技术。我觉得你们在free code camp成立几年后创建了你们的社区,就像你们能够环顾四周,看到很多没有成功的事情,甚至没有走那些死胡同。所以我非常高兴能从你那里学到更多东西,并把这些反馈到我们正在做的free code camp中。
让我告诉你一件我忘记的事情,我认为这对于游戏化尤其有趣。好的。这是一个有趣的案例,我们注意到在这个领域没有游戏化时出现了一个问题,然后我们添加了它,情况好多了。所以,嗯,
boot dev上的每一节课基本上都有……现在实际上有三个不同的帮助级别。如果你算上Discord,那就是四个。但让我们暂时关注那些游戏化的。所以你可以查看讲师的解决方案,这基本上就像一个完整的作弊。你可以直接看到正确的答案,复制粘贴,无论什么。或者在多个文件的情况下,复制粘贴几次并通过课程。然后是Boots,这个AI聊天机器人已经被……
预先提示了课程和解决方案的完整内容。所以他像知道你应该做的一切。嗯,但他也被提示不要给你解决方案。所以你问他问题,他有点像指出你推理中的缺陷。这就是想法。是的。
人们做得太多了,特别是查看解决方案,对吧?Boot dev很难。我们采用基础优先的方法。我们不会回避教授计算机科学教育,对吧?我们会带你学习函数式编程、面向对象编程、数据结构、算法、高级算法。我们做所有这些事情。
这很难。有时人们,当它变得困难时,如果解决方案就在那里,只需点击一下,我就会查看解决方案然后继续。这会让你陷入困境,你那时并没有进行基于掌握的学习。在你继续学习之前,你并没有掌握每个概念。这对学习来说真的很糟糕。Sal Khan有一个关于基于掌握的学习的精彩演讲,这就像我们试图让你在继续学习之前掌握概念。
是的,还有一点补充。我绝对想让你说完,但Sal Khan(多年来我从他进行的不同实验中学到了很多东西的另一个人)的基础性内容之一,当然还有Conmigo(他们的AI聊天机器人)。FreeCodeCamp目前没有AI聊天机器人。我们得出结论,我们宁愿让人们在论坛上互动并互相帮助。我们正在探索它,但我担心,因为论坛非常受欢迎。比如,
每月有数百万人访问它。我不希望通过只放置一个聊天机器人来破坏它,内向的人(像我一样)可以只与机器人交谈而不会打扰别人。我希望人们能够练习打扰别人,因为我认为这是一个良性循环。但是,对不起,要结束关于Conmigo和Boots的这个话题,并回到掌握学习,这是指如果你在学习数学,你不能在可汗学院继续学习。
你会得到10道数学题。比如他们会教你一个概念,然后你解决10道数学题。如果你有一道题做错了,你就应该再做一遍,因为你的理解中一定存在某种差距。在可汗学院,如果你没有全部答对,他们就不会让你继续学习。嗯,所以我完全可以理解,如果有一个作弊按钮允许人们在他们实际上还没有准备好继续学习时跳过,这将破坏
是的。掌握学习的整个概念。所以请继续你刚才说的话,我只是想让人们了解掌握学习的含义以及萨尔·可汗在2010年左右首次谈到这个概念时是如何表达的,当时它才刚刚出现。一个很大的区别是,他真的非常坚持确保人们在继续学习之前理解了这些内容。
是的。就像,C不应该及格。A应该及格。是的。嗯,这是一个很棒的TED演讲。如果有人想去找出来,嗯,只需搜索萨尔·可汗掌握学习法。我相信你一定能找到它。嗯,节目笔记。是的,就是这样。嗯,我们不能去掉解决方案按钮,因为一部分原因是我们希望它作为保险。这并不是说我们的课程经常出错,或者几乎从不出错。现在我们有一个如此庞大的团队,并且我们一直关注着它,但是,就像
我们想避免这样一个事实:我们可能会写出一篇糟糕的课程,对吧?至少如果你有解决方案,你就能看到我们在你真的卡住的情况下是如何做的。所以我们不能去掉解决方案按钮。然后在Boots上也是一样。就像,我们希望你能与Boots聊天,但如果你每次在完成课程之前都必须与他聊天,那确实是一个危险信号。所以我们引入了两种游戏机制。如果你在正确完成课程之前偷看了解决方案,你将失去该课程100%的经验值。
除非你用预言石支付,这是一种相当昂贵的物品。所以我们喜欢调整价格,因为这些游戏机制的重点是鼓励你以所谓的“正确数量”去做。使用解决方案是可以的,但你应该很少在你自己想出来之前使用解决方案。如果你经常这样做,这是一个很好的迹象,表明你应该重置课程并重新开始,也许这次应该放慢速度。
然后在Boots上也是一样。如果你在成功完成课程之前与Boots聊天,你将失去50%的经验值。
呃,因为我们宁愿你与Boots聊天,而不是仅仅查看解决方案。你会通过这种方式学到更多东西。嗯,你会被迫真正思考这个问题。嗯,当然,也有一些你可以喂给Boots并免费使用的物品,但这是一种你正在失去的资源。从本质上讲,你正在损失经验值,因为你本可以把它花在药水上的。所以可以说是调整游戏资源,以鼓励适量的AI聊天机器人使用和解决方案偷看使用。我们一直在调整这些数字,但看起来现在好多了。
是的。是的,这很酷。为了概括你所说的,一种稀有的消耗品,仍然可以在你真的需要另一个解决方案的情况下启用这种行为。你真的完全被难住了,因为另一种选择就是当天就愤怒地退出。是的。
坦率地说,这种情况在Free Code Camp经常发生。我们会查看完成特定挑战的平均时间,并且我们已经确定了许多需要将挑战分解成更小的部分或重新阐明或完全重新解释当前问题的不同点。但这并不能帮助那些被困在那里并帮助生成数据来突出问题的人,对吧?金丝雀仍然会死,对吧?这是真的。这无助于金丝雀。它只帮助矿工。是的。
所以给他们这种药水是一种让他们不以这种方式对话的方法。然后你可以查看有多少人实际上正在使用这种药水,而不是有多少尸体在那个房间里。
没错。没错。是的。我们有一个仪表盘,上面有所有这些使用图表,每天都有,我们对其进行监控,查看它是否以奇怪的方式激增,并根据此调整数字。这真的很酷,伙计。呃,我知道时间到了。你还有几分钟吗?还是你需要离开?是的,我可以继续。我没有其他事情。让我们再聊一会儿。所以,呃,
你提到了仪表盘。仪表盘上有什么样的信息?你每天查看哪些指标来确定社区的健康状况以及课程的有效性?你经常谈论这个。我经常谈论。每个教育设计师都经常谈论平滑的学习曲线,而不是……学习代码很难。学习计算机科学很难。任何告诉你……
否则,它就是在试图向你推销东西,对吧?是的。而且它可能不是每月50美元的东西。它可能是一些预先花费数千美元的东西,对吧?是的。是的。我们绝对可以谈谈高等教育以及你对当前高等教育状况的想法。但是让我们谈谈那个仪表盘。仪表盘上有什么,你关心哪些指标?是的。是的。
我认为,我一直认为,当你的团队规模很小,并且朝着共同的目标努力时,拥有一个北极星指标非常重要。然后你可以拥有所有其他也相当重要的指标。我们的北极星指标只是完成的课程数量。就像我们只是希望人们尽可能多地完成我们的课程。这就像一个非常迟钝的工具,如果这个数字在上升,那么我们就做对了。嗯,人们正在更深入地学习课程,对吧?所以这是北极星。嗯,
除此之外,可能最重要的事情是一致性。我们希望看到每日活跃用户保持高位。我们不希望人们每月或每周编码一次。我们希望看到人们每周三到四次进入,会话长度超过15分钟。如果人们每周三到四次进入至少一小时,那就太好了。这可能是我们最大的次要指标。
好的。所以,呃,每日活跃用户次于挑战完成。是的。是的。这很有道理。就像我们只使用网站停留时间。这只是我们关心的一个通用指标。就像人们每天在freecodecamp上花费多少时间?因为像使用可以让我们了解有用性,呃,
我们的想法是,他们可以做很多不同的事情,因为freecodecamp是多模式的。我们有视频。我们有书籍等等。但我认为专注于挑战完成并只关注一个关键绩效指标(KPI)是有意义的,你随着时间的推移会关注它。尽管这可能会产生激励措施,使挑战更短或将挑战分解成更容易但也会导致更多挑战完成的更小的部分。
所以我想可能会有不正当的激励措施。这是真的。我们还没有真正遇到这种情况,但这当然是有可能的。我猜想,尤其是在团队壮大并且激励措施可能不那么全面的时候,每个人都会达到主要目标,你需要确保你的激励措施不会偏离根本目标。是的,还有网站停留时间。所以每个人可能都经历过,我将花一点时间谈谈谷歌。好的。
以及人们不像以前那样经常使用谷歌搜索,而且它在顶部有这种AI废话,你知道,算法答案总结了,你知道,如果没有这个巨大的AI概述在页面顶部,人们会阅读然后不会点击我们的文章,那么freecodecamp文章会出现在什么位置。呃,但我们观察到,呃,
因为,嗯,嗯,使用参考文章等的人数一直在下降。好吧,这仅仅意味着,嗯,我们需要以其他方式适应。在我们将如何让人们在freecodecamp上学习方面,将会面临挑战。呃,因为历史上,很多人没有经过身份验证,他们只是路过,他们甚至没有进行身份验证。他们只是进来查看那篇文章。而且,嗯,
谷歌的主要挑战,呃,人们不经常使用谷歌搜索,就像,当它是,你知道,可能是LLM答案时,你如何帮助人们。而LLM答案很可能就是错误的。呃,
你们都在考虑这个问题吗?就像,你如何处理参考的概念?你们内部是否有像维基之类的资源,人们可以在需要查找某些内容时参考,这样他们就不必去谷歌并被带到其他网站?就像,因为我们在未来几年将面临的最大挑战之一是谷歌搜索的衰落和LLM的兴起,那就是我们如何仍然提供良好的参考,
并且不会让人们完全分心。是的。
所以我们就在两周前发布了这个功能,我们对此超级超级兴奋。早期的指标表明它非常好。用户的反馈非常好,这种情况并非总是如此。我不是说,哦,我们太棒了。我们发布的每一项内容都不会发生这种情况。有时我们会发布一些东西,我们必须将其拆除,因为它实际上并不好。但我对这个功能真的很兴奋。所以我们称之为魔法书。因此,现在在boot dev的学习面板左下角,Boots曾经在那里,他仍然在那里。现在有一个切换按钮,你可以从Boots切换到你的魔法书。
并且使用你的魔法书不会受到惩罚,不像Boots。基本上,当你学习boot dev上的课程时,你就会解锁魔法书中的页面。所以假设你学习了Python中的循环课程,它会向你介绍语法,你会做一个小挑战。
当你完成这个挑战时,你就会在你的魔法书中添加一个页面,也就是Python中的循环。它只是一个非常简洁的,几乎就像百科全书版本的课程。它只是一些编码。它只是一些语法示例,一些指向文档的链接,好的文档,而不是包含AI废话的SERP,但你知道,就像MDN或Python文档一样。并且在你在网站上的任何时候,你现在可以使用键盘命令,或者你可以点击你的魔法书,
所以,
所以它有点像在很多游戏中,手册几乎是构建出来的。当你玩《如龙》之类的游戏时,你不会一开始就解锁所有动作,对吧?你必须实际使用你的日元来购买动作。然后一旦你购买了它们,它们就会添加到你的动作列表中。然后你会发现它们是如何工作的,诸如此类的事情。所以不仅仅是在实际学习课程中取得进展,而且还在你学习的过程中构建你自己的小维基。是的。
是的。而且很多反馈都围绕着这一点,一部分是关于这个,就像,我需要文档参考。一部分也是像,哦,我希望我有备忘单。我说,哦,这是一个备忘单。它也像,我想做笔记。我可以在哪里做笔记?就像,哦,你实际上不需要做笔记,除非你真的喜欢自己打出来。就像我们,我们做了笔记。你只是,你解锁了它们。是的。所以。
这很酷。好吧,我想谈谈大学。所以我和你都上过大学。我没有像你和你的两个兄弟一样学习计算机科学。我的本科专业是英语和新闻学。然后我继续攻读研究生学位。但是……
你认为发生了什么,如果,如果我们退一步看35000英尺的高度。哦,我想找到一个搜索引擎结果页面(SERP)。如果你之前听到过这个缩写,我只是想确保人们不会觉得我们像很多营销人员那样使用一堆行业术语并故意试图混淆事情。好的。那么你认为大学发生了什么?呃,
为了让美国以外的人们了解情况,顺便说一下,大学就是大学。我们只是将大学和学院称为同一件事,尽管从技术上讲有学院和大学。美国人很懒,我们只说学院或学校。对。当我们说学校时,我们通常指的是美国的高等教育。所以,嗯,
现在有很多大学正在倒闭。有很多私立营利性大学不是文凭工厂。这是一件完全不同的事情,他们实际上是在什么都没做的情况下给你文凭。这些是真正的大学,其中许多都是获得认证的,但它们是私立营利性的,他们的目的是吸收尽可能多的GI法案资金或尽可能多的,你知道,佩尔助学金,就像联邦学生贷款,他们基本上可以获得任何东西。你知道,
他们试图赚钱。所以在这种情况下,大学是一项营利性事业。但事实上,美国的大多数大学都是非营利的,例如由教会拥有,这通常是拥有大学的主要组织,或者它们由州拥有。就像你去的学校,是公立州立学校吗?是公立的,是的。这里也是一样。我去了公立州立学校。所以为了说明这一点,我们正在谈论一个非常广泛的组织
美国高等教育选择的种类繁多,但我认为在几乎所有情况下,事情都变得越来越昂贵,而质量并不一定与价格同步发展,在收益和上大学的预期价值方面并没有相应的改进,也可能正在趋于平稳
你对此有什么看法?我意识到我刚刚通过分享很多负面信息来完全加载了这个问题。关于这一点,我可以说很多。我可以花三个小时来谈论它。我会尽量快速地概括重要的部分。嗯,
我对这个问题的看法发生了很大的变化,我想明确一点,我喜欢,我没有规定行为。我只是在给出我个人的观点,而我拥有的信息量非常不完整。当然,我会说这是一个很好的信息量,但它确实非常不完整。嗯,
我认为,如果你在美国是18岁,你可以上州立学校,你可以在上大学期间工作,这样你就不用贷款了,或者你可以获得奖学金或助学金之类的东西,那么上大学获得一个真正有良好职业前景的学位仍然是完全有意义的。我相信计算机科学仍然是最好的学位之一,如果你想在科技行业工作的话。是的。
即使你想去其他科技领域工作,计算机科学学位仍然是你能掌握的伟大的硬技能之一。嗯,我认为大多数STEM领域都是这样。嗯,
我们的STEM学位就是这样。我认为有很多学位在你的赚钱潜力方面几乎没有影响。而且我想说,超过50%的学位可能对你的赚钱潜力几乎没有影响。嗯,如果那是你考虑进入的领域,我甚至不会上大学。你可以进入这些领域。我只是,我不知道你为什么要花四年时间。嗯,
然后还有一些人年纪比较大。我们在Budev的人群年龄稍大一些。平均年龄实际上是30岁左右。那些年纪比较大的人……
正在考虑进入科技或编程领域,他们正在考虑重返学校。我认为这就是我再次认为,我不会规定你永远不应该这样做,但我认为你在这里需要更加小心。像晚年重返学校,贷款,为了上学而辞职,嗯,获得计算机科学学位。我认为这就是它真的开始不再是一个好的默认值的地方。你应该这样做。嗯,它非常昂贵。嗯,
你在计算机科学学位中学到的所有东西都可以在网上学习。事实上,有很多东西你在计算机科学学位中学不到,但你仍然需要在网上学习。对我来说,是Git。我在学校根本没有学习Git。直到大四我才被介绍到这个概念,而且我没有学习它。它就像,哦,也许我们使用的东西,你也许应该看看。所以无论如何,仍然会有很多自学。
如果我发表关于80年代发生的事情的意见,我觉得是70年代、80年代。这是一个非常好的建议,如果你可以上学,如果你可以上学,只有很少一部分人以人口的百分比毕业,获得大学学位。所以它确实让你与众不同。即使你没有从事那个确切的领域工作,仅仅拥有一个学位就是让你与众不同的东西。在美国,至少拥有学位的总人口百分比是
再次,作为总人口的百分比,已经大幅上升。所以它不像以前那样是一个差异化因素了,嗯,比以前少了。所以公司往往不太关心它。嗯,拥有这些文凭的人更多了。嗯,但成本,所以它就像,它就像,嗯,嗯,它赋予你的独特性,获得学位的独角兽价值,就像,让我们暂时完全忽略它的教育成分。嗯,
拥有学位的独特性和特殊性随着时间的推移而下降,比如在过去的30到40年中。成本天文数字般地上涨,而这些成本中的大部分都用于支付贷款利息或实际成本,贷款的用途主要是管理。学校增加了管理人员。而且
你可以争辩说,它实际上并没有对学习的价值或学习质量的提高产生那么大的影响,以一种成比例的方式。所以它就像,你从两方面都被打击了。呃,这并不是说你今天不应该上学。我真的,再次,如果你18岁,我认为这绝对,绝对有意义。特别是如果它是免费的,就像我的情况一样,我仍然会再次上学。就像我18岁。我获得了州立学校的全额奖学金,便宜的学校,呃,
我有四年时间。我只有18岁。就像我肯定会再次这样做。嗯,但并非每个人都处于那种确切的境地。是的。我的意思是,获得全额奖学金是一件大事。顺便问一下,你是怎么得到的?
基本上就是高中获得的学术奖学金。我做了一堆同时入学类型的事情。所以我高中时上了很多大学课程,然后就是GPA、ACT分数之类的东西。对于那些正在收听并且有高中孩子的听众,我意识到这已经过去了很久,或者如果你正在读高中并且正在收听这个节目,首先,祝贺你如此早熟,并且愿意听30多岁和40多岁的人在非常高的层面上谈论教育、软件工程、劳动力市场等等。我高中时肯定不会听这个,但我没有获得全额奖学金。我只是去了一个非常便宜的州立学校。我想我每学期学费和杂费要支付1000美元。我没有买书。我只是复印了它们。
但是,嗯,书一本要300美元。太疯狂了。是的。是的,或者你只是借用你朋友的书,然后拿走它,然后复印它。就像,你知道,在Kinko's花20美元,你就可以得到一本装订好的副本。我意识到这是盗版。而且,呃,
是的,对不起。大型教育集团使教科书的成本非常高昂。顺便说一下,如果你需要一本足够好的教科书,它叫做OpenStax。S-T-A-X。
你可以获得免费的同行评审,就像博士撰写的教科书,它们是知识共享3许可的。哦,酷。如果你不想花钱买书,并且拒绝成为海盗并复印你朋友的教科书,你可以使用这些书。所以有很多替代方案。我离题了。所以……
假设有人正在读高中并且正在收听这个节目,或者他们是一个家长并且有一个即将上高中的孩子。就像你会给他们什么建议?你是一个家长,但你的孩子还很小,甚至比我的孩子还小。嗯,你会根据你对劳动力市场运作方式的了解,根据你上学的经验,呃,能够回顾过去,呃,
你会对那些人说什么?如果他们也可能获得州立学校的全额奖学金,他们应该如何对待高中?市场比以往任何时候都更看重硬技能。
嗯,可以证明的硬技能。所以它不仅仅是你需要技能。我想非常清楚地说。你确实需要展示它们。只是学位本身不像以前那样是一种展示了。它更多的是关于投资组合。当我雇佣视频编辑时,我想看看哪些视频,就像我从未问过视频编辑他们是否拥有电影学位一样。就像,我只是想看看你编辑的所有视频,就像把它们发给我,我会看的。这就是唯一的事情,这就是,这就是面试前唯一发生的事情。嗯,
我认为很多领域都在朝着这个方向发展。我的意思是,贸易基本上一直是这样。你会喜欢做学徒。嗯,我的一些一般性建议是,首先要以一种更……我认为我们已经过度规定了“做你喜欢的事情”。就像,
上学,探索,做你喜欢的事情。嗯,这很有趣。如果你的父母超级富有,而且你生活中没有压力,比如,你知道,进入20多岁并能够赚钱养活自己。嗯,如果你来自一个更标准的,呃,中产阶级家庭,嗯,
而且你必须支付你的,而且特别是如果你必须贷款来支付你的学费。就像以投资回报率的心态去做。我将花费这么多钱,我将花费这么多时间
最后,我得到了什么?有时这会奏效。就像我说的,如果我再次18岁,我可以免费上州立学校,获得计算机科学学位,我会再次这样做。投资回报率是有意义的。好吧,对你来说是无限的。我的意思是,它并不真正无限。好吧,是四年。但你仍然在投资你的时间。你可能不得不支付,我不知道,他们会给你宿舍费吗?
住房和一切?我只付了学费。嗯,所以我支付了自己的房租。我实际上一直在工作,就像我在上学期间每周工作30个小时一样。嗯,但是,你知道,我实际上,我每个月都能存一点钱。就像,
但是是的,对我来说,这正是,这只是时间计算的问题,我花了四年时间。嗯,所以我只会说,无论你打算上什么学校,我都会非常重视这种心态,就像,我投入了什么?我得到了什么?如果我想做不同的事情,就像我可以学习我喜欢的东西,嗯,
不要为此贷款。就像学习你喜欢做的事情并不是一件每学期要花费5000美元加上利息的事情。就像你可以在你自己身上做到这一点。呃,所以我并不是说不要去做和探索你所爱的东西。嗯,但是有更便宜、更有效的方法来做到这一点。绝对的。就像,你知道,我已经学习了音乐,
而无需正式向任何人支付课程费用或任何费用,只需观看YouTube上的视频和阅读书籍等等。而且你,我不知道是否,呃,显然音乐是一件相对深刻的事情,有很多理论,有很多实践,还有,你知道,呃,如果你想成为一个,
一个好的音乐家,你需要吸收所有这些东西。所有这些东西。而且我只是用它作为一个例子,但这当然是有可能的。就像即使我有理论上的方法,我可以去附近的大学。我有北德克萨斯大学。美国最好的音乐项目之一,你知道,距离这里只有30分钟的车程。我可以去那里,从那里的一些学生那里上课等等。但我选择采取自学的方式,因为我
我喜欢能够与那些没有资源可以使用的人产生共鸣,因为freecodecamp是为那些没有资源可以使用并且需要让事情运转起来的人设计的。呃,你知道,我绝对认为,
喜欢学习你热爱的东西。就像有很多电影学校的毕业生,如果他们能找到一个像关键人物之类的职位,就已经很幸运了。也许这是一个粗略的描述,但我与许多学习电影、文学或其他类似专业的人交谈过。他们不一定能够在行业中找到好工作。电子游戏开发可能是最……
同意这个例子,因为他们只是虐待你,就像,“哦,你想从事游戏行业,是吗?死亡行军时间。”你知道,就像,是的,游戏开发者拿到的薪水只是你薪水的几分之一。如果你在像,你知道,这些API SAS公司或类似的公司工作的话,对吧?比如去Twilio找工作,你赚的钱可能是你在暴雪赚的三倍。对吧。所以,嗯,我只是想分解一下你在这里说的智慧。嗯,听起来,
如果你负担得起,学校是很棒的。我对学校的整个理念,就像那些抨击大学、说大学没有必要之类的人,我确实相信——如果你把大学免费了,那么很多人就会闭嘴,他们只会选择大学,对吧?因为他们会意识到它的价值。我认为你能够——你拥有——
有这种意识,你付出了努力,你的父母鼓励你等等。就像,你拥有的一切,你都能白手起家,获得上学的资金。我认为这太棒了。嗯,任何一位正在收听的、能够做到这一点的人,这都是一件大事。如果你,如果你甚至能获得一笔可观的奖学金去上学,嗯,我向你致敬,因为你能够做到这一点。嗯,
如果有人没有上学的能力,你认为他们应该怎么做?比如,你对一个连中产阶级都不是的人有什么建议?比如,每个人都喜欢认为自己是中产阶级。对吧。但是,如果你属于众多贫困劳动者中的一员,你知道,美国有数百万人实际上依赖某种政府。
因为他们的父母去世了,或者他们的父母残疾或精神疾病,或者其他许多不同的原因。他们不一定会处于能够上学的境地。上学可能就像,
他们甚至没有想到上大学是一种选择,他们只是希望在,你知道,2025年的那种比喻性的钢铁厂找到一份工作,因为它不像美国那样,尽可能地维持钢铁工业的生存。所以当你看到,如果你曾经看过boot dev的营销,比如我们的登录页面,例如,我们永远不会说的一件事,也许其他一些训练营会说的是,
它会很快,而且会很容易。这只是我坚决反对对学习编码说的话。我认为它很有趣。我们谈论的很多事情都像它有多有趣,有多令人愉快。你知道,像开发者生活方式的额外好处。我认为这一切都是真的。我们也没有过多地谈论它有多赚钱。它可能是赚钱的。这会波动。但是……
说实话。我认为像管道、建筑之类的行业,现在薪水相当不错。你有没有注意到房子贵得令人望而却步?部分原因是房屋建筑的劳动力越来越贵。这些工资在过去几年里一直在飙升。嗯,如果你,如果你愿意努力工作,就像,
你不想上学,或者你不想学习一项硬技能,比如,嗯,你知道,计算机,计算机编程。我个人会,会很喜欢这个。就像我宁愿做一名水管工或电工,而不是,你知道,在快餐店工作,例如。嗯,个人喜好。是的。嗯,只是因为它,是的,它不会,但我会整天听播客。你在开玩笑吗?好的。播客和管道工作。嗯,
我认为现在成为程序员的原因必须来自成为程序员的愿望。在某种程度上,你必须真正喜欢它。在2020年和2021年,很多人想成为程序员,不是因为他们喜欢编码,甚至不是因为他们喜欢电脑。这只是赚很多钱并且付出很少努力的想法。
这是一个糟糕的原因。你可能会失败,因为你正在与真正喜欢编码的人竞争。所以,嗯,你,你应该在某种程度上喜欢它。嗯,如果现在进入编程是有意义的,为了回答你关于“如果我不能上学怎么办”的问题,嗯,我绝对会从在线学习开始。太疯狂了。如果你不从在线学习开始,就像,
在FreeCodeCamp上是免费的,在BootDev上也是免费的。顺便说一句,我们还没有讲到这一点。对人们来说并不总是显而易见的。BootDev上的所有内容都是免费的。这就是为什么我们完全愿意录制我们的完整课程并将其发布到FreeCodeCamp的YouTube频道上的部分原因。我希望最终能将我们所有的课程免费发布到YouTube上。只是互动性和游戏化是我们的盈利模式。
嗯,你可以免费或以很少的钱学习很多东西。嗯,如果你想要这种增强的体验,而且它就像,风险这么低,基本上只是你的时间。所以,而且也没有理由等到高中毕业。就像我的孩子们在高二、高三、高四年级的时候,我会鼓励他们弄清楚他们喜欢做什么。就像,让我们去学习一下吧。就像,这是怎么运作的?让我们去吧。也许,也许这是你可以做的事情,比如编程。显然,你可以在高中时就做。我在高中时就做了。是的。嗯,
很多事情都是这样的,你可以在毕业前了解很多关于它的知识,并获得一些领先优势。是的。所以在线学习,风险非常低,非常方便。就像大多数学习资源都是自定进度的。最初有一个很大的推动,就像我们将会有MOOCs,大型开放式在线课程,每个人都会像,我们会每周进行一次,它就像大学课程一样。这很快就被放弃了,因为他们意识到人们很忙,他们,你
你知道,不想在这种跑步机上。他们希望能够在任何有时间的时候去做。所以一切都变成了自定进度的,所有这些。所以,你知道,它不仅免费提供,而且是异步的,你只需要一个互联网连接。很多时候你甚至不需要特别强大的互联网连接。就像你在编写代码时,你们是否都进行转译,或者你们是否使用Wasm或其他类似的东西,嗯,就像当你在做Go挑战之类的事情时,你是否,
你会在浏览器中这样做吗?你能将其转译成JavaScript之类的吗,以便你实际上可以对其进行评估?是的,我们对Go和Python都使用Wasm。所以,嗯,Python,你实际上将Python解释器下载到你的浏览器中。我们使用这个名为Piedad的开源项目。嗯,你实际上会在浏览器中获得一个小的Python解释器。它在WebAssembly中运行。嗯,对于Go,我们将你的Go代码发送到我们的后端。我们将其编译为WebAssembly,然后发回。对吧。
运行WebAssembly。是的。所以数据量甚至没有那么多,这就是我的意思。就像,即使你的数据计划有限,
当你移动代码时,这不像我们从YouTube移动1080p视频之类的东西。它非常轻量级,你可以在手机上做这些事情。FreeCodeCamp有一个关于如何学习编码的课程,关于如何实际编写代码,比如他们可以在手机上使用的编辑器之类的东西。所以我绝对认为学习从未如此容易获得。只是人们需要意识到它就在那里,然后他们需要停止浏览TikTok或其他东西,并开始学习。对我来说,这太疯狂了。
将计算机科学学位或训练营作为第一步。这太疯狂了。就像你可以,你至少可以花几周时间学习FreeCodeCamp或BootDev之类的东西,以确定你是否喜欢这件事,然后再花10000多美元去做这件事。而且要花两到四年或更长时间,就像把你的脚趾伸进水里,看看你是否喜欢它。你说的关于很多人以前进入编码行业是因为
钱。我非常清楚地记得,因为我在,你知道,硅谷,嗯,旧金山,我在FreeCodeCamp的早期住在海湾地区。我遇到这些人,他们会去训练营,我认为他们中的大多数都被收购了,嗯,很多时候都被关闭了。嗯,比如去像,
哪个是最大的?Dev Boot Camp和Hack Reactor之类的。这些都是相当不错的项目。没有什么问题,但在我看来,他们夸大了承诺。我认为人们不可能在这么短的时间内有效地学习东西,正如你指出的那样。但这将是很多人来自华尔街。
就像他们会说,“哦,我可以作为开发者赚的比作为财务分析师赚的更多。所以让我们搬家吧。”我想知道如果他们实际上并不关心编程,他们只是因为现在薪水更高而这样做的人现在怎么样,因为它现在不一定薪水更高。这实际上提出一个有趣的观点,我确实想提出来。
虽然像经典的Web开发者软件工程师从2020年、2021年开始确实处于低迷状态,但这只是一个,这再次是个人猜测,不要将其视为福音。我认为在接下来的五年里,拥有良好的开发者技能在许多非开发者工作中将非常有用。比如可以使用SQL和Python的财务分析师,对吧?嗯,
知道如何使用的营销人员,我的意思是SQL非常有用,JavaScript了解事件如何在网站上触发,就像我认为随着AI的推动,人们在某种程度上获得了解决更多自身问题的能力,对这些东西的基本理解将使你更有用,鉴于AI助手……
所以这只是一个个人猜测。我认为这些技能在明确的开发者工作之外将更有用。
是的。嗯,我100%同意。嗯,我必须指出,像电子表格、文字处理器和PowerPoint类型的幻灯片,像微软Office一样,在90年代突然出现,没有人知道如何使用它。十年后,就像,你甚至不会在你的简历上指出你知道这一点,因为这会让你看起来像个业余爱好者,对吧?就像理所当然地认为每个人都知道如何使用Excel。是的。
理所当然地认为每个人都知道如何制作PowerPoint,甚至使用Microsoft Access之类的东西。我相信随着人们对技能期望的提高,你知道,20年后,如果你不知道SQL,而你像知识工作者类型的工作,这将是很奇怪的。
所以,嗯,我,我绝对想,嗯,认可,嗯,你刚才说的。是的,我认为可能会有一个过渡时期,它就像开发者技能将是一种不错的选择,它会让你在其他,你知道,财务分析师或律师或我们在这里谈论的任何知识工作者类型的工作中领先一步。如果你知道这些东西,然后,嗯,
逐渐地,那些不知道这些技能或没有学习这些技能的人将从这些雇主那里过渡出来。而且几乎每个人都会每天都知道并使用这些技能,因为它们非常有用。就像在我看来,学习SQL是理所当然的。学习如何,你知道,如何使用bash脚本进行cron作业之类的事情是理所当然的。对吧。我真诚地认为,嗯,公司,嗯,
将找到方法来自动化和数字化。仍然有很多事情是由纸张或传真机完成的,或者人们通过电子邮件发送电子表格等等。这将逐渐转移到软件层。这将要求你了解这些软件层的工作原理,也许是几层抽象层,嗯,这样你才能能够,你知道,
在这些公司做你日常的工作。所以我认为学习你们正在教授或我们正在教授的这些技能没有任何风险。是的。你对AI助手及其可能解锁的价值有何看法?我的意思是,你提到,你说,在这里,我要引用你,因为我一直在做详细的笔记。我的Sublime Text中有190行。你说,营销人员,或者你说,
随着AI赋予人们解决更多问题的能力,这将使他们在AI助手的帮助下变得更有用。所以即使AI助手变得越来越强大,知道如何使用这些的人
可能会有一个杠杆效应,AI只会变得强大20%,但由于这20%的改进和知道如何利用它,人类会变得强大60%。你认为这种现象可能发生,我们可以获得突破性的生产力提升吗?是的。我个人注意到自己谷歌……
越来越少。就像你说的,你注意到了这一点。我在我们的网站上注意到了这一点,就像SEO,搜索引擎流量。我想你可能也在你的网站上注意到了这一点。人们使用谷歌查找精确信息,比如非常……
你知道,对非常广为人知的概念的解释,这可能是我用来定义它的方式,它确实一直在大量转向LLM。嗯,因为我的意思是,这些东西编码了很多非常基础的知识。它们会产生幻觉,它们会出错,但它们对许多事情都有近似的了解。对吧。嗯,例如,前几天一件非常奇怪的事情是,我需要了解一些关于Google Analytics API的非常深奥的东西。
而谷歌的文档很糟糕。它很糟糕。我花了大约半小时搜索它。我问了LLM,它说,就是这样。我说,好吧,我不知道是这样。所以如果我不是程序员,我可能会做的是照单全收,然后说,就是这样。我会把它,我会把这个语法放到我的代码中并发送它。也许它有效。可怕。我是一个开发者。所以我看着它,然后说,这甚至有意义吗?你知道,我可以看到他们这样做。好吧,告诉你什么。
打开我的HTTP客户端。让我们测试一下。看看它现在是否有效。我有信心发送它。基本上没有幻觉的风险会让我失败。对吧?所以就像你仍然需要技能,对吧?这是,
Chad Jippity向你吐出一个巨大的SQL查询。你需要能够查看它并说,如果我针对我的生产数据库运行它,它会做什么?但它可以提供你需要的语法。它就像,“哦,等等,我又如何使用这些特定的键连接三个表?我可以再次检查我的语法吗?”它会赋予人们很多超能力,但它至少……
即使它现在变得好两倍,在我看来,我们仍然没有达到你可以直接使用它提供的内容的地步。你仍然需要能够验证它,核实它。嗯,所以我认为,我认为每个知识工作者都会,如果他们还没有访问AI助手,他们就会拥有一个。这就像在2005年不给你的知识工作者访问谷歌一样。是的。嗯,
但这实际上使你拥有的知识更有价值,因为你现在可以更快地行动。三年前,我会被那个Google Analytics问题困扰三天。我几乎立即摆脱了困境。是的,并且真正了解事物运作方式的开发人员的识别能力,如果错误的话会有什么危险,或者什么可以很容易地测试。就像你只需打开浏览器中的网络选项卡,然后基本上只需运行一些快速测试,
亲自验证信息是否准确。对吧。在我看来,这比Stack Overflow线程好得多,在Stack Overflow线程中,人们会说,“哦,我认为是这样。”然后你,你,你知道,你正在,你正在听取别人的话,嗯,
而不是你自己的运行快速实验的经验技能。你知道如何运行实验,对吧?我认为你通过实际花费时间来学习世界如何运作、技术如何运作而建立起来的直觉,将为你评估这类事情提供一个框架。这不仅仅是评估你从LLM获得的东西,因为你的同行也可能犯各种错误。如果可以快速轻松地测试,则不应将任何东西视为理所当然。
我的意思是,我们生活在一个任何人都可以在互联网上发布垃圾,谷歌可能会认为它是黄金并将其排名非常高的时代。我的一些做得非常好的文章,比如人们已经……就像我在Reddit上看到的那样,“嘿,他在这里打错字了。”我说,“哦,该死,我需要去修复它。”但谷歌并不在意我的文章中是否有错别字。无论如何,它都在将每个人发送到这篇文章。这很可怕,对吧?所以我认为……
随着世界变得越来越复杂,我们将会发展这些,这些我们将会通过实际花费时间学习基础知识和学习来发展的第一性原理,就像发展一个关于这些不同技术如何协同工作的思维模型。嗯,这将非常宝贵,特别是如果你正在做一些像工程师的工作,比如,嗯,
作为一名Web开发者,你可能会用你糟糕的SQL查询来擦除数据库,你知道,你天真地粘贴并运行它,你知道,GPT不在乎。GPT只是试图预测下一个标记。对吧。
是的,是的。也许这非常灾难性,就像,“哦,该死,我们必须进行回滚。”最坏的情况是GitLab的事情,他们丢失了整整八到十个小时的数据或类似的东西。它只是永久性的数据丢失。但假设你正在驾驶一辆卡车上运行的驱动程序,就像这辆在路上飞驰的大卡车。而其他人也在路上。或者波音公司,显然,这是一个非常……
为什么你需要非常小心并让真正优秀的人员进行质量保证等等的例子。就像如果你是律师,你实际上是在起草合同,你需要非常有信心,有很多判例支持你表达的方式等等。我认为会有这种寒武纪大爆发,人们会认为,他们认为自己拥有专业知识,他们认为他们从模型中获得的东西就足够了,所有这些。然后,
也许这与他们实际签署合同的时间相隔数年,他们意识到合同中存在一些根本性缺陷,这个早已过时的GPT旧版本将其吐出并永存于这份签署的合同中。我认为
认为我们将进入杰森一家,你只需按一个按钮。我知道我之前提到过。乔治·杰森的工作就是按一个按钮,机器从那里开始工作。他只是在那里,所以如果一切失败,他可以被责备。我认为我们离这还差得很远。我认为人们高估了进步。但与此同时,他们错过了这一点……
如果你真的知道自己在做什么,你可以更有效地完成事情。在我看来,现在学习在线技能从未有过更好的时机,而且它并不接近。就像观看我们在BootDev上一些更专注的学生一样,像航行一样浏览课程,使用靴子,摆脱困境。就像,这,这,学习比以前好多了。嗯,我认为很多人担心,哦,这真的有价值吗?嗯,
你应该学习一些东西。就像我,我一直在学习一些东西,对我来说,这从来都不是一个问题,我应该学习还是不应该学习?我应该学习什么?是的。这只是优先级问题。因为我的意思是,是的,如果给我的时间足够长,我相信我很乐意阅读威廉·莎士比亚的全部作品,你知道吗?是的。是的。我相信我很乐意,我很乐意做很多事情。嗯,但是
在任何给定时间,最高EV期望值的事情是什么?我认为我和你都会同意……
好的,假设人们不会使用FreeCodeCamp。他们不会使用Boot.dev。他们将建立自己的课程,因为每个人都喜欢这样做。每个人都喜欢自己制定课程,定制一切,并将互联网视为自助餐。这没有什么错。但我确实认为,如果你使用实际的课程学习,你会学得更有效,而不仅仅是搜寻资源并将它们拼凑在一起。但是你认为在2025年你可以学习的最高价值解锁技能是什么?好的。
假设你真的只是去图书馆拿书。任何东西。任何东西。哦,天哪。
好的,第一名,而且差距很大,是沟通,这很有趣,因为我认为沟通是一个糟糕的学位。但我认为沟通技巧可以说是你能学习的最好的技能。如何说话,如何清晰有效地写作。你可以写博客,对吧?你可以写博客。你可以发推文。你可以做任何事情。获得你写作的反馈。而我的原因……这是我最……
嗯,有信心向每个人推荐的是,每个知识工作者,嗯,都可以通过成为一名出色的沟通者来将他们的收入潜力提高十倍。嗯,没有开发者、营销人员、业务、业务发展、销售,无论你在知识工作中做什么,如果你是一位出色的沟通者,那就是你需要做的事情。如果我必须缩小范围。所以这是一项软技能。嗯,如果我必须将其缩小到硬技能,嗯,
我真的很偏见。我很难不说是编程。是编程。我不知道。我做那些其他事情。我现在是一名企业主。我做了很多营销工作。我做了一些销售工作。我做编程。编程是我到处使用的。我编写脚本。昨天,我必须发送一堆礼物。我们进行了黑色星期五促销,我们必须手动向3000人发送礼物,数字礼物。
通过无代码解决方案将其连接起来将是一场噩梦,几乎是不可能的。我花了大约半小时编写一个小脚本,只需从数据库中提取我需要的数据,将其连接到Stripe API、SendGrid API,砰,一切都发送了。嗯,如果我没有我的编程技能,我会感到瘫痪。是的。太棒了。好吧,这是对编程技能的相当大的认可。我认为这是一个今天结束的好地方。嗯,
Lane,从你那里获得尽可能多的见解真是太棒了。再次强调,这与Lane进行的完全未经编辑的对话。他并不知道我们进入这次谈话时要谈论什么。我对此也不太了解。我当然花了大量时间进行研究,基本上只是吸收每一集。不是每一集。我听了大约五到十集Back in Banter,并观看了你发布的视频。很多。它们很长。是的。是的。而且……
我希望我很好地激发了你尽可能多的见解。嗯,我将鼓励每个人查看我在下面链接的课程。嗯,而且,嗯,我还找到了Khan Academy的演讲。我找到了关于最近发展区的维基百科文章。如果你想做一些枯燥的维基百科阅读,但这里还有更多内容需要学习。嗯,我们将每周继续进行这些采访。再次感谢你的到来,伙计。
是的。很高兴你做了一个季度。这是播客的第二季,对吧?如果你想称之为第二季,我们做了,我们做了,呃,大概,我不知道,60集,然后我们完全停了。然后我们回来了,又做了大约一百集左右。所以,嗯,所以是的,就像继续下去一样。我的意图是永不停止。
继续寻找有趣的人来交谈并盘问他们。而且,而且就像,这对我来说,我学到了很多东西,因为它就像一个实时播客。呃,就像我,它就像一个互动式播客。因为像你一样,我每天都会听两个多小时的播客。如果只有一个关于学习的见解你想留给人们,就像,就像一些他们可以带回家,可以反思的东西。我知道我让你措手不及,但是,
人们在关闭这个播客时可以咀嚼些什么呢?如果他们听完了,两个小时20分钟,祝贺你拥有,我想,工作记忆能够记住所有这些,以及耐心。我们接受算法等的训练,基本上是信息浏览者,并且注意力持续时间很短。总有一些……
当你观看 YouTube 上的视频时,角落里总有一些非常诱人的缩略图,或者总有一些现实生活中的情况试图将你从收听和完成漫长的谈话中拉走。但这就是知识传播的方式。大学的讲座设计为一小时长。但我的意思是,如果你回到古希腊人那里,他们会坐下来,整天和苏格拉底交谈。那时没有什么可以分散你的注意力。是的。所以假装没有什么可以分散你的注意力。是的。
但是,有没有什么像辛辣的见解,你想告诉人们,这样他们就可以在不听播客的时候思考一些事情?是的。我之前说过,但我将用不同的词语和不同的强调再次说出来。你应该在消费时进行生产。让我们,让我们以创业为例,这是我过去四年一直在努力学习的东西。
我可以收听像 Indie Hackers 这样的创业播客。我喜欢那个播客,在它停止之前。如果我只是听完 200 集而不做任何事情,我会忘记所有事情。在你做事情的同时看书会给你带来比不做事情时看书多得多的见解。这并不意味着你不能在你没做事情的时候看书,但我实际上发现有一些例子,我读了一本书,而我没有做那件事。
然后我做了那件事,我又读了那本书,就像我在读一本全新的书一样,因为它被应用到你正在做的事情上。所以,如果你想成为一个更好的作家,你应该写作。如果你想成为一个更好的程序员,你应该编程。你应该消费内容,也许是 20% 的时间,但你需要积极地做这件事,然后消费内容将对你正在做的事情有不同的视角和应用,而你
这就是一条建议。这就是一件事。如果你只这样做,无论你学习什么,你都会做得很好。所以边做边学。再次感谢 Lane。大家请收听。下周见,编码愉快。