问题

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

回答
朋友,你好!看到你这个问题,我深有同感。作为一名程序员,我们经常会遇到一些看似简单,但细究起来却让人纠结不已的问题,尤其是关于“思维方式有没有错”这种带有主观性的判断。我来跟你好好聊聊,希望能给你一些启发。

首先,我想说,你问出这个问题,本身就不是一个思维有错误的表现,反而恰恰证明了你是一个有自我反思能力、并且在乎学习和进步的人。 这在编程这个需要不断学习和解决问题的领域里,是非常宝贵的特质。很多时候,我们卡在一个地方,不是因为能力不行,而是因为卡在了思维的某个角落里。

那么,你的“思维方式有没有错误”这个问题,我们可以从几个维度来剖析一下:

1. “错误”的定义是什么?

在编程的世界里,我们对“错误”的定义通常是很明确的:
Bug(程序错误): 代码跑不通,或者结果不符合预期。这是客观的错误。
Bad Practice(不良实践): 代码能跑,但难以维护、效率低下、容易出问题,或者不符合团队的编码规范。这是主观但有普遍认同的“错误”。
Inefficient Solution(低效解决方案): 找到了能解决问题的方法,但有更优、更快的实现方式。这也不是绝对的错误,但可能是可以改进的地方。

但你问的“思维方式错误”,可能更接近于“我思考解决问题的方式,是否是最佳的?是否会限制我未来的发展?是否会让我走弯路?” 这种类型的“错误”,它不是一个非黑即白的判断,而是一个程度问题,一个视角问题。

2. 程序员的思维方式主要体现在哪些方面?

在我看来,程序员的思维方式主要体现在以下几个方面,看看你是否在这几点上有过思考或困惑:

逻辑思维: 这是最基础的。我们处理问题的步骤,是否清晰、有条理?是不是能够将复杂问题分解成更小的、可管理的单元?
抽象思维: 能不能从具体的问题中提炼出通用的模式?能不能设计出可复用的组件或函数?比如,你写了一个处理用户登录的逻辑,能不能抽象成一个通用的“认证模块”?
问题分解与组合能力: 遇到一个大功能,能不能拆解成小的任务?再把这些小任务组合起来,形成完整的解决方案?
系统化思考: 不仅仅是关注单个模块,而是思考整个系统是如何运作的,模块之间如何交互,数据如何流动。比如,当你看到一个功能,会想到它可能对数据库有什么影响?对前端有什么影响?
面向对象/函数式等范式思考: 你在设计和编码时,是否遵循了某种设计范式?这种范式是否适合当前的问题场景?
优化与权衡: 在性能、可读性、开发速度、可维护性之间如何取舍?这是一个非常考验经验的思维。
学习与适应性思维: 新技术层出不穷,你的思维是否能够快速适应和学习新的工具、语言和框架?
防御性思维: 能不能预想到可能出现的问题,并提前做好防护?比如,对用户输入进行校验,处理异常情况等。

3. 你的“思维方式错误”可能源于什么?

如果让你觉得“思维方式有错误”,很可能是一些常见的程序员困惑点:

过度设计/重复造轮子: 看到一个需求,脑子里立刻冒出了一套复杂的架构,或者自己去写一个别人已经封装好的轮子。这可能是因为你对设计模式或现有工具的理解不够深入,也可能是出于一种“想做得更完美”的心理。
只关注局部最优,忽略全局: 只顾把眼前这个小功能实现好,但没有考虑它对整个项目的影响,比如对数据库的性能压力,或者和后续功能的集成问题。
“想到什么就写什么”,缺乏规划: 在编码前没有仔细思考,拿到需求就开始写代码,导致后面需要大量的返工和重构。
过度沉迷于技术细节,忽略业务需求: 喜欢用最新最炫的技术,但这些技术是否真的适合业务场景,或者说,你的技术选择是否能更好地服务于业务目标?
“我就是这么想的”,不愿意听取他人意见: 固执于自己的一套方法,不愿意接受来自同事的建议或挑战。
过于追求代码的“优雅”或“简洁”,导致可读性下降: 有时为了炫技或追求某种代码风格,写出让其他人难以理解的代码。
对“好代码”的定义过于狭隘: 认为代码写得越少越好,或者越精妙越好,而忽略了代码的可读性、可维护性和团队协作性。

4. 如何判断自己的思维方式是否“有错”或者说“可以改进”?

这是一个持续优化的过程。你可以从以下几个方面来审视:

