作为程序员应有10项权利

1.每位程序员应该拥有一个安静的工作环境

2.每位程序员应该拥有听音乐的权利

3.每位程序员应该拥有一台高性能的PC

4.每位程序员可以选择适合自己的键盘和鼠标

5.每位程序员应该拥有良好的网络环境

6.每位程序员应该拥有两台或更多的监视器

7.每位程序员应该拥有一把舒适的椅子

8.每位程序员应该拥有合适的开发工具

9.每位程序员应该拥有PC管理员权限的权利

10.每位程序员每年至少有一次允许出席开发者讨论会

写出漂亮代码的七种方法

1, 尽快结束 if语句。
2, 如果只是简单的布尔运算(逻辑运算),不要使用if语句。
3, 在适当的位置加入空白,这不但美观而且让读者易懂。
4, 不要使用无谓的注释。
5, 不要在源文件中留下已经删除的代码,哪怕你标注了。
6, 不要有太长的代码,一个比较理想的长度是控制在120个字符内。
7, 不要在一个功能(或者函数内)有超过35行的代码。

程序员的九重境界

第一重:
在哪本电脑杂志上看见软件工程师这个职业介绍,或者走在大街上看见某某软件培训机构鼓吹培训完就能年薪10万的广告,有些羡慕那些编程序的,自己有些蠢蠢欲动。

第二重:
用控制台或者说SDK之类的东西写了一个“HELLO WORLD!”,感觉编程这个东西,太简单没难度。

第三重:
学会了简单的使用某某工具例如VC,知道怎么利用工具创建对话框之类的东西了,认为自己已经有了“扎实”的基础,出去找工作四面碰壁之后感叹人心不古世态炎凉。

第四重:
以极低的要求找到工作,突然发现自己不会的实在是太多太多,不求甚解是无奈之举。这个阶段写代码写完之后主要是试,试的标准:“能运行就是成功,不能运行就是失败。”一个小模块写完之后被黑盒蹂躏几十次稀松平常。

第五重:
突然意识到不能再瞎干了,于是知道了如何规范的写代码,尽力的把代码写的短小精悍,看一堆关于算法的书,并且会把自己的或者别人的优秀代码分门别类存起来,以便经常参考使用。

第六重:
做的时间越长,发现自己不会的越来越多,每每遇到不太理解的必然刨根问底,写完一段代码,一定仔仔细细把程序研究个透,不让他出现一点泄漏一点警告才罢休,以挑战白盒作为乐趣。

第七重:
把各种工具研究个稀巴烂,即使一个全新的语言或者工具,也能在半个月之内熟练使用,这个时候,仍然认为自己距离高手还有很大差距,遇到新手来公司面试,很惊讶这些人居然连怎么操作内存都不会就敢出来混了?

第八重:
把编程工具用烦了,开始喜欢控制台或者说SDK,纯粹的API编程变成了自己的最大乐趣。

第九重:
在电脑杂志上看见软件工程师的职业介绍,或者走在大街上看见某某软件培训机构鼓吹培训完就能年薪10万的广告,想对后来人说些什么却终究发现无话可说,只好一笑而过。

第一重到第四重,需要努力,第五重到第六重,需要悟性,想到第九重,需要智商和福缘。

知识点

【四大名绣】苏绣〖苏州〗、湘绣〖湖南〗、蜀绣〖四川〗、广绣〖广东〗 

【四大名扇】檀香扇〖江苏〗、火画扇〖广东〗、竹丝扇〖四川〗、绫绢扇〖浙江〗 

【四大名花】牡丹〖山东菏泽〗、水仙〖福建漳州〗、菊花〖浙江杭州〗、山茶〖云南昆明〗 

【十大名茶】西湖龙井〖浙江杭州西湖区〗、碧螺春〖江苏吴县太湖的洞庭山碧螺峰〗、信阳毛尖〖河南信阳车云山〗、君山银针〖湖南岳阳君山〗、六安瓜片〖安徽六安和金寨两县的齐云山〗、黄山毛峰〖安徽歙县黄山〗、祁门红茶〖安徽祁门县〗、都匀毛尖〖贵州都匀县〗、铁观音〖福建安溪县〗、武夷岩茶〖福建崇安县〗 

