存档

‘IT’ 分类的存档

Macbook pro 313更换SSD,吐槽Time Machine。

2014年5月26日 没有评论

更换SSD工作在大半年前已经完成。在更换SSD之前做了一个测试,结果惊人的低,我平时用机的确感到比较慢,比起新安装系统的时候慢,虽然别人都说Mac机不用整理磁盘的。而且磁盘速度也是不会约用约慢的。不过结果告诉我们事实是相反的。后来上网搜索了一下,速度不降低是有条件的。

DiskSpeedTest

阅读全文…

Bookmark and Share
分类: IT, 生活 标签:

在redhat6上安装gitlab

2014年3月12日 没有评论

由于公司需要搭建一个代码服务器,我当然选择了Git啦,不过如果只是安装Git的话,缺少了web界面去管理这个Git代码库,所以选择了Gitlab。不过Gitlab的官方安装指引只有ubuntu。我在ubuntu安装的时候没有遇到任何问题。不过在redhat6上安装就遇到较多的问题。所以在此记录一下,方便后人。讲真,为了安装这个代码服务器前前后后折腾了差不多成个星期,从成本效益来说,还不如去使用第三方的服务,例如,githut、bitbucket,或者国内的一些类似的服务商。还免维护。不过老板最终决定自己搭建。老细永远是对的。那就只能做。

由于文章我从markdown编辑器Mou copy过来的,可能在wordpress排版有点问题,大家将就看吧。

在github上找到一篇装教程 https://github.com/gitlabhq/gitlab-recipes/tree/master/install/centos

在安装前先看看注意事项。

阅读全文…

Bookmark and Share
分类: IT, 编程 标签: , ,

使用xcode去开发makefile的project(Building Makefile Projects With Xcode)

2014年2月19日 2 条评论

最近的工作方向又发生了变化,暂时放下IOS的开发。不过业余时间还是会继续研究IOS和MAC的原生程序开发的。这次又走回以前的伤疤–视频。希望这次可以成功。以前在视频这块搞左好多年。但是产品没有出来,最终已失败告终。这次一定要把产品搞出来。要不然以后都不再接触视频这一块。

言归正传,由于需要搞视频这一块,又需要重回到C/C++的大家庭。又需要解决开发环境的问题。经过多放面的考察和选择,暂定选择了xcode为开发环境,这2-3年都是使用xcode作为开发环境。一是熟悉。而且xcode有插件配置成VI的编辑模式。而且在mac属于POSIX系统。mac与linux的跨平台运行应该问题不大。可以在mac上进行测试与调试。最后再在linux测试。应该不会有太大的问题。不需要在开发的时候老是开着虚拟机。

使用xcode会存在一个问题,如何与编译现有的开源软件或者将来编写的程序进行跨平台编译。不过xcode还是比较强大的。支持makefile编译。具体如何做,请看官方说明。说明比较清晰。不过我还是来一篇图文说明,并把我遇到的问题给大家说明一下。省得大家走弯路。使用的是xcode 5。并使用一个流媒体的的开源软件Live555作为说明(live555这个软件下载解压后需要运行./genMakefiles macosx生成makefile)。

1、新建项目,选择Command Line Tool。(其实选择其他都可以,不过千万别选择External build system ,因为如果选择了这个,将会失去智能提示与定义跳转)。

Screen Shot 2014-02-18 at 5.24.04 PM

Screen Shot 2014-02-19 at 11.21.37 AM

阅读全文…

Bookmark and Share
分类: IT, 编程 标签: , , , ,

2013 AirPort Time Capsule备份大小设置及实用感受。

2013年11月28日 3 条评论

