奇特的一生

slife

最近谈了困难和容易的选择,说了逃离舒适区,今天就谈谈全才和专才吧,也算统一回复下很多同学的问题。

很多人的看法是二选一的,要么全面发展,样样精通样样稀松;要么成为某个专业领域的顶尖专家。作为一个70后程序员,老朽万不赞同!

就拿IT技术来说(好吧,我只能说这个领域,被你们看穿鸟),工作十年以上的,想不成为通才是很困难的,除非你确实是不思进取,而且十几年不跳槽。很难想象一个工作近10年的技术人员说,我只会Java!回顾一下,从2000到2013,技术领域的革新速度令人瞠目结舌,说日新月异不为过。各种操作系统、编程语言、数据库(Sql的、NoSql的)、各种框架、平台、业务系统,接踵而来,数不胜数,你得多牛叉才能做到十年只用一种操作系统、编程语言和数据库啊?

比较好的方式是全面熟悉你接触或主动学习的内容(非浅尝辄止),同时在其中根据兴趣和方向打造自己的专项特长。

写到这估计就有同学要发言了,那位已经涨红了脸的童靴你说一下吧,“Mac君,全面学习打造专长,说者容易做者难,不吃不喝光学东西,你当我神仙啊?”。好的这位神仙,你先坐下,把手里的臭鸡蛋放到桌子里面,下面我将用一个完美的公式证明这是可行的。

是啊,人怎么会有那么多时间学习那么多东西呢?其实这个不可能的设定,是在保证你有足够时间看电视、看美剧、刷微博、上网闲逛的基础之上的。只要把上述这些事情消费的时间减少一半,拿来持续学习,你就会发现学习效果是惊人的。

有一本书叫《奇特的一生》,介绍了一位叫柳比歇夫的科学家,这个兄弟生前发表了七十来部学术著作。其中有分散分析、生物分类学、昆虫学方面的经典著作;各种各样的论文和专著,他一共写了五百多印张。等于一万二千五百张打字稿。涉及内容包括:著作,探讨地蚤的分类、科学史、农业、遗传学、植物保护、哲学、昆虫学、动物学、进化论、无神论。此外,他还写过回忆录,追忆许多科学家……

柳比歇夫为什么会有如此多的时间干这么多事情?难道他不睡觉不娱乐每天工作18小时么?非也,很多宣称自己每天工作15小时的人,真正有效的工作时间可能不到一半。柳比歇夫把时间分为纯时间和毛时间,纯时间是要把工作中的任何间歇都要除去的,他这么描述:

“常常有人说,他们一天工作十四五个小时。这样的人可能是有的。可是拿纯时间来说,我一天干不了那么多。我做学术工作的时间,最高纪录是十一小时三十分。一般我能有七八个小时的纯工作时间,我就心满意足了。我最高纪录的一个月是一九三七年七月,我一个月工作了三百一十六小时,每日平均纯工作时间是七小时。如果把纯时间折算成时间,应该增加百分之二十五到三十;我逐渐改进我的统计,最后形成了我现在使用的方法……”


“当然,每个人每天都要睡觉,都要吃饭。换句话说,每个人都有一定的时间用在标准活动上。工作经验表明,约有十二——十三小时毛时间可以用于非标准活动,诸如上班办公、学术工作、社会工作、娱乐,等等。”

这个人对时间有精准的把控,他会把自己每天的工作和用时记录成册,时间就像经过严格控制的沙漏一样,在他身边缓缓流过,他仿佛能感知时间的流失。这样的自控能力、学习和工作效率让人叹为观止,常被我奉为天人!每当偷懒时总是对自己说,孙子,你看看人家柳比歇夫子是怎么干的!当然,咱不是天才,有时候懒还是要偷的……

所以,综上所述,无论你现在处于哪个境地,是手握优质资源还是即将被裁掉,其实都是自己之前的选择造成的。我们不能改变出生的国家、年代、家庭背景、运气,我们唯一能做的就是充分利用时间,按照自己的兴趣把自己训练成通才之上的专才,这个道理很多人懂的晚,做的晚,但是,就像写Mac技巧一样,写的慢不要紧,重要的是持续的写!

证明完毕!