【扑克人物】 
黑桃J:查尔斯一世的侍从,丹麦人霍克拉   
红桃J:查尔斯七世的宫廷随从拉海亚 
梅花J:亚瑟王的著名骑士兰斯洛特 
方块J:查尔斯一世的侍从罗兰 
黑桃Q:帕拉斯o阿西纳,古希腊神话中智慧与战争女神 
红桃Q:朱尔斯,德国人,查尔斯一世的妻子 
梅花Q:英国的兰开斯特王族的约克王后 
方块Q:是《圣经o旧约》中的约瑟夫的妹妹,莱克尔皇后 
黑桃K:戴维,公元前10世纪的以色列国王索洛蒙的父亲,擅长弹奏竖琴 
红桃K:查尔斯一世,弗兰克国王沙勒曼 
梅花K:马其顿国的亚历山大大帝,最早go-vern-ment世界 
方块K:罗马名将和政治家朱亚斯o西泽,罗马统一后成为独裁统治者 

【十二生肖】 
〖中国〗子鼠、丑牛、寅虎、卯兔、辰龙、巳蛇、午马、未羊、申猴、酉鸡、戌狗、亥猪 
〖埃及〗牝牛、山羊、狮子、驴、蟹、蛇犬、猫、鳄、红鹤、猿、鹰 
〖法国〗摩羯、宝瓶、双鱼、白羊、金牛、双子、巨蟹、狮子、室女、天秤、天蝎、人马 
〖印度〗招杜罗神的鼠、毗羯罗神的牛、宫毗罗神的狮、伐折罗神的兔、迷立罗神的龙、安底罗神的蛇、安弥罗神的马、珊底罗神的羊、因达罗神的猴、波夷罗神的金翅鸟、摩虎罗神的狗、和真达罗神的猪, 

【年龄称谓】 
襁褓:未满周岁的婴儿 
孩提:指2——3岁的儿童 
垂髫:指幼年儿童(又叫“总角”) 
豆蔻:指女子十三岁 
及笄:指女子十五岁 
加冠:指男子二十岁(又“弱冠”) 
而立之年:指三十岁 
不惑之年:指四十岁 
知命之年:指五十岁(又“知天命”、“半百”) 
花甲之年:指六十岁 
古稀之年:指七十岁 
耄耋之年:指八、九十岁 
期颐之年:一百岁 

【古代主要节日】 
元日:正月初一,一年开始。 
人日:正月初七,主小孩。 
上元:正月十五,张灯为戏,又叫“灯节” 
社日:春分前后,祭祀祈祷农事。 
寒食:清明前两日,禁火三日(吴子胥) 
清明:四月初,扫墓、祭祀。 
端午:五月初五,吃粽子,划龙(屈原) 
七夕:七月初七,妇女乞巧(牛郎织女) 
中元:七月十五,祭祀鬼神,又叫“鬼节” 
中秋:八月十五,赏月,思乡 
重阳:九月初九,登高,插茱萸免灾 
冬至:又叫“至日”,节气的起点。 
腊日:腊月初八,喝“腊八粥” 
除夕:一年的最后一天的晚上,初旧迎新 

【婚姻周年】第1年§纸婚、第2年§棉婚、第3年§皮革婚、第4年§水果婚、第5年§木婚、第6年§铁婚、第7年§铜婚、第8年§陶婚、第9年§柳婚、第10年§铝婚、第11年§钢婚、第12年§丝婚、第13年§丝带婚、第14年§象牙婚、第15年§水晶婚、第20年§瓷婚、第25年§银婚、第30年§珍珠婚、第35年§珊瑚婚、第40年§红宝石婚、第45年§蓝宝石婚、第50年§金婚、第55年§绿宝石婚、第60年§钻石婚、第70年§白金婚 

【科举职官】〖乡试〗:录取者称为”举人”,第一名称为”解元”、〖会试〗:录取者称为”贡生”,第一名称为”会元”、〖殿试〗:录取者称为”进士”,第一名称为”状元”,第二名为”榜眼”,第三名为”探花” 

【四书】《论语》、《中庸》、《大学》、《孟子》 

【五经】《诗经》、《尚书》、《礼记》、《易经》、《春秋》 

【八股文】破题、承题、起讲、入手、起股、中股、后股、束股 

【六子全书】《老子》、《庄子》、《列子》、《荀子》、《扬子法言》、《文中子中说》 

【汉字六书】象形、指事、形声、会意、转注、假借 

【书法九势】落笔、转笔、藏峰、藏头、护尾、疾势、掠笔、涩势、横鳞竖勒 

【竹林七贤】嵇康、刘伶、阮籍、山涛、阮咸、向秀、王戎 

【饮中八仙】李白、贺知章、李适之、李琎、崔宗之、苏晋、张旭、焦遂 

【蜀之八仙】容成公、李耳、董促舒、张道陵、严君平、李八百、范长生、尔朱先生 

【扬州八怪】郑板桥、汪士慎、李鱓、黄慎、金农、高翔、李方鹰、罗聘 