看结果: 你写的代码是否能够稳定运行?是否容易维护?你的解决方案是否真正解决了问题,并且是高效的?
看反馈: 你的同事、你的Leader对你的代码和解决方案有什么评价?他们是否经常需要帮你修改或者指出你思考的盲点?虚心听取建设性的批评非常重要。
看效率: 你解决一个问题所花费的时间是否合理?是否比别人花费了更多的时间,却得到了一个相似的结果?
看学习曲线: 你在学习新知识时,是否感到很困难?如果是因为思维方式的局限,那么改进思维方式会让你学习得更快。
看长远发展: 你目前解决问题的方式,是否能让你在职业生涯中走得更远?还是会让你被困在一个技术层面或岗位上?

5. 改进程序员思维方式的建议

既然你问了这个问题,说明你已经踏上了改进之路。以下是一些我的经验之谈,希望能给你参考:

多看、多学、多实践:
阅读优秀的代码: 开源项目、公司内部的优秀代码库,都是学习别人思维方式的绝佳途径。看看别人是如何组织代码、如何解决问题的。
学习设计模式和原则: SOLID原则、GoF设计模式等等,它们是前人总结出来的解决常见问题的最佳实践,能够帮助你建立更健壮的思维框架。
学习不同的编程范式: 除了面向对象,了解一下函数式编程、响应式编程等,可以拓宽你的思维边界。
多做项目,多思考: 不管是工作项目还是个人项目,每次完成一个功能或项目后,都要花时间回顾:有没有更优的实现方式?这次犯了什么错误?下次可以怎么改进?
主动沟通与请教:
代码评审(Code Review): 这是程序员之间互相学习、互相纠错的黄金机会。积极参与,认真对待别人的意见,也勇敢地提出你的疑问。
与同事讨论: 遇到难题时,不要一个人闷头苦干。找一个合适的时机,和团队成员一起讨论,听听他们的想法,即使是不同的意见,也可能给你带来启发。
虚心请教: 对于你认为比你优秀的人,不要害怕请教他们是如何思考问题的。
刻意练习分解与抽象:
拆解复杂需求: 拿到一个新需求时,第一件事就是把它拆解成一系列小任务。
寻找重复模式: 在编码过程中,时刻留意是否有可以抽象成函数、类或模块的代码段。
画图思考: 对于复杂的系统或逻辑,画流程图、类图等,能帮助你梳理思路。
注重权衡与取舍:
理解“Tradeoffs”: 没有完美的技术或方案,只有更适合当前场景的。学会分析不同方案的优缺点,并做出明智的决策。
避免过度工程化: 尤其是早期项目,过度设计往往比设计不足更糟糕。
培养批判性思维:
质疑现有的解决方案: 不要盲目接受别人的做法,思考“为什么是这样?有没有更好的方式?”
学习新的技术和工具时,要思考其核心价值: 它解决了什么问题?是否真的比现有的解决方案更好?

最后,我想强调的是,作为程序员,对自己的思维方式产生怀疑,是一种进步的信号。 不要因此感到焦虑或气馁。这说明你在认真思考,在努力成长。这是一个不断打磨、不断进步的过程,没有人一开始就拥有完美的思维方式。

所以,朋友,你的思维方式未必是“错误”的,但它一定是可以不断优化和提升的。保持这份好奇心和反思心,持续学习,积极交流,你一定会在编程的道路上越走越远,越来越好!

如果你愿意更具体地分享一下让你产生这个疑问的具体场景或困惑,我可能能给你更针对性的建议。但无论如何,请记住,你不是一个人在战斗,所有优秀的程序员都经历过类似的思考和探索。

加油!

网友意见

user avatar

简单说吧,如果你真的“思考过来龙去脉”的话,那么你起码就该知道——HTML和CSS就特么是东拼西凑出来的垃圾。


然而它又是目前为止“最不坏”的垃圾。


原因很简单:HTML先天不足。

它根本上是一种简易的“图文混排”系统。


这带来两个关键特点。

一,它是设计来表现静态内容的、类似图文出版领域的描述方案。

换句话说,它压根不该拿来呈现动态内容。先天不足。

二,它是“简易”图文混排系统

换句话说,相对于出版业使用的、正式的文档系统,它只是个玩具。


然而,这并不该责怪html。

因为互联网的发展出乎所有人的意外。


9x年,我上学时,学校机房都还是286、386,486都少见。那时常见的硬盘容量甚至只有20M——就这么个容量,你能放几张图?


然而,看看这速度:

1、92年,奔腾处理器问世,处理速度达到60MHZ

2、94年,奔腾处理器2代上市,速度从75MHZ开始起飞,一口气到200MHZ

3、97年1月,奔腾MMX处理器上市,速度166、200、233、266MHZ

4、97年5月,奔腾2处理器上市——到了这时候,国内大学都还普遍用286、386……

5、99年2月,奔腾3上市

