机会论

##穷者恒穷,富者恒富。 这是个让人窒息的话题,也是不得不接受的社会现实。 我们可以用数学归纳法来论证,80%的财富掌握在20%手中,80%的连续几代都是穷人的几率依然很高,造成感觉身边穷人几代人都穷。 我们也可以用视野来看,穷人身边的氛围洋溢着一种懒惰、自甘堕落、落伍的思想;人是模仿性很强的动物,很难从这样的氛围里突围出来。 但是我今天想说说机会在人生中的重要性。 ##机会,是穷人与富人身份转化的唯一渠道。 只要你选对了机会,并且持续选对机会,你就有华丽变身的可能;当然,选错了机会,你可能跌入悬崖深渊,永世不再翻身。 有人习惯了拒绝机会。所有找上门的机会,他都抱着一种固有成见的眼光看待,固步自封。总认为自己的小世界里的东西是最好的。 有人来者不拒,是非不分的机会中随波逐流,任人利用。 我说一个发生在自己身边的故事吧。 我跳槽了,原本的职位就空缺下来了,好机会应该留给自己人,于是选择了内部推荐。薪水范围还算不错,至少对于介绍过来的两个小兄弟来说,应该够他们开心一阵子了。 之前,我特意大概说了在12K左右的工资范围给他们,让他们自己跟公司HR谈工资,并且特意说了,根据自身情况而定。 有一个小兄弟顺利入职了。另外一个就比较坎坷。 据说,前几轮面试都过了,直接到了面谈offer的阶段。HR看他经验略生,于是开了个最低价,10K。 他支支吾吾,不同意,觉得自己可以拿12K,为什么欺负我?于是说回去考虑考虑再说,面谈就没拿到offer回去了。 结果,三周过去了,依然没收到HR追问电话。 他开始着急,四处托关系,打听情况。结果离职的我,一打听,机会给别人了。 我想说的是,机会从来都不是公平的,唯一衡量的是你的内心。 这个机会,你能接受吗?你有其他更好的选择吗?这是目前最好的机会了吗?为了这个机会,你又放弃了那些机会? 这哥们现在常怨天尤人,拿着7K的薪水,就是因为一时的贪欲泛滥,不但没拿到12K,连10K的机会都没了,更何况自己单位的状态一塌糊涂,本来就是一个坑。 ##慎重选择机会 首先,一个开放的心态是必备的。只有这样的心态,才能坦然的接受、至少是权衡这个机会,冷静的分析后,得出属于自己的答案。 机会的权衡,从来都不是那么容易的。可能这里苹果好吃一点,那里冰淇淋更诱人。 #我只能奉上一句,聆听内心的抉择。

觉醒

我曾经是一个历史唯物主义的信徒,在我认识他之前,我自认自己是浩瀚历史长河中的一粒尘埃。 我做事循规蹈矩,大学毕业,工作,结婚,房子,车子,生孩子,还有BOSE音响,iPhone程序猿稳定的高薪,会做饭的妻子,等等条件都满足后,我开始迷失了自己的方向。 这种场面就像《猜火车》中台词“选择生命、选择工作、选择终身职业、选择家庭、选择他妈的大电视、选择洗衣机、汽车、CD机……”,我接下来该选择什么? 下海创业浪潮还没长大,互联网机遇没像张朝阳那样逮上,移动互联网机遇又不喜欢做游戏,APP又渐渐被BAT巨头垄断。我该做什么? 从历史唯物角度来说,我注定要成为浩瀚码农,软件从业者的一个微不足道的一位。随着岁月流逝,想到这个就有淡淡的忧伤。That’s it ? 但是自己又能挣扎什么呢?从基础做起写些牛逼的库?想些比较天马流星的移动APP点子?做外包,加班加点拿命换钱? 每个人再努力,终究逃不开历史范畴啊!有什么办法呢?跳个更好的槽?文凭不行怎么办啊?面试对不上眼怎么办?加入BAT又要做螺丝钉!而且尼玛没有BAT的城市的程序员怎么办啊? 每天就这样子,在忧郁、不得志中度过,只有家庭的幸福才能聊以自慰。 这一切,戛然而止于他的面前,过去的唯物世界观瞬间轰然坍塌。 他说,“世界就像水流,人往高处走,水往低处流。世界的顶端,是人性的需求,底端是大把的金钱。你只需要在其中占住自己的位置,就不愁吃喝了“ 这一点,我很认可。衣食住行,吃喝玩乐才是人类的本质需求,必须接地气,不玩高大上。 ”水往哪儿流,就看你在哪儿截流。当你的大坝足够牛逼,需求都能满足,水就全走你这里走。如果你满足不了,水流终究冲垮大坝,给了其他人机遇。“ ”与其在大坝的下游等水,命运掌握在上游人手里,何不自己去上游的顶端建大坝!“ ”如果没有乔布斯,世界的手机将会还是键盘控制。他就是这样的一个人,敢于横刀夺爱,敢于在诺基亚头上盖了个大坝!“ 这一刻我从未如此的觉醒!去你妈的”没有乔布斯,世界终究会有人开发出高级的触摸屏手机“狗屁历史唯物主义! 就在这一刻,命运就掌握在自己手中。我做出来,跟不做出来,世界就会有不同! 你的命运,被你自己的心所困。你觉得什么行,什么不行,造就了你现在的自己。 既然一切都是心所困,我何必继续循规蹈矩?!是的,这一刻,我迫不及待的想去改变世界! </embed>

