是的,这和IT系统和代码没有什么关系;鸡汤式的文章,看烦了的就关掉吧,想看的请听我碎碎念。惯性本是物理学研究的问题,这里没有要研究物理学里的惯性。惯性无时无刻地发生在我们的日常生活中,只是你我都没有察觉而已。惯性这个牛顿第一定理,其实早就已经还给老师了。百度百科是这样定义惯性定理的,“一切物体在没有受到力的作用的时候,总保持静止状态或匀速直线运动状态”。也就是说物体在没有收到外力作用的情况是下会保持原有的运动状态的。其实你每天含辛茹苦写的代码和系统未尝不是这样,小到一行代码,大到一个系统无不如是,只是我们没有察觉而已;然而我们的人生何尝不充满着惯性呢?

  当你将一段代码、一个函数和一个类提交到svn或者git等版本管理软件的那一刻开始,代码惯性和系统惯性就已经开始形成了。当你为了系统能按时上线,日以继夜地完成的代码难免有bug。信不信由你,反正那个bug静静地躺在那里。随着系统功能的不断完善和bug的不断修复,系统变得越来越重,越来越慢了。终于有一日,你看到了不堪的代码,那个画面实在惨不忍赌,于是千万个草泥马不断地奔腾,心里默默地说着“写的都是垃圾”。然而,系统一旦上线,随着时间的推移,为了保证系统的健壮性,你是否还有勇气去重构呢?还是说干脆将所有代码重写呢?想想这都是一件恐怖的事情,然而现实总是残酷的,有时你不得不面对这样的问题。一个系统和代码的惯性如何,这就取决于你的系统架构和代码的健壮性了。当然,我们都寄希望于良好的系统惯性,一旦一个系统坏味道的惯性出现也就开始令你的工作变得混乱不堪,日复一日地在修修补补,直至你重构或者重写这个系统。可见代码、系统也是有惯性的。

  然而人生莫不如此,这个惯性着实可以令你成为一个怎样的人。一个人的惯性从刚出生的那一刻就已经开始了,你所处的家庭、家教、学校和周遭环境会令你形成一种惯性。这个惯性会在你人生不同的阶段,不停地转换,有的人转换得少,有的人转换得频繁。当你有一个良好的家庭教育、很好的学校、教师,轻松自由和容忍失败的环境。这着实会令你自信、从容和富于创造性。然而,不是每个人都那么的幸运;或许你和我一样出生于边远山区的农村,没有良好的家庭教育,也没有很好的学校教育;在这个纷繁复杂的社会,甚至很多事情令你无所适从、缺乏自信、甚至自卑。然而,这个坏味道的惯性比你想象中的要强大;它会令你自卑、令你堕落、令你找不着北、令你不知道自己要什么;周而复始地重复下去,直到有一天,你意识到自己需要改变;然而这个时候那个惯性并没有因为你意识到要改变而停止,意识到没有真正去做,那又有什么卵用呢?很幸运的是,意识到要改变并且认真做了,时间久了这个坏味道的惯性也就慢慢减少了,直至良性惯性的成型,进而形成另一个惯性。不知道你处于哪个惯性中呢?

  今天写了多少行良性惯性的代码呢?而又写了多少坏味道惯性的代码呢?良好惯性的代码可以另你及你代码的后续维护者更加轻松,多写些良性惯性的代码吧!然而,这二十多年来,你的成长环境造就了这样一个你,你的哪个惯性占比较多呢?这着实是一个令人深思的话题,或许工作和生活就是这样的一个循环吧!若果坏味道的惯性占据了过大的比例,那你需要适时地打破那个坏味道的惯性了。

  然而很多事情总是说来容易做来难,不管你是否有耐心看到这里,大道理大家都懂,鸡汤式的文章在这个大环境下并不少,只是我又写了这样一篇文章罢了。看完这样一篇文章,日后的生活,你处在哪个惯性中的比例较多呢?这会让你成为怎样一个你呢?完了,接下来该干嘛还干嘛。

