手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表2024年11月的文章

部分转:卡片、页与卷轴

其实想转这篇文章好久了,但一直在犹豫。众所周知,如今的pad上的文章、HTML网页,都在尝试着改变。如果让人还在不停的向上拖动页面,好象就会被人所诟病。
于是乎翻页就显得至关重要。
从最早ipad上可见的ibooks中的书籍可了解,翻页其实是一件很痛苦的事情。它需要将你的文章内容由程序自己算好,然后将它分页,于是这里面的代价消耗就非常大。一篇文章如果有上千页,当你选择改变字体大小的时候,ibooks就象死机一样,无法拖动。毕竟这个时候程序在计算页码,重绘页面。超级痛苦,而pad又不象台式机那样CPU强劲。带来的郁闷可想而知。
于是更多的人尝试PDF阅读,毕竟当一篇文章转为PDF后,带来的好处也是显而易见,格式固定,编排方便,可以随意跳转,而且PDF的格式公开,任何人都可以尝试制作它,更关键的是,ipad内建支持pdf(如ibook)。但同时也会有一点小问题,比如,不能调整字体大小,不能插入广告(我想这个对于想赢利的企业来说恐怕是最痛苦的),容易被人打包下走所有数据(企业会更恨这个原因)
当kindle出第二版的时候,很多人都在惊呼,阅读的时代要改变了。国内有个做kindle系统打包的叫做“多看”,它对PDF也做了处理,能够对PDF进行分页,很多国内的电子书用户都选择了多看系统,因为看书更方便了。(它实现的也是类似ibook的效果)
好了,先看原文吧,我废话太多了。。。。原文来自:http://apple4.us/2012/02/card-pagination-scroll-lawrence-column-for-blogweekly.html,我部分摘抄
正如原文中所说:

XML/HTML代码
  1. 关于分页与否的讨论自 1980 年代就已开始。苹果 Macintosh 的创始人杰夫·拉斯金用「卡片」和「卷轴」来比喻分页与不分页这两种对信息的呈现方式。到目前为止,万维网(web)基本是卷轴的天下。但电子书的勃兴令情况开始有了变化。  

互联网时代大家都清楚,鼠标滚动。。。

XML/HTML代码
  1. 和大部分软件一样,电子书软件的设计也能找到真实世界中的对应。正如早年的图形介面系统设计者根据桌面、文件、文件夹、垃圾桶这些办公环境中的标配物件想象出了一套譬喻,电子书软件从一开始就沿袭了纸书的习惯,以「页」为基本单位。另一方面,因为一些不必在此深究的原因,大部分主流电子书软件所用的技术恰恰就是万维网的技术──HTML, CSS, JavaScript,亚马逊的 Kindle 与苹果的 iBooks 都不例外。电子书事实上就是「分了页的网页」。  
  2.   
  3. 电子书的读者对于分页与否各有偏好,不过技术潮流由赢家设定。从过去几个月的发展看来,分页是大趋势。亚马逊不久前宣布将推出 Kindle Format 8 格式,将更多平面排版的元素引入 Kindle 书中。苹果的 iBooks 2 与电子书制作软件 iBooks Author 也做了类似的事情,且完成度更高。(其实苹果一直是卡片式设计的支持者。万维网出现之前最成功的超媒体系统 HyperCard 就出自苹果之手,他们甚至把「卡片」一词写进了软件名称。)Flipboard 和 Zite 等热门阅读软件用分页的方式对网页进行了重排,老牌浏览器 Opera 亦于去年启动了实验性的 Opera Reader 计划,目标类似。  
  4.   
  5. 这里的终极问题是:设计师应该拥有多少控制权?在发轫于互联网时代的「赋权于民」的大潮流下,设计的权力是否也应该下放给普通用户?如上所述,从信息设计的角度而言,卡片式 / 分页设计的好处显而易见。它为设计师提供了一种具象而直接的限制(没有限制就没有设计)。对于读者来说,上下左右四条固定的边界也对注意力形成了一定程度的约束。这是用户权力的收缩,也是对设计师和内容生产者的控制权的重新认可。若卡片式设计能取代卷轴成为明日的主流,对于内容方实为幸事。  

卡片还是卷轴,其实真的很让人难以选择。原文中Kindle Format 8Opera Reader 都有链接,有兴趣的可以看看。
说来说去,这又回到了开始:

XML/HTML代码
  1. 在纸张出版的世界里,无页不成书。分页的重要性不太会被提起,因为它早已像空气一样无处不在。页界定了包裹内容的边界,是对信息的一种切割──我让你看到的不是全部,而是我挑选过的局部。以页为单位,给了设计师与编辑(编辑也是设计)做选择的可能──没有限制就无需做选择,而做选择就是设计。(包括选择今晚去哪家餐厅吃饭。)  