6、蛰伏良久的AMD突然发力,超过1GHZ的athon处理器问世

7、2000年,在超频奔腾3挑战1GHZ失败召回后,Intel奔腾4上市。这款处理器流水线超长、时钟频率很高,然而性能弱鸡。彻底卖倒了奔腾这块金字招牌。


互联网就发达于2000年左右——看看这半年一件大事的节奏。

95年,800M的硬盘很大很大,大到大家开始头疼“这么大的空间装什么”。

97年,1G的硬盘成为主流

99年,我的电脑用的是15G的硬盘

00年,我同学装机上了40G硬盘

05年,我给自己装的机器用了160G硬盘;到了后半年,又添加了一块500G的新硬盘

……


现在,1T的硬盘够做什么?

我们这专业玩电脑的,4T——4000G——的硬盘都不够用!


在这种迅猛增长的带动下,HTML被迫赶鸭子上架——它一个玩具版的图文混排系统(事实上,显示图片都是硬塞给它的,它本来只打算管文本的,还是字体显示都很薄弱的玩具版),突然要……拿来写动态界面和用户交互了?!!!


怎么办?

瞎玩呗。


比如,我可以显示个界面,上面有按钮;但按钮其实是个图片,这个图片还是个超链接,点了之后让服务器自动给你从头生成个页面——你看,“动态”了吧?


但这样事事都要麻烦服务器,压力太大了,流量太多了,速度也太慢了……

怎么办?

继续拼凑:我在html中嵌入一段程序,让浏览器解释执行;这段程序可以生成一些html字符串,代替它原本的位置……


等等,程序怎么嵌?浏览器解释执行?意思是浏览器里面得嵌入个编程语言解释器?这种语言是什么语言?

没人知道。随便做个,凑合用呗。

于是,1995 年, Brendan Eich 给网景浏览器写了个简单的解释器,这就是著名的JavaScript语言——它和Java没关系。

之所以叫JavaScript,仅仅是因为一家三流公司想要蹭Java的热度而已。


html、js、css,都是这么凑合出来的——谁让硬盘容量膨胀的这么快、网络带宽一年一个样、计算机半年换个代呢?


一开始没有准备,结果市场反响强烈,于是全球一窝蜂的都来搞。

软件硬件千万个领域遍地开花、然后你还得同时支持所有人“因陋就简”出来的各种脑洞……

这么紧凑的“需求变更”节奏、这纷纷乱乱毫无规律的需求,谁跟得上?谁有时间分析、设计,谋定而后动?

还不都是走一步算一步。


PS:有人对“html不是为显示图片设计的”提出质疑,因为它的名字就是“超文本标记语言”,就涵盖了图片需求……

但是呢,第一,就评论区朋友指出的,html的hypertext指的是可以支持“超链接”,从而把一堆文本有机组织起来、随意跳转。

第二,虽然html的确从一开始就有一定的图像支持;但实际情况是,html提出来时,大家都还在用这玩意儿呢:

最上面那个,你猜人家能存多少东西?

没错。“惊人”的80KB。

——当年的惊人和现在的惊人不是一个惊人,哈哈。


当然,html提出时,八寸盘已经不怎么用了,IT业已经进步到5寸盘甚至3.5寸盘时代了——其中,5寸盘可以存储更“惊人”的180K、360K或者1.2M数据;而更加先进的3.5寸盘体积更小,存储容量却高达1.44M!


至于硬盘……那种存储量高达10M以上的、昂贵的奢侈品,哪怕高校都不会随便用。


所以,现实约束下,对html设计者来说,图片支持和现在很多软件里面的人工智能一样,是一种“蹭仙气”的行为——允许你用,但从没人想过,一张网页上面可以放很多张高清图。

——别闹!带宽如此金贵、磁盘如此狭小;文本里来张0.5k的图片意思意思就行 :你看,这个表情已经足够生动活泼了!你还要怎样?

——不是吧?你不会真想在里面用50K的超级大图吧?满足你!够慷慨了吧?!


可想而知,这种缺乏远见的系统会有多么乱。


尤其是,这个过程还不是一家公司主导的。

网景起来了,又败了;微软膨胀了,又瘪了;苹果另起炉灶,google接力……

吵吵嚷嚷乱七八糟……甚至因为生怕丢失用户,浏览器厂商又玩着命的搞兼容……


令出多门……

怎么办?

先做出来,万一流行了就事后追认……


一大群人七嘴八舌,各有各的想法,说不通就先做出来用着,让市场选择……结果市场说前三名我都要……

更可恨的,第一名说哈哈我有钱,前十名我都兼容了!