今天是3.8妇女节,祝所有的女听友节日快乐,所有的女生都是美丽的天使,只不过有些更美丽而已!

沉默的大多数

silence

现在虽然到了一个信息极为流畅的时代,但是大多数人依然是沉默的。这里不谈论政治民生,就说社交数据内容的贡献者,依然寥寥。大致是1%的内容提供者,3%的参与讨论者,6%的冷嘲热讽挑毛病者,还有90%沉默的大多数,冷冷的旁观默默的走开,从不带走一片云彩。

幸好还有那3%的高质量互动,所以,这期我们就互动一下,回复几个问题:

1、问:在一家公司个人影响力是不是真的很重要?今年我在晋升各方面的指标都达标了,但主管给我的反馈是影响力不够,在别的主管那里没什么印象,平时要多参加活动,多交流,增加自己的影响力。我很郁闷,我性格比较内向,比较喜欢自己研究技术阅读等,这种性格怎样增强影响力啊?

答:我工作的这些年遇到了很多技术牛人,有一部分人喜欢默默的牛,他们默默的coding,默默的解决问题,默默的帮助别人,默默的完成自己的工作,从来不写博客不发微博不参加技术大会不上社交网站,总之就是默默的,但是很牛,一点不比业界这些愿意分享的牛人差。这样的人其实没什么不好,个人选择而已,只要能够找到赏识你的人或公司就可以了。关键的问题是,你要足够的牛。
如果你不是要做这种人,那么确实需要更多的扩展自己的知识面和影响力,理解技术之外的东西,增加交流,多发言和演讲,多读一些人文类的书籍。就像我昨天写得,挠自己的痒处,离开舒适区,只要有利于成长,就去做自己不擅长的东西。

2、问:从大学毕业一年多了,本科专业是机械自动化,但在大学期间也逐渐爱好计算机专业了,并报了计算机的双学位,由于两专业课程的时间冲突,基本上都是自学专业课,最后也顺利毕业了。本想通过读研深造进入IT行业,但今年考研失利,开始迷茫了。在校基本上插班听课,缺乏编程和项目锻炼,基本上学到的都是理论。
我也怀揣着一个将来能进入像淘宝、Google(可能有点远)工作的梦,我感觉能和优秀的人一起工作会是幸福的。但我现在缺乏求职需必备的技能,真的想进入IT行业,您认为通过报一些IT培训课程去学一些技能或者项目经验是否是一个合适的途径?这样的培训,求职企业是否认可?当下IT技术飞速发展,像我这样渴望入行的人,可以选择哪个方向开始呢?

答:这个问题虽然很长,但是更容易回复一些。想进入IT行业其实和考研究生没有任何因果关系。很多大学生考研究生可能是为了推迟就业压力,但这个压力迟早要面对的。现在网络上有海量的学习资源,更不要说国外知名大学的各种公开课,所以学习只能是自己的事。如果自制力不够,去培训班也是个不错的选择,毕竟花了钱也是动力。另外在学习的过程中争取能产出自己的软件作品,这个对未来就业非常有帮助。
祝你早日进入Google或淘宝!

以上均为个人建议,仅供参考,如有雷同,绝对是别人盗版。

今日推送的Mac技巧:

再谈Alfred的Custom Search:

有一期Mac技巧我介绍了如何利用Alfred的自定义搜索实现在App Store上搜索app,后续有很多人问如何自定义自己的搜索或打开特定网页,其实非常简单,今天给大家介绍下。
目前很多网站的功能都是通过REST风格的应用,不懂REST也没关系,我们来举个例子,比如Googe的翻译功能,这个URL就是把life翻译成中文:

http://translate.google.cn/#auto/zh-CN/life

其中zh-CN表示翻译成中文,auto表示自动检测输入源,life表示要翻译的内容。理解了这个URL就可以自定义Google翻译了。

打开Alfred-设置-Features-Custom Search,点加号增加一个新搜索,在URL处输入http://translate.google.cn/#auto/zh-CN/{query} ,Keyword输入en,Title自定义即可。保存后用option+space呼出Alfred,输入en application,回车后Alfred就会为你打开Safari并把application翻译成中文。

大家可以据此自定义各种快捷查询、翻译、打开特定网页等功能。

