RSS

Category Archives: Uncategorized

Twitter的Chris Fry教你如何构建一个稳定而高效的工程团队

 36氪 11/2/14 8:43 am tips+Kryptoners@36kr.com(Kryptoners)

编者按:本文来自First Round Review,他们准备的文章既讲故事,还同时向创业者提供可操作的建议,以助力打造优秀的公司。本文作者Chris Fry先后在Salesforce和Twitter担任要职,他在这篇文章中分享了“构建高效工程团队”的秘诀。

“罗马军团是人类历史上最具机动性的部队。他们由8个人组成一个最小单位的战斗组,而8个刚好是当时一个帐篷可以容纳的人数。”这是Twitter的SVP Chris Fry在谈到稳定的团队建设时所提到的例子。

Fry先后在Salesforce和Twitter担任要职,他深刻认识到团队建设的重要性。“依靠罗马军团特有的组织架构,罗马帝国主导历史500年,雄霸欧洲大陆。而如果你能使用好类似的架构,世界也会在你的掌控中。”

Fry进一步解释道:“当你手下的工程师发展到40个,你就该在心中敲响警钟了。公司还小的时候,员工们都在同一个办公室里工作,一切运转正常。可随着公司的成长,问题就一个接一个地来了。这时候你该使出看家的工程管理本领,运用模式化的系统来管理你的团队。这样,随着企业的扩展,生产效率才不会降低。”

有着认知科学博士学位的Fry一直在思考如何才能使团队成员有良好的互动,以达到最高的团队工作效率。他在First Round最新一次的CTO峰会上分享了“构建高效工程团队”的秘诀:

·先建好队伍,再分派任务

·保持团队成员在一起工作

·模式化的工作,而不依赖个人

·建立短而规律的出货周期

(一)何为稳定的团队

Fry十分肯定团队稳定的重要性,但稳定性不代表一成不变,它包括了应对突变、合理分配任务等多个方面,目的都是为了让团队发挥最大能量。

Fry入主Twitter工程部时就强调过团队面临的一大基础性难题:世界各地发生的事是很难事先预料的。比方说,“超级碗”期间,Twitter每秒新增消息可达百万条。再比如说,去年,一部电影登陆日本院线并广受好评,Twitter上关于这部电影的推文数量立马暴增。这类突发情况是无法事先预料到的,但得益于Fry对组织结构的改善,Twitter一次次地渡过难关。

Fry说,大多数科技公司(包括Twitter)刚起步时,每个员工都会被分配到一些工作,但这都是被动进行的,项目来了,成员才会被快速地集结起来,这让作为管理者的你形成了一个在短期里快速分配人手的习惯。在公司发展早期,这或许是好的,但长久来看,则需要改变这一习惯。

因为,在公司达到一定规模以后,会出现两件事:1)会有太多人在同一时间为不止一个团队工作,导致战线拉得太长;2)作为分配人员的领导,你已经成为了信息的瓶颈,待处理的事物越来越多,没有时间让你慢下来去一一解决一些小问题,同时,你发现自己已没有能力再去考虑创新这件事了。

“要解决这两个问题,唯一的方法是创建一个稳定的团队。在美国,我们强调个体的表现,但我觉得优秀的小团队更有价值。”

“当人们协同合作时,会创造出超乎想象的共同输出。”

“作为一个管理者,你的重点应该首先在于创建出有良好化学反应的、能把事情做好的团队。然后再考虑分配什么任务给他们。”

Fry观察到,一些管理人员在有新的项目出现时,只是单纯地把一个个人名快速地填写到Excel表格里,但这不可避免地造成了上下级在汇报方面的混乱,浪费了大量时间,因为员工不停地在为不同领导工作,而且需要适应新的环境、新的团队。Fry认为必须改变这一状况。

(二)如何让团队高效运转

Fry认为,保持相对固定的团队成员有利于建立信任,促进良好的沟通,并保证团队的高效运转。“想象一下,你得解决一个难题,但与你共事的都是陌生人,这会有多难。但如果你认识这些人,你曾与他们共事过,你了解他们的长处和能力,并信任他们的话,那你肯定会工作得更加得心应手。”

“好的团队,不仅可以很好地协同工作,还能彼此互相学习。”

若要整个团队的运作达到行云流水的境界,Fry建议在至少半年(最好是一年)的时间里保持团队成员固定不变。这在一个全新的公司里可能不太现实,可一旦工程师团队规模达到40人,这会非常重要,因为这样做可以让团队里的人互相增强实力。

