我首先承认,有点标题党。因为这是我这个十年老码农——过了年就整整11年了,o(╥﹏╥)o——的个人观察、经验所得。如果有仍在加班的.NET童鞋,不要打我。一定要打的话,只有一个要求:不要打脸!

写这篇博客是因为这篇报道:华为工程师猝死,36岁,22月无休:比挣钱更重要的是活着。作为一个37岁边缘,马上就要38周岁的老码农,心有戚戚。这个年龄,上有老下有小,自己走了就走了,但他们……唉,一声叹息。

我刚入行的时候,就听人说,“珍惜生命,远离华为”,那时候还以为只是一句调侃。后来有认识的进了华为,隐隐约约听到他们的年薪,心里也还悄悄地酸不拉几了一下。但当这种血淋淋的现实摆在眼前,心里还是忍不住的震撼了一下。

以前类似的事情,我多半会觉得言过其实,哪有什么“过劳死”,活人还会被尿憋死?累了不会打个盹么?说不定这人自己身体有啥问题……但这段文字,让我真的无话可说:

昨天为了省钱,飞哥自己给“源栈”刷地坪漆,半天下来,我的那个老腰哟——真正地体会到了什么叫做“岁月不饶人”。有时候,我们的心还年轻,但身体已经顶不住了。所以,还像年轻的时候那么拼,就真的要出问题了。

又跑题了,还是说加班的问题。我当程序猿这么多年了,就真没怎么加过班。原因以前我也总结过,大致两条:

  1. 一直用的.NET
  2. 欧美外企工作

好吧,好吧,我承认,或许还有一条:我不怎么“追求上进”,嘿嘿,(*^▽^*)

前面两条原因我在学ASP.NET入门编程,合适么?已经解释过了:

一方面,愿意选择ASP.NET、肯花钱买windows server(服务器没人敢用盗版)的公司,“压榨人工”的渴望就不太强烈(这个表述大家领会意思就可以了,不要怼飞哥。我知道,这个推断是不全面的、不可逆的)。

另一方面,使用ASP.NET的多半不是互联网行业,做的是2B(to Business)系统,一般都比较成熟稳定,紧迫性不高,比较从容;不像2C(to Customer)那样“赶”,需求今天改明天变,而且是你追我赶的要“啖头汤”。

这里,我为我的“不求上进”做点自我辩护。

其实在我决定开设ASP.NET全栈课程的时候,就已经有朋友劝我了:干嘛不教Java?现在这么火!你会C#,转Java超级简单的……但我不为所动,抛开其他种种考虑,“不求上进”也是其中的一个原因了。真正对自己狠的人,不论是找工作还是做培训,那就是不断地追求“利益最大化”:什么“火”或者什么“新”就学什么。就这三五年,我知道的:Android/iOS,node.js,各种前端框架,乱烘烘你方唱罢我登场,很多做培训的着实狠狠地捞了一笔!至于现在/后来凉了,反正钱都已经收了,是不是?

ʅ(‾◡◝)ʃ

我没有其他啥意思,要说实话:其实我有点嫉妒。这些人真的能拼,和有些同学想的不一样,这些培训老师可能也就是前脚学会后脚就开始上课了。没办法啊,这些技术也就刚刚出来,哪里去找“十/五/三/两年以上应用经验”的人?但他们就能控制住课堂,装出一副胸有成竹的样子,唬得学员一愣一愣的。飞哥就没有这种拼搏精神了,要教就教点自己熟悉的吧,轻松点,不心虚。

反正我同时最多就只能有18个学员,全国这么大,只要真的把课讲好了,18个愿意学ASP.NET的人总是能找到的。我就不信所有人都是跟风的:因为大家都在学Java,所以我也跟着学Java吧。就没几个不跟风想抄底的?

这些年经历的事越多,越觉得这个世界是大致公平的。很多古话越咀嚼越有味道,比如“世间事不如意十之八九”,最开始会以为这是一种悲观颓废;后来会觉得这里面居然有正能量(毕竟还有一二如意不是);但现在,我觉得这不过是说一个事实而已。更有意思的是,所谓“世间事”,是世间所有的事,所有人的所有事,无论贫富贵贱贤与不肖!所以,这里面又透出一股子大道无情一视同仁,也就是公平的味道出来。