那年夏天我做了两件事。第一件事是什么都没做。第二件事是读完了719页的《操作系统:设计和执行》。那本红色的简装本教科书差不多等于睡在了我的床上。——摘自LinusTorvalds自传《Just for Fun》

逃离舒适区

comfortable

本来想起名为逃离技术舒适区,后来想想这个话题具备普适性,就把技术去掉了。昨天谈的是困难和容易的取舍,今儿的话题算个延续。

什么是舒适区?如果你是个新手,你就没什么舒适区,什么都不懂嘛舒适个毛啊,在磕磕绊绊的学习中懵懂前行,期间可能还伴随着老鸟的嘲笑和进度的压力,终于有一天你武功大成,乾坤大挪移练到了第五重,工作中开始得心应手游刃有余,不断有新人或老人来找你解决问题,你微笑着迎接各种挑战,淡淡的送走困难,你挥一挥手,不带走一片云彩,这是什么境界?这就是你的舒适区,这和靠在沙发上看电视的舒适不是一回事,通常进入舒适区需要花费你很多的时间和精力,需要你不断的练习,一旦进入,你会enjoy it!

这时候,如果有人胆敢让你脱离舒适区,可算要了亲命了,你会勃然大怒,轻则争吵,重则离职。这种事遇到太多了,一个写前端的你让他学习一些后端技术,一个写Java的你让他学习一下C,得到的答复可能会,Sorry, I feel very uncomfortable!

没有人学新东西的时候非常舒服,一旦经历过从新人到老鸟的过程,再让你进入陌生的领域,那种痛苦会让你自发的去抗拒。但是一个人不可能永远躲在舒适区里,逃离舒适区会有助于你从不同的角度看问题,视野会更加开阔。人总要往前走的。

就我个人而言,我有多年的vim使用经验,目前在学习emacs,我从Linux转到windows再转到Mac,学习了多种编程语言,一直在练习自己的演讲能力并做了很多公开演讲。有时候做很多事就是为了挠自己痒处,避免在舒适区待太久。

很多人在某个地方待久了就会非常懈怠,没退休就像在养老,这时候我就知道,他们在舒适区太久了,与在哪个地方无关。

今日推送的Mac技巧:

1、可以远程同步文件的FTP工具Cyberduck

上次介绍Retinizer(普通软件Retina化)的时候提到了FTP软件FileZilla,我个人一般使用命令行下的ftp/sftp/scp等实现FTP软件的功能,但普通用户还是用图形界面的更方便些。今天再给大家介绍一个可以实现远程同步文件的FTP工具:Cyberduck

Cyberduck除了可以实现FTP的基本功能外,还能支持远程同步。所谓同步,就是把远程和本地的两个目录进行比较,然后自动找出修改的文件上传到服务器。
具体操作就是通过ftp或sftp的方式登入远端服务器,选中某个文件夹,右键菜单里选择同步,再选择本地文件夹,就可以进行同步比较上转了,上传之前你最好确认下,更稳妥。

同样,这个软件也可以用Retinizer实现高清显示效果。

2、文件重命名

文件重命名的问题以前说过,但最近又有些童靴问起,就再说一下。
如果你没有装任何插件的话,在Finder中重命名文件或文件夹的快捷键就是回车。打开文件用command+o,返回上级目录用command+向上的方向键。
如果你装了原来推荐过的XtraFinder,可以把回车改为打开文件(与windows操作类似),把option+r设置为文件重命名。
如果你在命令行下重命名文件,命令是这样的:mv oldname newname

关于长春婴儿的事件有必要说两句,无论嫌犯是谁,最终的结果是孩子没了,再也找不回来了!没养过孩子的人可能无法体会那种撕心裂肺的痛。所以给所有年轻父母一个忠告:带孩子的时候永远不要让孩子离开自己的视线,不要在自己犯错后指望别人的救赎!
最近收到一些高质量的问题,明天回答一下。

想画出完美的作品?先让自己变得完美,然后随心去画。——摘自《禅与摩托车维修艺术》

难易相成

dificult

古人云:有无相生,难易相成,长短相形,高下相倾。

