美文网首页做不到,别轻易说GetReading Collection
工程师的缺德行为:叫朋友去学C/C++

工程师的缺德行为:叫朋友去学C/C++

作者: 逝去的荣光 | 来源:发表于2015-02-22 09:16 被阅读1827次

    常常看到非信息背景的朋友问工程师:我最近想学写程序!该怎么入门?

    通常他们会得到很多糟糕的答案:「先了解演算法」、「先弄懂资料结构」、「先认识物件导向」。

    这些答案都够糟糕了,但最糟糕的答案莫过于「从C/C++开始入门」。

    (我看过最扯的建议是「去找C++ Primer Plus来看」。这本砖头书绝对不适合一般人自学)

    照着以上建议去做的朋友,大概会在两周之内就得到满满的挫折感,然后认为自己「果然不适合写程序」,也不好意思再去跟工程师讲自己的状况,最终再也不想踏入programming领域。

    这些建议真是害人不浅。

    信息相关科系,是因为要接续到之后的资料结构、作业系统,所以大一从C/C++开始入门会比较连贯、才能完整学一次计算机的基本知识。

    而这些想学coding的朋友,大部分只是这两种情况:

    A.最近觉得写网站好酷,想试试看自己能否写个blog、或是个人网页

    B.对工作上某些人工流程不满意,想试试看自己能否学写程序、用电脑解决问题

    他们的愿望仅此而已,并没有打算成为计算机专家、黑客,实在没有必要从C/C++入门。

    就像点火一样,先从零星的火苗开始、小心保护不要让它熄灭,接着慢慢加东西进去、让火焰慢慢成为大火。学习,除了知识/技能之外,培养成就感与热情也是很重要的。而从C/C++入门,会让正要萌芽的小火苗直接消灭殆尽。

    我对程序设计入门的建议很简单。

    如果你是状况A,去学PHP&MySQL,先弄一个丑丑网页出来就可以了。

    如果你是状况B,去学Python,先弄一个能执行、能显示几个文字的程序就可以了。

    一般人想到程序通常只想到「图形化界面」,如果能写出一个有界面的小玩意会非常有成就感。

    那样的话,学PHP来写个网站、直接就是界面,绝对有趣;学Python很快就能把玩内建的tkinter函式库、做出按钮做出选单,乐趣无穷。

    话虽如此,你到市面上找PHP或是Python的书,大概还是会落得「满满的挫折感然后正式放弃」的下场。

    别担心,这不是你的错,是那些书写得不够好。没有一本是真正的程序设计入门书。

    那些书只想着给你知识/技能,没有想到要培养你的成就感、保护你的热情。

    要找书的话,我只建议两本。

    状况A,去找欧莱礼的「深入浅出PHP与MySQL」(Head First PHP & MySQL)。

    状况B,去找欧莱礼的「深入浅出程序设计」(Head First Programming)。

    国外的在线开放课程也可以考虑。

    Coursera的

    人人都懂的编程课(Python)

    (https://www.coursera.org/course/pythonlearn)

    学习编程:基础

    (https://www.coursera.org/course/programming1)

    麻省理工的

    Introduction to Computer Science and Programming

    (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/)

    A Gentle Introduction to Programming Using Python

    (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-189-a-gentle-introduction-to-programming-using-python-january-iap-2011/)

    全部都是用Python入门。

    我对程序设计入门的建议就只有这样。你不需要知道什么演算法、资料结构、物件导向。

    什么狗屁名词都不需要知道。那大多只是工程师下意识地想让你觉得他们很厉害而已。

    你只要想办法写出一个会动的程序就可以了。所有伟大的东西都是这样开始的。

    Q1:但是状况A还要面对HTML/CSS耶..好像很难?

    每个技能深入下去没有不难的。但是HTML/CSS要入门实在不怎么难。

    就从随便写几个表单或按钮、弄个丑丑的静态网页出来开始吧。

    Q2:我是工程师,我能怎么帮助朋友?

    帮他们搞定环境设定吧!帮他们把最基础却又最给新手挫折感的环境给设定好!让他们能用记事本跟几个小工具就开始写code!给他们成就感!

    Q3:那写手机app呢?你怎么没提到?

    我觉得手机app还满难入门的,实在给不出有建设性的建议。不知道。不过,上面的连结也许有一些手机相关课程,不妨试试?

    文章来自轉個彎日誌

    相关文章

      网友评论

      • Lmmmmbbb:文中的"工程师“到底指什么。。。
      • 72990febb415: :flushed: 我就是这样建议小伙伴去学C++的 WTF
      • 李建邦Carl:python容易上手容易理解 比较时候新手,但是有一定基础后还是应该回来学C和C+ 这样不仅对编程语言有更深入的了解 而且还可以了解一些操作系统、字符集之类的基础知识
      • 蛋挞君:刚看到一篇推荐学c的。。
      • HJo3hc:你是不是忘记考虑硬件工程师了~
      • 逝去的荣光:@淡雨灰祈 C语言现在的世界排名是第二名,仅次于Go语言。所以说,学好C语言也是很有前途的。
      • f7555524225e:其实都是先从简单开始,然后慢慢深入。一开始要能体验成功,然后才有动力进一步学习。
      • 1adf9355d70a:我开始也是做做网页写写脚本。等我学了C和C++之后还有汇编,才明白什么才是真正的编程。所以我担心的是,很多人因为畏难,认为学C/C++没多少实际用途,到后面真的很难发展。
      • 逝去的荣光:@二兔 。。。此乃转发。。。来源在文章最后面。。。。多谢错爱,多谢错爱。
      • bd08292d23ad:请教楼主一个问题,本人做了一个excel计算模型,现在想做成一个可执行程序,可以输入相关数据进行计算,有对话界面的,python是否能够实现?谢谢!

      本文标题:工程师的缺德行为:叫朋友去学C/C++

      本文链接:https://www.haomeiwen.com/subject/fuhuxttx.html