买左2013版本的AirPort Time Capsule有3个月时间了,最近这几天才在上边设置Time Machine备份,Time Machine的备份是非常霸道的,没有设置最大备份空间的。会把整个分区都占满的。在Time Capsule也不例外,移动硬盘可以专门划分一个分区给Time Machine,这样可以有效控制备份的大小。不过Time Capsule是不能划分分区的,Time Machine会慢慢把整个空间都填满。不过Time Machine是通过在Time Capsule上生成一个sparsebundle的磁盘影像文件进行备份的。可以通过这个sparsebundle文件进行做手脚,从而达到控制备份的大少。
在网络上找到好几种方法,不过发觉都不行。
1、修改Time Machine的配置文件,以控制大小。(不过这种方法在10.7以后的系统已经不支持了。)
2、自己生成sparsebundle这个文件。网络教授的方法是通过网络的mac地址生成sparsebundle文件,不过现在Time Machine生成的文件已经不带mac地址了。
3、Time Machine自动生成文件,然后删除分区,重新分区。或者重新调整分区大小。
这种方法会出现下边的提示
自上次备份后,备份磁盘““daozhao”的“AirPort 基站””的标识已更改。

该磁盘可能已被更换或抹掉,或者有人可能正尝试诱骗您的电脑备份到错误的磁盘。

阅读全文…

Bookmark and Share
分类: IT, 生活 标签:

ios5与ios6的屏幕旋转的差异

2013年5月3日 没有评论

ios5和6在屏幕的选择方面做了不少的修改。主要是取消了几个api的函数。
– didAnimateFirstHalfOfRotationToInterfaceOrientation: Deprecated in iOS 5.0
– willAnimateFirstHalfOfRotationToInterfaceOrientation:duration: Deprecated in iOS 5.0
– willAnimateSecondHalfOfRotationFromInterfaceOrientation:duration: Deprecated in iOS 5.0

– shouldAutorotateToInterfaceOrientation: Deprecated in iOS 6.0
剩余:
– willRotateToInterfaceOrientation:duration:
– willAnimateRotationToInterfaceOrientation:duration:
– didRotateFromInterfaceOrientation:
剩余这几个函数。平时的项目一般用系统旋转后自动对齐功能,大部分都可以满足需求。这次修改一个项目,tableview在旋转后cell需要加载不同的xib文件,于是重载didRotateFromInterfaceOrientation,不过发现系统并没有调用这个函数。想了一下,估计是tableviewController并不是rootviewControlller。而且是放在其他第三方的ViewController内,估计是第三方ViewController没有使用addChildViewController把tableViewController放入其子controller。查看了一下代码。发现估计是正确的。但是不太想修改这个第三方的ViewController。因为嵌套了2个第三方的ViewController,要修改起来会比较麻烦。
想了想使用注册旋转事件来处理这个需求。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didRotate:) 
name:@"UIDeviceOrientationDidChangeNotification" object:nil];
 
- (void)didRotate:(NSNotification *)notification
{
 
NSLog(@"didRotate:。---interFaceOrientation:%d,DeviceOrientation:%d",
        self.interfaceOrientation,[[UIDevice currentDevice] orientation]);
//[self.tableView reloadData];
}

阅读全文…

Bookmark and Share
分类: IT, 编程 标签: , , , , ,

准备研究node.js

2013年4月3日 没有评论

node.js—使用javascript开发后台程序,这东西一直对它都有误解,我一路都以为它是给前端的朋友玩玩后台的玩具。

直到早几天看到一个报道《LinkedIn从Rails迁移到Node:服务器减少27台,速度提升了20倍》(注:由30台减少到3台),才开始去认真了解node.js这个新玩意。发觉这个玩具非常强大。

对node.js的误解可能是由于一些对这个node.js的介绍都是介绍它是一个使用javascript的开发后台的解析器。其实node.js是一个基于事件驱动开发的服务器组件,,javascript只不过是这个组件的粘合剂。node.js是一种开发模式,是一种编程思想。其实它不一定选择javascript作为开发语言,可以选择lua,或者一种全新的语言。据说作者初期做的时候选择过使用lua的,不过速度不是很理想。选择javascript主要是因为google的javascript V8引擎速度超快,再加上javascript的闭包特性比较适合这种事件驱动开发模式和面向过程的语言。