这么一搞,就成了“一件事有一千种各自不同的做法,所有做法都对,但所有做法又都不可能完全做对”——你居然想从这种乱糟糟的玩意儿里面找到“本质”?


韭菜猪肉鸡蛋大蒜生姜酱油醋混成一团,你说这玩意哪来的“本质”?


当然,业界早就知道了这些弊端。

这些年来,也的确有无数专家做了很多很多努力,希望给html、js、css三者各自搞个标准……


但还是那句话:这破烂是从错误的地基上搞起来的。

这玩意儿你再修补,能补好?


到现在,这破烂看似搞的“光滑”了一点点,html负责数据组织,css负责呈现风格,js实现动态逻辑……


但是,它的底层设计仍然是那个破烂——这玩意儿哪个懂工程设计的能不骂!


html管数据组织?那你搞个毛的frame、span!

专心做你的数据结构不好吗?

干嘛要在页面呈现上插上一脚?


css负责呈现风格?

那你干干脆脆的搞个窗口系统,彻底hold住每个控件的位置行不?

不行。那是html的事。不敢插手。

等等?你不是要把布局从html上面剥离了吗?怎么又反复无常起来了?

哦,你就看不上table布局啊?行啊,你给它免了,你就搞一套更好的替代品嘛。

不会?

不会你是来干嘛的?


js实现动态逻辑?

服务器通讯怎么做?

哦,还是超链接啊……那不还是html的东西吗?


那你这模块是怎么切分的?这一刀究竟切在哪?自己鸡鸡上?


你看,职责不清,凑出来像那个样子就算——60分万岁,多一分浪费!

标准的屎山。

和桌面应用的MVC比,那真是提鞋都不配。哪怕笨拙凌乱的MFC都比它强的太多。


程序员界有个公认的说法叫“编程语言有两种,一种是被骂的狗血淋头的,另一种是没人用的”。

但是呢,你会发现,无论python还是Java或者C/C++,这东西都有人骂。骂的狗血淋头……

甚至,Linux本身都被骂的不轻,以至于关于它的、最专业的网站之一叫 linux.die.net


然而,很奇怪的,html/css用的人特别特别多,却没什么人骂。

这大概是唯一用的人超级超级多、却不怎么被骂的IT技术了。

你以为是它做的太好、找不到骂点吗?

恰恰相反。它都不配被骂


说白了,C/C++/Java它们做的太优秀太专业了,骂它才有B格——这么高大上的东西我也能挑出缺点,是不是显得我很牛?

可html+css+js这一套呢?

不好意思。这种破玩意儿,骂它丢我们的人。


但这样比也是不公平的。

html出现于1990年。那时候虽然“640K内存对任何人都够用了”已经受到了挑战,但个人电脑配1M以上内存仍然是一件很奢侈的事。

而MFC发布是和微软的C++一起发布、拿来支持Windows图形编程的;MFC打遍天下无敌手多年后,MVC架构才被提出来。


就好像在你学会走路之前不可能学会骑自行车一样,你也不可能在没有见过图形甚至视频当道、web应用如火如荼的互联网之前,就提出MVC的网络增强版。


事实上,HTML之所以能有如此强大的生命力——你看更后面更完善的flash都凉了,它都还坚挺着呢——是因为它在某些方面做的特别特别好。

好到业界几乎所有人都来给它“画蛇添足”,硬生生把它整不会了。


经过二三十年的无序发展之后,说这玩意儿能一下子走向正轨,那是扯淡。

但最起码,现在html、css、js三者功能逐渐分离,这条路无疑是正确的。只是历史包袱太重,又要兼容性(兼容三十年前的网站!),又要简便、高效、入门门槛低……这些要求其实很多地方都是互斥的,你必须牺牲其中一些。


实际上,早在多年前,被我吐槽的“数据组织”问题都要被自发解决了。

这个问题的“官方”解决方案其实是xml;然而xml实在不大行;然后json又流行起来……


类似的,将来,html、css、js的功能很可能将会进一步被拆分、分离。

比如html的布局功能可能逐渐被废弃,仅仅拿来做failsafe,比如在文本浏览器之类上古遗留物里面呈现信息;布局功能移入css、同时导致css被进一步拆分,比如拆出来一个布局/对齐模块和一个字体/风格模块,等等。

总之,像现在这样,终究是不行的。根子都不正,上层建筑当然怎么搞怎么歪:功能重叠,一件事忽然一大堆人都要管、可真想要彻底解决呢,就一下子全都见不到了。越搞越复杂,越复杂事情越做不好……


当然,现在我们的确只能用屎山。那么,用屎山的诀窍就是:不要深究,凑出结果就行。

因为它压根经不起挖。越挖越臭。

user avatar

