iPhone tethering, iPad & CMS
iPhone tethering
以前用WM机器的时候,机器内置internet sharing小工具。把手机连上电脑之后启动程序,电脑就可以用手机的GPRS上网了。没想到iPhone虽然有这样的功能,但需要给at&t 25刀一个月。再加上2G流量25,为了实现数据卡的功能一共要50刀一个月。擦,苹果太狠了。好在学校里有WiFi,一直没有相关需求。越狱之后开始使用OpenSSH等工具,并架设了iPod Server提供加密传输服务。最近去DC玩,碰到了一个需要上网但是没有WiFi的情况。突然反应过来不是可以组一个小的Ad-hoc网络再通过ssh tunnel用来tethering。一试之下成功了。回来一搜发现原来网上已经有了相关教程,所以具体步骤就不写了。可以参见这里。由于iPhone在用电池的情况下屏幕一关WiFi自动就断了,所以需要装一个小程序insomnia,可以在Cydia直接搜索安装或者sudo apt-get install com.imalc.insomnia。
这件事的感受是,知识的积累或者说熟练程度是很重要的,如果对ssh的使用和WLAN的知识没有一定的积累没有办法想出来这个方法。联想到BBS上关于CS教育的争论,个人的观点也是,记忆或者说熟练程度的积累是相当必要的。
iPad
从这个角度来看,其实iPhone已经可以完成很多事。基础命令方面已经实现了一个轻量级的shell,很多常用的命令都有;网络应用方面有lighttpd, php, sqlite, vnc server, ssh server,可以host轻量级的部落格,相册,wiki等;编程语言方面有轻量级的java, perl, python, 也有vim和mg (轻量级的emacs)支持;系统安全方面有nmap, sniffit, 防火墙等工具,嗅探个BBS密码,搞个arp攻击已经不成问题;GUI方面基于iOS,娱乐和阅读正是它的强项,html5也可以供我们在本机开发GUI程序。所以现在唯一的局限就是这个小屏幕,没办法直接在上面操作。由于iPad屏幕够大,感觉iPad+键盘似乎完全可以胜任日常的工作。因为科学计算方面本地有spacetime, 远程有matlab remote,云计算方面有GoGrid,rdp client和vnc client。唯一的缺憾也许就是没办法像tablet pc那样批论文。嗯。。。等有钱了+iPad2发布了,是不是要尝试一下传说中云中的生活呢。。。
其实这也涉及到一个积累的问题。如果不是在iPod/iPhone上做了这些实验,实现了这些功能,对linux的一套工具链也有了一些了解,肯定是无法有这样的感触的。踏踏实实积累,慢慢向前走才是王道。
Content Management System
最近在阅读一个大工程,涉及到很多文件和API。不自觉地就积累了一些分析和记录。只是这些记录存在很明显的链接结构,经常需要从一个函数跳到另一个函数那里去,单纯用文件保存很不方便,用OneNote的话又不方便导师检查和师兄指点。昨天突然想起来似乎可以用wiki之类的东西来组织。在cheng的推荐下试了一下 dokuwiki,果然很棒。一方面它完美的解决了实际问题,方便的跳转,简单的语法标记,很适合用来组织代码文档。一方面是它不需要关系数据库的支持,只要支持php就可以,所以可以广泛的部署和方便的迁移。对于类似的知识管理,也可以尝试一下。