【北宋四大家】黄庭坚、欧阳修、苏轼、王安石 

【唐宋古文八大家】韩愈、柳宗元、欧阳修、苏洵、苏轼、苏辙、王安石、曾巩 

【十三经】《易经》、《诗经》、《尚书》、《礼记》、《仪礼》、《公羊传》、《榖梁传》、《左传》、《孝经》、《论语》、《尔雅》、《孟子》 

【四大民间传说】《牛郎织女》、《孟姜女》、《梁山伯与祝英台》、《白蛇与许仙》 

【四大文化遗产】《明清档案》、《殷墟甲骨》、《居延汉简》、《敦煌经卷》 

【元代四大戏剧】关汉卿《窦娥冤》、王实甫《西厢记》、汤显祖《牡丹亭》、洪升《长生殿》 

【晚清四大谴责小说】李宝嘉《官场现形记》、吴沃尧《二十年目睹之怪现状》、刘鹗《老残游记》、曾朴《孽海花》 

【莎士比亚四大悲剧】《汉姆莱特》、《李尔王》、《麦克白》、《奥赛罗》 

【五彩】青、黄、赤、白、黑 

【五音】宫、商、角、徵、羽 

【七宝】金、银、琉璃、珊瑚、砗磲、珍珠、玛瑙 

【九宫】正宫、中吕宫、南吕宫、仙吕宫、黄钟宫、大面调、双调、商调、越调 

【七大艺术】绘画、音乐、雕塑、戏剧、文学、建筑、电影 

【四大名瓷窑】河北的瓷州窑、浙江的龙泉窑、江西的景德镇窑、福建的德化窑 

【四大名旦】梅兰芳、程砚秋、尚小云、荀慧生 

【六礼】冠、婚、丧、祭、乡饮酒、相见 

【六艺】礼、乐、射、御、书、数 

【六义】风、赋、比、兴、雅、颂 

【八旗】镶黄、正黄、镶白、正白、镶红、正红、镶蓝、正蓝 

【十恶】谋反、谋大逆、谋叛、谋恶逆、不道、大不敬、不孝、不睦、不义、内乱 

【九流】儒家、道家、阴阳家、法家、名家、墨家、纵横家、杂家、农家 

【三山】安徽黄山、江西庐山、浙江雁荡山 

【五岭】越城岭、都庞岭、萌诸岭、骑田岭、大庾岭 

【五岳】〖中岳〗河南嵩山、〖东岳〗山东泰山、〖西岳〗陕西华山、〖南岳〗湖南衡山、〖北岳〗山西恒山 

【五湖】鄱阳湖〖江西〗、洞庭湖〖湖南〗、太湖〖江苏〗、洪泽湖〖江苏〗、巢湖〖安徽〗 

【四海】渤海、黄海、东海、南海 

【四大名桥】广济桥、赵州桥、洛阳桥、卢沟桥 

【四大名园】颐和园〖北京〗、避暑山庄〖河北承德〗、拙政园〖江苏苏州〗、留园〖江苏苏州〗 

【四大名刹】灵岩寺〖山东长清〗、国清寺〖浙江天台〗、玉泉寺〖湖北江陵〗、栖霞寺〖江苏南京〗 

【四大名楼】岳阳楼〖湖南岳阳〗、黄鹤楼〖湖北武汉〗、滕王阁〖江西南昌〗、大观楼〖云南昆明〗 

【四大名亭】醉翁亭〖安徽滁县〗、陶然亭〖北京先农坛〗、爱晚亭〖湖南长沙〗、湖心亭〖杭州西湖〗 

【四大古镇】景德镇〖江西〗、佛山镇〖广东〗、汉口镇〖湖北〗、朱仙镇〖河南〗 

【四大碑林】西安碑林〖陕西西安〗、孔庙碑林〖山东曲阜〗、地震碑林〖四川西昌〗、南门碑林〖台湾高雄〗 

【四大名塔】嵩岳寺塔〖河南登封嵩岳寺〗、飞虹塔〖山西洪洞广胜寺〗、释迦塔〖山西应县佛宫寺〗、千寻塔〖云南大理崇圣寺〗 

【四大石窟】莫高窟〖甘肃敦煌〗、云岗石窟〖山西大同〗、龙门石窟〖河南洛阳〗、麦积山石窟〖甘肃天水〗 

【四大书院】白鹿洞书院〖江西庐山〗、岳麓书院〖湖南长沙〗、嵩阳书院〖河南嵩山〗、应天书院〖河南商丘〗 

【四大佛教名山】浙江普陀山〖观音菩萨〗、山西五台山〖文殊菩萨〗、四川峨眉山〖普贤菩萨〗、安徽九华山〖地藏王菩萨〗 