iOS列表UITableView提速指南

##UITableview 从08年到现在开发过的iOS应用不计其数了,但是面试很多人的时候,发现依然很多同学在最基本的列表控件上懂得不够深,下面就结合各方面的资料进行再一次讲解。 我们都知道纯代码是效率最高的,但是在开发成本上已经越来越不如使用Storyboard性价比高,速度快,所以本文试图结合UIStoryboard来描述一整套方案。 ###简单配置 在Storyboard中拖入UITableViewController,并且修改涂涂画画 在代码区new File生成一个基于UITableviewController的自定义类,我这里暂时取名为Home。因为主页就是一个复杂的列表的不在少数吧?呵呵。 然后在Identity insepctor里修改对应的Class name,使得代码与Storyboard产生关联。 想要做下拉刷新嘛?系统自带了一个给你,并且可以自定义换标题哦。很多人真的不知道在哪儿选中,请看下图,先选中UITableviewController,然后在选项卡中enable这个refresh选项,就自动完成了。 对应的代码还是复制进去,就会自动触发。 然后你需要对UITableView做一些简单的配置,首先要选中UITableView,很多人看不到选项,是因为默认关闭了。。 下图是对UITableview的简单配置。 Content是动态列表/静态列表,如果是静态的,那你基本不用写代码就能所见即所得,譬如“设置”页面就可以套用。但是诸如微博啦,朋友圈,还是老实的用动态列表,用代码控制。 Prototype Cells指会出现的cell有几种类型。这个后面再讲。 Style效果现场试一下就看出来了 Separator指的分隔行样式。 然后你就需要代码中做一些简单的配置了,我只列重要的,这里不是基础教程,基础的还是老实的看教科书 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView //几组 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section//每一组分别几行 -(CGFloat)tableView:(UITableView *)tableView...

《悲催世界》《平凡的世界》有感

