一、

我现在是陈士成,陈士成现在是我。为什么这么说呢?

那年那天,天刚微微亮,似乎还在打着哈欠。我和父亲去得很早,为的就是在“小升初的考试成绩榜单”前面占一个有利的位置。我不记得当时穿的厚还是不厚,体面还是不体面,但能确定的是穿的绝不是陈士成的那件“长衫”,也没留陈士成那样长长的辫子。

我和父亲拼命地在榜上找一个叫“王二”的名字;没错,王二就是我的名字。小时候,有一些不怀好意的人总喜欢亲切地叫我“二蛋”,这外号十足十的令我生气,但我无力改变。这责任也不能归咎于我父亲,因为在我出生之前,他已经替我想好了一个“伟大”的名字——王卫国。但奈何算命的先生死活不肯同意,他断定我这一生都不可能有“保家卫国”的丰功伟绩,必须叫一个俗气点的名字才能保住这条小命。于是,老先生算来算去,最终决定叫我“王二”。

至于为什么父亲和母亲会同意算命先生的决定,我到现在似乎才找出了像样的答案:带女儿去王府井的“金宝贝”上早教课,发现有小朋友叫“豆包”、“毛豆”,还有叫“乔治”的。刚开始见“乔治”的名字时,我感叹说“乔治”的爸妈很时髦嘛,给儿子叫这么一个洋气的名字!后来陪女儿看《小猪佩奇》动画片的时候才恍然大悟,原来“乔治”是小猪佩奇的弟弟!

“王”是大姓(毕竟张王李赵,王排第二呢),因此姓王的名字很多;我和父亲找得也很辛苦。尽管密密麻麻的白色粉笔字争先恐后地挤进我的眼睛里来,但没有一个是“王二”。我急得眼泪在眼眶里直打转,偷偷地仰头看了一眼父亲的脸色,似乎有些铁青。我于是下了狠心,重新在榜单上用心的检索了一遍,似乎在中间的位置发现一个像似我的名字——“王一”。

“爹,你看,那是不是我的名字?”我踮起脚,伸长胳膊,费力地用手指向了那个名字。

“哎,好像是,下面那一横有点不显了。”父亲往前一步,仔细地观察了一番,终于确认那就是我的名字。

当我今天读鲁迅笔下的陈士成时,我想起了18年前站在阳坡鄉中(那时候,总以为这个鄉字应该念lang)“小升初的考试成绩榜单”前面的我和父亲;假如那时候没找到“王二”的名字,我会不会小学毕业就回家像陈士成那样在家掘地三尺,寻一份闪耀着“白光”的宝藏呢?

你做过在家挖矿的梦吗?

二、

我现在是孔乙己,孔乙己现在是我。为什么这么说呢?

小升初的时候因为“一横”差点落榜,但好歹是没落榜;但高考却是实打实的落榜,复读那年的成绩和第一年的成绩不相上下,都离二本有几分的距离。那时候的选择不多:

第一,继续复读;我高二的语文老师陈士国,就对外宣称自己是“八年抗战”才考上大学的,他的毅力常常令我们学生感到钦佩。但我毕竟只是个普通的学渣(被算命先生言中了),再复读一年估计只能再枉费一年青春;另外,父亲对我也颇为失望,大概是信了算命先生的话,对于复读的事情持反对的意见。鉴于此,再复读的路是走不通了。

第二,上三本;但三本学费高昂,家里承担不起。仅此一条,上三本的路也堵死了。

第三,回家种地,继承“家产”;但父亲一看见我鼻梁上架着的那幅近视镜,就非常不屑地给我下了一个定论:“就不像一块种地的料!”我自己也想,就那十几亩地的家产,也确实配不上我这个“高材生”。

第四,上大专;学费比起三本来说实惠得多,还只用上三年,甚至大三就可以做实习生上班挣钱。这实在是再明智不过的选择了。

但,这在很长一段时间里都给了我一种错觉——自以为是上二本的料,却被命运捉弄上了大专(实际上是成绩好的不愿意和咱玩,咱又不屑于和成绩差的为伍)。哼,简直和孔乙己是一副臭模样。

孔乙己就是一个自负而又自卑的人!他穿着长衫却会红着脸和别人争辩;他赊酒欠账,但人品似乎比别人好,有钱就还。想一想自己——读书十来年,浑浑噩噩,好不容易混得一纸大学文凭。发誓老子一定要混出点人模狗样,到现在还是一贫如洗。羡慕那些能说会道的,看人家混得风生水起,再瞅瞅自己,只叹生不逢时,恨老天有眼无珠;间歇性的踌躇满志,持续性的混吃等死——呵呵,鲁迅先生的“哀其不幸,怒其不争”,难道只是在说孔乙己,不包括我王二吗?

读孔乙己,不应该只嘲笑他的迂腐,还应该看得出他人性中的光辉——他不吝啬把“茴香豆”分享给小朋友吃,只剩下几颗的时候才想起来自己,比起社会上那些自私自利的家伙们(机动车在直行的情况下强行右转的那些无耻司机),孔乙己在我心目中反倒伟大了起来。

三、

我现在是阿Q,阿Q现在是我。为什么这么说呢?

因为咱也有一套切实可行的“精神胜利法”:

  • 看别人开奔驰宝马,自己坐公交、骑自行车,就说自己“环保又健康”;

  • 看别人年薪百万,自己每月不到一万,就说自己“要不是生活在洛阳这个三四线城市,也能月薪两三万”;

  • 看别人公众号每篇文章动辄百万+的浏览量,自己每篇上百都是惊喜,就说自己“只要继续坚持,终将守得云开见月明”;

  • ......(请脑补更多)

