首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何成为优秀程序员?

渴望是知道更多事情,琢磨更多事情,做更多事情。...成功从事开发工作 7 个月后,已经给几百人回复了邮件,他们问我如何成为一个程序员,寻求我建议,他们想知道如何判断自己是否适合去做一名程序员。...急匆匆完成?加班加点希望能多完成一些?在理想世界里,编程是一个很有趣活动,我们写出代码,让它们完成很酷事情,吃着批萨,喝着可乐。...这个应用工作原理是什么?那个横跨街道建筑是怎么建起来?程序员之间对话听起来总是像这样开始:“很奇怪他们为什么要这样做…?”...以前以为问这么多为什么是很奇怪表现,但现在明白,至少是在软件开发中,这是一个好品质。 ««« 不明白事情会引起你好奇心吗?新事物会让你兴奋想搞清楚原理吗?

65050

如何判断自己是否具有成为一名优秀程序员潜质

成功从事开发工作7个月后,已经给几百人回复了邮件,他们问我如何成为一个程序员,寻求我建议,他们想知道如何判断自己是否适合去做一名程序员。 ?...急匆匆完成?加班加点希望能多完成一些? 在理想世界里,编程是一个很有趣活动,我们写出代码,让它们完成很酷事情,吃着批萨,喝着可乐。...这个应用工作原理是什么?那个横跨街道建筑是怎么建起来?程序员之间对话听起来总是像这样开始:“很奇怪他们为什么要这样做…?”...以前以为问这么多为什么是很奇怪表现,但现在明白,至少是在软件开发中,这是一个好品质。 ««« 不明白事情会引起你好奇心吗?新事物会让你兴奋想搞清楚原理吗?...优秀程序员总是在钻研程序代码和文档,来弄清楚东西工作原理,他们不会敲开老板办公室们说:“需要上培训课,学习这款新软件”。