现在讲讲我为什么对node.js有一种强烈的愿望去研究它。

1、node.js开发的产品吞吐量大,符合现在一些高并发的需求。而且比较方便扩展到分布式的应用。

2、我比较喜欢这种事件驱动模型的编程方式,以前搞tcp通信程序的时候我都是选择这种事件驱动方式去处理。虽然这种异步编程的复杂度比同步编程方式复杂些,但是这种复杂度比起多线程同步的处理还是方便很多。出错机会小很多,特别死锁这些情况很难在开发的时候发现的问题。

3、虽然我个人很喜欢c语言,但是使用c语言开发成本实在太贵了。加上有时候开发一些应用服务使用c语言也不合适。我觉得c比较适合在底层通信和网络通信部分用c是一个好选择,其它开发还是别用c比较好。node.js就是使用c来开发最底层的东西,例如:tcp通信通信。其余用脚本来处理。这样可以大大降低开发成本,需要速度快的地方可以用c/c++来来处理。既有开发速度又有运行速度。

4、我希望在我一个项目中编写一个爬虫服务。使用node.js可以方便地嵌入jquery。jquery的选择器对于爬虫服务抽取数据非常方便。不过目前发现node.js的html分析器都是直接用javascript编写的。可能性能不是特别好。希望可以把webkit的dom解析器嵌入node.js就强了,还可以适应一些不太标准的网页,例如一些闭合标签不完整的网页。

5、研究node.js的源码,希望将来可以参照它,把V8 javascript引擎引入在IOS开发中,提高一些ios程序的灵活性。虽然现在一些游戏框架使用lua来实现。不过我感觉用javascript实现会比Lua好。

6、还有一点,node.js比较简洁,轻量级结构。核心只包含最基本的库。其他通过插件扩充。这样学习成本比较底,同时拥有超强的扩充能力。

这里提一提Erlang,这个语言同样是一个面向高并发,和面向过程的语言。去年这个时候也花费了一些时间学习了。不过现在已经忘记七七八八了,只是记得它的编程思想,方式,方法。语法那些都忘记了。加上Erlang这个语言加上OTP的组件过于庞大。需要化好多时间才可以深入。不过它比起node.js的确强很多。但是node.js简单得多了。非常符合make it sample的原则。

Bookmark and Share
分类: 编程 标签: , , ,

发布一个ios的组件,4格菜单

2013年4月2日 没有评论

最近下载了一个应用“布丁电影”,发觉它的菜单效果好好睇。于是就仿造了一个。操作上也改造了一下,区别不大。

代码托管在GitHub上,欢迎大家下载使用。

支持IOS6.X IOS5.X , xcode  4.6,使用ARC。

Bookmark and Share
分类: IT, 编程 标签: ,

今天google reader被判死刑。7月进行处决。

2013年3月14日 没有评论

今天google reader被判死刑。7月进行处决。听到这个消息后,感觉google切底地变了。不作恶,真tmd的狗屁。乔布斯讲得没有错,google的不作恶口号,就是狗屁。上次在google GAE服务把免费时间大幅减少,我已经吐槽过一次了。这次真的要认真思考以后是否继续使用google的服务了。

google reader是我每天必修课。每天都会在itouch,ipad上用byline扫描RSS.每天在上边花费的时间超过1小时。上边订阅的RSS源超过200个。如果没有google reader是否有影响,我估计还有3个月的期限。找代替的方案应该会有的。不过可能会没有那么方便。

由于google这个巨人,所以好多人围绕着它的api开发了好多应用。例如一些rss阅读器基本上都使用google reader为接口,方便不同设备之间同步。

大家尽量逃离google服务把。其实我最早以前是用抓虾的rss服务的。由于出现过一段时期不稳定,也听说它会倒闭。所以我转用google reader。当时转用google reader最大的原因是因为它老爸是google,相信这个服务不会倒闭。最多被墙。今天睇来我是错的。

