想要创业做产品,这些事情可别做!

英文原文:Want to Build and Launch Your First Product – Here’s What Not to Do

  //关于产品创意,这些事情不要做

  正因为有了伟大创意,才会促使你开发出新的产品。开发新产品这件事情意义重大,有可能会彻底改变你的生活方式,让你实现财务自由,或者它也可能让你从此丰衣足食能够享受一个悠长的假期。你的产品创意真的有这么好吗?有可能你会对自己的产品估值过高,因为你为其付出越多,就会感觉其价值越大,在社会心理学上这种效应被称作宜家效应。

  要知道你的第一版产品创意通常都是错误的。不过没关系,不断改版是产品开发过程中的常规部分,如果你在产品的早期就在这方面多加注意,就不会在这方面浪费太多的时间金钱。让产品适应市场是需要时间的,你在这个过程中需要和潜在的消费者尽可能多的交流沟通,这是判断你的产品是否有市场潜力的最佳方式。

  Rovio 在发布「愤怒的小鸟」的之前,曾经开发过 51 款名不见经传的游戏,直到小鸟的横空出世才让其一夜成名。

1、秘密地进行创意开发

  你很有可能会把记录灵感的小卡片藏着掖着,因为你会担心别人窃取你的创意。有可能你还会担心谷歌会偷走你的点子。

  采用封闭开发的创业公司喜欢藏在一边埋头苦干,直到在准备发布一系列会颠覆市场的完整产品时,他们才会暴露在阳光之下。这些公司通常会经历一个漫长的开发期,他们需要大笔的资金支持,以保证在没有收入的数个月中可以有足够的资金支撑他们做出产品。

  封闭开发有时候是一种很好的战略(尤其是在那些非常看重先发优势和占领地盘的市场中),但是向别人透露自己的创意也有一些正面的意义:

  • 你可以从中得到反馈,有时候还能够收获别人对于产品的认真严肃的指正,这些能够帮助你改进产品,快速迭代。

  • 你可以在其中发现以前没有注意到的竞争对手。

  • 你可以让别人知道你的兴趣所在,这样子有助于建立伙伴关系并结盟。

  • 你可以在产品开发的过程中就吸引一匹早期的追随者

创意本身是很廉价的,打造一款有利可图的产品并且吸引付费用户才是关键。

2、在不明白问题所在时就设计解决方案

  在创业者聚集的社团里总是充斥着各类天方夜谭的故事,比如:「我有一个很棒的产品想法,我不用一个月就能做出来,这个产品会非常了不起的!唯一的问题是我如何找到产品的用户呢?」

  你是否曾经为一个不存在的问题建立解决方案?你开发产品是否仅仅是因为自己想做而不是出于用户的真实需求?

  你该如何去证实人们是否会为你的产品掏钱呢?很简单,直接去问。找到 10 个潜在的产品用户并且向他们提出正确的问题。

  你很有可能会这么问——「如果我做出了 X 产品,你愿意使用它吗?」,或者是「如果有这么一款产品,你愿意为其付多少钱?」这种类型的问题不会带给你有启发的答案,它们只是一种假设,没有触及到潜在用户最根本的问题。你可以试着用以下方式进行提问:

  • 你在 XXX 的过程中面临的最大问题是什么?

  • 为什么你会感到这些问题难以解决?

  • 你经历这些问题的频率如何?

  • 你现在采取哪些方式处理这些问题?

  • 你处理这些问题的方式存在哪些缺憾?

  • 你从哪里获取解决问题的信息?

  这就是我们常说的「开放性问题」,被提问者在回答时可以给出更详细且更好的答案。相反那些「封闭式问题」通常只能让回答者给出一些又短又无用的回复。

  通过这些开放式的问题,你会对于用户在实际使用中面临的真实问题有更为深刻的理解。这种与潜在用户进行对话的机会是非常宝贵的,它不仅能够验证你的想法,还有助于你和用户建立良好的关系。

在你试图去解决问题之前,第一件事就是理解问题。

3、过分担心竞争对手

  一个好的创意总会吸引很多人对其进行抄袭复制。当你发布产品之后,由于担心竞争对手将会抄袭自己的产品,有可能会花费大量精力去密切监视竞争对手的产品开发过程和公告。其实你还有另一种选择,就是尽你所能地去完善产品。

  此外,你也许可以充分地利用竞争对手让他们成为你的竞争优势的一部分,那么你该怎么做呢?下面有一些方式供你参考:

  • 找到你的竞争对手的产品没有覆盖的领域,并且将其作为你的产品的比较优势所在。

  • 在开拓市场方面,让你的竞争对手的媒体公关市场部门先去啃硬骨头,你紧随其后通过文章和发帖坐享其成。

  • 向你的目标用户强调你的产品更加专业,你在专业领域更有发言权,能够帮助他们切实地解决问题。

  • 让你的用户感觉你更加值得信赖,因为你具有更好的行业背书、品牌知名度以及品牌历史。

  • 在教育用户方面,让你的竞争对手先行一步,通过他们的宣传使得用户发现自己存在的问题是可以被解决的。