电子书也需要越来越向纸书那样有页码吗?不过,如果真的没有页码,跳转的时候会比较痛苦吧。从程序设计的角度来说,如果没有页码,也就是说几乎要将所有的内容放到一个容器中,而有了页面,为了翻页速度可以直接读取该页码附近左右的各5页内容,会更方便,也更减少资源的消耗。
然而,真的很痛苦,HTML分页太痛苦了。其他的呢?国内的几个ipad上的阅读软件现在都在好象慢慢放弃HTML分页了,而flipboard越仍然在坚持。
那,我们又是否应该再坚持呢?HTML分页有优点,它的优点在于可以很方便的为HTML网页做一些特别的效果。但带来的问题是大量的精力和开发资源都耗在这上面。(国内的专业做javascript开发的,真的很少啊。专业做这一行的,对于切入HTML排版好象也很排斥,不知道为什么。)
如果你是BOSS,你会怎么选择?

Tags: 分页, html, kindle, flipboard, ipad

转:Wat:只有程序员能看懂的搞笑视频

本来不想转,因为我对ruby不熟,但所幸对javascript还略懂一点。看了视频里的js的几个相加,觉得很有趣,比如,[]+[],[]+{},{}+[]等,超级有趣,不信?
看看视频你就会笑了,当然前提你懂编程。。。
原文来自:http://www.cnbeta.com/articles/172346.htm
新闻来源:oschina
最近一个叫Gary Bernhardt的程序员在CodeMash大会上的演讲的视频被人们炒的火热。在演讲中,他以Ruby和Javascript语言中一些很明显的很荒 唐的语言特征为乐子,逗的大家满堂欢笑。下面就是这个只有几分钟的视频,我把它加上了简单的字幕,奉献给大家。

Tags: wat, ruby, javascript

杂记

最近有一些事情是挺有趣的
1、apple4us上面推荐作者发布东西时用markdown格式。有时候想想也确实挺有意思,markdown的规格也不多,倒是值得尝试,他一连写了两篇:

  1. 为什么作家应该用 Markdown 保存自己的文稿
  2. 关于《为什么作家应该用 Markdown 保存自己的文稿》的回复

  后来问了一下 xheditor的作者问他什么时候开始支持markdown格式,他表示没空。纠结啊。

  不过网上还是有很多支持markdown格式的所见所得的编辑器的

2、学车。初次上车还是挺好玩的。没有想象中的那么难,其实开车还是很容易的。主要是有一点不太习惯。当然也可能是我自大了。

3、小米手机。同事买了一个小米手机,初次开机被我开了。哈哈。看了一下,屏幕上有点小问题,没有宣传的那么清晰。不过开机速度挺快。 但我想小米的问题应该在于,以后可能不能随便更新,得等小米主动更新才OK。当然这应该是品牌机的特点。再加上,这又是国内的机器,不一定会有那些闲聊人士来为他们更新ROM。

   android现在越来越让我们头疼,屏幕太不规范了,各种各样尺寸的都有,对开发人员来说真是一个非常痛苦的事情。所以,我小小的估计一下,以后android上面最多的普通应用程序估计都将会以一个框架套一个HTML为主。当然这只是猜测,毕竟线性排版也越来越方便了。

4、其实在写博客的时候想到了一些事情,结果看看电视就忘光了(好象是想说西游记?觉得这次的西游记妖怪是像妖怪了,剧情也有点象原著,但还是不太值得看。比如,虎力大仙那一段,旧版本的时候还有砍头、挖心等,现在科技这么发达了,挖心和油锅洗澡这两段居然反而没了。哎。而且虎力大仙在原作中是被孙悟空用毫米变成的狼狗把头叼走,这次是老鹰。。。。如果没看过书的人,或许觉得新鲜,可是西游记在我们的记忆里实在是太深刻了,所以就觉得。哎,反而好象还不如85版)

5、补充:想起来了,我还想说的是MAC QQ,真心不好看。不知道是怎么设计的,谁想出来的,真的不太适应和习惯。除了多个窗口集成在一起有点特别外,其他都让人不习惯。

 

Tags: markdown, 学车, qq

备忘:交规在线模拟考试

黑黑,想想还是要学车(请发 Ju 音)了,抽空抽空再抽空。嗯,想想啊,只能等着平时有空的时候看看在线测试题做做了。
90分,天知道以我这样的智商能不能考得出,都说有10分的必考题,错了就挂了。现在还不知道是哪10分。
反正先慢慢看了,每天做一遍题目。等考试了。
http://www.jsyks.com/sh/

