来上海五年第一次看到下雪

今年是来上海的第五个年头了。第一次看到下雪。拿出相机拍了一张。冰雪覆盖的宁远楼……

好冷啊。或许真的是越北方人越怕冷。想念家里的暖气,想念室外天寒地冻,室内温暖如春的感觉。今天冷得什么都没干成。明天打算去嘉定了,至少还有空调。不然真的会应了那句诗“路有冻死骨”。我还没有为光荣伟大的社会主义事业作贡献呢……

more ...

瓶颈==基础知识

前几天跟同学其去了一趟电脑图书市场。打算弄几本“砖头”来啃啃。却发现自己慢慢的慢慢的落入了这样一种境地。
以前――确切的说是刚刚转入软件学院――逛计算机图书市场,总是觉得有很多书可以看,鉴于手中的Money,不得不舍鱼而取熊掌。《xx技术内幕》《深入浅出xxx》《xx编程思想》《xx本质论》《xx Primer》都是非常值得一读的图书。但是现在两年过去了,或许是浮躁了,或许真的是学到了一点东西。渐渐的,觉得编程类的图书已经不太能够吸引我的兴趣了。虽然当时因为囊中羞涩而没有买《C++ Programming Language》,但是现在已经没有兴趣再去买它了。其它的,例如《C#技术内幕》《ADO.net Internal》等等,已经都不太有兴趣去看了。理由呢,其一:.net的原理已经摸了个大概,ado.net的数据访问模式也基本了解了,真的要用的时候,可以快速的查找资料而获得答案。或许同学跟我也有一样的感触。有个同学说“《深入浅出MFC》这种书是给比较初级的程序员看的……”
那么除了编程类书籍。还能看些什么呢 …

more ...

软件领域的学习路线

今天,虽然是平安夜。但是周围没有一点节日的气氛。一个下午在软件学院看新来的开发板,晚上老师们去酒店聚餐了,却让我留在这离上海三十公里的地方坚守岗位,整个校区都空荡荡的,好冷……
晚上,有个上进的小弟弟给我发邮件,反正也没事,就长篇大论一下了,骗完了人还把邮件贴到这里,在起一个吓人的名字,当一篇blog…

ASK:

我开门见山了

我一直想本科阶段学mfc ATL STL C# 再看Java VB ASP就行了

但今天看来想法天真

我想这远远不够,远远不够完整

我想使我的学习的体系能够足够的大足够的深,至少是在本科阶段是这样的

不然就算考上研究生也没后劲,到时候死都不知道是怎么死的,死无葬身之地

然而我不想死,想活着,好好的活着,更想让别人看着我而寻死,哈哈

我需要一个构架,完整一点的,够大沟深(有点像棺材),

到时候就算自己活不成,也能有个棺材,比死无葬身之地要好!

不怕你笑话,这里的老师水平有限(我找了8个),没人能给我一个完整一点的知识框架

谈到编程方面,我告诉他我的计划 …

more ...

撞上了“程序员成长最危险的时刻”

今天在别人的blog上看到一篇文章,说程序员最危险的时刻,是这么说的:

其实程序员成长最危险的时刻不是在你什么都不懂的时候,而是在你懂了一些的时候。开始的时候,你觉得什么都不懂,于是你天天看书,通宵编程。后来你懂了c了,算法数据结构操作系统在学校也学了,用VC 写程序时你边看MSDN边用MFC,觉得感觉还不错;你用Delphi甚至做了一个个像模像样数据库的项目了。至于COM,你懂了一点点,说起来头头是到,虽然没用过。标准C++嘛,你在大学学过基本的C++,工作时用VC,什么继承,虚函数,const,引用,模板你也都用过了。你也听说过设计模式,用过最简单的单件模式什么的,虽然还有很多你不懂的。有的时候你觉得操作系统很有意思,你还写过些多线程的控制系统的东西。可是现在你反倒觉得你什么都不会了,看这别人用VC 写的大系统,你觉得很写的很好,可是你不知道怎样达到那样的水平。你觉得你有很多的东西都不懂,可是你不知道怎么学得更好,有的时候你对编程序都快没激情了,于是你也跟我一样到了程序员成长最危险的时刻。有些朋友觉得已经可以混到饭吃了,就不再努力,这样就危险了!

不看则已,一看吓了一身冷汗,似乎每条说的都是我……作为一个半路出家上了“挨踢 …

