当前位置: 首页 > news >正文

站长工具seo综合查询隐私查询导航wordpress英文语言包

站长工具seo综合查询隐私查询导航,wordpress英文语言包,网站建设太金手指六六三十,临沂网站案例按#xff1a;这几天我一直在写这篇东西#xff0c;本来是胸有成竹#xff0c;没想到后来越写越发现自己在这个题目下有太多话想说#xff0c;而以我现在的能力又不能很好地概括总结#xff0c;以至于越写越长#xff0c;文章结构也变得混乱#xff0c;到后来修改的时候…按这几天我一直在写这篇东西本来是胸有成竹没想到后来越写越发现自己在这个题目下有太多话想说而以我现在的能力又不能很好地概括总结以至于越写越长文章结构也变得混乱到后来修改的时候每次都要考虑好久才能下笔所以决定拆成两部分来发以便阅读。这篇写得我心力交瘁质量不算好凑合着看吧。同样是写程序不同的岗位工作内容不一样对程序质量以及工程师的要求也不一样。程序开发大概可以划分成两类开发和研发相应也就有开发工程师和研发工程师。很多人觉得做开发和做研发没什么区别“都是一样对着电脑写程序啊”但其实这两者是完全不一样的下面我想抛开公司对员工的期望、社会对工程师的需求等其它因素单纯从国内互联网行业“工程师个人发展”的角度来说一下我个人对这两类工作的看法。开发开发一般是指产品开发开发工程师直接为产品贡献代码。每个公司都有自己的产品线拿 Google 来说吧它有 Gmail, Chrome 等产品每个产品都有很多开发工程师在后面支持这些产品的开发、维护以及升级都是由相应的开发工程师负责的。由于开发工程师的工作直接关系到产品的质量和在线情况所以开发工程师的责任是很重的他可能经常为了下个版本的发布而加班为了产品的故障不得不在休假的时候打开电脑工作甚至在过年的时候都会接到领导的电话。所以你看到那些总抱怨加班太多总是说自己是“IT民工”的大部分都是开发工程师。在工程师当中大部分人都是做产品开发的毕竟公司都是要靠产品盈利招聘的大部分人也要直接为产品服务。做开发是很辛苦但也有好处因为需要对产品线负责所以会是公司的核心裁员对你威胁不大如果你负责的产品恰好又是盈利产品的话那么加薪、奖金、集体出游等福利都不会少。如果你足够幸运地加入了一家快速发展的创业公司说不定一下子就发家了。还有很重要的一点是作为产品的开发人员可以看到自己做的东西被那么多人使用那是一种莫大的鼓励和肯定。苦闷的开发工程师尽管我很尊重开发工程师但是我不得不承认在国内大部分的公司做开发工程师是没有前途的。首先从微博到开心有多少国内的产品不是山寨的这也罢了最恶心的是有一些产品经理连产品设计图都懒得自己画直接去截取别人产品的图片假如我是一个人人网的开发工程师每天看到产品经理把 Facebook 新上线功能的截图拿过来让我做你让我如何对产品有荣誉感和认同感而如果一个开发工程师对自己做的东西没有荣誉感和认同感那么他坚守自己的岗位要么是因为公司给的钱多要么是因为他还没有找到下家。我个人认为做开发最大的一个好处就是可以亲手实现一个“自己的作品”就算平时很累但最后完成它的时候也还是会无比满足这点被剥夺了之后和饭店打工的服务员有什么两样不一样是为了糊口吗我不知道别人怎样但我自参加工作以来就一直纠结于此——甚至开发的大部分产品都不好意思写上自己的名字直到前不久有机会去做一个公司内部使用的平台才终于有个作品让自己觉得满意。相信很多开发工程师参加工作之前都对互联网上很多诸如Gmail, Facebook 等优秀的产品耳熟能详自己也常梦想做出那样的产品但万万没有想到的是工作之后要学习的第一课就是“不要对自己做的东西有感情”——有了感情你就不愿意做广告弹窗不愿意看到它下线不愿意为了短期利益伤害用户。与此同时你还要继续听产品经理和老大们满怀激情地说“我们一定要让用户喜欢我们的产品”。一个连开发工程师本人都觉得无聊的产品如何让用户真正喜欢呢拿搜索巨人来说吧Google 把社交网站看作是某种形式的娱乐而不是有用的工具所以它会在社交领域失败再牛的技术也无法遮盖情感上的空白。不过话说回来这好像对于国内大部分的公司都不是问题因为它们做一款产品只是想从用户那里拿到钱如果以后用户流失了就下线然后再开发一个新的。他们要的不是用户的长期感情而是***开发工程师就是***的工具。其次国内几乎所有公司的技术流程和技术积累都做得很烂大部分都只是片面地追求开发速度。我们在大学里受到的教育是“文档和注释很重要”工作之后才发现文档和注释是很稀有的东西只有特别负责任的工程师才会挤时间去写。有一个很有意思的现象是国内很多产品发布之后会特别自豪地说“XX 是我们开发团队在时间紧迫的情况下封闭开发了X 天就完成的只有最牛的工程师才能创造这样的奇迹多少个凌晨XX写字楼上只有我们办公室的灯还亮着……”然后你会觉得“好感动啊”但冷静下来想一想这种拼命赶工做出来的东西质量会过硬吗抛开产品质量不谈没有时间写文档、没有时间写注释、没有时间做 code review, 没有时间做阶段总结……没有了这些作为一个开发工程师你通过这个项目可以提升多少呢所以好多开发工程师一开始是“代码民工”过了几年还是“代码民工”而一个人年富力强的时间又有几年呢怪不得那么多人说工程师和妓女一样都是吃青春饭的。发展方向我个人认为国内的开发工程师大概有三个发展方向1.做管理。 2. 去做架构等与产品关系不那么紧密的研发。3. 提升其它方面的能力做 “A Player”然后自己创业。我对管理没有研究也没有兴趣这里就不说了。研发我会在下篇中细说这里主要说一下第三条。为什么要关注代码之外的事情如果你只会埋头写代码那么代码写得再好也可能不会是一个好的开发工程师。做开发不是做学术研究你的任务不是去钻研技术而是利用自己的技术把产品做出来。尽管技术能力是基础但如果无法把能力很好地应用到开发当中那么你在团队中就没什么价值。举个例子如果你不能很好地理解产品需求那么就会根据自己的理解去做技术方面的架构和编码等到后来发现了再去修改就特别麻烦这个时候技术能力强反而成了坏事南辕北辙的故事我想大家都听说过。很多开发工程师属于那种“很本分”的人从来不会提出意见不关心产品形态和细节只是去做产品经理提出的需求。我觉得别人把工程师叫做“代码民工”也就算了但是工程师对自己做的东西完全没有看法那就是甘心沦落为民工了。这也有文化的原因国内的公司都喜欢那些不爱抱怨的员工因为他们听话而且符合中国传统的价值观但我更喜欢那些爱抱怨并且抱怨得有道理的人因为国内不只是互联网上面粗制滥造的东西实在太他妈的多了不抱怨才不正常有不满才会去思考如何做得更好。曾经听到有人谈论如何管理技术人员的时候说“管理技术人员很简单找一个比他们都牛的人就行了。” 这个人很了解工程师的脾气。工程师去判断其他工程师的时候往往只看他的技术能力觉得谁的技术好谁就最牛其它的都无所谓。没错技术牛的工程师写的代码质量很高但这只是一个方面而已判断一个人在团队中是不是“很牛”要看他对团队对产品的整体贡献而不是他的个人能力。他能很好地理解产品需求吗能很好地理解设计师的意图吗和团队其他成员沟通顺利吗写出的代码方便测试吗会对产品提出好的建议吗……这些都是判断一个开发工程师的标准整体素质越高在团队中的价值也就越大。所以要想做一个好的开发工程师就要在写好代码的同时努力提高其它方面的能力。我知道大部分的工程师都喜欢和机器而不是和人打交道所以遇到和产品经理、设计师以及 QA 等部门协调沟通的时候就皱眉头。协调沟通确实是一件闹心的事情但从另一方面来说这是开发工程师的一个得天独厚的优势你可以深入接触产品生产线上的所有环节。需求评审的时候你可以了解产品设计开发界面的时候你可以了解到视觉和交互设计测试的时候你可以了解到产品测试的细节上线的时候你也可以多观察 Ops 同事的操作。如果你可以在协调沟通的时候学会换位思考多从对方的角度看问题多想一下“他为什么要这么做”那么不知不觉就会对各个领域有一些了解进而发现原来每个领域都大有学问就不会因为周围那些学艺不精的人而轻视他们所在的领域。学习设计对于工程师来说测试和上线都是技术性的工作和开发有很多相通的地方而产品设计、交互设计和视觉设计等设计领域则比较陌生。对于自己不了解的东西我们的看法往往会趋于两个极端要么是看得高深莫测要么是看得一文不值。其实对于大部分的东西只要不笨并且愿意下功夫学习总是可以学会的。尽管达到大师的水平可能需要传说中的“天赋”但做到中等水平并不是特别困难。关于设计领域我一直在断断续续地在学习到现在可能连略窥门径也算不上这里只是说一下我个人对设计的理解和心得供大家参考。产品设计产品设计看上去比较简单因为只要清楚自己想要做什么那么自然可以慢慢勾勒出产品的形态和功能。要做好产品设计就需要平时多下一些功夫多研究一下互联网上那些已有的产品另外还需要多看一些诸如社会学、历史等“闲书”举个例子假如你想开发一款针对台湾用户的产品那么了解一下台湾的文化肯定是有必要的。总之学习产品设计是慢功夫没有什么速成的捷径只有一点一滴地不断积累才能培养出敏锐的产品意识和深刻的洞察力。工程师学习产品设计有一个优势那就是设计出来的产品是自己亲手实现的你可以在实现的过程中不断重新反思原来的设计然后加以修改和完善。这就好像写文章一样很多时候你写东西的时候并不清楚自己具体要写什么但只要是下笔开始写写着写着就会发现新的想法写作的过程同时也是思考的过程。写作和写代码很像它们不仅可以表达想法还可以创造想法。视觉设计很多工程师听到视觉设计会立刻退避三舍觉得自己“不会画画”、“不懂配色”是不可能学习视觉设计的。诚然视觉设计是需要更多艺术方面的基本功要完全掌握需要长期的训练但我们还是可以从简单的学起慢慢培养对设计的感觉。我个人在这方面所知非常有限但是对视觉设计中的完美主义印象深刻。编程的时候如果你的某行代码多了一个空行可能不会有什么问题但在视觉设计中差了 1 个像素或者 10% 的透明度就是不可容忍的很多设计师要求的都是 “Pixel-Perfect”——像素级别的完美。如果你不苛刻地追求完美几个这样的“小瑕疵”就可以把整个作品毁掉。在我没有接触过视觉设计的时候很难理解这一点切页面的时候并不会特别仔细地去看设计图而且为了降低技术难度会想当然地篡改设计师的意图比如把一些微小的渐变用纯色代替这是很无知的做法。所以当设计师要求你做一个 1px 的修改的时候即使会花掉你几个小时的时间也要听他的——只有这样才可以把界面做到百分之一百的完美。当然设计师自己做不到完美另当别论。此外作为一个页面设计师从职位名称上来看他的最终作品应该是页面而不只是视觉效果图。所以我觉得页面设计师应该精通 CSS只有自己才可以精确实现自己的设计意图。对于那些没有受过设计训练的工程师来说很难注意到页面上色彩、字体和渐变的细节让他们精确实现一个设计师的意图几乎是不可能的。精通 CSS 对于页面设计师来说并不算一个过分的要求很多国外的设计师甚至可以自己用 PHP 写出产品原型相比之下国内的页面设计师进化得实在太慢了。交互设计交互设计是有关行为的设计它更关注如何让产品更好用。举个例子网页中一般都有很多超链接当你把鼠标移动到超链接上的时候鼠标形状会变成手型暗示它是可以点击的而且访问过的超链接和普通超链接的颜色是不同的这样就很好地引导了用户行为。之前我一直把设计和“视觉设计”等同起来但在深入了解了之后发现对于互联网产品来说交互设计要比视觉设计重要得多而且交互设计相对于视觉设计也更加有迹可循对“感觉”要求没那么高工程师完全可以把重点放在交互设计上。如果交互设计做得好视觉设计遵循一些标准那么完全可以做出一款“不难看并且好用”的产品。没有人特别夸赞 Google 的产品“好看”但它们都特别好用Google 注重的是易用、快速用户体验是很棒的。互联网行业的大部分页面设计师Web Designer都是学习平面设计出身的但我觉得网页和软件设计更像是“显示器里面的工业设计”。很多平面设计师设计出的页面很好看好像海报一样非常适合打印出来但往往对交互方面重视不够。不太好看影响不会很大但不好用就没有办法留住用户而且有时候太注重外观的视觉效果反而会分散用户的注意力进而影响产品的使用这种 “eye candy” 是糟糕的设计。现在专门培养交互设计师的机构不多我很希望对互联网有兴趣的工业设计师们到这个行业中来。关于设计我就说这么多以后有机会再另外撰文专门探讨这些主题。值得一提的是没有人可以真正把设计和开发全部精通如果深入到细节无论设计和开发都会占用你大量的时间和脑力。单从设计来说需要掌握的就有颜色、字体排印Typography、排版(Layout)、交互设计等其中每一种技能又涵盖无数细节真的是要皓首穷经才可以在其中的某个领域成为大师。不过即使你对这些知识只是有一个大致的了解以后在看一款产品的时候也可以从功能、交互、排版、页面代码、整体性能以及URL语义化等各个方面进行全面而细致的分析明白它哪里做得好哪里做得不好而不是在那里想当然地说“真酷”或者“狗屎”。真正了解什么是好的什么是差的自己做东西的时候才会心中有数。一专多能的好处很多人可能会说“一个人要是可以把所有事情都搞定那还要其他人干嘛我更相信团队的力量。” 没错一个人就算从设计到开发都精通如果只有他一个人做东西开发效率也不会高。但是若你真的花心思去了解那些“与代码无关的事情”你就会在写代码的时候更多考虑到产品经理/设计师的想法对产品经理/设计师疏忽的地方也可以及时提醒让自己真正地融入整个团队。目标并不一定要实现它是用来指明方向的。开发工程师提高自己的产品意识和设计能力绝对不会是白费心血不然的话你就只是一个实现产品的工具。你只会回答别人提出的问题而好的问题要比好的答案有价值得多。当你各方面能力提高得差不多的时候应该就可以出来创业了注意我说的是创业不是去创业公司打工。因为对各个领域都有一定的了解平时也经常接触到各个领域的人那么在创业的时候你就很清楚自己需要什么样的产品经理/设计师知道具有什么样能力的产品经理/设计师才是最好的这样就可以从一开始就保证团队的质量和气质。很多互联网的业界前辈都说过“要招聘最好的人”但问题是你如何判断一个人是不是该领域最好的呢如果一个人对程序和设计一窍不通满脑子都是商业运作你觉得他有可能找出最好的工程师和设计师吗有一次和一个创业公司的CEO聊天他和我讲他们“只招聘 Geek”后来我才发现他其实根本不知道什么是 Geek只是不知道从那里听到 Geek 这个词他真正想要的应该是那种只知道写代码愿意没日没夜任劳任怨给他当牛做马的人。国内大部分的创业公司就是这样老大们喊着技术密集型的口号实际上做着劳动密集型的事情金玉其外败絮其中。你可以和他们不一样。我自己并没有创业的经历也没有创业的打算所以对创业的理解可能很片面而且天真。但是我相信找到最好的人永远都是关键不然即便后来成功了也不过是多了一家靠人数取胜的血汗工厂。假如你选择成为移动互联网的独立开发者对一个产品各个环节的全局把握也是有必要的。如果一个团队的每个人都能独当一面并且可以很好地理解其他人的意图和专业技能就算最后在商业上失败了那也会是一个幸福的团队比那些除了盈利之外找不到任何亮点的团队好太多。对产品经理的偏见在“开发”这个小节的最后我想多说一点自己对产品经理这个角色的看法。在国内绝大多数公司开发工程师的作用就是把产品经理的想法以代码的方式写出来“代码民工”这个称呼倒是很恰当。我对互联网行业的产品经理们一直感到很奇怪他们没有能力把自己的想法实现出来但是却几乎总是认为自己比其他人更理解产品当工程师对产品提出自己的意见的时候他们往往会心中不屑但尽量保持礼貌挤出微笑说一句“呵呵工程师不是普通用户”。一个产品本来就是需要很多人齐心协力一起完成的产品经理和工程师的地位也是平等的但是由于产品经理在工作流的上游所以情况往往演变成工程师在为产品经理工作。如果产品经理真的对产品负责也就罢了可惜的是大公司的产品经理大部分是对KPI负责小公司的产品经理大部分是对老板的个人好恶负责结果就是工程师跟在产品经理屁股后面做一些莫名其妙的事情。我接触到的几乎所有开发工程师都对他们的产品经理头疼不已据他们说好的产品经理就像真正的爱情是极为稀有和可遇不可求的。按照现在大部分公司的分工方式产品经理是产品的总负责人。根据我个人的理解产品经理之于产品应该相当于导演之于电影建筑师之于建筑。一个导演如果对拍摄一窍不通那么就很难控制镜头的表现力一个建筑师如果对建筑材料和结构一无所知就不可能把握建筑整体的感觉。那为什么那么多人会觉得产品经理可以不懂技术不懂视觉设计只需要写好文档画个框图然后交给别人去做就可以做出好的产品呢本来是一个需要对各个领域融会贯通最难做得好的角色现在反而被很多人视为清闲的差事不爱干活的人纷纷想要转去做产品经理实在是可悲至极。我一直坚信好的工程师是不需要产品经理的。如果一个产品非要有一个什么产品经理的话Google 的很多产品都不会出现DropBox 这种只招聘工程师的公司也早就完蛋了。很多伟大的产品都是几个工程师想到一个点子然后慢慢做出来的比如 Paypal 和 Google. 但需要说明的是我讨厌产品经理并不是说我推崇“技术导向”——无论怎样产品都应该是让用户使用的而不是用来炫耀技术的只不过工程师不需要产品经理也可以设计好一个产品并且实现它。产品设计不是产品经理的专利。想知道懂得设计的工程师没有产品经理的时候可以做出什么东西吗去看一下 Livid 做的 V2EX 就知道了。在国内设计和代码都有品味的网站可不多我觉得 Livid 同学真是开发工程师的典范。接下来我们说一下“研发”。研发相对于开发来说我个人更喜欢研发一点。研发和开发的一个不同之处就是研发有更多的“研究”成分在里面也就是说研发的时候会有更多“光明正大”的学习时间这对于那些对技术本身有追求的工程师来说是很有吸引力的。有一些人做工程师是为了可以创造出好的产品然后挣大钱或者改变世界也有一些人做工程师是因为对技术本身有兴趣想要好好研究。可以凭借技术名利双收变身成功人士固然很有吸引力但不关心世事钻研一些自己喜欢的东西也自有它的乐趣在。如果说开发产品是“输出”那么学习思考就是“输入”只有输出没有输入整个人就会废掉完全沦为一颗螺丝钉。在很多公司尤其是那种经常加班赶项目的公司你每天都会处于很忙碌的状态脑子里想的都是赶紧把指定的任务完成上线。因为时间紧所以你在开发过程中遇到什么问题都是只求解决没有心思和时间去搞明白为什么会出现那种问题在这样的工作状态下完全没有办法积累工作经验看上去好像工作了五年其实是工作了一年然后重复了四年。做研发一般不会直接为产品贡献代码更多做的是一些基础架构或者实验性的产品所以它有几个很明显的好处。首先很少开会。其次没有产品经理。第三一般都会把质量放在第一位时间不会特别紧。这是三个非常巨大的优势这意味着你绝大部分时间都可以安心学习、思考、设计、编程幸福指数会飙升。如果你是做基础架构那么代码质量就会有硬性要求你不得不写得健壮、易用、松耦合并且易于调试要花心思和时间细细打磨对个人的能力提高、习惯养成和经验积累都非常有帮助如果你是做实验性的产品那么你就有大量的机会和时间去调研最新的技术而且最棒的是你可以在产品当中使用它们——这对于开发线上产品的工程师来说是不太可能的因为不成熟的新技术存在太多未知的风险。此外做研发对工程师的素质要求很高需要很好的技术基础、学习能力和研究能力——我把它看作是一个优点。从个人角度来说我宁愿一家公司招聘非常严格需要竭尽全力才可以进去因为严格的招聘可以保证团队所有成员的质量不用担心进去之后会“和臭棋篓子下棋”。既然选择去做研发那么基本可以说明你是一个对技术有追求的人也肯定希望周围是一群和你一样的人而不是连基础知识都不够熟悉的家伙。只有这样一群“互相看得起”的人在一块研究、学习、思考、切磋才会其乐无穷才能够产生更多创意做出好玩的东西。当然做研发也有不好的地方。只有大公司才有研发部门这些公司一般都已经上市或者员工已经很多你不太可能有机会一夜暴富。当你埋头做了几年研发之后某一天去参加同学会发现大学时候那个数据结构不及格总是求你让他拷贝编程作业的张三衣着光鲜四处敬酒。他所在的公司刚刚上市因为进去得早现在他变成了百万富翁而且荣升高层。于是你忽然开始怀疑自己当初的选择连学习和编程的乐趣都变得很不真实。所以如果你渴望建功立业那么就不要选择做研发或者做几年研发之后就出来闯荡。成功需要的条件很多而编程只是你的优势之一只有这一个优势你需要太多的运气才可以得到你想要的。不过我们也可以换个角度看。“乱世放不下一张安静的书桌”现在到处都无比浮躁有个地方可以让你安安心心做一些自己喜欢的事情已经非常难得多少人拼命挣钱就是为了可以和你一样做自己喜欢的事情。尽管那么多人在叫嚷“搞原子弹的不如卖茶叶蛋的”但总有一些人愿意去追求人类最高财富——知识和艺术家般的技艺。本来做研发成就感会少一点作为一个 Twitter 的开发工程师看到那么多人在用 Twitter 肯定会特别开心相比之下某个在 Google 做基础研究的工程师的成就感可能没那么强烈。不过在国内环境比较神奇开发工程师非但成就感不多反而会不少挨骂还经常会有负罪感相信做过邮件推广和广告弹窗的工程师都深有体会。这样一来研发工程师的“清苦”反而变成了一个优点可以远离很多“不得不做”的违背良心的事情。相信很多工程师在入行之前是喜欢技术的但是工作之后发现完全不是自己当初想象的那个样子然后就变得失望麻木不再对技术有热情。其实你可以把热情延续下去只不过要去做研发而不是做开发。大部分由于兴趣而不是生计学习编程的人内心真正渴望的都是去做研发只不过没有人告诉他们开发和研发的巨大差别。现在不少大公司都有自己的研发部门有一些还成立了自己的研究院想要一直做技术的同学不妨尝试一下。如何选择很多人在大学里之所以会选择计算机为自己的专业并不是因为自己对计算机和编程有兴趣而是因为计算机是“热门专业”在毕业之后也浑浑噩噩地找了一份工作进入了这个行业做着自己并不喜欢的事情还有一些人则是毕业之后找不到工作然后看到一些培训机构的广告就去报名学习编程希望广告上描绘的“月薪过万”不只是一场梦。于是就有了越来越多的“代码民工”在形形色色的大小公司做着又脏又累的工作只为了“混口饭吃”。我并不想批评这些人毕竟在这个大环境下有着太多无奈逼得我们无从选择。对于这样一些只想找一份好工作的人是被骗到这个行业中来的。仔细回忆一下这些年来我们看到的业界新闻了解到的互联网公司文化大部分都是有关诸如 Google, Facebook 等国外公司的我们平时学习和使用的技术几乎都是国外发明的。这让我们深信互联网就是那样美好那些激动人心的东西触手可及但请你关上电脑出门好好看一下周围这是在中国。互联网没有国界但互联网公司有。Google 和 Facebook 这样的公司看上去离我们很近我们每天也使用它们的产品但国内的互联网公司可能要几百年之后才会有那样的气质和文化。所以如果你不幸误入了这个行业还是及早打算改行或者转型做管理比较好这样就不需要再学习自己并不喜欢的“枯燥”技术了。对于那些“真的”对技术有兴趣的人要么去做一个同时具备软件设计能力的开发人员也就是富有创造力的 Hacker要么去做一个自得其乐的研发工程师。虽然环境恶劣但是任何东西都挡不住真正的热爱。在这个几乎人人都把金钱作为衡量标准的社会里你真是得到了上天的眷顾不仅能够以自己喜欢的事情谋生而且收入还过得去。Hacker 是适合创业的因为他拥有创造一个产品的全部能力。电影《社交网络》让很多以写代码为生的人产生了幻觉Facebook 创始人传奇般的经历好像在向全世界宣布世界是程序员的。很多人只是激动地看到扎克伯格的技术能力但是却忽视了他的软件设计能力和对产品细节的重视程度好像只要埋头编程就可以做出 Facebook。除了优秀的技术能力之外扎克伯格的思考能力和创造力同样出类拔萃可以感受得到他眼里的世界是不一样的。我们的工程师又有多少人对生活中的事物有独特而深刻的理解呢独立思考也应该是 Hacker 的必备技能。很多工程师都觉得自己会编程只是缺少一个“好的 idea”很多非技术人员则觉得自己有一个“好的 idea”但是缺少编程能力来实现。要做一个产品好的 idea 和实现它的能力缺一不可。然而我们可以看到最后成功的往往是那些非技术人员因为他们可以清楚地看到编程是一件可以学习的事情而工程师们则往往天真地认为好的 idea 靠的是“灵机一动”不会有意识地培养自己的观察能力和想象力。很多好的 idea 都是来自于平日对生活的敏锐观察和思考然后这些点在某个时候忽然连成了一条线把它简单地归结为“天才”是懒惰的做法。“成为一个 Hacker”和“做研发”很难说二者哪一个更困难。Hacker 在技术上可以不是一流但他运用技术创造产品的综合能力肯定是一流的而研发更注重技术上的造诣和理解程度关注的是深度而不是广度。如果想要做研发那么就要好好把基础知识研究透彻比如数据结构、算法和网络协议等不然很容易就会遇到瓶颈。我遇到过的每一位研发工程师都是技术上的大牛在很多技术问题上都有非常深刻的见解他们会从本质上分析问题而不只是纠结于语言细节。如果你想要通过自己的作品改变世界那么就好好提高一下编程之外的能力做一个好的 Hacker如果只想埋头技术就应该选择去做研发。不过无论是想要做一个 Hacker 还是一个研发工程师都需要长年累月地不断学习和思考。听上去好像非常辛苦不过每一个热爱技术的人应该都会把学习和思考当作一种乐趣而不是一种苦役。如果你无法享受学习和思考的乐趣那么还是不要在技术这条路上走下去了你会活得特别累并且毫无幸福可言。在这个充斥着“代码民工”并且缺乏“技术文化”的国度我们只是关心怎么样可以活得更舒服似乎忘记了编程本身所具有的迷人色彩。Joel Spolsky 说过许许多多的人选择编程首要的原因就是他们宁愿将自己的时间花在一个公平有序的地方一个严格的能者上庸者下的地方一个只要你是对的就能赢得任何争论的地方。此外我觉得选择编程还可以获得最大限度的自由和独立。因为找工作的时候只需要凭借自己的编程能力所以不需要见人说人话见鬼说鬼话不需要去结交权贵达人不需要去为了所谓人脉去混圈子也不需要看到邮件列表里有领导的邮件就去“顶”。平日里写写代码其它时间喝酒吃肉只交性情相投的朋友武侠小说里的畅快适意也不过如此。这种独立和自由是极为宝贵的你可知道有多少人在醉酒之后哭喊“安能摧眉折腰事权贵使我不得开心颜”所以说编程这件事情关乎公平关乎自由关乎美。而作为一个拥有编程能力的人你可以亲手创造美。只有艺术家才可以创造美。希望有越来越多的人可以真正领会到编程的魅力所在喜欢上这种艺术。正如 Raymond 所说软件设计和实现应该是一门充满快乐的艺术一种高水平的游戏。你需要用心。你需要去游戏。你需要乐于探索。黑客事业之未来, 全依赖我们今日之创造。最后推荐一些文章和书这些文章和书大部分都与技术细节无关它们讨论的是基于编程的令人心醉的文化也适合非技术人员阅读。1. 如何成为一名黑客。所有学习编程的都应该多看几遍这篇文章至少把 Hacker 和 Cracker 的区别弄清楚。2. 大教堂和市集。这是一篇关于 Linux 的经典文章。这里需要声明一下我对那些 Windows 程序员没有偏见只是我觉得作为一个以编程为职业的人如果不参观一下 Linux/Unix 的深邃世界未免太过狭隘。3. UNIX编程艺术。这本书虽然名字叫做“编程艺术”但里面并不讲授如何编程而是全面展示了迷人的 Unix 哲学和文化。看完之后你会发现那些看上去不修边幅、整日对着电脑屏幕编写代码的邋遢程序员对于美竟然会有那么高的追求。“美在计算机科学中的地位要比在其他任何技术中的地位都重要因为软件太复杂了。美是抵御复杂的终极武器。” 这本书的作者 Raymond 同样是《如何成为一名黑客》和 《大教堂和市集》的作者。4. 黑客与画家。这篇文章是 Paul Graham 写的文中详细描述了黑客与画家的相似之处。这里所说的“黑客”和《如何成为一名黑客》中所说的“黑客”略有不同但你可以看到他们很多共同点。本文也已经被收录到 《Hackers and Painters》一书该书的中文版《黑客和画家——Paul Graham文集》由阮一峰翻译应该很快就会面世我十分期待。5.创造者的品味。作者同样是 Paul Graham文章观点独到见解深刻每读一次都有新的收获。6. 软件随想录:程序员部落酋长Joel谈软件。这本书是 Joel Spolsky 的精华文章结集作者写文章写得非常有趣擅长讲故事前几天我翻译的那篇《程序员阿士顿的故事》就是他的手笔。本书由阮一峰翻译翻译质量非常高有兴趣的可以先去试读几篇。7. About Face3交互设计精髓。本书是交互设计领域的经典著作作者之一 Alan Cooper 原来也是知名程序员被称为 “Visual Basic 之父”所以这本书里面对程序员的批评还是很中肯的。另外书中“设计体贴的软件”的核心思想非常棒值得程序员好好阅读和思考。  FROM:http://www.zhuoqun.net/html/y2011/1573.html 转载于:https://www.cnblogs.com/shijizhisheng/archive/2011/01/10/1931641.html
http://www.pierceye.com/news/99502/

