返回課程列表
[COMP2021]不要enroll!不要enroll!不要enroll!
課程時間:2017年春季
授課教授:LI Xin
这门课会讲什么:
1. 怎么用linux操作系统的命令行界面(shell),并用这种语言写出蹩脚的脚本。
2. perl5,一门年纪比我大,已经濒临死亡的语言。
3. (一丁点)PHP。
这门课有什么特点:
1. 过时。
这门课从上世纪90年代开始开设,当时的perl5方兴未艾,前途光明。
然而现在除了特别需要用正则表达式的运维人员以外,基本不会有人碰perl5。
这门语言的很多package甚至都已经停止支持,google上都搜不到文档,让人看不到任何学它的理由。
PHP其实也是一门即将被时代抛在后面的技术,
反正如果让我选择学一些web programming,我肯定选择js全家桶,绝不会选择PHP。
2. 自学成才。
不要妄想通过听课学懂这门课。
李昕讲课还是一贯的没重点,总是让人产生“我好像都懂了又好像都没懂”的错觉(不过和科大其他不少老师比起来还是强得多)。
TA的tutorial也都像梦游一样,具有“把本来清楚的知识讲混乱”的奇妙力量。
自学成才或许才是正途。
但是如果要自学,我干嘛还要自学这些过时的知识呢?
3. TA脑子有坑。
shell script部分的作业是一个庞大的数据运算的问题,大意是从质数表里筛出一个满足一定条件的质数,要求一分钟内跑完。
作为从COMP 1021过来的python好青年,如果能用python的话几分钟这个问题就解决了。
然而这个shell script我写了整整两天。
lecture slide上面白纸黑字写着“Shell script不适合算数,适合处理文字”,出题的人视若无睹。
于是我们被迫用古老而别扭的语法写出来一个程序,居然半小时才跑的完。
大家毫无优化的头绪。
有个同学尝试了shell里面的一个做文字搜索的工具awk,用里面完全不同的类C语法实现了这个,才在一分钟内跑出来。
一个礼拜以后,李昕才在课上神秘地说,给你们一个小提示,
我教给你们的所有shell里面做数值运算的方法都会算一次开一个子进程,
所以根本不能靠我教你的那些东西,
可以试一试在lab上提了两句的**处理文本**用的awk。
惊不惊喜?意不意外?
能用awk,我为什么不用C++呢?我为什么不用python呢?
4. Project玄幻。
因为这门课基本没有prerequisite,enroll的从大一到大四都有,
有个学长project做了个选课工具,demo的时候说,我先把我上的课输进来试一试啊。
抬手就是COMP5712,一波带走。
project也是任大家自由发挥,只要至少50%是她讲的东西就行。
当时我们被这个“50%是课上学过的”蒙蔽了,后端上了PHP,mySQL和Apache,前端大胆一点地用了react,非常不情愿和别扭。
结果demo的时候一脸懵B。
有一组直接做了个react-native APP,配合Node.js和mongoDB,李昕和TA十分欣赏。
至于分。可以想见。
这个时候工具又不重要了?我们不就是来学工具的吗?
上这个课有什么意义:
1. 进一步磨灭你对科大授课的信心,促进你自学大业的发展。
2. 给你提供一个自学的理由。(但代价是什么呢?)
3. 向你介绍linux lab这个人间仙境。
那我要是真听了你的,不上这课,我怎么学这些东西:
1. linux:
《The Linux Command Line 中文版》
不要因为这是一本书而望而却步,这实在是我看过的翻译最好最易读的技术书了,至少感觉比那个鸟哥强多了。
在这里随便看,阅读体验超好:http://www.kancloud.cn/thinkphp/linux-command-line
如果你是Mac用户恭喜,如果你是Window用户请去知乎搜索“bash on windows”。
或者干脆安双系统。但是不要在选择distro上面花太多时间。初学就别强行Arch了。
2. perl: 你真的要学?
如果强行要学,建议阅读《两个半小时学会Perl》,讲的足够且全面,最重要的是**条理清晰**,这一点COMP2021死活也做不到。
网址:https://qntm.org/files/perl/perl_cn.html
3. 正则表达式
这个真的得学,请阅读《正则表达式30分钟入门教程》,反正上了这个课你也得看这个来学。
4. Web
如果你和我一样觉得要学比较现代的技术,建议直接js全家桶。
先学学HTML,CSS和JS,
然后前端选择学点react或者vue,后端node.js(或者python啊!)。
懂点web方便自己业余做些东西玩。
而且前有react-native后有electron,
我感觉未来的图形界面可能都会用web的方式来写(不负责任的揣测)。
所以有空学学着实有所裨益。
一些吐槽:
MSSSUG的IT秘书你好,
找一个现成的好使的富文本编辑器真的那么困难吗?
目前的这个实在是过于蛋疼。
疼从中来,不可断绝。
实在不行可以发动社区力量啊,
这样对广大cwiki作者太不负责了。
One more thing:
不要enroll!不要enroll!不要enroll!
[COMP2021]不要enroll!不要enroll!不要enroll!
課程時間:2017年春季
授課教授:LI Xin
这门课会讲什么:
1. 怎么用linux操作系统的命令行界面(shell),并用这种语言写出蹩脚的脚本。
2. perl5,一门年纪比我大,已经濒临死亡的语言。
3. (一丁点)PHP。
这门课有什么特点:
1. 过时。
这门课从上世纪90年代开始开设,当时的perl5方兴未艾,前途光明。
然而现在除了特别需要用正则表达式的运维人员以外,基本不会有人碰perl5。
这门语言的很多package甚至都已经停止支持,google上都搜不到文档,让人看不到任何学它的理由。
PHP其实也是一门即将被时代抛在后面的技术,
反正如果让我选择学一些web programming,我肯定选择js全家桶,绝不会选择PHP。
2. 自学成才。
不要妄想通过听课学懂这门课。
李昕讲课还是一贯的没重点,总是让人产生“我好像都懂了又好像都没懂”的错觉(不过和科大其他不少老师比起来还是强得多)。
TA的tutorial也都像梦游一样,具有“把本来清楚的知识讲混乱”的奇妙力量。
自学成才或许才是正途。
但是如果要自学,我干嘛还要自学这些过时的知识呢?
3. TA脑子有坑。
shell script部分的作业是一个庞大的数据运算的问题,大意是从质数表里筛出一个满足一定条件的质数,要求一分钟内跑完。
作为从COMP 1021过来的python好青年,如果能用python的话几分钟这个问题就解决了。
然而这个shell script我写了整整两天。
lecture slide上面白纸黑字写着“Shell script不适合算数,适合处理文字”,出题的人视若无睹。
于是我们被迫用古老而别扭的语法写出来一个程序,居然半小时才跑的完。
大家毫无优化的头绪。
有个同学尝试了shell里面的一个做文字搜索的工具awk,用里面完全不同的类C语法实现了这个,才在一分钟内跑出来。
一个礼拜以后,李昕才在课上神秘地说,给你们一个小提示,
我教给你们的所有shell里面做数值运算的方法都会算一次开一个子进程,
所以根本不能靠我教你的那些东西,
可以试一试在lab上提了两句的**处理文本**用的awk。
惊不惊喜?意不意外?
能用awk,我为什么不用C++呢?我为什么不用python呢?
4. Project玄幻。
因为这门课基本没有prerequisite,enroll的从大一到大四都有,
有个学长project做了个选课工具,demo的时候说,我先把我上的课输进来试一试啊。
抬手就是COMP5712,一波带走。
project也是任大家自由发挥,只要至少50%是她讲的东西就行。
当时我们被这个“50%是课上学过的”蒙蔽了,后端上了PHP,mySQL和Apache,前端大胆一点地用了react,非常不情愿和别扭。
结果demo的时候一脸懵B。
有一组直接做了个react-native APP,配合Node.js和mongoDB,李昕和TA十分欣赏。
至于分。可以想见。
这个时候工具又不重要了?我们不就是来学工具的吗?
上这个课有什么意义:
1. 进一步磨灭你对科大授课的信心,促进你自学大业的发展。
2. 给你提供一个自学的理由。(但代价是什么呢?)
3. 向你介绍linux lab这个人间仙境。
那我要是真听了你的,不上这课,我怎么学这些东西:
1. linux:
《The Linux Command Line 中文版》
不要因为这是一本书而望而却步,这实在是我看过的翻译最好最易读的技术书了,至少感觉比那个鸟哥强多了。
在这里随便看,阅读体验超好:http://www.kancloud.cn/thinkphp/linux-command-line
如果你是Mac用户恭喜,如果你是Window用户请去知乎搜索“bash on windows”。
或者干脆安双系统。但是不要在选择distro上面花太多时间。初学就别强行Arch了。
2. perl: 你真的要学?
如果强行要学,建议阅读《两个半小时学会Perl》,讲的足够且全面,最重要的是**条理清晰**,这一点COMP2021死活也做不到。
网址:https://qntm.org/files/perl/perl_cn.html
3. 正则表达式
这个真的得学,请阅读《正则表达式30分钟入门教程》,反正上了这个课你也得看这个来学。
4. Web
如果你和我一样觉得要学比较现代的技术,建议直接js全家桶。
先学学HTML,CSS和JS,
然后前端选择学点react或者vue,后端node.js(或者python啊!)。
懂点web方便自己业余做些东西玩。
而且前有react-native后有electron,
我感觉未来的图形界面可能都会用web的方式来写(不负责任的揣测)。
所以有空学学着实有所裨益。
一些吐槽:
MSSSUG的IT秘书你好,
找一个现成的好使的富文本编辑器真的那么困难吗?
目前的这个实在是过于蛋疼。
疼从中来,不可断绝。
实在不行可以发动社区力量啊,
这样对广大cwiki作者太不负责了。
One more thing:
不要enroll!不要enroll!不要enroll!
[COMP2021]能学东西也能好龟
課程時間:2016年春季
授課教授:Cindy
我覺得教授特别nice
上课的时候会讲的特别细,像我这样的刚刚接触计算机半年的新手也可以听得明白。
空余的时间我也找过她答疑,她也是特别耐心地讲解各个部分。
這門課的Grade:Grade神/較好/
先说我这门课拿的是A,而且在开学选课时并没有预料到可以拿这么高。
因为这门课只有一半的人是大一的同学。其他一半是计算机专业的大二大三大四同学。
这门课的评分是由以下部分组成:
Lab attendance5%Homework assignments20%Project and Presentation35%Final Exam40%
这门课有一个做一个project然后给全班pre3的任务。没有期中考试。我觉得这样做的目的是缩小大一同学和其他年级同学之间的知识储备差距对这门课的龟的影响。
我觉得你把时间精力花在这门课上,大概率你会好龟;反之,如果不能留下充足的时间给这门课很有可能烂龟。
我覺得這門課
首先这门课今年是第一次改版,不教比较过时perl改变成php。一开始的课程大纲里面还包括javascript,不过后来删掉了。不过你要是想把project做得好看一点,还是建议自己在codecademys上学一学。
这门课先讲Unix系统的各种操作以及最基本的一些操作系统的概念,但不会特别深入讲解操作系统,因为那不是这门课的主要内容。
也会讲解如何使用shell script写程序。学校有一个linux的机房(lab2),你可以用ssh远程登录,不必要在自己的电脑里装linux,虽然我装了一个ubuntu,但其实没有必要。顺便一提,有一个叫JuiceSSH的手机APP很好用,也可以用这个连lab2里面的电脑,当你想验证某条指令的时候用手机会特别地方便。
然后会讲解regular expression(正则表达式),非常地实用啊。这个东东用处就是在网页之中抓取信息。
然后是讲解php语言,也是特别基础,包括怎么用它在服务器里读写文件。不过并不涉及怎样使用数据库。虽然很多人在project里面用到了MySQL。
讲的东西都很有用,比如用上述内容就可以做到从网站里面抓取你想要的信息,然后自动生成在你的ihome网站之中。这个很有用的,在urop里面,应该2333.
我的project做了一个游戏,应用html5,JavaScript,和PHP三个结合到一起。得分很高。而且如果project用心做很有可能会涉及很多时下流行的技术,当然能不能驾驭这些技术就不好说了。
做一个总结,我觉得这门课收获特别多,而且编程小白如果努力也是可以拿较好的龟的。
[COMP2021]Unix and Script Programming
课程时间:2014年SPRING季
授课教授:CINDY LI
我觉得教授是个好人
这门课的Grade:一般
就是shell programming和perl。
很简单的编程。。不用去听lecture也没什么的。就是教编程的。
不过tutorial的东西很有用,每次一个程序,编好就行了。
final有考试还有project,project是用perl组队写个大程序。。。
考试可以拿cheatsheet
[COMP2021][防入坑向]之前没有人写过的介绍UNIX的课我来写一写吧
课程时间:2014 Spring
授课教授:Cindy Lixin
这门课的Grade:并不很清楚
不推荐上这门课
=======================================================================================
之前CWiki上没有人写过这门课,不知道是因为这门课太冷门了还是上完了没感想,总之我是在毫无经验的情况下看了课的标题就被坑进去的。。。
各种坑
真的是各种坑
1.教授
嘛反正泛CS系的基本都听过全能Cindy的课,我也不多说了。上课就是读读notes偶尔演示一下这样。我也就去了前三节课,之后就没有再去了,感觉直接看notes又快又clear(我会说我是因为早上起不来嘛)。
2.课程内容
整个course分了两个部分,前半主要介绍一下Unix系的系统的基本命令和操作,后半介绍了PERL和一点点的shell script。
前半的话其实只要接触过unix系统的童鞋基本都很熟了,上课看notes基本就是过一下简单的命令,感觉用熟系统还是一边用一边上网查来得快,上课教的一般教过不用就忘了。
后半部分我花了两三个晚上把PERL那本骆驼书看了一半多基本就都cover了,高级的东西也不会涉及,所以后半学期的课又没听又没看notes,考前突击了一下就。
整体感觉作为一门选修课,想要多学unix和脚本语言的完全可以弄本书自己学,这门课讲的知识不多课本身还很坑那就很不善良了。至于为什么坑,继续看。
3.考试
坑。
这门课是没有midterm的,只有一个不在final period的被称为“midterm”的final,占50%。
犹记得最后一周上课周大家在考虑final break去哪里玩耍的时候,我整整复习了三个晚上的unix。
考试每年都比较像,所以刷pastpaper挺有用,考得非常细节,细的程度可不是COMP2011这种课可以比的。
不学你是不会知道shell script和PERL一起考是多么的混,这里少一个空格那里if要加then,两种语言极其相像又在每个地方都有细微的差别。考试闭卷,分别出大题,直接写code,呵呵呵。
这学期所有的课就数这门考得最惊心动魄。
4.Project
大坑。
没有小伙伴一起上,我就选择了自己做project,结果走上了一条不归路。
project是完全自选主题用至少50%的PERL写一个应用(我写的是一个游戏,被小伙伴们各种吐槽美工。。。)
我花了一整个复活节假期,天天起床就是写code写code构思构思。。。。大家都在台湾澳门玩耍,我在宿舍写code TUT
前前后后从构思到完全写完总共花了十个晚上左右的有效时间(写写code打机去了我才不会算呢),感觉做的还不错,最后看了大家写的app,自己感觉也就是中游左右的水平。如果只写了一两天你估计到时候会没有勇气上台。
主要上这门课的有挺多大三大四的,perl的东西写出来丑得不能看,但是加上了html5+css的美化那效果可是一个天上一个地下,也有几个group写的选课助手或者activity arranger的应用用sql的,反正大家都很用心做。
当然啦这个project不可能和ELEC3300的比,但是作为一个隐藏project非常的杀时间,造成了这门课的workload很大。
这学期一共上了六门课,都是专业课,个人觉得这门课的workload抵得上其他加起来。
5.Grade
final 50%
project 20%
lab 30% (lab前面忘记说了,符合comp课一向lab满分的特色,还不take attendence,还是下午,唯一比较厚道的地方)
最后考试考得比较好,所以grade还不错,整体的龟怎么样由于没有小伙伴一起上不是很清楚。
===========================================================================================================
真的,闲得没事不要上这课。
血的教训。
不信邪的我可以给你看看过往project的列表,你就信了。