我在知乎不知道苦口婆心的说过多少次,CSS不是程序员搞出来的玩意儿……

你所追寻的原理,规律,理性。特么一开始就不存在……


所以你的思维方式是错的,但错不在你,错在你的思维方式和CSS的设计者不同步。你要搞清楚他们就是一群做排版的搞出来的,说的好听点是做艺术的,不好听点儿就是擅长把一个简单的问题用复杂的方式给弄出来。

flexible box之前的一切布局模式都应该扔掉……兼容问题遇到再说就好了,不行就直接td的valign……


不要试图去解释那些行为,反正解释权也不在你手里……

user avatar

你这不是思维问题,是性格问题。

10张截图,只有1张是讨论技术的,其余9张都是要对方承认自己对。大量的“我就是”,“这就是”,“明白吗”,要求对方全盘接受自己。

“我就是这样的,外界应当适应我”

这是性格问题。没有人关心你是怎样的,也不会特别配适你的喜好,越早明白,越少碰壁。

刨根问底不会影响学编程,甚至也不影响学CSS,只是快慢而已。可能有影响的是你的逻辑能力,在图中,你说自己不喜欢快餐式学习,两三句后,又说对方,“你不喜欢只能代表你不喜欢”,而对方并没说过“不喜欢”,这三个字是你说的。逻辑上看起来就很混乱,这可能会影响编程。

另外,“快”,“准”,是两个字。

user avatar

这大约是新手的通病,尤其是基础知识不扎实的程序员的通病,也就是固执己见。

只有外行才把所有东西都叫做编程。这没错,但是是外行,就像外行把所有内容都叫看病,你去问问医生们,他们科室分得可细了。

在软件方面也是如此。前端本身就有html, css,js等一系列内容,而这些又只是软件技术里面极其简单的一块,浏览器展示,这一块,最多只占软件技术的5%。就展示来说,还有非浏览器展示,比如微软新的winUI3,后端又有海量的内容,不单单是普通人熟悉的各种语言,还有各种服务器技术,各种容器技术,各种运维相关技术,各种持久化技术,各种路由和流量技术,等等等等,就连一个普通人完全接触不到的日志技术就有十多种主流框架,至少5种习惯实现。在这每一个技术下面,都有至少三到五个常用实现,每个实现都有其独特的技术。比如数据库技术就三大关系型加上三大非关系型,每一个下面都有几百页文档可以看。

我看了对话,是很典型的“学生程序员大佬”,也就是刚对某些概念有了初步的理解,但是很可能没有足够的时间进行实操。这种情况下一般会如此,1是不熟悉细节但想太多,2是分不清技术之间的层次而想太多

比如

这里面就有两个认知错误。不是所有技术都需要考虑未来兼容的,网页技术一般不考虑无限兼容,因为熟悉的人都知道,基于html的浏览器网页技术,本身就构建在不稳定之上,大部分情况下,网页技术是一种可抛弃技术,也就是与其设计一个可以兼容未知需求的浏览器内容,不如构建当前恰好,等到有大改动的时候,直接抛弃原来的页面,做个新的。这是因为html技术本身就因为各家的实现和自身的缺陷导致不严谨,多年以后的兼容性改动会非常昂贵。同时,也不理解flex技术和css技术之间的区别,他们不是同层次的技术,css是样式表语言,而flex是模式。打个比方,这句话就等于有人说,用java多蠢,我不如直接上工厂模式。难道css3没有flexbox模式?模式的实现基于语言,分不清语言和应用语言的模式,这就是基本功的问题。而后面反而说自己是追求原理的人,这就是懂得太少而想得太多。这是程序员需要保持谦卑的一个重要原因。

后面的对话就已经脱离了实际意义了,大部分“学生程序员大佬”都这样。我喜欢底层。知道为什么吗?顶层的实现是实打实的,就像这个老哥说的,你做出来啊,就算是最简单的html页面,也得做出来,浏览器跑得出才是,而“研究底层原理”,没验证的,不需要编译器解释器教你做人,就打字就成了。

比如你虽然口口声声喜欢研究底层原理,但这两句话就直接暴露了根本不懂底层原理。

浏览器的底层原理是什么你研究出来了吗?浏览器懂什么?浏览器渲染就是按照html来的,js只不过是操作html,我恐怕你根本不明白html元素和js对象之间的关系。

你这个思维很错,但是错得很普遍。大部分稍微懂点,手里只有一个锤子看什么都是钉子的人都这样。而程序员要能够自我提升,最重要的一点是放下这种心态,无论对方是谁,都应该去试图理解他的思路的原因,而不是本能地去争辩。软件技术这个世界广博到无可附加,任何人,无论年龄无论资历无论大小,都能从其他人身上学到东西,而你作为没入行的人就固执己见,这就是最错的地方。

