crud的价值!可别瞧不起CRUD

每天清晨,上班的路上。都摆满了油条摊子。

小面团一捏,油锅里一烫,用筷子稍微那么挑几下,一根屎黄色的油条就这么出炉了。

就这么简单的事。

每当这时,我都会盯着炸油条的师傅沉思。

由于对生活保持着好奇心,我对一切事物形成的原因保持着最原始的探知需求,包括油条。在一个偶然的机会,家里剩下了一大锅油,我决定DIY一下炸油条的过程。

等真正上手去做的时候,才发现炸油条并不是那么简单。

我们姑且把材料和配方放在一边,仅仅是掌握火候,控制过程,都需要大费周折。最后,不是炸糊了,就是没炸熟,废了九牛二虎之力,最后还是炸了个寂寞。既浪费了材料,又浪费了时间。

古人曾说过:细微之处见斟酌。这体现了两个道理:

  1. 一些表面上看起来简单的事情,并不是那么简单
  2. 炸油条,像极了普通的CRUD

download2.gif

对于大多数程序员来说,炸一根黄澄澄的油条。哦不,写一些增删改查的代码,是家常便饭。我们就来分析一下,这个CRUD到底有前途么?到底赚钱么?

1. 打工者付出了什么?

在这之前,我们来看一下。一个上班的人,他到底付出了什么,才能获得资本家的薪水呢?

我们的劳动,其实分为三部分:

一、技术技能

毫无疑问,公司发工资,作为等价交换,就需要掌握某些技能。CRUD对于炸油条来说,曲线稍微那么陡了一些,但本质上并没有什么区别。

随着越来越多的人,参与到这个行业之中,CRUD的技能正在下沉。虽然不同的人CRUD的水平不太一样,但一般的人还真的无法区别。

所以说效率这个东西,大多数时候只是懂你的人还有你自己才能判定的,所以大多数人都盯着你的第二个劳动付出:时间成本。

二、时间成本

有些公司,签了合同,就和签了卖身契一样,让你永远无法睡个好觉。因为时间是世界上最值钱的东西,当劳动法无法触及的时候,企业就会疯了一样去试探底线,以便让利益最大化,以至于产生了996、007这样的变态做法。

download1.gif

非常让人欣慰的是,情绪成本会随着时间成本的投入持续上升,当一个人的时间成本和情绪成本达到无法忍受的地步,当钱也解决不了的时候,他就会和企业说byebye。当群体的时间成本和情绪成本失控,就会出现消极怠工,甚至大面积不作为的现象。

三、情绪成本

不是危言耸听,在不同的公司工作,甚至会影响你的寿命。

工作强度伤害的,往往是生理层面的,蹩脚公司氛围伤害的却是心理层面的,千万不要忘了这一份劳动付出。

有的公司,你即使什么也不做,也会感觉很累很累。看着群里发的信息,你会生气;和其他部门甚至自己部门的人打交道,憋了一肚子火;参加公司的各种会议,连摸鱼都觉得难受。

这个时候,你其实在劳动,你的成果,就是承受、或抵抗公司管理和流程做引起的情绪波动,尤其是这个情绪成为普遍性问题的时候。

所以,即使刨除第一点技术技能,哪怕你在公司干坐了一整天,你也付出了时间成本和情绪成本,你的报酬也是应得的,不必有什么愧疚感。

download3.gif

2. 哪种更好?

有愧疚感的应该是资本家。

对于个体来说,最好的成长方式,就是技术技能的不断提升;时间成本,碰到能遵循劳动法的那就更好;而情绪成本,可以说是对打工者伤害最大的了。

因为你的这部分情绪成本,没有经验积累,只有赤裸裸的付出。

对于公司来说,结果才重要。个体的这些劳动付出,不过是怎样可以达到最优的整体状态,节省成本,增加收益。

情绪成本大多数是由于管理失误所产生的,管理者要尽量降低打工者在工作中对于情绪成本的付出,让打工者专注到炸油条这件事情上去----这就是管理者所产生的价值。

如果一个管理者,能够创造轻松、自由的氛围,提高其他人的技术技能,让大多数人心甘情愿的付出时间成本,那他就是成功的。

如果一个管理者,营造了生硬的流程,人人自危的氛围,各人自扫门前雪的工作模式,产生了无效加班,甚至想要量化技术技能和时间成本,那他就是失败的。

我越来越觉得,技术技能、时间成本、情绪成本,就像是分布式领域里面的CAP。

在一个公司里,情绪成本的付出是相对固定的,就相当于分布式领域的P,不可避免。那么选择,就是集中在技术技能和时间成本的权衡上,也就是拼效率还是熬工时。

很遗憾的是,有很多公司选择了熬工时这种双输的方式。因为技能提升可以抵消情绪成本,而熬工时却是在加大情绪成本。

至于那些不熬工时也不拼技能的市场化公司,不好意思,早倒闭了。

3. CRUD的价值

