从土木转行自学开发,我做了款用 Git 分支管理 Todo 的任务管理工具!
有趣产品咖啡馆 Funny café :一个能让你更快接触到更多新鲜有趣好玩产品的地方。我会寻找市面上有趣的独立产品,向独立开发者们进行一对一的访谈,挖掘优质产品背后不为人知的故事(文末可加入群聊,有彩蛋!)。
1、介绍下你自己和目前所做的产品
我是inno@小红书,土木工程专业毕业的"跨界开发者"。大学时我自学计算机,毕业后转入IT行业,先后从事音视频编解码和分布式存储开发工作。
目前正在独立开发Gitto,这是一款基于Git理念的任务管理应用,将软件开发中的 "提交(Commit)" 、"分支(Branch)" 和 "仓库(Repository)" 概念应用到个人任务管理领域,帮助用户更灵活地处理复杂多变的任务。
灵感来源于我日常使用Git的经验。有一天我敲下 git log --graph 命令查看项目提交历史时,发现Git的分支结构非常适合表达现实生活中的任务管理方式 - 我们的工作和生活通常是多线并行的,而不是简单的线性进行。
作为开发者,我常常需要在任务间切换:开发新功能时被紧急bug打断,必须立即处理。这与Git的分支管理非常相似,而传统待办应用的线性列表无法有效表达这种复杂工作流。
我认为软件开发中的许多思想和方法可以应用到日常任务管理中,Gitto正是将这种"Git思维"带入个人任务管理的尝试。
3、相比传统Todo应用,"仓库"结构带来了哪些独特的好处?比如在项目管理、学习计划上的效果?
"仓库"结构带来了几个独特优势:
首先,它提供了清晰的任务分类,让用户可以为不同领域的任务创建独立空间。比如工作项目、个人学习和家庭事务可以分别放在不同仓库,实现隔离,减少心理切换成本。
其次,在项目管理中,仓库可以对应不同项目,每个项目内部再通过分支管理不同模块的开发进度。比如一个产品开发项目,可以有UI设计分支、后端开发分支和测试分支,便于跟踪各部分的进度。
在学习计划上,仓库可以对应不同学科,而分支则可以处理学习过程中的意外情况。例如,当你正在学习某个主题时,突然发现需要补充一些基础知识,就可以创建一个新分支专注于这个基础知识点,学完后再合并回主要学习路径。
最重要的是,仓库结构与分支系统结合,让用户可以直观地看到任务的演进历史和分支关系,更符合我们实际的工作和学习方式。
4、在任务分支管理中,是否遇到过用户"理解门槛过高"的问题?你是如何去降低学习成本的?
确实,这是我最担心的问题之一。Git概念对非技术用户来说有一定理解门槛,为了降低学习成本,我采取了几个策略:
1、我只引入了Git的部分核心理念,如"提交"、"分支"和"仓库"这三个最基础的概念,而没有引入Git中的大量复杂功能和概念,如"rebase"、"cherry-pick"、"stash"、"submodule"等高级操作,这样可以让用户更容易上手。
2、设计了直观的视觉界面,让用户可以直观看到任务的演进历史和分支关系,而不需要理解底层机制。用户只需关注自己的任务管理,而不必了解Git的技术细节。
3、提供了引导式的新手教程,通过实例演示如何在日常场景中应用这些概念。比如展示了"正在做A任务,被打断去做B任务,然后回来继续A"这样的日常场景,帮助用户建立概念连接。
这些努力使得即使非技术背景的用户也能比较容易地理解和使用Gitto的核心功能,而不必担心被Git的复杂性所困扰。
数据可视化对自我管理有着强大的推动作用。Gitto的热力图(类似GitHub的提交热力图)直观展示了用户的活动频率和规律。
它提供了直接的视觉反馈,帮助用户了解自己的工作模式和习惯。看到一段时间内热力图密集,意味着这段时间很专注;看到稀疏或空白区域,提醒用户可能出现了拖延或工作中断。
其次,热力图激发了用户的"不要打破连续"心理,促使人们保持每日任务的完成习惯。这种类似"打卡"的视觉激励很有效,能够建立长期习惯。
通过查看不同时期的热力图对比,用户可以评估自己的进步和变化,了解哪些时间段自己效率更高,哪些时段容易松懈,从而进行针对性调整。
最重要的是,数据可视化将抽象的工作量转化为具体可见的图形,让成就感更加直观,这对于维持长期动力非常重要。人们往往更容易被直观的进度展示所激励,而不是冰冷的数字统计。
自iOS上线以来,我收到了许多用户的喜爱和支持,同时也有大量用户强烈要求在其他平台上使用Gitto。
我一直认为安卓和PC等平台的用户同样重要,因此接下来的首要任务是尽快重构应用以支持Android、macOS和Windows等其他平台,并实现多端数据同步等必要功能,让所有用户都能享受到Gitto带来的效率提升。
除了多平台支持外,我计划逐步引入更多Git的功能与理念到Gitto中。
目前我们只实现了Git的核心概念如分支、提交和仓库,未来将进一步丰富产品功能,让用户能够更灵活地管理任务流程、标记重要节点、应对计划变更,以及在不同工作上下文间无缝切换。
我相信这些改进,将使Gitto成为一个更加全面和强大的任务管理工具,真正体现Git工作流的精髓。
关于AI功能,确实有所考虑。
多位用户也提出了引入AI的功能建议,但我的理念是AI应该作为辅助工具,而非主导。目前计划将AI应用在一些后置辅助场景中,比如:
自动生成分支合并的摘要信息 任务完成后的简单数据分析和总结 辅助整理任务描述和标签
我不希望AI主导任务的规划等前置操作,因为我认为任务管理的核心价值在于用户自己对工作的思考和规划过程,这是提升效率的关键环节,不应该完全交给AI。
在推进这些功能时,我会始终关注用户反馈,确保每一项新功能都能真正提升用户体验,而不仅仅是追随技术潮流。我相信,Git的理念与任务管理的结合还有很多可能性等待我们去探索。
7、10分满分的话,你愿意给你的产品打几分?理由是?
我会给Gitto打6分,刚好及格。
这个评分反映了我对产品现状的客观认识:Gitto已经实现了分支图、热力图等核心功能,成功表达出了将Git分支管理思想应用到任务管理的创新理念;同时UI界面简洁直观,核心功能相对稳定可靠。
给出及格分数的原因是产品还有明显的不足和亟待完善之处:数据同步功能目前仍在内测阶段;对非技术背景用户的引导体验还需大幅优化;各个组件的小功能还需完善补充;分支合并等部分核心功能的用户体验也有待提升。
作为开发者,我认为保持清醒的自我评价非常重要。这6分既肯定了产品已经实现的基础价值,也清醒地提醒我还有很大的改进空间。我相信随着不断迭代,Gitto会逐步接近我心目中的理想形态。
8、除了自己的产品,你还有在用哪些产品?
我最近特别喜欢一款偏小众的游戏Mini Motorways(登录了iOS也算App?哈哈),这是一款修路的游戏。之前我沉迷于城市:天际线中的修房子,后来又转向修路,这或许也是当初我选择报考土木工程专业的一个小原因?
9、你有哪些工作/生活习惯?
我的工作习惯其实就类似Gitto设计的理念一样:
在工作环境上,我的电脑尽量不关机,日常保持多个虚拟桌面,每个桌面分布着不同的项目,包含当前项目所需上下文的窗口,同时打开多个终端、网页、编辑器等。
当一个项目的Cursor正在思考时,我会切换到下个桌面启动测试,再换到另一个项目去查看同事回复。这种在多个任务分支间灵活切换的工作方式,正是我开发Gitto进行项目任务管理的初衷。
在生活上,我则尽量保持隔天运动和保障充足的睡眠时间。我深信良好的身体状况和清晰的头脑思维才是我们这行赖以生存的核心竞争力。
这些工作和生活习惯相互支持,帮助我在独立开发的道路上保持专注和创造力,也是Gitto产品设计的重要灵感来源。
10、请用一句话打动用户并让她使用你的产品
如果你厌倦了在一堆线性待办事项中迷失方向,Gitto让你像管理代码一样掌控复杂任务,轻松应对多线并行的现实工作流。
,群里的独立开发者是女生,群成员也是女生,在群里会分享女生会用到的一些app,后续也会邀请更多女生独立开发者进来分享, 加我好友,可以邀请你进群。