All Stories

从滑动手势谈到Qt

  N9作为Nokia推出的唯一一部装载MeeGo系统的手机,主打宣传的是其滑动手势。   滑动手势在其他触摸屏设备上已经有所应用,各种移动操作系统也对其有一定的支持,但在N9上作为主推特性的滑动手势主要是基于Qt这个跨平台的开发框架实现的,因为从实现角度讲,N9装载的MeeGo系统的UI都是建立在Qt的基础之上的。   Qt自从被Nokia收购后,一直致力于在移动设备上的移植工作,尤其是对Symbian的支持越来越多。而MeeGo这个原本由Nokia和Intel合作开发的项目,同样做了很多跟Qt适配的工作。   Qt做了很多为方便实现触摸操作响应的工作,特别是后来推出的Qt Quick,彻底地让UI和业务逻辑分享。美工可以只使用非常简单的脱胎于JavaScript的声明式语言QML来构建UI,而程序员则可以专注于使用C++或JavaScript实现底层的业务逻辑。Nokia为QML提供了非常丰富的UI元素,还为Symbian系统特地实现了一组扩展的UI控件,这已经可以实现绝大多数的UI需求,各种UI元素又可以随意组合从而构建出更加复杂的应用。而且Qt还提供了多种QML与C++交互的机制,如果QML内建的UI元素不能满足实际需求,程序员可以用C++实现复杂的UI,而Qt本身又有基于CSS style sheet的UI方案和Graphics View的方案,这都让开发人员可以快速地制作出炫目的UI来。另外值得一提的是,基本上可见的QML UI元素,都为触摸操作甚至滑动手势提供了一定的支持,这从QML自带的Demo就可以看出来,不但需要的代码量非常少,而且做出的UI效果却非常时尚。   可以这么说,Qt推出Qt Quick这个方案,代表了应用程序开发的一个方向,快速制作精美UI的方向。基本上所有大的开发框架/解决方案都采用了类似的技术,比如微软的WPF,Mozilla的XUL,甚至Qt在开源界的长期竞争对手Gtk+也有类似的方案,即用简单的标记式、声明式的语言构建UI,减少美工们的学习负担和工作量,而使用其他功能强大、便于操控底层的语言实现业务逻辑。相比其他几个竞争对手,整体而言Qt的优势在于跨平台性好,配套的开发工具也一直在进步。但是它必然也有些缺点,比如一直以来Qt的运行效率不高,虽然Nokia收购后这在方面做了大量的努力;前不久Qt又回归了社区,Nokia成为了一个普通的贡献者,这也许会带来发展方向模糊,进度缓慢的问题,比如一直由开源社区在开发的Qt for Android的port,一年多了仍然没能正式发布。   总的说来,Qt是一个构建Windows、Linux、Mac OS X以及Symbian、MeeGo应用的低成本、高效率的解决方案。如果基于lighthouse机制的Android和iOS移植能尽快正式发布,那在普通消费型电子产品平台上,就真的如它的宣传语所说的Code Less, Create More, Deploy Everywhere了!

终于可以从Mac访问XP了

  自从上次笔记本拿去公司加入过域后,发现所有远程连接都不行了,包括http访问,远程桌面,smb共享文件夹,但ping ip是没有问题的,ping机器名是找不到主机的。昨天晚上一直搞到后半夜,各种组策略个性各种注册表修改仍然没有用。今天跟同事说了一下,同事说只要退出域就可以了。回来试了下,退出域,加入到workgroup,果然全都可以了,内牛满面啊!   鉴于笔记本的屏幕太小了,以后尽量都只从Mac远程连接过去访问吧。

准备培训

  长假后第一天上班,恶补了下.NET Data Access、ADO.NET的基础知识,叫我这样一点都不懂的人给人去培训,汗。今天看《C#高级编程》看了40页,明天继续看XML相关的内容,也是40页。   然后是安排在下下周五给自己team来个WinDBG的培训,这也是赶鸭子上架,其实我现在的水平,只是比他们多看了一两本书而已,实际能力跟他们差不多,只不过是让我负责这一块而已。我估计着这块的内容可以讲两到三次,每次两个小时,大体上可以分为基础知识,事后调试以及结合本项目调试。