不然还能怎样?出身不是自己能决定的,凭一己之力又做不出翻天覆地的改变,也不能靠买彩票成为阿里巴巴一夜暴富,还没有把握住机会靠读书识字谋得一官半职。你说,像咱这样的“屌丝”程序员,除了靠着“精神胜利法”苟且般的活着,还能怎样?

得到人们的尊敬,有女人,过上好日子,就是阿Q的梦想。也是诸多“码农”程序员们的梦想。

 

比起阿Q,我的境况要好多了,大学幸运的被调剂到“计算机网络专业”,学的Java编程语言。Java作为面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程;近些年,Java一直霸占着编程语言界的头把交椅,而我也靠着Java工程师这一头衔挣了一些钱。

往后去,只要我用心地坚持(在编程方面夯实基础,在挣钱方面转换思维,在生活方面时刻反省),也一定会在业界小有成绩。因为我想起了鲁迅的另外一句话:

希望是本无所谓有,无所谓无的。这正如地上的路;其实地上本没有路,走的人多了,也便成了路。

我曾做过陈士成,也做过孔乙己,还做过阿Q的更多相关文章

  1. 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则

    负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...

  2. 端口被占用通过域名的处理 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则

    负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...

  3. 文章如何做伪原创 SEO大神教你几招做"原创"网站文章的心得

    想要创作出好的文章并被百度所喜欢,就非常需要SEO的优化能力,以及要对文章进行塬创或伪塬创,那么,如何做伪塬创文章?以及如何做好塬创网站文章呢?对此,本文小编就为大家带来了几招做"塬创&qu ...

  4. 预热篇- 总结Delphi Xe4 做App的的可行性分析. ios平台的问题还需要自行学习

    首先澄清一个问题, 很多同学其实是误会了, 以为只要搞定了Delphi 就能很快写快餐程序了.  ios 本身的知识还是需要一些的, 并没有什么捷径可以走. 但如果一个团队有分工协作的话, Delph ...

  5. 最新做路径动画必备Simple Waypoint System5.1.1最新做路径动画必备Simple Waypoint System5.1.1

    NEW IN 5.0: up to 400% faster thanks to the DOTween engine! UnityEvents, new movement options and mo ...

  6. 不用框架,原生使用python做注册接口/登陆接口/充值接口的测试,做的数据/代码分离

    注意充值时候,cookie的处理方法,还是原来的三种方法 1.操作数据文件  do_exclel.py # -*- conding:utr-8 -*- #@Time :2018/11/8 22:46 ...

  7. 做新时代的奋斗者!(好吧,我还没弄出python的编译环境)

    Pictures: 今日分来的补记来嘞: Game 1:Guess the number. Python包含许多内建的函数,有些函数存在于称为模块的单独的程序中,可以使用import语句把它们的模块导 ...

  8. Kotlin都转正成Android官方语言了,你还不试一下?

    想想Android Studio 和Eclipse ,我觉得你还是有必要入手Kotlin了. 站好队很重要. 以前的一篇总体概括老文,大家可以看看~ 爽翻天!告别Java.一起来使用kotlin开发完 ...

  9. Angular 2.0 从0到1 (七)

    第一节:Angular 2.0 从0到1 (一)第二节:Angular 2.0 从0到1 (二)第三节:Angular 2.0 从0到1 (三)第四节:Angular 2.0 从0到1 (四)第五节: ...

随机推荐

  1. UOJ#41. 【清华集训2014】矩阵变换 构造

    原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ41.html 题解 首先写个乱搞: 一开始每一行都选择第一个非0元素,然后,我们对这个方案不断做更新,直到 ...

  2. notes for lxf(三)

    纯函数式编程是没有变量的,只要输入确定输出就确定 指高度抽象的编程范式 特点 函数本身可以作为参数传入 或者允许返回一个函数 Higher-order function 一个函数可以接收另一个函数作为 ...

  3. 基于Emgucv,C#的图片旋转方式

    /// <summary> /// 图片旋转 --百度 旋转仿射 /// </summary> /// <param name="modelImage" ...

  4. GitHub的简单使用记录

    记录于:2013/4/24 GitHub(网址 https://github.com/)是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub.   G ...

  5. Django缓存机制

    缓存介绍 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增删改查,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的后台操作,都会消耗很多的服务 ...

  6. OneNote中添加代码问题

    OneNote是我最常用的笔记本,然而粘贴代码很麻烦,之前只能屏幕截图如Snipaste自带截图什么的,后来才知道win10自带有win+shift+s自动剪切到草图板上的功能, 然而还是很麻烦. 在 ...

  7. 更换MariaDB数据库

    https://downloads.mariadb.org/mariadb/repositories/#mirror=neusoft&distro=Ubuntu&distro_rele ...

  8. echarts-for-react 从新渲染数据

    <ReactEcharts option={option} notMerge={true}  style={{height: '600px', width: '100%'}} className ...

  9. python学习相关知识点

    1.ndarray中,添加行或列:https://blog.csdn.net/lishuandao/article/details/52444288 2.numpy中ndarray数组拼接方法介绍:h ...

  10. Qt5+MSVC2015环境将VS2015编写的控制台程序转化为GUI程序

    如题所述,如何将VS2015编写的控制台程序转化为Qt5+MSVC2015环境编译的GUI程序? 最近想到这个操作,类似于Linux下使用的命令行操作转到Windows下使用GUI操作,看了控制台的命 ...