Dec 18

       话说某雄是个菜鸟程序员之余还是个菜鸟OP

       今晚做了一个从文件到数据库的尝试。

       需求是这样的:

       文件中有两千多条记录,每条有三个数据,数据与数据间用空格分隔

       要生成一个sql文件,把这些记录中的数据赋给数据表中的三个字段,其他字段是常量,插入一个数据表t_target

       郭公推荐在shell script中使用awk,一翻查阅了解到这个东西是一种针对行的操作,根据空格判断单行中各个记录

         eg: 记录:RichardF is niubility在使用awk后被判定为:$1=RichardF, $2=is, $3=niubility

         完成一行记录的操作后自动到下一行

        

             eg:

            shell:echo -e “a b c\n1 2 3″ | awk ‘{print “a=” $1 ” b=” $2 ” c=” $3}’

            output: a=a b=b c=c

                        a=1 b=2 c=3

            )

       那么大体思路就很显然了,直接在shell script 中拼接字符串成sql插入语句,中间的参数使用awk分别获得,然后管道输出到指定文件。

       而中间涉及到一些小问题:

       如何在awk中输出单引号?

       答:用一对单引号夹住转义单引号,即:’\’’

       如何在awk中使用正则表达式?

       答:因为需求中只是固定地替换一个字符串的一部分,故此处的解决方法为在执行awkprint方法前做 一个gsub的小处理

       (

        eg:

        shell script: echo -e “/abc/1/2\n/abc/3/4″ | awk ‘{gsub(”/abc/”,”2008/”,$0);print $0

        output: 2008/1/2

                    2008/3/4

        )

       解决这两个小问题后,大功告成,特别鸣谢大能的郭公以及把原文件数据分隔设定为空格的poppy以及baidu

       有时间再行补充更详细的awk用法~

Dec 15

 

  系统分析的文档基本写完了,最近听说要加个测试计划,再议罢,那也是小事了。

  曾经无比想在搞定这纠结了大半个学期的文档后写一篇blog,连开头都想好了:“由这一刻我的人品由负归正……”然而和所有长时间的活计一样,当你最后把它完成了,无论你爱极了它或者烦极了它,你都没有那种极具张力的叙述把激越的文字弹射到纸面上,略记一点这大半个学期文档写作的得着吧。

  其实我初期给它的界定是“决不应付”,之前没有估计以后也不会有这样的机会,自己作为从系统分析到程序设计的所有角色出现在一份文档里,好比演员在一部戏里分饰多角,那感觉要多爽有多爽,但在process中我发现这需要基于一个几千块的小系统写一份几十万系统规模的文档,所有关于扯字的词汇瞬间在我脑海中发芽开花。我不反对做大量的工作,我甚至也不反感做大量我看不到意义的工作,但要说做明明可以以少量工作替代的大量工作,我不觉得这是件明智的事,尤其是所有的这些重复而不实事求是。

  每次听到xp那句“呃……还是……写一下罢”时都异常崩溃,我不确定他老人家确定自己希望看到一份怎样的作业。而每次点开那个文件夹,我告诫自己,“责任,责任……”我的兴趣在于开发,但有责任在这前面的时候,应该够上这个底线,java一点说,兴趣是个private,而责任是public的,很多方法等着调用。YiZin这条DNA很好很好。

  AK君在校内留言说文档写作是IT民工的基本工,在process中多有体会,写文档时我喜欢走个神,想象下这个系统值几十万,想象一下会由十几口人联合开发,感觉写文档还是个深有可究的活计。

  虽然用了YiZin的资料夹,但是总体来说我们是把它当FTP使得的,于是我们同一个设计报告的多个版本之间联系其实是断裂的(或者好听一点叫简单增量吧),单人/双人负责维护单个文档的多个版本其实一不利于文档规模的生长,二不利于文档的sharing和多人修订(这其实是某些文档从可读到可用的重要因素,窃以为),我们需要一开始引入一个文档的版本管理软件,到中道想起,为了保持连贯性就没有提,作为一个技术方面给出支持的人,我在这上面缺乏足够长远的眼光。

  然后是命名统一的问题。其实这个量的文档,我们用来规划全局的时间还是太少,很多命名需要及早预见并统一的,好几份报告我在修订的时候都做了一些去除命名差异的工作,但估计还是有很多漏过去的,排版的两位女士麻烦多操心了。

最后是关于程序接口,我觉得,经此一役再让我control大规模的文档写作(不是这种文档和程序规模完全不对等的路数),我肯定会要求所有程序的所有接口出来checklist,精确到类型和变量命名规则。各个模块在旷日持久的开发完成测试好后准备release时发觉接口对不上,灾难。

  谨在此感谢Pronergy的四位teammate,大家共同营造了一种非常好的团队氛围,不拖沓,有效率,精益求精,对得起专业力量四个字。在我视野不够开阔视线不够长远带来的大大小小问题后,大家依然出色的完成了任务。

  希望我们的努力能告诉后来人,在这里劣币驱逐良币也不是必然的,踏实专注到底会得到认可。后面文档的收尾和开发的起步,加油。

  莫堕英雄之志,天下当有大同。

Dec 4

         星期四,星期四,又到了发博的时候。本来这周想上一篇Windows缓冲区溢出的实验报告,但是发觉上面还有没理清楚的地方,于是先发一篇杂谈,说说这个冬天中国互联网纷飞的口水。

         如果说中国的互联网企业的领军人物,说一句北百度南腾讯估计也没有犯什么原则性错误,恰是这一南一北两大中国互联网企业在这个冬天不约而同被卷入了成长中的事事非非。

         先说百度。

         首先,我仅以我个人名义从精神上表示对百度100%的支持。

         我不讳言这里有我个人感情倾向的问题,但就是从客观的角度,一个成立8年而成为中文第一搜索的企业,百度的过失至少在我的价值体系中值得宽容。

         前天逛某论坛看到一贴,说083大傻:电视看国足,牛奶喝三鹿,搜索用百度,小佩服了一下作者的押韵水平;前天在望公屏幕上瞅了一眼李彦宏百度空间——下面的留言,大惊叹了一翻我泱泱中华博大精深的骂文化。明嘲暗讽揶揄腾挪者不乏其人,有人一脸正气的说:“我搜索只用Google,百度,能用吗?”我听到那语气背后深深的大是大非原则立场,我听到了家国恨,我听到了英雄志,我听到了奶牛翩翩舞蹈于金盘之上的全新审美。于是我颤栗着问了一句:“Google全球还是Google中国?”“当然是中国啊!”然后滔滔不绝的向我描述Google中国的优质体验——广告是在右边的耶~

         某雄大囧。

         我不知道多少转用Google中国的人是倾倒在这种“优质体验下”的,如果很多,我只能更肯定的说,百度依然是中文第一搜。从03年家里装宽带我就开始比较多的上网,最开始就是用的百度,感觉还是相当OK的,Google也用,那时候还不知道分Google全球和Google中国,中文看着容易懂,就用中文,感觉也就那样,百度还顺手一些。上大学之后才知道Google中国和Google全球不是一路货色,加上也开始对命中率什么的有了点关注和比较,就有了拿句口头禅:“内事不决问百度,外事不决问Google”,一直到现在。

         以上简要回顾一下我用搜索引擎的历史,我想说的是,如果你对搜索的需求就是输入关键字回车的话,实事求是说,百度在大多数情况下比Google中国更简单可依赖。我不否认Google全球是一家伟大的互联网企业,但搜索涉及的分词问题,除了技术之外还有语言习惯,风俗很多的因素在里面,Google中国如果要在这一方面做得足够好,除了给Google全球的搜索引擎做汉化外,还有更多值得研究的地方。不打广告的说,百度更懂中文。至于负载能力,想想你用百度的时候敲完回车后的感觉,想想这家公司为超过60%的中文用户提供了同样的体验。Google中国能不能面对这样的负载我不敢断言,因为它就没有面对过。至于命不命中,本来就是很主观的事,就像这两个搜索引擎搜“冯健雄”都搜成了中兴那位管理人员,对于我个体来说,他们两家命中率都低。所以在能提供主体信息的前提下,命中率10%以内的偏差我觉得都是可理解的,如果真说Google中国有什么高命中率的领域,或者某些敏感词汇的尺度比较松,仅此而已。

如果你的关注点还包括这两家公司提供的网络APP,很好,百度有MP3搜索,有百度贴吧,有百度知道,Google中国自主研发的呢?或者语言工具凑合算一个吧,亮点实在不多。

         再来说说竞价排名,这个百度被人诟病甚多的模式我觉得本身有其内在商业逻辑的合理性。服务更好,产品更优的企业更能出更高的价钱排更靠前的位置,这逻辑没问题吧?模式没错,百度千错万错,大概就是错在没控制好手下那群代理上了虚假广告和没做成左右分栏,然后被央视爆了把大的。易地而处,如果你是李彦宏,如果你手下是一家纳斯达克上市的企业,如果你面对是151.21美元/股背后的赢利压力,如果你的利润80%来自于竞价排名,你能说砍了就砍了,说分栏就分栏吗?那是李彦宏啊,你以为是李逵啊。二八定律大家都听说过吧,有些取舍是不得不做的,有些改变是不得不谨慎的。8岁的百度还很年轻,40岁的李彦宏还有机会,成长毕竟要付出代价。

         央视尚且给三鹿打过广告,它自己有多洁身自好,我很怀疑;这个失误是不是就值得广大网民那样的口诛笔伐,我很怀疑;纸质媒体洋洋洒洒的大篇幅跟进是不是有谨慎的思考过,我很怀疑。

         只可以说这仅仅是一场又大众媒体引爆的口水战,无关乎技术,也无关乎道德。百度竞价排名也不是一两年了,但是这场口水仗中,骂得最起劲的扪心自问,你真的有那么不爽竞价排名?这只是一场缺乏独立思考的从众游戏,一场借助网络便捷传递的话语狂欢,就好像是你去看一场你对两边都很陌生的球赛,你叫不出任何一个球员的名字,无碍你跟着大家一起玩人浪,一起在进球时欢呼,一起在犯规后骂娘。海德格尔的分析很不幸又言中了,我们害怕作为独立的人去选择和面对选择后的种种不确定,我们沉溺于众人,象众人一样享乐,象众人一样标榜,乃至演化出象众人一样排斥从众,象众人一样标新立异这种搞笑现象。非主流为什么成了主流,百度为什么被群殴,社会现象背后不离的总是人心。

         我相信百度能够挺过这一次危机,甚至转化这一次危机。这种氛围我莫名的觉得适合他们那位孤傲而天才的CTO,他老人家身上的吕布特质在稳定繁荣期或者会人心思变,在需要快速推进,需要特种部队,需要狼一样杀一条血路的危局里,李一男的过往让我感觉他能。而且在气质这种虚无缥缈的背后,有中国互联网踏入3G这样的实情,3G,通信,华为出来的李一男,呵呵呵呵~

         不过在网络APP这一块,好像知道之后百度还没有太让人惊艳的东西,poppy表揍我,Hitalkqq比起来我还是用后两样比较多,一个高质量,一个有Network EffectionHi要加油啊~

         期待09年百度的华丽转身。

 

(最后再口水一下:李彦宏说他在北大信息管理学到了搜索的真髓,某雄在人大信息管理学到的大概就是谨慎估计信息管理的效果和怎样写如同Oracle DBA mannual一样的文档……呵呵,好罢,因为他是李彦宏,而我只是我,和学校无关。)

Nov 29

 

         这是一个开始。

         有道是,不能写而博谓之人,能写而博谓之妖,以前熟悉某雄的人知道我向来奉行人妖路线,能写,无博客。那时候以文学青年自诩,随性非凡,自谓下笔骚气蓬勃颠倒众生。随性的最大表现就是更新不定时,可能一夜7写不用歇,可能3月一写用手捏,要大家苦等更新这种造孽事情我是干不来的。

         好吧,我承认我捏造上述理由掩盖我的阴暗心理,既然阴暗,就不拉到光天化日下溜达了。总的来说,那时候“年轻人啊,感情用事,不理性”,那段读者小众下笔如风的日子,是我写作的黄金时代。

 

         上大三后和自己说,“不年轻了,不要感情用事了”,所以凡事要reason,博与不博,屁大点的事,也要reason一番,作为懒的借口。不想还真是撞上一个。

         人民大学有郭公讳斌者,编程极猛,j2ee达“略懂”之境,多蒙教诲。他给出的reason是:写博客就是建立自己的网络话语权。一句话说得某雄内心庐山瀑布那个倒流啊,回九天上去了。我向来乐于把话语权解读为“拍着桌子说话”的时候那张桌子,有一张没一张气势大不一样。于是域名,架站,挂主题,一个皮痒阴暗骚气蓬勃的博客应运而生,中间望公讳旺帮忙良多,一并谢过。

        

         Programming, 一个新的开始。

         从今天起,做一个IT的人,开机,编程,单步调试。

         间或在某个分号后YY一下自己会有一所大房子,面朝大海,春暖花开。

         以前的熟人或多或少奇怪我怎么操练起了程序,还那么毅然决然。我想,首先是面包使然。当你善于写一种很小众的文体,你就应该有觉悟,不是编程也会是其它可以迅速创造价值的东西,在你二十岁之后替代它在你生活中的位置。专业把我分到了贼船我就当海盗,一个明刀明枪靠手抢掠的海盗比起OOXX来说也是很光荣的。卿本佳人,不要做鸡。(我知道这句很有歧义,只是告诫自己不能太苟且,没别的意思)

          再者电脑这机器是个死物,只要你技术足够牛叉,能让它乖乖地干你要它干的事,充分满足在下某种阴暗皮痒的心理。御心,御人,御物,前两个再搞不定,最后一个还是靠谱的。郭公曰:“御物,就是编个程。”上等非凡的话。

          到底是一件很值得做的事,往低里说好歹是个手艺饿不死(旁白:你怎么不去修自行车),往高里说是为共和国的信息化进程出一分力(旁白:你还不如说推动人类进化),事实求是的说,即使没有上面“卑微”的想法或者“崇高”的目标,我还是愿意每晚晚睡一点,打开那个叫做eclipse的程序,进去缠绵一翻。

          你或者可以称之为兴趣。

 

         Poetry,另一种形式的开始。

         我依然乐意写诗,也依然敬仰那些把这当一门事业的人,我敬仰所有坚持信念的人。他们的人生很适合写成回忆录,一件无视一切坚持一生去做的事,无论最后成功与否都足够励志。但到了一定的年龄真的需要一定的历练,背着一筐词汇走到一片叫做生活的旷野,那里有真正的禾穗谷黍,那里有真正的刀钺斧矛。

         像一个原始而野蛮的人,在结束狩猎后活下来,让篝火烤开身上所有细小的伤口,饮酒食肉,击筑而歌。

         兴许这个,才是我押韵的开始。

        

         只要足够心魔,人完全可以为一个目的干两个相悖的事,就像两个不相关的词汇可以有一个相同的开始。

         Program

         Poetry

         P是一切的

         开始。

         摩西可以劈开红海,却终不能带以色列人走进应许之地,通往迦南地的路,神启约书亚用刀矛打通。人类青春期诞生的旧约属于水和言语,人类后青春期诞生的新约,必然属于烈火和行动。

         人在纯精神的领域可以很诗意地过活,可以有很多不切实际的理想,一朵朵恍如盛开在云端的空中花园。但当你有朝一日期望身临其境,你才发现每一座空中花园下都立着一个拿着汉谟拉比法典的巴比伦王。

         今天,我在通往巴比伦的路上。

 

(广告:有意关注一个菜鸟程序员的成长历程或者一些皮痒匪气文字的各位,欢迎用力撞击右上角的RSS订阅)

Nov 24

Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!

Next Entries »

˽ ҳϷ˽ ҳϷȫ ⴫˽ ˽ sf ˽ ߵӰ ⴫˽ ½˽ Ľ ݷ
˽ ҳϷ˽ ҳϷȫ ⴫˽ ˽ sf ˽ ߵӰ ⴫˽ ½˽ Ľ ݷ