自从暴露了我“黑律师/包工头/创业狗/野生程序猿……”的黑历史之后,长期收到这种问题:我要转行学编程,选哪一门语言好呢?这个问题很长一段时间让我很纠结(现在不纠结了,当然是跟着飞哥学C#,斜眼笑.jpg)。因为压力很大,很怕给别人一个“错误的”建议,误了别人的终身!我连这些语言现在的优劣都分辨不出来,更遑论他们以后的发展和前途?最简单的,十年前,谁会想到微软会“拥抱开源”?别说十年了,就一年前,谁会想到这两天GitHub 私有库免费无限开放!的消息刷屏?唱衰.NET也就不过这两年的事,五年前,“Java已死”的声音才是主流吧?还有曾经高潮得一塌糊涂的node.js,要干掉SQL的noSql,现在不都凉了?

世事无常,谁要是真能预测未来——艹,还用得着苦逼敲代码?去买股票算了!

所以,敢拍着胸脯保证什么语言/技术一定有前途的,真就应了那句话,“不是蠢就是坏”。咳咳,飞哥除外?)

回到之前那个问题:我要转行学编程,选哪一门语言好呢?

随缘算了

因为不管你怎么选,都不可能十全十美的,都不能保证这个选择是最正确的。以前说“三十年河东三十年河西”,在软件开发领域,“三年河东三年河西”还差不多!算你20岁开始学,60岁退休,中间40年的时间,什么变化都是可能的,唯一不变的可能就是变化。

这个道理我记得也讲过很多次了。再举个例子吧,学编程选语言,大概就类似于学法律选方向,究竟是民法有前途还是学刑法有前途,这个问题怎么回答?学好了都有前途,可能这是最标准最正确的回答了。计算机各种语言也一样,而且很大概率到最后你什么语言都要学一点。就和法律职业资格考试一样,什么法都要考,因为案件难免会有交叉,民事领域的案子一过界就归刑法管了。你当然可以有一个主攻方向,但想着只管这个方向其他的都不闻不问肯定是不可能的。ASP.NET是飞哥的主攻方向,但这些年,C、Java、VB、Python……这么多语言,我啥都碰过了,难道说这不是我的方向,分到手上的活就不干了?你要敢这样,等着被老大喷一脸的口水吧!别说后来了,我培训的时候还学的是JSP呢,出来还不是干ASP.NET?ASP.NET好歹还学了点,那时候已经是WebForm 2.0了,比较火;最悲催的是,工作内容是升级之前的ASP系统,在一堆Html/JavaScript里去扒拉,VBScript既看不懂也不会调试——说起来都是泪。

后来慢慢就习惯了,也明白了:这才是程序猿的常态。是你去适应项目,而不是让项目来适应你。各种语言之间转来转去的程序猿太多了,换个公司换个项目甚至啥都没换技术进步,都逼得你要不断的学习新技术。所以你回过头来想,纠结最开始入门的语言真是没什么必要。那些语言之争的月经贴,感兴趣的一定是菜鸟。像我们这些老码农,早就麻木了,不光是对语言优劣麻木,对新技术一样麻木。就那样呗,该用的时候就用,新鲜出炉的东西,等它先凉一下再说,谁都不愿意去“趟坑”……

反复宣传什么什么“主流语言”“新技术”的老家伙,多半别有居心——嘿嘿,我承认,飞哥也是有点小心思,看破不说破,你懂的。

差不多了,图穷匕见:

————————————————

“源栈”ASP.NET课程,再来一波大促销。考验同学们人脉的时候到了:

1个人来报名9折,2个人组团来报名8折(注意:是两个人都8折!),3个人组团7折……直到最低5折,或者源栈首批18位学员满额(已有8位同学缴纳订金)。

有意者,欢迎QQ群(729600626)撩我,

————————————————

感谢博客园一直以来的包容,下一篇来点干货:《新手如何理解面向对象》,欢迎关注。