user avatar

你犯了初学者经常犯的错误,就是觉得刨根问底是对的。比如你现在要盖房子,那么首先要想需要什么材料盖房子。但是让你这么刨根问底,你就会想房子需要砖和水泥。那么砖怎么做的,怎么烧制的,制作砖需要什么样的工艺,需要多少温度烧成砖,烧砖的砖窑怎么建造,需要什么样的耐火材料,需要多少燃料,那种燃料最好,燃料怎么形成的,煤如果合适,煤又怎么形成的,地球原来有多少树木,这些树木怎么生长的,当年怎么长成树木的,树木细胞是什么样的,地球为什么有生物,地球怎么来的。。。。你觉得你思考方式是不有问题?

盖房子需要首先盖起来,了解怎么把房子盖起来,这个流程首先掌握,然后在盖的过程中,需要掌握什么样的结构房子能牢固,怎么设计满足客户对房子的要求?房顶铺盖几层材料才不会漏水?你学的是盖房子,不是其他的。你要明确你学习的边界,我不觉的你是研究性的人,就是不知道哪些东西是重点。你师父没有问题。问题在你自己。你觉得你自己刨根问底的东西实际上在软件开发中不是你现在要理解的问题。就好像房子还不会建先去了解水泥的构成,有意义吗?你小学到大学学数学首先让你学的是加减法,你上来说1+1为什么等于2,你能学到东西吗?当你学到很多后才知道什么是数学大难点,解决1+1等于2这个解答需要什么样的知识。

既然找了师父,就要先保持谦虚谨慎的态度。先掌握师父知识,你才能质疑师父,你啥都不会质疑师父,哈哈,就好像小学生上来质疑1+1为什么等于2,你觉得大科学家给你解释,你能听懂吗?

这个老师态度还是不错的,如果是我,我说你去找哪本书,然后你找来后两眼一抹黑,然后就失去了软件开发的学习想法了。然后你就没然后了。我也是这么过来的,直到我遇到就业问题时才意识的自己浪费了2年时间,像个傻子似的。

user avatar

你的那种求甚解的想法没问题,你师父那个追求快速出成果的思路也完全正确!

这个世界并不是非黑即白的。

我就两种想法兼有之。


上班的时候,项目里的工作,有时限,我会以最快出成果的思路去完成。甚至有时候弄好了不知道怎么好的,也不去深究,既然好了,就处理下一个任务。甚至有时候弄不好了,为了不影响整体进度,早早提出来,跟其他成员一起研究有没有什么不解决这个问题的迂回方案。总之,最终是服务客户,客户满意就可以。

类似你这种CSS的问题,解决不了跨浏览器问题,就看看能不能说服客户使用限定的浏览器,或者换一个设计。毕竟,技术永远是为非技术服务的。


然而,上班以外的时间,我比较喜欢自己做点小玩意儿。这时候没有工期限制,那就可以由着自己的性子,想挖多深挖多深。一个库的使用结果与自己预想不同了,我可以花几个月时间去查那个库的源代码,一点点读懂理顺……

CCS之类的一个概念不明白了,我可以去找官方标准文档(就是那种正常人基本看不懂的),慢慢理解研究…

一个算法搞不清楚了,我可以重新学数学……

为了搞懂一个工具的原理或者为了使用一个新的工具,我可以去学习一门新的编程语言……

反正没有工期限制,可以不计成本的无限深挖。往往都是自己觉得挖够了或者挖累了才结束。


所以,两者不矛盾。而且,我发现,自己业余时间挖过之后,上班时遇到的问题,很多都被我秒杀了,因为之前类似问题已经挖过了。

身边很多人惊诧于我什么都会,但他们不知道我在他们下班后吃烤串、撩姑娘的时候,乐在其中地挖那些不一定有用的东西。


所以,你喜欢把一个知识搞透,喜欢挖细节,我是支持的。但要在不影响他人和整体工作进度的前提下。


然而,我与你不同的是,当发现一个人——不论多厉害——无法提供我需要的帮助也不愿意讨论相关问题时,就不会继续与他纠缠了。

每个人有每个人的想法,每个人有每个人喜欢挖的东西。我喜欢挖技术细节,对明星八卦啥的,就完全没兴趣。要是有人非要跟我讨论明星八卦,哪怕讨论的是比尔盖茨和乔布斯是不是有基情,我也会觉得烦,觉得他无聊,觉得这些是没啥用的东西。很显然,这些绝不是没用的,至少很多自媒体就靠这种东西赚得比我还多。只是我不喜欢,不想了解这些知识,不想通过这些赚钱罢了。