所以,crud的价值就体现出来了。因为crud,并不仅仅是写代码这份简单的技能,它还有时间成本和情绪成本的付出。

  • 今天的需求,明天就变动,这是crud的价值
  • 产品没想明白怎么做,cruder替他想一部分,这是价值
  • 替项目经理补充、撰写文档,这是价值
  • 拥护公司的狼性文化,看破不说破,也是价值
  • 承担多条线的繁杂琐事,这是价值
  • 忍受多重领导的不同风格,争取把crud代码落实下去,这也是价值
  • 削平自己的棱角,甘心做一枚螺丝钉,也是本分价值

说实话,把自己摆在crud这个位置上,本身就是一件非常辛苦的事情。并不是说老板不能干crud的活,培训他一年半载,他也能做,但他能放下自己的野心么?

当你的老板说,写代码有那么难么,不就是CRUD么?他可能真的觉得不难,但是他不会干这样的活。因为即使他拥有了这份技能,时间成本和情绪成本,也不是他能负担得起的。

他可能干了一周就跑了,比你还怨天尤人。

这部分工作总得有人去做,所以只要企业有信息化需求,那cruder就永远有活干。

那如何让自己更加有分量呢?也有三种方式。

第一,提升水平。

尽量提高自己的专用技能,进入竞争者更少的领域。

第二,改变路线。

成为管理者,专注减少普通打工者的情绪成本。

第三,那就是死扛了。

送你一句话:不怕脏不怕累,别人会的你都会;不怕渴不怕饿,别人假寐你打坐;不怕骂不怕打,别人发怒你装傻。

永远不要太气馁,炸油条的都能活下去,何况是CRUD。

一直想整理出一份完美的面试宝典,但是时间上一直腾不开,这套一千多道面试题宝典,结合今年金三银四各种大厂面试题,以及 GitHub 上 star 数超 30K+ 的文档整理出来的,我上传以后,毫无意外的短短半个小时点赞量就达到了 13k,说实话还是有点不可思议的。

一千道互联网 Java 工程师面试题

内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、Redis、MySQL、Spring、SpringBoot、SpringCloud、RabbitMQ、Kafka、Linux等技术栈(485页)

初级—中级—高级三个级别的大厂面试真题

阿里云——Java 实习生/初级

List 和 Set 的区别 HashSet 是如何保证不重复的

HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?

HashMap 的扩容过程

HashMap 1.7 与 1.8 的 区别,说明 1.8 做了哪些优化,如何优化的?

对象的四种引用

Java 获取反射的三种方法

Java 反射机制

Arrays.sort 和 Collections.sort 实现原理 和区别

Cloneable 接口实现原理

异常分类以及处理机制

wait 和 sleep 的区别

数组在内存中如何分配

答案展示:

美团——Java 中级

BeanFactory 和 ApplicationContext 有什么区别

Spring Bean 的生命周期

Spring IOC 如何实现

说说 Spring AOP

Spring AOP 实现原理

动态代理(cglib 与 JDK)

Spring 事务实现方式

Spring 事务底层原理

如何自定义注解实现功能

Spring MVC 运行流程

Spring MVC 启动流程

Spring 的单例实现原理

Spring 框架中用到了哪些设计模式

为什么选择 Netty

说说业务中,Netty 的使用场景

原生的 NIO 在 JDK 1.7 版本存在 epoll bug

什么是 TCP 粘包/拆包

TCP 粘包/拆包的解决办法

Netty 线程模型

说说 Netty 的零拷贝

Netty 内部执行流程

答案展示:

蚂蚁金服——Java 高级

题 1:

  1. jdk1.7 到 jdk1.8 Map 发生了什么变化(底层)?

  2. ConcurrentHashMap

  3. 并行跟并发有什么区别?

  4. jdk1.7 到 jdk1.8 java 虚拟机发生了什么变化?

  5. 如果叫你自己设计一个中间件,你会如何设计?

  6. 什么是中间件?

  7. ThreadLock 用过没有,说说它的作用?

  8. Hashcode()和 equals()和==区别?

  9. mysql 数据库中,什么情况下设置了索引但无法使用?

  10. mysql 优化会不会,mycat 分库,垂直分库,水平分库?

  11. 分布式事务解决方案?

  12. sql 语句优化会不会,说出你知道的?

  13. mysql 的存储引擎了解过没有?

  14. 红黑树原理?

题 2:

  1. 说说三种分布式锁?

  2. redis 的实现原理?

  3. redis 数据结构,使⽤场景?

  4. redis 集群有哪⼏种?

  5. codis 原理?

  6. 是否熟悉⾦融业务?记账业务?蚂蚁⾦服对这部分有要求。

好啦~展示完毕,大概估摸一下自己是青铜还是王者呢?

前段时间,在和群友聊天时,把今年他们见到的一些不同类别的面试题整理了一番,于是有了以下面试题集,也一起分享给大家~

如果你觉得这些内容对你有帮助,可以加入csdn进阶交流群,领取资料

基础篇


JVM 篇


MySQL 篇



Redis 篇




由于篇幅限制,详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!

如果你觉得这些内容对你有帮助,可以加入csdn进阶交流群,领取资料

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值