在启动Command之后,我意识到我还没有构建出一个非常有说服力的产品来满足用户的即时需求。我没有气馁,而是坐下来思考这个应用程序有什么吸引人的地方,以及我如何开始迭代。
从那时起,我一直在尽可能快地在这款应用程序上迭代,调整功能,努力用不同的焦点重新发布Command。
在这篇文章中,我想分享一些小贴士,告诉你是什么加速了这个过程,以及当你快速迭代你自己的产品时,你可以如何利用这一点。
毫无疑问,这是您在构建产品时最难做的事情之一。
现实是,我们在产品上投资的每一秒都是我们正在从我们的生活中夺走的一秒。你无法挽回那段时间。
这造成的问题是,我们越是深入到一个项目中,我们就越会固步自封。不管它是否有意识,你都会对自己说,我已经走了这么远了……我应该继续走下去。
如果你像几周前一样在第二组,真的要停下来想一想。你之所以继续沿着这条路走下去,是因为你直接或间接地得到了反馈,认为这是一条正确的路吗?
听着,我明白。扔掉东西很疼。你投资建造它的时间不会回来了。但更糟糕的是,如果那些东西无论如何都不会起作用,深入挖掘只会花费更宝贵的时间。
我对此提出了一个有帮助的观点:如果你一开始就没有投入那么多时间,你就不会发现自己走错了路。
更好?这很可能是在错误的方向上建设,你的技能提高了,这不是一种浪费。
如果你打算快速迭代,你必须将所有情绪从你的过程中分离出来,如果你知道你最好的想法不能引起客户的共鸣,你就会扼杀它们。
在我的大部分开发生涯中,我的时间要么花在为别人建造东西上,要么就花在教别人如何建造东西上。
除了这里和那里的一些小事,我从来没有真正有机会去执行。
这让我很沮丧。主要是因为人们会对我说话,好像我不能创造一些有意义的东西。
那是个错误的举动。虽然我为我所取得的成就感到自豪,但这是出于错误的原因,最终意味着我让自己远离了我的目标,而不是朝着目标前进。
我应该做的(现在也在做)是大大缩小了我的范围。范围,这里指的是你正在做的工作量。
我最喜欢的一句话是,我讨厌地说,我在构建司令部的时候忽略了这句话:
“你做的越少,你能做的就越多。不要邀请更多你不想要的东西。“--斯科特·汉塞尔曼。
原因是你的范围最终决定了你的产品在人们心目中的定位。太多的功能意味着太多要谈论的事情,意味着令人困惑的信息。
相反,把它卷起来。您希望能够说X是X的X。
如果你不能做到这一点,你真的应该踩刹车,找出哪里可以减掉一些脂肪。
说到编写代码,我不能忍受杂乱无章。它快把我逼疯了,让我非常不舒服。
虽然有时这个滴答可能会让人沮丧,但偶尔它会产生一些有用的东西,最终为我节省了大量的时间。
在Command的整个开发过程中,当涉及到代码时,我强调要从容不迫,而不仅仅是匆忙通过实现来完成它。
连接GraphQL模式上的解析器,以便从我的数据库检索一些数据,或者执行一些业务逻辑。
如果代码可能有一些不可预测的行为,或者我想要一些额外的确定性来确保它工作,那么可以编写一些单元测试、集成测试或端到端测试。
尽管所有这些听起来都是胡言乱语,但这里的要点很简单:这种一致性意味着我可以在几乎不考虑它的情况下快速做出改变。
如果我的代码是不同模式的混搭(或者根本没有模式),那么每次我想要更改什么东西时,我都必须停下来思考。
我必须对我的所作所为更加谨慎和深思熟虑,这可能会浪费时间在修复过程中产生的错误上。
使用模式吗?我已经在短短两周内对Command进行了大量迭代。虽然前端的情况在视觉上发生了变化,在后端做的工作也有所不同,但所有这些工作的完成方式都与以前100%相同。
这里最重要的是:一旦你致力于一种模式,不要改变它,除非这样做是为了修复错误或主要的性能问题。
如果只是为了跟上潮流或获得一些可感知的表现,那就诚实地对待自己:你把注意力放在了错误的事情上。
最后但并非最不重要的一点是,当涉及到建筑产品时,这是我最喜欢的爱/恨关系。
有两个阵营:人们知道他们想要什么,你应该问他们;或者人们不知道他们想要什么,你应该建立自己的想法。
说到人们知道他们想要什么,这是间接的:你必须学会倾听什么让人发疯。是什么让他们的生活变得困难?哪里疼?
除非他们是受虐狂,否则大多数人都希望疼痛消失。如果你能学会仔细倾听别人的意见,他们会告诉你他们想让你建立什么,而不需要你与他们交谈。
一旦你确定了一种诚实至善的痛苦,并可以用证据来支持它(例如,人们在聊天中抱怨,Reddit上的负面帖子,或者Twitter上的一个糟糕的帖子),那么你就可以开始构建解决方案了。
你自己的个人经历在这里也是有效的,但你要小心不要让自己相信有些事情比实际情况更痛苦。
来自Nest和苹果成名的托尼·法德尔(Tony Fadell)在上面的视频中把这一点说得更清楚了。
他谈论的是基于事实的决定与基于意见的决定,以及在你建立一些东西之前寻求反馈是如何行不通的。
取而代之的是,你必须基于你对什么是正确的(什么会解决这种痛苦)的观点来构建东西,然后征求反馈,并从那里开始迭代。
为什么?在开发过程的早期,人们很难理解你是如何试图解决他们的痛苦的。除非有一件完成的事情摆在他们面前,否则就会有太多的变数,你最终得到的反馈质量很低,可能会把你引向错误的方向。
要点:确保你正在建设的东西你知道对人们来说是痛苦的,而不仅仅是你认为痛苦的东西。
如果从这一切中能得出一条智慧的话,那就是适应不舒服的感觉。
在你找到只会为别人点击的东西之前,你必须承担风险和投入的时间成本,才能让它发挥作用。在你找到那个东西之前,你必须接受让它工作的风险和投入的时间成本。就是这样。
上面的小贴士将有助于减轻这种经历的痛苦,并努力确保您在每次迭代中都能坚持下去,直到找到适合产品市场的产品。
阅读一位试图找到自给自足成功之路的个人创始人提供的关于建立一家自力更生的小型SaaS企业的战术提示和见解。