建立人员构成相对稳定的团队,同时也是在保护员工。Fry曾见到不少创业公司过度使用他们的员工。 “你的数据中心的利用率可以达到100%吗?不,不行,甚至80%或90%都不大可能。但有些公司却希望可以让他们员工的利用率达到100%。这只能是一条损耗员工、拖垮公司的不归路。“

在Fry看来,你应该关注的是员工有多少生产能力,并依此将他们分组,利用协同工作来使团队的生产效率最大化。如果只有一个人在做所有的工作,而其他人只是坐在那里看的话,这样的团队永远不能发挥出最佳的实力。同样地,一个勤奋的团队也可能被一个不合作的成员给拖了后腿。“确保每个人都有相当的并且合理的工作量,才是好的工作方式。”

“问题来了,你可以放心地把它交出去,因为你的团队可以自行想出解决方案,并执行下去。如果你能做到这一点,这就是作为领导者的最高境界。”

除了上述几点,Fry建立强大团队的策略还包括:

·让团队成员坐下在一起讨论:当工作不顺利时,这是一个最有效的办法。对一个大的全球性的团队来说,这显然很困难,可如果你的公司还在成长阶段,这可是一个关键。

·指定好负责人:需要选定一个合适的,擅于沟通的人来负责带领团队。他能够鼓励团队其他人,并随时通报进展。

·明确任务:每个团队的成员都应该明确他们团队的目标以及自身的重要性。这是让员工有工作动力的唯一途径。

·明确自己的角色:如果团队表现良好,你作为一位高管,须要确保他们能得到所需的全部资源。

很多创业者都很难放手,但要充分利用你的团队,你需要给他们足够的尊重,让他们有机会学会自我纠正。衡量一个团队是否稳定的标准是:当它遇到困难时,会重新组织,召开紧急检讨会议,并及时做出调整。

“常常有这样的情况:一个人跳槽了,相关的数据和信息也跟着走了。我们的目标应该是多一个或者少一个人都不会对工作有任何影响。而这只有人们共享知识,紧密合作了足够长的时间才能实现。”

(三)模式化的运作

“模式化是扩展规模的关键。”

“当强的小团队(而非个人)成为公司的基本单元,你就可以更快地建立并分配权限,然后去做那比较有创造性的事情了。”

第一定律:好的团队模式应该是多功能型的。

在 Twitter 早期发展无线战略时,整个无线团队都是工程师,他们简单的分成两个部门,一些人负责 Android 的开发,另一些人负责 iOS。可每当公司想增加个什么功能,项目到了这两个部门手里,进展就会变得像老牛拉破车一样缓慢。 这个问题在于,要增加一个新的功能,除了有工程师可以干活,还需要大量外部支持的配合:良好的设计,完善的产品管理以及合适的营销战略。

要解决这个问题,Fry 首先要做的就是把自己的工程师训练成跨平台的无线专家。为此 Twitter 甚至收购了一家公司,用于这项培训。这样一来,再也没有所谓的专家,人人都可以解决多方面的问题。

公司有了这些技术熟练的工程师之后,再把他们分配到各个小组去,每个小组有一个产品专家、一个设计师以及实现具体功能的工程师。每个工程师有对自己工作的控制权,同时他们也是该小组的核心支柱。因此,Twitter 能够不断推出一批批高品质的无线新功能。而且由于工程师相互认识,他们之间的互相通信能保证团队的开放性,使公司更有凝聚力。

这种模式化结构消除了对特定人的依赖。工程师有了更广泛的技能,也不必再依赖于其他人的知识。而设计师和产品经理有了自己接口的工程师可以咨询,也不必一直追着整个工程师团队来询问项目的进展了。这样,团队的每个人都明白自己项目的进展,这增强了团队成员对工作的控制感。

(四)加快出货周期

Fry 刚加入Salesforce 时,该公司的注意力都放在产品测试而非产品推出上。为了改变这一现状,Fry 的第一个动作就是重组工程部门,把当时 40 多个工程师分为若干灵活的小团队。他使用里程碑式的进度规划方法,缩短了测试周期。最终,该公司每四个月就可以推出一款新的数据驱动程序,同时工程师也增加到了 600 名。

两年前 Fry 来到 Twitter,肩负着让 Twitter 快速增长的使命。 他乐在其中。“当你处在公司快速增长的阶段时,每天都会遇到新的问题和麻烦。我得考虑我要保留什么、改变什么。”

“你总是想要尽快缩短产品的开发周期。”

很快,他沿用在Salesforce 时的理念,合理缩短了产品出货周期。

“很多创业团队都可以做到这一点,他们每周推出新版本,这公司发展初期尤其普遍。但是,随着公司的成长,这变得越来越难,”Fry说:“很难保持开发者在时间上的一致性,凝聚力也没有了,于是速度变慢了。”

