搜索
 找回密码
 限时注册
发新帖

写给即将学习编程的大学新生

时间:2015-8-4 18:34 2 2238 | 复制链接 |

马上注册,结交更多Acer基友,欣赏海量Acer专属模特美图,免费获取最新Acer潮酷新品试用,Get更多发烧级玩家技能,享受更多网站功能与会员福利,还有定期好礼大奖免费送,会员专属优惠购机。QQ群号:113958420

您需要 登录 才可以下载或查看,没有帐号?限时注册

x
95ad5ad4b5b54d44fe7fc42ed1cfc445.jpg


写这篇文章,是由于我想和即将步入大学学习编程的大学新生谈谈关于编程的事,因为,也许你需要一些建议,来步入这一阶段。

有的人觉得我很厉害,有的人觉得我很装逼,天天到处装。至于那些说我装逼的人,我只想说,装逼也需要能力来掩饰。

编程是一件很有趣的事情,学会编程就像变成魔术师,你可以创造任何你想创造的东西。在我出生到现在的20多年里,除了游戏,没有比编程更吸引我的活动。就像 Zed Shaw 所说的,『编程作为一项智力活动,是唯一一种能让你创建交互式艺术的艺术形式。你可以创建项目让别人使用,而且你可以间接地和使用者沟通。没有其他的艺术形式能做到如此程度的交互性。电影领着观众走向一个方向,绘画是不会动的。而代码却是双向互动的。』

一些困惑

但是当你开始接触(我所在的)大学的计算机相关课程,你会发现,所谓的编程学习,无非是老师教一章内容,要求你用学到的语法去解一些数学题。于是很多人选择放弃,认为编程乏味无趣,用很长的课时学习,却只能写出简单的四则运算,或者解数学题。参加蓝桥杯、ACM这类算法比赛。然而这并非编程的全部,因为这恰恰能生动地表明编程语言只不过是一种工具,你可以用它来解数学题,也能做其它更有趣、更实用的程序。

在(我所在的)大学,计算机的第一门编程课是教c语言。一些关系要好的学弟学妹们会来问我,c语言到底能干嘛?学c语言有什么用?【我学 C 学了一段时间,为什么我还是感觉很没用?】我是这样回答他们的:

     你学 C 学了一段时间感觉没有用处并非你个人的问题,我无法跟你解释为什么,不过我可以告诉你的是,Linus Torvalds 用 C 写了 Linux 和 Git; Antirez 用 C 写了数据库 Redis. 你可能连 Git 是什么都不知道,如何用 C 写出这种水平的程序呢?

所以,当你学习c语言基础之后进入困惑期时,不要因为用它写不出实用的程序而止步不前,而应该开始接触其它的编程语言。当你所学和所做的东西越来越多的时候,你慢慢就会发现,编程语言只不过是一种工具,重要的在于你想做什么,用什么语言合适去做(甩图片、BIGGER校园开源社区(采用开源软件搭的)、陆兴文个人博客(使用WordPress搭的)、ACM函数模板...他们就是很好的列子。) 你之所以感觉 C没用,是因为你暂时还没有足够的眼界和能力去使用他去进行创造。

应该去学什么?我建议你学习自己喜欢的东西,这样你才有兴趣去学习。如果你不知道什么是你喜欢的,但是你又想学好编程,我的建议是一门严谨的强类型语言(如 Java)和一门愉快的脚本语言(如 JavaScript, Ruby, Python)。当然了,如果你想学一些能立竿见影的技能,你也可以写写前端(HTML, CSS)。如果你在做项目中遇到问题,不知道采用什么语言去编写程式代码比较方便,你可以和我聊聊,或许我能给你一些建议。


So, How?

对于应该如何去学习,我不打算在这里论述,我只想列出一些有用的建议:

无论你要学什么,你读的第一篇文章应该是《提问的智慧》

用 Google 搜索技术相关的信息

购买付费可靠的科学上网服务,不要吝啬一顿饭的钱。

不要害怕英文,英文非常重要。

几乎所有最新的技术在刚出来的时候只有英文文档,优质的 Tutorial 大多数也是英文的。

参与一些质量高的社区,关注一些值得关注的人。
这一点很重要。学校所教的内容是陈旧、过时的(虽然这也许不是学校的错),你必须和社区保持同步,不断接触和学习新的技术。

国内的 V2EX 和国外的 Hackernews 都是不错的社区,或者在我的BIGGER校园开源社区上混迹。大家一起把BIGGER弄好也是一件不错的事吧。


一些现状

你并不能指望大学的课程或者大学老师能给你带来什么,一切都应该靠你自己。无论在多优秀或者多差劲的学校,学校本身能影响你的是辅助性的,而不是决定性的。在我的学校,几乎都在打游戏和应付考试,据我所知,即使是重点大学,这样的学生也大有人在,我渐渐明白,『你今后人生的艰难,恰恰不是因为你没能考上一个满意的学校,而是在这所学校里,在一个能让自己自由充分成长的黄金四年里,把自己给荒废了』。

为未来做准备

如果你以后有意从事编程的相关工作,你应该要知道,在找工作时和其它竞争者拉开差距的,并非你从哪里毕业,在学校当什么干部,而是你有足够的能力,并且能清楚地让别人看到你的能力。

让别人看到你能力的方法是开源社区和博客,所以我建议你在学习的过程中,多为开源做贡献,甚至可以维护一个自己的开源项目。另外还可以把自己的所学记录和总结到独立博客中。一个好的 Github Account 和好的独立博客是一份最好的简历。也许你也只有在大学这自由的四年才能有时间做这两件事情。

最后

我在长江师范学院读书已经有两年了,这两年里我遇到过许多对现在对未来感到迷茫的朋友,他们对教育抱有希望,对知识怀有渴望。我曾经试图做一些事情去改变现状,但是效果都不大,该混日子的还是继续混日子,到毕业后才开始抱怨就业难。我呸,互联网行业都缺人缺到什么地步了,你跟我说就业难?

不过,只要我还没有毕业,欢迎长江师范学院的小伙伴们到我寝室找我。


如果你看完这篇文章,还有问题可以联系我的 Email: [email protected]  或者到BIGGER上一起讨论:http://www.biggerforum.org ,只要你读过《提问的智慧》,问的问题经过自己思考,我都会尽快地详细地回复。

我的想法是你最好到BIGGER上来提问,大家一起解决问题。

写完这篇文章,我已经打算把我们学校和专业相关的qq群该屏蔽的屏蔽了(因为他们不懂,感兴趣的人自然会去搜索资料,不感兴趣的人,说得太多,他们只会觉得我太会装)。从此以后做一个低调的人,不在装逼。我也马上大三了,也打算把那些在qq群上装逼的时间用来学习,提升自己的逼格。

『你会编程,他们不会。这这他妈的酷。』




Acer Club 宏碁俱乐部 https://www.acer.org.cn

2回复

hjg

hjg 发表于 2016-9-9 12:56:55 | 显示全部楼层 | 举报
盼望多多传播经验供他人借鉴学习,哈哈
我自横刀向天笑,笑完我就去睡觉~~

hjg

hjg 发表于 2016-9-9 12:56:14 | 显示全部楼层 | 举报
非常棒
我自横刀向天笑,笑完我就去睡觉~~
您需要登录后才可以回帖 登录 | 限时注册

本版积分规则

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