4、对于市场机会缺乏激情

  冒失地进入一个你不明白的市场之中是有风险的。但是,进入一个你不感兴趣的领域风险更大。想要建立起一间成功的创业公司,花费的时间与精力会超出你的想象。

你有充沛的精力能够一直兴致勃勃地专研产品吗?如果你身处一个你所热爱的事业中,你就能够每天坐在桌子前琢磨,因为这会让你的事业有所发展,并且确实是你热爱的事情。但是如果你的公司业务出于你并不感兴趣的领域,你将很难持续经营。

  这个道理在市场推广中更加明显,做市场工作尤其需要保持充沛的热情。如果你需要每周撰写博客,为你的产品准备引人入胜的宣传材料,你可以想象一下这个工作将会持续多久。能够在创业初期就获得收入会成为一种很好的推动力,但这种事情是不能保证的,你需要充满热情地迎接创业的每一天,尤其是在那些令人失望的时刻里。  

提醒:在你缺乏热情的领域取得成功也是有可能的,但是付出的代价通常也会很高。比如你可能会因此想要寻找一个对这方面感兴趣的联合创始人,或者是你可能需要一些外部资源来支撑你的市场工作,比如将内容营销外包出去。

5、缩短产品开发的过程

  给你自己设置一个完成项目的截止时间是不错的选择,有时候这会非常奏效。总之,要确保你没有把所有的鸡蛋都放在一个篮子里,即使没有按时完成项目也不会把你送入绝境,流落街头之类的。将产品开发工作视为一场马拉松,而不是冲刺跑,享受其中的每一刻。

创业要花费的时间远超你的想象,即使你已经对此有所准备,这个漫长过程还是会让你触不及防。

6、为了创业而辞职

  想从你的线上产品中获取第一桶金是需要时间的(有时候你一毛钱也得不到)。如果你有一份正式的工作,无论你多么厌恶它,它都能够让你至少在第一个产品做出来之前维持生计,你可以在辞职之前将产品开发完毕。

  之后你可以自然而然地从「给别人打工」向「为自己工作」过渡,成为一个全职的创业者。其中的关键是要保证自己拥有足够的时间去坚持直到成功。

7、「卖糖果」

  你的产品是可有可无的「糖豆产品」吗?如果足够幸运,你的产品可能会风靡一时,就像豆宝宝玩具一样,但是这股风潮不会持续太久。Pinterest、魔声耳机以及 Christian Louboutin 的红底鞋都是实例。

  如何能做的更好呢?你可以打造一款「维生素产品」——这些产品能给用户带来好处,但是还不能彻底解决问题。比如提高生产力的应用程序,流量监测 App 以及内容聚合平台。

  最好的方案是什么呢?那就是「止痛药产品」——这些产品是用户所急需的,能够解决真实的存在问题,为用户排忧解难。「止痛药产品」通常能够取得巨大的成功,因为用户需要对其重复购买。典型的「止痛药产品」包括磁盘修复程序和降低成本的在线服务。

  //关于业务开展,这些事情不要做

1、在产品设计、品牌命名上拖延太久

  为你的产品取名就像拔牙一样,要快准狠。理想的产品名称应该既能够表达情感需求,又简洁明了,朗朗上口。然后你需要为其找到一个可用的域名,祝你好运,因为好域名已经寥寥无几。

  当你选择了产品名称之后就要坚持住。在你的日记中做记录,并且从现在起每个月检查一次。记住每个月重复这个过程,如果你之后大获成功,无论如何都要保护你的品牌。

  对于科技产品来说可能名称就不是那么的重要,你可以起一个足够醒目的名字,但是你的用户真的关心这个吗?可能他们更关心的是你的产品是否有效,以及他们能够足够信任你继而向你提供信用卡号。

2、开展一系列法律事务

  成立公司是否能跳过法律程序这件事情因国家而异。这方面的法务费用可能要花费 5 美元到 5000 美元不等。除了这些,在法律方面你可能还想要注册专利与商标,以保证自己的创意不被剽窃。但是这种事情何时才是个头?你是否还要不要在多个国家申请专利保护?是否还要雇佣一个专门的律师来处理公司的特殊条款以及隐私政策?

  在法务方面过早地进行优化可能会让你摔个大跟头,经济成本和机会成本遭受双重损失,你应该用你宝贵的时间去做一些更有意义的事情(比如和用户进行沟通或者是改善你的登陆页)。

提醒:基本的法律文件比如合同、公司条款和隐私策略都可以在 Docracy 网站上找到,这种众包服务是完全免费的!

