chaogu ---大写的人!

很奇怪,我在这个blog里面居然不想写一些关于技术的东西,都是在瞎扯一些关于自己的事情,可能是我自己的技术还没有到家吧,感觉用blog就用写一些有用的东西,可以给一些认识的或则不认识的人看。今天跟高中同学瞎扯了一下,讨论用不用微博之类的东西,后面扯到blog。我个人认为qqzone是做用来写一些发泄的话,写技术的东西就不是太好了,不过也是见仁见智的问题。有一点我是确定的:我不会在blog里面说话泄愤,最好就讨论一些比较实在的问题。
居然讨论一些实在的问题,那我就讨论一些大学教育的问题。自己是个大学生,所以对这个问题还是比较在意的,当然会说一些不好的东西,纯属讨论,不要太认真。我是学软件工程的,不过别人问我学什么的我大多都说是计算机的,可能有写人不太在意软件工程和计算的的差别,但是我觉的说计算机比较有底气-----因为我觉得在学校里面我唯一学到的是有关于计算机的知识,软件工程?算了吧跟本没有什么软件工程。
更深入的去看我的专业-----软件工程,其实我觉得软件工程根本就不用学,像我们学的一堆软件工程的课程:软件工程导论、面向对象软件工程、个人软件过程和小组软件过程、CMM,基本上我认为这些对我来说就是狗屎。都是讨论怎么去管理和开发软件和提高软件质量的东西,有人会问这些不是都很好吗?我们深入点去看看这些东西。首先:软件工程讲的是软件开发的过程。一些前辈开发的很多软件然后总结了一些经验,然后用这些经验去指导开发更多的软件。这就是软件工程了。很浅显的事情,但是问题就出现在这里了。当我想进一步去学习经验的时候发现经验就这么点-----瀑布模型、迭代模型........还有很多,当深入下去就是一些可维护性、可扩展性、高安全性什么的,这些东西对我来说能懂吗?我想试问一下各位?
我不是在这说这课程的不好,但是这对我来说没有意义。你试想一个只写过一些小程序的学生来说你搞那么多开发方式,搞那么多什么性什么性的有意义吗?接着我们就面向对象软件工程了。对面向对象有了解的人多少能说出点东西来,面向对象的思维方式是很好的,但问题也出现在这里-------你跟我讲面向对象我能听懂吗,比如低耦合、高内聚?对于没有接收过大型软件开发(甚至小型)的人能跟着你的思路走吗?你最起码告诉我为什么吧,但是没有。我大部分的课程都只是在教我什么是什么样的,没有教会我为什么要这样,这样有什么好处,这样有什么坏处。
当我还没有喘气的时候UML又来了,软件需求来了,软件测试来了.........搞得跟狼来了似的。UML于我何用?软件需求于我何用?软件测试于我何用?软件过程于我何用?对于这些课程我都是应付算了,不是我不好学,只是这些东西学了有何用?有人就说了:“这些东西在实际中很有用,要学好。”但我想问问实际中怎么有用了?其实我是承认这些东西在实际中很有用,但是我就算学得再好其实都没有太大意义,你教会了我画很多图,教会了我怎么去发掘需求,教会了我怎么去测试,其实教会的只是理论,根本没有让我去实践,比如UML,你总得给我个说明要做什么样的系统,需求是描述好的,然后我用UML去表现我的设计。在比如软件需求,你总是要给个人给我需求吧?------事情的实际是我自己定义需求。在比如测试吧,你总要给东西给我测试对吧?最终的结果是我什么都没学到,就算我很努力了。
在我们专业我算是学得比较好的,我很努力,但是跟国外的学生比,我还不如他们的一年级学生。我一个国外留学回来的老师,他说:“国内的研究生还不如国外本科一年级的学生”。
有时候很无奈,如果你让我用这些时间这些精力去学其他的你说会变成什么样?比如语言,我最先学的是C++,如果那个博导老师要我踏踏实实的写HelloWorld可能我早就有这种水平了,但是他没有,他让我们捣鼓那些难懂的MFC。结果我C++纯粹自学。如果我的数据结构不是天天听老师讲数据结构而是听一节课理论,然后他定义接口让我去实现这些数据结构,我就不用到大三了连个排序也只能写冒泡。如果那个该死的计算机网路不是只讲理论而是让我看看什么是光缆、什么是交换机、怎么去用TCP/UDP去做一些好玩的事情,我也就不用再去学一遍网络编程技术。太多如果了。
简单的总结一:1、大多大学生不是泡妞就是打网游,还有个别天天YY的,不是专心学习的大有人在,我想大学生找不到工作是应该的,因为你根本就没能力。如果专心学习的找不到工作那是你命不好,想开点吧。2、我很怀疑现在大学还能教出一流的学生来吗?这点我很怀疑。3、现在上课做作业基本上是应付,难道不是吗?你会觉得那是你应该做的事情吗?我想你不是觉得,因为上课很无聊,作业没有太大意义。这在所有专业都是一样。4、天大地大,考试最大(我是地大的(中国地质大学)),难道不是吗?有两种情况你的成绩但会很好-----一种是你的卷面成绩很高,另一种是你跟老师关系很好(我用过后一种)。当然有个别老师的课程不是这样。5、别老是批评大学跟社会脱节,其实学生不想,老师不想,只是结果是这样----原因是现在大学大多很功利,要改变,你改变社会吧,我想你改变你的想法比较实在一点。6、虽然我上面说的都是自己专业的,但是你去问问其他专业,情况是一样的,为什么?------都是中国特色的大学生(如果你不信,你问问其他专业的)。
讨论完了,到这写完了,但是我很犹豫要不要发表,明显我是要发表的,但是会有很多人拍我。说我这不对那不对,但是你说吧不要太认真,大家当吹牛好了。毕竟踏踏实实做事才是最重要的。
posted @ 2010-06-19 01:55 chaogu 阅读(1535) | 评论 (20)编辑 收藏

   最近一直在写代码,代码写到一定程度就感觉没有代码我写不出来,想想感觉很搞笑,当自己真的去设计一个程序的话那是多么可怕的事情---真实的情况是我做不来。我还是一个低级的程序员,不能设计出一些很强大的东西出来,感觉自己走到了一个不知道是什么地方的境界,太多的东西自己不懂。

    说实话,现在让我去写一个在线聊天工具也不是太大的问题,问题是写出来又怎么样,而且要花很多的时间跟精力,还要做很多的尝试,大概算下时间起码要一年,这还是保守估计,如果只是通讯一下那简单很多,但是要考虑很多的情况,那就复杂了。

    来到学校后一直在实验室里面呆着,天天coding,感觉很好,每天都作出一点点成绩,但是最近一直在做其他的事情,其实也跟我的光线跟踪有关,但是换了一个平台---GPU,也就是显卡自己都感觉自己牛人一样,实际的情况是我根本不懂,就连我写进去的程序是否能达到所预期的速度----100倍的提速,或着更高倍数的速度,我都不敢去想象。

    现在我在做的是矩阵的乘法,当矩阵比较小时,速度还不如CPU,当矩阵大了,速度当然是提高了很多,具体多少,不好说。不过感觉没有什么计算是要这么大的矩阵,所以这个提速跟没提是一样的,再加上当矩阵大了的时候,莫名其妙地计算的精度跟CPU是不一样的,很无语。

    现在我的工作是把GPU的光线跟踪实现了,然后准备考研,但是我心里没有时间表,什么时候才能把GPU的光线跟踪算法给弄出来?我现在完成的算法用了半年的时间,天天coding,有时工作到晚上2点才睡,其实没有睡下,还在想光线是怎么打在物体上的,物体是怎么个眼色很效果的,一直在脑海里打转,感觉自己跟台计算机一样了。

    我感觉我现在进入了一个迷宫,总在迷宫里转。

    我还在私底下做一些其他的程序,这些都还没有做出来,给我一个安静的环境我想我还是可以很快地作出来,我现在缺乏的是耐性和一个环境,我记得我写程序最疯狂的时候是大二的时候,那时候写程序从晚上12点开始,一直到早上5、6点,写完才睡。那段时间是我的水平迅速提高的时候,从基本开始学习,慢慢地才会编一点程序,后来就慢慢变成了比较懂程序的框架。

    回忆大一,感觉自己走了很多冤枉路,上课基本学不来任何东西,老师讲的我一点都听不进去,还是自己一点一点弄出来,老师要做的实习还是其他,我感觉那都是狗屁,还不如自己踏踏实实地写程序。其实写代码是一件很开心的事情,当你把一个难题解决了,比高中作出一道很难的还要有成就感。

    现在看别人的代码、听老师讲课,感觉很凄苦,那些代码连他本人都不知道是干什么用的,为什么要这样写,他也不知到,老师讲课,要是水一点的老师,根本教不了什么很高深的学问,感觉还不如看书然后自己写一点程序,然后就懂了。不过要找到好的程序去写,你自己抄书上的代码可行是可行,不过因为书上的代码太小,根本不能教你什么实用的技能。

    我现在经常在MIT的开放课程和Berkeley的计算机系的课程网站上找一些自己感觉喜欢的课程,然后跟着里面的作业做---就是写代码了。提高很快。比老师教得快很多。Stanford的网站上也有很多很好的东西,有时也会看一下,具体的没有去做,不过有时间一定会跟着做。

    看了很多的书之后觉得看书是没有用的,最重要是要自己动手去做点:纸上得来终归浅,方知每事要躬行。

