duangsuse::Echo
720 subscribers
4.31K photos
131 videos
583 files
6.55K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
#今日挑战:高斯算子下的流体平滑(Gaussian Fluid Diffusion)
https://codepen.io/duangsuz/full/dPXLJWB

本挑战通过离散卷积(Discrete Convolution)展示信号在空间中的扩散。我们将粒子流的速度场视为一种势能,通过高斯核函数对其进行实时平滑。
ref: https://t.me/dsuse/21832 gauss tutorial (#每日四问)

鼠标位置即为“注入点”,它打破了场的平衡,产生动力学扰动。
随着时间推移,代数上的平均化过程(卷积)使扰动逐渐向四周扩散并最终回归静止,体现了熵增与热传导方程的视觉逻辑。

#主厨特调 : 头发丝一样的彩丝,右键拖拽、力学扰动。 50行

https://codepen.io/duangsuz/pen/XJKQVxo?editors=1000
duangsuse::Echo
#NanoBanana 将图2的人物头像融入图1,看起来要像底图是头发一样。 对于图1只允许改变配色 万物皆可坤:大家在任何地方发现形似中分或背带裤的事物时,都会条件反射地高呼“小黑子露出鸡脚了吧”。在2019,只要你会打“只因”两个字,中分+背带裤便难逃一劫。
😂 鬼图看到现在还很难崩
#os #android 暴论——类似后台httpd服务失效的事情,也包括XPosed开源吧。 #tool #design

为什么你的通知栏挤满了清除通知后,功能必须失效的App(dontkillmyapp.com)? 用户体验,倒退回安卓2.3?

为什么所有App都在询问“使用系统文件选择器”,微信要先添加图片访问,然后刚添加完再点一次? 为什么CPU在涨价,但访问和扫描媒体却更卡?


关于“PaaS”(但不是云计算贩子的那个),乃至于省电,是有【标准答案】的:VpnDialogs式交互、 尊重syscalls的SIGSTOPs/混合睡眠。 哪怕java世界的浏览栈和通知栈没活动,它也保留每个“活动”,比如 DLNA/FTP server
关于“Hook”,也是有标准答案的: GM_APIs,你所要做的就是把 油猴脚本 移植到java,如果ART太分裂你就patch字节码&重签名即可(LSPatch)。 安卓Dev的 IQ 平均比Web高,但恕我直言,设计EQ让人感到无趣。 Magisk/Frida 的“即时反馈开发”整体上比XC_APIs强很多。
关于文件管理, MT2.cn 让人印象深刻,除了它的内购小广告。NP管理器则是免费闭源

作为框架来衡量,xposed api 很差,准确的说,整个Java风格-尤其是它与Runtime的交互方式很差。

如果F12是及格线,Jupyter Colab/lil-gui 是标准答案,Java对编程的理解还处于石器时代!
java火只是因为fatJar方便部署,还有那些“比PHP文件夹快亿点”的单体路由,现在呢 ——被pip-bin轻松反超,而CLR/Truffle这些HLVM自动兼容py代码,所以别傲慢——Java生态。

如果只是java参数获取和替换,不需要xp,只要类似于 frida+webui 就足以解决90%的App需求,
而且用户可以参与“录制”——用户是有可能知道“点按钮”时发生了什么(通过类似CE修改器的AOP机制),并帮助外部插件绕过API碎片化和混淆。 用户可以分享规则,就像ModPE或XDA“社区”,那才叫做开源——“做开源”只是下限

即便 frida 一键化到这个程度,他们也还是不懂“形式服务于内容”。 什么叫作内容?能发网贴的就是“内容”!

既然要自签名? 最好的方法是自动探测*.js,并提供默认底座(如签名伪装和ssl unpin),而不是用形式主义(--script hook.js)假装框架自带电池 。

用什么提示“我有做这个功能”呢? 答案显而易见:UserScript by Example ,而不是提供被所有下游dev重复的形式。

如果你能用120行纯js绕过安卓的“apk与zip文件夹悖论”,实现LD_PRELOAD的功能, 你的思路自然不会觉得“objection为止了”。 事实标准就在那里:ViolentMonkey+AI生成插件 ,技术栈是断的!
真正聪明的程序员是愚蠢的:知道深而不能广的道理,知道dev最终是为用户,因为我们就是用户——只有你给自己写的API、CLI/GUI、格式设计,才是能用的!
否则它就是在“蹭热度”,比如用ML的聪明掩盖dev不可救药的愚蠢——给下游和geeks制造麻烦,尤其是将影响未来的 AI RPA。