这时,以小团队为基本单元的组织架构的优势就显现出来了,这使得产品出货周期可以得到保证。每个人都可以井井有条地工作着,deadline 也可以被保证了,团队的开发进程不会因为个人原因而耽搁。

“Twitter 无线产品出货周期的缩短,要归功于优秀小团队的建立,”Fry 总结道。

除非注明,本站文章均为原创或编译,转载请注明: 文章来自 36氪

36氪官方iOS应用正式上线,支持『一键下载36氪报道的移动App』和『离线阅读』 立即下载!

Advertisements
 
Leave a comment

Posted by on February 11, 2014 in Uncategorized

 

Tags:

一年,你是真的在成事,还是仅仅在填补时间?

一年,你是真的在成事,还是仅仅在填补时间?: “

从朝九晚五的上班族到白手起家的创业者,这种转变能让很多人望而生畏。其实我并不真的认为这里面风险重重——毕竟,你还很有可能另谋高就(尤其是当你是一名软件开发人员的时候)——不过,这怎么说也是一个人职业生涯中的一大步。而且,大家经常是攒足了够花一年的钱之后再出来创业,因为这样的话,他们即便没有正常收入也能生存下来。我觉得提前攒钱这事挺好,避免破产和赤贫这事也不赖。

但问题是:当你给自己定了一个期限,比如说一年时间来‘成事’时,很多情况下,你最终就仅仅是填补了这段时间而已。我这么说的意思是,你给了自己一年的时间尝试着把公司做起来,但在此期间你却不会真的快速适应,或者作出那些你需要做的艰难决定…因为,毕竟你还有一年时间!

我看到太多人采取这种方法了,不知怎的,这一年时间确被神奇地填满了,不过,该有的进展却并未从天而降。结果,他们花光了自己所有的积蓄,然后又不得不去上班,还让原本陷入困境的公司自生自灭。

事实上,我们总是倾向于把自己既有的时间填充掉,不管是否出于真的需求。

当你让某个人在下周五完成一件事的时候,通常情况下他只会在下周五才开始做这件事,而不是在之前就开始动手。大伙儿好像就是不够珍惜时间,尽管我们知道它非常有限、也不可再生。我们总能找到理由把时间消磨掉,而大部分理由都站不住脚。

所以,不要再填补时间、白白浪费你一年的积蓄了。你应该想着自己没有时间了,而且,从头到尾都应该保持这样的态度。这不是说你要至始至终乱作一团,而是说,你不能假定自己会在几个月之后就能把事情理清,你不能因为自觉机会之门还在继续向你敞开就一直心安理得。因为,这个机会之门随时都可能关闭,而且关闭地比你想象得还要快。所以,不要再给自己一段时间去成功,然后又没有坚持成功所需的最高标准的诚实和‎纪律,而仅仅是把这段时间填补掉,不要再陷入这样的状态了。

当一个人跟我说,‘我有一年的时间把这事弄明白’时,我总会这样想(而且应该这样说):‘所以实际上你只有几周,或者一到两个月的时间,最多不超过三个月的时间去尝试。假如到那时你还没有验证想法,那么你就不会再有时间去构建一个产品,获得用户注意力,并拿到一笔融资或依靠自己的收入自力更生。’

别去填补时间。

加快速度执行。你要认识到,其实你没有很多时间,你要对自己保持绝对的诚实,并在付出努力时保持足够的自律。转型吧,该转型的时候就转型,别为了花时间而花时间、也别为了让自己自讨苦吃而花掉时间。不然,一年以后,你的积蓄花光了,身心俱疲还不说,又什么都没做出来。没错,这不是什么世界末日,但是,你原本可以更快地转向更好的想法,你原本可以省下一部分钱,你原本可以试试新方案,你原本可以有一份新工作,并开始为另一天奋斗。

via Instigatorblog

除非注明,本站文章均为原创或编译,转载请注明: 文章来自36氪

编程马拉松

(Via 36氪.)

 
Leave a comment

Posted by on October 9, 2012 in Uncategorized

 

苹果、Google、微软、Facebook等共推维基式开放网站Web Platform,打造网络标准和技术内容的统一、权威发布平台

苹果、Google、微软、Facebook等共推维基式开放网站Web Platform,打造网络标准和技术内容的统一、权威发布平台: “


为了给所有开放网络技术提供‘权威资源’(‘definitive resource’ ),解决优质资源离散和技术开发分化等问题,苹果、Google、Facebook、Adobe、惠普、微软、Mozilla、诺基亚和Opera等多家大公司共同加入了万维网联盟W3C,共同推出了一个多人协作式的内容发布网站Web Platform

