爱吱声

标题: 专业选什么?选计算机呀 [打印本页]

作者: 晨枫    时间: 2021-1-9 10:48
标题: 专业选什么?选计算机呀
经常看到人们在讨论选什么专业的问题。有的是父母在为孩子选专业焦心,有的是在校大学生、研究生自己在怀疑专业选错了、是不是应该重选,有的是已经走上工作岗位但对现有工作不满意、自我怀疑是不是该改行。很多人都不约而同地认定:该学计算机。8 k, c, \1 ~1 l) r
, }0 F  Z5 N+ h
计算机(叫电脑也行)在第三次工业革命中崛起,在第四次工业革命中成为灵魂。计算机的作用早就超过计算了,只有想不到的,没有做不到的。学计算机对未来的学习、工作确实是很好的切入点。但学计算机有一个学法,更重要的是,学计算机不等于报考计算机系。
+ S" b  K+ w6 e' M# S& b( l3 O- B8 ?0 C8 u% Q
早几十年还要科普一下,现在似乎谁都知道,计算机有硬件、软件,尽管软件硬化、硬件软化又能把人绕晕了。这些对于还在选专业阶段的人来说,其实都不重要,不都是计算机吗?
: n* u0 z' M  K+ {" [) A2 b: e- f  Z. }  Y' o$ W2 h8 d# B4 [
人们一方面一股脑地认定学计算机就是好呀,就是好,另一方面也在不断听到计算机专业的人诉苦,在悲叹“逃出xxx”。问题出在哪里呢?
5 @; Q* n' N" z1 c3 Q! {! u- Q1 D
2 U6 x4 `$ Y; J6 I计算机也称电脑,还真是有道理。人类因为这个大脑(而不是四肢)才成为万物之王,否则靠腿脚是跑不赢豺狼虎豹的,靠拳头更是连野猪山羊都打不赢。但靠脑子,以及由此而来的思考、沟通、协调、制造工具的能力,弄得人类现在一不小心可以把什么物种都给灭了,生态保护成了大事。0 w6 }0 k) s" G1 M0 m9 k

1 X+ U0 H( ^9 H) u8 _. C计算机在第三次工业革命中已经出现。尽管已经称作电脑,但还是与工业革命之前的人脑更加可比,那时很多情况下脑瓜还是不顶拳头和腿脚更重要。在第四次工业革命中,电脑才是真正的核心。但也和人类的发展一样,第一、二次工业革命解决了机器代替人力的问题,第三次工业革命解决了电脑与机器(包括通过机器的视听)的沟通的问题,第四次工业革命要解决给电脑装进知识、增长技能和学会协调的问题。硬件依然重要,但关键在于软件,不光是应用软件,更是软件的应用。对于第四次工业革命来说,造计算机(包括硬件和软件)只是很小的一部分,用计算机才是大头,包括直接使用计算机和包括计算机的新工具和产品。9 q3 e& C. e6 i7 a
' u+ M+ T; S2 M6 V
对于软件的应用,存在很多误解,以为这就是熟悉软件的使用和操作。这只是最初级的应用,好比驾校毕业,可以开车去超市或者上下班了,离有经验的驾车人还有很大距离,离赛车手更是天差地远。对标赛车手才是软件应用的高级境界,但这需要不仅有高超的车技,更需要对车有精到的理解。
) S: J6 V* {( e. r
: [; ~2 N+ Q: l4 Y) P以工业控制的DCS和PLC为例,DCS主要用于连续控制,好比汽车的定速巡航,PLC主要用于事件触发的连锁保护和顺序控制,比如火警喷淋。过去这是井水不犯河水,现在的趋势是两者你中有我我中有你。) |. N, Q5 s0 h  t
- ~  W! z, ~; L) a2 D/ E
DCS和PLC最基本的使用包括组态(在PLC里常用阶梯逻辑),差不多就是各种填表和搭接。这用来搭建各种简单和复杂控制回路、各种连锁保护逻辑、顺序控制逻辑,是最基本的软件使用。但要更进一步,就需要超过现有的组态选择,使用程序语言和顺序控制图了。简单地说,这就是编程序了。" b6 P! M& C* j" q0 w$ n, X6 A8 g

" `# F7 r7 `$ {写一个小程序,工科学生在学校里基本上都学过,没有什么大不了的。但要更进一步,就不简单了。比方说,反应器有A、B、C等3个主要进料,但反应条件是通过总进料流量(决定产量)、A的浓度(决定反应产率)、B/A的克分子比(决定产物性质)来决定的,并不是直接的A、B、C的流量,就需要建立三元联立方程,实时解方程。这不是大问题,问题是,有的产品有B成份,有的不用B,那就需要用条件来引导程序走向。这也不是大问题。但要是两个反应器串联,条件的排列组合一下子就多了好多。如果要容许操作工在任何时刻将任意组合的A1/2、B1/2、C1/2置于人工控制之下,比如说是开停车、应对紧急情况、阀门或者变送器维修,排列组合就更多了。这时比较好的方法就是把多元联立方程改写成矩阵形式,将从自动模式中拉出去的A/B/C/1/2对应的行和列从矩阵中抽出去,重新解算,就可以用简明、统一的方法应对各种组合了,而不是用不胜其烦的IF…THEN来导引各种组合下的程序走向,也便于过程扩展,比如增加了第三个反应器。
% Y% B, K1 a1 b3 H; z6 Z
8 a- b0 k$ N* h, C: `0 n6 C6 W但这就比较复杂一点了。首先需要会一点矩阵运算,其次需要在编程中不仅重组矩阵,还要在最后复原的时候找对门户,别串错门。这就是稍高一级的编程能力了。) J' A2 B9 w& Y3 C, B' s9 x6 ~

/ N2 R' M- j6 E1 C; W4 b再进一步,需要做一个工艺过程自动开停车的应用的话,有的步骤是串联的,上一个完成再做下一个;有的是并联的,两个一起做,都做完了再做下一步;还有的是串并联组合的;更有返回的,一路做下来,条件不满足,回到几步之前重做,但又不是完全的重复,而是有分叉的重启。各种不同的路径需要精巧的程序走向管理,还需要考虑执行中操作工的人工打断,恢复后有继续、转向、重复等多种选项。这一切使得这样的大型顺序自动化应用可比照为简化版的操作系统,对编程能力的要求更高。; Z7 P9 \3 K1 V/ w* t6 P( K8 ^
3 e! u) ?( \6 c& W& ^4 `
这些都是厂商带来的组态里不可能有的功能,都需要自编程序实现。但这些都是对计算机控制系统应用软件的应用,而不是软件开发。一般来说,这不属于“学计算机”的范畴,而属于“用计算机”的范畴,但这才是第四次工业革命最需要的。这也是应用软件的开始。
) O, q" I$ k0 A, B- n# \7 _. [
" v: u8 p3 f- X8 s* B: K* r  W在原有应用软件上开发高级应用,在应用中完善化,并发掘共性,提升出新的应用软件,这正是应用软件的成长和发展道路。比如说在上述矩阵控制问题里,人工“抽出”的控制量也可以看作是控制量触限了,动不了了。把这个算法提纯一下,作为新的组态推出,以后处理约束控制问题就有现成工具了,就不需要再重头自编程序了。对工艺开停车的应用也是一样,打造更加通用的架构,就是通用的复杂过程顺序控制的应用软件了。7 f7 g5 q1 ^0 g7 U( x) ?
# n3 v* h; o/ ?" C6 i3 V
大名鼎鼎的MATLAB也是这么来的。Cleve Moler是新墨西哥大学的教授,在教学中,发现要学生用FORTRAN编数值分析的程序有很多重复工作,掌握各种编程技巧也不容易,于是自编了MATLAB最初的原型,让学生不用FORTRAN就能运用现成的LINPACK和EISPACK子程序库,并在一些大学里推广开来。但Jack Little发现了这个好东西后,用C语言重新编写,并用矩阵和向量作为一切运算和可视化显示的基础,大大简化了使用环境,成功地推出了商业化的MATLAB,以计算能力强、使用方便迅速获得学术界和工业界的热烈拥抱。但学术界和工业界在使用中,根据不同需要和学术方向,很快从基本MATLAB功能重组、强化,推出各种“工具箱”,如控制系统设计、信号分析、最优化、神经元网络、统计分析、系统辨识等,还根据不同应用方向推出财务分析、飞行器设计、图像识别、机器学习、电力系统、预防性维修规划等工具箱,大部分都是用户在应用中提炼出共性,草建工具箱,反馈回来,规范化包装后重新推出的。
0 @* A; N2 [4 g4 L1 L( H% E) D8 B+ J  v& _/ R- S9 g5 s( y
这和赛车手异曲同工。顶级赛车手不仅对赛车的操控厉害,对车和发动机的理解也是厉害,不少赛车手直接就是机械专家。电影《福特vs法拉利》说的是真实历史,这里面的Carrol Shelby不仅是赛车手,也是赛车改装专家,后来自己开公司,专门干跑车改装,Shelby Cobra成为一代经典,现在还不断有模仿者。Ken Miles对福特历史上最杰出的赛车GT40有决定性的贡献,50年后,福特还特意推出全新GT40,向当年致敬。反过来,机械专家不一定能干赛车手,对赛车操控的极端要求也不理解。
$ ]& B: w* @* \) g0 }! x/ D$ D. \1 I) z7 c3 b) s
这恰好是“学计算机”和“用计算机”的差别。应用软件是第四次工业革命的关键,但应用才是引导应用软件的。对于应用软件来说,应用包括具体领域的知识和使用经验,也称domain expertise,这是应用软件的基石。相反,软件工程的一般技巧反而属于“大路技术”。这不是说轻而易举,而是说人才队伍和开发基础更加广泛地存在。最好是应用人才自己也是软件人才,但退而求其次,软件的完善化是可以请“雇佣军”来干的,MATLAB就是例子,当然Jack Little是自带干粮的雇佣军,最后也成了东家了。
6 {* L" f" O  i$ v  N: o  M: Q9 Z- K8 T6 |+ |+ ~# L! @+ }
那回到前面的问题:选专业,选什么呢?学计算机硬件挺好,但也好硬核;学软件,实际上也是一门大路手艺,求职面可能很广,但还是打工的命,难当主将,好比赛车队里装卸轮胎、加油打气、跑龙套的。' M. s+ ]  O" a! u6 Z2 \

7 d, B+ P& r4 e! E) Y. b% W5 |- K6 K$ T# b还是学硬核的数学或者工程吧。数学的春天真是来了,大数据、人工智能都需要数学,有了数学的底子,再把计算机抓一抓,就好比有了好厨艺,再练一把刀工,这就好马配好鞍了。反过来,光有一手好刀工,可能就只能在厨房打下手了。中国是制造业超级大国,学工程永远前途广泛。在实践中积极学习计算机硬件软件的应用技术,主动应用计算机工具,打造优秀的应用环境,甚至迭代出新的应用软件,这不香吗?当然,在数学、工程里能当领军人物也是要有金刚钻的,但毕竟面大啊,切入点多啊,不比计算机硬件软件那里要挤独木桥。而且说得不好听,这是业主与装修队的关系啊,还是值得考虑的。
- g9 A$ Q* H1 i1 n1 D1 D# n- v" Z1 K% J# I
在选什么专业的问题上,投身造计算机(包括硬件和软件)行业当然是不错的选择,那当然报计算机系。但这个行业的容量也是有限的,而用计算机的行业就几乎是无限的了。最不幸的或许是学计算机但最后“沦落”到给用计算机的行业当IT保障,这就是IT的机修工了。这活肯定要有人干,瞧不起是肯定不对的,但这也可能不是纠结于选什么专业的学子和家长们的目标职业。% v; O( c: a- E7 _5 V. b8 y

作者: 数值分析    时间: 2021-1-9 14:52
本帖最后由 数值分析 于 2021-1-9 14:54 编辑 # c. q9 K- ^4 U! t$ A' ]: S5 K
! f3 U3 T0 n, R
我本科是计算机的,到了博士学的物理,感觉晨枫说的对,从工具到如何应用工具,从计算机本身到用计算机解决问题。
作者: 雷声    时间: 2021-1-9 16:25
这个可能会象90年代学外语专业一样。/ P1 I; w( J$ \3 [
当时很热门,过了十年发现谁不会外语啊
作者: 可梦之    时间: 2021-1-9 16:35
早期计算机侧重技术,好技术不愁没客户;现在计算机成了工具,应用越来越重要。现在的创新也更多是应用创新,技术是为应用服务的。
作者: 数值分析    时间: 2021-1-9 18:53
不过话又说回来,好像本科学什么也不是那么重要.当然,你要非说学的是艺术史之类的专业,那算我没说.
作者: 风雨如晦    时间: 2021-1-9 20:36
数值分析 发表于 2021-1-9 18:53
. x& @5 `% S: ?( O& @6 h1 T" m- g不过话又说回来,好像本科学什么也不是那么重要.当然,你要非说学的是艺术史之类的专业,那算我没说. ...
1 O: i5 ~# V4 ^7 }) |( t/ i7 C( u
学艺术史也没关系。我有一同学,本科学地球物理,研究生念中文,毕业后去sun mircosystem写软件。
作者: 雨楼    时间: 2021-1-9 23:14
只会计算机是不够的。要学以致用。发展是计算机只是工具,专业才重要。
6 R4 m) G: H; V* H5 Y另外数学不好的学C S会比较痛苦。
作者: 晨枫    时间: 2021-1-9 23:33
可梦之 发表于 2021-1-9 02:354 ^+ G+ \' e; N. z
早期计算机侧重技术,好技术不愁没客户;现在计算机成了工具,应用越来越重要。现在的创新也更多是应用创新 ...
* h# r9 j/ M7 m  {8 J8 s3 i
就是这个理。可惜好多家长和考生不懂。着急。
作者: 晨枫    时间: 2021-1-9 23:33
雨楼 发表于 2021-1-9 09:14
. @! q' L: x" Z9 N+ B3 j# a2 F只会计算机是不够的。要学以致用。发展是计算机只是工具,专业才重要。& i- P5 F' e2 A# S3 `- S
另外数学不好的学C S会比较痛苦。 ...
$ W6 n8 S$ N  n! Z# V, |
数学真是非常重要,这是对思维能力和抽象能力的训练,人类智能的根本。
作者: 晨枫    时间: 2021-1-9 23:34
风雨如晦 发表于 2021-1-9 06:36
- S/ W: K! Z7 U/ r" M% O学艺术史也没关系。我有一同学,本科学地球物理,研究生念中文,毕业后去sun mircosystem写软件。{:7_330 ...
7 w4 h, W8 l+ s
女儿医学院同学就有学艺术本科的。保持思路开阔,文理都有坦途。
作者: 晨枫    时间: 2021-1-9 23:35
本帖最后由 晨枫 于 2021-1-9 09:36 编辑
- G: n: v7 j3 m3 a* j$ @) [6 X
雷声 发表于 2021-1-9 02:25" t: V5 Z1 x* o! k: u/ u  F' f
这个可能会象90年代学外语专业一样。
8 C! O6 ?1 ], Q% ?; v当时很热门,过了十年发现谁不会外语啊 ...
) _* A* Y( `, \* t  H) c
4 k( s' X' d! s% _7 b' x
精辟!就是这个理!工具就是工具。专业造工具是一回事,但工具最终是给人用的,用好工具才是王道。
作者: semtex    时间: 2021-1-10 00:11
还是学硬核的数学或者工程, 然后向计算机上靠? 很多学生是这么干的啊, 都后悔当初浪费时间学数学或者工程。
作者: 晨枫    时间: 2021-1-10 00:15
semtex 发表于 2021-1-9 10:11
% w+ a  ^6 I7 |, ]; N还是学硬核的数学或者工程, 然后向计算机上靠? 很多学生是这么干的啊, 都后悔当初浪费时间学数学或者工 ...
3 v! t0 U3 m- x6 D; V- E. h
当初学工程和数学,现在加强计算机这个大拐棍,怎么可能是浪费时间?他们要是后悔,肯定是没弄对路子,或者当初工程和数学就是学的不怎么样。
作者: semtex    时间: 2021-1-10 00:46
本帖最后由 semtex 于 2021-1-10 00:48 编辑
) V8 C4 Z5 L9 L: ]9 @4 n
晨枫 发表于 2021-1-10 00:15
" d2 e% p# V2 c- ?% C& K% b/ \当初学工程和数学,现在加强计算机这个大拐棍,怎么可能是浪费时间?他们要是后悔,肯定是没弄对路子,或 ...
, J+ @6 p" Z1 X- P

) Y& \: [) q) }/ w; V! {计算机和别的工科区别就是本科毕业就可以干活了。其它工科, 毕业干个四五年本行, 也许能入门, 我看都悬。 在不出活之前, 收入好不了。当初学校学得咋样, 其实影响不大。主要是学习和社会脱节严重。
$ u! f  u9 J  B! q+ s3 u; u  k: U; R6 y! S0 V# j
学工程和数学,现在加强计算机这个大拐棍,这个本身对个人要求就很高。有多少可以做到呢?8 z. S; ~+ G9 s& _& k% z3 P

( @2 c: l9 ?, A! f1 T( O) W另外我说那些转行的人后悔, 这个是现实。这个可不是轻松一句当初没学好, 就可以解决的。
作者: semtex    时间: 2021-1-10 01:04
我觉着司机的思想是各个行业,计算机都可以加成。其实这个思想是不对的。 应该是计算机就是核心, 各个行业围绕它改变自身。
) h( B* H* @! L3 _4 J
7 R# T/ N% w! M2 n# W: Z* X8 J$ H当然我的想法估计认同不多。
作者: 可梦之    时间: 2021-1-10 04:33
semtex 发表于 2021-1-10 01:04
7 p; t. H/ ?4 r# l8 p我觉着司机的思想是各个行业,计算机都可以加成。其实这个思想是不对的。 应该是计算机就是核心, 各个行业 ...
5 M) e& ^, S, Y( A7 d$ O0 `7 w
有点类似当初关于"互联网+”和“+互联网”的争论。虽然“互联网+”暂时获胜了,但我还是支持“+互联网”。4 f5 H9 I2 k; n& U4 P
: l' t- T3 l; l5 x
类似的,将来是“计算机+”还是“+计算机”?早期是“计算机+”,计算机是核心,能提供什么用什么,但好改造的行业都差不多改造完了,剩下的都是难啃的硬骨头,就不能指望行业来迁就你了,要换个思路人家需要什么提供什么。这也是很多互联网人去做医疗、教育困难重重的一个重要原因。
作者: testjhy    时间: 2021-1-10 08:35
晨大看不起自己的专业!自控,当然在美加可能是EE专业可能比计算机还好一些。自控有系统的观点,反馈的素质,都是跨专业的视野。当然学数学甚至物理基础可能好一些,但以后的动手能力会限制他们的思维。
作者: 晨枫    时间: 2021-1-10 08:42
testjhy 发表于 2021-1-9 18:35; w7 C2 y; M& v- Y" h7 i! Y- P! ~" ?
晨大看不起自己的专业!自控,当然在美加可能是EE专业可能比计算机还好一些。自控有系统的观点,反馈的素质 ...

) n) W! F- A6 _( |0 J4 s我怎么会看不起自己的专业啊,不是在鼓吹嘛。$ K# }1 J+ t; ?& \9 ?% ]

3 Z6 k$ N2 q& f" w6 ], r莫非你以为我是学计算机的?
作者: 随机微分算子    时间: 2021-1-10 16:03
晨枫 发表于 2021-1-10 00:15
8 t- y5 S4 W4 ^. e& E$ E8 @, ~3 @0 |当初学工程和数学,现在加强计算机这个大拐棍,怎么可能是浪费时间?他们要是后悔,肯定是没弄对路子,或 ...

& \# J; m- M, a# b7 y从本科到博士都是数学,经验就是如果要进IT业,就直接学计算机就好,他们的数学够用的,如果要进金融业,就直接学金融就好,他们需要的数学也是够用的。数学和他们差别很大的,编程是个专业的活,不是说学好数学再练练编程就能轻易切换过去的。数学系受到的编程训练和计算机的比差太远了。
作者: 晨枫    时间: 2021-1-10 23:30
本帖最后由 晨枫 于 2021-1-10 09:32 编辑 . e+ w5 o4 ~6 @) ~6 y1 e) g
随机微分算子 发表于 2021-1-10 02:03
. L6 o4 M# t" B% ~, e% u" Q从本科到博士都是数学,经验就是如果要进IT业,就直接学计算机就好,他们的数学够用的,如果要进金融业, ...

