您的位置 首页 你问我答

先用一句话概括我要问的问题:文科研究生(这是大前提,很多人拿理工科背景转码成功说事)学习什么编程语言

问题:

先用一句话概括我要问的问题:文科研究生(这是大前提,很多人拿理工科背景转码成功说事)学习什么编程语言合适,进可以开发工具解决实际问题,退可以拿它找到工作(仅限国内环境)。

先说一下我选择编程语言的标准:一是学习曲线是否陡峭,二是就业市场上不同语言所需岗位的多少(仅以boss直聘为例)。在我个人认知里,似乎好找工作的编程语言很难学,容易学的编程语言很难找工作。

起初我选择了python进行学习,因为语言难度不大,基础也容易,但是我拿着它找工作却没找到合适的工作(也许是这个语言很“胶水”,性能不如c++,应用生态不如java;也许是我技术水平确实不够);后来我选择了c++,因为这个语言几乎无法替代,工作相对其他语言来说也好找(这只是我的个人认知,如果有误请指正),但是学习曲线很陡峭,很多抽象概念我很难理解。

我对编程语言以及就业前景的认知有很大问题,而且我也很难从企业视角去了解一个企业主力开发语言,我能了解到的很多信息几乎来自培训机构“制造”的大量充满焦虑甚至偏见的信息,可靠性很低。希望大家能够帮我确定一个切实可行的方向,谢谢大家。

