关注在你的任务——不要去思考将来,那不是你思考的

       如果你是一个士兵,你的排长让你把拿炸药包把前面的碉楼炸了,你上不上?

       很多程序员同学,不必面临着上战场的生死,他们想着自己应该想的更多,站的更远,他们骨子里(虽然会反对)会把自己当主角,期望先把“产品的世界”先弄懂,把主线弄懂。

        但,很失望的,很少人能够在短时间内看懂“产品的世界”,所以他们在不断的徘徊,不断的思考未来遇到的困难。

       所以我的建议是,如果你不能在合理的时间范围内把主线弄明白,那么就不用弄明白了,先迈出第一步。

       在系列《关注在你的任务》的文章中,我会以多个方面的现实故事来说明,其实很多同学在自己的岗位上不必“空载式”的烧脑,我会提供一些方法或者技巧让你迈出第一步。根据我的经验,可以包含几种不同的技巧,包括做笔记,画主线,代码重构,流程图设计,测试驱动,关键技术先走通法等等。这些技巧可以一并来进行使用。有了这些方法,一般来说只要是能“蛮”过去的事情基本都能解决。我也会在这里探测程序员们的思维,我本身也是10年的程序员,懂自身的弱点,也懂得利用自己。今天起一个头,分析下不同的人的职业能力和职业心态。在这里针对的是中级如我这样水平的同学,并不针对非常厉害的牛人,他们的世界我不懂。


       先研究再着手的心态

       很多具有研究背景的同学或者在面试的时候,会犯一个毛病,就是拿到一个问题的第一行为是查资料、查论文。为啥说这样不好咧,因为他们的没有先自己思考。所谓学而不思则罔,当拿到第一个任务的时候,要做的事情是根据现有的能力或者产品,看看能否组合、组装、改进等来解决这个问题。组合是多个解决方案并联在一起解决。组装是提炼多个技术点,改造线路进行解决。改进是修改或者调整部分技术点,抽象或者具化这些解决方案。在2010年我的一个同事要研究三维的森林火灾蔓延的效果,他在前面半个多月都是在找相关论文,最后找不到合适的方案而不了了之。对于这个事情,火灾蔓延的蔓延算法不是关键点,参数也不是关键点,而真正的难点当时应该是实现和表达。因为如果有实现效果,那么至少简单的蔓延算法(比如同圆扩散)就能够做到,可以尽早的看到效果,推进项目(项目推进了,才会有更多的想法,参与方才会更多)


      瀑布式开发的心态

       虽然敏捷开发已经在很多公司大行其道,但刚毕业的小伙子仍然会的是瀑布式的开发思路,毕业后没有从工作中获得感悟的老鸟也会陷入这种心态。瀑布式的心态首先是要有人给做好详细的设计,然后再开始做编码,他要求领导者给出一份较为详尽的框架图来引导他做后面的工作。在一般的软件开发过程中,我们并不会遇到难以解决的技术难点,且项目的整体框架和思路应该也是有章可循的,关键是找到入口。这类软件开发犹如windows(老版本的)的挖地雷游戏,只有有一个突破口,其他的工作就容易展开。人(领导)一般倾向讲大道理,因为他可以涵盖多个方面,定义边界。人不愿意从大道理落实到一个个功能点,因为就好像这挖雷游戏,一旦开始挖了,或许会遇到坑,在往下分析就耗费很多时间(领导是时间是宝贵的),结果往往就在解决一个个点问题了。那做不做详尽的详细设计又有什么区别列。所以少年郎,公司内很多项目,其实就是让你去挖雷,没有诀窍,经验才是引路人,时间是耗费是必要的。


      不可能完成或原来不是这样的或别人互联网是这样的 

      不敢说时代在变。因为现在回看10年前的书籍,你会发现现在做的和10年前想做的事情是一致的。那时候的前辈未能实现的,现在有条件是可以实现了。这样的例子是很多的。比较深刻的是10年前谈城市三维,现在三维还在做,而且还不算很成熟,还有大量的问题需要解决。 当一个人绝不思索就说是“不可能完成的”,一般是他的畏难情绪在作怪,他没有把现有的思路给串起来。在不同的行业中,大家都会以互联网的企业作为标杆企业,因为他们做的东西比较漂亮,比较实用。这是对的。但也需要认识到,互联网的公司,很多是将我们的日常生活切片化了的,也就是说它在关注着你生活中的一个层次,比如钱的方面,比如快递方面。很少的独立的产品能够将整个具体行业的工作打包起来。这就是专业性软件存在的利用,他们不仅需要做到好看的层次,也需要专业化的层次。无论是崇拜互联网的,还是不看好互联网的思维的,都没有仔细的推敲自己所在行业的实质需求。

   


     过于强调可用工具

     如同到了森林里面,很多人会因为没有锅,没有食物而惊慌失措。一台电脑什么都没装,你也是可以编程的,比如直接使用javascript。 不会使用操作系统的基本工具,是现在很多人的通病,在这些人的眼中,电脑是玩的还有工作的,不知道电脑最原始的作用是提高工作效率,所以操作系统是自带很多工具和功能的。另外就是过分强调使用高级的工具,比如版本管理,比如IDE。我们现在还有很多人使用myEclipse来进行编程,这个玩意超级大,而且非常占内存,如果电脑配置差一点,基本没法干活。现在大家也不会去清理电脑的垃圾,也很少对磁盘进行整理。那么我的意思是,为了加快先搞到工具,还不如平时积累小工具的使用方式。

猜你喜欢

转载自blog.csdn.net/htsitr2/article/details/82845122
今日推荐