http://sd.csdn.net/a/20120601/2806214.html
很多参加BarCamp的人都在痛苦的从程序员转型为创业者。虽然我从来都不是疯狂的码农(把自己关在地下室里一周,折腾出十万行代码这样),但我也曾经做过这样的转型。在创办HelpSpot的这些年中,我确实也总结出了一些经验,以及人们会什么会转型失败。
1. 代码只占生意的5%
我见到的最多、最严重的问题就是开发者被代码绑架,花费数不清的时间让一个功能变得完美,或者炫耀最新的技术。是的,你的代码必须高质量,并且没有严重的 bug 和安全问题。但是你要记住,再好的代码如果没有人用的话都是垃圾。当税务局过来封门查税的时候,你会发现代码是没有用的,当你收到法院关于知识产权官司传票的时候,你会发现代码是没有用的。
我看到太多创业者在论坛、博客中讨论代码的问题,而不是商业的问题。当然讨论商业的问题更让人头疼,那么谁让你要创业的呢?
2. 界面很重要,特别是和竞争对手相比
你的产品界面必须做好!标准的灰色的背景和方框控件是不够的。但是你也要注意你的界面只需要比你竞争对手更漂亮就行了。所以你正在开发一个 IT 系统的后台管理系统的话,你不需要按照终端用户产品的标准来做。你要做的只是让你的客户意识到你的界面比竞争对手的更好。记住,人们往往都是看封面买书的。
3. 考虑长远
程序员喜欢调试程序,找到问题,然后消灭它!你立马就可以看到效果,这种感觉很爽是不是?但是在非编程领域,很多事情是要靠时间磨的,没有那么多所见即所得的好事等着你。所以你需要考虑长远。推广你的产品,获得市场份额可能需要几个月甚至几年。多想想你的产品和市场在6 个月以后的情况。
4. 承认你对用户需求的不了解,并改正它
你很有可能在为一个你不熟悉的领域开发软件。这才是有机会的领域,但是你也要意识到你需要做更多的事情而不仅仅是市场调查。你需要理解真正的用户,和他们交谈。我知道你不喜欢这么做,但是你必须这么做。否则你不会知道哪些功能是没有用的,哪些功能是有需要的而你却没有的。
在这一点上很多人犯的错误是抄袭竞争对手的功能。这是昏招,有点像是抄袭你朋友的家庭作业,然后两个人错的一模一样。通过和用户的交谈,你可以避免竞争对手犯的错误。
5. 爱你的用户
很多开发者都在技术支持部门呆过。他们的客户是公司内部人员,他们往往对客户很蔑视。这很正常,因为他们干的活和拿的收入不成正比。
但你必须必这些丢在一边。我有看到一些软件开发商把这种态度带到商业软件领域,这样是无法生存的。唯一成功的方法就是爱上你的客户。你需要尽最大可能的满足他们的需求,如果不能的话,你要解释为什么。如果他们选择了竞争对手的产品,你必须尊重他们的决定,并告诉他们如果还有其他需求的话,你一样乐意效劳。我已经好几次把丢掉的单子抢了回来,就因为我在送客户出门的路上让他们觉得我人很好。
6. 设计要简洁,再高级的用户也喜欢简洁
用户界面不是用来炫耀技术的。你要使界面简单。高级用户和初级用户一样喜欢简单。保证界面的简单易用最重要的原因是吸引体验用户。体验用户只会给你几分钟时间,如果你不能让他们很快上手的话,他们就会去看别的产品。
7. 向其他领域的人讲述你的想法
你应该经常把你最新的产品展示给不同领域的人看。你会惊讶他们能发现很多界面和功能上的问题,即使他们对你的领域不了解。这就叫做旁观者清!
8. 勇于删除没用的功能
没有什么比让程序员删除一段完美运行的代码更痛苦的事情了。但是你必须这么做。在开发的过程中,你会意识到一些完全没有必要存在的功能。你最好是在发布产品之前发现它们。一旦你发现了,你必须把他们删除免得造成麻烦。
举个例子吧,当 HelpSpot 开发了一半的时候,我发现有一个功能怎么做也做不好。这个功能是用来让用户导入客户信息的。这不是一个好点子,它让 HelpSpot 看起来像一个 CRM 半成品。它同样意味着更加复杂的UI。所以我过段把这个功能砍了,浪费了几个礼拜的时间。
事实证明,我的决定是明智的。我们砍掉了同步功能,但是添加了实时的客户查询功能。用户可以通过 HelpSpot 在他们已有的 CRM 系统中查询客户信息。这个功能很独特,并且被我的客户大量使用。
9. 耐心是一种美德
时间总是不够用的。往往看起来只需要一天的工作最终花费了好几个礼拜。你需要耐心。我发现我必须时常提醒自己这一点,否则我就会因为没有足够的进度而变得暴躁。如果可能的话,不要和你的客户设定时间期限,更不要把三个月的工作承诺一个月做完。我自己也还在琢磨这一点。
10. 始终像学习编程一样对待创业
还记得你刚开始学习编程的时候吗?你会把每本书都读一遍。在学习第一门语言的时候,你会买八本不同的书,虽然他们讲的是差不多的内容,但你还是把它们都看完了,因为你总感觉你还没学够。从一个程序员变成一个创业者,你需要把这种态度拿出来,否则你永远是屌丝,永远成不了高富帅。你需要阅读尽可能多的资料让你了解目标市场,经营企业,日常管理,时间管理。
以下转自:http://blog.csdn.net/tangwing/article/details/7632873
计算机硕士生找实习屡屡受挫后挣扎中的一些反思
* 不要把自己默认为求职者,要做自己的老板。自己定项目,自己实现。
* 选定的技术都要有作品,否则不必写在简历里。不再以完成作业为目的限制对自己的要求。
* 不能通过热度选择技术,要详细的了解他们的区别,特点,用户群。
* 若能翻然醒悟,发奋图强,则能绝处逢生。
* 永远保持“定”,比如盲目的投简历就是心随境转的表现。不要被形势绑架。要对自己负责。
* 如能确定一个宏大的目标而不轻视自己的能力,为之不懈努力,两年的时间能够造就足以创业的产品。
* 不应为了训练一种语言而创作,而是为了满足人们的需要才选择语言。
* 对于本科以后的我,完成课业、配合点名已经不该再是首要任务,应该制定自己的发展路线。
* 在立场不稳的岁月里,自负的感觉令人怀念。“或许你们是对的,但我还是要这么走”。
* 应当相信,不懈的努力并不一定要求废寝忘食,我们真正需要利用的是那部分灰色时间。想每分每秒都活的如法,活的清醒,确实很不容易,这需要的是强有力的、能够完全控制身体的大脑。
* 发现生活中的不变之处,启发作品思路,即便相关应用已经存在,只要它还不完美我就可以以之锻炼自己。
* 算法确实是王道,可研究某一具体领域的算法,如搜索,如数据挖掘。
* 利用github开始真正的个人创作。
* 思考要根据用途而不是根据技术。不能本末倒置。软件领域主要是web方向和移动方向。移动互联网是二者交集,需要着实下些功夫。
* 以后的立场也确定了,那就是以提高自己为主要任务,坚持自己的立场不向现实妥协,宁缺毋滥,即使艰难也要坚定地走自己的路。这是对生命的尊重。
* 不必急匆匆地追流行技术,在学校里,基础要打扎实。
* 随时把思路记下来,更重要的是要真正想着实现它。不惜一切代价。别说是因为舍不得租服务器才不去写网站。
分享到:
相关推荐
普通程序员如何转向AI方向普通程序员如何转向AI方向普通程序员如何转向AI方向普通程序员如何转向AI方向
当win程序员风生水起时,一个不小心加入了linux阵营,怎样改变,这里给你答案
雷军在《我的十年程序员生涯》中回顾了自己的编程生涯,分享了自己的编程经验和感悟。以下是雷军分享的知识点: 1. 编程热爱:雷军认为,编程需要热爱写程序,热爱电脑世界的美妙。只有热爱写程序的人,才能把事情...
从程序员到项目经理的转型是一条在职业发展过程中常见的晋升路径。程序员通常具有一定的技术背景和编程经验,而项目经理则要求具备更多的管理和协调能力。这一转变涉及到多个方面的技能提升,从技术知识到团队合作,...
最终达到第十境界——哲学家,这时的程序员不仅仅是技术专家,更是能够从哲学的角度思考问题,影响整个行业乃至社会发展的领军人物。 每个境界都代表了一个程序员成长的不同阶段,无论是从技术能力还是思维方式上都...
这种跨界的能力使程序员从单纯的IT技术提供者转变为企业的战略合作伙伴,从而在职业生涯中取得更大的成功。 总而言之,从“程序员”到“行业专家”的转变不是一蹴而就的,它需要程序员有意识地扩展自己的能力范围,...
在IT行业中,程序员不仅...同时,随着职业生涯的发展,了解和掌握产品思维,甚至适时进行技术转型,如从开发转向产品管理,都是不可或缺的。通过阅读和学习提供的资源,程序员可以不断提升自己,适应IT行业的快速变化。
例如,从传统的C/S架构转向B/S架构,再到微服务架构,每一次转变都需要程序员去适应和学习。 ### 2. 职业规划与财务管理 职业规划对于程序员同样重要。随着经验的积累,程序员可能会面临多种职业路径的选择,如...
当程序员从“菜鸟”成长为“大虾”时,需要对编程语言和相关技术有更深入的了解。这包括熟练掌握编程语言、了解标准库和数据结构算法、掌握多线程编程、学习面向对象设计和设计模式、具备测试和软件工程的基础知识等...
程序员做到一定程度,就很快达到了自己瓶颈。该如何提升,往那方面提升,如果拓展自己,本文中的内容,帮助你找到适合自己的突围策略
程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 ...
对于从Java转到.NET平台的程序员来说,理解C#的基本概念和语法是非常重要的。以下是一些关键知识点: 1. **总体框架**: C#程序通常以`.cs`文件的形式存在,其中可以包含一个或多个类。类名不一定要与文件名相同,...
【程序员的十层楼】是一个比喻,用于描述程序员在技术成长过程中的不同阶段。这个概念主要是为了分析和比较中国与西方程序员的技术水平。通过设定不同的技术层级,我们可以更清晰地了解程序员所需掌握的知识和技能,...
程序员第二步:从程序员到项目经理, 有兴趣的人看一下
程序员从初级到中级10个秘诀程序员从初级到中级10个秘诀程序员从初级到中级10个秘诀程序员从初级到中级10个秘诀程序员从初级到中级10个秘诀程序员从初级到中级10个秘诀程序员从初级到中级10个秘诀程序员从初级到中级...
从企业经营的角度出发,探讨用户需求的根源,试图通过理解企业运作来优化需求管理,从而改善软件开发流程。 10. **持续进化阶段**: 在这个阶段,程序员已经成为一位能够综合考虑技术、业务和市场需求的专家。...
随着经验的增长,你应该转向JavaEE(企业版),学习Servlet、JSP、JDBC等技术,用于构建Web应用程序。Spring框架是JavaEE开发中的明星,你需要掌握Spring Boot、Spring MVC和Spring Data,这些能够极大地提高开发...
程序员计算器能够帮助用户方便地进行这些进制之间的转换,例如将一个十进制数转换成二进制或十六进制字符串,或者将一个十六进制数转换为十进制值。这对于理解二进制数据表示、内存地址、网络协议等至关重要。 2. ...
这篇文章“程序员十层楼:程序员的修炼”旨在描绘程序员从初学者到资深专家的成长路径,为不同阶段的程序员提供一个自我评估和提升的标准。下面将详细探讨这个成长体系中的各个层次及其所代表的知识点。 1. **入门...
它涵盖了程序员需要掌握的各种关键知识点,无论你是刚踏入编程领域的新人,还是希望巩固和提升现有技能的开发者,都能从中受益。 首先,教材的基础部分将引导你走进编程世界,讲解编程语言的基本语法和逻辑。这包括...