3、购买所有相关域名

  当你在有了一个绝妙创意的那一刻,你可能会想要马上打开电脑去注册域名。域名是可用的!太好了!买下它!.co.uk 还是 .fr 呢?选择 .co 还是 .io 呢?

  虽然现在已经很难再找到一个可用的域名了,但是对于购买所有可用域名这件事情还是要特别谨慎,不要购买了几个域名就觉得自己的事业已经有了进展。你可能会担心存在那些抢注域名以及抄袭产品名称的人,但是在这些事情还没有发生的时候就为其操心绝对是为时过早了。

停止在所有的国家购买特定域名这种行为吧,不要试图用这种方式去保护你的品牌,还是先把产品发布了再说吧。

4、早早地和风投接触

  如果你是第一次做产品,或者是之前在这方面没有任何记录,那么想要从风投那里得到回应就会异常艰难。

  如果你和你的产品没有任何吸引力,想要得到风投青睐也是天方夜谭。相反,你应该专注于产品并且将其发布,在这之后再去见风投或者天使投资人,并且从他们那里得到融资。想要获得更好的投资人与业界资源,你就应该让你自己看上去更有吸引力。这样子也会让你在融资中得到更好的估值。

5、想太多

  创业伊始,你很容易就想到自己需要一个秘书或者是助理,因为你觉得自己的小公司在两个月之内就会发展为一个综合性巨头。当然了,想必你也会认为自己可以一夜暴富。

想要将这种想法化为现实需要很长的时间,即使你已经对其有所了解,其中所用的时间还是会大大超出你的期望。

  作为独立创业者或者是白手起家的小公司,你最需要掌握的技能就是既能高瞻远瞩,又能够脚踏实地。

  高瞻远瞩是很有必要的,因为你需要时时注意自己的目标完成度,这和你能否成功息息相关。脚踏实地同样具有意义,因为你需要投身于手头正在做的事情。不管你之后要去向何方,在今天,你应该完成自己的任务。

  //关于市场推广,这些事情不要做

1、A/B 测试

  改变你的登陆页上的大标题,很有可能就是帮助你提升转化率的关键。然而,如果你的网页仅仅只有 10 个访客,那么做这种改动也是徒劳无功的。在打造产品的初期阶段,你需要做出一系列审慎且明智的决定,然后再去做另一件事情。举个例子来说明吧,对于你的登陆页来说,能够提升转化率的方法其实仅仅是改动按钮的文本,从「注册」改成「开始了解 X 吧!」。

  所以,照着这个例子去做出关于你自己产品的英明决定,继续前进吧。你总是可以在之后循环反复地检查,并且在你需要的时候提升相应的功能。这就是所谓的「干中学」,它是一种可以促使你把事情做的更出色的好方法。专注于你每日需要完成的任务上,这样子你就可以不断推进自己的目标。

2、忽视你的受众

  你的受众代表了你的用户,虽然他们现在还只是潜在的用户。如果你能够接触他们、教育他们并帮助他们,你就能够在他们之中建立信任,并且在你的目标市场中成为权威人物。在你的事业发展时不要忘了带上他们,理解他们的想法并且使用他们熟悉的表达方式进行产品宣传。这样子在你的产品推出之后你就可以从受众那里获得反馈,并且从中得到启发,不断地得到提升。

  在发布新产品之前你可以制造一些悬念和令人兴奋的事件营销,让你的潜在用户对其充满期待。这些事情对于做产品的人来说已经成了必不可少的一步棋,而不仅仅是一个决定而已。

3、忽视企业客户

  产品的商业价值与企业客户的重要性经常会被刚起步的创业者所低估。这部分人群对于价格非常敏感(相对一般用户而言),这也就意味着如果你能够好好操作,就可以将价格定得更好。与较低的用户支持率相比,较高的客户流失率带来的损失更大。这也就意味着对于你来说,一个企业客户的生命周期价值将比普通用户要值钱的多。

  既然如此,如果巨头公司对你说「你的公司太小了,我们不能冒着风险去使用一个没有支持团队的人」该怎么办呢?你应该诚实地做出回答,告诉他们正因为如此不论在过程中发生了什么情况你都可以为其负责,而不是像别的大团队一样互相推诿责任。告诉这些巨头你会亲自引领他们完成产品的使用过程(通常来说就是针对其员工进行技能培训)。

  此外,你还可以告诉他们,因为这是你亲自开发的产品,你能够理解他们的需求,并且针对他们的需求做出相应的产品改进。如果你真能做到如此,这些企业客户就会变成你忠实的支持者。

  当开始出现企业客户的业务极大地受到了你的产品的影响,他们一刻都不能没有你,这时候一些令人激动的事情就要出现了。

提醒:有一些大型跨国公司在采用产品之前会做尽职调查,并且他们需要一支相当大的支持团队,在不确定这些之前他们连谈都不想和你谈。在这种情况下,不要急着将你的目标定的太高。在你追逐大象之前,先猎取一头鹿再说。

  //关于销售,这些事情不要做  

  1、索价过低或者过度销售

  有一些 SaaS 应用无法从用户那里收钱,还有一些应用连一单都卖不出去。

  不要仅仅把销售看成是一件工作任务,把它想象成是和客户建立关系。和你的潜在客户建立人际关系,向他们表示你能够理解他们的处境,帮助他们解决问题。随着时间的推移与客户关系的持续发展,你可以说一些自己产品的好话,这样子客户的购买行为就变成顺理成章的事情。