这个新型的网站将为所有开发者提供关于HTML5, CSS3以及其他跟Web标准相关的最新优质内容,并提供关于这类技术开发、实践的技巧和建议。另外,根据W3C的消息,网站还会显示某个特定技术的标准化过程,以及跨浏览器实现状态,试图将自己打造成互联网上该类内容的单一、权威来源。

目前,整个项目已经获得资金支持,并有一个专门的团队来维护网站。因为网站本身是一个维基式的多人协作内容发布平台,所以每个成员公司的员工都可以添加内容更新,而且所有发布到网站上的文档将基于知识共享模式。对用户来说,他们可以在网站论坛上互动,或者在网站的IRC通道讨论他们的项目,交流编程技巧。尽管网站的初始内容来源于成员公司,不过,网站也鼓励其他访问者分享相关信息。

最后,正如Adobe公司说的那样:‘现在,帮助创建并维护web技术最为全面、最为权威的参考信息,将是整个网络社区的事。所以,去看看然后开始贡献,开始记录web吧!’感兴趣的开发人员、极客们可以点此开始行动。

via TNW

除非注明,本站文章均为原创或编译,转载请注明: 文章来自36氪

编程马拉松

(Via 36氪.)

 
Leave a comment

Posted by on October 9, 2012 in Uncategorized

 

从37signals CEO Jason Fried身上我们看到了什么?——创业圈里稀缺的人本主义精神

从37signals CEO Jason Fried身上我们看到了什么?——创业圈里稀缺的人本主义精神: “

前阵子,国外媒体快公司采访37signals CEO的一篇文章在圈子里引起了不小波澜。在这次采访中,Fried毫不避讳地发表了自己对美国创业圈生态的看法:

Fried称,现在有太多的创业公司不惜牺牲公司员工长期的士气,以换取短期的爆发式增长。这些公司通常会选择透支员工,每周让他们工作60,70甚至80小时,然后换另外一批人代替他们。因为这些公司知道,不管是公司还是员工,要么是都‘死’,要么是被收购,要么…不管是哪一种情况,他们都不在乎,他们只是一味地消耗掉自己的资源,这就像在开采石油的时候要采尽每一滴油一样…

而且,很多公司都抱着买彩票的心态,他们融一笔钱,雇一批人,然后一边把这些人往死里耗,一边梦想着自己的彩票哪天能中…整个行业呈现出一种病态,Fried甚至援引了《Maverick》一书作者的一个比喻,将很多公司梦想着可以一飞冲天,‘为了变大而变大’的心态对比‘恶性肿瘤’。

Fried的这番言论可谓火药味十足,看完以后你也可能会以为自己又回到了工业时代初期大资本家剥削工人阶级的年代。然后,已经透支的员工就像坏死的零件一样,可以随意被替换。但与那个时代不同的是,那个时代是资本家在单向剥削工人阶级,但是现在,这些公司的老板们跟员工一样忙得焦头烂额,就好像人人都被洗脑——公司自上而下,大家一荣俱荣,一损俱损。而且,所有人对这种做法都深信不疑,这也就是Fried所谓的行业病态。Fried的这番话虽然激进,也不排除他在采访中因为情绪激动有些口不择言,但从这番话中,我们却看到了创业圈里极其稀缺的一种东西——人本主义精神。首先,作为一家公司的CEO,顶着被另外一些同行‘围攻’的压力,借助一个公共平台说出这样一番话,这是需要勇气的。其次,我们可以这么说,这里有一家公司关心自己,警惕员工的工作状态和心理状态,而不是将大家统统视作拼命工作自我燃尽的行尸走肉。而Fried这么说,也确有他自己的底气。在我们之前刊登的另外一篇文章《变化》中,我们便提及了Fried的一些新尝试:

在37signals,Fried将五月份到十月份的工作制改成了一周工作四天,每天8小时,同时,公司还会为员工免费提供来自社区的新鲜果蔬。不仅如此,他们在今年夏天还做了一个新尝试——让大家在六月份这一个月干自己想干的任何事。这不是普通意义上的假期,而是说大家可以从六月份原本的工作计划中抽离出来,搁下不必要的工作,然后把时间用在探索自己的想法上面。

Fried称:

这个‘6月份我做主’的实验结果是,我看到了34名员工迸发出的前所未有的创造力。这个实验很有趣,也大大增长了我们的士气。而且,它非常地富有成效,以至于,我们决定在一年中重复这样的项目几次。