很早就想说说困难和容易这点事。人生一世,我们到底是要选择做容易的事还是做难事?这个想法源于春节前的业务讨论会,有两位经理各执一词,一个说,为了让部门能够生存下去,我尽可能去做那些简单的相对稳定的任务,因为这样可以保证良好的现金流。另一个说,为了能让部门生存下去,我尽可能去做那些困难的利润更高的任务,因为这样可以保证良好的现金流。

难易相成,困难和容易会在不同的环境下会相互转化,我觉得这两位经理在特定场景下说得都没错。

就个人而言,我觉得我们应该尽可能做那些困难的事情,让别人变得不那么困难。无论是做软件还是做互联网服务,其实终极意义就是你做出来的东西能否解决用户的问题,如果这是一个容易解决的问题,那么很多人早已经解决了;如果这是个困难的问题,那就意味着很多坑等着要埋你。咋选呢,似乎怎么选都是炮灰,权衡一下,选择前者基本是无用功,那我们只好选择后者,我们本身也是爱挖坑的人,况且困难面前人人平等么。

JetBrains是一家捷克的软件公司,他们做的事情就是为Java,Objective-C,Python,Ruby,JS等语言写开发IDE,给程序员写工具可不是闹着玩的,他们对IDE的挑剔基本比肩女性对化妆品,但JetBrains开发出来的工具深受程序员喜爱,各种智能,各种效率,他们获得了极大的成功,为啥,因为做着别人很难做成的事。

让自己困难点,让别人容易点,说了半天,好像就这么点事。

今日推送的Mac技巧:

在Mac下如何进行文件比较?
1、对于单个文件的比较,一般使用diff或vimdiff就可以了,比如:

vimdiff destfile.txt sourcefile.txt

vim会非常清晰的显出时文件的不同,还有很多快捷方式帮助你查看和操作文件,这个命令比较适合命令行爱好者,如果大家喜欢,后续可以讲讲。

2、对于大批量文件的比较,还是图形化比较工具更合适一些。OS X自带了FileMerge比较工具,可以满足部分需求,但对于中文编码文件或大文件经常会崩溃,很奇怪Apple一直不解决这个问题。

3、推荐一款收费软件,VisualDiffer(25元),UI、功能和稳定性都非常不错,实在是居家旅行、代码比较、查找问题的必备利器,有需要的童靴可以感受下。

选择困难的事情,在生活里也没什么不好。坐在沙发上看电视更困难还是在电脑前面写一篇文章困难,显然是后者,你看我就选择了做困难的事……

最大化你的价值

value

有人问,你为什么要从事IT技术研发工作?如果是乔布斯,可能的答案是改变世界;如果是人生导师,可能的答案是跟随你心。如果是我回答呢,答案就是如果不从事这个行业的话呢,我还真不知道该如何养家糊口:)

每个人进入一个行业,有必然性也有偶然性,现在想来,我进入软件行业可能是兴趣使然。我小时候就比较喜欢电子相关的东西,这个习惯保持到现在就是喜欢电子设备。大学的时候电子和计算机相关的课程都学的很好,其他专业课则一塌糊涂。毕业后进入一个工厂做电子设备测试,晚上则用车间的电脑学习编程,很快自己觉得可以找到工作了,就去面试,一面之下进入洪恩,稀里糊涂算是进入了IT行业。

工作了十几年,发现自己确实对技术比较感兴趣,曾经有很多机会转岗成为纯粹的管理和业务人员,但最终都没舍得放弃技术,当然技术也没什么大成,爱好而已。

为什么做技术,技术是什么?我的观点是:

1、与其他工种一样,技术可以谋生。很多导师说看准一件事情就全情投入,不要考虑收入,奋斗不息财富会随之而来。且不说只有你成事了财富才能来,就说没成事的时候我们总不能饿得头昏眼花去奋斗吧。准确一点是工作初期不要过分考虑金钱。总要解决温饱问题吧,那么做技术研发可以很容易达到这个目标。

2、技术是一种手段和做事方式。尤其是在现在这样一个互联网和数据的时代,可以说技术面前人人平等。你付出了多少,差不多就会得到多少。很多人羡慕创业公司的人获得的财富,他们只不过是把你20年平稳的打工生涯压缩成4年艰苦卓绝的创业,当他们冒着成为炮灰的风险在清晨的寒风里编程时,你正在温暖的被窝里做着美梦。所以就别羡慕了,那是他们应得的。