无论IT代码系统还是人生都是有惯性的的更多相关文章

  1. 5年Android开发诉苦:47天21家面试,半年空档期觉得整个人生都被毁了

    近日,我在逛某社交论坛时,发现一位做了五年的Android开发将自己这段时间的所有面试经历发表了出来,根据网友自己提供的信息显示,主要面试的地点都在北京,上海等地. 微软和亚马逊刚面试完一面,都是以算 ...

  2. command not found,系统很多命令都用不了 ,修改环境变量

    bash: ***: command not found,系统很多命令都用不了,均提示没有此命令. 突然之间linux很多命令都用不了,均提示没有此命令. 这应该是系统环境变量出现了问题导致的. 解决 ...

  3. Git学习总结(6)——作为一名程序员这些代码托管工具你都知道吗?

    作为一名程序员这些代码托管工具你都知道吗? 作为一名优秀的开发者,大家都会用到代码托管,我本人用的是github,确实github里面有很多很多开源的项目,所以我们目前的创业项目程序员客栈www.pr ...

  4. Linux:-bash: ***: command not found,系统很多命令都用不了

    系统:64位RHEL6 突然之间linux很多命令都用不了,均提示没有此命令. 这应该是系统环境变量出现了问题导致的. 出现这种可能性的原因有很多,大多数是因为,安装了新的软件要配置环境变量,但是没有 ...

  5. 使用git提交代码到github,每次都要输入用户名和密码的解决方法

    自从使用git提交代码到github后,发现自己使用git的功力增长了不少,但也遇到不少问题.比如,使用git提交代码到github的时候,经常要求输入用户名和密码,类似这种: 网上有这么一种解决方法 ...

  6. 【优雅写代码系统】springboot+mybatis+pagehelper+mybatisplus+druid教你如何优雅写代码

    目录 spring基本搭建 整合mybatis pom配置 mybatis配置 设置数据源 设置sqlsessionfactory 设置扫描 设置开启事务 资源放行 测试 结果 思考&& ...

  7. AOSP查看当前要打进系统里的都有哪些包

    发现问题: 修改系统时常常需要预置APK,这就要修改PRODUCT_PACKAGES这个变量,那么如何查看这个数组的值呢?我们可能直接在mk文件中去打印它,后来发现打印它只会显示继承关系(即继承自了哪 ...

  8. zend studio 连PHP自带系统函数 常量都不提示

    如果是新建项目,所有PHP文件里面函数都是可以自带提示的. 但是,打开已经建立好的项目时候,貌似无法识别是PHP项目或者其他什么. 此时,在项目上点击: configure->add php s ...

  9. BZOJ 2333 左偏树 (写得我人生都崩溃了...)

    思路: 高一神犇 竟然 问我这道题   我光荣地  看着题解(划掉)  写了一下午 QaQ multiset不能erase(一个值)   这样就把等于这个值 的数都erase掉了  (woc我一开始不 ...

随机推荐

  1. web前端开发常用的10个高端CSS UI开源框架

    web前端开发常用的10个高端CSS UI开源框架   随着人们对体验的极致追求,web页面设计也面临着新的挑战,不仅需要更人性化的设计理念,还需要设计出更酷炫的页面.作为web前端开发人员,运用开源 ...

  2. bzoj 1458 网络流

    我们可以知道每行最多可以有多少个格子不用建点,设为x[i],每列同理设为y[i],那么我们连接(source,i,x[i]),(i,sink,y[i])表示我们将一个格子不建点,那么(i,j,flag ...

  3. Bringing up interface eth0: Error:Connection activation failed:Device not managed by NetworkManager

    Just follow the below steps and everything will be ok...   1. Remove Network Manager from startup Se ...

  4. 在网络7层协议中,如果想使用UDP协议达到TCP协议的效果,可以在哪层做文章?(QQ 为什么采用 UDP 协议,而不采用 TCP 协议实现?)

    为了解决这题,可以具体看看下面这个讨论. 解灵运工程师 185 人赞同 某次架构师大会上那个58同城做即时通信的人说:原因是因为当时没有epoll这种可以支持成千上万tcp并发连接的技术,所以他们使用 ...

  5. codeforce 626E(二分)

    E. Simple Skewness time limit per test 3 seconds memory limit per test 256 megabytes input standard ...

  6. -----------------------------------项目中整理的非常有用的PHP函数库(二)-----------------------------------------------------

    6.PHP列出目录下的文件名 如果你想列出目录下的所有文件,使用以下代码即可: function listDirFiles($DirPath){ if($dir = opendir($DirPath) ...

  7. 检测端口状态的python脚本

    #!/usr/bin/env python import os,subprocess,socket,time,sys from urllib import urlencode from socket ...

  8. Lua函数之二

    Lua函数之二 Lua中函数的两个重要特性: 1.函数和其他类型(如number.string)一样,可以存放在变量中,也可以存放在table中,可以作为函数的参数,还可以作为函数的返回值. 2.嵌套 ...

  9. block与函数指针有什么区别

    block就是一个代码块,但是它的神奇之处在于在内联(inline)执行的时候(这和C++很像)还可以传递参数.同时block本身也可以被作为参数在方法和函数间传递,这就给予了block无限的可能. ...

  10. powerdesigner设置表主键列为自动增长。

    powerdesigner 版本12.5 创建表就不说了.下面开始介绍设置自动增长列. 1 在表视图的列上创建.双击表视图,打开table properties ———>columens ,双击 ...