从上面的这些策略中,我们可以看到Fried的两种理念:以人为本和无为而治。Fried做的是这样一件事:尊重并信任每一位员工,不过度干预他们的工作,但同时又让他们发挥出最大的潜能。事实上,要做到这一点非常困难,它对员工和整个团队的能力,控制力,自我管理等综合素质要求也非常高。但是从一定程度上来说,37signals做到了——这家公司已经成立了有13年,但目前为止,37signals却依然坚持着一个35人的精英团队——Fried称,

假如我们愿意,我们可以雇佣成百上千的员工,我们的收入和利润可以支撑这一点,但我认为这么做糟透了。

而他们的产品同样处处渗透着以人为本的设计理念。针对他们其中的一项产品Basecamp,来自他们的竞争对手Salesforce公司的Farhad Manjoo就称赞说:‘Basecamp代表了Web软件的未来。’而Quora上的一名作者则这样说道

关怀,爱,以及实用性,这些都深深地渗透在他们搭建产品的方法以及最终的产品中。他们让客户可以轻松地完成自己的工作,这样客户就有时间放松、放假。人们愿意为获取这种内心的平和,花上无数的钱。

我被37signals,以及他们做好公司的那种方式鼓舞了。他们不仅能做事,而且能用一种正确的方式把它达成。没有炒作,所有的成绩都可以量化。

再让我们回到刚才的那个话题,诚如我们所想的,要把以人为本做到极致,让团队可以认可公司并发挥最大效益,让公司以外的人可以认可公司并购买他们的产品,实际非常困难,它对团队的每一个成员的能力,自觉度,实践力要求都非常高。但个人认为,这种企业文化的形成实际是渐进的——37signals之所以可以将在行业中如此小众的想法变成现实并发扬光大,首先要得益于领队的Fried和David自己对这种理念的深信不疑和至始至终地执行。他们会依据这一点去招人,用这种信念感染团队的其他人,进而让所有人都对这一点深信不疑并至始至终地执行。这就是所谓的,团队的每一个人都在塑造企业文化。Fried和David这么做了,而一种良性循环也逐渐形成了。

不过,需要指出的是,37signals是一家做网络软件的公司,公司生产的边际成本不高,而且拼的就是设计,所以跟其他的一些行业相比,他们没有那么依赖人力,因而员工也可以拥有更高的自由度。还有一点是,有一句话叫做‘林子大了什么鸟都有’,上面的这种管理模式或许很难在一个大的团队中推行,团队文化也容易在‘人山人海’中被稀释。而这或许也解释了,为什么这个运作了13年,效益良好的公司到目前为止,都还只有35人。不得不说,Fried很聪明,也很坚持。

除非注明,本站文章均为原创或编译,转载请注明: 文章来自36氪

来微信加36氪为好友吧,打开微信‘添加朋友’->按号码查找,然后输入‘36氪’添加好友。[二维码]

(Via 36氪.)

 
Leave a comment

Posted by on September 4, 2012 in Uncategorized

 

高效能屌丝创业者的七项习惯

高效能屌丝创业者的七项习惯: “

James Altucher的身份多样,既是是投资人、程序员、作家,也是创业者。他是Formula Capital的常务董事,曾写过10本书。尽管成绩斐然,但作者自认为属于屌丝创业者,因为像盖茨、拉里·佩奇、扎克伯格那样的人毕竟是凤毛麟角。因此,他们的经验不一定适合其他人。为此,作者总结出了普通创业者应当具备的七项高效能习惯,也许当中不乏调侃,但是真诚地面对自己的确是第一要务。

我相当的平庸,尤其是作为一名创业者而言。我羞于承认这一点。这里的很多读者都是伟大的富有远见者。

我创办过很多公司,也投资过很多公司,但是成功的还是少数,大多数都失败了。而成功的例子里面,归因于运气的数量跟归因于努力的几乎旗鼓相当。

也就是说,创业者都应该是幸运的。我们不可能都是伟大的远见者。我们办企业是希望把它卖掉好赚钱养家,并能获得快乐。以我之见,目标太过远大往往是走向失败的最快捷路径。

如果你希望自己变得富有,那就把公司卖掉,然后把时间花在兴趣上,撑起一个还算像样的家,并在假期的时候跟自己的爱人享受日光的余晖,那么以下是一些高效能的建议。

一、拖沓

拖延是身体发出的信号,提醒你需要停下来思考一下自己的所为。如果你作为创业者,你需要花些时间思考一下你对客户的定位是什么。这也意味你正在做自己不擅长的工作。很多创业者都喜欢事必躬亲,但有时候委派他人会更具时效、更低成本(虽然会有金钱的花销)。我的第一次创业时把一件编程的工作交给他人时就很不习惯,但结果表明其效果比自己写要好得多。

