zoukankan      html  css  js  c++  java
  • 做程序员并不容易

    你拎着包子走到座位,办公室一如既往的嘈杂。对面的项目经理对着电话,气急败坏地问对方周末为什么不能来加班。你叹了口气,打开了学习笔记,上面显示“已有两周未更新”。todo list全是等待打勾的小方框。你顺序看下来:算法,操作系统,Java语言,C语言,web基础……计划非常丰满,可是周末你去陪朋友喝酒了,一样都没做。公司同事都有小孩了,好不容易朋友给介绍了几个程序员,不想失去这来之不易的圈子,周末就必须花时间社交。尽管你们的话题跟编程一点都没沾边。

    你咬了一口包子,打开桌上散乱着的Effective Java,上面的英文字母弯曲着,你把第一段看了好多遍,却不知道作者在说什么。对面的产品经理还在吵。你想问:两个人中间只隔着一排走廊,为什么不能面对面聊天,非要skype?

    要好的同事发来一条信息:我离职了,月底最后一天。你对着屏幕顿了半天,木讷地打了一句祝福,然后赶紧把聊天界面关闭了,好像关掉了就不是真的。

    你心烦意乱,把Effective Java扔到一边,顺手打开了你买的名家程序员专栏。上面写着:做一个优秀的程序员并不是一时之功,要耐得住寂寞,要内功深厚,要持之以恒地努力一万个小时……于是你接了一杯咖啡,振作精神,顺便思考下面该学什么。

    为了找到合意的工作,你上周开始学web编程,自从你打开manning的实战系列以来,你一直处于一个有点恍惚的状态中:跑了一个书上的小例子,欢欣雀跃;操作系统的书一页你要看一天,可是实战系列你一天可以看四章,加上你的java基础,简直纵横捭阖,大杀四方。你看了javascript,写了一点前端,刚好争取到一个后端小项目的边角活,于是顺便看了netty,惊异地发现只要看看introduction代码就能轻易地跑起来,简直要误以为自己是一名大神;你又看了一点数据库和Spring Boot,虽然比netty复杂一点,但是好在书上的例子清晰明了,你也可以运行起一个小书店的网页。

    如果这就是web编程的一切,那也未免太简单了。就好比学英语,会说一句hello,会点基本语法,靠着framework的存在,似乎就可以凑成一篇看起来很厉害的文章了。你不禁漂浮起来。但是上了个厕所,你又意识到事情绝不会如此简单。你打开了teach yourself programming in ten years,瞬间被浇了一头冷水。文章中说:能一天学会某种东西的方法绝对是有害的。

    那么,我怎样学才能无害呢?你想。你一天只有八小时,最多十小时吧。公司里的活,只要是你不感兴趣的,基本上已经推干净了,你才不在乎领导的看法也不在乎涨多少工资,你只想面向自己的简历编程。于是有跟服务器有关的项目,你就死皮赖脸地卖萌,缠着架构师给你分一点可怜的小活。但是就算这样,你的时间也是有限的。你打开计算器算了一下,如果每个工作日学习8小时,达到10000小时定律你需要5.2083333333年。你的互联网公司小伙伴周末为了写一个app忙到半夜三点,可是你不行。你周末去剪头发的时候已经被理发师吐槽了,说头发一抓掉一大把。同事也说你最近法令纹好像深了。你虽然平时不打扮,但毕竟还没到三十岁,技术差点就算了,你不想变成秃头妇女。

    偏偏你又什么都想知道。不过这也不过份。有些东西就是基础,不知道怎么能行呢?java都出到10了,了解一点8的流式编程不算过分吧。做了两年java开发,了解一点JVM原理不算过分吧。JVM又牵扯操作系统,那对你简直是一个无底洞,又好奇又怕怕。学操作系统得先学C和C++,那些书的课后习题就够你做两年。学习web知识,就算能先忽略TCP/IP那些大部头吧;前后端都得懂一点,学一个framework就得懂一个framework的模型,但是你会写网页并没用,核心是framework帮你做的,所以等于没学到东西,只是学会了用别人的工具;要学后端,起码得掌握点分布式的东西,但是那长篇累牍的论文又让你望而却步。网上没啥好的中文教程,好的都要收费。英文教程要找好半天,而且看得慢,而且不易坚持。世界上那么多工具,没有一个是你写的,但是每一个你都至少要学一周。更别提算法了,你在leetcode上做一个median题目都要至少一天,网上那些自称ACM渣渣的人说他们做一道题半小时。你不想做码畜每天堆砌业务;你也想写一个jvm,或者一个spring-boot,做这种解放其他码农生产力的工作,然后Linus Torvalds颁奖给你,祝贺你为java社区作出了巨大贡献(虽然Linus跟java没毛关系,但是你认识的牛人不多,只好拿他充数)。你做梦都在笑,可是醒来以后你还是一个码畜。

    你写这篇文章的时候已经远过了下班时间,你以为可以平静地写这篇吐槽,然而隔壁的经理们还在装作加班,一个经理大声地吸溜着桃子,另外两个在大声聊着老板更宠幸谁。你又叹一口气,拿着蹭公司的打印机打印的Spring Boot实战塞进斑驳的书包里,猛喝一口冰可乐,下班。回家还要继续你的一万小时呢。

  • 相关阅读:
    在C#代码中应用Log4Net(二)典型的使用方式
    在C#代码中应用Log4Net(一)简单使用Log4Net
    Windows Azure Active Directory (2) Windows Azure AD基础
    Windows Azure Virtual Network (6) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (1)
    Windows Azure Active Directory (1) 前言
    Azure China (6) SAP 应用在华登陆 Windows Azure 公有云
    Microsoft Azure News(3) Azure新的基本实例上线 (Basic Virtual Machine)
    Microsoft Azure News(2) 在Microsoft Azure上运行SAP应用程序
    Microsoft Azure News(1) 新的数据中心Japan East, Japan West and Brazil South
    Windows Azure HandBook (2) Azure China提供的服务
  • 原文地址:https://www.cnblogs.com/mozi-song/p/9432201.html
Copyright © 2011-2022 走看看