为这项工作挑选错误的工具

主要观点:作者为 Terminalwire 选择用 Ruby 构建终端客户端,尽管有其他工程师建议使用 Go、Rust 或 Crystal 等语言,作者认为 Ruby 更利于快速理解用户需求并应用到产品中,同时他也表示如果 Ruby 不适用可以随时改变想法,且用户并不在意使用的语言,产品更注重实现用户采用和满足需求。
关键信息:

  • 用 Ruby 构建 Terminalwire 客户端,提到其能快速推进产品开发且用户不在意语言。
  • 对比 Go、Rust 等语言的优势,如 Go 编译快、跨平台好等,但强调产品采用更重要。
  • 阐述选择 Ruby 的原因,如提高自身效率、探索 Ruby 在安装软件中的可行性、可随时改变想法等。
  • 针对关于 Ruby 的质疑,如二进制大、分发困难、性能不佳等进行反驳,称用户未对此抱怨且已找到解决方案。
  • 以 Dropbox 为例说明使用“错误工具”有时能带来成功。
    重要细节:
  • Ruby 借助强大抽象可推细节,作者用模式匹配等构建客户端与服务器通信。
  • 提到 Tebako 项目,解决 Ruby 分发问题,构建流程 10 分钟左右。
  • 终端客户端通过将客户端<->服务器协议打包到 RubyGems 处理版本差异。
  • 如 Heroku 命令行应用二进制达 400MB 对比 Tebako 的 15MB 等具体数据。
阅读 7
0 条评论