我经常在Stack Overflow上看帖子,见过不少各式各样的求助帖,有些帖子写得好,回复的也切题有些则不知所云。我觉得,优秀的开发者/程序员必须学会如何“在最短的时间内获得最好的答案”,下面是我总结出几个写求助帖提问交流的技巧。
在做公司产品网站的过程中,经常会有这样的需求,比如什么搞个活动专题,抽奖,签到,搞个积分竞拍等等,如果没有考虑到高并发下的数据处理,那就GameOver了,很容易导致抽奖被多抽走,签到会发现一个用户有多条记录,签到一次获得了获得了多积分,等等,各种超出正常逻辑的现象,这就是做产品网站必须考虑的问题,因为这些都是面向大量用户的,而不是像做ERP管理系统,OA系统那样,只是面向员工。
随着软件行业的不断发展,历史遗留的程序越来越多,代码的维护成本越来越大,甚至大于开发成本。而新功能的开发又常常依赖于旧代码,阅读旧代码所花费的时间几乎要大于写新功能的时间。我前几天看了一本书,书中有这么一句话: “复杂的代码往往都是新手所写,只有经验老道的高手才能写出简单,富有表现力的代码”此话虽然说的有点夸张,可是也说明了经验和智慧的的重要性。
有一天,我正逛 LinkedIn,发现了一个感兴趣的文章标题,《为什么我的员工工作不能再努力一点?》,出于好奇,我点开了。发现这是一个类似于 Dear Abby 之类的公司。一个网名为 Victoria 的 CEO 向 Liz Ryan 询问了一个问题,Liz Ryan 即充当着 Abby 的角色。
一旦度过了初始阶段,做过了前面说的那些事情,那么一个人算是基本入行了,接下来的目标就非常简单,要在选定方向上成为高手。高手意味着专业,而在分工无限细化的年代里,专业则是生存、发展好最为重要的一个前提。
昨天,我做了一个小分享,关于时间管理。
几乎每个程序员都知道要“避免重复发明轮子”的道理——尽可能使用那些优秀的第三方框架或库,但当真正进入开发 时,我却经常发现他们有时并不知道那些轮子在哪里。最近,我在业余时间带几个年轻的程序员一起做了一个很小的商业项目,而在一起开发的过程中,我几乎在所 有需要判断字符串是否为空的地方,看到了下面的代码:
需要一些动力来辞职或避免被一家坏公司聘用?那么千万不要错过下面这些内容。我在本地聚会和会议上获知了大家在公司里正面临的问题。我通常会提供一些有关开发实践的演讲,但总有一些搞开发的同事表示虽然他们同意我说的观点,但是他们发现很难应用到他们的工作环境中。在我的职业生涯中我也多次有过相同的感受。
:(){ :|: & };: 是一个bash函数,以 Fork Bomb 闻名,是一个拒绝服务攻击的 Linux 系统。如果你好奇地去执行了这个命令,那么赶快重启系统吧~!
第二年夏天,公司拿到了真实收入,我的职位变成了开发主管,公司又招了些新人,正待蓬勃发展,一切都很美好。然后我们做了一个巨大的决策失误:决定重写软件——从头开始。
曾几何时,通信网络曾经活跃过许多协议,那些协议在不同的场景下都有各自的优势。但是后来 TCP/IP 随着互联网的崛起而异军突起,最终形成一统天下的格局。而原本被视为不入流的 Web 前端玩具 JavaScript 现在似乎也在复制着类似的路径,先是渗透到 web 后端开发,然后甚至开始入侵到桌面了。最流行语言 JavaScript 会变成编程界的世界语吗?
这不是一篇鸡汤文,因为我并没有在使用 Linux 一万小时后成为 Linux 达人,甚至在很多方面,我连新手都算不上。我走的这些弯路能篇成一本很有参考价值的反面教材,下面,我来讲讲我用 Linux 都折腾了啥。
提起 Linux 之父 Linus Torvalds,人们首先想到的是他的不近人情,总是听说他“炮轰”这个“炮轰”那个,却很难有机会接近他,了解他是个什么样的人。近日,他做客 TED,为我们展现了他鲜为人知的一面。他两次改变了技术世界,第一次是 Linux,第二次是 Git,他是如何想到要开发这两个软件的?他如何看待开源运动?他又是如何评价自己的性格?
说到程序员的噩梦,除了《程序员的 13 种噩梦,你遇到过哪些?》这篇提到的「无法重现的 Bug」,还有「遇到一个不懂技术又是掌控狂的项目经理」或「频繁变更需求」。自称有 35 年编程经历的 Mick Stute 对最大的噩梦有不同的体验。来看看他在 Quora 上拿到 16k 多顶的经历:
就拿软件开发者举例吧。如果你问他什么才是最可怕的噩梦,那么答案很可能跟女巫、黑猫没什么关系,真正的噩梦是关键的分号不起作用或者微软的某个产品。在分析了各种各样程序员关注的论坛之后,我们在此列举出 13 种程序员们最苦恼的噩梦。
到现在我已经专业地构建软件超过 10 年时间了。我热爱我的工作,并且我希望能在这一行一直干到成为老程序员的那一天。一路走来,我遇到过很多可怕的事情,让我觉得我的工作非常之讨厌。我希望能有人在我职业生涯的早期给我一些指引,
本文作者Edmond Lau此前在谷歌搜索质量小组负责查询请求和UI方面工作,现在Quora任职。他表示,正是由于在谷歌学习到的一切伴随着他自信前行,成为了他的良师益友,无论对于哪家公司都将受用。
最近听人谈起程序员的加班问题,忙到那么晚,真有那么多事情要做么?当然每个人遇到的情况不一样,给到的答案也是不一样的,这里针对个人所遇到的情况,谈谈对加班的一些看法。
猴喽~~猿猿们 雷们猴啊 教你们如何毫无PS痕迹地实力撩妹
《神秘的程序员们》漫画45:为什么程序员应该养只猫(第二辑)
程序员、黑客与开发者究竟有何区别?这个问题往往会引发踊跃的讨论与辩论。但是我看到的很多说法往往至少在一个重大方面是有瑕疵的,所以在此我愿给出我的定义,希望这个定义能够更准确些。
我们经常在代码里看到这样的例子:接收一个参数作为角度,那么就用 int 吧;接收一段文字作为姓氏,那么就用 string 吧…… 其实 int 也好,string 也好,都只是中立的、不与任何业务场景相关联、也不遵守任何业务约束的基本数据类型而已。
随着互联网行业的不断发展,各种监控工具多得不可胜数。这里列出网上最全的监控工具。让你可以拥有超过80种方式来管理你的机器。在本文中,我们主要包括以下方面: 命令行工具 网络相关内容 系统相关的监控工具 日志监控工具 基础设施监控工具
“公司发展到一定阶段,能力强的员工容易离职,因为他们对公司内愚蠢的行为的容忍度不高,他们也容易找到好工作;能力差的员工倾向于留着不走,他们也不太好找工作,年头久了,他们就变中高层了。 文章把这种现象叫做死海效应:好员工像死海的水一样蒸发掉,然后死海盐度就变得很高,正常生物不容易存活:) ”
这篇【会写程序还不够,硅谷杰出软件工程师都有的 5 种能力】[1] 说得不错,值得想深耕软件技术领域、以技术立身的人一读。这也是我在硅谷工作时的切身经验,因此我一直希望训练学生这些高生产力的杰出软件工程师所具备的能力:
关于程序员过时的传说
这是 JavaScript 吗?
为什么DeepSeek在规模化部署时成本低廉,但在本地运行时却成本高昂?
为什么 2025/05/28 和 2025-05-28 在 JavaScript 中是不同的日子?
为什么原始的Macintosh屏幕分辨率是512×342,而不是人们可能预期的512×384
我的编程技术退步了
台积电押注非正统光学技术
Python 打包工具 Setuptools 最近的颠覆性变化
Linux 打包工具 Flatpak 的未来
ChatGPT 是一种噱头