请问各位程序员,是我的思维方式有错误吗?

news2025/1/19 17:21:50

你好呀,我是歪歪。

前几天知乎给我推送了一个问题,我点进去一看,好家伙,竟然把我血压都看上来了是怎么回事。

我先把问题复述一遍,聊天记录比较长,但是看的过程中容易冲动,注意控制情绪:

最后,提问者还是说:顺便请你们分析下我的思维方式是怎样的?是个怎样的人?

遭不住

怎么样,你看完之后什么感觉?

反正我看完之后是直呼“遭不住”。

我甚至一度怀疑这个师傅是不是有什么把柄落在徒弟手里了啊?

这是一次错位感非常强烈的对话,而产生错位感的原因我认为是两个人的认知不同。

师傅,一个正在职场打拼的大厂程序员。

徒弟,一个准备踏入职场的单纯小菜鸡。

这个师傅一直在提的是:面试、工作、offer...

这个徒弟一直在提的是:原理、底层、细节...

如果说这个徒弟学习编程知识纯粹是为了爱好,学着玩,也不想着靠这个东西混口饭吃,就是想研究研究编程到底是啥玩意。

那么很好,徒弟没毛病,是一个值得鼓励的学术派。

但是从这两句话中,我猜测这个徒弟学编程不是纯粹为了爱好,也是想要找份工作,进入程序员这个行列的:

基于“想要去面试”这个提前下,他的这个问题:

请问各位程序员,是我的思维方式有错误吗?

有问题,那是相当有问题!

不仅是思维方式有问题,整个对话方式都是有问题的,给人一种情商有待提高的感觉。

我倒不是想批评他,我只是想基于他的这个问题,谈谈自己的一点看法。

思维方式

我先讲个我大学的时候的故事。

我大学的专业是计科,这个专业是要学模拟电路的。但是那一年,我这门课学的是一塌糊涂,老师上课我都听不懂,心想这玩意也太难了。

不知不觉混到期末,要考试了。

我在考试之前,下载了一整套的模电相关的视频。硬生生的在图书馆啃了一个月的时间,在磕磕绊绊的情况下,我终于在临近期末的时候把这套视频看完了。

那一个月把自己的感动的不行了,觉得自己真牛逼:这么难的东西,我竟然啃下来了。

学习路上就怕是误入歧途,还自我感动。

最后去考试,我发现其实大家都考的还可以。因为考题中大部分都是书里面的课后习题,大家拿一周的时间重点突击一下课后习题就好了。

后来我反思了一下,我觉得自己在图书馆里面看一个月模电视频这件事纯粹太傻了,就是在浪费自己的时间。

我属于完全是把时间用在了错误的地方。

我记得看视频的时候有一些比较难的地方,看不太懂,我还会去反复看,查阅其他资料,最后其实也是一知半解的样子。

我现在想起这件事就后悔。

我明明可以只用一周的时间突击一下就行了,但是我却傻傻的用了宝贵的一个月时间,期间学的还非常难受。

如果我带着现在的认知回到大学的时候,我一定要找到那个时候在图书馆啃模拟电路视频的自己,上去就是抡圆了两巴掌:

我们一起来复盘一下这件事啊。

首先,我看模电的初衷只是为了期末考试能过,不挂科就行。

其次,期末考试的时间是固定的,所以我的时间是非常有限的,这属于我的资源。

最后,整个过程中我都是单打独斗,甚至没有人知道我天天早出晚归的去图书馆,其中相当一部分的时间是在看模电。

结果你也知道,这样的投入产出比是非常的小的。

这样的情况其实和提问题的徒弟有点像:

首先,他去学这些东西的目的是进入到程序员这个行业中来,只要能通过面试就行。

其次,哪怕他把时间线拉长到一年或者两年呢,终归来说时间也是有限的。

但是他比我好的是,有一个师傅,一个过来人,告诉他说:你先别看这个东西,对你来说收益不大,先去攻克其他的目前来说对你更有价值的东西吧。

就像是我说的,当时有人在我看模电的时候过来给我一巴掌,说:你拿一个月时间看这个玩意还不如拿点时间敲几行代码呢。

我也算是能醒悟过来,但是,没有。

我当时还走入一个怪圈,看到不懂的地方还会钻牛角尖,还想要去尝试一下那些贼难的附加题。研究一下“茴”的几种不同写法。

这就是没有分清事情的优先级的表现。

能分清事情的优先级是一件非常非常非常重要的事情!

这个徒弟似乎也和我走入了同样的怪圈,但是自己浑然不知。

但是他比我更严重的是,有人给他指路了,他还非觉得自己坚持的才是对的。

再举一个我之前看书的例子。

如果你是搞 Java 开发的,那么你一定知道有一本书叫做《深入理解Java虚拟机》。