3、做技术需要终身学习,如果你个学习狂,恭喜你找到了一份完美的工作。有一次一个工程师告诉我,每次感到恐慌的时候,就开始学习,掌握了一门又一门语言和技术。最后他成为了一个通才之上的专才。书到用时方恨少,事非经过不知难,有时间就学点东西,没坏处,还能预防老年痴呆。

4、作技术可以最大化你的价值。如果你是卖煎饼的,买一个是一个,如果你开发了一个千万人使用的软件,那你做这个软件的价值就放大了千万倍。如果你做的互联网产品服务了千万个用户,你的做这个产品的价值也就放大了千万倍。如果你在做这样的工作,那么你就最大化了自己的价值,财富也会随之而来。如果没有,就去找这样的工作。

——读《黑客与画家》——如何创造财富有感。

今日推送的Mac技巧:

如何让不支持Retina的Mac软件变成Retina App?
前两天有订阅者求推荐Mac下的FTP软件,我推荐了FileZilla,但这个软件是不支持Retina屏的,Retina用户使用这个软件会感觉整个世界都模糊了,结果搜索之下,发现了一个小软件,叫做Retinizer,顾名思义,就是把非Retina的软件Retina化,我用了一下,完美支持FileZilla,下载地址如下,有需要的自取。

http://retinizer.mikelpr.com/

有同学让我写写自己的经历,我就随便穿插写点,但是人脑对自己的回忆一定是充满了美化和修饰的,而且这种修饰可能是不自知的,我也不例外。

时间与流行

fashion

一种编程语言想要变得流行,最后一关就是要经受时间的考验——《黑客与画家》

时间有时候是很无情的,很多流行的东西,随着时间的流逝将变得面目全非。美貌与时尚如此,技术同样要经历岁月的洗礼。进入21世纪以来,技术热点不断变更,每次的技术更迭,就像流水冲刷河床一样,虚无的流走,沉淀下来的才是有价值的东西,我们要做的就是那些能沉淀下来的东西,这需要去判断和选择。

进入21世纪,从静态语言到动态语言、面向对象编程到函数式编程、从模型驱动设计到领域驱动设计、从SOA到云计算、从BI到大数据、从BS到移动互联,无论技术热点如何变化,站着挣钱的永远是那些踏踏实实做产品和技术的。2009年SOA火热的时候,每家软件公司和互联网公司都号称自己面向服务了,甚至IBM、BEA等公司为SOA确定了SCA和SDO规范,但3年以后,无人再提SOA,无非就是用开放的技术实现原来的EAI么…

有位在校大学生问,“我们下学期要学习数据库,以后想从事大数据方向,不知道从什么方面学习大数据”。我的建议是,不要被现在大数据的噱头忽悠了,等你两年后毕业出来,可能已经没人提大数据这回事了。如果真的对数据感兴趣,踏踏实实把关系数据库学好,有时间的话再学一门编程语言,掌握数据结构,再有余力学习一些数据挖掘和推荐算法等知识,这就行了,相信我,你没那么多时间!

所以,正在流行的东西并不一定值得投入,流行感冒倒是流行,您就别追了……

今日推送的Mac技巧:

如何分别设置Mac的鼠标和触控板的滚动方向?

很多人习惯鼠标使用相反的滚动方向,而触控板类似iPad那样的自然滚动,问如何设置,当时我的回答是不知道,因为目前OS X的系统设置里,鼠标和触控板的设置是统一的。今天发现了一个免费的软件Scroll Reverser,可以实现鼠标和触控板的分别设置。

下载地址:http://www.macupdate.com/app/mac/37872/scroll-reverser

启动后程序显示在顶部菜单栏,设置简单明了,有需要的同学体验一下吧。

昨晚我正在微群里讨论知识管理的问题,刚刚谈到Evernote,诡异的是没过几分钟Evernote就提示要重置密码,当时心想被黑了,我的个人资料库啊……结果发现被黑的是Evernote不是我好失落…… 目前云端服务遍布全球,但是云端的安全仍然堪忧,企业云应用发展非常缓慢和这一点也不无干系。

感兴趣的可以关注Hacker News上的评论,http://news.ycombinator.com/item?id=5309866