【四大道教名山】湖北武当山、江西龙虎山、安徽齐云山、四川青城山 

【五行】金、木、水、火、土 

【八卦】乾〖天〗、坤〖地〗、震〖雷〗、巽〖风〗、坎〖水〗、离〖火〗、艮〖山〗、兑〖沼〗 

【三皇】伏羲、女娲、神农 

【五帝】太皞、炎帝、黄帝、少皞、颛顼 

【三教】儒教、道教、佛教 

【三清】元始天尊〖清微天玉清境〗、灵宝天尊〖禹余天上清境〗、道德天尊〖大赤天太清境〗 

【四御】昊天金阙无上至尊玉皇大帝、中天紫微北极大帝、勾陈上宫天后皇大帝、承天效法土皇地祗 

【八仙】铁拐李、钟离权、张果老、吕洞宾、何仙姑、蓝采和、韩湘子、曹国舅 

【十八罗汉】布袋罗汉、长眉罗汉、芭蕉罗汉、沉思罗汉、伏虎罗汉、过江罗汉、欢喜罗汉、降龙罗汉、静坐罗汉、举钵罗汉、开心罗汉、看门罗汉、骑象罗汉、探手罗汉、托塔罗汉、挖耳罗汉、笑狮罗汉、坐鹿罗汉 

【十八层地狱】[第一层]泥犁地狱、[第二层]刀山地狱、[第三层]沸沙地狱、[第四层]沸屎地狱、[第五层]黑身地狱、[第六层]火车地狱、[第七层]镬汤地狱、[第八层]铁床地狱、[第九层]盖山地狱、[第十层]寒冰地狱、[第十一层]剥皮地狱、[第十二层]畜生地狱、[第十三层]刀兵地狱、[第十四层]铁磨地狱、[第十五层]寒冰地狱、[第十六层]铁册地狱、[第十七层]蛆虫地狱、[第十八层]烊铜地狱 

【五脏】心、肝、脾、肺、肾 

【六腑】胃、胆、三焦、膀胱、大肠、小肠 

【七情】喜、怒、哀、乐、爱、恶、欲 

【五常】仁、义、礼、智、信 

【五伦】君臣、父子、兄弟、夫妇、朋友 

【三姑】尼姑、道姑、卦姑 

【六婆】牙婆、媒婆、师婆、虔婆、药婆、稳婆 

【九属】玄孙、曾孙、孙、子、身、父、祖父、曾祖父、高祖父 

【五谷】稻、黍、稷、麦、豆 

【中国八大菜系】四川菜、湖南菜、山东菜、江苏菜、浙江菜、广东菜、福建菜、安徽菜 

【五毒】石胆、丹砂、雄黄、矾石、慈石 

【配药七方】大方、小方、缓方、急方、奇方、偶方、复方

脱口而出的100个经典英语句子

Any day will do? 哪一天都可以?

Any messages for me? 有我的留言吗?

Are you by yourself? 你一个人来吗?

All right with you? 你没有问题吧?

Are you free tomorrow? 明天有空吗?

Are you kidding me? 你在跟我开玩笑吧?

As soon as possible! 尽可能快!

Back in a moment! 马上回来!

Believe it or not! 信不信由你!

Better luck next time! 下次会更好!

Boy will be boys 本性难移!

Come to the point! 有话直说!

Do you accept plastic? 收不收行用卡?

Does it keep long? 可以保存吗?

Don’t be so fussy! 别挑剔了!

Don’t fall for it! 不要上当!

Don’t get me wrong! 你搞错了!

Don’t give me that! 少来这套!

(more…)

修改Oracle XE的并发数

在数据库服务器上运行 sqlplus system/password@xe (其中 system 是数据库用户无需改变;password 是数据库密码应指定为实际密码;xe 是数据库实例名称) ,然后执行:

alter system set session_cached_cursors=200 scope=spfile;
alter system set session_max_open_files=200 scope=spfile;
alter system set sessions=20 scope=spfile;
alter system set license_max_sessions=200 scope=spfile;
alter system set license_sessions_warning=200 scope=spfile;
alter system set processes=200 scope=spfile;

执行后,重启 Oracle XE 数据库实例即可。要重启 Oracle XE 数据库实例:

1. 如安装于 Windows 上,先运行 net stop oracleservicexe,再运行 net start oracleservicexe 即可。也可通过“服务”管理控制台重启 OracleServiceXE 服务。
2. 如安装于 Linux 上,先运行 /etc/init.d/oracle-xe stop,再运行 /etc/init.d/oracle-xe start 即可。