提醒:在销售的过程中,不要问一些会得到否定答案的问题。试着在提出问题的时候触发客户的情感反应,或者是以一个故事代替提问。比如假设你是一个卖松饼的,对于顾客的最佳问题是「你最喜欢什么口味的松饼?」,紧接着再问「你最后一次吃到这种美味松饼是什么时候?」。

2、忽视你的核心关系网

  你的核心关系网就是你的最佳机会所在。他们不仅能够为你提供帮助,还是你的产品的潜在用户。你应该在纸上写下十个人的名字,他们可以通过使用你的产品获益。将你的关系圈看做是一个同心圆,最内层是你的家人和朋友,第二层是你的受众或者是你所知的目标市场人群,最远的一环是那些你可以被介绍认识的人群。

  在你准备走的更远之前要专注于你的同心圆的核心层,这些人最有可能接受你的产品,因为你对他们的问题是非常了解的。

  不要害怕寻求帮助,你可以向你的朋友求助,还可以向网络名人以及你钦佩的人寻求建议。你会惊讶于有这么多人愿意帮助你(我仅仅通过发邮件,就能有 70% 的几率得到回应)。参考以下四条建议可以有所帮助:

  • 态度要礼貌

  • 提问题要具体

  • 做出个性化的提问

  • 问题要清晰简明

3、因过度疲劳而错失良机

  虽然为自己设立最后期限可以激励你完成任务,但是要确保在这期间你可以适当休息放松。「把所有鸡蛋放在一个篮子里」以及「放手再干一件大事」是一种具有风险的策略,一旦事情发生了差错,你将会一无所有。

  对于创业者来说,倦怠和抑郁都是非常实际的问题。你需要时不时和一些与工作无关的人谈谈,在这个过程中明白选择是多种多样的。每个人都有不同的方式去避免过度疲劳,但是试着出去走走,或者做些运动都是不错的选择。

你应该在工作与生活中找到平衡,这会让你既健康又快乐。毕竟创业就像一场马拉松,而不是冲刺跑。

  //产品要发布了,这些事情别去做

  你并不需要一个盛大的、完美的产品发布会,但是你必需要尽快发布产品。

  罗伯·沃林认为如果创业者不能在 6 个月内发布自己的产品,可能也就意味着他永远都无法做到了。如果这是你的首款产品,你的目标的应该是在 3 个月内就将其推向市场。要记住,发布产品的时候你并不需要提供一个「最终版本」,你可以先将其发布,然后再慢慢改进。

1、白日做梦

  仅仅是祝愿自己取得成功,对于你的事业不会起到任何帮助。使用「干中学」的方式尽快把事情做完。你所学过的东西已经足够支持你在创业的每一天里都取得进步,也足够让你完成手头任务,并踏上新的征程。你总是能在之后的实践中有所提升。

  我知道这么说有点讽刺,但是现在你最该做的事情就是抛下书本赶紧行动起来。空想家已经够多了,你还想加入其中吗?如果你不想成为又一个空想家,就应该停止阅读大量创业鸡汤,跟随最新的创业公司的脚步,开始你自己的创业生涯。

除非你买彩票,否则永远不会中大彩。

2、满怀期待

  对于成功充满期待也不会对你的事业有任何实际帮助。你需要给你的创业公司一个机会,让它能够成为流行话题。这就意味着你应该利用一切可用资源——你能够找到朋友为你的产品发推特吗?你甚至还可以要求你的家人在 Facebook 上分享你产品的登陆页。

3、单打独斗

  当你一个人干事的时候,是很难取得进展的。联合创始人可以成为你的力量来源,帮助你度过创业中的郁闷期。他们还可以为你提供互补的知识技能,这个团队能确保你更有机会通向成功。

  如果你更喜欢做一个独立开发者,你也许会发现和其他独立开发者聊聊也是不错的。你可以参加一个当地的创业者聚会,或者是进入一个独立开发者聊天室,或者是成为某个创业小组的一员。但是我要警告你:不要误将这些社交当成工作的一部分。你只是从中获取听众和支持者,你还是需要回头和你的用户交流沟通,并且发布产品!

4、无所事事

  如果继续拖延你将一事无成,停止阅读文章,现在就去干活吧!

产品经理-菜鸟与鹰的距离

在 IT 界,许多人会称自己为菜鸟,而每只菜鸟都会有鹰的梦想。本文转载梁宁的微信公众号,作者认为,做产品即是做服务,她以 ATM 设计为例,详细地讲述了菜鸟级产品经理在面对服务时所思考的角度和描述。

  腾讯善于做产品,世人皆知。但其实在腾讯内部,很少提“产品”和“功能”。

  腾讯谈的是“服务”和“特性”。
