迟到的2011总结。

最近一段时间,状态非常不好,件件不遂人意。开始的时候,我就像鸵鸟一样,把头深深的埋在沙子里,躲着。后来,干脆像乌龟一样,完全龟缩在自己的贝壳里了。躲着朋友,躲着亲戚,躲着父母,躲着所有的人。

不能再如此下去了,好好总结下自己,又该开始面对了。
不想再说对不起,如果说对不起有用的话,那这个世界真的就没有坏人了。而我,今年的确做了很多很多混账的事情。伤害了很多人,我不知道怎么去弥补这些,我现在唯一选择的只能是忘却,把自己埋葬在忙碌的工作和像无头苍蝇一样的瞎撞里面,期待过上一段时间能够平静的去面对这一切。不奢求大家能够原谅我,只希望大家都能够好运,幸福!

—————————————-
总结下自己吧,2011年看了比较多的书,各种书,我一直希望能够在这些书里找到心灵的平和和安宁,做一个踏踏实实的人。
《Windows高级调试》《1Q84(3)》《你的灯亮着么》《软件架构师应该知道的97件事》《生命如歌》《三体I,II,III》《从月亮来的男孩》《天才在左 疯子在右》《我的父亲是个流氓》《我编程,我快乐》《拆掉思维的墙》《法医探索》《浪潮之巅》《当爱远行》《The DeadLine》《FBI心理分析术》《重返小王国》的一部分《编程人生》的一部分等等吧,不记得了。
比较系统的学习了一下汇编语言和MatLab。
在畅游待了满一年,做了很多杂七杂八的东西,比较大的是协助完成了大世界基础规则和势力系统的部分开发。
出去骑行一次。
其他,除了年龄,没有大的进步。

前些日子,二十七年来,妈妈第一次在我面前哭泣,她说,你千万不要走上邪路,你还有我和奶奶。我揪心的要死。痛恨自己的无能。后来,XBT问我,你是否有过那样的想 法。我想,有的。有的时候,喘不过起来,强烈的想拿一把十分锋利的匕首插进左边,然后,像瑜伽老师说的那样,把它慢慢展开,伸平,向无限延展。可是,我不 行。死都不怕,害怕活着么?背叛了朋友,让母亲哭泣的人更应该勇敢,苟且的活下去!希望新的一年,一切顺利些吧。要更加努力!

—————————————–

新的一年以及以后的日子里,要更加求真务实。希望自己可以成为一个给别人带来欢笑和快乐的人。

希望父母健康平安!
希望朋友开心幸福!

失语症–<软件架构师应该知道的97件事>读书笔记

最近看完了第一遍<软件架构师应该知道的97件事>,呃~~几本上是编译时间看的。- -!几十位架构师分享了他们的一些经验。还不错。
有一篇叫做《Don’t be a Problem Solver》,比较有感触。大意是要戒除“问题解决迷恋症”,作为架构师,当出现问题的时候,不要立即进入问题解决模式,要冷静的面对。我觉得这讲的很有道理(- – 我是多久不写文章了啊!!!)。
以前和朋友们相互吹捧: 程序员是无所不能的。寓意:什么问题都能解决。于是我们自诩为问题解决专家。而且每每解决完一个非常难解的,诡异的问题之后,都会无限的敬佩自己,牛逼!
现在,看了这篇文章,忽然觉得他说的很有境界。前些日子看《你的灯亮着么》,开始的时候举了个例子,纽约金融街一座73层的大楼电梯不够用,问我们能够做些什么?   – - 我写不下去了。。。。。

改天来补。。。。

《Windows高级调试》1.2章读书笔记

1.       Windows Application Verifier:

(http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c4a25ab9-649d-4a1b-b4a7-c9d8b095df18)可以在每日构建的时候做自动化测试。

2.       调试器命令有三种:

(1)       内置命令,也就是大多数短命令;

(2)       元命令,起始字符是句点,以可执行文件来实现的命令;

(3)       扩展命令,起始字符是感叹号,可以在调试目标上执行的其他功能;

3.       调试Dump文件(现在我用的最多的一个)

windbg  –z  dumpFile.dmp

4.       一些有用的命令

(1)       lm : list module

(2)       vertarget : 给出操作系统的版本以及架构等信息,该命令是version命令的一个子集;

(3)       x :查看符号. Eg: x kernel32!g_*

(4)       ln : list near

(5)       r :查看,修改寄存器。这里谈到了一个技巧,在调用malloc函数分配一些内存之后,所分配的内存块的地址将通过寄存器eax返回,如果用0来代替eax中的值,那么就可以测试程序在内存耗尽的情况下的行为。

(6)       $name :伪寄存器。

(7)       u :反汇编;

(8)       k :Stack back trace;显示栈回溯,可以用来分析当前的栈。kp, kP专门用来解释每个函数的信息,显示参数的类型,名字以及相应的值。kb显示在栈上传递给函数的前三个参数;某些情况下,只有一部分栈是可用的,此时调试器的k命令无法解析栈,这是因为当前ebp和esp所指向的地址是不可访问的。在这种情况下k可以接受栈基指针,栈顶指针以及指令指针作为参数。