more ...

“华恒杯”windows嵌入式软件开发竞赛(初稿)

今天早上吃了万老师一顿牛排 + 摩卡咖啡。价格不菲,感觉呢,牛排七成熟,跟学校1.4RMB一块的大排差不多。只不过没有刀叉,摩卡咖啡么,怎么那么多泡沫阿。还有所谓的芝士点心,咋看咋吃都像炸馒头干……鄙视我把,我就是没有品味的人,吃了两次哈根达斯都觉得不如门口地摊上1RMB一根的雪糕好吃。吃归吃,或还是要干的,今天晚上憋出来一篇竞赛宣传文字。。

竞赛介绍
Windows CE是微软公司推出的面向移动智能连接设备的模块化实时嵌入式操作系统。凭借其广泛的适应性,丰富的功能,强大的多媒体能力,友好的开发环境,Windows CE已经被广泛应用于掌上电脑,智能手机,汽车电子,信息终端等领域。在当前嵌入式领域占有较大市场。
华恒科技(::URL::http://www.hhcn.com)是国内著名的嵌入式Linux,Windows CE开发平台及OEM板级硬件提供商。同济大学软件学院与华恒科技共同在同济大学全校范围内举办这次“华恒杯”Windows CE软件开发竞赛,目标在于:
1、迎接2005年春微软亚洲研究院与同济大学共同举办的Windows嵌入式教学促进会。
2、通过竞赛推广同学对于嵌入式系统和Windows CE的认识,引领移动计算的潮流 …

more ...

同济大学基础软件中心成立了

忙了一个星期,等了一个学期,筹备了一年,同济大学基础软件中心今天终于成立了。并且举行了一个叫做“嵌入式产业链阶段成果展示”的记者招待会。刚刚听说居然还上了电视。我不是“妓者”,当然不用写那么振奋人心的模范文章,只是中心的主任是我的“老板”陈榕,所以就只是想谈谈自己的感觉,候捷老师有“无责任书评”,俺也无责任的感慨一下:

第一,吹牛做秀真的很重要。这个是我从去年参加微软“创新杯”之后就有的感觉,而且这个到现在感觉越来越强烈。不论你到底做了多少东西,把这些东西起个好的名字,冠个好的噱头,能吸引别人的眼球,就是成功,就是胜利。或许这个跟我在同济一直受到的“要脚踏实地做实事”的教育相抵触。但是,今天,无疑又一次验证了我的这个想法。林正浩的CPU,陈榕的操作系统,汽车学院的车载信息系统,还有蒋昌俊的交通信息网格,貌似天衣无缝的组合,能给未来的汽车产业带来全新的计算革命和体验。但是,真的有多少实质性内容偶自己还是略知一二的,或许这个就是“idea”。idea比技术更重要。是我还太幼稚,不明白其中的道理。

第二 …

more ...

我的2004年

今天看到12月的《程序员》杂志。年底了,请了蔡学镛等好多业界名人谈论自己的2004年。是啊,年底了,也该总结一下了。

2004年是我跨入软件领域的第三个年头,总体来说,我的2004年还是充满变数与激情的。在技术上,人生上和很多问题的看法上或许即将过去的一年都是一个转折点。

1月:我继续在微软全球技术支持中心实习。工作趋于稳定,主要在负责中国的新闻组。

2月:2月20日,我结束了在微软八个月的实习,重新回到学校实习。2月23日,我就收到了周文钧老师的邮件,然后就当上了C++的助教。

3月:看着周围的同学慢慢的找工作。对着我自己来说,助教占据了我日常生活的大多数时间,回答问题,看学生的作业,这段时间认识了不少03的同学。3月中旬给03的同学做过一次Presentation,讲了些C++和微软的技术。这个月里,有一个人在我不知不觉中,慢慢地的走入了我的生活。

4月:4月5号是个难忘的日子。自从那天起,发觉我的人生,与以前相比,真的变了。思想上,经历了一个或许能影响一生的抉择。技术上,也是从那天开始,我第一次接触到了Windows CE …

more ...

'从"超越"汽车故障诊断软件谈软件质量'

作完了,终于做完了!几个晚上忙碌到凌晨。有成果了。这是最终的截图:

本来想把这篇blog写成技术类文章,也谈谈软件架构阿,设计模式阿,重构阿,扩展性阿,双缓冲画图阿等等,但是,Coding结束之后,却没有心情再谈这些技术,一个是因为自我感觉水平的确还没高到可以蛊惑世人的程度,第二个是万一分析技术发现了更好的设计,担心自己不睡觉,又回去Coding。

这个程序基本上就是GDI画图,BitBlt, LineTo,CreateSolidBrush偶早就已经驾轻就熟了,所以从头到尾就没有遇到什么技术难题,但是画图根画图不一样,因为没有技术问题,所以想的更多的是Design上的东西。稍微在这个小程序中用了一些Pattern和OO的思想。有点感悟,或许这就是万老师说的,代码编得多了,才会想到模式,架构。

认识好多在软件公司里的同学,好多都说他们的软件烂,上次回嘉定,SAP中国研究院的同学说他们的某款软件BUG狂多云云,还有一位华为的工程师更直接,原话:“在中国电信跑的几千万的项目,代码写的都跟屎一样”。

或许进了软件公司,很多项目都是被进度和时间所束缚,内有老板,PM催,外有客户赶。在这种情况下,实现代码的功能就成了第一位的工作。至于优美的设计,良好的可扩展性,OO …

more ...

Pascal-S编译系统实现简析

一、Pascal-S及Pascal-S编译程序

Pascal-S是Pascal语言的真子集,由著名的计算机科学家N.Wirth开发。它保留了Pascal语言的大部分功能。

Pascal-S支持整形,实形,布尔形和字符型四种基本的数据类型。Pascal-S还支持数组和记录两种构造类型和用户自定义类型。Pascal-S支持函数和过程,并且支持值形参和变量形参。支持函数递归。Pascal-S还支持控制台输入输出函数,但是不支持文件输入输出。

Pascal-S的编译程序也是由Pascal编写而成。由五十多个函数构成。大致分为词法分析,语法分析,代码生成,错误处理和解释执行几大模块。Pascal-S的编译程序与普通Pascal不同的是,Pascal-S采用解释执行,也就是说,Pascal-S被编译成了中间代码,然后由解释器解释执行。本文介绍词法分析,语法分析和解释执行部分,错误处理不做重点介绍。

二、表格管理

表格是编译程序不可缺少的一部分,Pascal-S编译程序包含符号表(tab),块表(btab),数组表(atab),实常量表(rconst),字符串常量表(stab)以及生成的中间代码表(code)。Pascal-S的代码中,使用一系列ENTER打头的函数往这些表中添加信息。

2.1 符号表tab

符号表由变量t作为索引 …

more ...

ARM研讨会和周立功印象

今天跟软件学院的王冬青老师一起参加了ARM公司的2004年技术研讨会。

昨天晚上上课,睡在嘉定,早上六点就爬起来开始了前往徐家汇建国宾馆的征途:首先早上七点钟搭乘汽车学院前往本部的班车,八点一刻到了本部,然后转乘115路公交,坐两站路,到地铁三号线赤峰路站,然后坐三号线到上海火车站,走南北广场地道换乘一号线,然后到徐家汇。当签完到以后,已经迟到了半个钟头,不过还好,第一个演讲人,ARM公司的首席运营官Brown刚刚站到演讲台上。

上午的演讲几乎都是老外,主要介绍ARM的体系结构,市场,未来发展等等。这东西偏向于IC设计。或许跟IT还是有区别,反正我感觉好多名词都没听说,所以从中还学到了不少东西。

下午用餐过后,第一个演讲的就是周立功,国内作单片机老大级的人物。他的演讲题目虽然也是“从8位到32位”,但是与以前几个演讲者彬彬有礼不同的是,周立功从演讲的语气中就透着咄咄逼人的气势。他的演讲前面介绍一些产片,大概我不是这个行业的,所以感觉意思不大,后面他讲了UML和面向对象技术在嵌入式系统中的应用,已经PC机开发和嵌入式开发的融合,还有软件工程思想,这些都让我耳目一新,可以看得出,虽然他在业界摸爬滚打多年,现在已经是公司的一把手,但是从他的演讲中,就可以感受出,他仍然是一个奋斗在一线的工程师。他的思想,技术,对业界前景的洞察力和对国内高校教育的观点,都从他的演讲中表露无遗。

周立功有个听起来比较搞笑的提法让我比较有感触 …

more ...