141847455911973
  腾讯内部永远不谈,我要做一个产品,它要包括哪些功能。

  腾讯谈的是,我要提供一个服务,这个服务有哪些特性,它的整体服务流程是怎样的,它的整体服务成本是多少。

  好吧,以一台 ATM 机为例。

  第一个问题:ATM 机提供什么服务?

  ATM 机的核心服务:取现金。

  第二个问题:一台 ATM 机的设计,有哪些特性?

  在这个问题上,大面积的菜鸟产品经理,顿时显出原形。

  菜鸟产品经理会用一副深刻观察与思考之后的专业态度来回答:ATM 机的前端界面,是公司形象,还是操作提醒;从第一次操作,到拿到钞票,需要几步达成;提醒放在哪个环节出现,声音提醒还是字幕提醒;先取卡,还是先取钞……

  这些特性,叫显性特性。

  ATM 机,还有关键特性。是隐形特性。

  比如,一台 ATM 机里要放 20 万现金。也就是说,如果一个银行提供 100 台 ATM 机,那么他要把 2000 万现金放在外面。所以,看似 ATM 机分流了银行的营业压力,提升了品牌曝光,同时也分流了公司的核心资源。

  因此,如何统计数据同步数据,支持决策,让 ATM 机发挥战略价值,同时不让资金过多闲置,是一台 ATM 机设计的隐形特性。也是核心服务。

  第三个问题:一台 ATM 机,服务的全流程是什么?

  作为一个用户体会到的一台 ATM 机的服务是,查卡,输密码,输金额,取钞,打印凭条,退卡。如果有问题,拨打服务热线。

  作为一个 ATM 机的服务提供者,为了让用户持续稳定的获得上述简单的服务,日常操作性的服务流程包括:

现金管理:保证 ATM 机里随时有钱。包括了数据、现金出库、运送等复杂流程。
硬件管理:电源工作正常,打印机工作正常,打印机的纸、油墨耗材正常…
客服管理:遇到客户问题或者投诉的处理全流程。
  这时,回到更重要的问题:战略问题。

  银行为什么要提供 ATM 机的服务?

  第一是为了分流营业网点的取现压力。第二是更多的品牌曝光机会。

  因此,每一台 ATM 机,对银行这个服务提供者来说,必须具备战略价值。

  这就是数据统计的运营意义,不单纯是让管理运营的人知道,某台机器没钱了,再不补现金进去,客户要投诉了。还要按照数据了解,这个服务点的设置,是否有足够的客流,是否达到战略要求。该增加服务,还是裁撤这个网点。

  因此,我们觉得象空气一样简单流畅的 ATM 机,正常运转的背后,有 7 个以上岗位,在保证它的持续稳定服务。

  如果以每次取款 2 元收入计,一台 ATM 机的总体成本回收期大约是 10 年。

  所以,以下特征的菜鸟,就别认为自己可以创业,然后陷入无限妄境了,让信任你的人,跟随你的人受苦了。

  过分强调显性特性的,菜鸟之中的最初级。过去,我最怕的就是听谁说,我们要改版了,新版哪天……显性特性很重要,但是显性特性救不了你。把核心资源与时间,放在一次次优化显性特性上,基本上是互联网初级从业者的狂热症。

  不能由衷有兴趣有热情地研究用户的,是没机会长大的菜鸟。

  我觉得腾讯内部以“服务”来定位自己做的每件事,真的高明!

  产品经理,往往觉得自己是乔布斯传人,大神的子孙。会以自己为中心,以自己的认知和感受来设计一个产品该是什么样子。

  而腾讯,只谈服务。

  服务是以服务对象的需求和满意度为中心,定义所做的一切。

  放下自己,研究服务对象。

  马化腾说产品经理每个月必须做 10 个用户调查,关注 100 个用户博客,收集反馈 1000 个用户体验。

  这是蹲马步一样的,腾讯产品经理基本功。日复一日,三年有功夫长在身上。

  马化腾说,产品经理不能为了自尊心而战。

  和产品菜鸟聊,他们会说“我认为”“我觉得”,用一个华丽的知识体系支撑他们日复一日闭门造车。

  而腾讯系的所有产品经理的描述,基本全部是“用户的使用视角是这样的”“用户的使用场景是这样的”“这个时候,用户的痛点是”。

  对整体服务流程没概念的,还是窝里的小菜鸟。

  菜鸟级的产品经理,往往认为自己做一个东东,丢到互联网上,奇迹就会发生。所以,他对一个产品的终极设想,是版本开发完毕后上线的一瞬间。就如同天真的小白少女,对爱情的终极设想就是穿上婚纱走向王子。

  而经过腾讯的系统训练的产品经理,非常清楚,第一个版本丢到互联网上,只是未来无尽服务,无尽优化的一个开始。

  接着无止尽的:

  数据反馈,优化特性,优化服务;

  数据反馈,优化特性,优化服务;

  数据反馈,优化特性,优化服务;

  ……

  优过所有的对手。

  打死所有的对手。

  所以,创业者要自问再自问。

  我提供的到底是什么服务?这个服务是强需求,还是弱需求?

  我有能力控制完整的服务流程,并保证输出品质吗?

  我拥有提供这个服务的核心能力,并不断提升核心能力吗?

  完整的服务流程清晰后,才能知道,这个团队的核心能力是完备的,还是有缺失?还是有重要缺失?

  一堆创业者的核心能力,就是把网站搭起来为止。

  ATM 机提供服务的核心能力是钱。持续有现钞,才能维持基本面。

  而那些只是搭个网站界面的创业团队,是就做了个 ATM 机的空壳子,就认为自己提供 ATM 机服务了。

  如何持续稳定地,不断优化地,符合用户预期地,让用户从这里获得他要的服务?他说这是第二步。

  他说,我先融资,拿到钱,再考虑后面的问题。

  面对这样天真的创业者,我默默想:

  您这是过着二次童年,憧憬一个童话。

  可是,这里是互联网的成熟时代,是成熟的猎人的厮杀