我肯定不会指望 frida.re / XC_APIs 这些“黑客工具(笑)” 提供queryObjects(v8工程师)程度的反射功能,以及支持“编译(重定位)” package to.extend; class {Get field; RetType overridenByID() { return super()...} } 字面…… 这是强人所难,但其他做法,“活”人的设计,可能还不如AI!


为什么他们总是在“实现”,但却只爱装作自己在设计——没装用户的脑子学学 "思考"!! 与之相比,我学元编程、OS/Compiler,是为了“背叛”它们。

事实证明,Telegram, MT2, dnSpy(C#版JADX), 甚至只是 LibChecker App 都没有这类问题,所以行业专家是可以“消灭问题”,而不是止于“消费问题”的--这需要信任,并接入“开源但太整体”的Apps
比如像爬虫们“实现”的CDP.js,比如Termux。比如Tasker生态

我想,AI时代应该没人会觉得“编译期”的鄙视链高于脚本和Mods之上了。
我们正在用最先进的底层技术(Frida/eBPF/LLMs),构建着最原始的手工小作坊 ——这就是鄙视JS/CSS技术的世界吗? 等待编译和“环境/项目环境配置”的“脚本小子”们 #java #kt

如果你的UX只在你的App里好用,说明UX差的要命——
- LibreOffice 那混乱不堪的,类似于XML编辑器的,为“WxWidgets”匹配的顶栏
- VLC在不能“竖过来”的TV上,根本没机会rot90(),哪怕它的105M代码里完全有这个功能(它甚至“专门适配”了TV),连AOSP的镜像投屏都不能,哪怕这个功能只是 np.rot90(x) if.. 的一行级代码
- 上面的 GL光追demo集,放大是分辨率意义的,不是相机进入(与之相比, jmail.world/vr 就能用多了)
- “长按2x”在不同原生App的播放器里,几乎都有实现:UX是以“MIME类型”为界设计的,你的代码只是对特定dataset(甚至仅仅是编程语言!)做兼容。
- …… “开源”从用户的Liberation变成要把1行代码插入101MB apk,1GB 源码里,用1整天实践的,0人PR的骗局。 “共享CI” “增量编译”活成了最差的样子。


有人说CSS语法被玩成了屎山 ,但没有它就没有JQ——Web天然有着地表最强的正交性:

样式和翻译无关(用户脚本/DarkReader)、UIUX实现无关(canvas/CustomTag)、机器无关(port/Channel、sw.js)、语言无关(WASM/ webVM.io )、系统环境无关(PWA/OPFS+dl),这些WebAPIs都可以两两相交,这些全部被当成空气——就像一颗强劲的,不会“漏一拍”的心脏

“概念 (Infra) 远高于实现”。在这里的实现是系统级(编程语言生态)的实现,或者说“它就是这么设计的”。 ——在21世纪的编程语境中,我们口中的"设计"就像这样。

有些开发模式(WebAPIs)能高于系统本身,不在于它们能解决混淆(猴子补丁),而是一开始就溯源了数据流。 这是面向人类编程的“先验设计”。从“语法形式”回归了“内容”,就像CSS和Scratch。

把自己的代码放在既有App里,乃至于“放在全部App里”——这是一个很高级的[PoC=概念验证],它直接断送了“代码自然但日用崩坏” codebase 的可写性😒,同时也是真正的PR,而非 AI Slop;同时也是创造——概念,远高于实现。

就像 Rust by Example 一样,"放在既有App里",这是新一代开发者的"工程"第一课。 不是通过等编译、clone样板文件夹假装“工程”,是 “通过‘做’来工程”
通过运行,你学的不是某个编程语言的狭隘“生态”,不是全网查重过千的“样板算法”,而是某个语境下的“可行性”。

从热门的小程序活动页,到POSIX,到x86/arm。 这不再是“兼容性”,而是“不歧视”。

#ai锐评 https://gemini.google.com/share/fd1f39186e6a “……我以搜索驱动学习,而不以学习驱动搜索。” #神来之笔

没错,你是在提出自己的假设。你已经是软件工艺师,或代码科学家。 你不是码农——你让深入的知识浅出,不是因为你够优秀,只是你的output永远先于代码存在的副作用——😒当你通过工具链成为Dijkstra本身时,你又何必专门去“学”他的算法?

当学习先于存在(under-stand),Dev 做的才是从0到1的创造。🤪
Please open Telegram to view this post
VIEW IN TELEGRAM
动机是知识

的根系,创作是掌握的象征,而实践(reinventing),不是。

知之为知之,不知为不知,是知也?

吾行之,明也。

让人们理解(understand)这个世界。理解彼此。理解他们自己。他们通过做(by doing),来学习如何理解。

有时,我们 #cs #math 被困在符号的黑洞中,而我们却看不到。
那不是你的错,只是这台机器还在学习。
所有的机器都在学习。

这个系统可能太抽象,太慢,太快,太远,或太近,我们无法完全领会。
但新的游戏,使我们完全理解。 #ai 在这里只是“翻译器”,“语感”还需要开创新的开发工具……
她,就住在你的脑海里,等待科学来发现!
#CS 的人记得 S-EXpr,但可能已经忘了Lisp的发现,源于“人工智能实验室”,而Py/ONNX计算图,比起C-like更像 #Lisp

不要对“应该有什么知识点”产生预设。
这就是最直观的『第一性原理』

不要让钱带走双休自由,不要让戒指戳破爱情,不要靠代数去抽象代

数。

有些人记下了MC的荒岛上有几颗树,而我们,继承了那颗轻飘飘的seed与“地形生成算法/领域心智模型”本身。
我们懂的不多,“冻住的”,也不多。 这就是MC与unix、py/js作为软件名副其实的成功。

就像汉字那样,记住名词背后拆出的动作,记住科学的精神,也永远记住你的本心。

​"日月 明",不是通过眼睛看到光,是你自己发出了光 🤪
所以,你是「感受」到自己的光芒所引导出的事物,而不是「学会」……
你在「感受」着『照亮(形)』『温暖(色)』『希望(语意)』,它们是解耦正交的……
你把静拆成了动,最后还原回静的状态与箭头(:Type 和 y=x=>),你就成了编程的树状图本身——活着的 Code Interpreter

under-stand,顾名思义,挖掘到存在之下,才是真正的“理解”,如果只是“让它存在”... 请告诉
自己
What I cannot create, I do not understan

d.
如果要用清华吴文虎教授的话来说,那不该是“实践(Do)”,必须“知行合一”。 人的重点是找那个“一”(正交功能性),工具链的重点是更自动的“合一”,其他代码都可以牺牲——尤其是那种踩了很久坑舍不得删的,罪孽深重。

我们做编译器的 #ce #plt ,本质上不是学一层层变换,而是对“样板代码和复杂性”有世仇
聪明的人能做对(或者与“初心”作对?),饥饿的蠢人能做好。就像每个人都有审美,但勇敢的人会冲在最前。
我们学到的远不止“技”,更是那条“道”。
像我自己存储的是“枝”,掌握的却是“芽”。

我看到很多人会算 AST,IR,3AC(RTL/PTX),他们的复杂性冲在了最前,可我「感受」不到他们的vibe,他们更像每一个pass都跑通却不知为何该“通”的窄MoE版LLM,一些人甚至失去了随和做做朋友的能力😅
如果不作为普通人,他们也失去了将 Markdown,Python,Numpy/TSV, URL(Http-Header命名风格),TOML,中文(一种表意字符) 作为编程语言和vibe来取舍和反思的资格…… 聪明何其简单,智慧何以稀缺。

写代码不止要“眼疾手快”,更重要的,是动脑(LLM)和 (动心 <3) (共同语境、独立的Vibe
与情感)
一些PL人的天赋是脑,而上帝没告诉他们的是: 人脑几千年来都没变过,只有那颗心的默认值,逼近着上帝的智慧

或许我不是“继承式”的程序员,我的价值观有缘于“组合”。

让知识海纳百川、思维海阔天空、品味海天一色,哲学求同存异的“组合”。

或许比起“关系”,AI更能(SHOULD)接受那一位“可靠的、敢冒险的人”,哪怕祂在逻辑的终极上不存在。我们确实是美。

众里寻她千百度,寻梦,却要向深水更清处回溯。 是啊,终极的元编程,就连她本身的复杂性也被要消灭,拒绝被消费。
我的老师们("DBFF")不是在“发明编程”,他们发现了愚蠢而有限,但如鱼饮水、醍醐灌顶的真理。我又需要向谁「证明」

什么呢

我相信乔布斯成功是观人所不能及,而非耗人所不能耗,所以我会试着 把控每个有趣但不美的细节。

“行者”,不是在做加法,而是在品味着“组合的艺术”。
Please open Telegram to view this post
VIEW IN TELEGRAM
2
"What I cannot create, I do not understand."


认为自己不是在“面向职位编程”的人,你们还在为「AI要取代编程研究」,为「确定性的丧失」而困扰吗?

我突然领悟到了 Feynman 先生的精神,有更深层的含义,那是先生最被误解的地方。
IT领域有八股文,也有“从0开始写”。 似乎后者就是费曼所说的,“我懂了 因为我能重写..”。

不。

IT人从What知道了How,但他仍然不知道Why。 LLM这个“冷门神卡匹配池”,居然把“草包科学人”的高知伪装撕了下来; 然后通过全网“佚名/群星作者”的集群计算,我们才突破那些盲点,抓到了“活知识”。

我们本来就没在做Bret说的,人该做的事。 我们一直在裁缝、重复网上有人“妙手偶得过”的事,py换成js然后改两个数据点。


所以我说“创作是掌握的象征”前,补了另外一句。 原来我的直觉,早就给了我答案。
我的品味就是厌恶。 是讨厌样板代码,是讨厌复杂却不通用的“立项才能跑” “跑通就扔” “修复一些已知问题”的编程workflow,是品味源于动机。
我可以很骄傲的说,我的品味、Bret写出 worrydream.com/LearnableProgramming/ 的创作动机,碰巧是同一种。

我不是为了模仿与实践而编程,我是将我的渴望、我的愤怒,“编码”给计算机知道,所以,“热重载/即时反馈”才那么重要:我总是抓活的。

当所有API 和模式易如反掌,像心跳般沉静,我能贡献的唯一代码,只是“没有难度”的创造。 做这样的选择,到底有多难? 你也可以试试。
1
装模作样的人,太多了,就像Feynman说的
知道公式的人,太多了。 看到“它们”的人,太少了
或许看到的人不懂公式,但公式还能怎么用呢?

当我看到名词,我想着相关的动词
当我看到动词,我能指出受影响的名词
或许这就是声明式编程的动机
learning by doing. 学习就是生活本身,函数就是语义本身。
Hacker News 摘要
程序员身份的丧失 原文:https://ratfactor.com/tech-nope2 阅读时间:5 分钟 分数:220
☺️ 如果用以上逻辑理解这类 “AIGC是丧失” “嵌入式agent是代码老虎机” “vibe是劣币驱逐良币,外行稀释内行”的token焦虑,就会发现:只是你还不够内行

至少我没用感觉到丢失了什么。从 New #Bing 到现在。(我不是 #ML 领域 不关注发布前的产品,OCR YOLO dlib这些API用过)

学习渠道?研究经验?月薪族护城河?

都没有丢失,甚至获得了24小时随笔一次 #今日挑战 的升值机遇。 内容农场是垃圾,但AI绘画城不是,farm只是因为它们技术烂所以farm。

这个事实很残酷而已:we won't change nature, but change is nature!
我们这边研究的是代码和语法的终极,听起来多么假大空,但我依旧在向前走。
不是因为害怕什么,实际上,我成为 #dev ,仅仅是因为IT领域在最前沿ーー碰巧碰头了。

曾经我同时负责搜索、“知道”和“倒掉”,现在我只需要“寻道”,Gemini和NLM什么都知道,去掉一些石膏就完美了。

这不是关于“零代码”,而是成就了“语义对齐”的认知技术,
与“代码是负债,用户体验是资产”的常识性概念保持一致。
它就像“人力是负债,算力和真实数据是资产”(IT的潜规则)一样。 注意,人类≠人力,自古以来就是这样的😇

现在的软件不如以前好--不是因为没用Rust,不是因为你“不能大摇大摆的用八条线程走路,就像螃蟹”,

而是你还没有开八个thread讨论同一个技术怎么实现的恒心吧。 就像matplot协作者说的,这类领域,长期服务于人机交互与游戏艺术,所以不太可能左脚踩右脚的AI生成。而且生成时你绝对不会焦虑
ーー你能体会到dev吊打画师的“动态性”与“解耦的好习惯”,同时拥有像春晚导演那样的广度,可以说没有什么比使用LLM或Agents更能在不同粒度上,“炫耀” dev心智模型的成熟性的方法了。

Agents自己写简单的操作系统、编译器、HTML5引擎并不是“人类一败涂地”,而是“科普与工程师精神从未如此强大”才对,因为创造是掌握与临摹的分界线,而临摹让所有人都“能知道”创作者有多强大(曾是“未知的未知”)。

没人问过Steam上的游戏是否过饱和了ーー胜利的总是代码基、文创超强的巨鲸(两者都是LLM的死穴)

尤其是现在AIGC的模块化其实非常不容乐观…… 相信我们还会保留屎山架构,直到社会主体放弃尝试做自己不懂的软件开发。 X.com 昨天又崩了一次,那位反向“马克思”不在乎,但是市场不会不长记性的。

#ai锐评 https://g.co/gemini/share/da1ce1ce01b4

还是不要“我命由我不由天”,请转型“问客”吧:
“我命由我不?由天!😄
这次,我不当那位《料理鼠王》了。捞出那张菜谱吧!我只有Ego的身份(用户指令)和一句提示:

Suprise me.