要找出自己办事拖沓的原因。也许你需要多一点头脑风暴来改进想法。也许原来的想法并没有那么好。也许你需要委托他人去办。也许你需要多些学习。也许你并不喜欢做的东西。也许你并不喜欢客户的项目。也许你需要休息一下。很多时候你需要在行动之前再三考虑一下,然后再发挥自己的创意。当然,这一条并非人人都需要。伟人也许可以雷厉风行。乔布斯从来都不需要休息。但我需要。

拖沓也可能表明你是一个完美主义者的强烈信号。你总是问题缠身。这会阻止你打造并卖掉自己的企业。从各个方面检查一下你的拖沓行为。你的身体正在试图告诉你某些事情。要学会倾听。

二、零任务

关于那些伟人的一个常见的神奇之术是他们能够有效地进行多任务处理。他们也许能,但我不行。我有统计数据做支撑。我对下棋很上瘾。如果你跟我通过话的话,电话另一头的我几乎100%正在下国际象棋。一个手接电话,另一个手点击鼠标下一盘1分钟的快棋。下棋的战绩排名是排位系统生成的。因此我很容易就能比较一边打电话一边下棋跟平时没有接听电话时下棋的成绩。前者有三个标准偏差的差距。

好吧,就算伟人能够一心多用,但是根据定义,我们大都不是伟人(99%的我们都不在那1%之列),那么最好还是在同一时间做一件事。当你在洗手的时候,听听水声,感受水在你的手上流淌,用力擦洗每一部分。做事的时候要一心一意。

成功的屌丝创业者应当努力追求零任务的卓越。什么都不做。我们总是觉得该‘干点什么’否则就会感到羞愧。不过有时候静下来可能会更好,静下心来什么都别想。

在虚空的冥想当中往往会迸发出最伟大的创意。

而当我们奋力向前和恐慌的时候往往不能如此。

三、失败

据我所知,拉里·佩奇从来没有过失败。他研究生一毕业就直奔亿万富翁而去。扎克伯格也是如此。比尔·盖茨等少数一些人亦是。但是,这里再次强调,我们中的大多数都是屌丝。我们可以为了伟大而努力,但是那个目标可能永远也遥不可及。因此,这意味着我们往往会失败。当然,并不会总是失败。但失败是家常便饭。

我过去17次的创业尝试里面有16次是失败的。我在自己的第一次成功创业中犯了那么多的错误以至于自己都不好意思再去重述。我记得有一次我想做一个已故最伟大的说唱歌手Tupac的网站。我把全部的工作都放在了一张‘CD’上面。然后我到了Tupac的经理办公室,那人让我演示。唯一的问题是:我只用过Macs和Unix设备,从来没有用过Windows系统的机器。因此我老老实实地坦诚自己不知道如何把CD放进去然后浏览其中的内容。我可是计算机科学研究生毕业的。那人说:‘玩笑开大了啊。’

这是一笔9万美元的单子。它本该可以让我撑过2个月的工资单。在我步入他办公室之前这笔生意就像是煮熟的鸭子。可后来我是在他的大笑声中哭着离开办公室的。当我回到办公室时大家都涌上前问:‘这次会面怎么样?’我说:‘我认为相当不错。’然后回到家中我继续嚎啕大哭。

后来我买了一台Windows电脑,开始学习如何使用。实际上此后我就不再买过Mac。从成功当中是有可能学到东西的。但失败乃成功之母,在教训中更有可能学到东西。生活终归是由失败组成的句子,只是间或会有短暂的成功作为点缀。屌丝创业者从失败当中可以学会两样东西:首先是可以直接了解到如何避免某个特定的失败。有了前车之鉴,肯定会知道如何重蹈覆辙。其次是能够学会如何面对失败。屌丝创业者历尽了许多失败。所以也会历练出应对失败的高超技巧。然后转化为财务上的成功,失败乃成功之母。

‘坚持就是胜利’,屌丝创业者知道这句话不是自欺欺人的陈腔滥调。‘不断失败直到发生意外(不再失败)。’这就是坚持。

四、非原创

我一辈子都没有独创过想法。我的第一次成功创业做的是为财富500强开发web软件、制定战略、制作网站。这在上世纪九十年代并非什么独特的想法,但那时候做这类生意太赚钱了。我投资成功的案例中无一不是在我确信那些CEO和其他投资人比我聪明的前提下实现的。

最好的创意是,当你拿到两个稍为陈旧、彼此毫无关系的创意时,让它们发生关系,然后围绕着它们做出一门生意,这就是它们乱搞关系出来的丑陋孩子。那孩子太丑陋了,以至于没人想碰它一下。看看Facebook吧:把互联网和跟踪搞到一起,然后就出现了神奇!