flash 动态嵌入字体, 嵌入你要的字符

一、简单

在使用As3 开发软件的过程,我们会遇到的比较头痛的一个问题是字体的处理!特别是针对中文这样的语言!

我们都知道嵌入式的字体比非嵌入的字体在效果上好很多, 所以我们希望在很多项目上能够使用嵌入的字体。

通常的嵌入字体的做法是通过flash cs 这些工具 来进行字体生成,如果你要生成一个字体,而这个字体可能的符号是所有字符集的时候,这个字体文件将会变得特别大,如果你要放在网络环境中,那直接就是一个噩梦!要在网络上加载1M文件会让用户在等待中发狂。。。

 

一个可行的解决方案是,用户用到了某个字体的特定字符,我们就只把这个字符嵌入到swf中,这样生成的文件将会小很多,文件的大小以出现的字符数量定!而且这样的好处就是用户可以使用他机器上的任何一个字体。 那么这个如何在技术上实现呢?

二、技术实现

2.1 Haxe

有一种开源的语言叫Haxe, 这种语言超NB, 她只要你写一次,就可以直接编译成各种语言, 诸如:c++, php, as3, c#, javascript, NekoVM, java 等, 让人觉得不可思议。 她有actionscript 3 的传统,所以,她对flash, as3 有超强的支持能力,使得你可以用她了做很多关于as3,swf等的事情,就比如说我们现在讨论的动态生成嵌入了字体的swf文件。这是一件多么有意思的事情

2.2 关于swf

SWF是一种文件格式,大家都知道的,而有意思的是这个格式是开放标准的,意思是,你可以查到关于SWF这个文件格式的任意一个规范,如果你够NB,你也可以阅读这个规范,并根据这个规范写出你自己的swf播放器,swf生成器,并且编辑swf! 你所知道的一些软件,比如说硕思这个swf反编译工具 就是根据SWF文件格式来进行反编译工具的,你也可以模仿它来写一个自己的swf加密混淆或者是反编译工具。

2.3 动态生成技术

Google Code 上有一个开源项目,她叫hxswfml, 她是基于Haxe 而来的一个项目, 简单的来说,她可以让你写一个xml文件,然后通过她,把这个xml文件编译成swf文件,够COOL吧!因为 Haxe 可以编译成php, js 等语言,所以,这能够让你在你的网站项目中,动态的生成 swf文件, 一下子让你的网站充满了神奇! 我们可以用她来完成动态生成swf字体文件的任务!在下面体验一下吧!

 

在文本区域内输入你需要的字符, 写上字体名( FontName 用于指定 字体名,类似于css中的font-family ), 写上调用时的类名( className 用于指定生成这个字体的类名,用于加载字体时获取字体引用 ) , 写完这些后,点击 Generate SWF 来生成你的swf 字体文件。 Test Font 用于测试字体 文件是不是有效 微笑 快来体验一下吧

 

2.4 在项目中使用

如果你的项目是基于AIR技术, 你可以直接把hxswfml 编译成swc文件,在项目中使用即可,我这里给你提供一个已经编译好的AIR 可用swc 文件flash as3 可以swc 文件.

如果你是基于客户端的技术,这时候你要把hxswfml编译成exe文件, 这个exe文件可以在该项目的下载中找到,不过要注意:

如果你直接使用下载的hxswfml.exe 你会发现运行不了,出现一个加载库失败提示

Error : Could not load module std@parse_xml__2

这是因为hxswfml需要依赖几个动态连接库,你只需要把这几个dll放到hxswfml.exe目录下,就可直接运行了.

如果你不知道去哪里找这些库,我为你准备好了,点击下载就ok

 

 

2.5 编译cpp 配置

如果需要自己编译这个hxswfml.exe文件,那么你需要配置工作环境,你可以根据这篇文章的指导来进行, HXCPP配置

