Head First Design Patterns中的几点建议

很难想象一本计算机书中会介绍到如何用脑的问题,获得大奖的书就是不一样,呵呵。

Here’s what you can do to bend your brain into submission
So, we did our part. The rest is up to you. These tips are a starting point; listen to your brain and figure out what works for you and what doesn’t. Try new things.
1. Slow down. The more you understand, the less you have to memorize.
Don’t just read. Stop and think. When the book asks you a question, don’t just skip to the answer. Imagine that someone really is asking the question. The more deeply you force your brain to think, the better chance you have of learning and remembering.
2. Do the exercises. Write your own notes.
We put them in, but if we did them for you, that would be like having someone else do your workouts for you. And don’t just look at the exercises. Use a pencil. There’s plenty of evidence that physical activity while learning can increase the learning.
3. Read the “There are No Dumb Questions”
That means all of them. They’re not optional side-bars-they’re part of the core content! Don’t skip them.
4. Make this the last thing you read before bed. Or at least the last challenging thing.
Part of the learning (especially the transfer to long-term memory) happens after you put the book down. Your brain needs time on its own, to do more processing. If you put in something new during that processing-time, some of what you just learned will be lost.
5. Drink water. Lots of it.
Your brain works best in a nice bath of fluid. Dehydration (which can happen before you ever feel thirsty) decreases cognitive function.
6. Talk about it. Out loud.
Speaking activates a different part of the brain. If you’re trying to understand something, or increase your chance of remembering it later, say it out loud. Better still, try to explain it out loud to someone else. You’ll learn more quickly, and you might uncover ideas you hadn’t known were there when you were reading about it.
7. Listen to your brain.
Pay attention to whether your brain is getting overloaded. If you find yourself starting to skim the surface or forget what you just read, it’s time for a break. Once you go past a certain point, you won’t learn faster by trying to shove more in, and you might even hurt the process.
8. Feel something!
Your brain needs to know that this matters. Get involved with the stories. Make up your own captions for the photos. Groaning over a bad joke is still better than feeling nothing at all.
9. Design something!
Apply this to something new you’re designing, or refactor an older project. Just do something to get some experience beyond the exercises and a problem to solve… a problem that might benefit from one or more desigh patterns.

火, A MAN; 方, AN OLD MAN WITH A STICK……

OLI 学会了写 ‘火’ , 和 ‘方’ . 他认为火 是 一个人, 方 是一个老人拿着一根棍子.

中午吃完饭的时候 我一个人去EBI旁边的一个草场散步, 满地都是小野花, 我拿它们给MELANI做过一张小卡片. 今天天气不好, 阴沉沉的, 不过散步那会有阳光.

穿过一个小型的足球场, 和一坐小木桥, 有指示牌说前面是一小片湿地, 请不要摘任何植物, 还有小心野狗. 忍不住好奇, 就继续向前走, 经过一小片树林, 是一个小湖和旁边没有修剪过的野花, 铺了石头的小路通向更远的地方, 不过我止住了. 拿了笔记和要修改的程序, 在草地上坐了会. 安静极了.

我已经学会宽容的对待自己, 有的时候安静下来, 用非生物的角度享受自然.

回家的车上, 我一句话都没有对ALSTAIR 说, 我完全沉浸在自己的世界里. 只是因为阳光, 和某种相似, 完全沉浸在回忆里, 我想起家里刚买车的时候, 全家人出去玩,…..我总是带着一脸的不愿意, 觉得也没有朋友和同学, 很无聊, 妈妈总是想着法的让我高兴, 我们在车上一起大声唱王力宏的唯一, 一起尖叫, 她象个小姑娘.

房东的女儿在睡觉前一定会大哭一场, 她只有两岁, 用尽全身的力气表达悲伤, 她的妈妈这个时候会在旁边用极其温柔的声音哼儿歌, 然后她就慢慢的安静了……

我也想这样哭, 如果哭可以带来妈妈, 和她的安慰.

这个世界总是悄悄的发生着变化, 运动永远是必然, 可是有的时候你会倾向于认为它没有变, 所有的东西, 都在那里, 永远等着你……. 其实已经, 物事人非…..

我对自己说我不想家, 我只是太怀念过去; 不, 我也不是太怀念过去, 只是太感慨时光飞逝; 也许我也不是感慨时光飞逝, 只是伤心变化太快………

OK 我承认, 我还是太想家了.

OLI的中文名字叫 石灰泉, 他说你叫 厚厚, 我知道.

我为什么还是不能换行????

我想家