第一次看电影版《悲催世界》就有震撼到,芳婷的一句“don’t you know you are make love to a body who is already dead!!” 把看得略微昏沉的我猛然惊醒,简直吓住了!后面的情节也非常符合常理,一点也不做作,这让我非常后悔没有用心看下去这部文学巨著。 看完更多的是震撼,这是完全超越心中曾经排名第一的《红磨坊》的一部反映社会的大型歌剧,很长一段时间,我都在默想,咱们中国社会跟当时法国大革命时代的社会有什么相同,有什么区别。社会同样存在深刻的偏见,巨大的贫富差距,人民对公平、人权、民主的渴望,相爱的人因为门第差距无法走到一起,男娼女盗,道德良心水准一降再降,法律惩罚成了统治者手里的工具,等等。 当然这些都是零星的闪现着对比,直到有一次豆瓣自动推荐了一次《 Les Misérables: The Musical That Swept the World (10th Anniversary Concert at the...

西祠版APP之感慨--论坛的第二春

论坛从互联网初期的极其火爆到中期的渐渐分化,到至今的不瘟不火,似乎人们已经渐渐将他遗忘。 很多时候,我们的注意力被微博、微信、淘宝给吸引着,大家再也不去逛论坛了。 一晃就是10多年,西祠15年庆不断暗示着时代的变化之快。 我入职西祠当时的状况大概就是这样,一颗枯树,年事已久,却依然有一批死忠用户天天刷论坛,数量不多,但是足够养活滋润。回想我当时听到这个网站的用户数时,我依然很诧异,怎么移动互联网时代会依然还有几百万人喜欢逛西祠? 既然要来大干一场,必然要好好思考论坛的未来。 以前先后火过的论坛,猫扑、天涯,写手云集,discuz论坛各种垂直领域,威锋论坛,汽车之家,19楼,各种论坛,当我翻开他们的APP的时候,我被震惊了,居然都没有一个高品质的论坛APP,难道论坛都不喜欢拥抱移动互联网吗?痛定思痛,我们还是要好好的深刻的理解用户需要什么。 社交首先是人类永恒的需求,有强关系的社交网络,诸如微信,人人网,也有强媒体属性的微博、博客,也有强调弱关系的陌陌,豆瓣等等。 人类的社交需求从来都不是集中在一个方面,人格是多样性的,每个人都有不同的人群中不同的性格特征。有的人办公室里是ugly betty,饭桌上是行侠仗义的兄弟,酒吧里是乱来的独狼,是爸妈面前的乖乖女。这些都决定了人不可能一直混一个社交网络。丁磊关于易信的评价提醒了我们,人不会当着朋友的面做丢面子的事,但是却能在不认识的人面前做出无耻的事。都是因为强关系、弱关系的问题。人找工作都是弱关系起作用,强关系反而容易犯冲。 所以论坛可以满足一些这样的需求,兴趣小组,垂直人群(诸如学生),明星后援团,母婴分享,亲子花嫁,狗友会,车友会,1912酒吧一条街活动等等,这些需求并没有消失,只是他们用手机上网后,需要一款给力的移动APP来承接以前的老关系,老朋友,而不是到微博、微信关注那些新大V,新公共账号,他们不喜欢用手机浏览器打开网站。 于是,我们拿出来了看家本领,重新打造推翻设计,改造新版论坛APP的呈现方式。 结果第一棒就迎面而来,那就是论坛是有翻页需求的,继而导致整体后台都是围绕翻页这个需求来设计的架构。手机却是列表式的,是下拉刷新,上拉加载更多的,这是一个无缝的列表,可以无限刷新。 我纵观了猫扑、天涯、威锋网、汽车之家,他们无一例外的选择了继承老式翻页技术,在巴掌大的屏幕上放了“上一页”“下一页”“页码输入”等等。用户体验可想而知。不过汽车之家的翻页体验倒是改进的不错。于是我们做了精确的算法,保证按照列表刷新,同时也妥协了后台的架构,但是依然用翻页的API去请求数据,只是呈现起来掩护的非常精妙。 论坛是有标题、有内容的表达方式,区别于微博的一段话的表达形式。现在人已经越来越懒,更不可能在发帖的时候思考一下标题是啥,内容是啥,于是我们想了一种第一行40个字以内默认截取为标题,但是未来趋势肯定是越来越多的用户直接发内容,无需发标题。相比之下,天涯至今依然给了2个输入框,先写标题,再写内容,这样的网站不倒闭才怪。 内容的呈现方式,我们大胆的采用了不定高度的卡片,这一步策略是有危险的。要知道列表的滑动畅快很大程度决定了用户会不会长久的玩下去。 我们知道iOS的游戏有60fps才叫流畅一说。其实APP应用也是这个道理,1000毫秒60帧,平均每帧16毫秒,也就是说你在每16毫秒内动态的画面计算不出不来下一帧,你悲剧了,你的APP很卡,用户滑动几下后就可能觉得视觉很累。 那么列表类的应用,滑动流畅决定性因素是什么呢? 1.列表的每一行的高度,固定高度则流畅,不固定高度则需要优化才能流畅 2.列表的每行的元素复杂程度,内容越多越花哨,越复杂。 3.下拉刷新、加载更多的触发机制 4.图片异步下载 我曾经偷懒的建议产品向网易新闻客户端学习,他们的新闻列表经过编辑后,行高是固定的,列表简洁明了。但是跟产品交锋后,还是觉得要啃下这块硬骨头。 于是经过大量的使用autolayout后,已经较流畅,较便捷了,加载20条带图的不定长度新帖子只需要半秒钟。但是总感觉新的帖子加载更多之后,总是有卡顿现象。经过Profile之后,发现大量时间耗费在帖子自动布局算高度上了。后来,咬咬牙,干脆手动计算高度存档,于是我们做到了加载300层帖子只需要1秒钟。这还是在古董机iPhone 4上实现的。我们发现甚至做得比网易新闻客户端还要快! 我坚信一个好的简洁、畅快的产品,不应该跟微博一样卡,跟QQ一样卡。他们启动APP要10多秒,刷个帖子列表聊天记录,跟死机了一样。这样的APP,如果有其他选择,有谁会用?!同样花哨的界面,同样各种业务逻辑,同样动态高度,我们做到了超畅快淋漓的体验! 我清晰的记得,列表的日期有“刚刚”“几分钟前”“今天几点几分”“某日几点几分”的时间表示方法,以让用户更加方便易懂。但是这个时间计算几乎是无所不在的,小小的判断可有大学问。if else的先后顺序,都要根据统筹学设计,让经常会涉及到的范围优先进入判断跳出。我记得profile后本来4毫秒的计算压缩到了1毫秒,对于动辄几十行的列表来说,每一次计算累加起来就有很大的区别。 再谈到微博分享,是分享到社交,引导其他社交网站朋友加入我们APP的方式。很多APP都有一键分享,实际体验很值得考究。若是SSO第三方APP授权,则存在APP流失率,说白了我们都是在为微博、微信打工,却鲜见流量返回。用户也越来越讨厌各种第三方邀请加入的APP。于是也有小心眼的APP开发商,选择在网页内输入用户密码登陆微博,用户频繁,体验之糟糕,罄竹难书。应该提出一种纯粹的第三方认证机制,由苹果iOS负责垂询支持此服务的应用数量,由用户指定相应的APP提供相应的服务,并且在后台自动完成授权。 楼层的展示,我们遇到了一种更大的难度。我们希望有一种更适合移动手机的阅读帖子的方式。 我们考虑过看图说话模式,结果图片处理难度较大,文本的编排恐怕用户也很难拿捏长度。...