结束语

到这里, 你已经了解了如何去实现动态生成所需要的swf字体, 希望这篇文章能为你解决问题!

如果你有什么问题,可以联系! 至于联系方式,相信你会找到 微笑

 

本文章为原创!转载请注明作者及出处!

smaile

堵车?你自找的!

(文/William Beaty)公路上两车道并为一车道的地方最容易发生交通堵塞。如果车辆之间没有较大的间距,就无法并道。因此,在行驶时与前面的车辆保持较大距离的司机,能够很好地缓解这种状况。

左图展示的是通常的驾驶情况,车与车之间都挨得紧紧的,在并道时除了最开头的那辆车,其他的车都没法儿动。注意到它们开得有多慢没?

右图显示的则是很少见的驾驶习惯,这些司机喜欢让别人在自己前面并道,并且常常与前面的车保持很大一段距离,遇到拥堵时也一样,这使得并道很容易。看看他们的行驶速度有多快。

 

要缓解并道时发生的拥堵,可以: 

  • 驾驶时与前车保持较大的距离;
  • 让一辆、两辆甚至三辆车在你前面并道;
  • 如果完全堵住了,在你前面留出两个车长的距离;
  • 不要缩短你与前车间的距离来“惩罚”在你前面插队并道的司机。

此外,令人吃惊的是,没有必要人人都这样。在高峰时期,只要有几个司机一直与前车保持较大距离,车流就可以合并,不会出现左图的情况。

是,没错,只是在你的车前空出一大段距离,并不能解决所有的问题。路上车多时,行驶速度必然会变慢。但是,采取这些特殊的驾驶方式,就可以大堵化小、小堵化了。由于许多交通拥堵都是在合并车道时出现的,单个司机的行为就能改善大家的拥堵状况。

 

 

心急开快车,反而放大拥堵波

好多年以前,我会在上下班高峰时期,开车走西雅图的 I-520州际高速公路,一路上总是走了停、停了走。于是我决定做个试验。一天,在我开始撞上那种常见的“拥堵波”时,我便决定放慢驾驶速度。不是像其他人那样拼命往前冲、最后被堵上,我决定尽量保持一个平均时速。这样,渐渐地我就在自己面前空出了一大段距离。我还算好了时间,在要撞上下一波红绿灯前的“拥堵波”时,绿灯就已经亮了,这样我就不必踩刹车。前面空着一大截开车的感觉是很奇怪,但我知道,我开的速度并不比其他人慢。有时候我时间掐得恰到好处,就一直都不用踩刹车,但有些时候我也会开得太快或太慢,这时遇上红绿灯就只好停下来。那天晚上有很多这样的“波”,一路上我有许多机会来提高自己的技术。
就这么开了差不多有半个小时。要进城时,我无意中看了一眼后视镜,里面映出了很有意思的景象。

当时正值黄昏,大家都把车灯打着,我开车沿着一条长长的山路下到桥上来。因此,向后望去,我可以看见后面几英里的路况。我可以看见对面的那条车道上大约有5个拥堵波,而我后面的车辆呢,延绵数英里,全部是均匀的分布。我之前都没有意识到,由于我的匀速行驶,我的车把交通堵塞“吃掉”了。我前面的车都陷在走一阵停一阵的周期里,而我后面的每辆车都被迫稳在一个35英里每小时(大约56公里/时)的速度上行驶。我这小小一辆车缓解了数英里的“走一下停一下”。只一个“润滑原子”,就对汇聚众多车辆粒子的“交通管道”产生了深远的影响。

不用来回换挡、紧赶慢赶地开车是件好事,但我一直以为这样做是出于精神(即要心平气和、谦逊礼让)而非实际的考虑,但我上面的经验表明,事实并非如此。只一个与人无争、乐于让人在自己前面并道的司机,就确实可以抵消堵塞、舒解交通。而我估计反过来也一样:常规的驾驶会制造拥堵。

假设我们都争着往前开、一有空隙就变道抢位置,与前面的车之间不留一点距离,生怕有人“插我们的队”。稍有堵车迹象,就拼命加速而后刹车,给后面制造出一个巨大的拥堵波。反复加速停止,拥堵的波会越变越强。让人觉得讽刺的是,心急开快车的人可能会不知不觉“放大”他们最讨厌的拥堵波。

单个司机疏通整个拥堵

我很快就意识到,可以用同样方式来抵消小规模的堵车。大堵车只不过是一系列均匀分布的小拥堵。每当一段间距从后面过来时,一个小的拥堵就湮灭了。这样,拥堵队列的后面没有新的汽车加入,而前端的车辆又不断在离开,这些小的拥堵就会逐渐消失不见。如果拥堵足够小,而这段空间足够大,那么只要一辆车就可能消减掉整个大堵车。

