V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zxgngl
V2EX  ›  程序员

专业的计算机专业出身和半道出家的软件从业人员的差距在哪里?

  •  
  •   zxgngl · 2016-01-15 17:10:16 +08:00 · 6118 次点击
    这是一个创建于 3028 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我觉得是对“编译原理”的理解和应用以及对“语义解释”的理解和应用。工程上的知识一边用就能一边学,但对这两块的知识不专门学习很难通过工作掌握。大家有什么补充么?

    53 条回复    2016-01-18 09:43:20 +08:00
    dorentus
        1
    dorentus  
       2016-01-15 17:17:21 +08:00
    但是我听说大学本科也不是每个学校的计算机系都开《编译原理》课的啊
    zxgngl
        2
    zxgngl  
    OP
       2016-01-15 17:35:29 +08:00
    @dorentus [小吃惊]
    zxgngl
        3
    zxgngl  
    OP
       2016-01-15 17:50:17 +08:00
    还有“计算原理”和“形式语言”。
    Lpl
        4
    Lpl  
       2016-01-15 17:54:18 +08:00 via Android
    数据结构,操作系统和计算机网络以及四年的编程经验
    neoblackcap
        5
    neoblackcap  
       2016-01-15 18:06:01 +08:00   ❤️ 1
    区别基本上就是基础理论知识,这些其实自学也是可以,关键是你还能花多少时间在算法, 数据库理论,计算机网络,操作系统,编译原理外加配套的数学知识包括但不限于离散数学,线性代数,微积分,概率论。
    Bryan0Z
        6
    Bryan0Z  
       2016-01-15 18:48:41 +08:00 via Android
    @neoblackcap 噗…都是目前我学的感觉编程用不到的东西
    paradoxs
        7
    paradoxs  
       2016-01-15 18:51:57 +08:00
    不到一定高度,是区别不出来的。
    看看人家中本聪的区块链。。。。
    vanxining
        8
    vanxining  
       2016-01-15 18:54:37 +08:00 via Android
    对于普通码农来说没有太大区别。
    但要想往上走,还是要头脑聪明。这就是码农与计算机科学家的区别了。
    一间好的大学,学生的平均水平确实会高很多,包括但不限于学习能力、理解能力、泛化能力、表达能力。
    wee
        9
    wee  
       2016-01-15 18:56:45 +08:00
    然而我想说的是半道出家的程序员与科班出身相比也有很大的优势。多学科模型,相比单纯的工程性思维模式优秀很多。 Don't learn to code. Learn to think.
    em70
        10
    em70  
       2016-01-15 18:59:12 +08:00
    说得计算机专业的老师都教得很好一样,除了照本宣科,他们还会什么

    出身无所谓,自学能力才是程序员最重要的素质
    vanxining
        11
    vanxining  
       2016-01-15 19:03:02 +08:00 via Android
    看看雷军、史玉柱、周鸿祎、刘强东、张朝阳、马化腾、李彦宏这些人的学历便知道了。(不全是计算机,但都是高学历)
    vanxining
        12
    vanxining  
       2016-01-15 19:03:43 +08:00 via Android
    理解错了!回复又删不了。
    easing
        13
    easing  
       2016-01-15 20:04:40 +08:00 via Android
    一定知识量上,区别的是应用这些知识的能力。半道出身的完全可以比科班的 nb 。像编译原理这种很多大学的老师教了跟没教一样。
    movtoy
        14
    movtoy  
       2016-01-15 20:08:47 +08:00
    经过考试,所以学的扎实!!
    jukka
        15
    jukka  
       2016-01-15 20:13:54 +08:00
    视野。
    lecher
        16
    lecher  
       2016-01-15 20:23:43 +08:00
    最明显的两个差距
    1.兴趣
    2.理论基础
    能够半道出家做开发的人,在兴趣这个层面上,绝对是比和他水平相当的科班出身要强的,没有这个兴趣也啃不了编程这碗饭。毕竟很多人报大学之前并没有接触过开发,也不一定是了解计算机专业才报的,属于服从调剂的大多数。
    半道出家意味着理论基础要自己补,所以说理论基础和水平相当的科班人员相比,差一点是可以理解的,工科转开发这个在专业课上面还稍微靠点边,其它专业的就未必能有计算机专业那么好的课程体系去学习理论,全靠自己业余兴趣补了。

    实际上我觉得半路出家转做计算机的,和同样水平的科班人员比,要更好一些。毕竟人家连理论都没有补齐就能和系统学习的人一样,说明兴趣是比较强的。科班人员能做的应该更多,结果反而被别人非科班的赶上了,只能说自己没有别人勤奋了。至于上限什么的,科班出身理论基础好的理所应当走得更远,非科班出身的开发人员追起来会吃力一些。没被追上还好,要是被追上了,那可真是实实在在的打脸。
    mrsatangel
        17
    mrsatangel  
       2016-01-15 20:38:38 +08:00 via iPhone   ❤️ 1
    说出身无所谓的应该没有接受过清北科交的计算机本科教育吧。。
    Taojun0714
        18
    Taojun0714  
       2016-01-15 20:43:06 +08:00   ❤️ 3
    半路出家得分好几种: 嵌入式转的,数学物理系转的,金融转的,自动化转的,强点转的,还有纯文科转的,当然还有三本去北大青鸟转的,基础完全不一样,岂能一概而论
    xiaoshenke
        19
    xiaoshenke  
       2016-01-15 21:43:17 +08:00 via Android
    最大的差距是半路出家的难以定位自己在行业的水平以及掌握的资源上 其实单论技术 不管什么编译原理什么三大浪漫 都是可以自学的(本人半路出家 编译原理其实并不难
    cheng12308
        20
    cheng12308  
       2016-01-15 21:45:42 +08:00
    觉得其实是学习能力和社会认可度的问题吧,要说就单哪门科目,自学也可以。
    onice
        21
    onice  
       2016-01-15 22:35:32 +08:00
    科班理论强点。操作系统,数据结构,数据库系统,计算机网络这些东西。
    uxstone
        22
    uxstone  
       2016-01-15 22:38:56 +08:00
    talk is cheap , show me the code
    ryd994
        23
    ryd994  
       2016-01-15 22:41:29 +08:00
    如果大学这么水,北大清华怎么还没倒闭?北大青鸟怎么没成世界第一学府?
    l33ch
        24
    l33ch  
       2016-01-15 22:44:19 +08:00 via iPhone
    半路出家的绝大多数不是做 web 就是做 app 。
    科班出身的,对业界各类发明人,创始人颇为崇拜,言必谈 TAOCP, CSAPP,SICP,龙虎书等等……
    noli
        25
    noli  
       2016-01-16 00:04:45 +08:00   ❤️ 2
    主要的差距在于眼界和自我完善的能力上。

    科班出身的,一般程度的由于时间积累,知道各种理论可以达到什么样的效果怎样的上限,可以解决怎样的问题,这些其实是身边的同学 /导师带来的。 非科班出身,光靠自己很难弥补这种差距,除非有一个适合的环境。

    另外一方面就是,遇到专业范围内不熟悉的领域,如何切入和查找相关资料方面,科班出身也会比较有优势,因为接触到的术语比较多,用好的术语和关键字来查找资料和建立自己的知识体系会容易很多。

    其他的,技巧啊技术什么的,都是看个人。
    hqs123
        26
    hqs123  
       2016-01-16 00:23:43 +08:00
    闻道有先后,术业有专攻。
    youdu
        27
    youdu  
       2016-01-16 00:28:12 +08:00
    @ryd994 天真。教育行业并不是市场化的,如果真正市场化,北大清华绝对可能倒闭。
    cgcs
        28
    cgcs  
       2016-01-16 00:37:05 +08:00   ❤️ 3
    在 V2EX 鄙视学历似乎是政治正确
    youxiachai
        29
    youxiachai  
       2016-01-16 01:01:24 +08:00   ❤️ 1
    专业计算机。。也分很多的好不好。。。。。。

    只能说,专业计算机的天花板比半路出身的高

    然而,对于大部分离图灵奖还差不知道多少的普通人而言

    这个讨论完全没意义。。。。

    再简单来说,能放这个帖的。。肯定没见过真正的科学家。。
    ryd994
        30
    ryd994  
       2016-01-16 01:18:38 +08:00
    @youdu 要说市场化的话,美国的私立大学可比公立大学牛多了……
    neoblackcap
        31
    neoblackcap  
       2016-01-16 02:53:58 +08:00
    @Bryan0Z 用心学,以后肯定会有用的。你若是写个 babel 的前端工具,会编译原理也是极好的。
    lightening
        32
    lightening  
       2016-01-16 05:33:06 +08:00
    编译原理和算法吧,我不是科班出身的,一直觉得这方面很欠缺。
    Nixus
        33
    Nixus  
       2016-01-16 06:19:35 +08:00
    @ryd994 是否可以这样理解:美国公立大学是普及教育,私立大学是培养精英?


    另外,后悔上学的时候,没有学好数据结构和算法,现在挺后悔的!所以一直都有再报一个计算机科学与技术的本科,补一补这方面的知识,大家觉得呢?这方面有什么需要注意的坑?自考的话,需要注意什么?


    最后,非常感谢楼主能开这个帖子!
    df4VW
        34
    df4VW  
       2016-01-16 06:23:07 +08:00
    是的,我也觉得我美帝的计算机硕士白读了,没屌用,还不如培训下找个 ios 工作
    ryd994
        35
    ryd994  
       2016-01-16 06:26:49 +08:00   ❤️ 1
    @Nixus 并不完全,公立教育也有很好的。私立大学也有人很多的。主要是公里的拿公家钱,私立的不拿,拿钱的手软
    不过私立大学确实资源丰富,毕竟 VIP mode
    就像游戏,付费玩家怎么着体验总不能比免费玩家差吧……

    已经出来的就不要再回去了吧……工作经验也是很值钱的……
    huage
        36
    huage  
       2016-01-16 08:11:39 +08:00
    重要事情说一次!

    差距是学习形成的,那么这个差距也可以通过学习来缩小,甚至超越!

    并不存在你读了本科、硕士、博士,你就在理论及知识体系上就比没有接受过大学教育的高,这只是表示:可能你花在这方面的时间,暂时比较人家多,记住是暂时!

    如果你遇到一个专科生、一个高中生,甚至一个实初中生,你在他面前只是渣渣的时候,你就会感叹钱白花了!
    fmcand
        37
    fmcand  
       2016-01-16 09:50:17 +08:00
    所谓计算机科学家和工程师,中国的大学以培养科学家的形式再交学生,然而大部分学生就是为了成为工程师,所以有时候自学反而更加成熟点,代码是写出来的不是说出来的
    miclushine
        38
    miclushine  
       2016-01-16 09:57:29 +08:00
    其实很多科班的都不愿承认,以绝大多数科班出来的人的计算机修养,还没有高到能跟自学的人谈差距的地步。科班只是众多专业的一种罢了,兴趣所在的地方,才会愿意去学,才会学的深入。

    码农的核心竞争力是自学能力。
    CheungKe
        39
    CheungKe  
       2016-01-16 10:01:22 +08:00
    @youdu 如果够有钱,你可以把清华的所有老师买下来,再去免费的让一些贫苦学生读书。慢慢的你的学校或者公司,肯定比清华强。
    kobe1941
        40
    kobe1941  
       2016-01-16 10:05:26 +08:00
    知识结构的问题,计算机科班出身的程序员好好学的话,基础知识比较扎实,编译原理,操作系统,算法和数据结构,等等这些人家不一定精通,但是他如果要深入研究会相对容易一些,半路出身的孩子一看编译原理就歇菜了,我就是酱紫 o(╯□╰)o
    CheungKe
        41
    CheungKe  
       2016-01-16 10:06:39 +08:00
    @zxgngl 差距就在起跑线上,别人比你接触的时间长点。
    上面清华的那个,清华的计算机水平在国内很强,但是同样是清华的数学专业学生转去学计算机,差距会在哪。
    shyling
        42
    shyling  
       2016-01-16 10:09:18 +08:00
    不觉得专业的和半道出家太大了么?有的人说团结力量大,有人的说 3 个和尚没水吃。。都要看人的情况具体分析的= =
    qibing2000
        43
    qibing2000  
       2016-01-16 10:39:12 +08:00 via iPhone
    要讨论这个问题得限定时间,一到十年,十到二十年,二十年以上。
    个人愚见,十年以上基本就没有差别了,差别体现在个人毅力和聪明才智上,必须承认有些人就是很聪明,即使非科班出身,待他意识到要补这些知识时也可轻易追赶上。
    jhaohai
        44
    jhaohai  
       2016-01-16 10:47:12 +08:00 via iPhone
    真心觉得编译原理是码农的易筋经,这个搞不通的话永远只能是低级码农
    Honwhy
        45
    Honwhy  
       2016-01-16 10:53:08 +08:00
    @wee 这点我赞同,想法很关键!有了好的想法就不愁代码实现不了。
    Honwhy
        46
    Honwhy  
       2016-01-16 10:57:45 +08:00
    如果说科班出身的人天花板更高一些
    非专业的更低一些
    但是在大家都没有触顶的情况下,还真的不知道谁高谁低
    ----
    个例的比较是没有意义的,总体上来看,培训一年半年的,当然不如培训四年(大学四年)的效果好呀
    开个玩笑!
    pengbo37877
        47
    pengbo37877  
       2016-01-16 11:18:33 +08:00   ❤️ 1
    《计算机组成原理》这样的知识,不是科班出身的懂的人很少
    wizardforcel
        48
    wizardforcel  
       2016-01-16 14:50:22 +08:00 via Android
    绝大多数高校开的编译课跟本不涉及到 lab ,学了跟没学一样。

    @pengbo37877 懂汇编的人还是挺多的。 pipeline 那块,隔壁电子系比搞计算机的人懂得多。
    Alchemistxxd
        49
    Alchemistxxd  
       2016-01-16 14:57:23 +08:00
    如果是普通的工程师,只要自我驱动比较好感觉没什么区别,上升到一定高度的硕博研发,就明显了,当然我觉得大部分普通人并达不到这个层次。而且要分从什么转的,比如 EE 转 CS 和文科转 CS 这两者根本没法比。
    wizardforcel
        50
    wizardforcel  
       2016-01-16 22:04:58 +08:00 via Android
    @zxgngl plt 就别想了,没几个科班的人愿意选这个方向的。一是小众,二是科研一条路走到黑,选它的一定是真爱。
    Neveroldmilk
        51
    Neveroldmilk  
       2016-01-17 10:39:27 +08:00
    要看人,天才和渣渣的战力差别远超过专业背景的影响。
    louk78
        52
    louk78  
       2016-01-17 17:31:49 +08:00
    真心觉得编译原理是码农的易筋经,这个搞不通的话永远只能是低级码农
    pengbo37877
        53
    pengbo37877  
       2016-01-18 09:43:20 +08:00
    @wizardforcel 有道理,这东西确实要和实验结合起来,回想自己在大学的课程,最有收获的就是《组成原理》的实验,感觉做了这个实验就可以从根上了解计算机到底是什么了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2345 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 03:01 · PVG 11:01 · LAX 20:01 · JFK 23:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.