年中杂想

本贴最后更新于 1976 天前,其中的信息可能已经时移俗易

前言

有两个月没写总结了,不管原因如何,总要把欠了的补上。这个周末抽出时间,好好整理一下前两个月的工作内容以及感想,内容涉及:

  1. Github
  2. Flutter
  3. 产品思维与用户意识
  4. 新的技术观
  5. 新的团队观
  6. 自我认可

Github

具体技术点,已写在文章中:🤖 自动化的 Github Workflow

自做开源组件以来,文档、预览、构建、发布这几个环节,一直都是很繁琐,手工操作多,易出错,十分不得要领。

于是参考 vue/nuxt/element, 一点一点地摸索,反复地尝试,终于找到了适合我们的 github wokflow。

于是我们就对所有组件进行升级改造,相关脑图如下:
image.png

Flutter

滴雀 APP(意为滴普语雀)下载地址

这个星期,我们由 Flutter 开发的 APP 终于登录 App Store 了。这是我们第一款由 Flutter 开发的应用,我也经历了第一次从 0 到 1 完整的上架的过程。

我在语雀官方论坛上发布相关信息,也获得了官方人员的认可。
image.png

我感触比较深的是两点:

  1. 增长了信心
  2. 实践才是王道

信心

年初的时候,与某团队进行技术交流,听说他们不但做了小程序,还做了 APP,甚至他们已经完成了从 RN 到 Flutter 的转型。我们当时只涉及 H5,并没有过 APP 方面的积累,因此虽然表面不动声色,其实心里大吃一惊,不免有些没底气。

时至今日,我们开发的 APP 已被当初那个团队的人使用着,我心里已不虚。

实践

如今很多社区、论坛、公众号,都在报道 Flutter 的相关信息,各种比较 Flutter 与其他技术的优缺点; 身边很多人也早就跃跃欲试,却一直说没时间而停滞不前,或因为做不出最佳选择而犹豫不决。

而我们已经在实践,并且上生产了。要想真正了解一件事,唯有通过亲身实践。所以,如果真的想尝试,赶紧行动起来吧,不用再犹豫了,也不需要把没时间当借口。

产品思维与用户意识

通过实践,我认为做产品有两点很重要:

  1. 搞清楚用户最想要解决的是什么问题
  2. 自己用起来

MVP

第 1 点也就是 mvp,但这点理论上说起来简单,做起来却难。

首先,用户的声音不一定能听到,就算听到了,也可能因为沟通表达的问题,理解有偏差。

其次,很多时候产品规划都是很宏大的,功能都是很齐全的,从 0 到 1 的过程中,很容易在这种规划中迷失。

同时,优先解决核心问题,先实现最小功能闭环,思路是没错,但这样的产物可能过于简陋,因此有人可能会觉得这不像是产品,而持否定意见。

吃自己的狗粮

所以,第 2 点就很重要。自己做的产品,自己用起来,也即“吃自己的狗粮”。

自己去动手前,想一想,这个东西做出来自己会不会用?如果答案是否定的,那就先别动手,重新再想一想。

自己作为用户,才能真正地培养用户意识。

最后还要注意的是,产品越早投入使用越好,这样可以根据用户反馈,快速调整与完善。

新的技术观

对于技术,我新增了以下方面来观察与思考:

  1. 全局
  2. 金钱
  3. 用户
  4. 开源

全局

全局意味着要有整体思维,从团队、从整条生产链路来思考。

现在市面上很多媒体,过分强调个人或单个环节,导致人们普遍过分关注局部,而忽略了整体。

比如有很多开发技术方面的“练级攻略”,给人一种错觉,似乎掌握了这些技术,就能横扫江湖,走向巅峰。但其实开发只是软件工程的一个环节罢了,如果不能掌握整体,在局部再登峰造极,也会有捉襟见肘的时候。

