|
|
最新发表博客
-
|
1.构建一个REST Service: [OperationContract] [WebGet(UriTemplate = "GetImage" )] public Stream GetImage() { var bmp = new Bitmap(100, 100); var gr = Graphics.FromImage(bmp); gr.Clear(Color.Blue); var stream = new MemoryStream(); bmp.Save(stream, System.Drawing.Imaging.ImageFormat.Gif);...
|
-
|
2001年2月,17位敏捷先驱齐聚犹他雪鸟度假村,起草《敏捷宣言》的时候,Scrum只是众多方法中不太起眼的一个。十年之后,Scrum却成为最流行的敏捷方法,几乎成为敏捷的代名词。 本文来介绍下Scrum的两位创始人——Jeff Sutherland与Ken Schwaber。 大家可能不会想到,Jeff Sutherland的第一份工作居然是美国空军战斗机飞行员,还曾于1967年获得了“壮志凌云”称号,完成过100次飞越北部越南的作战任务。服役后期,他到斯坦福大学拿下统计学硕士学位,并在美国空军学院教授数学统计学和概率学。11年军旅生涯结束后,他成为了科罗拉多医学院的教师并获得了博士学位。在诺贝尔化学奖得主莱纳斯·鲍林的赞助下,他以放射学、生物学及预防医学助理教授的身份参与了维生素与癌症研究中心的创立,担任八年国家癌症中心的主要研究员,负责科罗拉多地区所有癌症患者的数据统计和IT方案与研究,整合了国家注册、临床试验、流行病学研究和癌变的超级计算机数学模型。1983年,他进入了一家遍及北美、经营着150家银行的公司,职务为先进系统副总裁及ATM业务部总经理。此后,Sutherland先后担任了11家软件公司的CEO、CTO或者工程副总裁,积累了丰富的软件开发经验。...
|
-
|
魔方的故事 大概是在我小学五年级的时候 , 大家开始玩魔方,我们家也买了一个。 我和几个小孩折腾了一会 , 没搞出什么名堂。我哥摆弄了好一会 , 嘿 ! 弄出一面一样的颜色。后来我也琢磨出来怎么把一面颜色拼出来。 再后来我才知道魔方有一些模式和一些口诀, 按图索骥 , 依口诀而行 , 就会从一面玩到一面再加一层, 再到加两层 , 然后把最上层四个角的颜色搞对 , 然后再按照一两个口诀翻十几下 , 六面就做好了 ! 我玩着玩着就把各种模式和口诀都掌握了。 上初中的时候...
|
-
|
最近我和一些同学们讨论了一些有关 “创新” 的问题。 我不由得想起王屋村发生的一个故事。 王屋村原来没有人玩过魔方. 有一年开学, 一个叫果冻的同学从爪哇国带了这个新奇玩意到学校。 他口里念念有词, 转来转去, 居然能把魔方从凌乱的颜色还原成六面整齐的颜色。 哇, 太神奇了! 班上的同学都很好奇, 课间的时候都看他表演。一些同学托果冻给他们买魔方, 而且求果冻教他们玩,果冻采取”口传心授, 不立文字” 的方式教育, 很快获得了魔方大师的称号,并且成了魔方的唯一代理。 有创新当然很好,...
|
-
|
在 《 移山之道 》里 , 我提到移山软件学院的游戏 : 阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫“黄金点”的游戏: N 个同学( N 通常大于 10 ),每人写一个 0~100 之间的有理数 ( 不包括 0 或 100) ,交给裁判,裁判算出所有数字的平均值,然后乘以 0.618 (所谓黄金分割常数),得到 G 值。提交的数字最靠近 G (取绝对值)的同学得到 N 分,离 G 最远的同学得到- 2 分,其他同学得 0 分。 玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动。...
|
-
|
问题 给定一整数数组,求连续的子数组和的最大值,例如: 1, -2, 3, 5, -3, 2 最大值为8 0, -2, 3, 5, -1, 2 最大值为9 分析 《编程之美》中给出的算法很精炼,然而解释却比较复杂,如果从“分级组合”的角度去理解要方便很多。 解法 设置两个整数变量:cur 和sum,从给定数组中依次取出所有元素,加到cur 上去,当cur<0 时候重置cur。sum 记录cur 出现过的最大值: var cur = array[0]; var sum = cur;...
|
-
|
帮卢编辑看看大家对《编程之美》题目的反馈,才想起我有一些题目还没贴,写出来大家提提意见:) 问题 给 4 个1~13 之间数:n1 n2 n3 n4,是否能只使用四则运算使这4 个数运算得到24? 分析 依次拿出给定的4 个数字,计算1~4 级的情况,规则为“四则运算”。 需要说明的是,这道题和前面题目每级发展方法有点不同:前面都是拿出一个元素,将所有i 级扩展到i+1 级;然而在本例中,存在计算优先级(括号方案)的问题,例如:照原来的方法,可以得到n1 *(n2+ n3 + n4)的情况,但是无法得到(n1...
|
-
|
看见一篇比较有意思的文章,分享下… 原文地址: http://www.cnblogs.com/vwxyzh/archive/2010/07/03/1770410.html#commentform 前些日子,爆出N篇说c#/.net太慢的,要求删除c#/.net部分特性的文章。 撇开那些文章不说,c#/.net慢似乎是业界公认的铁则,不论大家如何证明c#/.net其实不比c++慢多少,但是应用程序级别的性能却依然这么慢。...
|
-
|
在一个神奇的国度里生活着许多动物, 其中有猪, 鸡, 和鹦鹉。 它们每天搞头脑风暴, 琢磨如何创业, 最后鹦鹉提议它们合伙开一个早餐店: 具体分工如下: 猪: 提供猪肉, 做熏猪肉 ( bacon ) 鸡: 提供鸡蛋, 做煎蛋 鹦鹉: 提供咨询, 它会每天阅读大量博客, 给其他团队成员提供建议, 例如最新业界趋势, 最新术语, SaaS, N-层架构, 创业明星当年的轶事, 等等。 看上去是一个搭配很合适的组合, 但是这项创业对三个动物的负担是一样的么? ...
|
-
|
软件工程的历史虽然说只有短短的四十多年时间 ( 1968 年提出 ), 但是软件工程的主体 – 人类 – 已经出现在世界上好些年了。 人还是那些人,事儿还是那些事儿 , 好的,坏的,可笑的模式同样会出现。 我看到同学们在分析前面的学生的软件项目的时候, ( link1 , link2 )我不禁想起一个相声 – 画扇面。 我们不妨拿它和软件工程做个比较 : 画扇面 做软件工程团队项目 相声是一门说学逗唱的艺术 … 甲...
|
-
|
我们往往抱怨年轻人做的不够好, 其实如果你给他们鼓励, 告诉他们你的期望, 他们往往能做到, 甚至做得更好, 软件工程课的作业: http://sinaurl.cn/ht4qWO http://sinaurl.cn/htdEUX http://sinaurl.cn/hbeWBI http://sinaurl.cn/ht4C7z http://sinaurl.cn/htBRbm...
|
-
|
http://blogs.msdn.com/b/jasonz/archive/2011/03/08/announcing-visual-studio-2010-service-pack-1.aspx 各位同学可以下载。 我很佩服VS 团队的同事在繁忙的工作之余,还能在 blog 上直接和最终用户交流。 从大家对Vs2010 的反馈来看 (有100 多个反馈帖子), 如果你的软件支持这么多东西开发语言, 测试工具, 不同的设计和debug...
|
-
|
下面是各个项目小组的情况, 每个小组有 6 – 10 名同学组成: no. Team Name Leader Blog 项目 (构想中… ) 1 Seven 杜圆 http://cnblogs.com/SE-team-2011 Calendar, todo list, Lifer 2.0 2 霸王移山 余江伟 http://cnblogs.com/bawangyishan Calendar or 食品打分网站 or 背单词软件 3 铷铯 杨沐 http://cnblogs.com/SE2011...
|
-
|
上课时间地点: 周一下午 1:30 – 4:50, 六教 6A/201 暂定时间表 (会根据学校放假, 老师/学生的具体要求变化): Week Date Lecture (授课) Talk (辅导/交流/演示) Project blog requirement 1 2/21 Intro (课程简介, 分组), number game, iPad, team project, assignment of I-project. Software...
|
-
|
1978年, M.I. Shamos's Ph.D. 的论文"Computational Geometry"标志着计算机科学的这一领域的诞生。 当时他发表成果的是一个寻找凸多边形直径的一个非常简单的算法, 即根据多边形的一对点距离的最大值来确定。 后来直径演化为由一对对踵点对来确定。 Shamos提出了一个简单的 O(n) 时间的算法来确定一个凸 n 角形的对踵点对。 因为他们最多只有 3n/2 对, 直径可以在 O(n) 时间内算出。 如同Toussaint后来提出的, Shamos的算法就像绕着多边形旋转一对卡壳。...
|
-
|
对于前面提到的StackEx(增强堆栈),增强功能有: 1. 能够返回次栈顶; 2. 能够动态获取max; 不知道大家是否还记得《编程之美》中3.7 队列中取最大值操作问题,当时觉得还挺巧妙的: “维护一个最大值的序列(link2NextMaxItem )来保证Max 操作的时间复杂度为O (1 ),相当于用空间复杂度换取了时间复杂度”。 这里借用了这个思想,做了点改进。 解法 首先可以定义嵌套类,用于RotatingCalipers类内部使用 class StackEx : List<PointF>...
|
-
|
今天收到Sam Palmisano庆祝邮件,非常高兴:) 在我初中的时候就听说IBM的“深蓝”击败国际象棋大师卡斯帕罗夫,引发了对计算机强烈的兴趣,虽然那个时候还在学习DOS下的WPS打字… 第一轮人类选手Ken大幅度领先Watson(沃森),但随后在double jeopardy的时候,被Watson反超回来。沃森又以最高分进入Final Jeopardy ,今天三位选手的分数是 Ken 19200, Watson 41413, Brad 11200,与前两日比赛得分相加,最后的成绩是:Watson...
|
-
|
这个算法是由数学大师葛立恒(Graham)发明的,他曾经是美国数学学会(AMS)主席、AT&T首席科学家以及国际杂技师协会(IJA)主席。 细节可参考: http://www.cnblogs.com/devymex/archive/2010/08/09/1795392.html 这里主要解释发现的问题以及实现。 总结起来,算法步骤为: 1. 寻找锚点 在所有点中选取y坐标最小的一点H,当作锚点。如果存在多个点的y坐标都为最小值,则选取x坐标最小的一点。坐标相同的点应排除。 2. 排序 其它各点p和锚点构成的向量<H,p>与x轴的夹角进行排序。...
|
-
|
在一个实际项目中遇到“寻找最远点对”问题,猛然想起《编程之美》扩展问题提到过,开心地翻出来看,却发现“最近点对”的思路套“最远”貌似不合适。 然后开始查文献、做实验,改进算法,困扰半天也发现了不少实际问题,写出来大家参考。最后,算法用到系统中,虽然没有大幅提高遗传算法效率,但是系统评价功能明显比原来快了n倍,可谓酣畅:) 找回昔日研究《编程之美》感觉~~ 问题 给定平面上N个点的坐标,找出距离最远的两个点。 背景 如果我们希望在城市道路网上设传感器,用以追踪车辆。那么这些传感器布应该设在哪里,布设多少?...
|
-
|
我们自从 2008 年出版了<编程之美> 后, 销量还不错。 作者们把获得的版税捐出来做一些公益活动, 帮助了两个欠发达地区的中学 , 福建漳平一中 和湖北五峰县一中。 两年时间过去了, 我们和这些学校也相忘于江湖。 最近我们得知 - 漳平一中的同学们在计算机比赛中获得好成绩, 有13个学生参加NOI, 12个获奖, 创福建龙岩地区最好成绩. http://www.zpsedu.gov.cn/wzzx/jygl/zxjy/201012/2140.html...
|
-
|
这次 <现代软件工程> 的4 个团队要做下面的项目: 第一组: 一个BBS 的通用客户端 第二组: 挖掘 学术圈内的师承关系 第三组: 真人拳皇 - 把你老板的照片变成对手, 然后给他一顿痛打 第四组: 一个叫 呆呆的东东 。 他们缺什么呢? 缺一些有实际经验的人给他们拍砖. 所以如果你做过一些项目, 手里有几块砖, 那就拍上去吧。...
|
-
|
全国历年参加高考人数和录取人数统计 (1977年~2010年) 时间(年) 参加高考人数(万人) 录取人数 (万人) 录取率 (%) 1977 570 27 4.7% 1978 610 40.2 6.6% 1979 468 28 6.0% 1980 333 28 8.4% 1981 259 28 10.8% 1982 187 32 17.1% 1983 167 39 23.4% 1984 164 48 29.3% 1985 176 62 35.2% 1986 191 57...
|
-
|
屈指一算, 我已经讲了3年 <现代软件工程>, 教了 4 个班。 2007 - 2009 清华大学理论计算机科学研究中心 (姚班) 2009 北航计算机系 还有在北大合作的教学: ...
|
-
|
作为 <现代软件工程> 的一个作业, 我要求同学们把 英文的敏捷开发原则 翻译成中文并解释。 大部分同学都提供了持续重构, 不断提高的版本。 技术翻译专家 余晟老师 也对其中较难翻译的三条原则提了很好的建议。 下面是我的尝试, 翻译要做到 信 达 雅 很难, 而且中国的软件工程实践有自己的特色, 别家的格言警句有时候未必能引起共鸣。不管如何, 我们先得有一个靶子, 然后大家才能拍砖, 是不是? 欢迎提意见。 1: Our highest...
|
-
|
敏捷开发, 谁不会呀, 不就是 没文档, 出活快, 用户说啥都能改? 下面是一个笑话, 王屋村的大牛说 - 我最近转手接了一个活, 完事能挣四五万, 我拿过图纸一看, 不就是盖一烟囱吗? 我们是敏捷 (Agile) 的团队,没文档, 但是出活快, 马上甩开膀子开始干活! 都快盖好了, 客户来检查,把我打了一顿!我冤枉啊! 原来, 图纸看倒了,人家让挖口井。 不过, 我们是敏捷的团队, 被客户打了也要拥抱变化, 好不容易砌好的烟囱不能这么废了,...
|
|
|
|