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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

I'm Doing It Wrong

64 点作者 cdmwebs超过 12 年前

10 条评论

mgkimsal超过 12 年前
Awesome list. While I <i>know</i> I'm not the only one who also does these things, it's good to see these sorts of things brought out in the public from this perspective. Yes, we're all human, and we all know we can do better. Thanks for being honest in public.
评论 #4443768 未加载
评论 #4442076 未加载
stcredzero超过 12 年前
Here's something I see with well informed beginners: They have to do everything perfect all the time.<p>No you don't.<p>Technical debt is like actual debt: It's bad to let it pile up, but it can give you powerful leverage. Don't quite know how to do something? Well, if you don't even know exactly what it is, it's going to be much harder to write it in an elegant way from the get-go! Write it so it works at all, then refactor your way out of stupid architecture.<p>I did this the other day, even though I already had an architecture designed, and what I came up with was even better than what I had thought of. The code will talk to you. There may well be CodeSmells. By playing with code, you can often see EmergentDesign.<p><a href="http://c2.com/cgi/wiki?CodeSmell" rel="nofollow">http://c2.com/cgi/wiki?CodeSmell</a><p><a href="http://c2.com/cgi/wiki?EmergentDesign" rel="nofollow">http://c2.com/cgi/wiki?EmergentDesign</a><p>Technical debt isn't a sin. It's a tool, but it's a tool that can bite you, so use it wisely! (Analogy: It's the shop owner who should decide when to get a loan to buy inventory, <i>Not The Customer!</i>)
mvzink超过 12 年前
I like the acknowledgement that we aren't all perfect—not even as close to perfect as we tell ourselves and others we are. It actually reminds me of this collection of Isaac Asimov stories I've been reading called The Edge of Tomorrow, with each essay or story featuring a scientist. Asimov denies a deliberate connecting theme, but what I keep noticing is how scientists are just humans too; they aren't these ultra-intelligent, purely rational subspecies. Similarly, programmers may have an understanding of computers that others lack, but we are just as prone to imperfections, mistakes, and inefficiencies even though we work in our own domain of expertise. Acknowledging that seems more useful and honest (to me) than claiming that a certain methodology will make you capable of coding the perfect program the first time around or something.
nathannecro超过 12 年前
Point number 4, "I regularly succumb to the pressure of my todo list, and let myself push quick fixes out the door when I feel overwhelmed." isn't necessarily bad though.<p>While I'm not the biggest fan of todo lists, well planned and well organized lists do actually help me get things done in a clear and focused manner. If a deadline for a project is looming over my head and I have a handy, well planned todo list for said project handy, I am going to be pushing lots of quick fixes that let me cross things off of my list.<p>That being said, perhaps this only works well for me because I do take some time prior to writing/adding to the list and attempt to think before I make a list and as such, things turn out better.
评论 #4442600 未加载
评论 #4442294 未加载
acgourley超过 12 年前
I do a lot of these things. It's called taking in technical debt. Debt has it's place in this world, <i>especially</i> in startups.
评论 #4443336 未加载
sneak超过 12 年前
It sounds like he's shipping, which means he's doing it right.<p>All of life is trade-offs, no?
评论 #4442790 未加载
akg超过 12 年前
This list is inevitable I think for anyone who is trying to ship or has some sort of deadline. The most important thing I find in maintaining large code bases is to vigilantly keep the broken window theory in mind (<a href="http://en.wikipedia.org/wiki/Broken_windows_theory" rel="nofollow">http://en.wikipedia.org/wiki/Broken_windows_theory</a>). It takes some discipline to actually go back and fix things that are broken, but it does help to avoid longer term software rot.<p>No codebase is perfect at any single given point in time, but when you see a broken window, fix it.<p><a href="http://pragprog.com/the-pragmatic-programmer/extracts/software-entropy" rel="nofollow">http://pragprog.com/the-pragmatic-programmer/extracts/softwa...</a>
koko775超过 12 年前
I suggest you read this book: <a href="http://www.amazon.com/The-Clean-Coder-Professional-Programmers/dp/0137081073" rel="nofollow">http://www.amazon.com/The-Clean-Coder-Professional-Programme...</a><p>There's a social factor to being a professional too; it's not just raw programming skill or experience.
lmm超过 12 年前
Conclusion feels like meaningless fluff. There are people who genuinely don't realise that test first is better; it's worth sharing the fact that it is. "Doing it wrong" is just a buzzphrase at this point.
评论 #4442723 未加载
darkestkhan超过 12 年前
Feature creep - that is what I'm guilty of.
评论 #4442588 未加载