再比如某些教程,说是“教你从 0 到 1 开发一个 APP”,但其实也只是聚焦在开发领域,也只是能在自己的机器上构建一个 APP,安装在自己手机里而已。真正要上线到生产,让别人也能安装使用,同时保持后续的更新迭代,前前后后还有很多内容要涉及,并不是学了教程,开发好了,就完事了。

使用全局的思维来看待这些事情,这样才能看得更清楚、更透彻。

金钱

其实很多技术是可以用金钱来买的。这个交易的本质是:用金钱来买时间。

下面举些例子:

  1. 我们没有相关新技术的知识,我们可以自己去预研、去实践,然后自己再写一份教程,也可以直接买付费的教程,让大家快速进入系统的学习
  2. 我们要想一个功能,目前没有,可以自己去实现,也可以买第三方服务
  3. 我们缺少具备某些经验的人员,可以内部花时间培养,也可以直接从外部招聘有相关经验的人员

上面的例子都是常见的待决策的情况,前者都是自己亲力亲为,花费的是时间; 后者则是做资源整合,付出的是金钱。值得一提的是,时间也是金钱,也是成本,因为员工是要发工资的,这一点千万不要忽略了。

遇到上述情况如何决策,需要具体情况具体分析。

只不过,在筛选简历时,每每遇到一些人描述自己“全栈工程师”,但其实只是泛泛而谈时,我都在想,我为何不直接招一个专职的前端、一个专职的后端?这对于企业而言,一个月增加的成本,微不足道。这种类似的思想,池建强在《Flutter 要全平台制霸?我看悬》一文也提到了。

用户

没有愚蠢的用户

产品上线后,就会收到用户的反馈。有可能产品的第一个界面,就让用户困惑了。此时技术人员常见的反应是:这都不懂,真笨!

请尽早把用户愚蠢的想法抛弃掉。用户遇到了任何问题,首先应该想想,是不是产品有需要优化的地方。技术是用来解决问题,提升效率的,不是用来彰显自己高端、与众不同的,做技术的千万不能曲高和寡。

用户第一

很多时候技术人员评估的事情的优先级,是按照技术难易程度、有趣程度而排列的,但其实上线后,最重要的,是倾向用户的声音,根据反馈进行开发调整。

也许你觉得做个炫酷的动画是很有挑战性、很有趣的事情,但用户也许更关心产品首页的错别字。这种情况下,请优先改正错别字。

开源

总有一些技术团队在讲自己是设计这个系统的,怎么实现的,讲了一大堆,即没有附上代码地址,说什么与内部业务联系太紧密,不方便开源。

我也写过一些文章,所以我清楚,很多时候文字并不能完整地表达意图,更别说一个大型系统的设计。也许文章作者觉得自己写出关键点了,但读者的知识背景参差不齐,难保文章没写出来的,才是读者更需要的。因此,软件设计没有附上相关的可执行产物,我认为做的就是不到位。

很多时候,大家重复造轮子,就是因为资源不共享,前人的成果没法复用。

vue、k8s 都开源了,把我们的实践成果开个源,其实也什么大不了的。如果涉及商业机密,把相关内容替换成 demo 就好了。说到底,分享的意愿不够罢了。

如果我们实践了想分享,一定会开源,不搞虚的。

新的团队观

去年,我的团队理念是,基于团队现有成员,把每个人打造出我想象中的样子。

当时,我看人主要还是看技术能力; 对于一些技术能力并不符合预期,但态度好的人,我也愿意招聘进来,因为可以培养。

今年,我更强调的是适者生存,也即,团队是有淘汰的,跟不上步伐的人,只能离开。

我现在招聘更愿意招已经技术能力过关,不太需要进行技术培养的人,也即宁缺勿滥,纵然这样很可能一个月也招不到一个人。

另外,我还会注重对软实力的考察,比如热情、目标规划、自我定位、思维方式等,我希望团队成员是自我驱动的,最终能成为自己想要的样子。

一句话总结:去年我想让团队的所有人变得合适; 现在我只想要合适的人留在团队里。

自我认可

在去年北京的项目实战之后,我隐约觉得,我已经获得了足够的外界认可。

