新技术论坛
搜索
查看: 811|回复: 1
打印 上一主题 下一主题

学编程一定要上大学?美国一半码农都没有计算机学位

[复制链接]
  • TA的每日心情

    2016-7-1 19:50
  • 签到天数: 81 天

    连续签到: 1 天

    [LV.6]常住居民II

    扫一扫,手机访问本帖
    楼主
    跳转到指定楼层
    发表于 2016-5-26 09:09:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        来自:腾讯科技

        TNW中文站 4月24日报道

        链接:http://tech.qq.com/a/20160424/027184.htm

        英文原文:http://thenextweb.com/insider/2016/04/23/dont-need-go-college-anymore-programmer/


    其中一个重要原因是,速成的在线课程和培训班正在兴起。你可以在实践中学习,而不必等待几年时间才能毕业。




    去年,美国的程序员问答网站Stack Overflow曾向用户提问,他们是否有计算机

    科学专业的学位。在这项“2015年开发者调查”中,26086名程序员中有近一半回答称,他们没有计算机科学学位。


    这是否意味着,不需要大学学位就可以成为程序员?简而言之,答案是肯定的。不过,对非专业出身的人士来说,程序员之路要相对困难。


    人力资源机构Robert Half Technology高级总监约翰·里德(John Reed)表示,许多知名科技公司用大学学历作为门槛来过滤求职者简历。例如,谷歌(微博)不会面试没有计算机科学学位的入门级工程师。


    如果情况如此,那么为何许多程序员没有计算机科学学位?一个重要的外部因素是大学学费正日益高涨。例如在美国,最便宜的公立两年制大学每年学费平均为11438美元,而最昂贵的选择,即私立的非盈利四年制大学每年学费平均为43921美元。这些费用中还没有包括生活费。


    其他因素也在造成影响。一方面,速成的在线课程和培训班正在兴起。你可以在实践中学习,而不必等待几年时间才能毕业。


    因此,如果你没有计算机学位,同时又决定成为程序员,那么以下是几点建议:


    1、不要闭门造车


    请找个地方,与其他程序员一同工作,而无论你们是否从事同一个项目。

    独自一人编程所面临的最严重挑战在于,关于你不清楚的细节,你将毫无头绪。只有将自己的代码与他人的代码进行比较,你才能知道哪里出了问题。

    IEEE的巴里·博姆(Barry Boehm)的一项研究显示,无论是否采用结对编程模式,与他人一同进行代码评审相对于独立工作将可以多发现60%的代码错误。

    众创空间或许可以给你提供这样的场所。在这里,你可以与有着类似追求的人一同工作。


    2、良好的关系网比优秀的编程能力更重要


    闭门造车还会带来一个坏处,这就是你无法在职业生涯初期建立自己的关系网。这样的关系网能在日后带来巨大帮助。


    通过这样的关系,其他程序员可以评估你的技能,帮你逐步提高自己的能力。


    3、自学大学计算机专业的内容


    云文件共享创业公司Egnyte高级产品总监格雷格·诺斯塔特(Greg Neustaetter)承认,如果没有大学计算机专业的背景,那么将会出现一些严重的知识缺失。


    这种学习的好处在于,如果你掌握了6到8本书的基本知识,那么就会成为一名基本功扎实的程序员。推荐的学科包括离散数学的应用、设计模式或J2EE设计模式,以及算法设计等。


    如果你参加在线课程或培训班,那么建议是从头开始学习,除非你有过一定的编程经验,或是对技术有着天生的直觉。


    自顶向下的模式“将程序员置于应用或框架中,鼓励他们将自己的知识拼接在其中”。而自底向上的模式则是“从基础开始,逐步培养能力”。


    对入门者来说,自底向上的方式值得推荐。因为这将厘清许多概念。


    例如,关于Ruby on Rails的教程就存在不清晰的概念。这本书的第一章就提到了MVC模型,但却没有介绍一些基本概念,例如面向对象的编程。


    4、持续练习


    无论是否有学位,多参与项目不仅对未来的职业生涯发展很重要,也是帮你积累更多经验的有效方式。


    如果你不打算拿到计算机科学学位,那么这一点尤为重要。这些项目将成为你的主要经历,可以展示你的能力。一种很好的起步方式是开发移动应用。这使你方便地展示最终成果,并从用户那里直接获得反馈。


    如果你考虑开发移动应用,那么建议是学习iOS平台的Swift或Objective C,Android平台的Java,以及Windows Phone平台的C#、VB或JavaScript。

    此外,你也可以使用Phonegap和Titanium等技术,开发运行在所有三大平台上的应用。这些技术基于HTML、CSS和JavaScript,开发的应用可以在各处运行。


    你还可以通过GitHub参与开源项目。


    5、找一个副业


    最开始从事编程时,你可能无法获得足够的收入去保障生活。即使你关于某款应用的想法价值2万美元,但由于你没有成功经历,因此很少有人会相信。换句话说,你需要找个副业去谋生,而这样的副业最好也能有助于你培养能力。


    根据编程水平的不同,你可以参与创业公司,从事质量保障工作,或是从事自由职业。


    创业公司通常愿意冒险,雇佣一些没有太多经验的人士。不过对于“足够好”的程序员,它们有自己的标准。尽管你不一定需要开发出复杂的、可维护的代码,但至少需要证明,你开发的东西能被用起来。


    如果你做不到这一点,那么可以从事质量保障的工作,这能帮你加强技术能力。质量保障的工作内容是找出产品中的问题,并建议如何修改。这也是程序员解决问题时的核心基础。从事这类工作将有助于增强你对技术能力的自信心,而大学学位对这类工作而言并非必需的。


    最后一个选择是自由职业,只要职业能满足你的生活需求。类似Upwork的网站列举了许多与技术相关的职位,包括网页开发、移动开发,以及设计和营销等。
  • TA的每日心情
    难过
    2016-9-23 17:21
  • 签到天数: 28 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    沙发
    发表于 2016-6-2 14:58:31 | 只看该作者
    咱们这不是国外,你首先要有往上走的踏板
    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则

    手机版|Archiver|开发者俱乐部 ( ICP/ISP证:辽B-2-4-20110106号 IDC证:辽B-1-2-20070003号 )

    GMT+8, 2024-12-23 20:20 , Processed in 0.122968 second(s), 17 queries .

    X+ Open Developer Network (xodn.com)

    © 2009-2017 沈阳讯网网络科技有限公司

    快速回复 返回顶部 返回列表