$ K+ B! V* ?; \! I6 Q7 w% A/ h9 h( m3 T; C
但我碰到的更多是需要把数学变成可执行的程序,或者用数学把软件运作起来,而不是在编程序中用到数学。我们有大量的现成软件包,像PLS、各种统计、数据挖掘、建模等,除了跟着说明书上的例子,没人懂得怎么运作起来到超出说明书例子的程度。这就是数学功底的问题了。
, D% S) I- f0 q' E/ r$ y, Q3 i' r$ c
另一方面,软件用多了,没有会满足现有功能的,必然会通过深度customization或者功能扩展(对于MATLAB就是自搞一套toolbox)来增加功能。这对基本软件本身也是性能扩展。这就肯定不是CS主导的,而是subject matter expert主导的。
5 h# R  g5 E9 J
: Z/ ]5 a4 T  V其实我在楼顶说的就是toolmaker和subject matter expert的差别。个人认为,现在更重要的是后者。用内燃机做例子,在迪赛尔、戴姆勒的时代,发明内燃机就是成功的一半;但到了后来,如何把内燃机用好才是关键,而在用的过程中,内燃机也得到了发展。
作者: 伯威    时间: 2021-1-12 10:11
看了一遍,有点迷糊,再看一遍,才发觉是文不对题。
作者: 陈比尔    时间: 2021-1-13 00:44
雷声 发表于 2021-1-9 16:25
( T/ K+ P' c% o+ l3 K这个可能会象90年代学外语专业一样。- c" y& T7 T3 l) Z  O, G
当时很热门,过了十年发现谁不会外语啊 ...
$ c1 e+ J  Q7 M. F
掌握外语的门槛随着开放和互联网是越来越低,但会外语和做翻译还是两回事阿。普通人对电脑再熟悉无非也就是使用。




欢迎光临 爱吱声 (http://www.aswetalk.net/bbs/) Powered by Discuz! X3.2