[群友问精选


网友解答:

1: 人类近百年计算机史只不过是在创造屎山和优化屎山罢了

Ronald: 不能比对手先上线整个团队都没了,谈什么优化

1:

P & D|Wine: 工作过的人都知道项目都是一步步迭代出来的

1: 把这个想明白,一切这些奇奇怪怪的需求都懂了

Adam: 前期就是💩

1: 有时候你需要比别人拉更快的屎

P & D|Wine: 一步登天的优化不可能,也不存在

1: 有时候需要你把屎清理干净

1: 就这俩

1:

糖水儿: 明白了,在这种情况下便捷开发比性能优化更重要

Adam: 沙雕领导就给那么点儿时间,又想快又想好,怎么可能

1: 我建议哈,就算外行,看看计算机组成原理,不是坏事

1: 当屙屎读物看看

Adam: 技术永远为业务服务

P & D|Wine: 但找工作面试你不能这么干,因为这体现不出你的“特别”

1: 看不明白就去搜可视化

1: 国内HR基本都傻逼

1: 我说的

Ronald: 面试造航母,工作拧螺丝,CRUD一把梭

Ronald: 面试手撸LRU,进去增删改查

Adam: 他懂个勾八,一波套话,显得自己很职业

1: 大小公司都不乏这种HR

P & D|Wine: 同质化就业市场下,你想找到工作只能增加自己特别的地方,别纠结语言,要想彻底转行,老老实实先进入门槛,再填补基础。“人世间最远的路都是捷径”

糖水儿: 我可不可以这么说,“开发的便捷”与“极致性能”是两个极端,python处在“开发便捷”这一端,c++处在“极致性能”这一端。

那么问题来了,有没有编程语言处在这两个极端的中间位置

Adam: 尤其是互联网的HR,很离谱。说一堆套话,不接地气,我是瞧不起的。

夏: 我不知道你转码是为了高工资还是为了什么?

Ronald: 做几个大项目啥都知道了,光解释没啥实感

Adam: Py岗位少,学历要求稍微高一点

Ronald: py都是卷机器学习了,纯玩PY的没有

P & D|Wine: 你还在纠结语言…语言和性能没啥关系,C 艹写成屎山的也大把,py 优化到位扛住中小型项目都是没问题

Adam: 什么性能???先上线再说😂

1: 希望题主能得到想要的回答,这行充满了大神和草台班子

1: ML纯天坑,题主数学咋样

1: 线性代数晓得吗(

1:

1: 后者居多

糖水儿: 大前提:文科背景

Adam: 文科生,学线代么?我不太清楚😂

1: 我知道,英语水平如何

1: 可以的话去看introduction to linear algebra

Adam: 现在很多无脑转计算机的人太多了,大都是“走投无路”,信息差罢了

糖水儿: 很一般,六级

1: 我承认我是废物,摆床头当摆件,我自己都没看几页

1: 但我本科线代90

1: 左右

P & D|Wine: 到处都是围城,里面的人想出去,外面的人想进来

1: 虽然忘差不多了,需要用了Google一下(

1:

糖水儿: 所以我也在强调进可以开发工具解决实际问题,退可以找一份工作

如果我真有入行想法,我“进”与“退”就倒过来说了

1: 线代看看,学不好的话放弃机器学习这条路

1:

Ronald: “可以开发工具解决实际问题”不算进,只算是“找一份工作”的最低要求

Adam: 你确定文科、研究生,这两样标签🏷️不会给HR带来困扰么?现在根本不缺简历

P & D|Wine: 我从前年开始当面试官,别人啥感觉我不知道,但我自己来说,面试官比求职者累,引导式发问需要根据每个人的项目进行,结合计算机基础,而不是让 ta 们再做一遍考试。

Adam: 如果你能解决真正的实际问题,那你一定能找得到工作。

1: 群U除外(

1: 叠个甲

Ronald: qs,没项目面试都玩不下去

糖水儿: 我承认会,其实这也给我自己带来困扰

P & D|Wine: 没项目我会从算法或者笔试问题的角度去尝试引导,尽可能让每个面试的人有收获

Adam: 你要真的觉得有意思,做出来的东西有成就感,那你可以去!计算机不排斥任何转行的朋友

P & D|Wine: 不过我一般只负责 1/2 面,后面的就看每个公司的情况了

Adam: 这么好的面试官嘛,求职者答不上来你会引导提示么

夏: 如果是这样,我还是希望题主能够冷静下来,仔细想想有没有其他出路!转码这几年性价比真不高!其次为了就业还是去学 java 和 大蟒蛇吧,最好都会,顺便捎带一点js,ts,go!Java 岗位多,学习曲线也还行,不是很难,蟒蛇前景好!顺便还要学学运维和测试方面的知识,争取成为 devops。emm 大概就这样吧!加油,一起度过寒冬!

Ronald: 饭还是要吃的,现在大厂太卷,行情也不好,很难让转行的人过得好了,不如准备考公考编,况且还是吃青春饭的职业

糖水儿: 我顺便问一句,什么样的问题算“真正的实际问题”

P & D|Wine: 会的,基础比较差就花时间帮他串一下,我自己也是这样经历过来的

Ronald: 跟项目的经历,或者玩开源项目的经历,也是学习的一部分

(⊙o⊙): 感觉你的进退侧重点不太一样,如果你想开发工具解决实际问题,建议选好一门语言,然后围绕它学习各类第三方包的使用,比如用 python 处理 excel ,抓取接口等,这种情况刷 leetcode 没啥帮助,有兴趣可以当作解密小游戏玩玩。如果是想从业建议从基础学起,不然就算找到工作也会非常痛苦

糖水儿: 这也是我学习一门语言很“难受”的点,我就不用“痛苦”这个词了。

难受的原因在于,做出来的东西是个东西,但是没什么用(点名“井字棋”、“坦克大战”、“别踩白块”、“学生信息管理系统”)

Adam: 例如你做了一个贪吃蛇、或者你能画出来❤️图线、甚至你用这个算出了1+1=2,只要你有那么一丢丢的成就感、喜悦

RRR: 当码农不比下地轻松,要是没有热爱,只能说你要把注意力放在这个农字上.

夏: 而且还久坐

夏: 特别要命

Adam: 兄弟,摸鱼技术不太行哈

糖水儿: 要说成就感,这个是有的
喜悦谈不上,这一点随着语法的深入,几乎不会再有了

顶多只是“好吧,又实现了一个没什么用的功能”而已

我用循环写一个计算器,跟用对象和类写一个计算器,说来说去不都是计算器嘛

夏: emm 我想问一下题主为什么想转码啊?是兴趣?还是工资待遇?

P & D|Wine: 那我的最后建议还是当兴趣吧,其实群友说这么多,你也是一句没听进去。

Adam: 我是会有想继续学下去的想法的。比如做了乘法,我会想除法怎么做,会了之后,我会想去怎么求解多项式?探索更多的东西~

有一种欲望在推动你去做,我觉得这就是兴趣吧

糖水儿: 两种原因都有,我始终在怀疑自己是否真的适合转码,只不过我挨骂挨少了,还抱着幻想罢了

Adam: 不过上个逼班,给人整的没意思了。很多工作是重复性劳动,不过也没办法

糖水儿: 我相反,我把计算器开发出来,我就不会去想怎么换一种架构开发,充其量只是把功能完善,细节修修补补而已

Adam: 这种面试官打着🏮都找不到咯~

夏: 你可以先学半年吧,然后再去投递 简历找实习试试吧!至于学什么语言,你可以去 b 站看看重学 it,他有介绍主流语言的学习难度,市场情况

夏:

Kiro: 可以到helloGitHub上看看,每期都会介绍很多开源项目,可能能对你有些启发

夏: 没事我是全栈

夏:

郭: 小时候被司马孤儿软件锁机以后我就开始🔒别人机,希望你的动力不要像我一样

糖水儿: 对于第一个问题“什么样的问题算真正的实际问题”,我延伸出了另一个问题,“码农的简历如何写”。

我学习python的时候确实解决了一部分实际问题,举个例子,之前要处理一个大的json文件,需要提取这个文件里全部的手机号。

那么问题来了,这个问题是不是实际问题,是。但是写到简历上让hr看到,hr会把这个问题当作实际问题吗

P & D|Wine: 昨晚和你说了也是白说…最后一次回你
实际问题只是体现你自己思考的工具,就拿你说你实现了计算器、处理 JSON 文件的手机号,你思考的点在哪里?比如计算器,实现到了什么程度?简单的加减乘除?复杂计算带括号或符号优先级的功能做了吗?用什么思路实现的?中缀表达式和逆波兰表达式的处理场景是什么?有想过其他更好的功能思路实现吗?

这些你想过吗?😅,昨晚也有不少人告诉你,程序员不是打字机,一点不思考和你说再多有什么用?让人指路的前提是自己要学会整理和收集有效信息,而不是纠结些没必要的问题。你这样出去面试被人挂了还不知道自己错哪。

潜: 得了,先了解下计算机基础课程(计组,计网,计操,算法,你搁网上学的Python,屁用没有。

潜: 还语言标准呢?找工作为目标,你还自己选开发语言,咋滴,你大佬啊?
短期快速就业就是Java,虽然现在Java占有率逐渐下降但是架不住历史遗留大,而且由于滞后性或者图方便,仍然会有公司选择Java。
高薪就是C/C艹,c主要是嵌入式,单片机。就是工厂生产机器中,控制机器的东西。
C艹应用很多,主要有后台系统,和游戏
Python这玩意也就人工智能用用,实际就是个工具,我寻思你连为什么它叫胶水语言都没搞清楚。
这玩意可以便捷的将不同语言链接到一起,也可以作为短期迅速开发的工具,但最后总归是要重写的

糖水儿: 1. 短期快速就业选择java,那么为什么存在大量“java已死”,“学java入职美团外卖”的言论,同样也有“赶紧入场java割一笔”的言论,这是事实情况还是刻意渲染?说“java已死”的人是面试没过还是被公司优化掉才这样说?说“赶紧入场java割一笔”是公司技术部门成员还是培训机构的既得利益者?

2. c/c++高薪,学习曲线陡峭通过学习证明(当然也有“欢迎来嵌入式”的言论),python开发简单但是不好找工作同样也通过我个人实践证明。

鉴于以上两种情况,我是不是有必要对编程语言相关的现状做了解,以做出最优决策?

刘: 1、编程语言只是工具,要学习通识技能
2、现在下场java确实是可能山顶上了,不太能割了
3、python不好找可能只是区域问题,大模型等人工智能带来的革新会让程序员的门槛急剧降低,同时大型应用越来越多,用java从头构建的成本会增高,我推测以后python这种快速出原形的语言会越来越多

刘: 再好的市场也有饱和期,以后程序员的工作也不再好做,建议尽快决定

糖水儿: 所说的“通识技能”指的是什么?指的是上面所说的计算机组成原理、计算机网络技术、计算机操作系统、算法吗?

刘: 就是不论做什么行业都有用的技能,比如数学、物理、沟通能力、逻辑能力、英语、办公软件等等,当然这些仅限于你是没毕业的话,如果已经毕业另当别论

先用一句话概括我要问的问题:文科研究生(这是大前提,很多人拿理工科背景转码成功说事)学习什么编程语言插图

发表回复

返回顶部