此时,可以支持 179 个额外的连接会话。

Java在Ubuntu 8.04下乱码的处理

在ubuntu 8.04里安装java后,会发现所有java的gui都会乱码,这是因为在ubuntu 8.04里uming.ttf变成了uming.ttc,而ubuntu里java默认的中文字体就是uming.ttf,所以只要获得它就可以了,比如:

sudo ln -s /usr/share/fonts/truetype/arphic/uming.ttc  \
/usr/share/fonts/truetype/arphic/uming.ttf

Live Writer for Windows 2003

  1. Find an Windows XP machine (WMWare if I say) and install WLW using the downloaded installer (WLInstaller.exe)
  2. Copy C:\Program Files\Common Files\WindowsLiveInstaller\MsiSources\Install_{9176251A-4CC1-4DDB-B343-B487195EB397}.msi to your Windows Server 2003 machine
  3. Double click the msi and finish installation

打开 Oracle*Terminal 文件 fmrweb 错误

Copy UTF8 resource file fmrweb_utf8.res to fmrweb.res. Make a
backup copy of fmrweb.res and replace it with fmrweb_utf8.res for
each active language. For example, UNIX users who have German
Applications installed, would do the following in their 8.0.6
ORACLE_HOME:

$ cd $ORACLE_HOME/forms60/admin/resource/ZHS
$ cp fmrweb.res fmrweb.res.bak
$ cp fmrweb_utf8.res fmrweb.res
$ cp fmrpcweb.res fmrpcweb.res.bak
$ cp fmrpcweb_utf8.res fmrpcweb.res
$ cd $ORACLE_HOME/forms60/admin/resource/ZHT
$ cp fmrweb.res fmrweb.res.bak
$ cp fmrweb_utf8.res fmrweb.res
$ cp fmrpcweb.res fmrpcweb.res.bak
$ cp fmrpcweb_utf8.res fmrpcweb.res

Modify Tk2Motif.rgb in your 8.0.6 ORACLE_HOME. For all
Tk2Motif.rgb files located at

$ORACLE_HOME/guicommon6/tk60/admin and
$ORACLE_HOME/guicommon6/tk60/admin/<LangCode>

open the file using any text editor and modify the line that looks like this:
!Tk2Motif*fontMapCs: iso8859-2=EE8ISO8859P2
Change the line to look like this:
Tk2Motif*fontMapCs: iso8859-1=UTF8
Make sure you remove the “!” character to uncomment the line.

Install scim from sourcecode

Install scim

Execute these commands in your console:

tar xzvf scim-x.y.z.tar.gz
cd scim-x.y.z

Unpack the source and change your current directory into the newly extracted directory. Then configure it:

./configure –prefix=/usr

It is highly recommanded to install scim into a system wide dir, like /usr.
Now you are ready to build and install scim:

make
make install

The second command needs to be executed as root.

You can now install other optional packages from the SCIM project. If you prefer the KDE desktop environment then read on to learn how to install skim, otherwise you can go to the System configuration howto.

Using the XIM (X input method) protocol

Being the least optimal approach this combination will work in every distribution/environment as long as you have X. Set the three variables according to the commands below:

export XMODIFIERS=@im=SCIM    #case matters for this variable!
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim

The enviroment variable XMODIFIERS specifies the XIM server to talk to. The last two lines are telling your system to disable everything except the native XIM protocol (X built-in) and to enable it throughout your system. Because the XIM protocol has a lot of limitations (for example, it may freeze your entire X when something goes wrong with the input method server), this combination of settings is generally not recommended.
Higher level input method protocol support

Alternatively to the above method, you can ask your GTK/Qt applications to make use of the GTK/Qt im-module, which are specifically designed to meet modern input method requirements. The GTK im-module support is a built-in feature in scim, while Qt im-module support is in a separate package, called scim-qtimm.

The Qt im-module support is experimental right now and the qt-immodule patch is not included in most Linux distributions. If you can not find a Qt with im-module support built-in for your favorite distribution, chances are that you have to setup your Qt to work with XIM (like other X based apps). In that case, XMODIFIERS must be setup correctly for any KDE/Qt apps to work with SCIM.

This time we should set our variables to these values:

export XMODIFIERS=@im=SCIM    #case matters for this variable!
export GTK_IM_MODULE=scim
export QT_IM_MODULE=scim

XMODIFIERS will be used in all X applications (via an older XIM protocol), such as xpdf. It does not have other more advanced input method abstract layers.

Default input methods of GTK/Qt im-module are set by the last two lines. Please set them as above. Even if the necessary support does not exist, these two lines should have no side effects at all on your system.