我想家了 想极了, 特别是看到”油泼面’ 几个字FISH 写日记越来越好看了, 到是我, 站在这里, 象个彻头彻尾的陌生人, 不知道该说些什么了想写的东西太多, 可是不能写, 写了自己难受, 难受也不顶用,还要花时间来平息, 所以干脆麻木.我讨厌外国人的周末, 太疯狂了, 可是这是人家的法定放松日, 再吵闹再疯狂你也得忍受, 谁叫你来着呢? 在建桥一个月了, 除了有一天导师在墙上给我写RTFM, 让我特别难受以外, 没有什么事情让我有感觉了.这个城市极度美丽, 市中心是国王学院和三一学院. 我的房间的屋顶一半是玻璃, 可以看到树, 阳光和雨.可是在晚上的时候冷极了. 我光着脚坐在地板上看导师丢给我的一大罗书, FXXXXX XSLT.我真的怀疑我的城市还记得我吗?

工资做的我想吐

要发工资,忙死我了!

单老师丢下一堆错误的烂摊子借调了,把工作都交给了我,没什么话说,只能干。我不想再提这件事,只有我昨晚为工资系统开发的辅助程序还能给我一些安慰。

我不得不为自己接下来几个月的工作做一些思考,就像为生活所迫一样。我需要将109人的加班费、112人扣药费、137人多发补扣、758人新的公积金扣款的数据统统手工录入到系统,假定我每个人需要20秒的输入时间,我就得话6小时40分钟来完成我的工作,当然,前提是不吃不喝不休息,而且不犯错。

毕竟人不是机器,人不能做机器一样的工作。

我为自己写了个小程序

其实很简单,在我做工资之前,先整理好数据,哪些人要做调整,做到Excel文件里面,然后从程序里面打开Excel文件,选择将数据导入到哪个部分,比如放到其他补发里面,点击该区域“增加”的RadioButton,再点击处理数据就可以将Excel里面要调整的数据按照个人编号直接导入到对应项中。在下个月,我只要使用同样的操作,打开同样的文件,选择“去除”,这些人的数据就会恢复到修改前的状态。

因为每个月变化最多的就是程序里面显示的几项,我直接做了出来,在后面做了个自定义选项。这样,也可以满足有些因为不常用但很大量的工作,选中要操作的表名称和列名就可以。

如果我不去写这个程序,下个月,下下个月……即使不是我做工资,都要在这些上面花太多时间,我只是尽力去做一些自己力所能及的工作,尽量的去帮助大家提高平日的工作效率。

没能早点来这里让我觉得很遗憾,可能朋友听了觉得都有些奇怪,我怎么会想来这种地方呢?呵呵,我只是说,如果早来半年,处里面一个项目就不可能做的象现在如此糟糕。

我一直觉得面向客户去做软件开发是一件很困难的事情,即使是一家经验丰富的公司,都不敢怠慢。从竞标到最后的完工是非常痛苦的,因为最根本的原因,是这些程序员要面对一些客户自己都不晓得自己需要一个什么样软件的情况,他们不懂技术,于是就不知道技术可以通过何种手段达到提高功效的目的。我想,对大多数开发出来的行业软件来说,开发大多依靠程序员的经验,加上些许对这个项目的理解。如果客户对这个项目有很深刻的思考,没有对自己工作中真正需要什么样的软件,软件究竟处于工作流的哪个位置等等做出思考的话,如果客户没有和开发商做有效的沟通,即使花了数以月记的时间,如果开发商没有很好的内部协调,客户需求没有很好的传达到各个Programmer的大脑里,项目组人员流动较大,人换了一批有一批……

能做成一个成功的项目吗?

impossilbe!

为什么我会说这些?因为对于现有的工资系统,如果重新做一个系统,只是从C/S变为B/S,增加一些看似有用的功能,而不去思考工作中花费时间比重最大的那部分如何解决的问题,只是Reinvent the wheel,没有任何作用。为了追赶时髦的B/S,我们值得去搞这些不实际的花费吗?最后的结果很简单,新的系统还是成了大家的累赘,我们不得不花更多的时间去维护数据以及请他们过来去除BUG

我们处长给我说过希望我可以在这方面多操些心,多和项目组进行沟通。我也只能满口答应。实际上当时程序已经测过好几轮了,就像楼已经盖好了,不可能因为楼的设计不合理问题而将其拆掉,最多也就是搞个好点的装修,弥补一下。但是软件开发还有一点是不能和盖楼相比的:楼盖好了,如果设计不好还可以用,但是软件设计如果出了问题,只能推翻了重来……

听朋友说过现在中国的很多应用系统仅仅停留在MIS(管理信息系统)的阶段,就像是社会主义的初级阶段一样,人们只是借助PC去管理信息,而不是真正实现PC去代替人的工作。

扯的好远,就好像以前线性代数老师可以从一个公式撤到美国总统一样,也许发工资的工作让我很压抑,不能花时间多考虑一些自己的事情。

周末了,终于可以松口气,让疲惫的心得到暂时的舒缓,听听音乐,看看书,写写Blog,和自己喜欢的人在一起……享受生活