相关文章:

  • 网站开发大概价格最常用的网页制作软件
  • 商务网站模块设计时前台基础设施建设免费网站建设空间
  • 青海省公路工程建设总公司网站饮料公司网站模板
  • 建设部网站刘赵云网页版邮箱
  • 免费扑克网站企业网站怎么搜索优化
  • 做网站导航的厦门网站建设制作多少钱
  • 怎样免费注册网站域名鹤城建设集团网站
  • 3合1网站建设价格网站建设论坛快速建站
  • 怎样做钓鱼网站上海网站关键词排名优化报价
  • 昆明专业网站设计公司电商类网站设计模板
  • 网站流量用完了重庆网站推广
  • 网站管理助手数据库网站在建设中无法访问
  • 网站标题格式建设网站南昌
  • wordpress作企业网站好吗沈阳短视频制作公司
  • 表格网站怎么做的作文网站大全
  • 比特币网站建设专业网站建设企业网站制作
  • 故宫博物院官网网站咋做的山东省济宁市最新消息
  • 天河营销型网站建设html网页设计代码作业正能量
  • 国外网站设计欣赏智能获客系统
  • 济南网站建设599网站建设完工后在什么科目核算
  • 学校网站的作用app营销推广方式
  • 怎么做网站互换链接重庆工程建设信息网官网查询
  • 刚开始做网站要传数据库吗赛迪建设网站
  • 网站网络推广教程手机html网站开发视频
  • 网站弹出广告代码口碑好的龙岗网站建设
  • 东莞网站建设-搜盟网电商的运营推广
  • 美发网站 源代码网站建设的博客
  • 做电影视频网站赚钱嘛安溪人做的网站
  • 网站建设基础代码赣州专门网公司
  • 购物网站答辩ppt怎么做网站开发环境