Tim Berners-Lee: Don't just study stuff, build stuff

栏目: IT技术 · 发布时间: 4年前

内容简介:Extending on theabout page, I want to emphasise even more the importance of creating personal projects, having independent work and going far beyond what a degree might teach you. Just so that we are on the same page, I will not take into consideration the

Extending on theabout page, I want to emphasise even more the importance of creating personal projects, having independent work and going far beyond what a degree might teach you. Just so that we are on the same page, I will not take into consideration the reason for choosing a Computer Science degree, nor the money aspect of doing a degree, but rather I will assume only that you are doing a Computer Science degree and my focus will be on how to make the most out of it.

The computer world has evolved a lot in 50 years and computers, with everything they entail, are nowadays easy to use; take for example GUIs for art designing or forums for programming erros. That is why the Computer Science degrees also adapted and stopped teaching irrelevant topics, such as Fortran (an old programming language) or MS-DOS (an outdated operating system). The currently taught topics make use of the most significant advantacements in technology and free students from some of those old pains. Nevertheless, degrees seem to lack lectures on fundamental skills in programming and in dealing with machines.

Of course, there are important things the degrees do teach, and those are mainly related to basic concepts of algorithms and data structures, architecture, databases and networks. They also teach compilers and security, so one gets a good grasp of various relevant fields and can definitely do more with computers than simply plugging together a couple of cables. However, that is the apparent safety net we do not want to find ourselves in, at least for two reasons: first , this knowledge may not even be useful in an actual job, as all the trivia you know is general and possibly long disregarded in the industry, and second , graduates from Physics or Engineering are competing with you for all the tech jobs, because they require the same amount of job training, while potentially having a stronger analytical side.

So how do you fight against the two problems mentioned above? How do you use the advantage you have by having done a Computer Science degree when going into Software Engineering? Afer all, you must have an advantage, in the same way Medical students have an easier time becoming medics and Law students have an easier time becoming lawyers. What do you need to do to make sure that the Computer Science degree prepares you for a career in Computer Science?

******

A couple of weeks ago I attended an interview with Tim Berners-Lee. Besides finding out about crucial decisions he has made in his life and in developing the internet of today, I also gained a simple piece of advice that could not have been better targetted for this whole blog:

“Build stuff. Don’t just study stuff, build stuff!”

It is true that you need to study for your History of Programming Languages course in order to get a good grade and finish your degree successfully, but that does not mean you should devote your whole time for that. Similar to everyone else, a programmer gets experience practising; in this case that is programming. If you want to be a software engineer and you do not have any code to present in an interview, you can not call yourself a programmer.

There are a lot of resources out there; we have reached the century when people pursue free online degrees and end up with the same level of expertise as any fresh grad. More than that, it is even possible to skip the degrees altogether and land any job based on a portofolio. Personally, I would not be able to achieve that due to my lack of motivation, and that is why I have chosen a degree - I have decided to pay for someone else to help me learn things. Yet it turns out that all the money in the world can not buy me a portofolio builder. It is still up to me to bite the bullet and start practising, as that is the way to the top.

While the Computer Science degree teaches you how to teach yourself, that is not enough if you want to become an expert. You have to apply that teaching and test that theory in practice. The group projects organised by the uni have always been a joke, thus it is time to work on a serious project by yourself. Finally, I would like to encourage you to think about how you treat your degree, and even more realistically, the beginning of your career. Do the problem sheets and the programming exercises, but understand that those are only a baseline and the real world is more than just a textbook. Go to hackathons, get involved in open source and stay tuned!

If you feel like I missed anything or you want to continue the discussion, leave a comment onFacebook or Twitter or send a direct email at [email protected] .

References:

  1. https://github.com/ossu/computer-science – Free online equivalent of a Computer Science degree.
  2. https://www.reddit.com/r/learnprogramming/wiki/faq – FAQ on basically everything Computer Science related.
  3. https://www.reddit.com/r/compsci/comments/44u70c/how_hard_is_computer_science/ – On how to go about a Computer Science degree and new technologies.
  4. https://joshwcomeau.com/career/no-cs-degree-required/ – On having no Computer Science degree.
  5. https://insights.dice.com/2012/04/02/five-realities-to-consider-for-a-computer-science-degree/ – 2012-2013 comments on reasons against a Computer Science degree.
  6. https://www.reddit.com/r/learnprogramming/comments/fjm2q0/becoming_a_software_dev_without_a_cs_degree/ – The discussion linked to the above.
  7. https://www.cio.com/article/3293010/10-reasons-to-ignore-computer-science-degrees.html – On what to be aware of during a Computer Science degree.
  8. https://www.reddit.com/r/programming/comments/ajx7f/cheating_in_computer_science_courses_what_have/ – 2009-2010 comments on misunderstanding the Computer Science degree.
  9. https://www.reddit.com/r/compsci/comments/emcu9/cheating_in_computer_science/ – 2010-2011 comments on misunderstanding the Computer Science degree.
  10. https://danwang.co/why-so-few-computer-science-majors/ – On the market of Computer Science degrees.
  11. https://mystudentvoices.com/on-theory-vs-practice-and-having-an-end-goal-315792941454 – On just in time learning : how to learn exactly what and when you need to.
  12. https://www.quora.com/What-is-the-difference-between-Computer-science-and-Informatics-Practice – On the differences between Computer Science and Informatics; on software engineering versus user friendliness.
  13. https://danwang.co/college-girardian-terror/ – On how to approach college; article gets philosophical.

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据挖掘导论

数据挖掘导论

Pang-Ning Tan、Michael Steinbach、Vipin Kumar / 范明、范宏建 / 人民邮电出版社 / 2010-12-10 / 69.00元

本书全面介绍了数据挖掘,涵盖了五个主题:数据、分类、关联分析、聚类和异常检测。除异常检测外,每个主题都有两章。前一章涵盖基本概念、代表性算法和评估技术,而后一章讨论高级概念和算法。这样读者在透彻地理解数据挖掘的基础的同时,还能够了解更多重要的高级主题。 本书是明尼苏达大学和密歇根州立大学数据挖掘课程的教材,由于独具特色,正式出版之前就已经被斯坦福大学、得克萨斯大学奥斯汀分校等众多名校采用。 ......一起来看看 《数据挖掘导论》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具