当你的资料多到觉得很难管理的时候,那么就需要一个资料管理库了,Wiki库就是一个很好的选择。在个人电脑上需要安装MediaWiki。怎么安装和配置看 http://wasabi.javaeye.com/blog/309176 , 但网上关于wiki的资料要么只介绍安装和配置,要么就是整个wiki的使用说明,前者太简单,后者太庞大,这儿简单的介绍使用mediawiki来做个人资料库的几个注意点,准备用两天络络续续写完
1. mediawiki自带的编写界面惨不忍睹,特别是加一个分类(category)非常麻烦,所以必须先装一个FCKEditor界面美化包,怎么装自己google
2. 对程序员来说,会经常贴些代码在网页中,要是没有高亮那也是很难受的,所以我装了个SyntaxHighlight_GeSHi
3. 左边导航栏默认的其实没有多少使用价值,改之。参考网页 http://hi.baidu.com/heitangnaicha/blog/item/44b5057a2e66e3fb0ad187fb.html
譬如原来
* navigation
** mainpage|mainpage
** portal-url|portal
** currentevents-url|currentevents
** recentchanges-url|recentchanges
** randompage-url|randompage
** helppage|help
** sitesupport-url|sitesupport
我把它改为了 *Navigate **mainpage|mainpage-description **Special:WantedCategories|Categories **recentchanges-url|recentchanges 4. 关于如何改网页的名字,其实很简单,就是用网页上方几个tab中的move. 5. 不过如果你要改类名,默认方法就是把所有网页中用到这个类名的地方统统改过来,当然也可以试试MassEditRegex这个插件批量修改。http://www.mediawiki.org/wiki/Extension:MassEditRegex。我试了一下,没有安装上,可能是我的mediawiki版本不匹配
Wiki是真正来让你用的,所以mediawiki的界面再花俏意义并不是很大,多花点时间在资料库的组织上比较好。
1. 一个最大的问题是如何分类和网页命名。我觉得最好的一个方法就是仿照wiki百科,有一个标准总比没有标准好。譬如你想写一个介绍设计模式中的command模式的网页,那么在google上搜索command design pattern wiki,发现在wiki百科上有个网页名command pattern,那么你的网页名也可以取为这个,而且分类归为Software design patterns(wiki百科上这个网页还有几个分类,但第一个最能说明问题,所以只取一个足矣),Software design patterns 又属于Software design 类,Software design类属于Computer Science.Wiki百科是所有学科的分类,恐怕连火星家的扫帚都有分类,但程序员一般也用不到火星的东西,所以到Computer Science就足够了。
我的最顶上的分类是:
2. 关于wiki百科的命名:有几点需要说明:
(1) google 搜索出来的一般为网页,不是分类,如果要搜wiki分类,那么加上category字样,譬如google搜索algorithm wiki搜出来的是algorithm网页,但algorithm category wiki搜出来的wiki分类是Algorithms,所以如果你要给算法弄个网页那么取名为Algorithm,但如果需要分类,那么取名Algorithms.
(2)从上面的Algorithm和Algorithms的区别也可以看出wiki百科上类名用复数
(3)同时wiki百科上类名第一个单词首字母大写,但后面的单词首字母小写,譬如Operating system
(4)当一个网页名字很容易混淆时,在后面会加上括号,里面写类别,譬如Graph(data structure),请注意:类名不会有括号,如果是类名,只会写成Data structrue graph(当然wiki没有这个类)
(5)有时类名和网页可以同名,譬如Computer-aided engineering
(6)注意网页名和类名一般都不简写,譬如Object-oriented programming不会写成OOP,原因相当简单,对我们程序员来说OOP自然代表Object-oriented programming,但wiki百科包含的是世间万物,难不准没有同名的。同样的道理,如果能肯定只有一个名字时,那么用简写,譬如vector(stl)。
3. 如果你的英文不是烂到连software engieering都不知道什么意思的话,那么无论是界面、网页、类名都要用英文,以前我就碰到过Wiki中文界面出问题的情况,具体的就忘了,反正改为英文就OK了。
4. 对有些资料譬如是pdf/doc文档,那么没法放到mediawiki里,我在电脑硬盘上专门建了一个目录,分类大体也是mediawiki的分类,放着这些资料,然后在mediawiki网页中指出资料在哪里。