乔布斯走了

  一觉醒来,最大的新闻是乔布斯挂了。这位跟胰腺癌斗争了多年的天才终于回归星辰的怀抱了。   在这之前,只是看过小篇幅的他的履历,怎么装配电脑,怎么开公司,怎么被赶出苹果,怎么发展NeXT,怎么回苹果,怎么将苹果带回巅峰。   数了一下,我第一次买苹果的产品是2006年上半年去香港,帮小妞带了一个NANO1,下半年我自己买了个NANO2,好像是2008年春节时,给表弟买了个Shuffle2,在2009年下半年买过个iPhone3G,在2010年上半年买过个Touch3送给了小师妹,还买了个Mac mini自己玩,今年先后买了Touch4和iPad2。一直想买个MBP,一直没下决心买,争取今年能入一个。   近一年来我一直把自己定位为一名果黑,但实际上这些普通消费型苹果产品我基本上都体验到了。实际上苹果产品给我的好印象只是工业设计好,它的软件体验其实只能说一般,大概是被果粉吹得厉害,而实际自己体验达不到期望的程度,反而有点失望。   不管怎样,乔布斯回到苹果这些年做出的成绩非常让人佩服。老乔一路走好。

杭州之旅

  这两天跑到杭州去玩去了。本来还真没这个打算的,一开始计划顶多是在绍兴随便逛一下,然后到上虞随便逛一下。后来甚至有点想放弃这个游玩安排了,不过嘛…反正是有点被人推着走的感觉,1号晚上才决定去杭州,2号下午才决定要玩两天。   昨天早起,匆匆吃完早饭,然后开车到绍兴文理学院北区西大门,等了一会儿,我一眼就认出樱子来了,她好像也是一下就把我认出来了。樱子脸蛋比我想象的可爱,大眼睛,圆脸,齐刘海,长直发。然后呢,还发现芭比的寝室的4sq点,哈哈。   先走的国道,再走的高速,进了杭州市区果然堵得一塌糊涂,跟去年到杭州的体验一样,这是我最讨厌杭州的原因,没有之一。先到了浙大玉泉校区,说是看看订房间,结果好像是太贵,然后折回余杭区的亲亲家园速8酒店,这个酒店大概是因为地处偏僻,是在网上能查到的在杭州的速8酒店唯一有空房的。   放好东西,去酒店附近一家快餐店吃了午饭,嗯,吃饭都2点多了,然后直奔灵隐。灵隐寺其实我没什么印象,而且实际上我基本是个无神论者,尽管一直有点幻想其实是有神的。她们三个倒是有点虔诚地拜了好多菩萨,我就一直在旁边看。之后是爬了飞来峰,爬上去一看,什么都没有,有种被坑爹的感觉,今天回来跟我妈一说,她居然老早就知道上面只有一块大石头而已,囧。   从飞来峰下去,有点迷路了,找车子一直没找到,最后一个热情的大叔把我们带到了停车的地方。然后开赴清河坊街,结果呢,笨蛋导航再一次发挥了它的坑人本领,把我们带到了杭州火车城站,我靠。好在目的还有个名字叫吴山广场,离得不远。   晚餐一起的还有嘘嘘和芭比,也是第一次见他们,也正是因为要见他们,我们才决定把游玩地点移到杭州的。嘘嘘比较清瘦,五官有点小帅,芭比则真像她的昵称一样,长得很可爱,声音也可爱。是在沸腾鱼乡吃的,感觉味道还行,但量太少,六个人吃了550多,我感觉大概就7分饱吧。   吃完后,6个人一起逛河坊街,这条街是仿古的设计,各种食物、手工艺品等等,其实没什么想买的,就是随便逛逛。樱子跑来跟我说,发现一家哈根达斯,于是我进去问了一下提货券能不能用,居然可以,好开心,于是我请大家吃。偏心了点,我跟樱子吃的是浪漫之舟,他们都吃的是单球,嘿嘿。吃完哈根达斯,就跟嘘嘘芭比分别,各自回住处了。   每次住酒店,我都不敢关灯关电视睡死,还不敢裸睡,真是没有安全感啊。   早上5点多就醒了,然后看动画片,直到快8点时又睡了半个小时回笼觉。9点多时樱子发短信叫下楼,退了房,去沙县吃了早点,开始今天的行程。   比较搞的是,她们说在网上已经订了西溪湿地的门票,要去西溪游客服务中心取,至于那个游客服务中心呢,是在一个叫天目山路的周家村路口处,没有门牌号的,然后呢我们就先跑到天目山路,然后一路张望寻找那个游客服务中心,那三个丫头还说昨天去灵隐时看到过的,是在那条路线上的,导航和谷歌地图上都找不到这个周家村的地方,很是郁闷,沿着天目山路瞎开了一会,趁红灯时问了一位的哥,终于跑到西溪湿地了,最后才知道这所谓的西溪游客服务中心就在西溪湿地里面,我艹,你丫不会就直说你们在西溪湿地里面啊,业务水平太差了!   西溪湿地其实就是坐了坐船,有个高庄可以进去看一下,说是康熙时代一汉人高官的宅子,其他的就是一些吃的。用樱子的话说,如果叫嘘嘘来,说不定会觉得这坐船很好玩,像我们这种从小就在类似的环境中长大的,其实感觉很一般的。   两天的杭州之旅结束了,身体和精神上都有点累,不过现在回忆起来还是觉得有点小开心的。