60860
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何判断自己是否具有成为一名优秀程序员潜质

    渴望是知道更多事情,琢磨更多事情,做更多事情。...成功从事开发工作 7 个月后,已经给几百人回复了邮件,他们问我如何成为一个程序员,寻求我建议,他们想知道如何判断自己是否适合去做一名程序员。 ?...急匆匆完成?加班加点希望能多完成一些?在理想世界里,编程是一个很有趣活动,我们写出代码,让它们完成很酷 事情,吃着批萨,喝着可乐。...这个应用工作原理是什么?那个横跨街道建筑是怎么建起来?程序员之间对话听起来总是像这样开始:“很奇怪 他们为什么要这样做…?”...以前以为问这么多为什么是很奇怪表现,但现在明白,至少是在软件开发中,这是一个好品质。 ««« 不明白事情会引起你好奇心吗?新事物会让你兴奋想搞清楚原理吗?

    96090

    你不就是加了 2 行代码为什么要用 2 天?

    英文:Matt Lacey, 翻译:程序员那些事(id:iProgrammer) “你只是加了 2 行代码为什么要用 2 天?” ? 这是一个看似合理问题,但做了一些可怕假设。...代码行数 = 努力 代码行数 = 价值; 所有代码都有同等价值; 上述 3 个假设都有误。 为什么 1 个看起来很简单修改,要花 2 天时间才能完成?...试着用提供信息做尽可能多事情知道有些开发者不喜欢必须修复 bug,所以会不惜一切代价来“逃避”。声称没有足够信息是一种“好方法”,看起来你是想帮忙,但不需要做任何事情。...(治本,不止治标) 如果一些代码抛出了错误,你可以直接用 try...catch 语句把包起来,然后抑制错误。没有错误,就没有问题。对吧?抱歉,对来说,让问题隐形不等于解决问题。...7、因为做了更彻底测试,并验证了解决了所有受影响不同代码路径问题。 不想依靠别人来检验所做是正确不希望在将来发现错误,不得不回到这段代码。场景切换既代价昂贵又令人沮丧。

    54420

    作为一名JS开发人员,是什么使夜不能寐

    旁注:你可能想知道为什么提到了类方法,但没有提到原型方法。那是因为 JavaScript 没有方法概念。函数在 JavaScript 中是一流,它们可以具有属性或是其他对象属性。...因此更安全,通常情况下也更快,并且编写这样代码更容易。为什么我们又需要类了呢?哦,当然是可重用性。如果我们想要一个unhappy 且 enthusiastic greeting会怎样?...简直是 JavaScript 神器级别的代码没有任何讽刺意思。...而且 class 既不去修复,也不会让你不得不去理解原型。如果你了解到面向对象设计模式在没有类或 ES6 继承情况下正常工作提示,则可获得额外好处。 并没有告诉你要完全避免 class。...除此之外,许多流行前端框架鼓励使用它,你应该避免在原则上单独编写奇怪非标准代码只是不喜欢发展方向。

    99520

    解决 iOS 15 上 APP 莫名其妙地退出登录 解决 iOS 15 上 APP 莫名其妙地退出登录

    虽然有很多第三方库来包装这个框架以使事情变得更容易,但我们还是基于一些苹果示例代码来维护我们自己简单封装。...看一下这段代码,我们调用 SecItemCopyMatching 方法来加载我们访问令牌,返回数据以及描述结果 OSStatus 代码。...即使能够重现这个问题,也100%确定手机在点击应用图标的时候是解锁,所以我不明白为什么会出现这个Keychain错误。...在这里学到了重要一课,即不应该假设受保护数据在AppDelegate初始化时是可用,但说实话,还是不高兴,因为不明白为什么它不可用。...仍然不知道这种预测是如何形成,但我只想把归结为 "Siri智能",然后就到此为止了。

    1.6K20

    最令程序员恐惧 10 件事,据说还没有全部“躺枪”

    这就是为什么一些程序员强烈建议新软件工程师熟悉运行代码底层硬件和系统,以减少未来交恶。...引用: “任何曾经被调用来调试数据库服务器上奇怪崩溃或为什么RAID驱动器不能正常工作程序员,都知道最后发现是硬件问题的话该是一种怎么样痛苦。”...——Ratnakar Sadasyula “喜欢这样子,当有人问一些微不足道事情时,就随便抛出一个功能,而这个功能需要用几十年时间推进CompSci领域来实现。”...无论是继承先于你工作之人遗留代码,第三方API,还是由顾问编写代码,你都不能完全避免修复、增强和/或整合他人程序问题。当然,这样做会导致开发人员拔掉一些——或很多根——头发。...引用: “…最糟糕地方是,你不得不处理一些其他人代码,找出来,调试,调整。更糟糕是,如果你前面的人已经离开了公司,那么就真的只能靠你自己摸索了。”

    74060

    程序员们必须在工作中不断学习成长

    我们经常思考一件事是如何让程序员获得最有效学习经验。今天,将谈谈如何成为一个有效学习者一些研究,以及我们作为程序员和工程师,如何将这些研究应用到我们日常生活中。...顺便提一下,“不是一个人”这个例子是由研究支持,Dweck和合作者做了一个关于交友和社交研究,这项研究也在那里进行。 你如何改变一个固定心态?...但是,如果有一个bug要修复必须修复,并且抱怨bug存在不会帮助我更快地修复认为即使是在一个截止日期迫近世界里,你仍然可以运用这种态度。...询问过程 改变固定心态最后一个策略是询问过程。像你们很多人一样,一些伟大工程师一起工作。有时候,我会试着修复一个棘手bug,并且不能,然后其中一个就能马上修复。...这也是为什么非常喜欢别人 Review 代码原因,因为别人能看到我代码中存在不足。另外,有些时候,对现有的方案做一些 「微创新」也能使原本普通方案变得不普通。

    38850

    最令程序员沮丧十件事

    这就是为什么一些程序员强烈建议新软件工程师熟悉运行代码底层硬件和系统,以减少未来交恶。...引用: “任何曾经被调用来调试数据库服务器上奇怪崩溃或为什么RAID驱动器不能正常工作程序员,都知道最后发现是硬件问题的话该是一种怎么样痛苦。”...——Ratnakar Sadasyula “喜欢这样子,当有人问一些微不足道事情时,就随便抛出一个功能,而这个功能需要用几十年时间推进CompSci领域来实现。”...无论是继承先于你工作之人遗留代码,第三方API,还是由顾问编写代码,你都不能完全避免修复、增强和/或整合他人程序问题。当然,这样做会导致开发人员拔掉一些——或很多根——头发。...引用: “…最糟糕地方是,你不得不处理一些其他人代码,找出来,调试,调整。更糟糕是,如果你前面的人已经离开了公司,那么就真的只能靠你自己摸索了。”

    66350

    最令程序员沮丧 10 件事

    这就是为什么一些程序员强烈建议新软件工程师熟悉运行代码底层硬件和系统,以减少未来交恶。...引用: “任何曾经被调用来调试数据库服务器上奇怪崩溃或为什么RAID驱动器不能正常工作程序员,都知道最后发现是硬件问题的话该是一种怎么样痛苦。”...——Ratnakar Sadasyula “喜欢这样子,当有人问一些微不足道事情时,就随便抛出一个功能,而这个功能需要用几十年时间推进CompSci领域来实现。”...无论是继承先于你工作之人遗留代码,第三方API,还是由顾问编写代码,你都不能完全避免修复、增强和/或整合他人程序问题。当然,这样做会导致开发人员拔掉一些——或很多根——头发。...引用: “…最糟糕地方是,你不得不处理一些其他人代码,找出来,调试,调整。更糟糕是,如果你前面的人已经离开了公司,那么就真的只能靠你自己摸索了。”

    34130

    什么是第一性原理?

    自从听见这个词儿,也只是人云亦云,竟然从来也没有认真考察过。 直到今天,品着茶,读老喻文章。才看到了马斯克这段完整译文: 在想存在一种好思维框架。...许多人弄不明白,既然搞IT平时都鼓捣个计算机,为什么还得分成搞硬件、搞架构、搞通讯、搞操作系统、搞软件、搞算法、搞应用? 不都是一回事儿吗?...,中间没有埋伏黑客恶意代码…… 只有这样,你才能充分发挥自己聪明才智,把自己擅长事情做好,甚至是做到极致。...岛上就多了一些奇特新祭祀活动——岛民在身上用红色颜料写 USA ,用木头做成眼镜形状,盯着树叶来回翻看,还用木头和干草做了架假飞机,等着物资从天上掉下来…… 这个例子有些极端。 换一个例子。...以我上课经验来看,97年出生同学们,就只有个模糊印象了。 帮你普及一下历史知识。大概是这样: ? 或者这样: ? 那时候手机,怎么长得那么奇怪为什么要弄个实体键盘?

    2.3K00

    Electrum比特币钱包Python代码分析

    ) 真的不建议使用这个代码看起来有点奇怪不是加密专家,但我只是不喜欢这如何将熵插入你数字。...分析种子生成器 好了,现在我们知道如何生成种子,让我们看看种子生成器究竟做了什么。毕竟使用Electrum所有人都必须依赖此代码安全性和完整性,否则如果这些代码被写得很糟糕,你可能会损失所有的钱。...这里发生事情很有意思,首先使用mnenonic.py文件中normalize_text()函数对种子进行规范化,认为中文或其他奇怪语言会被转换成认为ASCII文本。...所以我们从132位开始,由于修复了前2个字符,我们丢失了一些位,然后我们保持128位,这在计算上是安全。...仍然对custom_entropy事情持怀疑态度,应该问一下dev究竟做了什么,但除此之外,默认钱包生成是完美无缺认为没有后门。

    1.7K40

    解决 iOS 15 上 APP 莫名其妙地退出登录

    虽然有很多第三方库来包装这个框架以使事情变得更容易,但我们还是基于一些苹果示例代码来维护我们自己简单封装。...看一下这段代码,我们调用 SecItemCopyMatching[2] 方法来加载我们访问令牌,返回数据以及描述结果 OSStatus 代码。...即使能够重现这个问题,也100%确定手机在点击应用图标的时候是解锁,所以我不明白为什么会出现这个Keychain错误。...在这里学到了重要一课,即不应该假设受保护数据在AppDelegate初始化时是可用,但说实话,还是不高兴,因为不明白为什么它不可用。...仍然不知道这种预测是如何形成,但我只想把归结为 "Siri智能",然后就到此为止了。

    90310

    干货 | 从资深软件工程师学到避坑大法

    因为不管这个函数有多大,你都不会觉得奇怪,毕竟这个函数应该做所有的事情。这时候就需要改名、重构了。 有意义命名也有不太好一面。如果名字表意太强,结果掩盖了一些功能上细微差别怎么办?...历史代码和下一名开发者 你曾否看过一些代码,觉得它们很奇怪?这些代码为什么这么做呢?它们实现一点都不合理。 曾负责过遗留代码库。...没有减少这些技术累赘,反而增加了代码复杂程度,以及误导别人可能。下一个人将事情拼凑起来会更困难。 现在受到启发是:有一些代码你可能不理解,也有一些代码你知道永远不会用。...同行审查对来说变得更有趣了——这是期待游戏——一个提高代码意识游戏。 启发是:在理解代码如何实现前不要批准。...当你修复 bug 时,你不仅仅关注如何修复 bug,而是你为什么不早点发现呢?是否有布置警报?如何能够更好地监控来避免类似的问题? 还不知道如何监控 UI。

    57120

    为什么Java、Python会成为程序员最害怕编程语言?

    那么,这些令人不快、不受欢迎编程语言都是哪些呢?为什么程序员如此害怕使用这些编程语言呢?如果有机会的话,很难不会加入一些理论,甚至说一些不明智的话。...这听上去没有“恐惧”那么可怕;“没有表示有兴趣继续使用一种语言工具”这一提法本身就是一种相当模糊畏惧暗示。做过很多事情都不想再做了,包括编写产生 shell 脚本 troof 宏。...不喜欢某一门编程语言原因可能是“道德连坐”:因为不喜欢一个庞大、过时、文档最少代码库,以及每次修复一个 Bug 都会破坏其他东西架构风格。...就算你相信 Ruby 真的减少了 90% 代码行(反正不信),一个大数目的 10% 仍然是一个很大数字,特别是如果你有责任消化这些代码,包括背后发生事情。...R R 在“最令人畏惧名单”中排在第 10 名。认为这是因为一种误解。R 既是也不是一种通用编程语言。一些统计学家告诉,“你们程序员不明白,R 是一个统计工作台,并不是一种编程语言。

    63210

    【混沌工程】故意破坏和混沌工程

    在这样做了几年并从事了许多不同项目之后,偶尔只是,“我们需要这个项目成功,一开始就有一个良好基础,所以亚伦,你在这个项目上做了六个月然后你正在做一些不同事情。”这真的很有趣。...该怎么做呢?不明白。有时一整天都在上 Slack 频道,回答问题,非常乐于助人,并试图记录事情,试图了解人们在做什么。 这是一整天,有时。...有时我会解释为什么会有这些东西。有时同意人们看法。“是的,很糟糕。不想这样做。” 但与此同时,你会有他们只想进来、写代码、回家的人。他们不想考虑除此之外技术。他们不一定要去自己学习东西。...这会变得很困难,因为你会遇到奇怪边缘情况,因为我们弯曲了,所以正在做一些奇怪事情。就像,嗯,那不是错。...尽管我不像以前那样编写代码,但我带来了应用程序开发人员观点,但我不再每天都编写代码了。 总是说这会让很痛苦。它不是。仍然在想,当我开始编写代码时,一直在寻找如何改进这个设置?

    52830

    如何写好一份渗透测试报告?

    但是,敢打赌,在这些材料中,只有不到10%是在讲写报告事情。在一个完整渗透测试过程中,有将近一半时间都用在了编写报告上,这听起来很让人吃惊,但是也并不奇怪。...高级管理人员根本不关心,或者压根不明白意思,如果支付服务器使用SSL v2加密连接。他们想知道答案是“我们现在到底安不安全?”...阅读这份报告后有两个人脸色变得苍白,而第三个人笑着说“太好了,没有数据库安全问题”。 IT人员是负责修复测试过程中发现问题的人。他们想知道三件事:受影响系统名称,该漏洞严重程度以及如何解决。...内容提要 见过一些简直像短篇小说一样内容提要,其实这部分一般要限制在一页纸以内。...不要提及任何特定工具、技术,因为客户根本不在乎,他们只需要知道是你做了什么,发现了什么,接下来要发生什么,为什么。执行摘要最后一行应该是一个结论,即明确指出是该系统是安全还是不安全。

    2.3K100

    Node.js创造者,Ryan Dahl专访

    但碰巧是,相对失业,有一些空闲时间,可以连续工作几个月,这就是可以创造一些必要条件吧。 Pramod: 你做得很好。Node是建立在“纯粹异步”编程模型思想,这个想法是如何产生?...Node是一个大项目,当第一次出现时候,四处走了一圈,做了一系列谈话,试图让人们相信也许我们正在做I/O错误,如果我们以一种非阻塞方式完成所有事情,那么我们就可以解决很多编程上困难。...当然,在余下生活中,有无数缺陷需要修复,有足够多的人参与,因此不需要这样做,想去做其他事情。再加上Go出现事实,并没有看到Node是服务器最终解决方案。...虽然认为它们其中一些目前仍在次要位置,像我社交网络项目,我会在某个时候回来。做了一会儿,然后开始阅读卷积网络以及图像分类是如何解决,这让对机器学习非常感兴趣。...不明白为什么我们有一天能够在这个领域有足够研究和工作,却不能够效仿这种行为,这真的是太远了,很难预测会有多长时间。 Pramod: 你想在未来20年看到什么科技?

    1.4K41

    Chrome 百度搜索热点过滤插件 - 开源软件

    但是,时间久了你会发现,你总会被网络上一些奇怪怪或者有趣事情吸引过去而逐渐忘记自己曾经打开百度是要干什么?时间就这样被一些无关紧要有趣事情给浪费了。...但是一些非广告信息实在是广告清除插件不能判断了!无用事情浪费了大量时间!!!这让十分生气!!尤其是百度搜索热点,真不想再看到: ? 这些所谓热搜,很多时候是带有娱乐性质!...我们重要事情是干什么?是学习!! 在强烈愤怒之下,为了让专心“科研”!不得不亲自动手,写一个浏览器插件了!!!...当动手时候才发现,还不会写插件.....只能边学习边做了;网络上有很多很好教程,大家可以跟着学习一下,前提是要对前端技术有一定了解。...如果你有不明白地方可以到我github主页,下载源代码进行分析:https://github.com/yaowenxu 很菜,不要嘲笑:),虽然菜,但我想要star :D ?

    47220

    程序员学习需要攻克8大障碍

    代码是否足够整洁?对其他开发人员,甚至是自己而言,代码是否易于理解和改变?因为以后可能需要修复隐藏在这段代码问题,或者根据其他产品规格改变代码方法是最好吗?...5.你不知道如何处理一个任务 你不知道从哪里开始?你可能会随机地去尝试,或者从其他地方复制一些你自己也不明白代码。但是,这是没有帮助。即使你复制来代码有效也没用。...你解决方案之所以不起作用最大可能是你代码中存在着bug。 ? 如何修复?方法是调试代码。这也是作为一个程序员需要学习最重要技能之一。这不是可以随便凑合事,也不是玩幸运猜猜猜游戏。...不妨将此看成是一个机会,一个修复错误提高编程能力机会。当你解决了一个bug,可以问问自己这个问题:“为什么会犯这种错误?以后如何预防再犯?”...在你学习这些资源时最常见问题是,你并没有完全了解幕后发生了什么事情,也不知道概念是如何融入到更大蓝图中。 ?

    70040
    领券