posted @ 2010-05-09 22:39 chaogu 阅读(388) | 评论 (0)编辑 收藏

我是一位大二學生,在武漢的中國地質大學讀軟件工程。
在大一的時候開始就學習語言。開始是計算機導論,主要是Java語言,當時聽得很起勁,但Java是什麽、計算機我自己都不知道,我那是侯連電腦都不太會用。我們就沒寫過程式。講了一大堆,沒懂什麽。雖然老師有演示,但基本的操作沒有教想自己寫寫代碼都不知道怎么寫。
接著我們又開始學C++(注意我們沒有學C !)。教c++的老師是一位老程序員了。開發了20幾年了,是做GIS的,是我們學院院長開的公司的副總,也是我們軟件工程系的主任。能力和技術都是沒的說的。講語法講編程,但是我就是不懂,他給我們講程序設計,你說我們連int、long、float都不懂的人連程序是什麽都不知道你說程序設計有用不?我們c++講了10節課20個學時,到期末課程設計的時候盯著電腦發呆。什麽也沒做出來。
平時這門課是有上機操作的,但是一上來就是一個win32的程序,VisualStudio是強大啊,框架都出來了,我就不知道那些自動生成的是什麽意思。每次上機操作我都是把工程建好了,然後就盯著電腦屏幕開始發呆,慢慢發呆,直到兩個小時后。
老程序員是不同啊,程序設計、調試、測試等等一大套來了,我懂嗎?我不懂,我就連VisualStudio的那些menu都不知道是什麽意思,跟別提它強大的功能了。學期末的課程設計是用MFC做畫圖程序。MFC那就更強大了,那就更不懂了,最後別說程序設計,就連代碼都不會寫,所以我到現在c++都只是會在VisualStudio上點鍵鼠。
接著在大一的下半學期開接著學c++,還是那位老程序員,可以用高深莫測來形容他,MapGIS底層開發是他做的,拿過很多國家的獎。神州6號神州7號用的GIS軟件就是他開發的MapGIS,強大吧。但是他是第一次教本科生,我們也算幸運的了,人家第一次教本科生就是我們,他一直都只教研究生。還是10節課共20個學時,他也很認真,經常給我們答疑。但是真的太高深了,還是Win32,MFC。講什麽封裝、繼承、多態,不怕說實話我懂的那些道理(吹牛的說一句:我還是比較聰明的,什麽物理競賽化學競賽數學競賽我還是比較強的,不過現在都忘光光了),
但是試想想一個代碼不超過300行的程序要用到這些嗎?我現在還沒寫到超過300行的程序呢。還有什麽模板、操作符重載,please kill me。我不懂,我相信很多人都不懂,就算開發了幾年的了,不過我現在懂了,懂了不代表會用啊,是,我不會用,基本上我就用不到。沒做過項目我用它幹嘛?不過老實說我還是受益匪淺的。畢竟人家是位很好的教師,很好的程序員,只是我的操作能力不行,還不太懂。
在大二的上學期,那就豐富了,數據結構與算法、數據庫、軟件工程導論等等。老實說我沒好好學,沒學好。希望我的後輩要好好努力,把C/c++學好,把數據結構、算法、數據庫學好,老師講的不好,你就去問他,問到你懂為止,不要害羞,不然以後像我這樣你就知道死字怎么寫。老實說大二上還是學到很多東西的,最起碼知道然來程序是這么一回事。還會調試了。但是希望教書了不要只教書上的,多手把手教。記得課程設計的時候有位研究生輔導過我,我到現在還感激他呢,他教會了我什麽叫調試,手把手的教我寫代碼,調試。我才懂那些道理。
現在是大二下了,也過了一半了,學了Java,重新開始學一樣,不過我還是很感興趣的,Java可以做很多事,也方便多了,我現在基本是用記事本寫Java的,可以更直觀的理解算法和程式。到以後就可能不會因為人是要進步的,要做點大一點的程式。不能停留在黑屏的時代。不然就回到DOS那個年代吧。現在發現程式是那么好玩的東西,裡面有很多很好玩的、很有意思的、很先進的東西在。

