登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Chun Tian (binghe)

超越自我,洞察宇宙

 
 
 

日志

 
 

事务处理  

2013-11-11 00:01:52|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
事务处理 - 冰河 - Chun Tian (binghe)

我的 Leica M9 上的低通滤镜算是废了,灰尘和损伤已经导致小光圈拍的照片伤痕累累的,只能寄希望于学好德语,日后途径德国时花钱更换一下了。但要最终实现留学愿望我还要继续努力,就算只是为了抢救我当年砸锅卖铁买的这台照相机我也要好好努力一下。

我总共找了三位实力派人物帮我写推荐信,分别来自我的母校、过去的公司和现在的公司(客户)。事实证明还是外国人比较靠谱,不用催就自己写好把初稿发给我了。虽然我反复叮嘱只要照实写就好了,但我还是被那篇长长的推荐信深深地感动了,甚至重新认识了一遍我自己。相比之下国内的教授们处理这类事情就简单多了:学生只需自行代写一篇找教授们署名就好了。我一开始把事情想得太严肃,太不符合国情了。所幸后来就想通了。

最近深受德语老师的喜爱,主要是我学得确实不错。事实证明我的语言学知识积累非常有用,无论在语音还是语法上似乎皆有独到之处,而且难能可贵的是德语老师还懂一些法语,所以我们很有共同语言,偶尔探讨一些语言学方面的心得。另外我发现微信群的语音留言功能对于语言学习和交流相当有帮助,我所在的德语班发展势头良好,令人欣慰。另一方面,正以每天一个单元的速度向前推进《新视线意大利语》第三册(B2-C1),进展顺利,所以12月5日的B1考试我现在认为问题不大了。

工作上的事情变得处境微妙。现在似乎只要协调好我组里几位程序员的任务分配就可以确保产品的日常维护了,这样一来我的大部分精力无处发挥,终于必须回到最核心的长期项目上了。不过我发现相比实际写代码,思考过程更为重要——仔细的思考有助于避免一些无意义的编程工作。例如我最近终于想清楚为什么我的产品里不可能实现 Undo 的功能了,因为整个软件是一个数据库,理论上想支持事务是有可能的,但想要随意撤销针对系统里某个对象的删除操作却使绝对不可行的。一个例子就是 FileMaker 桌面数据库。这个软件在大多数时候用起来跟 Excel 差不多,可就是不能 Undo——一旦误删了一条记录或者字段以后就再也找不回来了。事实上所有数据库软件都是如此,而且理当如此。于是我开始学习《事务处理:概念与技术》那本书,看看有没可能把事务处理引入到 G2 中——所有针对知识库的操作在 COMMIT 之前都只在当前事务内可见,而 ROLLBACK 就相当于是一种 Undo 功能。(进一步想想,能否在编程语言级别实现事务处理呢?例如在 Lisp 环境里编程地 new 一个对象,但是除非 commit 当前事务否则这个新对象不会被其他代码觉察到?)

我认为事务处理和多线程都是正确的发展方向,但是潜在的工作量巨大,需要理解产品里几乎每一行代码才能把这些令人炫目的新功能实际做出来。但是我工作组里的程序员们各怀心事:有拼命做项目以期加薪的,有不紧不慢敷衍了事的,还有实在忙得没空做项目的,问题是没有人抱着理解产品里尽可能多的代码的心态在工作,所以真正关心这个产品未来的还是只有我罢了——虽然我也很忙,时间大多花在学语言上了。

上周从 Amazon 买了今年最新出版的 FrameMaker 11 教材以后终于认识到产品的文档化工作还有很长的路要走,尤其是在新老版本同时维护的时候必须能够用同一份 FrameMaker 文件分别输出用于新版本和旧版本的不同内容的文档来,这种复杂度要求比以往更高难度地使用这个软件。而对于我一直念念不忘的 DITA 转换计划,自从更加深入地了解了 DITA/XML 格式以后,我终于认识到这件事几乎是没可能自动化的:必须把每一个章节的所有子章节全部手工打碎成单独的文件然后重新组合起来才能,因为 DITA 和 HTML 或 DocBook 这类格式有一个最本质的区别,那就是 DITA 里不存在分级的标题,例如 H1/H2/H3/H4/H5 这种,DITA 里的章节标题分级是通过 DITA Map 里的树状结构自动计算出来的,所以我现有文档里类似标记是没办法直接转换的,除非手工全部拆开。这样一来还是老老实实地继续维护二进制 FrameMaker 文档,不要折腾了。
  评论这张
 
阅读(4163)| 评论(5)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018