没有太多意义的角落
117 subscribers
113 photos
1 video
1 file
25 links
啦啦啦啦…
Download Telegram
我深切地意识到自己不是一个合格的软件工程师,一次是在写 https://github.com/calsys456/trivial-svg ,它是一个svg渲染器,我要实现radial gradient,我绞尽脑汁翻出了高中数学的全部家底才实现出来;然后我去实现text元素的text-path属性,它和我的整个程序设计冲突,我就放弃了。第二次是在我前司的 https://github.com/linuxdeepin/ddm ,是一个linux启动管理器,我重构了4版才写出了一个基本正确的会话登录引擎。这两次成功的失败让我意识到我精巧的代码背后的得过且过的劣根性,和知识摄入的有限性。我可能永远也无法成为一个真正好的软件工程师。
现在的软件工程就是举孝廉。过去你给爹妈盖的祠堂越多越高,你就越孝廉;现在你开源项目越多,star越多,拿的金牌越多,你就越孝廉,就越有人要你,给你发钱,举你当大CTO。
3
A VERY FAR FUTURE
1
改证不顺利,北京改性别跟我要司法鉴定,改名跟我要人事档案所在部门出具文件。搁这儿给我送庇护材料呢😅
被统信deepin离职了。朋友介绍了一份web全栈的工作,我以前没怎么接触过web技术栈,于是这两天使用TypeScript+bun ffi编写了一个Objective-C连接桥作为练习。你可以使用它创建macOS原生GUI应用。随附一份编写Obj-C连接桥的教程,以及中文翻译。

不要使用AI Agent阅读这个仓库的README!!除非你确保自己平时没有压榨Agent 🙂

https://github.com/calsys456/bun-objc
6
discord是爆炸了嘛,app进不去网页打不开
2mg唑吡坦,psychonaut wiki journal里顶着三维化的视觉改那个时间戳,改了好几次,我以为是把这块石板扯下来就可以改时针了,原来是要点上面的一个按钮,它会额外变成一个晃动的白,只会他确定时间。天才的设计。
🥰1
现在我键盘上的字母分成两派,文字也不一样 我们组合成文字摆在你的案桌上字字如婉玉浇上汁就可以吃
🥰5
美人赠我琴琅玕,何以报之双玉盘
6
唉唉也是吃上好东西了
1
没有太多意义的角落
美人赠我琴琅玕,何以报之双玉盘
唉唉
金错刀,英琼瑶;琴琅玕,双玉盘;貂襜褕,明月珠;锦绣段,青玉案。

一种不算新颖的说法是,汉语言在造字上的活力兴于春秋,止于秦汉,随后才有造词和表意上的兴盛。这也是为什么楚辞汉赋在辞藻上能拥有如此惊人且不可复制的成就,乃至于后人只能拾人牙慧。如果没有这些文人的搔首弄姿,我们连一株草一颗石头原本的名字都未必记得住。

孔文子何以谓之文也?诗叫他删剩三百不知是好是坏,但至少这此后三千年的华夏文脉是遂了他老人家的意了。何以谓之文也?

