给自己定了个计划,做一个AR 相关的Side Project,时间大概是2个月。头30天每天保证有代码提交。今天开始是第三天,先定个小目标,30天每天有代码贡献。

2014年,成功戒烟1年半,健身半年,看了珠穆朗玛;书读得太少,业务还算精进;「星际穿越」是年度最佳电影;「Endless river」是年度最佳专辑;肾六是最差手机。优胜美地是最差系统。 2015年我要好好维护一下我的两个收费app,是的他们都快生锈了,所以也就没什么人买了(啊,话说去年我也是这么想的);我还要写一个自己的twitter客户端;要继续健身,戒烟,少喝点酒,让身体变得更好看,重点是好用。要多读书。要多用英语喷那些不爽的人和事。 1月托公司的福,先去普吉度个假;6月希望能办个日本签证,想去看日本的音乐节。 完了。

这个社会啊,戾气太足什么的也不用我说了。说点别的,骑个318,自己不想去或者耸比骑不动,然后就开始意淫啊:这不挺简单的吗,有时间哥就能去。所以去过的人都是装B犯,你看他们堵的哈哈哈。同样的还有爬珠峰,今天又看到一个SB言论:花钱就可以登,专业队员的目标是K2。珠穆朗玛并没有那么神奇。 你看看,这种言论很容易把自己搞成 “老子不差钱但老子没兴趣就是不去气死你” 状;或者“老子正奋斗呢,没那时间玩你们那些逃避社会的破事” 状。无论哪两种形状,其实在真去过的人面前都挺露怯的。You can,You up啊。 同样的还有现在屌丝们非常喜欢的两个词“绿茶X”,”驴X”。话说,现在这物欲横流的社会,吃不到葡萄就要说葡萄是婊了吗?人对自己的身体有100%的支配权懂吗,和所有驴友睡了就是不和你睡,怎么着,有意见吗?

1,使用Extension,编译器会期望在此扩展的主”.m”文件下实现方法或属性。Category相当于扩展分离了当前的 @implement ,使他们在不同的文件实现。2,Category不支持属性@property。3,Category一般用于扩展不属于自己创建的类的方法,也可以用于 当前类的私有方法。Extension广泛用于创建私有属性和方法。

内容提要 川藏路书,为自行车和自驾进藏的人们指路(仅限318国道成都到拉萨一段)。主要功能: 1,可以实时查看海拔高度和距离拉萨的公里数(需网络支持); 2,解答几乎所有关于骑自行车走川藏线的问题,包括但不限于装备,体能,路况,住宿等; 3,安全指南,安全出行。 4,专门为藏区网络不佳、通信不畅而设计,大量离线信息,无需网络支持。 内容的绝大部分来源于广泛流传的波尔路书,小部分来源于作者个人2012年7月的亲身经历。川藏线只有一个,她就在那里。你翻过的,只是心中的一座山。车友们,加油! ====================反馈:feedback======================== 请大家把反馈写到评论里,谢谢。 =======================================================

<藏地唐卡> :从西藏回来后构思的应用,近距离感受唐卡的美。iphone版:http://t.cn/zjz4twb ;iPad版<藏地唐卡HD>同步推出:http://t.cn/zjz4V3G 相信我绝对超值。 iPhone: iPad 西藏唐卡,藏地唐卡,tibetthangka,唐卡,thangka,唐喀,唐嘎,Thang-ga,tibetan thangka,西藏特色thangka,thangka,tibet thangka,藏传佛教,苯教,тханка,チベット,タンカ,티벳의,탕카 App Name 藏地唐卡 Over hundreds of HD beautiful thangka photos,you can see more details of these awesome Artworks.Use two finger to zoom in or zoom out. Also can save to photo albumen set as a wallpaper. ======================================= 数百张精美的高质量HD唐卡图片,这次可以看到更多细节。所有图片都可以储存并且设为桌面。 ======================================= Thangka is a Tibetan silk painting with embroidery, usually depicting a Buddhist deity, scene, or mandala of some sort. The thankga is not a flat creation like an oil painting or acrylic painting but consists of a picture panel which is painted or embroidered over which a textile is mounted and then over which is laid a cover, usually silk. Generally, thangkas last a very long time and retain much of their[…]