还有,顺便说一下,这样一个社交网络已经是第五次尝试。Twitter:互联网跟过时的SMS协议结合。丑陋!但有效。Ebay,把电子商务跟拍卖组合到一起。‘I’ll Be There’这首歌则把玛利亚•凯莉跟迈克尔•杰克逊糅合到一起。

五、关系糟

我就是那个家伙。你懂的,那个在聚会上呆在角落跟谁也不说的家伙。我从来没有去过技术会议。我往往对非常好的网络晚宴邀请拒之千里。我喜欢呆在家里阅读书籍。我经营企业的时候往往连跟自己的员工谈话都会感到害羞。我会把秘书从楼下叫上来询问她走廊是否已经没人,然后叫她先帮我把办公室的门打开好让我能够迅速冲上楼梯扑到办公室把自己锁进去。当然,这家公司的下场也很悲惨。

但是,反过来也有很多人关系搞得太多。创业已经够棘手的了。屌丝创业者管理员工、客户和产品研发每天就要花20小时。哪里还有时间去折腾关系?剩下的时间只有尽可能去放松自己了。搞聚会容易,难的是赚钱。

六、求肯定

我曾进行过一次谈判。当我开始做stockpickr.com网站的时候跟thestreet.com的CEO有过一次会面。他希望自己的公司拥有stockpickr.com一定比例的股份,交换条件是把我们的广告位全部买下。这个单子很令我兴奋。我说:‘好的,我认为你可以持有该公司10%的股份。’他笑道:‘不行,我要50%’。干脆得甚至连‘我们希望是50%’这样的口吻都不用。就直接说:‘50%’。然后我用尽了一切的谈判技巧,最后憋出来的就是这句话:‘好吧,成交。’

我是生意人。我喜欢别人对我说是。当别人跟我说‘不’时我会有不安全感,更糟的是我害怕他们不喜欢我。我开始做建网站公司时曾接过一个做‘miramax.com’的单子。我要价5万美元,他们回应说:‘最多也不能超过1000美元。’于是我再次使出惯常的伎俩:‘成交!’

但是最终的结果如何呢?在thestreet.com在一个案例中拿到了大量股权,因此他们对stockpickr.com的股权要求也就有了更多的心理预期。至于我的一个企业,虽然低价做了miramax.com这个网站,但是由于我的客户列表有了米拉麦克斯这个名字,所以后来联合爱迪生公司找我们做的时候就要给我们多付许多费用。尽管我是个屌丝推销员,也许还是个糟糕的谈判者。不过因此我也接到了更多的单子,虽然偶尔会亏本做单子,但是只要我能够让足够多的人说yes,最终就能够让我钓到大鱼。这就好比是跟街上的100位美女搭讪看看能不能发展关系。也许一百个里面会有一个人答应你。

七、看错人

屌丝创业者没有像马尔科姆•格拉德威尔描述的那种决断两秒钟的力量。在格拉德威尔的书中(《Blink:不假思索的思考力量》),那些神人能够在两三秒的时间内做出正确判断。

我碰见人的第一判断往往是这样:我恨你。

然后我的态度又来了个180°的大转弯,变得太过相信人。经过态度的来回折腾,经历了太多的失败教训之后,我终于稳定在了某个中间的位置。我还有一个倾向是放弃自己不能很快信任的人。我想伟大创业者也许能快速做出判断并可以非常成功地处理好关系。但大多数人不能。

因此我在跟人见面的时候会提醒自己不要相信第一直觉。我需要多了解一下。我得弄清楚他们的动机是什么。不管对方的情况怎样,我都会试着用同理心去审视。我花了许多时间去了解清楚那些自己希望走的更近的人。我必须这么做,因为我是屌丝,把不合适的人引入自己圈子的风险要高得多。

所以,一旦我决定跟某人(客户、员工、收购者、被收购者、妻子等)靠近的时候,我会下很大的功夫去揣摩对方。这意味着我不能够浪费时间去思考别的东西—比如说如何把一艘飞船送上木星之类的东西。总的来说,这种方式是行之有效的。

‘身为屌丝难道不是一件糟糕的事?’有人也许会这么想。难道不应该追求伟大吗?答案是:‘当然要!可是不要忘了,开车的人当中十有八九都认为自己的驾车技术高于平均水平。’人们总是高估自己。不要让自大挡你发财的道,哪怕不能发财,起码也要取得这样的成功:有自己的自由,可养家糊口,能有别的东西享受。

身为屌丝并不意味着你就不能改变世界。这意味着真诚面对自己和周围的人。如果你希望取得极大成就的话,真诚的确是最高效能的习惯。