回来广州的大半年,我愈发确定,接下来我寻求的,是自我认可。

这是一套自己给自己的评判标准以及打分机制:

  • 也许外界觉得这样差不多了,但我觉得不够
  • 也许外界觉得这样做不对,但我相信自己

最后,来点鸡汤:愿你不受外界环境摆布,坚定自己的意志,坚持做你最初想做的事。

  • 总结
    205 引用 • 1748 回帖 • 2 关注
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖 • 1 关注
  • 工作

    快乐工作,认真生活。

    139 引用 • 1469 回帖 • 6 关注

相关帖子

14 回帖

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • HacPai 最认真回帖的,没有之一

  • 其他回帖
  • levy 1
    作者

    感触很深,有共鸣 ~ 不过话说回来,在广州不,如果有换工作意愿,可以考虑加入我们,一群由有追求的年轻人组成的团队 😄

    我们相关信息:https://github.com/FEMessage/hire

    1 回复
  • yangyujiao 2

    之前看完文章,准备评论,
    然后去开会了,忙到现在 7 点多都下班一个多小时了,
    又看到了,还是评论一下吧。

    我现在从一个项目调到另一个项目,但是进之前项目时候,真的是信心满满,想要大干一场,结果真是的各种傻眼。
    首先因为是空降过去的,又没有充分授权,导致位置很尴尬,3 个月感觉什么都没有做,
    有机会调走,开始听得觉得挺好的,兴高采烈的来了。
    结果,刚来 2 天,超级巨坑。其实坑没事,我觉得我还是有能力填上的。
    但是还是有个严重的授权问题。哎,感觉领导意识不到这个问题可能带来的后果。

    对于团队来说,我开始也会想态度很重要,哪怕能力欠缺,至少可以培养。
    但是慢慢就觉得,有时候态度好,但是不一定学习能力强啊。学习成本也是一个很大的问题啊。
    我需要 1 个月出来的东西,你学习就要学半个多月,理解需求还乱七八糟,是态度挺端正的,但是能力也是很大问题。

    我们这边需求方很多时候自己都讲不清楚,还各种改,导致我们自己的需求经理各种乱,在转达给开发,又乱上加乱。
    如果需求经理的逻辑归纳能力比较强还好,但是,有时候自己都听不明白需求,回来还要讲给开发听,,,
    开发凭感觉做东西,然后各种返工。

    自我认可。我觉得我自己能力很好,然而很多时候无用武之地。很多东西都接触不到,尤其是因为新项目,本身之前有负责人的时候,
    有些东西,我觉得不是很困难的事情,但是会上就会让大家说的多困难多困难。
    可能说站着说话不腰疼,但是现在真的就是很多时候,问题不难,就看负责的人是不是认真对待了,无论是技术,还是需求其实都不是不能克服的东西,还是看想不想做好,是不是真的用心去做了。

    我不是个工作狂,但是我会在工作时间尽可能的高效保质保量的做完我的任务。
    现在很多时候,出现问题,问这个,这个不知道说你去问那个,那个说你去问那那个。感觉团队人不清楚自己应该做什么,更别说了解团队在做什么了。

    团队人员对于目标都是模糊的,根本不知道我们要做出个什么样的东西,而且没有归属感,荣誉感,我对于团队做出一个东西,是很兴奋,很有成就感的,现在基本感觉不到大家还有这样的感觉。
    这几年,见过太多就是来混这 8 小时就行的人,不会想自己有哪些进步,不会想自己可以得到、学到什么,而且,会觉得做不好,也不是我的责任,反正不是我背锅。

    以前只需要管好自己,等需要管理一个团队的时候,就发现,每个人的想法、追求对于工作中的表现有很大的差别。
    态度、能力都具备的人,可遇不可求啊。

    3 回复
  • gmt

    “吃自己的狗粮”这一观点我十分赞同,很多团队是自己开发产品给别人用,自己却从来不用。

  • 查看全部回帖