我第一次看这本书的时候,是 2016 年的国庆节,那个时候我才毕业 3 个月时间,对于 JVM 相关的知识储备是 0。

但是我当时知道这是一本非常好的书,所以那一年的国庆节,花了整个国庆节的时间把这本书一页一页的翻了一遍,而且不是走马观花的看,是认认真真的看,还做笔记的那种。

书里前几章的例子,我甚至都在电脑上敲了,跑起来看了看。

但是整个读完一遍之后的感觉是“云里雾里”,关上书之后就什么都不记得了。

好在我当时知道这是比较底层的东西,所以目的也只是通读一遍,并没有强制要求自己要学到多少东西。

如果,我当时要求自己把这本书吃透的话,这又会是一件投入产出比非常低的东西。我完全可以拿着这个时间去学习我当时根本不了解的、但是工作中在用的框架,比如 Dubbo、Spring、MyBatis 等等。

这样性价比会高很多。

我当时能想到时间的“性价比”这一点,也完全是因为我前面举的模电的例子带给我的思路。

我踩过坑了,我吸取教育了,以后再次遇到类似的时候我就知道应该避免一下了。

虽然当时没吸收到多少东西,但是在有一定的编程经验之后,比如两年之后,再次翻阅《深入理解Java虚拟机》我发现能吸收很多东西进去了。

我之前围绕这本书也写过很多文章。

假设,如果我第一次看的时候,就被下面文章中描述的这个问题深深的吸引进去了,然后花了很多时间才搞明白原来是这么一回事,其实没什么意义:

《深入理解Java虚拟机》第2版挖的坑终于在第3版中被R大填平了

又或者说,我被这个地方代码给吸引了,非要去研究一下为什么运行结果不一样,也没有什么意义:

《这个Bug的排查之路,真的太有趣了》

哪怕那个时候我去深入研究了什么三色标记、记忆集、卡表、读写屏障、jit...这些东西,都是没有意义的。

因为这就不是一个工作经验不到一年的程序员应该掌握的东西。掌握不了是正常的,掌握了说明你牛逼,你可以把附加题给做了。

这个例子我想表达的是:

学习的顺序也是一件非常非常非常重要的事情!

你可以在学习的时候去钻牛角尖,但是别忘了,你是一个“学渣”,钻牛角尖是“学霸”才有能力干的事情。

所以别忘了,你提问的时候自己说的你是一个“前端初学者”,研究底层原理是“中高级程序员”才有能力干的事情。

我不是说你不配去研究“原理、底层、细节”这些东西,而是我觉得你这样的投入产出比太小了,可以说是微乎其微。

而且你的研究之路从学习的顺序这个角度来说也不太对,如果你真的是想要去理解底层的东西,你应该踏踏实实的去看一下正儿八经的四年本科的专业课相关的课程,按照那个顺序去学。

才有可能把“底层之路”走的稍微顺畅一点。

我个人的学习经验是如果在掌握全局之前,太过于追求细枝末节的东西,会影响到你掌握全局的进度。

而如果你不能尽快掌握不了全局,你所追求的细枝末节就如你师傅说的:

对于一个想要入行的但还没入行的程序员来说,时间本来就是比较紧张的资源了。

本来好好的利用这个资源,你可以在面试的时候考到 60 分以上的,但是由于你对于资源进行了不合理的分配,一上来就要强吃原理,导致的情况就是时间节点到了,但是拿出的结果并不理想。

即使在有人提醒你的情况下,还是没有掌握到事情的轻重缓急。也就谈不上对于某个任务的资源利用最大化了。

这里面说的任务就是通过面试。而资源之一,就是指“时间”。

如果你真的是一个程序员,很可能在一个任务即将提测的时候,任务还没有完成,因为你大部分时间在研究这几行代码怎么写更加优雅。

我认为一个优秀的实用型程序员的职业素养之一就是不断在有限的开发时间和优雅的代码实现之间找到一个平衡点。

总之,提问者可能还是一种学生思维,我在当学生的时候,常常是手边来一个事情就做一个事情,不具备分辨事情优先级的能力。

自己不具备的时候,可以去请教过来人。

如果你手上的任务堆积非常的多,同时你又不知道那个任务的优先级高的话,那么一个明智的做法是尽快问一下给你分配任务的同事,然后告诉他:我现在手上有几个任务,冲突了,麻烦帮我拍个优先级吧,我自己有点拿捏不准。

先做十万火急的事情。切忌,来一个事情就做一个事情。

情商

我之前在知乎回答这个问题的时候就提到了这一点:

为什么他的这段对话能让人看的血压升高呢。

我截取几个地方,首先是听不进劝:

别人话都说到这个份上了,还在杠,还在杠,还在杠!