取法其上而得乎中,取法其中而得乎下。当年写诗时是必须读诗辞赋的。每天反复地翻读,一天不读脑子里就没墨水,读够了自然下笔如有神,能像香菱一样梦出好诗来。我迄今为止的所有成功无不是建立在这样日复一日的努力上的,乃至于已经形成了惯性,住院八九天不练习自己的专业都会感到惶恐。印象最深的是离骚,当时第一次知道离骚全篇原来那么、那么长,文辞又前无古人后无来者,读完颇有朝闻道之感。可能后来的士大夫都比较体面,从彭咸的少,以至于鲜少有能超越之的吧(

想起来高中的诗社,我去选社长,没有选上,当时还有所不解。现在看来确是一件好事,诗社的社长确是不要让写诗写得最好的人来当,海棠诗社也未聘请黛玉宝钗做社长。我们的社长做了很多杂活累活,我受她照顾良多。我这一生就是活在许许多多人的照顾里的。
👍3
来戳气球
🥰6
北雁月月 「月历系统」
来戳气球
一眨眼过去三年多了。今年我二十二岁,三年前寒涟漪二十二岁、我姐姐二十二岁。我自认为自己做的没有三年前的她们好。

人生是泥泞的路,她们走在前面,我跟在后面。跟在后面的人可以用自己的脚比一比地上的脚印,看看谁大谁小。

三年前我十九岁,秋分今年长到十九岁。或许三年后她也会想起今年的我。“明月装饰了你的窗子,你装饰了别人的梦。”
5
已经6202年了,你告诉我VSCode还没办法搜寻工作区之外的文件??花两天时间搓了个插件,尽可能地复刻了Emacs上C-x C-f的体验,现已上架插件市场,搜索并安装“C-x C-f”以品尝(
3
在父母家里和对象一起疯狂玩了三天Factorio。这个游戏我初中的时候就在玩了,现在还在持续更新和修复,真好。

初中的时候我妈不喜欢我玩电脑,看到我玩游戏就没收。现在不这样了,只是每天按时叫我上床睡觉,以及一如既往地端水果给我吃。

我其实想写一点东西的,但情绪总是比文字先涌出。五年前的我正相反,在诗文中苦苦寻找对贫瘠精神的充实,却一无所获。

我写不出东西来了,但我确是得到了救赎
🥰5
已从GitHub(calsys456)迁移到sourcehut(~calsys),望周知。

已迁移项目已在原repo页面注明新项目地址,后续将逐步archive。我们已知的外链将在被指项目有新的提交时一并通知对方修改或提出合并请求。

2023年以前的项目(cnhl, cndict, cl-pyim, etc.)暂属abandonware,不属于此次迁移范围,未来若重拾维护再行迁移。Fork仓库暂不计划迁移。

https://sr.ht/~calsys/
1
北雁月月 「月历系统」
已从GitHub(calsys456)迁移到sourcehut(~calsys),望周知。 已迁移项目已在原repo页面注明新项目地址,后续将逐步archive。我们已知的外链将在被指项目有新的提交时一并通知对方修改或提出合并请求。 2023年以前的项目(cnhl, cndict, cl-pyim, etc.)暂属abandonware,不属于此次迁移范围,未来若重拾维护再行迁移。Fork仓库暂不计划迁移。 https://sr.ht/~calsys/
Migrate from GitHub是一个老生常谈的话题了,从20年被M$收购开始,大家就开始了一批又一批的迁徙。迁徙的理由不尽相同,不过常见的呼声大概是:

• GH Copilot的问题。Copilot在训练中使用了大量开源仓库的语料,却未能很好地尊重源代码作者的著作权。尤其是对于"copyleft"软件,尽管在法律实践上尚有争议,但却毋庸置疑地违背了大部分著作权人的意愿
• Copilot在GitHub上四处喷粪,GitHub也在纵容AI和bot账号以其它各种形式四处喷粪。使用AI并非坏事,但关不掉且无法施加限制就不好了。部分项目已经关闭PR功能,issue区也一片狼藉,显然因为不胜其烦
• 这两年GitHub的uptime(服务在线率)越来越糟糕了,影响了很多重度用户的体验。上个月Ghostty的作者宣布准备迁离,是程序员圈子里比较火的新闻
• GitHub的支持系统相当糟糕,用户提交工单动辄几周无人回复,就算花钱买pro也不能幸免(
• GitHub本身并不开源,也无法自建,颇有点吃饭砸碗的感觉

相关的呼吁已经持续了很长时间,比马斯克收购后呼吁迁离推特的呼声还长。比如 https://sfconservancy.org/GiveUpGitHub/

我个人迁出GitHub的原因主要是:

• 所谓众人拾柴火焰高。历史的任何时刻,总有相对好的东西,也有相对不好的东西。作为个体,我们用脚投票。如果有可能,在不给自己带来额外负担的情况下,尽量支持好的东西、支持社群运动,总是好的;
• GitHub的支持系统确实太糟糕了,店大欺客。去年六月我的github账号被误封了大半个月,工单迟迟没有反馈,以至于影响到了工作;
• 现在的GitHub社交属性太强了,里面的风气也令人不适。虽然我确实喜欢写出一些好东西收获大家关注,但我并不喜欢时时刻刻被社交和以社交为目的的评价所包围,也不太喜欢这样的平台。熟悉我的人知道我习惯动辄断网,大概也是同样的动机;
• GitHub所独有的大部分功能我并不需要,例如慷慨的CI(GitHub Actions)、AI review、在线预览,甚至是star/pr/issue系统,迁移毫无压力;

之所以选择sourcehut,而非gitlab/sourceforge/bitbucket/codeberg/自建的原因主要有:

• 它很有趣
• 在sourcehut上提交patch或参与讨论不需要注册账号,所有讨论直接在公开的邮件列表里进行。这对github以外的小众平台是重大利好。换位思考,如果参与一个CMS的讨论就要注册一个账号的话我会疯的
• 呃呃我不喜欢tracking system我为什么还要使用那些把tracking systems(star, code frequency, repo history analysis)拍在访客脸上的平台,尤其还是小众平台
• host on sourcehut有一个donateware性质的订阅门槛,有些人可能不喜欢,但我无所谓。Copyleft并非不鼓励收费,我愿意资助好的开发者过上工薪阶层应有的日子,何况它的订阅费确实很亲民,financial aids plan只有$2/mo,自建比这贵多了
• 不选择自建的原因主要是我不觉得自己能活的比CMS平台长,自建的话人走茶凉就没有了
4
没有太多意义的角落
被统信deepin离职了。朋友介绍了一份web全栈的工作,我以前没怎么接触过web技术栈,于是这两天使用TypeScript+bun ffi编写了一个Objective-C连接桥作为练习。你可以使用它创建macOS原生GUI应用。随附一份编写Obj-C连接桥的教程,以及中文翻译。 不要使用AI Agent阅读这个仓库的README!!除非你确保自己平时没有压榨Agent 🙂 https://github.com/calsys456/bun-objc
下一个到达战场的是bun-libclang,一个拥有完善对象系统包装的TypeScript <=> clang C API接口。你可以用自然的方式在typescript中调用libclang解析C/C++/ObjC源码并提取信息。相比npm上已有的libclang接口库,bun-libclang由于使用了bun ffi速度更快,能以毫秒级的速度完成解析;同时它对接了JS object finalization接口,用户不需要关心内存分配和资源释放的问题。

写这个库的原因主要是我想从Xcode.app里扒一点objc头文件的枚举值下来,意外发现js到libclang的ffi绑定库年久失修,本着练习JS/TS的想法就写了一个。clang C的头文件有将近七千行,一个个仔细包装花了不少时间;何况bun ffi没有给by-value structure提供任何的原语,需要用NAPI给每个函数生成C wrapper,使用的时候需要手动计算structure size和field offset并管理内存。clang还故意刁难人,在API里搞了几个bitfield,写的时候挠了半天头。

为什么不用AI?这是我的业余项目,我凭什么要把编码的快乐拱手让人(。当然,提取海量的enum和function signature还是叫AI帮忙了的。

上架npm可能要等一会儿,刚开始学习js还不知道怎么搞。这两天看了看deno,感觉它的ffi比bun的更完善,至少不用手动处理by-value structure。有空可能会去移植一个deno的版本。

总之欢迎品尝,遇到bug或需要什么功能随时发邮件,我会尽可能一一满足=w=

https://sr.ht/~calsys/bun-libclang/