原文链接:http://www.cnblogs.com/bestzrz/archive/2011/09/03/2164620.html 作者Rongie Zeng 前段时间给客户网站做新浪微博账号登录功能,对OAuth协议以及相关的一些安全协议做了一些研究,顺便就记录一下学习心得吧。在这里就不打算具体讲OAuth的协议流程了,而是针对OAuth请求头里的nonce(随机数)、timestamp(时间戳)、signatrue(签名)这些参数的作用做一下总结。 首先看一下HTTP规范里定义的Basic认证。 Basic认证及其安全问题 Basic认证是一个流程比较简单的协议,整个过程可以分为以下三个步骤: a) 客户端使用GET方法向服务器请求资源。 b) 服务器返回401响应码和WWW-Authentication:Basic realm=”Family”响应头要求客户端进行身份验证。其中realm声明了资源所在的域。 c) 浏览器接收到以上HTTP响应头后,弹出登录框要求用户输入用户名和密码;用户提交的用户名和密码通过冒号串联起来并对其进行BASE64编码后再提交到服务器;服务器对提交上来的BASE64字符串进行验证,如果验证通过则返回200响应码。 Basic认证虽然简单、方便,但它只能作为对非敏感资源的访问认证,因为它并不安全,主要表现在以下几个方面: 1、 客户端提交的用户名和密码只经过简单的编码,攻击者只要窃听到该数据包,便可很容易的将其反编码为原始用户名和密码。 2、 即使客户端使用了一种比BASE64更复杂的编码方式使得攻击者无法对其反编码,攻击者也可以使用fiddler等工具将拦截到的HTTP报文重新提交给服务器,服务器只对编码的字符串进行验证,所以验证同样能通过。这种攻击方法称之为重放攻击(Replay-Attack)。 以上两个问题也是各种身份认证协议需要考虑到的安全问题,包括OAuth、Digest认证、NTLM认证等等认证机制都使用了nonce和timestamp来解决这些问题。 Nonce、Timestamp——解决Replay-Attack问题 Nonce是由服务器生成的一个随机数,在客户端第一次请求页面时将其发回客户端;客户端拿到这个Nonce,将其与用户密码串联在一起并进行非可逆加密(MD5、SHA1等等),然后将这个加密后的字符串和用户名、Nonce、 加密算法名称一起发回服务器;服务器使用接收到的用户名到数据库搜索密码,然后跟客户端使用同样的算法对其进行加密,接着将其与客户端提交上来的加密字符 串进行比较,如果两个字符串一致就表示用户身份有效。这样就解决了用户密码明文被窃取的问题,攻击者就算知道了算法名和nonce也无法解密出密码。 每个nonce只能供一个用户使用一次,这样就可以防止攻击者使用重放攻击,因为该Http报文已经无效。可选的实现方式是把每一次请求的Nonce保存到数据库,客户端再一次提交请求时将请求头中得Nonce与数据库中得数据作比较,如果已存在该Nonce,则证明该请求有可能是恶意的。然而这种解决方案也有个问题,很有可能在两次正常的资源请求中,产生的随机数是一样的,这样就造成正常的请求也被当成了攻击,随着数据库中保存的随机数不断增多,这个问题就会变得很明显。所以,还需要加上另外一个参数Timestamp(时间戳)。 Timestamp是根据服务器当前时间生成的一个字符串,与nonce放在一起,可以表示服务器在某个时间点生成的随机数。这样就算生成的随机数相同,但因为它们生成的时间点不一样,所以也算有效的随机数。 问题又来了,随着用户访问的增加,数据库中保存的nonce/timestamp/username数据量会变得非常大。对于这个问题,可选的解决方案是对数据设定一个“过期时间”,比如说在数据库中保存超过一天的数据将会被清除。如果是这样的,攻击者可以等待一天后,再将拦截到的HTTP报文提交到服务器,这时候因为nonce/timestamp/username数据已被服务器清除,请求将会被认为是有效的。要解决这个问题,就需要给时间戳设置一个超时时间,比如说将时间戳与服务器当前时间比较,如果相差一天则认为该时间戳是无效的。 HTTP消息体的加密 很不幸的是,经过上面这些复杂的处理后,我们的数据传输仍然是不安全的。我们都知道,http报文是以明文的方式在网络中传输的,包括Basic认证、Digest认证、OAuth、NTLM等等验证这一些认证机制都只是对HTTP头的信息作保护,而对于Http消息体的数据却没有作加密。以新浪首页的登录为例,它的账号就是以明文的方式传送的,如下图所示: 这样的方式是很不安全的,用户名和密码完全以明文的方式提交了。同样是新浪的网站——新浪微博就在登录前作了加密过的,如下图所示: 加密的方法可以参考前面讲到的nonce+timestamp的方案。不过这只解决了登录的问题,在注册时就不能提交使用nonce和timestamp非可逆加密了,这个时候要使用非对称加密。在用户打开注册页时,服务器生成一个公钥/私钥对并将公钥返回给客户端,客户端使用该公钥将密码加密后提交到服务器,服务器使用私钥解密后再保存到数据库。非对称加密算法的特点是每一个公钥和私钥都是一一对应的,使用公钥加密后只有拥有私钥的人才能进行解密,所以攻击者截取到http报文也毫无用处。 当然,在条件允许的情况下,可以使用SSL来实现HTTP报文的加密,这种方案是在应用层和传输层中间添加一个SSL层,该层使用对称加密的方法将HTTP报文加密后再传递到传输层,如下图所示: 在 这之前,客户端与服务器需要使用非对称加密的方法来协商用于对称加密的公钥,对称加密要求加密者和解密者拥有同一个密钥(即公钥)。当客户端首次访问页面 时,需要生成一个公钥给服务器,而这个公钥不是不可以给第三方知道的(知道了这个公钥就可对数据进行解密了),所以需要服务器首先生成一个公钥/密钥对,并使用生成的公钥加密客户端生成的公钥(非对称加密),这一个过程与前面讲到的注册密码加密的方式类似。 正因为在正式数据传输之前需要在服务器跟客户端之间进行几轮的协商,所以HTTPS相比HTTP来说安全性会高些、而性能会差些。