学习的路上你还会遇到无数个这样的小问题,如果每个你都要去杠一下,得了,别学了,去当运动员吧,国家抬杠一级运动员。

再说了,我一个后端都知道你问出来的这个问题,通过浏览器搜索很容易就搜索到答案了。

没有一点面向浏览器编程的意识,为师怎么放心让你踏足社会。

然后太自我了,就是那种目空一切,没有遭受过毒打的自我。

请把这句换成:我觉得这样可能会更好一点。

这句可以换成:我可能之前没有和你聊过,我其实是一个比较喜欢追求原理的人,所以会比较纠结一点。

这句可以换成...

算了,换成啥都不对味,没救了,看点相关的书,然后勤加练习吧。

下面这些都属于治疗低血压的良药:

如果你把这样的性格、这样的对话带入到职场中,相信我,来自社会的毒打会来的又快又猛,你甚至看不到是谁出招了,你就倒下了。

还有,“快”和“准”是两个字:

另外,徒弟在回复别人的时候提到说他是给了钱的:

这钱花的值,但是师傅的作用其实和大学老师一样。目标是把你领到门口来,至于能不能走到门里面就看各自的造化了。不是一直用来回答你技术问题的。

相对于精进编程能力,我个人觉得你也应该好好学学待人接物之道。

在网上冲浪的时候可以多留意一下这方面的信息。

进入职场之后,代码并不复杂,复杂的是人。代码你可以 Debug,但是人心隔肚皮。

最后,送你一张图,建议常常拿出来仔细观看:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/44245.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

麦芽糖-聚乙二醇-人血清白蛋白,HAS-PEG-maltose

中文名称:麦芽糖-人血清白蛋白 英文名称:maltose-HAS 别称:人血清白蛋白修饰麦芽糖,HAS-麦芽糖 PEG接枝修饰麦芽糖 麦芽糖-聚乙二醇-人血清白蛋白 HAS-PEG-maltose 人血清白蛋白-PEG-麦芽糖 纯度:95% 存储条件…

物料搬运装置及控制系统设计(CAD+PLC)

目 录 1 绪论 1 1.1 物料搬运装置的概述 1 1.2 物料搬运装置的发展史 1 1.3 气动技术及气动物料搬运装置的发展过程 2 1.4 物料搬运装置未来的发展趋势 3 1.5 本课题研究内容 6 1.6 课题研究的意义 6 2 物料搬运装置的总体设计方案 7 2.1 物料搬运装置的工作原理及系统组成 7 2…

动态规划 DP专题

跟着ygg的dp题单刷的dp 1.代码源每日一题 Div1 连续子序列 分析&#xff1a; dp数组开成map&#xff0c;则状态转移式dp[i] max(dp[i - 1] 1, dp[i]) AC代码&#xff1a; #include <bits/stdc.h>using namespace std; typedef long long ll; #define int ll #define …

Day814.电商系统表设计优化案例分析 -Java 性能调优实战

电商系统表设计优化案例分析 Hi&#xff0c;我是阿昌&#xff0c;今天学习记录的是关于电商系统表设计优化案例分析。 如果在业务架构设计初期&#xff0c;表结构没有设计好&#xff0c;那么后期随着业务以及数据量的增多&#xff0c;系统就很容易出现瓶颈。 如果表结构扩展…

CentOS7.9 安装配置MySQL5.7.30

1.下载mysql安装包&#xff1a;mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 2. 卸载自带的mariadb和mysql 检查是否安装了mariadb和mysql&#xff0c;有时候默认安装了 rpm -qa | grep mariadb rpm -qa | grep mysql 如果没有&#xff0c;就可以安装mysql&#xff0c;如果有&a…

Centos7搭建SVN代码控制服务器

Centos7搭建SVN代码控制服务器检查SVN是否安装创建SVN版本库配置代码库设置允许访问远程仓库的用户帐号密码设置权限控制设置SVN服务配置启动svn与停止启动SVN关闭SVN访问拉取远程仓库代码检查SVN是否安装 1、centos7系统自带SVN rpm -qa subversion2、如果没有则通过yum安装 …

[论文精读|博士论文]面向文本数据的关系抽取关键技术研究

电子科技大学 2022.3.15博士论文 实体关系的方向性语义缺失&#xff0c;使得关系的判别缺乏对文本蕴含语义特征的利用 提出——基于句法关系的方向敏感型句子级关系抽取算法 利用依存句法树结构信息构建双向依存路径结构&#xff08;新的文本策略解决过度剪裁&#xff09;额外…

构建直接序列扩频系统模型(Matlab代码实现)

&#x1f352;&#x1f352;&#x1f352;欢迎关注&#x1f308;&#x1f308;&#x1f308; &#x1f4dd;个人主页&#xff1a;我爱Matlab &#x1f44d;点赞➕评论➕收藏 养成习惯&#xff08;一键三连&#xff09;&#x1f33b;&#x1f33b;&#x1f33b; &#x1f34c;希…

