2010年10月的时候下载过Evernote,但在使用上没有多大感觉,于是自己在3月份开发了一个非常简单小程序GLNote记录每天所做的杂事保存到Google Docs,基本上每天都有记录。但在年末回顾的时候遇到了麻烦,Google Docs适合文档存储,在阅读组织文档方面的效率很差。在苦恼中把Evernote更新到最新版本,决定尝试使用下。 我的需求非常简单,记录每天都做了些什么事情,方便阅读与后续组织。在使用Evernote写了第一篇文档后,开始喜欢上它。 一 支持Lion系统全屏功能 我非常喜欢Lion系统的全屏功能,在全屏下面可以认真做事情不被外界干扰。这篇文章在全屏下面完成,非常赞。 二 非常强大的Tag标签功能 使用Tag组织文档,非常方便以后阅读,这个是我现在急需的功能,写了很多东西,方便回顾非常重要。 三 有非常强大的Chrome插件 Clearly 收集网络上的资料又有一个好方法,可以使用Clearly插件把文章从一堆广告中剥离出来保存到Evernote,方便知识管理。 四 还支持语音笔记 这个功能挺好的,例如用来提高自己的英语口语水平。 五 有非常强大的Chrome插件 剪辑至Evernote 可以选择网页内的任何一个区域内容剪辑至Evernote,这又满足了我一个需求,可以把喜欢的微博内容剪辑下来,再也不怕被删了! 2012年开始全面使用该软件记录工作与生活,每月60M的免费空间不知道够不够用,如果不够,应该会考虑包年服务,一年$45,还是非常超值的。
移动阅读时代iPad阅读App分享二
这周继续分享阅读App。因为喜欢阅读,一直在寻找汇总此类App。
一 iBooks
苹果官方App,阅读体验一流,可以书店里下载购买图书。
二 Stanza
免费阅读软件,有一些国内电子书资源可以添加下载。例如 www.cnepub.com,阅读体验尚可。
三 豆瓣阅读
豆瓣阅读正式开放,已经可以通过支付宝购买电子书。花了0.99体验购买流程,还行。
四 网易阅读
网易阅读有一些免费书籍可以下载阅读,还不错。
五 字节社
之前的唐茶电子书系列现在推出字节社阅读App,以后出版的唐茶电子书都可以在字节社App里购买。
移动阅读时代iPad阅读App分享之一 Amazon Kindle
第一 Amazon Kindle App
Amazon Kindle是一套非常完整的电子书阅读解决方案,从移动端到Mac/PC客户端再到云阅读,让阅读变的更加方便。Amazon云还提供5G免费存储空间用来存放书籍,对大多数人来讲,空间绝对够用。
之前购买的6寸Kindle阅读器适合阅读制作精良的原版mobi电子书与6寸PDF电子书,iPad Kindle App可以阅读一些扫描版本的中文书籍,超大的书籍比如上百兆可以通过iTunes上传到Kindle App里面。
Amazon Kindle 相关软件下载页面,点击查看。
移动端
Kindle阅读器与各色Kindle APP组成强大的移动阅读体验,Amazon提供的云服务可以通过Email或者Send to Kindle(Mac版本地址)软件推送书籍到Amazon云空间,云空间再自动分发到Kindle阅读器或者iPad上面,非常快速方便。
6寸Kindle阅读器适合长时间阅读,电子墨水不会刺激到眼睛,iPad的屏幕如果长时间观看眼睛会很累。但中文类的6寸的适合在Kindle上阅读的电子书相对来讲资源并不是那么丰富,Amazon Kindle还没有进入中国,国内没有渠道能够购买到中文电子书,所以解决方案要么是购买纸质书或者下载盗版的扫描电子书。
在未购买iPad之前,不喜欢在电脑上面看扫描版本,所以一直购买纸质书。书籍的一个缺点,积少成多后实在是太重太占空间,对于在外漂泊每年都有可能换地方住的人来说,携带实在不方便。所以入手Kindle与iPad后,基本上不打算再购买纸质书,除非实在很特殊的原因,比如像《乔布斯传》这样有纪念意义的书籍。
iPad上面的Kindle App中国区账号没有办法下载,需要注册一个美国区账号下载,注册美国区账号方法,选择一个免费的App下载,在跳出的窗口里选择创建新账号,在选择支付方式的时候会有None选项出现,可以顺利注册美国区账号,只要通过邮件激活账号即可。
Mac/PC端
Amazon同时推出Mac上面的Kindle客户端,可以同步Amazon云上面的书籍到机器上阅读,但一直不喜欢长时间在电脑上面阅读需要思考的书籍,太累。Send to kindle Mac版本出来后,更方便上传书籍文档到Kindle。
云阅读
使用HTML5技术构建的云阅读,有了更棒的软件系列,暂时也没有花时间在这个上面,也许是一个很好的补充。
所有的Kindle系列,书籍可以同步,连阅读的位置也可以同步,所以,真的很强大。期望Kindle能够尽快进入中国,中文类的最新书籍能够尽快在Kindle上面销售。
VIM插件推荐Syntastic.vim
本周又发现一个非常棒的VIM插件Syntastic,包含很多语言的语法与编码风格检查插件,其中PHP与Javascript正是现在我需要的。它的GitHub地址:https://github.com/scrooloose/syntastic,按照它的安装文档,很容易搞定,不过它只支持*nix系统,Windows下面暂时没有办法使用。
第一步:
建议先安装VIM插件pathogen:https://github.com/tpope/vim-pathogen,一个VIM插件管理插件。按照它的安装说明文档很容易搞定。
第二步
从GitHub Clone Syntastic到 ~/.vim/bundle/目录
第三步
开始配置Syntastic支持PHP语法检查,在~/.vimrc加入
" 在打开文件的时候检查 let g:syntastic_check_on_open=1 "phpcs,tab4个空格,编码参考使用CodeIgniter风格 let g:syntastic_phpcs_conf = "--tab-width=4 --standard=CodeIgniter"
CodeIgniter的风格GItHub地址:https://github.com/thomas-ernest/CodeIgniter-for-PHP_CodeSniffer,如果不了解PHP_CodeSniffer,Google之。
默认情况PHP语法检查 display_errors=0,需要编辑 ~/.vim/bundle/syntastic/syntax_checkers/php.vim,改成display_errors=1
let makeprg = "php -l -d error_reporting=E_ALL -d display_errors=1 -d error_log='' ".shellescape(expand('%'))
第四步
开始配置JS语法检查,这里使用jshint。需要先安装好Node,NPM,再使用npm安装好jshint,参考https://github.com/jshint/node-jshint/
上一张PHP检查效果截图:
Fitbit 健康运动数据跟踪器使用经验分享
自从在爱范儿看到Fitbit的报道便留心上这个小设备,一个不错的健康数据跟踪器。它能够让你了解到每天走了多少路,走了多少步,走了多少个台阶,睡眠质量怎么样,是个非常不错的健康监控设备。在3月中旬的时候从淘宝上入手一个进行试用,美国价格$99,淘宝价格大致在700左右。
一 设备非常小巧,与U盘一般大小,可以放在口袋里或者使用附赠的佩戴小挂件挂在皮带上。不过,需要小心哦,防止被水淋湿。还有因为小,佩戴身上要注意防止丢失。
二 记录的数据准确度还行,可以看下我一天的数据。
三 可以每天晚上同步一次,顺便充电。提供的充电与数据传输的底座还算比较小巧。
四 投资自己是一件非常靠谱的事情,之前投资知识,现在也要投资身体与健康,购买这个设备是非常不错的选择。
推荐淘宝购买地址:美国代购直邮Fitbit Ultra Wireless Activity Plus SleepTracker
2012年4月初最近更新Mac上的软件
1. Xee 更新2.2,可以支持双指滑动查看图片,不会像2.1.1一样,双指滑动会切换图片。
2. Git开始使用Homebrew进行编译安装,升级到1.7.10,公司项目使用git svn。
3. css.vim ,https://github.com/ChrisYip/Better-CSS-Syntax-for-Vim/ 更新css语法支持新的html5与css3。
4. QQ升级到2.0.2,需要的功能基本上已经拥有,例如传文件夹,不再提醒等,平时很少用QQ。
5. 升级了QQ输入法2.1与搜狗输入法1.5测试版本,原先使用的搜狗输入法会出现卡机现象(1.5测试版还是有),在VIM下面输入中文与VIM的自动提示插件有冲突。现在用QQ2.1感觉也不错,在两个输入法软件之间切换没有什么成本。
6. 版本帝Chrome已经升级到18,Firefox也在努力,已经升级到11。
7. 使用App Store下载Xcode 4.3.2,这个版本与原先有巨大差别,Xcode安装在Application下面,安装的时候会建议你清理之前的版本。
现在每天都用Evernote写点东西,记录一点东西,已经深深爱上它,强烈推荐给还未使用的朋友。版本一直比较稳定,没有更新。
最后一直在期待新版的Macbook,2010版本的Macbook Air在CPU上面比较弱,原先内存加到4G已经不够用,真的期待新版与夏季的OS X Mountain Lion。再次观看了Mountain Lion的介绍视频,一致的软件使用体验非常棒,这绝对是一个趋势。以后设计产品,需要考虑在笔记本、平板、手机等众多电子设备上保持一致的用户体验。
Git学习资源书籍与工具推荐
因为公司的项目一直使用SVN进行版本管理,所以Git的实践机会大部分来源于业余项目,还处于初学者阶段,上周看到一个一步一步学习Git的GitHub项目Githug,感觉非常不错,偶尔想起的时候去练习一下,现在到第11步。
Githug项目地址:https://github.com/Gazler/githug Git Your Game On
同时在微博上面看到推荐蒋鑫的 GotGitHub 书籍,看了收获也不错,推荐大家也看下,比较详细的介绍GitHub。之前一直没有用过Gist,发现这是一个非常棒的分享代码片段的工具。在wordpress插件中搜索了下果然有Gist相关的插件 Embed GitHub Gist,可以把代码嵌入到Blog中。
console.log('文艺青年');
alert('Hello World');
String.prototype.trim = function(){}学习书籍:
ProGit电子书 http://progit.org/book/zh/
Git社区文档 http://book.git-scm.com/
Debian 6 init.d中的脚本缺少BEGIN INIT INFO引发的软件更新错误
服务器使用Debian 6系统,今天在执行apt-get upgrade命令时出现问题,软件包没有完全安装好,下面是错误信息。
Reading package lists… Done
Building dependency tree
Reading state information… Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
Setting up mysql-server-5.1 (5.1.61-0+squeeze1) …
Stopping MySQL database server: mysqld.
insserv: warning: script ‘php-fpm’ missing LSB tags and overrides
insserv: There is a loop between service nginx and php-fpm if stopped
insserv: loop involving service php-fpm at depth 2
insserv: loop involving service nginx at depth 1
insserv: Stopping php-fpm depends on nginx and therefore on system facility `$all’ which can not be true!
insserv: exiting now without changing boot order!
update-rc.d: error: insserv rejected the script header
dpkg: error processing mysql-server-5.1 (–configure):
subprocess installed post-installation script returned error exit status 1
configured to not write apport reports
Errors were encountered while processing:
mysql-server-5.1
E: Sub-process /usr/bin/dpkg returned an error code (1)
从错误信息中了解到 /etc/init.d/php-fpm 脚本没有按照规范来写,可以参考http://wiki.debian.org/LSBInitScripts
### BEGIN INIT INFO
# Provides: php-fpm
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts php-fpm
# Description: starts php-fpm using start-stop-daemon
### END INIT INFO
使用Amazon SES与SendGrid群发电子邮件EDM
2011年所做的项目面向国外用户,服务搭建在Amazon AWS上面,所以一开始给用户发送系统邮件使用Amazon SES。但随着用户量增长与EDM发送需求的增加,Amazon SES日发送量配额不能够立刻满足需求,同时使用SendGrid发送EDM。
Amazon SES与SendGrid综合来说,发送成功率两者相差不大,API都易于使用。SendGrid强在他的报表系统,可以为每次发送的邮件建立组,了解每次发送的到达率、打开率,会告知不能够送达的Email。
一 Amazon SES
PHP SDK下载地址:http://aws.amazon.com/sdkforphp/
第一步 注册Amazon AWS
第二步 下载Amazon AWS PHP SDK
第三步 设置php sdk中config.inc.php,AWS_KEY与AWS_SECRET_KEY
第四步 验证需要发送的Email地址
第五步 开始发送邮件
第六步 根据业务需求设计批量发送方邮件脚本
二 SendGrid
PHP SDK下载地址:https://github.com/sendgrid/sendgrid-php
第一步 注册SendGrid
第二版 购买套餐
第三步 在SendGrid系统后台设置基本信息
第三步 下载PHP SDK
第四步 开始发送邮件
第五步 根据业务需求设计批量发送邮件脚本
需要注意的问题:
1. 只给订阅的用户发送邮件,确保不要使用两者的服务发送垃圾邮件。我尝试使用Amazon SES给陌生人发送促销信息,很快得到Amazon SES的警告。垃圾邮件是被大家所唾弃的促销方式。
2. 保证发送的邮件地址正确。用户注册的邮件地址不一定正确,所以在邮件发送后,需要根据Amazon SES与SendGrid的反馈把没有发送成功的邮件地址加入到过滤表里,保证下一次不再发送。
3. EDM邮件必须要有退订措施。
查看Chrome扩展程序源码的三个方法
如果想了解一个非常精彩的Chrome扩展程序的源代码,可以有以下三个比较简单的方法:
一 使用7zip解压crx文件,在Mac下面可以使用Ez7z。
二 安装查看源代码的扩展程序
下载地址:https://chrome.google.com/webstore/detail/bbamfloeabgknfklmgbpjcgofcokhpia
三 Mac用户还有可以在
/Users/username/Library/Application Support/Google/Chrome/Default/Extensions
路径下面查看安装的扩展程序源码,如方法二上面的扩展,文件夹名称是 bbamfloeabgknfklmgbpjcgofcokhpia
使用上面三个方法可以轻松查看源代码了,不过,很多扩展的js都经过混淆压缩,不方便阅读。
JavaScript基础复习文章推荐
JavaScript现在是最热门的语言之一,只要是Web程序员都应该爱它。它上手非常快,但要精深它并且写好却不是那么容易,需要很长时间潜心学习。幸运的是,每个语言领域内都有很多大牛,他们都乐于分享,多看看他们的文章会受益匪浅。
Peter-Paul Koch,简称 PPK。
http://www.quirksmode.org/blog/
推荐看他写的书,中文名《PPK谈JavaScript》
John Resig,jQuery项目创建者。
Douglas Crockford,Yahoo资深架构师
推荐看他写的书,《JavaScript: The Good Parts》中文版本有翻译《JavaScript语言精粹》
语言的学习路径,对于非专业人士,一般是先有兴趣,去了解一点基础,自行开始一个项目,感觉良好,继续从事项目,一直从事项目。这样下来很多人的基础并不牢靠,自己也有这样的问题,趁现在有时间,开始复习一下JavaScript的基础,之前有很多没有注意的问题。
继续推荐非常不错的文章:
http://bonsaiden.github.com/JavaScript-Garden/zh/
http://ued.alimama.com/front-end/javascript-extend/
http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html
一个方便查看流行JS框架源代码的网站:
最后推荐大家到GitHub上面跟踪查看自己喜欢的框架。