努力學習。應該是好好學習天天向上。

總結:
1。c++沒學好,以後努力點好好補一下。有建議的提提,無論高手菜鳥都行,因為我是菜菜鳥。
2。程序寫不好,以後多寫點,有好玩的小項目比如開源的介紹介紹,或者有什麽純粹玩玩的項 
目想找個免費勞動力可以找我。 
3。对界面不太喜欢,可能是不会的缘故,在努力努力,看看会不会喜欢上,介绍点资源给小弟,
小弟不甚感激。
4。好像比較喜歡Java,可能會向Java里高級的方向去走,各位前輩指點一下,我還是比較迷茫,
介紹點好的方向,給點好的資料給小弟,小弟就此謝過各位了。
5。C、C++還是比較基本的,更能接近底層,還要好好提高,給點意見,有什麽方向去學去做,
指條路給小弟走。

最後感謝各位能看看我的屁話。留不留言沒關係,對你有幫助的話心裡感激過就行了(臭美了一次)。前輩就請你多多指點了,都說過是菜菜鳥了,別不好意思給你寶貴的意見。

posted @ 2010-05-09 22:35 chaogu 阅读(525) | 评论 (4)编辑 收藏
仅列出标题
共2页: 1 2 

导航

<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

统计

常用链接

留言簿(1)

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