【分析笔记】全志 i2c-sunxi.c 控制器驱动分析

分析平台&#xff1a;全志 A64 内核版本&#xff1a;Linux 4.9 数据手册&#xff1a;Allwinner_A64_User_Manual_V1.1.pdf (whycan.com) 驱动框架 I2C 设备驱动 作为方案应用来说&#xff0c;我们是最经常要动的地方&#xff0c;这一层主要与具体的芯片功能强关联&#xff0c…

RK3588平台开发系列讲解(USB篇)内核 USB 配置

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、USB PHY CONFIG二、USB Host CONFIG三、USB OTG CONFIG四、USB Gadget CONFIG沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍USB的相关配置。 USB 模块的配置及保存和其它内核模块的配置方法一…

英语考试的作文模板

考试需要&#xff0c;但是老是忘记&#xff0c;所以发出来备忘~~~~~ 这里写目录标题1 高频考点&#xff1a;正面话题 (能力/事情/习惯/行为/品质/意识/习惯&#xff09;1.1 题干关键词与结构1.2 开头段1.3 主体段2 一起写范文【正面话题】主体段&#xff1a;重要性怎么做重要性…

【AI学习笔记】jupyter notebook 默认路径修改(超简介,超详细)

文章目录修改前&#xff1a;修改notebook默认路径&#xff1a;1. 找到 Anaconda 的安装目录2. 修改 notebook 安装位置3. 删除"%USERPROFILE%/"内容修改后&#xff1a;【声明&#xff1a;由于我的电脑有 Anaconda3的root环境 和 名为TensorFlow 的 Anaconda虚拟环境&…

操作系统学习笔记(Ⅱ):进程

目录 1 进程 1.1 定义、组成、组织方式与特征 1.定义 2.组成 ​3.组织方式 4.进程的特征 1.2 进程的状态与转换 1.状态 2.进程状态的转换 1.3 进程控制 1.基本概念 2.进程控制相关的原语 1.4 进程通信 1.共享存储 2.消息传递 3.管道通信 1.5 线程概念和多线…

Python数据分析实战-实现模型K折交叉验证(附源码和实现效果)

前面我介绍了可视化的一些方法以及机器学习在预测方面的应用&#xff0c;分为分类问题&#xff08;预测值是离散型&#xff09;和回归问题&#xff08;预测值是连续型&#xff09;&#xff08;具体见之前的文章&#xff09;。 从本期开始&#xff0c;我将做一个数据分析类实战…

mybatisplus savebatch 多数据源时候,sqlSessionFactory 不正确踩坑记录。

记录一下 mybatis-plus sharding-JDBC 的时候&#xff0c;因为配置多数据源和多个SqlSessionFactory导致 mybatisPlus 执行 saveBatch 异常的问题。 具体异常就是 saveBatch 执行的数据源&#xff0c;与期望的不一致。其实是因为 SqlSessionFactory 错误导致的。 项目中有2个…

程序员第一次接私活?记住这三点让你事半功倍

不少程序员都有接私活的想法&#xff0c;但恰恰就如开发者之间的论调一样&#xff0c;接私活其实是有一定难度的&#xff0c;想找到合适的单子&#xff0c;顺利地做完并拿到薪水&#xff0c;需要注意的事儿很多&#xff0c;接下来和大家分享一下&#xff0c;程序员第一次接私活…

改进的多目标差分进化算法在电力系统环境经济调度中的应用(Python代码实现)【电气期刊论文复现】

&#x1f389;&#x1f389;&#x1f389;&#x1f389;欢迎您的到来&#x1f60a;&#x1f60a;&#x1f60a; &#x1f96c;博客主页&#xff1a;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 &#x1f4dd;床头铭&#xff1a;将来的我一定会感谢…

[附源码]计算机毕业设计springbootSwitch交流平台

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Android 插件化

demo 如果要加载插件模块编译的apk插件包中的Activity类&#xff0c;需要执行如下流程&#xff1a; 1&#xff09;加载类对象&#xff1a;使用DexClassLoader加载Activity对应的Class字节码类对象&#xff1b; 2&#xff09;管理生命周期&#xff1a;处理加载进来的Activity…

【算法自由之路】前缀树 桶排序之计数排序和基数排序

【算法自由之路】前缀树 & 桶排序之计数排序和基数排序 前缀树&#xff08;字典树&#xff09; 首先是前缀树&#xff0c;前缀树是由字符构成的树结构&#xff0c;它记录有多少前缀字符通过&#xff0c;以及有多少个同样的字符串&#xff0c;其找这类信息的时间复杂度是极…