你师父也是,我觉得他应该有自己喜欢深挖的技术领域,但绝不是CSS。那你继续跟他争这些东西,毫无意义。既不能帮你精进技术,也不能帮你解决问题,更不可能获得赞同。你收获到的,只有两个生命毫无意义的流逝和双方关系的恶化。

从你们的对话中,我觉得要不要深挖技术细节并不重要,你想挖,自己去挖就好了,去查资料或者再找个对CSS有兴趣的师父。学会求同存异,与不同的人讨论不同的事物。一个人学习的过程中可以有很多师父的,你看郭靖,就不会去跟江南七怪讨论吐纳心法和降龙十八掌,这是对师父的最基本的尊重。就你那聊天里的语气和态度,换我早就懒得教导你了,你给钱我都不干。明显的不信任我,我教你干啥?自己找添堵?


所以,你最大的问题,不是技术怎么学,而是怎么做人。加油吧!

类似的话题

  • 回答
    朋友,你好!看到你这个问题,我深有同感。作为一名程序员,我们经常会遇到一些看似简单,但细究起来却让人纠结不已的问题,尤其是关于“思维方式有没有错”这种带有主观性的判断。我来跟你好好聊聊,希望能给你一些启发。首先,我想说,你问出这个问题,本身就不是一个思维有错误的表现,反而恰恰证明了你是一个有自我反思.............
  • 回答
    .......
  • 回答
    文明6里的资源可不是摆设,它们就像是你文明的血脉,决定了你能走多远,有多强。每种资源都有自己的“性格”和发挥作用的场合,重要性也随着游戏进程和你的发展方向而变化。咱们一点点捋清楚,让你一看就明白。战略资源:兵马未动,粮草先行战略资源绝对是游戏前期奠定基础的关键,后期更是决定你能不能打仗、打什么仗的核.............
  • 回答
    判断各个影响因素的影响程度,确实是很多分析工作的核心。这就像在厨房里做一道复杂的菜,你需要知道哪种调料放多一点,哪种少放一点,才能调出最好的味道。科学地衡量这些“影响程度”,背后有一套严谨的方法论。下面,我就尽量详细地为你梳理一下,怎么做这件事。核心思想:量化影响,对比差异说到底,判断影响程度就是要.............
  • 回答
    这个问题很有意思,也触及了情感连接和亲缘关系的复杂性。从不同的角度来看,同父异母和同母异父的亲近程度可以有不同的理解和体验。从生物学和遗传学角度: 同父异母/同母异父: 核心的生物学联系在于他们共享了一半的基因。 同父异母: 和同一个父亲有共同的遗传物质。他们的父系遗传信息是一样的。.............
  • 回答
    各位同行们大家好,很高兴能和大家交流这个问题。关于“应酬喝酒”这个问题,尤其是拓展案源时,确实是我们在执业过程中经常会遇到,也常常引发讨论的一个话题。我可以从我个人的经验和观察出发,尽量详细地为大家讲述一下。首先,要明确一个核心观点:应酬喝酒并非执业的必需品,但很多时候它是一种“润滑剂”和“社交手段.............
  • 回答
    各位同行,大家好!关于“什么样的专利才是高价值的专利”这个问题,我相信这是我们在专利工作中经常思考、也至关重要的话题。一个高价值的专利不仅仅是一个法律文件,更是企业核心竞争力、创新成果的体现,能够带来实际的经济效益和战略优势。在我看来,一个高价值的专利应该具备以下几个关键维度,我将从不同角度进行详细.............
  • 回答
    各位同仁们,关于开会这件事,咱们心里都有数,对吧?我这么说可能有点直接,但扪心自问一下,咱们有多少人是真的打心底里“喜欢”开会的?我猜,答案大部分都是否定的。不是说我们讨厌合作,也不是说我们觉得沟通没用,而是……会议这种形式,有时候真的挺考验人的耐心的。你想想看,一个上午,本来可以噼里啪啦地写几行代.............
  • 回答
    “穷生歹意,富长良心”这句话,相信很多人都耳熟能详。它像一句古老的俗语,在民间流传甚广,但细究起来,却充满了值得商榷的地方。与其说它是一条放之四海而皆准的真理,不如说它是一种概括性的、甚至有些片面的观察。我们不妨从几个角度来聊聊这句话,试着剥开它可能存在的刻板印象和现实的复杂性。首先,我们来理解这句.............
  • 回答
    这个问题问得好!让我好好说道说道,为什么老爷这个沉默的黑暗骑士,能让我们心甘情愿地为他倾倒。这可不是因为他那身定制的战衣有多酷,也不是因为他那堆成山的财富能买下整个哥谭(虽然这确实是个不小的优势,但绝不是全部)。仔细想想,蝙蝠侠的魅力,就像他自己潜藏在黑暗中的身影一样,是多层次的,而且非常真实。首先.............
  • 回答
    您好!很高兴能与您分享关于AMD Ryzen 3 2200G在办公电脑领域大规模应用的经验和看法。结论先行:是的,AMD Ryzen 3 2200G 确实在过去几年里被大规模地用于组建办公电脑,并且仍然是一个非常具有性价比的选择,尤其是在预算有限或对性能要求不高的办公场景下。 它凭借其集成的 Rad.............
  • 回答
    这个问题挺实在的,我也在健身房摸爬滚打了几年,确实碰到过不少肌肉块头不小,但动作做得让人看得心惊胆战的大神们。说实话,每次看到那种重量压得十足,但姿势扭曲得像要折了的,心里都会咯噔一下。就说上周吧,我在练硬拉,旁边一个哥们儿,那肌肉线条,妥妥的健美身材,卧推、深蹲什么的都能看到他用不小的重量。那天他.............
  • 回答
    大家好!很高兴能和大家聊聊去西班牙南部读研的那些事儿。我自己也摸索了挺久,也问了不少在西班牙的朋友,给大家整理了一些经验和推荐,希望能帮到准备去西班牙深造的朋友们。为什么选择西班牙南部?西班牙南部,特别是安达卢西亚大区(Andalucía),一直以来都充满着浪漫、历史和艺术的气息。这里阳光充足,生活.............
  • 回答
    这无疑是英国的标志性建筑之一,矗立在泰晤士河上,它的名字叫做 伦敦塔桥 (Tower Bridge)。您看到的这座桥,名字响亮,而且与它所处的伦敦塔(Tower of London)有着深厚的渊源,这或许也是它名字的由来。但它可不是一座普通的桥,它是维多利亚时代工程技术的杰出代表,也是伦敦最受欢迎的.............
  • 回答
    各位航空爱好者们,今天咱就来好好掰扯掰扯苏35和歼16这两款相当有分量的三代半战机,看看谁更胜一筹。别的不说,咱就从它们的“出身”、“本领”和“实战经验”这几个方面,尽量说得透彻点儿。一、出身的“家底”: 苏35: 这位可是俄罗斯航空工业的集大成者,可以说是在苏联时代的苏27基础上,经过不断“魔.............
  • 回答
    您好!对于您的问题,首先我要说的是,45岁拥有人大国际关系博士学位,这绝对是一个非常扎实的学术背景,进社科院做国际关系研究员是完全有可能的,但确实需要一些策略和准备。让我来为您详细梳理一下,尽量让这番话听起来更像是同行之间的交流,少一些套路,多一些实在的考量。一、 “社科院”的定位与研究员的现实考量.............
  • 回答
    嘿,老哥,看到你问普联技术(TPLink)产品工程师(国内市场方向)的事情,我来跟你唠唠我的看法。先说说能不能学到东西吧。答案是:肯定能学到不少东西,而且是实打实的、贴近市场的干货。你想啊,TPLink在国内市场耕耘了这么多年,积累的经验和对消费者需求的理解那是相当深的。作为国内市场的产品工程师,你.............
  • 回答
    各位兄弟姐妹,终于在寂静岭里找到组织了!这辐射4的生存模式,说实话,刚开始真把我搞得够呛,比当年跟狗肉一起捡垃圾还累。不过,摸爬滚打了这么久,也算摸出点门道来,今天就给大家唠唠,希望对刚踏入这片鬼地方的新手们能有点帮助。首先,咱们得明确一下生存模式跟普通模式最大的区别在哪儿: 饥渴难耐,病痛缠身.............
  • 回答
    各位看官,大家好!今天咱就聊聊火箭发动机和航空发动机这俩哥们,看看它们到底有啥不一样,为啥咱们在火箭发动机这块玩得挺溜,但在航空发动机上却总感觉差点意思。首先,咱得把这俩“动力心脏”的出身和使命给掰扯清楚。火箭发动机:天生就是要冲出地球的狠角色想象一下,火箭发动机这玩意儿,从娘胎里出来就是为了干一件.............
  • 回答
    兄弟姐妹们,今天咱们就来唠唠笔尖打磨这回事儿。别看这玩意儿小小一块,它可是决定了咱们写字的感觉,是顺滑如丝,还是刮纸如磨?所以,这活儿咱得认真对待。首先,咱们得弄明白为啥要打磨。不是所有的笔尖都需要打磨,很多时候,原厂的笔尖已经做得相当不错了。但咱是笔圈的人,总得有点追求嘛,是不是? 修正瑕疵:.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有