程序员还是工程师?

在技嘉工作的第一个项目,就算暂告一段落了。分享一下这一个月来的心得体会。

一直都都很喜欢编程,从高二接触Basic到大一的C语言,一直认为编程的核心在于算法。一直着眼与此的训练。同时也在社团(『创软俱乐部』)这样教育师弟们“算法是程序的第一要务,是程序的灵魂”。现在看来,还真是误人子弟啊~

在技嘉这一个月,学到了一个词:“用户”。固然,程序的灵魂是算法。但是这样写出来的程序,只能沦为『程序』而已,而用户需要的是一个『产品』。

编程不是为了体现你的技术,其根本目的是解决生活的某个问题。而这个问题大都与一个不懂编程的『用户』息息相关。所以,你不能带着程序的思想去实现功能,否则你写出来的,最终只是沦为垃圾罢了。

用户体验,是决定你的程序是否能帮助到用户的要素。糟糕的体验,也许会使他本来复杂的问题变得更加复杂,甚至衍生出更多问题来。

站在用户的立场去设计,把自己变成那个(对编程)一无所知的用户,去理解他们的需求,而不只是倾听。也许你做出了他所说出需求的所有功能,但他还是不满意。那是因为你从没去考虑他的需要,只是为了编程而编程,而从来没想到你其实是在设计一个产品。

编程只是一种工具,引用一个系列书的书名——『21天教你学会×××』,难道你准备凭借这21可以学到的技能立世吗?所以,设计(或架构)一个产品的能力,比编程能力更为重要。当然,这比编程难。

这些,就是我这一个月学到的。Programmer or Engineer, it’s a question.

——————————分隔线————————–

今天看完了《黑客与画家》,才发现上面这些东西里面都说到了!推荐去看看~