TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

The Best Programming Advice I Ever Got (2012)

121 点作者 reforge_reborn大约 11 年前

9 条评论

logfromblammo大约 11 年前
The lesson is that the system is often more than just the computer software. The requirements may be more than just the software requirements.<p>I was fortunate to recognize that early at my current job. We have boatloads of software requirements documented, but the prime directive is not even spoken aloud: &quot;Produce 40 billable hours per week, for each employee, forever.&quot;<p>And that is why the database is a mess and the code sucks beyond all reason. Any reduction in technical debt directly translates to a reduction in the perception of work being done. In short, the customer knows nearly nothing about software development, is willing to pay for status reports, process documentation, and meeting minutes rather than working code, and has a budget completely independent from the value of the work product.<p>Have you ever looked into some code and seen a WTF block, and it turned out to be a workaround for a bizarre bug? Here, the entire code base is the WTF block. The bug is in the human organization. I do not have the permissions to commit anything to that source tree. So I suck it up and send out resumes.<p>You don&#x27;t fix <i>anything</i> until you first understand why it is broken. In the context of the CAD rendering, it is likely that some people had invested a lot of effort into convincing the management that their laziness was actually hard work plus frustration at their resource constraints. Think like Wally from Dilbert. That slow rendering is a system-enforced cap on productivity, slowing down the fastest workers.<p>In the psycho-clueless-loser model, that is the losers getting a leg up on the clueless. A psycho would have first manipulated the political situation for personal advantage before releasing the fixed code. A loser would have left it alone as already being to their advantage. Don&#x27;t be clueless, folks.
评论 #7774568 未加载
baldfat大约 11 年前
Good read, BUT the advice is stay away from Drama and especially work Drama. Seems to me 50% of people are damaged immediately by work Drama and the other half die slowly with maybe one or two sort of winners.<p>I would go work somewhere else and stay happy.
评论 #7774385 未加载
评论 #7774412 未加载
评论 #7774948 未加载
aeturnum大约 11 年前
This story leaves me with a completely different takeaway message than the author got.<p>It seems like he got involved in situation he didn&#x27;t understand and may have risked his job (and perhaps the jobs of others) in the process. His process demo&#x27;d better, but he has no idea why some people were opposed to it.<p>What if this was a product that emphasized security, and he inadvertently violated the security model to get speedups? Understand the processes you&#x27;re working on, and the problems that your co-workers are dealing with. In this case, he could have made his life easier by identifying the &quot;faction&quot; that wanted what he wanted and working with them.
评论 #7774786 未加载
评论 #7774915 未加载
eshvk大约 11 年前
&gt; But the best way to have a future is to be part of a team that values progress over politics, ideas over territory and initiative over decorum.<p>I am not being too cynical in thinking that this doesn&#x27;t exist? I mean this is the core of how teams interact. Politics is reality. So is territory. Fuck decorum, though.
Duhveed大约 11 年前
Great article. I was just thinking &quot;whoever told you that was high&quot; when the author pivoted and said it was bad advice. The first comment was spot on...if the current is dragging you toward the drama, swim up the shore to a new gig.
andreasvc大约 11 年前
What I don&#x27;t understand about this is how people are able to express their dissatisfaction about someone else making the code faster, when it&#x27;s so transparent that they are just butt hurt that their way of doing it wasn&#x27;t so good after all. Of course I get that such people could from then on hold a silent grudge against you, but I can&#x27;t understand how they can openly complain about this without making it totally obvious that it&#x27;s just an ego thing.
tremols大约 11 年前
I have been there in that sort of situation where managers twist their eyebrows at an efficient or productivity-enhancing solution. The essence of the java enterprise consulting business is fixing an unnecessary complicated mess with a similar, new buzzword backed mess.<p>So the interesting thing here is how bureaucracy and efficiency seem like natural enemies; a subject which always reminds Terry Gillian&#x27;s Brazil movie where the terrorist guy is the one who fixes things.
craigyk大约 11 年前
The original architecture sounds like maybe it was just ahead of its time.<p>&#x2F;s
jorgeleo大约 11 年前
I think that the advice, if taken literally, is a bad advice.<p>But it does point to the fact that the system is not just the technology, but also the people around it<p>I think that a better way to go about it was to comment first with the proper people that you MIGHT be able to make it run faster before doing anything (all though you know that you already did it). And drop the case if they don&#x27;t want it.<p>I can see that somebody might want to move the drawing calculation process to a more powerful box serving more clients, and distribute the client with a different license... in other words, there could be a business case for the original configuration, and knowing it might help you to discover the negative stakeholders (the people interested in the status quo)<p>Should you always stay out of others people code? I think not, I think that there is a place for it. But from there to modify and publicize the modifications there is a big distance. Some people treat their code as their baby, and no parent like their kid criticized.
评论 #7774754 未加载
评论 #7775131 未加载