下面是小编整理的Web开发人员必学的5堂课(共含2篇),欢迎您阅读,希望对您有所帮助。同时,但愿您也能像本文投稿人“JK”一样,积极向本站投稿分享好文章。
越来越多的Web开发人员通常都会问一些同样的问题,比如:哪一种开发语言最重要?初级开发人员的薪金会是多少?公司提供的免费培训有用吗?如何评估一个新的项目?尽管这些问题都很重要,但是开发人员往往对其他人的回答不以为然。一般来说,他们自己都不知道如何去寻找答案。以下五个建议或许有用。
1.你永远不是最聪明的人
在互联网泡沫到来之前我和一个同事一起从事语音识别系统扫描编码的工作。不久我们就发现通过电脑或者PDA可以很方便的上网,并且是无键盘操作。每当我质疑他的一些想法时但都遭到了他的坚决反对。他觉得他永远不可能犯错误。他曾经参加过技术讨论会的!在接下来的几个月里他有很多的设计都没能成功实现。
如果有一天你发现你与我的那位同事处境相似,那么也许你应该认识到你不一定总是正确的。你并不是办公室里面最聪明的人,所以主动接受别人的建议或许更能显示出你的大智慧。
2.经验真的很重要
作家永远不想承认这个事实,我们开发人员也是这样。尽管如此,我发现那些有过成功项目经验的人会更容易在接下来类似的项目中获得成功。当需求明确准备开发的时候,程序员通常都非常有自信有能力解决所有的问题,而不管所使用的方法是不是最佳的甚至可靠的。
事实上,经验从来都是很非常有用的。我的建议是相信别人的经验并向他们学习,而不是让自己嫉妒心无限膨胀。当自己犯错误的时候,多问几个为什么,多向别人寻求反馈并且尊重他人的意见。
3.没有“万能”的技术
不可否认的是现今任何一种开发语言、框架或者操作系统,都有他们忠实的追求者。当然他们的这种执著追求并没有什么不对,但是如果认为它们其中任何一种(技术、框架或者设计模式)可以解决在所有项目里遇到的任何问题那就不对了。我很反对在招聘Web开发人员的时候要求应聘人员必须掌握当前一些主流的开发语言,
我认为只要对这些语言和技术有一些基本的了解就足够了,因为从来就没有什么万能的技术。
优秀的开发人员可能会成为新技术的倡导者,但不会成为狂热的追求者。除非他是在一家专门负责技术推广的软件服务公司工作,那样他必须开放思想并且愿意接受改变。
4.新的技术不一定是最好的
作为一名开发人员,长期专注于一种技术固然不好,但是总是倡导使用最新最时髦的技术更加不好。尽管新的技术很吸引人,但并不是任何时候都是最合适的。一些被成功实践过的技术往往能够给项目减少失误,缩短工期,并令客户满意。而且这样开发出来的网站往往更能被人接受。
当然,我并不是提倡对新的技术弃而不问。我们应该对Web新技术时刻保持敏感,一旦时机成熟,条件允许我们可以快速转向新技术的开发实践。我们可以经常学习并尝试使用新的技术来更新我们已有的系统。
5.不是每一场战役都值得去战斗
作为一名Web开发人员,我的经验证明网站在保持个性化的前提下很多原则是必须遵守的。但其他人并不这么认为。以前我会为了这种问题从头到尾据理力争,因为我觉得从任何角度出发我都是正确的。现在我倒觉得,大多数时候你只需要把你的想法清清楚楚明明白白的表达出来就够了。
尽管你的想法并不一定会被人接受,但你应该学包容别人犯错误,然后让管理层来协调。长此以往,你的同事就会发现你的宽容,慢慢的就会尊重你,感激你了。
技工父亲教会我的5堂课
我的父亲是一名工程师――是机械工程师,不是软件工程师。在他成为机械工程师之前,他也做过技工和木工。他很聪明,同时在建筑和维修方面也很有天赋(只要不涉及到电气即可,不过那就是另外一回事了)。他甚至在60岁时依然能做围墙、工棚和甲板之类的工作。
当我和我的兄弟还小的时候,他就开始让我们接触一些他工作用的工具,因此,当我们发现需要修复或制作一些东西时,我们有能力做好它。好吧,虽然他在我身上的教育几乎失败,但一路走来,我还是学到了很多重要的东西,而且,不管你信不信,这些我学到的东西,在我成为一名优秀的开发者和企业家的路上,让我受益良多。
下面就是我从他那里学到的知识。
第一课:三思而后行
砍柴是一个一次性的工作。只要树木被砍掉,它就不可能再保持原样。因此,很重要的一件事就是,确保你每一次的删除操作是无误的。甚至即使你确定你的做法是正确的,也请你无论如何再做一次评估。重新检查你的评估,确保它正确无误,这样你就可以避免犯一些本可以规避掉的错误,付出的代价也要小的多。
开发产品也是同样的道理。如果事先不测量书架要占用的空间的大小,你怎能做出与之大小相适合的书架?如果事先不知道用户的需要,你又何必去开发一个无用的产品?
这个道理已经提过很多次了,我在这里略过。但有个不被经常提及的事情是,你的产品是一组功能的集合体,就像书架是一堆货架的集合体一样。每一个功能都应该被认真对待,细心评估,以确保它适用于受众人群。重要的是不仅仅在项目开始就收集反馈,在整个项目的开发阶段,我们都要重视反馈,而不是等到结束了,才想起还有一些不错的创意没有实现。
第二课:粉刷一座建造好的凉亭会很困难
有一次,几个工人在家里修凉亭,他们在凉亭建好后才开始粉刷。爸爸看到后指出,如果这些工人能在这些木头放在地面上就开始粉刷的话,他们就能节约1/10的时间,而且效果也会更好。粉刷之后只需做一些连接工作,就可以很快的建造起这座凉亭。粉刷已经建造好的凉亭不仅又慢又不方便,而且还可能导致出现一些不易刷到的地方,最糟糕的是,如果不幸的话,还会把这一切弄得一团糟。
在产品的开发过程中,很容易忘记设计和UI(User Interface用户界面的简称),但这些很重要。以用户为中心的设计就是在设计页面时,以服务用户为第一要务,然后再开发相应的应用来支持这一设计。而以软件开发为优先并把设计放到最后,你将做更多的工作,产品也会存在潜在的缺点。UX(User Experience用户测试)应该是一个持续不断的过程,不是某个可以随意丢弃的东西。
第三课:让你的项目和工作空间始终保持整洁
在一个杂乱的环境中工作一定会让你的项目结果变得一团糟。如果碎木屑到处都是,你就不可能粉刷好;如果你的工具都满覆油污,你就不可能把拆散的发动机零件再组装到一起;如果你用完工具后不搜集整理好,你可能永远都找不到你想要的螺丝刀。任何一个机修工都会告诉你工作在一个整洁的环境中有多么重要。糟糕的不止是你将花更多的时间用于寻找放错位置的工具,还会导致更多的损失。
每一个开发者的代码中都可能会有一些bug。很多开发者都知道“代码债务”这个名词,它实际上只是从开发者的角度来看待这一块工作混乱的区域。如果你在源头埋下隐患,所造成的后果不仅仅是更难发现bug,而且在将来会更容易造成更多的混乱。最终你将不得不清理它们(特别是在你开始你自己的工作前,你将不得不去清理其他人留下的这些bug!)。
想必每一个开发者都知道修改别人代码时那种恐怖的感觉,并会意识到他们留下了一堆麻烦等着你去解决。现在花一点时间去整理你的工作空间,将来你会节约更多的时间。
第四课:始终使用正确的工具(而且在你的工具上别吝啬)
搞砸工作的一个主要原因就是使用了不恰当的工具。这虽然显而易见,但很多人就是意识不到这一点。用错了工具后的下场通常是一个灾难。别心疼钱,工作一展开就应该找到合适的工具。
工具选用不当虽然通常都是管理层犯下的错误,但我们开发者也要为此事负责。毫无疑问,一个用了6年的笔记本运行起来肯定会很慢。即便为一款文本编辑器花了10美元,但却选用了最蹩脚的一款,也不会有助你的工作。节省的这几块钱不会帮你赢得客户的心。最糟的是,利用盗版软件帮你赚钱,这是完全错误的做法。
今天你可能觉得你节省了一些,但在以后的运营中一定会花掉你更多的钱。找出最适合你项目的开发工具,然后花一些钱(除非它是开源的!)。当项目开始后,节约会特别具有挑战性。除非你需要,否则别乱花钱,但如果有些工具需要花钱才能使用,那就要选最好的。
第五课:如果方法都不奏效,那么去找一个更大的锤子
有时候你卡住了,这意味着你碰到了难题。有时候不管你多么用力,都无法将螺栓拧入螺孔中。有时候不管你多么用力敲打,钉子都不会被敲入。这时候你仅仅需要一把更大、更合适的锤子。
作为BugHerd的创始人之一,我过去常碰到一些本该寻求帮助的情况。(人生感悟 )但我挣扎着,我通读手册,看视频录像并参阅博客文章。然后我清醒了,并意识到无论我做什么,肯定有其他人在这方面做得比我好。
目前,我们有2位精通JS的同事,他们做的工作,比我们任何时候做的都要好。有很多为远程团队协作而准备的优秀的工具,因此,不要找借口说没有合适的同事和你一起工作。有时候,你仅仅需要接受现实,并找到相应的解决办法。
作为一个活跃在专业开发设计社区里的创业者,我常感到像活在培养皿里。偶尔停下来,观察一些较为传统的行业,看看我们能从那些做出卓越贡献的前辈那里学到什么,这也是一个不错的做法。无论我们认为我们有多聪明,也不论他们有哪方面的优点,我们总是能从这些前辈这里学到很多。
★ 开发人员辞职报告
★ 德育学堂
★ 开发人员年度总结
★ 国学堂策划书
★ 孔子学堂心得体会
★ 学堂作文50字