mywhere

我的地盘,听你的。Google Maps API mashup,Location Based Service, and other thinking about internet

星期五, 十二月 29, 2006

国内在线地图服务列表

  • go2map(http://www.go2map.com)
    国内最早提供在线地图服务,地图数据比较全,但是不支持firefox,技术更新比较慢,2005年被Sohu收购,现在属于Sogou下的一个频道
  • e都市(http://www.edushi.com)
    第一个推出基于像素画的假3D在线地图服务网站。由于数据完全靠人工绘制,使得它只会关注与大型城市。
  • 城市吧(http://www.city8.com)
    参考Microsoft Live Street Side的一个地图网站,这样一个网站的难度在于数据的收集
  • 都市圈(http://www.o.cn)
    同事推荐的,与e都市很像。我在firefox下没有打开
  • eemap(http://www.eemap.org)
    众多Google Maps mashup网站中的一个,因为在国内算是比较早,所以还是有些引人注目。我实在搞不懂,为什么他们要宣传是Google Earth的在线版?

Microsoft Virtual Earth与Autodesk的合作


虽然Map 3D/MapGuideWikiGIS Software list中排不上什么名次,但是Autodesk在GIS领域的抱负不可小觑。有一个不容忽视的事实就是,70%以上的矢量地图数据采用的dwg格式!这一事实决定了Autodesk在GIS领域的地位。
在刚刚过去的Autodesk University 2006上,Autodesk也表露了他在Geospatial领域的战略雄心。例如很有创意的推出了一个与Microsoft Virtual Earth合作的项目: construction management application.

其实在几个月前,Autodesk也推出了一个Google Earth的插件,可以很方便的将利用Civil 3D设计的道路、桥梁等模型导入到Google Earth中,让用户可以在相当于真实世界中对设计方案进行预览。
这两个产品突破了我们的传统思维:类似Virtual Earth,Google Maps这样的在线地图网站,除了导航,我们可以做很多事情。
我们下一步需要考虑的是,GIS软件公司应该怎么面对这种变化?

利用Google Maps进行车载导航成为可能?

Google最近对Google Maps进行了更新,使得它能够支持文本化的搜索界面。此举的目的是为了更好的支持盲人和视力有障碍的浏览者,因为这些浏览着访问网站使用的是语音阅读软件,如果网页没有很好地遵循W3C的标准,阅读软件肯定无法识别内容。我记得大力推广web standard其中一个重要目的就是accessiblity. (我只能说,国内在这方面做得实在是太差了。目前国内做得比较好的在线地图网站go2map居然在firefox下无法使用!也许他们认为根本就没人用这个浏览器,更不消要考虑这些视障人士了。)
Google Maps的这次改进,无疑会增加众多视障用户,但在技术实现上难度上并不大。对其他普通用户的体验几乎没有任何影响。但我的想法是,现在Google Maps支持了文本化的查询,那么就很容易可以改造成一个基于语音的移动(车载)导航工具。
大概的思路是:
1. 增加一个语音识别的wrapper,用于将驾驶员的语音转换为文本,作为查询的输入
2. 语音工具分析google maps的查询结果,然后将查询结果的文本转换为语音,并播放出来
3. 也可以结合google earth,将查询结果的坐标利用google earth实时导航
目前来看,语音识别的技术还不太成熟,识别率无法达到95%以上(vista上带有此技术,但是还没有体验过,据说识别率非常好),但是由于我们主要针对地点,目标库的容量要小很多,识别率应该相对高一些。文本语音的技术比较成熟,Windows XP上的效果就很不错。发展到现在,技术应该更成熟了。

星期三, 十二月 27, 2006

Treo 650安装梅花输入法成功

整个过程可以称得上峰回路转。刚买了650那阵,很是试了好几个中文输入法:巨硬、梅花、掌易。再网上倒是很容易就找到下载的,但是我安装到650上以后,在输入的时候总是无法调出中文输入法的界面。当时把我給急得不行,折腾了好久,始终没辙。得了,我只好认命,中文只能用手写完成,这也是我用650一个多月以来唯一的遗憾。
前几天陪土人(室友的外号)逛电脑城,看到一个卖650的柜台,于是问掌柜的,应该如何安装中文输入法?他说应该把输入法安装到RAM中,不要装在SD卡上。当时听得我只汗,如此简单?!我原来似乎一直都装在SD卡上的,为了节省可怜的内存。另外告诉我一个消息说,650的ROM update已经到1.3了?!听得我半信半疑。
回到家,首先第一件事就是把梅花安装到650的RAM上。设置,退出,进短信程序,输入测试,faint,依然没有出现输入法。掌柜的也是外行?!
今天在路上,开着pTunes听podcast的同时,开启了dialbyphoto,可能因为内存不够的原因,650重启了。路上匆忙,也没在意。回到家发短信的时候,突然发现在屏幕的右下角出现了传说中的中文输入的小图标。连忙输入拼音,果然,梅花出来了!额滴神,终于出来了!

由此看来正确安装梅花,需要:
1.程序安装在RAM中,不要安装到卡上 (程序安装在RAM和SD卡上有什么区别,谁能给解释一下?)
2.手动重启一下650 (有人以为650没有reset孔,其实你把电池盖打开就看到了,在电池一侧的护边上)
中文输入搞定,现在650完美了。

ps. dialbyPhoto是一个非常不错的软件,UI非常漂亮,我真有购买license的想法,只是对中文支持不太好,稍许遗憾。

星期六, 十二月 23, 2006

GPS接收器移动定位精度标准

很让人意外的事情,不是OGC,而是American Society of Agricultural and Biological Engineers (ASABE) (美国农业及生物工程师协会?)开始了一项计划,来考量GPS设备的移动定位精度。原因嘛,还是ASABE自己的需求。因为ASABE使用大量的配备有GPS的移动设备来采集农业相关的信息。当然他们需要知道在移动设备上,GPS的数据精度了。

星期二, 十二月 19, 2006

Zend Framework 0.6.0 preview release

Zend Framework好久没有更新,这次更新版本号一下子从0.2.0变成0.6.0
我在办公室简单的测试了一下mywhere.org,结果发现了问题:
Zend_Controller_RewriteRouter::setRewriteBase方法没有了
然后打开0.6.0的文档看一看究竟是什么原因。
原来从0.6开始,Zend Framework开始支持subdirectories的url rewrite,而并不像一开始那样,只有基于root directory才可以。因此设置url rewrite的根目录现在不是router的职责,而是controller的了。明白这个道理,修改起来也比较简单:
//$router->setRewriteBase($baseUrl);
$controller->setBaseUrl($baseUrl);

同时另外的一个新功能是,可以用Zend_Config来配置RewriteRouter。这是我期待已久的,因为对一个网站来说,rewriter router会很复杂,同时规则也会很多。如果都写在index.php里面,会让那个文件很庞大,同时也不要管理和维护。现在可以用Zend_Config来管理,那意味着这些router规则可以写在.ini和.xml的配置文件里。文档中使用了一个小的例子:
/**
* Example INI:
* routes.archive.route = "archive/:year/*"
* routes.archive.defaults.controller = archive
* routes.archive.defaults.action = show
* routes.archive.defaults.year = 2000
* routes.archive.reqs.year = "\d+"
*
* routes.news.type = "Zend_Controller_Router_StaticRoute"
* routes.news.route = "news"
* routes.news.defaults.controller = "news"
* routes.news.defaults.action = "list"
*/
$config = new Zend_Config_Ini($file);
$router = new Zend_Controller_RewriteRouter();
$router->addConfig($config, 'routes');
现在看来晚上回去第一件事情就是需要把目前的那个肩负rewrite router和url generator两项工作的mywhere_rewriterouter进行改造了

星期三, 十二月 13, 2006

下注于赛道,而非赛手

下注于赛道,而非赛手,是我从一位记者写的关于Sequoia Capital(红杉基金)的一篇blog中看到的一句话,我看完以后觉得挺有感触,因此也把自己MSN的签名改为这个。(刚改了签名,Adrian就问我,怎么对VC有兴趣?果然都是同道中人,也看了那篇blog)。
今年因为室友的一些熏陶,投入了股市,增强自己的投资观念。
受Sequoia Captial这句投资理念的影响,最近在选股票的时候也有所考虑。前几天买了上海汽车(600104),因为我已经感受到汽车现在正成为中国人民的大众消费品。现在无论你打开电视还是报纸杂志,整版整版精美的广告,除了房地产,很大一部分就是汽车。如同以前流行过的白酒、VCD机和MP3一样,各式各样各种牌子的汽车连篇累牍的在电视里播放广告。但是汽车行业相比VCD\MP3等这些电子产品,行业进入门槛相对较高,同时淘汰周期也更长。这决定了它不会是另外一阵风。
汽车行业就是我看中的赛道,在这个赛道中,我下注的就是上海汽车。我相信上海在中国的地位,决定了上海汽车在中国汽车行业的地位,同时由于上海汽车在上海的工业布局中扮演了重要的角色,使得它的发展潜力巨大。
很幸运,今天上海汽车涨停,也算是对自己选择的一些肯定。但是股市起起伏伏,一个涨停说明不了什么问题,也许明天就跌停也说不准。

对Blogbus的UI的一点建议

看到Keso最近写的一篇blog,介绍blogbus刚刚度过自己的四岁生日。我应该早在武汉读书的时候都已经听说了blogbus,似乎是我们旁边湖北商业学院某一个学生最先开始建立的一个BSP网站,所以对他相对于其他的BSP还是多了一份亲切。
不过迄今还没有体验过它的服务,今天看了Keso的文章,有了兴趣前去一看。看了首页,觉得确如Keso所言很朴素。随手点了首页推荐的一个blog:这里是我的伊索城,一位女性blogger essotracy写的。依然比较朴素,虽然一开始有一个警告的对话框,说页面不支持我的浏览器(我用的是Firefox2.0),请使用IE4.0或者更高版本的IE,但是整个页面显示还是没有任何问题(当我在写这篇文章再去刷新的时候,警告对话框不再出现了)。essotracy选用的模版比较简单,比较正统的blog的排版方式。
我发现一个UI上的小问题,关于分页的显示。blogbus采用的方式如本文最下面的截图所示,由于essotracy太过勤奋,写了很多的文章,所以页面数达到八十多页。我第一次看的时候有点搞不太清楚,不明白怎么一下就分页82了,愣了一下才回过神,原来82就是当前页,点击81则是浏览前一页。
Blogbus直接采用页码来分页,而且是倒序,对于程序实现当然是最简单的,但是对于浏览者来说不是最直接的,我认为比较好的方式应该是,上一页,下一页的模式。有这么一个说法的:不要让浏览者思考,don't make me think。另外,在进入了其中的分页以后,当前页与其他页在页码列表中的显示并没有太大的区别,这样不能让浏览者很快的知道自己当前所处的位置,从而选择继续往后浏览或者向前。希望blogbus在这个细节上能加以改进。

星期一, 十二月 04, 2006

MSDN提供了Vista下载,但是却不提供Product Key

Microsoft在阿联酋的迪拜六星级酒店宣布Vista正式RTM那天,我登陆MSDN发现已经开始提供了Vista x86版本的下载。立马用服务器开始下载,MSDN提供的那个下载软件似乎有些问题,连续下载超过几个小时它就暂停,需要手动resume。就这样,用了三天终于下载完成,得到一个2,615,834KB的DVD ISO文件,文件名为:en_windows_vista_x86_dvd_X12-34293.iso
上周去宁波参加了公司的ELP培训,也没有机会找机器安装。今天一早上班就用VMWare建了一个新的vm image来安装。似乎VMWare workstation 5.0还不行,又到官方网站下载了最新的5.5版本。但是费了半天劲,发现MSDN还没有向我们这些订阅用户提供Product Key. 每次去点击“获取Product Key”,总是返回一个出错的页面。不知道是我们的账号权限问题还是Microsoft确实还没有开始提供。
题外话,大致的安装流程是,用户输入Product Key,安装文件会根据Key来判断用户购买的是什么版本的Vista(Vista提供了六个版本,有Home,Business,Starter之类),自动进行安装。也可以你先安装,然后安装完成后再输入序列号。但是安装程序提示,这样做有可能会丢失数据。我开始还以为,不同版本会是不同的安装包。看来微软为了省事,就提供了一个统一的安装光盘。但是这似乎更容易被黑客破解。