生产工具接入ai

概要

首先先介绍一下我的工作流:

  1. 使用笔记软件 obsidian 记录工作事项、知识库
  2. 开发使用 nvim
  3. 在终端上工作,主要用 fishshell
  4. 启动工具使用 raycast

想要在工作中用到的工具都接入 ai。

  1. obsidian 上使用,可以用来对笔记进行总结、誊写
  2. nvim 上使用 ai,可以直接进行自然语言式开发
  3. fishshell 上使用 ai,对于复杂的指令,可以直接使用自然语言进行描述,让 ai 来生成命令
  4. raycast 上使用,有问题可以直接问,而不用打开浏览器,再打开聊天页面

现在国内有很多模型可以用,而最火的就数 deepseek 了。而且 deepseek 的 api 价格也会比较低。所以以上都使用 deepseek 的模型。

……

Continue reading

Golang rpc服务更优雅的error处理和打印日志

服务器代码中,错误处理占据了大部分的逻辑。特别是C族语言,喜欢使用错误码,而不是异常来处理错误。 错误码比异常的优势是,性能会更好一些。抛出异常的话,因为有异常栈的展开,性能开销会大很多。 在Golang中,有一个error的接口来处理错误。

……

Continue reading

comm-用于做文件比较

comm工具

comm工具的主要用途是用来做文件的差集、交集。 工作中,对账是一个频繁的工作项。基本上几十行的数据,人眼就看不过来了。所以使用工具是我们最好的方案。 comm可以为我们很方便的对两个文件做差集、交集。所以我们只要把数据洗成一样的格式后,就可以用comm进行对比了。

……

Continue reading

创建homebrew/tap安装规则

创建自己的homebrew/tap

在github上创建一个名为homebrew-tap的仓库,创建一个Formula的目录。

然后就有一个自己的名为username/tap的homebrew仓库了。username改为自己的Github名字。

……

Continue reading

给dash生成doc文档

本文介绍dash如何生成文档以及文档生成工具dashdog的使用。

dash文档生成指引

官方提供了文档的生成指引方式Docset Generation Guide,但是在使用的过程发发现官方指引已经落后了,使用了dash 7下载了一个go的三方文档,并且去看了一下SQLite里的数据。 发现里面的格式跟文档提供的不一样。

……

Continue reading

golang多版本管理

在我们的开发环境中,使多个golang版本并存。

大部分情况下,一个比较新的golang版本就能满足我们的日常的开发需求。
但是项目中,因为协作的原因,或者由于项目启动比较早,可能我们不同的工程需要用不同的golang版本。甚至有些工作用比较新的版本编译不了。
这时候,我们就需要让本地的开发环境支持多个golang版本。

……

Continue reading

中国计算机网络拓扑结构

骨干网

网络架构

网络框架 主要分层汇接方式。纵向分为骨干网、城域网、接入网三个层级。 骨干网是最顶层的省际高速网络,基础电信运营商在各省会及主要城市设置骨干节点,并在节点间设置直联路,共同构成骨干网。 骨干网内分了核心节点和接入节点。

……

Continue reading

fdump tcp抓包框架

fdump是一个创建抓二进制包解析程序的框架。
对于自定义的二进制通信协议,在调试的时候会很困难。无论tcpdump还是wireshark抓到包都不能直接看到里面的内容。

……

Continue reading