.NET程序员不加班——写在《华为工程师猝死,36岁,22月无休》之后的更多相关文章

  1. 程序员为什么要写if else,为什么要和别人不一样

    程序员为什么要写if else,为什么要和别人不一样 前言 无聊,睡不着!本文只是随便写写而已!感叹一下程序员的生活! 刚看到一个八级程序员的分级,所以就写了这个随笔,分级如下:        第八级 ...

  2. 《REWORK》启示录 招聘笔杆子——程序员为什么值得写博客

    Hire Great Writers 仿佛这是写给自己看的,不过这在其中也有着相当有趣的意义 .虽然自己算是一个能写的人,或许这算是一种不算才华的才华,写博文的意义通常不会在于去描述自己怎样,怎样.通 ...

  3. 【Geek软技能】程序员,为什么写不好一份简历?

    一份好简历会是一份好工作的开端. 为什么?沧海也会遗珠   简历,是如此重要,它是获得一份满意工作的敲门砖,但不同的简历敲门的声响可不同. 但很多时候简历给人的感觉也似乎微不足道,因为没有人会真正细致 ...

  4. 程序员延寿指南「GitHub 热点速览 v.22.17」

    很多人对程序员的固有印象之一便是常加班.易"猝死"!近几年的许多报道似乎也进一步加深了这种印象.应该如何更好地健康地活着.敲喜欢的代码呢?HowToLiveLonger 教你如何从 ...

  5. 《程序员的思维修炼》摘抄start:2014年9月27日19:27:07

    程序员的思维修炼:摘抄:考虑到社会中各个相关团体的复杂交互影响和社会的持续变化,在我看来当前最重要的两项技能就是: ▪沟通能力: ▪学习和思考能力.软件行业正在逐步提高沟通能力.特别是敏捷方法(见注解 ...

  6. 程序员的情人节「GitHub 热点速览 v.22.07」

    又是一年情人日,刚好还是发文的今天.也没什么好送的,送点程序员的浪漫--代码和开源项目吧.记得在本周特推查收这份来自程序员的独有浪漫. 本周 GitHub 霸榜的项目基本上都是老项目,从老项目中挖点新 ...

  7. 看看一个老程序员如何手写SpringMVC!

    人见人爱的Spring已然不仅仅只是一个框架了.如今,Spring已然成为了一个生态.但深入了解Spring的却寥寥无几.这里,我带大家一起来看看,我是如何手写Spring的.我将结合对Spring十 ...

  8. 程序员肺被切掉一块还得去加班... 再谈“工作996,生病ICU”

    如题,为什么要说再谈“工作996,生病ICU”,因为996问题早已不是一个新问题,在我最近刚出版的新书<SOD框架“企业级”应用数据架构实战>写作期间,爆发了一次程序员“起义”,出现了一个 ...

  9. GitHub 近 100,000 程序员“起义”:向“996”开炮!

    作者 | 伍杏玲 出品 | 程序人生(ID:coder_life) 平常CSDN推送关于程序员加班的文章时,很多程序员边吐槽边调侃地留言“比拼”:“我们也是996”.“007来报道”…… 可在简单的数 ...

随机推荐

  1. Java历程-初学篇 Day01初识java

    HelloWorld!!!!! 一,第一个java程序的构成 1,外层框架 class 后面的类名必须与文件名相同 起名方法:1)构成只能有_ $ 字母 数字 2)数字不能开头 3)首字母必须大写 4 ...

  2. sql server 高可用故障转移(4)

    二台sql服务器配置ISCSI虚拟磁盘 在上篇我们利用ISCSI Target软件在DC-ISCSCI上创建了三个ISCSI虚拟磁盘,在下面我们将为大家介绍SQL-CL01(hsr1 50)和SQL- ...

  3. 谁还没遇上过NoClassDefFoundError咋地——浅谈字节码生成与热部署

    谁还没遇上过NoClassDefFoundError咋地--浅谈字节码生成与热部署 前言 在Java程序员的世界里,NoClassDefFoundError是一类相当令人厌恶的错误,因为这类错误通常非 ...

  4. 在腾讯云(windows)上搭建node.js服务器

    1:安装Node.js 使用MSI文件,并按照提示安装node.js,默认情况下,安装程序将 Node.js 发行到 C:\Program Files\nodejs. 但这里我们需要修改安装路径到:D ...

  5. 你不知道的JavaScript--Item26 异步的脚本加载

    先来看这行代码: <script src = "allMyClientSideCode.js"></script> 这有点儿--不怎么样."这该放 ...

  6. js定时器让动画隔秒运动

    现有一个需求,宝箱隔几秒动一次,抓住用户眼球,自己写了个 doem.

  7. mysql(mariadb)如何更改root密码

    mysql(或者mariadb,她是mysql的一个分支,完全开源,新版本的linux系统默认安装的是mariadb)如何更改root密码呢?我们主要介绍命令mysqladmin来实现. mysql( ...

  8. 数据分析工具Pandas

        参考学习资料:http://pandas.pydata.org 1.什么是Pandas? Pandas的名称来自于面板数据(panel data)和Python数据分析(data analys ...

  9. vagrant命令

    $ vagrant init      # 初始化 $ vagrant up        # 启动虚拟机$ vagrant halt      # 关闭虚拟机$ vagrant reload     ...

  10. memcache 和 redis 之间的区别

    结论 应该说Memcached和Redis都能很好的满足解决我们的问题,它们性能都很高,总的来说,可以把Redis理解为是对Memcached的拓展,是更加重量级的实现,提供了更多更强大的功能.具体来 ...