我又想起来很多年前,又是一个由爱看热闹的家伙引起了车流短暂拥堵,当我的车好不容易不堵了的时候,我总是猛踩油门、使劲儿加速。我想,要是每个人都这样,就都不用减速了。但这样做一点用处都没有,因为我前面的车不会加速。我不能强迫我前面的车主猛踩油门,所以我是心有余而力不足,看能看着拥堵慢慢地“蒸发”。啊哈!我可以通过放慢速度控制我后面的车,但在我前面的就鞭长莫及了。因此,除非每辆车都一起加速,否则在堵车中开再快也没有用,而且越是这样车越堵。但如果一辆车在从后面接近拥堵时减速,就能改变所有在他后面的车的行为,从而减少附近区域本来会形成的一大片拥堵。要是这个司机计算好,在接近拥堵车流之前就与前车间留出了相当大一截距离,就可以把拥堵波“吃掉”,而拥堵也会减少。

​我晚上下班的时候一般走I-5号公路,从埃弗里特(Everett,位于西雅图以北40公里处,是波音公司的生产基地之一)往南,在出高速到林伍德(Lynnwood)匝道那段的右边那条车道上,总是有一长串汽车,车头连车尾的用2英里左右的时速在爬行。因此,我那天特意走了会堵车的右车道,并故意在前面留出一段很长很长的距离。当我遇到堵车的时候,我前面的空路大约有1000英尺(大约300米)那么长。当然,我这么做后面的车就没有办法前去增加拥堵,而本来堵在那里的车流又在前端不断消减,等我到达的时候,堵车是它平时的一半大小。真是令人震惊,我一个司机就把拥堵波抵消掉了那么大一块。

但肯定的,我的行为不仅仅是减小了拥堵。为了制造与前车之间的距离,我的平均时速大约比交通高峰时低了大约10英里/时(约合16公里/时)。我以这样的速度开了几分钟,这使得我后面的车都略微放慢了了速度。上面说了,我遇到拥堵时,其规模已经比往常小了一半。但是,拥堵波并没有消除,而是变成了一个从我开始向后蔓延的减速波。往常,汽车一般是以50英里每小时的速度驾驶,然后遇上拥堵停下来,等几分钟后再开,现在,大家都以40英里每小时的速度往前开,然后遇上一个小得多的拥堵。如果我当时再把速度调整一些,就可以疏通整个拥堵,我后面的车可以都不用停了。

经验总结

我从上述情况中总结出了一条基本的原则(现在看答案其实太简单了!):反拥堵脉冲能够抵消拥堵波。车与车之间的空隙可以缓解交通堵塞。通过放缓车速,与前面的车间逐渐拉开距离,我相当于在我的前方制造了一个“反拥堵脉冲”。当我的反拥堵脉冲最终与“拥堵波”相遇时,就像正电子撞上电子,两相湮灭。这是非线性物理学里的孤子:两个孤波消减了彼此,留下模糊的均衡。

我接着想:要是我找几个朋友来和我一起做试验,我们可以在彼此之间隔上好几英里,我们每辆车前面都可以形成一个比较大的反拥堵脉冲,而受这种连续反向脉冲的影响,大规模的堵车我们都可以疏通。在车流量比较小的时候,我们之间保持不了一段大的距离,因为要从后面超过我们很容易;但要是很多个这样开车开得慢的司机,每个人前面都有一段距离,就相对于有很多个反拥堵脉冲,这些反拥堵的力量加起来,再大规模的堵车也能瓦解。

我学到的另一个教训是,要事先做好准备,先很多很多步就计划好。我发现,当我的车被堵住时,我没办法在开出拥堵以后对车流产生影响。我希望被堵着的车能尽快减少。但这样做从来没有见效过,因为我没有办法绕过我前面慢慢开车的那个家伙。但是,如果我提前计划好,带着一段空间遭遇堵车,我就能利用这个空间来对堵塞做点什么。而一旦我跟其他人一样都被堵住了,就什么事情也做不了了。为了能影响拥堵,我必须在遇上堵车前就有所行动,而不是被困在里面之后才开始。 

西雅图在高峰时段会交通中会有许许多多个分散的拥堵,有了足够多的人(或许还有手机和GPS装置),我们可以主动疏通西雅图主干道上的拥堵!现在这还都是幻想,而且一伙人“合谋”干扰交通很可能是违法的。尽管单个司机能疏通很大一截拥堵,但有些事情是几个人联合起来怎么样也没有办法完成的。例如,我放慢行驶速度,但前面也不会出现空档,因为很快就会有其他司机从我后面擦身而过。在我的实验中,我之所以可以创造出“反拥堵”空间,只有当交通非常非常拥挤,而且只有极少数司机敢于离开他们的队列,插到我前面才行。

 

 

编辑的话:作者是“业余交通动力学家”,记述的是他实际驾车观测到的结果。絮叨了些,但对实际驾车的人而言,这样的体验难能可贵。再次强调,这样做有危险,请勿模仿。遵守交通规范,注意行车安全!

 

 

本文转自:果壳