在 iOS 中,一个 UIResponder 对象表示一个可以接收触摸屏上的触摸事件的对象,通俗一点的说,就是表示一个可以接收事件的对象。 iOS 中,所有显示在界面上的对象都是从 UIResponder 直接或间接继承的。 下面是 UIResponder 类的一些定义信息: 触摸事件相关: 方法名称 说明 touchesBegan:withEvent 当用户触摸到屏幕时调用方法 tochesMoved:withEvent 当用户触摸到屏幕并移动时调用此方法 tochesEnded:withEvent 当触摸离开屏幕时调用此方法 tochesCancelled:withEvent 当触摸被取消时调用此方法 运动事件相关: 运动事件是指当用户以特定方式移动设置,如摇摆设置时,设置会产生运动事件,由以下几个方法进行处理: 方法名称 说明 motionBegan:withEvent 运动开始时执行 motionEnded:withEvent 运动结束时执行 motionCancelled:withEvent 运动被取消时执行 响应对象链相关: 方法名称 说明 isFirstResponder 指示对象是否为第一响应者,这里的第一响应者就是当前有焦点的对象,叫法挺奇怪的,第一次看到真还难以理解这个叫法所表达的意思 nextResponder 下一个响应者,在实现中,一般会返回父级对象 canBecomeFirstResponder 获取一个布尔值,指定对象是否可以获取焦点 becomeFirstResponder 把对象设置为 firstResponder 对象 canResignFirstResponder 对象是否可以取消 firstResponder 对象 resignFirstResponder 取消对象为 firstResponder 对象

原文链接 http://sunote.info/tag/beijingair/ 从2月9日开始,@BeijingAir修改了报告的内容,从原来的报告过去1小时和当天平均值改为PM2.5和Ozone两个值。 原来的格式为: 2-9-2010 ; 11:00 ; Latest Hour ; 0.091 ; 169 ; Unhealthy ; Today’s Avg ; 0.216 ; 266 ; Very Unhealthy 现在的格式为: 02-21-2010; 09:00; PM2.5; 189.0; 239; Very Unhealthy // Ozone; 0.9; 1; Good @BeijingAir是美驻华使馆在使馆区设置的一个空气检测站,将数据每隔一小时自动发送到twitter上。以前的数值仅仅为PM2.5,2月9日之后增加了Ozone。 几种污染物 PM2.5是Particulate matter 2.5的缩写,指大气中直径小于或等于2.5微米的颗粒物,也称为可入肺颗粒物。会进入肺部的气体交换区(肺泡),引起血管炎和动脉粥样硬化,进而导致心脏病和其他循环系统疾病。 PM10指直径等于或小于10微米,可以进入人的呼吸系统的颗粒物,也称为可吸入颗粒物。10微米到2.5微米的颗粒,部分会被肺呼出,部分被支气管和肺部组织吸附。 PM100指直径小于和等于100微米的颗粒物,也称总悬浮颗粒物。大于10微米的大多数被鼻腔和咽喉阻挡,不会造成麻烦。 PM2.5的影响 大气中PM-2.5污染控制的意义与途径一文中提到: PM-2.5是导致城市人为能见度下降的祸首 PM-2.5是城市大气污染物中损害人体健康的元凶 什么是Ozone Ozone是我们呼吸的空气,对人体健康有直接地影响。 解读@BeijingAir数据 目前@BeijingAir的数据格式为: 日期; 时间; PM2.5; PM2.5浓度; PM2.5空气质量指数; 健康等级 // Ozone; Ozone浓度; Ozone指数; Ozone健康等级 PM2.5的空气质量指数 Air Quality Index Levels of Health Concern Numerical Value Meaning Good 0 to 50 Air quality is considered satisfactory, and air pollution poses little or no risk Moderate 51 to 100 Air quality is acceptable; however, for some pollutants there may be a moderate health concern for a very small number of people who[…]