Via:TC

除非注明,本站文章均为原创或编译,转载请注明: 文章来自36氪

来微信加36氪为好友吧,打开微信‘添加朋友’->按号码查找,然后输入‘36氪’添加好友。[二维码]

(Via 36氪.)

 
Leave a comment

Posted by on August 22, 2012 in Tools, Uncategorized

 

Adjust view content when keyboard is shown

Step 1. Create a KeyboardDisplayProtocol (KeyboardDisplayProtocol.h):

#import <Foundation/Foundation.h>

@protocol KeyboardDisplayProtocol <NSObject>

– (void)registerForKeyboardNotifications;
– (void)unregisterForKeyboardNotifications;
– (void)keyboardWasShown:(NSNotification *)aNotification;
– (void)keyboardWillBeHidden:(NSNotification *)aNotification;

@end

Step 2. Declare your ViewController to extend the protocol. Add an ivar to track the textfield user has clicked. (MyViewController.h)

@interface MyViewController : UIViewController <KeyboardDisplayProtocol>
{
UITextField *m_activeField;
}

Step 3. Implement the protocol methods in MyViewController.m

#pragma mark –
#pragma mark KeyboardDisplay Delegate
– (void)registerForKeyboardNotifications
{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWasShown:) name:UIKeyboardDidShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillBeHidden:) name:UIKeyboardWillHideNotification object:nil];
}

– (void)unregisterForKeyboardNotifications
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
}

– (void)keyboardWasShown:(NSNotification *)aNotification
{
NSDictionary *info = [aNotification userInfo];
CGSize kbSize = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;

UIEdgeInsets contentInsets = UIEdgeInsetsMake(0.0, 0.0, kbSize.height, 0.0);
self.profileTableView.contentInset = contentInsets;
self.profileTableView.scrollIndicatorInsets = contentInsets;

CGRect aRect = self.profileTableView.frame;
aRect.size.height -= kbSize.height;

CGPoint fieldOrigin = m_activeField.frame.origin;

fieldOrigin = CGPointMake([[m_activeField superview] superview].frame.origin.x + fieldOrigin.x, [[m_activeField superview] superview].frame.origin.y + fieldOrigin.y);

if ( !CGRectContainsPoint(aRect, fieldOrigin) )
{
CGPoint scrollPoint = CGPointMake(0.0, fieldOrigin.y – kbSize.height + 2 * m_activeField.frame.size.height);
[scrollView setContentOffset:scrollPoint animated:YES];
}
}

– (void)keyboardWillBeHidden:(NSNotification *)aNotification
{
UIEdgeInsets contentInsets = UIEdgeInsetsZero;
scrollView.contentInset = contentInsets;
scrollView.scrollIndicatorInsets = contentInsets;
}

Note: You might need to customize the code base on your view hirarchy.
The two places you might need to change:
1. Replace “scrollView” with your view which is going to be scrolled
2. Replace “[[m_activeField superview] superview].frame.origin.x” with something you can calculate the clicked textfield y position in your view.

Step 4. Register and unregister keyboard events

– (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];

[self registerForKeyboardNotifications];
}

– (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];

[self unregisterForKeyboardNotifications];
}

That’s it! Try it out!

 
Leave a comment

Posted by on May 17, 2012 in iPhone, Uncategorized

 

Tags:

iOS App Review Sites – 167 Sites To Promote iPhone And iPad Apps | iPhone, iOS 5, iPad SDK Development Tutorial and Programming Tips

 

iOS App Review Sites – 167 Sites To Promote iPhone And iPad Apps | iPhone, iOS 5, iPad SDK Development Tutorial and Programming Tips: ” Advertise      Submit      Contact ManiacDev.Com iPhone, iOS, iPad SDK Development Tutorial and Programming Tips iOS 5 Tutorial Xcode Storyboard Tutorial Open Source Apps Tutorials

iOS App Review Sites – 167 Sites To Promote iPhone And iPad Apps

Welcome to another update to the iPhone and iPad app review sites listing in iOS development about three years ago, I made the first posting of the iPhone app review sites list, and it’s been over a year since the last update. Since I’ve recently seen a resurgence in traffic to the older lists about two weeks ago I decided to begin the long process of putting together a new list.

With the first list all but a handful of review sites barely had any traffic at all – things have definitely changed, and there are many review sites with enough traffic to significantly effect your bottom line.

The best way to use this list is to look for sites that have reviewed apps similar to yours. As far as the traffic rankings go sites with an Alexa rat”

 

(Via .)

 
Leave a comment

Posted by on May 17, 2012 in Uncategorized