在手动重新构建栈的过程中,最困难的任务就是从内存中找出两个值来表示调用栈中正确的栈帧。找出这两个值的方法之一就是识别出一系列的值,这些值表示当前栈中的某个地址,并且在这些值之后是一个可执行的地址。每个地址都可以是一个栈帧,此时需要通过命令k来进行验证。将这个操作重复应用于其他可能的栈帧,直到将栈重构出来并且在执行命令k时能够显示一个正确的栈为止。

(9)       bp :设置断点。bu 设置延迟断点;ba 表示内存访问断点;

条件断点示例:

bp sample!KBTest::Fibonacci_stdcall “gu;.if (eax!=1){g}”

(10)   dv :查看变量的值。

(11)   d[type] [AddressRange] :查看内存;

(12)   s :搜索;

(13)   !address : 地址详细信息;

(14)   !peb : 进程环境块;!teb : 线程控制块;

(15)   !gle : get last error

(16)   e[type] [address] : 修改某个地址的变量值,这里提到了一个很实用的做法,有时候,在调试的时候,会频频触发断言,为了跳过断言,可以修改对应的内存,如下:

eb .-6 90 90 90 90 90 90   — 这里的90是空指令NOP

(17)   .hh <string> : 最最最重要的一条命令。查找帮助。

 

1Q84读后感

1Q84读后感

XX岁生日!
个人总结不贴在这里了。写一些读后感吧。

《1Q84》(1,2,3)终于读完了。其实读完了好久了,只是现在才有时间写评论。总的来说还是比较喜欢这本书的(毕竟比专业的书看起来更简单一些),所以有时候一口气会看到晚上两点钟。

不过故事总算是结束了。看上去故事结束的很仓促,青豆和天吾一起走出了高速公路路口。就结束了。其他一概不表,深绘里,Tamaru,夫人,小小人,两个月亮等等,都成了浮云。很喜欢这种表述,我想作者的意思应该是很明确的,青豆和天吾时隔几十年终于相逢了,在他们看来,其他的一切都没有必要再关心,无论两个月亮的世界发生天大的事情,都与他们无关了。重逢,牵手,才是最重要的。

呃,感触比较深的是牛河这个人。牛河的出现,成为3中一条重要的线索。大部分时候,一看到牛河这个人,都会想到自己。不知道为什么。

—————–
花了很多的时间来学习MatLab。稍微入门一点了。
《Windows高级调试》第一遍已经看完,第二遍马上展开,读书笔记稍后奉上,敬请期待。

SOS!!!

大家好!有一哥们的亲兄弟想在中国找一份支教工作。

下面是他的具体要求。

* A place to live and sleep (can be very simple, doesn’t need modern stuff like TV, toilet, etc..)
* Possibility to take shower/bath somewhere + possibility to clean his clothes.
* Food. One option is that someone cook food for him, another is that he can get money to buy his own food.
* Extension of his Visa, so that he can stay in China for more than 3 month.
* (ALMOST a requirement) Insurance. Some kind of insurance that covers intensive medical care (like if he is being run over by a truck, etc).. If it is REALLY impossible to get an insurance, he might go anyway, but that is the last option.

Of course he would also prefer to have a regular salary if possible (and of course as high as possible!) , but that is really not necessary.

All type of teaching is OK, from kindergarten to PhD level, everything is fine.. He plans to stay for at least 6 months and longer if he enjoys it.

兄弟简历:

  • (2004 – 2009) Master degree in business administration, Karlstad University, Sweden.
  • (2000 – 2003) Social Science program, Vadsbogymnasiet, Sweden.
  • Age: 27 years old.
  • Languages: Excellent knowledge of English and Swedish. German in speech and writing at a basic level.
  • Computer Skills: Proficiency in Microsoft Office.

大家有合适的请推荐给我。知道我电话的请打电话,不知道的请:GodwitNow@Gmail.com 谢谢先!!

在Excel单元格内制作二级下拉菜单的方法(转)

原帖链接:http://blog.eastmoney.com/yfyhdggg/blog_170119076.html

在Excel的单元格中利用二级下拉菜单,可以保证输入名称的统一性,而且可以提高输入速度。其制作方法也很简单,下面以省市名称为例简要介绍制作方法。
第一步
在第一个工作表的A1至A8单元格内分别输入北京市、东城区、西城区、崇文区、宣武区、朝阳区、丰台区、海淀区,在B1至B8单元格内分别输入河北省、石家庄市、保定市、沧州市、邯郸市、邢台市、衡水市、承德市,在C1至C8单元格内分别输入河南省、郑州市、开封市、洛阳市、焦作市、新乡市、许昌市、周口市等。

第二步
单击“插入”-“名称”-“定义”,将A2至A8定义名称为“北京市”,将B2至B8定义名称为“河北省”,将B2至B8定义名称为“河南省”,将A1至C1定义名称为“省市”。
第三步
在第二个工作表内,选中A列,单击“数据”-“有效性”,将“数据类别设”置为“序列”,在“数据来源”栏内输入“=省市”。
选中B列,单击“数据”-“有效性”,将“数据类别设”置为“序列”,在“数据来源”栏内输入“=indirect(A1)”,此时会弹出一个窗口,提示“源目前包含错误,是否继续”,不必理会它,点“是”即可。此时,单元格内的二级下拉菜单已经形成,不信,你试试看。当然,明白了制作方法,您可以根据自己的需要制作出各种各样的二级菜单来。

回到顶部