凡人和神学习和使用软件的七个层次
从事软件开发行业,我们免不了要使用软件:操作系统、虚拟机、IDE、消息队列中间件、缓存中间件、HDFS、各种预研的编译器、Tensorflow等等。
在我看来,虽然软件有无数种,但是每种软件的了解却不出以下几种维度——
第零层:
知道个名头,知道是干什么的
第一层:
会一些基本的使用(调用)并逐渐掌握到(60%以上)的使用方式
比如JVM和Java编译器,你会写一些Java代码,并在JVM上运行你的代码以实现一些功能
比如操作系统,你会一些基础的命令
比如redis,会搭建一个单机版,并可以使用其命令
第二层:
对大部分(60%以上)的配置项(设置项)都能懂
比如JVM,你会设置一些JVM的运行参数
比如操作系统,你会配置一些系统运行参数
比如redis,你会配置各种参数,这个时候你应该已经可以搭建各种类型的redis集群,并使用客户端对其进行连接
第三层:
对其源码大部分(60%以上)已经读懂,原理和运行机制已经深度理解
比如JVM,你对其源码已经基本吃透,这时候让你做一些移植和JVM裁剪、JVM源码修改、重新编译等工作已经不是问题
比如操作系统,同JVM
比如redis,你已经深度理解了redis的运行机制,redis自身的bug你已经可以解决,redis不满足你的要求你已经可以调整它的代码
第四层:
你已经对软件的社区和作者造成了深度的影响,你不断的提出建议或者意见,并提交解决方法,成为了社区名人,大家都觉得你很屌,甚至超越了原作者
比如linux,linus经常和你书信往来,并对你感到由衷的佩服,如果你比他年轻很多,他甚至会要求你做他的软件的继承人
比如JVM,Oracle公司决定高薪聘请你做他们公司的技术指导
第五层:
你越来越觉得到这个软件设计的不完善,都是些愚蠢的设计,并开发了一个同类软件,完全超越这个软件
比如linux,你已经做出了一个崭新的操作系统,你开发的操作系统,设计在当前看来几乎是完美,假以时日和宣传必定超越所有同类,一统该类软件的江湖,linus甚至为你让步,停止更新linux内核,并发布官宣
第六层:
你的软件已经站在巅峰,你觉得冯诺依曼机的架构已经不能满足你的需求,为了让你的软件运行的更好,你迫切需要一种崭新的计算机架构,于是你开始着手设计一种新型计算机架构来运行你的软件,从这以后你踏上了其他领域——也许你会涉足量子领域,也许你会搞生物,也许你的新设计会和相对论挂钩,或者你的新架构就是改造恒星?如果到这一层,凡人已经看不透你了,我觉得人类的未来就靠你了,你加油吧。
第七层:
还想看第七层是什么样的?醒醒吧!
(以上内容从第三层以后都是扯淡,仅供娱乐)
转载于:https://www.cnblogs.com/flying607/p/10459984.html
凡人和神学习和使用软件的七个层次相关推荐
- 外贸软件_仿神卓外贸管理软件强大的邮件群发功能(不被退信的实现方法)
外贸软件市场中,神卓外贸管理软件肯定是一款优秀的外贸业务流程管理软件,用户数众多,最牛的功能是邮件群发功能,今天要说的是邮件群发,常规的企业邮件一天中一般发送不会超过70封邮件,多了就有可能会被退信, ...
- linux系统管理学习笔记之三----软件的安装
linux系统管理学习笔记之三----软件的安装 2009-12-29 19:10:02 标签:linux 系统管理 [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 ...
- WPF学习开发客户端软件-任务助手(下 2015年2月4日代码更新)
时光如梭,距离第一次写的 WPF学习开发客户端软件-任务助手(已上传源码) 已有三个多月,期间我断断续续地对该项目做了优化.完善等等工作,现在重新向大家介绍一下,希望各位可以使用,本软件以实用性为主 ...
- 今天的凉爽的学习环境 录音软件
今天的凉爽的学习环境 录音软件,不幸的命运降临了,观我的少女时代有感今天下午,主人公叫方丹,再也不能站起来,学校组织我们观看了一部励志影片我的少女时代,相信有家长的wufowang支持和帮助,是个聪明 ...
- 神级代码编辑软件(Sublime Text 3) v3.3114 汉化特别版
2019独角兽企业重金招聘Python工程师标准>>> Sublime Text是一个代码编辑器.也是HTML和散文先进的文本编辑器.漂亮的用户界面和非凡的功能,例如:迷你地图,多选 ...
- 手机上有没有学python的软件-盘点几个在手机上可以用来学习编程的软件
前天在悟空问答的时候,很荣幸被邀请参加回答"在手机上可以用来学习编程的软件有哪些?"这个问题,当时在回答的首页看到一个头条大微(小小猿爱嘻嘻)的回答,觉得十分受用,在此将其整理好, ...
- CTF-Crypto学习1(软件加壳、反汇编、Babe64、Rijndael密码算法)
CTF-Crypto学习1(软件加壳.反汇编.Babe64.Rijndael密码算法) 1.软件加壳 定义: 加壳的全称应该是可执行程序资源压缩,压缩后的程序可以直接运行. 加壳的另一种常用的方式是在 ...
- python手机编程软件-盘点几个在手机上可以用来学习编程的软件
前天在悟空问答的时候,很荣幸被邀请参加回答"在手机上可以用来学习编程的软件有哪些?"这个问题,当时在回答的首页看到一个头条大微(小小猿爱嘻嘻)的回答,觉得十分受用,在此将其整理好, ...
- 学习Altium Designer软件总结
广西●河池学院 广西高校重点实验室培训基地 系统控制与信息处理重点实验室 本篇博客来自河池学院: 智控无人机小组 写作时间:2020.08.22 学习Altium Designer软件总结 因学习了A ...
最新文章
- 2019攻防世界web新手区
- Java实现算法导论中快速傅里叶变换FFT递归算法
- SAP中服务性订单的替代解决方案
- 亚马逊评价抓取插件_亚马逊运营必备插件
- vue如何获取年月日_好程序员web前端教程分享Vue相关面试题
- 【IDEA】IDEA中使用git将项目上传到码云上
- Tarjan算法求解桥和边双连通分量(附POJ 3352 Road Construction解题报告)
- vue computed 中操作DOM和给对象添加属性遇到的问题
- php js 图片旋转,使图片旋转的3种解决方案_基础知识
- Socket编程Http下载的简单实现
- [JAVA #183; 初级]:1.环境变量的配置
- python 等号 什么编码_Python运算符与编码
- 字母c语言教学课件,计算机二级考试C语言辅导课件.ppt
- 实用干货!因子分析超全步骤总结
- 中不中奖,都是抽奖程序的锅?
- 《数学之美》阅读笔记1
- 面向对象设计需要遵循的六大设计原则
- 方便快捷给 PDF 加水印
- 微信小程序章节自测--6-7-8-9-有解析
- BMC Discovery增强开放性 与CyberArk在安全上达成互补
热门文章
- Java集合系列---红黑树(基于HashMap 超详细!!!)
- linux的munit命令,LinuxUnit命令学习(三)
- BZOJ2176Strange string——最小表示法
- jpa存储byte到postgresql
- 【转合辑】squid的安装配置
- cygwin内子目录及其文件删除不掉,出现access deny错误
- 软件生命周期模型 -------- 瀑布模型 和 原型模型
- 超图Cesium卷帘遇到的坑
- 知识图谱开源社区_您需要了解的关于开源社区中的倦怠的知识
- linux ansible_17本技术书籍,4个出色的Firefox扩展,Linux技巧,Buildah,Ansible和其他热门阅读