八年了,从一个随机数按钮到我的技术底座:豆子工具复盘

有些事,不做笔记真的意识不到已经过去了这么久。 最近在整理博客内容时,我翻到了**“豆子工具”小程序**的最早版本记录。那是 2018 年,最初的它简陋得甚至有点滑稽:整个页面只有一个按钮,点一下,生成一个随机数。 谁能想到,这颗“小豆子”一跑就是八年。 八年,它长成了我最趁手的“瑞士军刀” 这八年里,我在这款小程序上倾注了太多的时间和精力。它更像是我个人开发者生涯的一个“活化石”,记录了我每一个阶段遇到的问题和想出的方案。 我始终坚持一个原则:只做真正有用的。 现在的“豆子工具”已经从当年的随机数生成器,进化成了一个覆盖网络、多媒体、开发调试的全能工具箱: 网络与运维必备:获取 WIFI 公网地址、云厂商安全组管理、查服务端口、域名证书检测。 多媒体处理:音频格式转换(m4a 转 mp3)、图片格式转换(png 转 webp)、二维码识别与生成。 开发调试利器:局域网调试(TCP/UDP/WebSocket)、ESP 网络配置、时间戳转换、Base64 与 URL 编解码。 安全与提醒:私密密码本、事件邮件通知、微信服务通知、语音验证码。 这中间还有很多功能,比如查看上报信息、特定的算法实现等。当然,也有不少功能因为受众太小或者微信审核的边界问题,遗憾地消失在了版本更迭中。 它是工具,也是我的技术底座 很多人问过我,市面上工具软件那么多,为什么要自己写? 答案很简单:自由。 我可以为了适配一个特殊的局域网协议去写一套调试代码,也可以为了保护自己的隐私数据写一个加密密码本。这八年积累下来的不只是功能,更是对 Go、Rust、前端交互以及各种底层协议的深度理解。 关于未来的“深度复盘” 八年的积淀太厚,小程序那方寸之间已经装不下太多的原理说明。 所以,我决定在我的新博客中,为这些工具开辟专门的专栏。我会挑选出其中含金量最高、逻辑最有趣的工具,拆解它们的实现原理。比如: 多媒体黑盒:音频和图片格式转换在小程序前端是如何高效完成的? 网络深水区:局域网内的协议调试有哪些不为人知的坑? 消息推送系统:我是如何设计那套多端触发的事件通知系统的? 这些内容我会以“实战笔记”的形式,在这里逐一连载。 这颗“豆子”还会继续长下去,而关于它的故事,我们去博客细聊。

2018-01-03 · 1 min · Eagle