想做一款重型程序员工具箱

这个东西是什么?

这是一款工具箱,集成远程终端,数据库,抓接口工具,代理工具等等于一身的程序员专用工具箱,之所以叫其“重型”,是因为一般的工具箱只是有类似于url编码,日期转换,颜色转换等半天就能开发完毕的小功能,相比而言这里的功能重的多,所以我称之为“重型”。
概括说来,这个工具箱就是MobaXterm+Charles+ProxyMan+Navcat。。。当然不可能达到这些软件的高度,但是能进行基本的功能我觉得还是OK。

我为什么要做这个东西?

第一呢,就是日常开发我需要一些基础处理时,我不用打开多个软件操作,第二呢,就是大部分软件都是付费的,免费功能又很局限,用一个软件囊括所有功能我感觉还是很有搞头的。

这个软件什么样子呢?

就是普通工具箱软件的样子,我大致做了一下:


很简陋哈,只是简单做了下,大致就是这个样子的,后续说不定还会有其他的功能,对我而言还是有些用处的,请求个接口,登录服务器,查看数据库里的一些数据什么,我现在就用这个东西。

最后的问题

不知道网友们对这个工具箱怎么看,你会用么?

1 个赞

Nice啊
工具不嫌多
好用的工具更不嫌多
免费又好用的工具更更不嫌多

理论上当然好啊,但实际上很难做到,除非你是那种all in one的大神!

不同领域的工具需要不同领域的知识背景,想要工具用的顺手,可能需要开发者具有极其深厚的专业知识。

好吧,假设你恰好各方面都很牛逼,但时间和精力又是个问题,除非你是个富二代衣食无忧,无需在任何其他地方耗费精力,否则很难有时间有精力一个人把其他N个团队的工作都干了

愿望很好,也祝你成功,但小心做成了样样通样样松。

2 个赞

看上去很厉害的样子,支持Windows嘛?希望有便携版

截图是数据库连接示例啊,就问下你打算兼容多少种数据库的连接?要额外安装数据库驱动器嘛?

资瓷。祝你成功。

我觉得一大难点是要兼容用户习惯呀,比如说 wireshark 的过滤语法,不太可能自己整一套的

坚持也是一大难点,这么复杂的软件,不说打磨,就是整个 demo 都要不少时间

先做自己经常会用到的功能,然后慢慢迭代,一口气做很多,感觉会做不下去。:rofl:

另外就是建议做成框架和插件的形式,框架提供基础结构,具体功能由插件实现。也算是化整为零了。后续迭代维护会比较方便。

加油~

数据库可视化有 dbeaver 啊,开源的

可能要考虑不同数据库是否需要适配不同版本,如果不适配可以提供手动导入驱动自动适配的方式。
这种东西如果做的太过全面,随便单拎出来都是一个产品。
只能尽量把下限做高。

有经验的程序员会自己DIY适合自己的工具。。。你也用这种心态来开发就好了,别管别人用不用了。。

electron做的,肯定支持三端。
数据库的话目前是通过shell链接的,通过数据库的非交互模式实现,所以并不是直连数据库。
以后说不定可以直连数据库,只不过我没这个动力,目前的情况已经能满足我的需要了,我爱说实话:joy:

完全不看好,我对工具的经验(包括实物工具),什么都能干就是什么都干不好。
我还是喜欢专用工具,并且你的精力应该也不支持同时维护这么多功能。做出来的东西也很大。

真想做工具的话,要不做个neo4j的工具,自带的那个太难用了。。。

utools或者类似的 , 几个插件就差不多了.
你一个人单练 如此多功能,重复造大量轮子,
打散弹就是在浪费生命啊…

哈哈 最近把以前做过的一些小工具都放在了一起 https://sinqi.tools 我现在就是这个状态 自己开发练手 不管别人用不用 :sweat_smile:

哈哈 Just do it! 很多信息是通过做来不断拿到的 然后再考量
我就做了一个大杂烩:https://sinqi.tools
P.S. 做 还是不做 可以试试这个抉择小工具:Make Decision

这工具目前看,运维、网络、数据分析、前端开发、后端开发都设计,不仅要工具开发的人样样都懂,还要样样都精通,对开发者要求很高啊。先看看做出什么吧。

目前没有人能集成起来一个all in one的工具。你要是能把这些工具的精髓都集成起来,你就成功了。你打算用什么语言开发?有打算跨平台吗?

抓包用Fiddler,这玩意支持开代理服务,手机之类的设备可以通过连接这个代理,可以抓包手机上的连接。
请求接口这种,postman之类的烂大街了,各家都其实做得挺好的,不过有时候还是喜欢自己写python实现一些半自动化。
一些转编码、日期转换、颜色转换、数据格式化、正则、简单数据对比,等等的小工具,其实用浏览器扩展fehelper就好了。
还有网络常用的子网计算和划分,IP查询,网络配置命令生成。百度也很多。
IP、端口扫描。还有TCP、UDP的端口测试。
这些功能都能集成吗?

请问是小姐姐吗 :grinning:

不是… 为啥会问性别 :sweat_smile:

做软件最好做一些有共性的需求。程序员依据编程语言以及个人喜好,会使用不同的工具组合来完成你想的这些事情。而且你这里面还有一些需求是非常冷的场景。

如果你喜欢做程序员的工具,不如考虑做个使用 ssh 管理远程 Linux 服务器的软件。不需要远程安装任何的插件,一个空白的主机,只要有用户名密码,就能使用 GUI 工具,使用几下鼠标方便地管理远程服务器。完成:

  1. 添加与删除用户
  2. 安装软件。并且按照常用的任务安装多套软件。
  3. 查看系统日志。
  4. 备份服务器。
  5. 配置网络
  6. 配置 nginx, redis, postgresql 等服务器。
  7. 配置 python, php, java web 环境等等。
  8. 布署与配置 k8s, openstack 等等环境。
  9. 布署与配置科学爬强工具。

应该会有很多人需要这种软件吧。

大体可以参考 windows 的管理控制台,以及 openSUSE 的 yast. 尤其是 mmc,确实能够远程管理服务器。里面很多功能,比如组策略,在 linux 下还没有见过类似的。

感觉很有搞头

这个是我想了很久的东东。可是一直没有时间开工。从原理上不难,只要在登录服务器的时候,使用 ssh 向远程服务器发送一个 python 脚本到 /tmp 里面运行起来,从控制台接收客户端的就行了。

这样的程序使用纯 Python 应该就能够很简单的实现。