大家尽量逃离google服务把。我从今以后都不会向别人推荐google的服务了,也号召大家远离google服务。目前除搜索业务没有很好的代替品,其他的项目都有其他很好的代替品。我自己也不使用他新推的服务,起码不会把重要数据存储在google上边。那些什么google存储千万别用。等你存储上当数据的时候就告诉你要收费,不交钱,你的数据就没有了。tmd,tmd。

目前我还是gmail的用户,好怕有一天这个强大的gmail告诉我要关闭或者收费了。要计划好gmail逃亡路线了。大家一起逃离go ogle把,尽快逃离,让google死去把。

Bookmark and Share
分类: IT 标签: ,

庆祝第一个App上线App shop

2013年2月4日 没有评论

第一个App Goflytoday 终于上线app shop了。非常开心。因为第一次,而且是一次审核通过。这个app主要是搜索东南亚一些航空公司的机票搜索对比软件。目前只支持四家航空公司。

airasia
jetstar
tigerairways
cebupacificair

目前这个软件的界面比较丑陋,还需要进行改进。下载地址:http://t.cn/zYyHJqQ

barcode

阅读全文…

Bookmark and Share
分类: IT, 编程 标签: , ,

冯华君–天妒英才

2012年12月29日 没有评论

12月24日,晚上在公司加班。在ipad mini上看RSS新闻。突然在其中一个订阅的blog新闻看到一条消息。 “冯华君病逝”。当时感觉是,是不是看错了,不感相信。反复看了这条新闻好几次。感觉是不是这个博主搞错了。还是不感相信。于是上网搜索了一下。发觉网络都报道了这个消息了。唉,一个IT人英年早逝了。以前听到这类的消息都不会有太多感触。但这次感触比较多。可能因为和他见过两面。大家交流过。加上我平时比较留意他和他公司出品。

当年进入pccw工作的时候,是他面试我的。面试的时候有2个人,其中一个我肯定他是HR,而他比我的感觉有点象HR,又有点象搞技术的,最终搞不懂。进入pccw后,没有发现他。后来有一天下午,领导叫我和他进行工作交接。原来他是休长假回来,需要离开公司了。他把一个项目交接给我。我们就这个项目进行了一些技术上的交流。我发觉他的技术水平不错,对linux的理解挺深入的,交流中也令我对linux某些方面的认识加深了。不过当时我并不知道他是一个果粉中的名人。加上当时自己也不是果粉。后来有一个同事告诉我,他是一个技术牛人,告诉了他的中文名给我(外资公司习惯用英文名称呼,好多同事相处几年可能都不知道对方中文名),我上网搜索了一下。先知道了他一些事。直到自己成为果粉,我就经常留意他和他公司的出品。可以讲他们的出品,必属于精品。

这个星期我把他的博客的文章都粗略浏览了一遍,发觉自己对比他起来实在太惭愧了。大家年纪差不多,我比他大小小。别人的成就比我大很多。这些差距我觉得主要来源与别人比我更加努力。做得更加多的实事。不只停留在想。要切切实实去做。好像我计划在app shop上放几个作品,都计划了2年了。但是到现在还未有一款产品上线。从他的blog上看,他在制作FIT输入法之前其实也做了不少自己的项目。

还有几点的确令我敬佩的是:

1、最敬佩的是他小时候居然在一台CASIO的计算器上进行编程,编写老虎机游戏。我的条件比他好,初中就有了我的个人电脑8088.当时我一个像样的程序都没有写过,只是会做一些书本上的习题。

2、他在编程上的选择,并没有选择主流。而是选择自己的兴趣和爱好。10年果粉路。充分说明了他的选择完全凭兴趣,编写FIT输入法都是凭兴趣。

3、他除了对电脑技术的著迷之外,还对经济学挺有研究的。可能他是学工商管理出生的。他的blog有好多经济方面的文章。而且文笔比我好多了。

希望他在天国与乔帮主一起策划下一个世纪的新产品。

Bookmark and Share
分类: IT, 生活 标签: