zoukankan      html  css  js  c++  java
  • 为什么程序猿的开发项目总是半途而废?

    非常多程序猿的项目经常半途而废。他们有那么多的好点子,可是非常多都流于空想。差点儿每个软件开发人员都有一个这种目录,里面非常多都是些还没完工的项目。而这些程序里有不少在它诞生初期真心是个超棒的点子。和这些人一样,我也有非常多好主意,有的甚至就是如今有些企业在用的。比方正决定着在 eBay 上还是在 Amazon 上做电子商务获利、做一个以业务为基础的社交网络(水管业、电子行业、软件开发等)、比特币搜索引擎、开发一个 CSS 框架来代替 Bootstrap、从 Instagram 上找出最有魅力的那些人、开发一个实时訪问统计引擎。这种样例举不胜举。差点儿每个项目我都着手去做了,可是没见到一个是完工了的。

    当我和我的同事朋友聊起这个话题的时候。他们也普遍反映。他们也是如此。

    非常多非常多的好点子都夭折在他们的目录里。

    为什么会这样?

    由于成功所以缺乏动力

    首先要谈谈我们的职业。拥有着让人眼红的高就业率。用事实说话,全国的失业率约为 6.7%,而 WEB 开发员的失业率还不到1%。并且我们的工资水平也比平均值高。2012 年软件开发员的平均年收入就已经超过 9 万美元。当然如今你要是足够优秀,全然能够远远超过这个数。看着跟着我学习的新手菜鸟成为入门级程序猿,心中有一种莫大的个人成就感。而这个职业的薪酬也让他们非常惬意:起薪 4 万 5 千美元到 7 万美元。

    所以,和其它大多数人相比,特别是那些在工作岗位上碌碌无为做一天和尚撞一天钟的,由于岗位薪资不高而不断跳槽的。软件开发员还是比較成功的。这里请同意我冒昧的做一个概括。如有雷同纯属巧合。能够说,半路出家的程序猿相对于这些人是比較成功的了。

    也就是这样的成功的优越感麻痹了我们的神经。使得我们缺少了完毕目标的动力。

    知识范畴不同

    我们知识广博。

    对于几个城市之间旅行如何便捷,我们能够侃侃而谈。我们知道如何把一个复杂问题分解成一个个小的子问题逐个击破。我们是真正的“世界通”,由于我们能够用随意一种语言说“Hello World”。面对即使须要成千上万的计算,我们也不皱眉头,由于我们懂得递推的方法。我们知道的非常多。可是又是否足够多呢?伟大的科学家爱因斯坦以前说过:

    浅学误人,所以危急;博学自负,更加危急。

    牛顿,大家都知道,誉为那个时代最聪明的人之中的一个,能够准确预測离我们上百万千米远的天体的运动。他说,他是站在巨人的肩膀上才干看的更远。

    而物理学并非他唯一的兴趣。他还给我们留下了微积分学等等宝贵的知识財富。由此思彼。那么他应该也对资本和市场运作非常了解咯?

    1-j6CUvYBqScHxK-jlyLmalw

    哈哈,那你就大错特错了!在 1720 年南海股票泡沫的高峰期。他投入的全部现金化为乌有,然后破产了。由于他不了解市场,所以即使他知识再多再渊博,也帮不了他一点忙。由于他的知识领域是独立的,不相关的——他发现了物体运动的规律,可是这些规律对他掌握投资者心理毫无帮助。我们也是这种情况。我们能够花一整天时间去解释算法,研究数据结构。可是我们却不懂得用户想要什么。当 twitters 刚出现的时候。我想当然的觉得只是是个昙花一现的流行事物。事实证明我错了。当我们在解决这个问题的时候,往往仅仅追求解决方式是否吸引人。却忽略了联系这个问题的世俗看法。

    不断跳槽

    我敢保证,其它不论什么一个主要城市都是这种,可是在这里,我仅代表我自己和我的同事朋友们在纽约工作时的经验。

    我们不断跳槽。

    可是也不是每一个人都是这样。

    我在网上一篇文章的评论上看到有的人已经在同一个岗位上干了 19 年。我也发现了,那些非常easy被别的项目所吸引的人,往往不会停留在同一个岗位上太久。就是由于这个原因导致非常多项目不得不中断。

    中断项目有非常多原因。比方,刚进入新工作,而且须要专心致志做那里的项目。就不得不把原来的先搁置一边。

    又比方,由于做的这个项目和我们曾经做过的可能差点儿相同。于是顿时失去了兴趣。距离也是原因之中的一个,特别是假设你隔个几年就要跳槽的话。坚持就愈加困难了。在这里。我须要提一提,转变心态非常重要。假设你打算在三年后辞职,那么为什么不不能在 3 个月里搞定你的项目?假设你能保持着这样的激情,当你在项目上一筹莫展的时候,灵机一现。好点子就来了。

    赋予夭折的项目新生

    由于这样那样的原因,我没有让我的好点子“出世”。首先我们承认了这点,然后我们找出了原因。如今第三步就是要修复它们了。

    这不是一朝一夕就能完事的,并且可能我的非常多项目仍然会是这样的半死不活的状态,然后我思索许久,最终想出了一些步骤。能够避免这些项目永远成了目录里的摆设。

    你最优秀

    首先。要明确每个项目都能让你略微——或者在某些情况下是大幅度——成长为一个更佳的开发者。技术须要靠时间的积累,所以你开发的项目越多,你就越棒。以学习新技术,新的编程语言,新的框架为动力去开发一个项目,那么即使你完不成。也能学到不少知识。并且假设你有其它要事要办,你能够马上暂停这个项目。

    构建项目组件

    你开发了非常多项目,变得越来越熟练,不知道你是否知道这个小窍门——复用代码?构建模块和库。而不是每次须要使用的时候都去又一次写一次。假如你如今在做的项目不是最后一个。那么我劝你最好构建一些项目组件,而不是光写那些仅仅能用在这个项目里的代码。在文档里给自己写点凝视,这样下次要用在下一个项目中就方便了。

    和大家协作

    如今我们已经有了能让那些夭折的项目重生的好方法。是不是蠢蠢欲动,跃跃欲试了?你的点子可能精妙无比,就像你的孩子一样宝贝,也也许价值数十亿美元。可是到眼下为止——它一文不值。你须要和其它人分享你的点子。而且越多越好。

    这样的自然而然的兴奋能促使你不断致力于这个项目。推动它的发展。甚至你能够开源。邀请大家參与进来。这样的相互协作的方式会让你有种使命感,专注于此,不轻易放弃。

    解决你手上的问题

    不要好高骛远,也不要眼高手低。试着去做一些对你真正实用的东西。假设你是程序开发员,那解决程序问题,假设你在公司工作,那制作那个公司须要使用的程序什么的,即使是你个人方面。也一定会有一些能够用技术解决的问题。

    那么为什么不先下手为强呢?不要等到问题积累起来了再去解决。一步一个脚印,同一时候你还能够得到一些实用的程序什么的,何乐而不为?

    勿以事小而不为

    有句俗话,不要想着去创立须要时限 8 个月才干办起来的公司。把时间放在能够在 4 周内甚至更少就能做好的事情上。

    不管多么简单,每一个月固定日子公布你的最新成果。这样做会有非常强的心理暗示,能激励你的工作。相反。假设你坐在笔记本前捣鼓了 8 个月想干件惊天动地的大事,可是却毫无进展。有多么沮丧是可想而知的。量变会导致质变,一件件小事办好了可能会有大大的成功。由于人生的旅途是一场马拉松,而不是短跑。

    吹牛也是项技术活

    社会压力是真实存在的,与其偷偷摸摸工作,还不如告诉大家你的工作内容。你得到的反馈有可能会有助你改进产品。也许你操心别人会把你的点子占为己有。可是我能够保证。绝对不会有这样的事发生。由于即使是非常easy的想法别人想要去运行,也是非常困难的一件事。所以不是必需讳莫如深。说出来,你还能够从大家提出的建议中提炼出有意义的加以改进自己。而更加重要的是,这样做会促使你不得不去实现它。不然牛皮吹破面子就不知道放哪里了。哈哈。

    写到这里,要告一段落了。不知道你有没有学到什么诀窍能对你的项目有所帮助?记得:行动最重要。

    译文链接:http://www.html5tricks.com/why-developer-not-finish-pros.html

    英文原文:Why developers never finish their projects

  • 相关阅读:
    angularjs事件通信$on,$emit,$broadcast详解
    es6入门7--Set Map数据结构
    ES6函数参数默认值作用域的模拟原理实现与个人的一些推测
    JS判断数组是否包含某元素
    es6入门6--数组拓展运算符,Array.from()基本用法
    js new一个对象的过程,实现一个简单的new方法
    js中的NaN,isNaN与Number.isNaN的区别,如何判断一个值严格等于NaN
    详解 JDK8 新增的日期时间类
    详解 枚举
    详解 动态代理
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/6963000.html
Copyright © 2011-2022 走看看