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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

I make shitty software with bugs – we all do

29 点作者 ibrad超过 11 年前

7 条评论

bdamm超过 11 年前
I keep wondering when software methodology will keep up with just how bad modern software really is. Software is always terrible - until it gets refined over time.<p>By this I mean bringing concepts such as testing directly into programming languages. It isn&#x27;t enough to say what a program should do, we need to say what programs should <i>not</i> do as well. Some languages have tried (Eiffel?) but failed. Some approaches have worked but have put the effort in the wrong place (e.g. JVM enforcing bounds checking) or by making it too powerful in the wrong ways (e.g. aspect oriented.)<p>Go takes a step in the right direction by introducing unit testing directly into the tooling. But that&#x27;s not remotely enough.<p>Agile doesn&#x27;t solve the problem either, because it focuses on the idea of a releasable product every few weeks. Living the reality of agile, I gotta say, it falls on its face a lot. Sure, you can make some microscopic change to your product, but then QA has to do a full regression every 2 weeks.<p>Surely software engineering can do better than this.
igordcard超过 11 年前
I completely agree with your opinion regarding being your own customer. Besides being the first customer of the system, it is also important to continue being so. When I created my first Android app, Tabata Trainer, I did it because I wanted to time my Tabata workouts while learning how to code for Android. I didn&#x27;t even think about publishing it. Fortunately, the fact that I was the only customer of my app automatically made me aware of the most important blockers and bugs that would prevent any other person from using the app as well. It was after that that I realized I could actually publish it, and was surprised to see the results afterwards. However, many times when I added a new feature and didn&#x27;t use it for myself (because I wasn&#x27;t doing tabatas anymore), some people would report back or rate negatively. So, if you keep on improving or product, keep using it, or it may go from hero to zero.
sophacles超过 11 年前
At my first programming job I was at an ISP and was making the bandwidth provisioning and enforcement system. I was trying to tell the networking operations guys that it was pretty good these days and they said &quot;Oh - OK we are putting the dev team behind it moving forward&quot;. Apparently my face was priceless. I know that sinking feeling in my gut changed my mind about a lot of things that day.<p>Dogfooding is good - it certainly changes how you think about things anyway.<p>It isn&#x27;t sufficient for good software, but may be necessary -or at least when possible (sometimes you make software that has no direct application to your life...).
评论 #7032944 未加载
BlackDeath3超过 11 年前
It sounds like nobody even tried to use your updated tool. How would they know if it was awful?
whyme超过 11 年前
While we have all been there, we may not all be there according to our own measures.
thenerdfiles超过 11 年前
&quot;Bug-Driven Development&quot;!<p>That&#x27;s all I have to contribute to this discussion.
yaccz超过 11 年前
wow such insight much deep very agile programming used
评论 #7032883 未加载