装goagent for iOS

  回家了,可能还是因为长假的缘故,两个收费站都堵了好久,几乎每个服务区里加油的车都是排长队的。   下午又看了一遍goagent for iOS的wiki page,然后开始折腾。花了约2个小时把touch装上了goagent,感觉就是速度似乎比GFWInterceptor要慢,其他没什么区别。晚上又折腾了下,把iPad也装上了goagent,这样Flipboard可以添加上Facebook账号了。好像换了goagent唯一的好处是可以比较完美地上Facebook了,囧。嗷嗷嗷,更想去弄个Android机了!   让我觉得比较郁闷的是,在Mac OS X上用goagent,似乎添加的SSL证书不起作用。于是Ninayan在Mac上就不能连接Twitter了,纠结了。

时间不够用

  昨晚打电话,语气之冷淡之客套,太让我失望了。最卑贱不过感情,最凉不过人心。   给自己算了一下,我每天有12个小时不是在上班就是在上班路上,剩下12个小时里8小时要睡觉,剩下4小时里1小时用于洗漱清洁,剩下3小时里有2小时要去阿玛尼或原力健,最后剩下1小时要追小说。确实没时间做其他事啊,这样的日子难道我要一直过下去,直到垂垂老去?太可怕了ヽ(*。>Д   感觉我现在有很多想要做甚至必须做的事,可是很杂乱,我觉得我需要把这些事情理一理。首先,需要定好目标,而且目标是按时间来排序的,半年后一年后两年后三年后五年后需要达到什么目的。然后根据目标制订计划,为了达到这些目标,需要做些什么事。这样可以把现在想的那些杂乱无章的事情都填进去。   自从开始用Google Calendar后,感觉还不错,关键是除了web界面外还可以通过MS Exchange协议同步到手持设备上去,而且跟联系人和邮箱绑定,很方便,之前用doit.im其实感觉也还可以,但是它不能同步到我的C7上。不过Google Calendar貌似只能同步一个Calendar到iOS和Anna上,不知道Android上什么情况,真想弄个Android机玩玩。

C7终于刷出支持中文了

  昨天又不甘心,在网上一通乱搜,终于找到一个英文固件刷中文的方法,在dospy上有一篇帖子比较详细地介绍了整个过程,还是比较简单的,今天晚上回来搞了一下,其实就几分钟的事,终于搞定啦,内牛满面啊,然后发现Gravity已经过期了,我要去买么,唔。

Ninayan不能使用goagent是SSL证书的问题

  基本上确认了,Ninayan不能使用goagent是SSL证书的问题。本来Ninayan用的是Qt4.6中带的证书,而goagent自己又带了证书,可能两个冲突了,修改一下Ninayan,让它不使用Qt 4.6的证书,就能使用goagent代理了,这就比较头痛了。问题是原来在Ninayan中使用Qt 4.6的证书是因为有的系统上的SSL证书不全,Ninayan会不能正常访问一些https地址,可是现在却又要去掉,囧。   今天老大做了个Design Patterns in XXX,这个XXX是他最近几个月来写的一个小工具,走马观花地讲了Template Method,Factory,Strategy和Facade,感觉吧这些模式是怎么回事还是懂的,跟复习了一遍差不多,不过我写代码时其实很少考虑要用什么模式,叹气。   昨天拍的集体照,今天看到了,我怎么胖成这样,上次跟bobo见面时被bobo说了句“你怎么胖成这样?”我还觉得是不是有点夸张,现在自己看到了,一比较,才发现真的好胖,尤其是脸都变形了,减肥刻不容缓啊。惆怅。   早上照例翻看了点东西,然后悲剧了。悲剧归悲剧,反而有点解脱的感觉。精神洁癖偶尔也有点好处,叹气。