这是我自己的备份,骂者、笑者请手下留情:http://www.jsyks.com/sh/

人家也不需要我来推广,等考完我也会删除它(我会扔在导航菜单里。黑黑)

BTW:上面的链接居然要在最后加一个"/"(我原先没有加,就报404错误了)。现在改正确了

Tags: 交规, 在线测试

转老王:PHPCheckstyle代码审计与Subversion钩子脚本

之所以要转这一篇文章,是在于有人在THINKINLAMP的googlegroup里提问,说是怎么在svn提交的时候对phpdoc进行检查,需要让他们强制写注释,否则就不让他们提交,于是我说了是在老王的博客上。但后来我看了一下老王新的博客,huoding.com,这篇文章不在(没有迁移到新的博客中)。所以我重新在本地复制了一下他在百度博客里的文章。
原文来自:http://hi.baidu.com/thinkinginlamp/blog/item/17476d22661ee6a94623e8d7.html

PHP代码审计方面的软件越来越多了,PHPCheckstyle算是最近比较活跃的一个。通过SVN钩子脚本的方式来调用PHPCheckstyle,可以强制代码必须符合预先设定的编码标准(比如PEAR编码标准),有助于在多人合作项目中提高代码整体质量。

PHPCheckstyle的设置:

安装真的没什么可说的,属于接插即用型的,唯一需要设置的就是config目录下的配置文件:缺省使用的是default.cfg.xml,你可以编辑它,按照官方文档适当的增减规则。不过PHPCheckstyle项目诞生时间短,不够稳定,截至0.8版本为止还有不少问题,使用前最好逐条规则进行测试。

最简单的运行方法如下:

php run.php --src /path/to/file

这样的话会生成相关的html文档,如果你想直接输出的话,请使用:

php run.php --format console --src /path/to/file

更多选项可以自己看帮助(php run.php就可以查看相关帮助)

Subversion钩子脚本:

下面设置钩子脚本,具体点说是前置钩子,也就是:pre-commit,通过钩子检查后才被允许提交到版本库。只有添加或更新的文件是需要检查的,如果是 要删除的文件,则没有必要检查;还有一个问题,PHPCheckstyle只能检查具体文件的内容,而在提交之前,我们想要检查的文件还不存在,所以我们 得生成一个临时文件,检查完再删除,另外,在生成文件时要注意其唯一性,免得多用户一起提交时发生冲突,注意事项了解的差不多了,可以写钩子脚本了:

代码(at pastebin.com):

01 #!/bin/bash
02
03 REPOS="$1"
04 TXN="$2"
05
06 PHP="/usr/local/php/bin/php"
07 SVNLOOK="/usr/bin/svnlook"
08
09 RUNSCRIPT="/path/to/run/php/script"
10
11 CHANGED=`$SVNLOOK changed -t "$TXN" "$REPOS" | grep '^[U|A]' | awk '{print $2}'`
12
13 for FILE in $CHANGED; do
14     if [[ "$FILE" =~ \.php$ ]]; then
15         TEMPFILE=`mktemp`
16         $SVNLOOK cat -t "$TXN" "$REPOS" "$FILE" > $TEMPFILE
17         MESSAGE=`$PHP $RUNSCRIPT --format console --src $TEMPFILE | head -n -2`
18         if [ ! -z "$MESSAGE" ]; then
19             rm -rf $TEMPFILE
20             echo "$MESSAGE" | sed -e "s|$TEMPFILE|$FILE|" 1>&2
21             exit 1
22         fi
23         rm -rf $TEMPFILE
24     fi
25 done

关于Shell,如果有不清楚的可以自己搜索一下,网上有很多类似的文章

钩子脚本还可以做很多事情,比如核对PHP脚本语法(php -l),而且通过管道符不用生成临时文件:

MESSAGE=`$SVNLOOK cat -t "$TXN" "$REPOS" "$FILE" | $PHP -l`

运行后,不用判断MESSAGE是否为空,而是根据退出状态来判断脚本是否有语法问题:

if [ $? -ne 0 ]

PHPCheckstyle配置和使用多少还是有点别扭,有机会试试PHP_CodeSniffer配置钩子脚本更简单

BTW:发现一个PHP Commit Hooks项目,有点意思,可以看看。
-------
---EOF---
最后,我也下载一份PHP COMMIT HOOKS项目 ,有点意思,可以少写很多了

Tags: svn, checkstyle, thinkinlamp