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

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
Forwarded from yihong0618 和朋友们的频道 ()
阮一峰作为一个原创内容制作者,宣传怎么做内容农场,是不是不妥?
duangsuse::Echo
#life #statement 🌚终于知道为什么千里冰封、王垠会发疯了 我现在完全不认为他们是精致利己者。 软件工程界抛弃他们,B站无人在意他们, 他们又曾拒绝过哪位求知者呢? 同是沦落人,就不要装得纯粹无私了。 我在这里用触屏“为了分享感悟” “参与头脑风暴”,打的每一个字,查的每一个链接,都是浪费时间。 应该早点返乡拿电脑写点好玩的, 直到有天重演庸俗的『山顶见』。 怎么可能呢?我是说对原理出言不逊,却在应用成功后弯道超车的道理。 如果不是图你的市场大 简单来说,中文圈,尤其是崇尚存在即合理、Talk…
有人可能觉得,我这么杠是想显得自己很牛逼,或者多管闲事 #plt #statement

但如果我为了be nice,放弃对烂代码、生搬硬套的术语、八股文和样板代码的态度
对魔法师、“生产环境就必须复杂”的观念做个好好先生,只是帮魔法们去科普而不化简重构的话……
新生程序员怎么发挥他们的创想

凭什么老程序员提出的概念、技术、样板代码,能成为技术栈选型上的错误、带偏最初的设想?
其实,今天的前端dom-url参数转JSON-后端sql或kv
有那么难理解吗,但是要学的仍然一大堆。比如cookie,handle,也就是fd=open(File) 这类RPC对象号吧,这居然能成为一种知识点么? 只要视野放的足够广,许多50行说不明白的“新技术”,都只不过是旧思想糅杂了奇技淫巧 。

我不喜欢这样,这撕裂显然是利好libs API维护者,但对用户们毫无意义。是可以统一、省略,专心为业务服务的复杂性。


我曾被 @程序员鱼皮 和 @drakeet(当然是怪我 #reveng 他的app了) 两个技术人拉黑
都是因为说了类似「后生可畏,有些人的100行代码比七八百行更管用」,今天也一样。

这就是客观存在的事实。比如 VanJs.org 用300行实现reactive,许多人还跟在miniVue后面买课还学不会呢。
用更好理解的: 《算法 in C++》 是否符合我上面说的100行代码(而不是“1万小时定律”)原理呢?
更别说 https://github.com/duangsuse-valid-projects/tkgui 的拿数据打脸了,这在元编程(比各种算法更加通用) 里,简直就是常识。

这并不是nice与否,而是对谁nice

我倾向于对未来nice,因为那才能进步。
并非不择手段,但我下决心要前进
👍1
Forwarded from dnaugsuz
🌚 刚才想了想,确实无关于ktx的Encoder APIs #oop #statement

我只是有点感叹,学那么久JVM/C# 的“安全的”托管代码,业界最终还是没解决var binding的问题。

有大牛说,计算机科学里最大的两个problem是命名和缓存失效(React里的memo, poll轮询和Svelte里的push就是典型的缓存刷新范式),深以为然

实际上,C的 堆/栈/指针 范式的问题,也从未被OOP消灭过,就连data class也只局限于语法糖,而没有俯视“数据类型”这个整体

fun2class即 栈-堆 的绑定(协程、CLI、RPC解析的最优解)? 不存在
class2KV即 堆-RPC形式如txt(0拷贝和序列化的基石) ?要配环境

许多人痛斥C的 int* 和Rc对象树,却对JS的 new Signal.State(0) 疯狂打星
所有人并不知道,如果把 heap/ref 值真正统一建模,gradle minify, js tree-shrink 只是对文档树进行GC

C里用mmap设置下list[len],obj.type 就能“读写”的数据, 因为只顾自己的一亩三分地,许多人根本认识不到: Reader/Writer 的本质只是把流的i32,i64 从栈复制到堆上,再回到栈上,即 this.x=read(); ..

其实,“程序结构与数据结构直观对应”有多重要?
从你编译程序开始,到任何数据..或代码被跨端复制- 甚至仅从JS复制到XML/html,都存在这类的样板代码。
然后,便有一堆良莠不齐的框架跳出来帮你“提高写码效率”,顺带兜售自己造成的一大堆问题和“知识点”。

他们甚至不知道,堆/栈/指针值、单线CPU多异步任务,这就是50年前困扰C的问题。

但能杀灭这些问题的算法呢?“解释器”的降级版,DSL,能设计好的人都很少
编译器学生,例如ANTLR的吧,沉迷于用状态机重造x86调用栈的轮子
函数式er 并不重视程序的语意、实际应用需求,只是痴迷于链表、深拷贝、abstract nonsense,和从Prolog偷来的模式匹配。

发展了70年,除却类型冗余不统一,就连IO都做不好。
man, what can I say?😔
duangsuse::Echo
🌝 #acg #bilibili https://b23.tv/ep829431 云天明和圣母的故事, 限时免费
#acg #bilibili 三体:程心 #谈政事

他们说你是圣母、是死神。你的两次抉择都以人性化为名,却都把全人类推向地狱。 但你知道吗?你不是维德那样敢固执己见的疯子。谁主张谁负责,你拒绝了必要之恶,因为民粹反智者拒绝了光速飞船,是大家必须为这个选择负责。
维德是个合格的领导者,与被强行降智的其他人相比。在其他小说里他更像谜语人,但,这是出于行业的素质,直到崩溃前都要戴着面具,承受压力。你与维德的差异,在于他(它)只忠于人类,愿意把棍母卖给妓院,你却要向一个一个蠢人负责。 如果多数人的决策是鲁莽的,那只能是时代的悲哀。
你的『阶梯计划』为广播后与云天明的童话故事,做了铺垫。这说明,圣母在专业性和责任心上这种长远事业上是一种加成,只是对电车难题就不好办了
“歌者”不需要是具体的文明,在三体宇宙,所有文明都是这样野蛮扩张的。非我族类,其心必异,而这种极右的纳粹战法,也理所当然把『田园时代』的11维无限光速的宇宙给干成了今天的双输局面

《三体》通过降智全人类的方法塑造了很多英雄豪杰,面壁者逻辑、破光者维德、谜语人章北海,甚至是讲故事的云天明。 你的闺蜜艾AA在协调和变通上或许都做得比你好,因为她会看人。但尽管如此,你选的道路是科学的,只是与你作对的是全人类、以及你毫不怜悯的三体恶劣环境
既然你选择了维德,并且相信他会用最科学的方法减少伤亡,就不要再设限了。他的职业虽然手段坏,但很重视忠诚,盲目插手无异于外行指导内行
维德并不是真的沉溺于把棍母卖给妓院,也是出于相同的责任感,这一点从最后他完全自暴自弃可以看出。 他是真的想向你证明,无论信守承诺、和平守旧、还是反抗多数人的暴政,都是个体可以表现的美德,并没有高低对错,这才无关于其他人下场如何。
就像在『阶梯计划』,你并不是没有认识到光速飞船事关存亡,而矛盾不可调和时,你却保护了极左翼反智民粹;这并不是以人为本,因为在右翼价值观里,用生命胁迫别人放弃自由是一种可耻的绑架,而这也会害的双方都失去自由乃至同归于尽。人性的高贵之处,恰恰在于有比生命更珍贵的信仰。 光速飞船就是这么一种。
👎1
Forwarded from 层叠 - The Cascading
《国家网络身份认证公共服务管理办法(征求意见稿)》公开征求意见至 8/25。

草案提到:
- 自然人可向「公共服务」申领「网号」、「网证」。网号不含明文身份信息。
- 鼓励互联网平台自愿接入「公共服务」,支持用户使用网号/网证进行身份信息登记。
- 法规规定互联网平台需留存用户身份证件信息的, 「公共服务平台」应按最小化原则提供。

www.cac.gov.cn/~

#China #Privacy
👎1
duangsuse::Echo
duangsuse: #kt #book 元编程 http://www.bilibili.com/video/BV1XH4y1w7mT https://drive.bennyhuo.com/zh-CN/talks/2018.11.17-%E4%BC%98%E9%9B%85%E5%9C%B0%E4%BD%BF%E7%94%A8%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B_final.pdf https://weread.qq.com/web/reader/f7632a00…
#kt #元编程 嗯。。我有个点子,有没有懂ktx序列化的人批判一下😊

基于Visitor实现json/toml.. 的读写,data class 只提供零参构造和 KVlit.see(instance,"field",jsonVisiter)接口

数据类的KVlit,就是给dict支持了个拆箱赋值,结合零构造和field Visitor自然而然就实现了序列化
设计CLI解析器时想出来的,就挺像xmlpull

const N=Double
data Num2(x:N,y:N)

interface KVlit {
fit(o:Any?, k:StrInt, v:LitSeer)
companion 注册表: IType<KVlit>
}
next=File(..).jsonLits

typeof<Num2>
(KVlit).fit object:LitSeer {
see(x:N):N =next.Float
//我们要read,所以忽略旧x
see(o:Any?, T:KVlit) = skip'{', T.fit(o, next.Str, this).. defaults(o);return o
see(o:Any?) //null模仿动态类型、Any.kvlit.testy 不为空

//BDFL optimize (Boxed ints, Date/Decimal/UUID, float[]s, List Map<,Any>
o.(Integer x)仍调用int返回的重载; int[]在长度不变时返回自身

see(o:MutKV<*,*>, K:Class,T:KVlit?) //传入Class.INT等常量即可
see(pair:Any?, T:Class, vararg Ts:KVlit?).. //可通过实现 typeof<Pair>(f2Any)转接list,base64
}

这是读取,写入的话接口一样是
x=fit(jsonStream,x) 。如果 T.seal? 字典不为空,就先读个'type'键 然后同上。 期间 T.setLit Bitset用于检测是否需赋默认值

扩展的话,直接 override Visitor 的最后一个函数! 数据、格式、模块,完全解耦

codegen上就是一个大when{}的语句字典
然后对diff update(亦可DeepCopy)
以及CSV(KVlit能实现.eachIndex)很友好,这点是我最满意的

想支持ClassFile等binfmt,除了重写list,sealed编码还要支持 UInt,bitstruct,Magic012,CPool<> 等类型,但比从头开始好

实现上, T.fit(o,key,this) 应外提为线程局部 T.fit(o,key,)KVlit.seer
T.fit(map,T,)KVlit.mapK
应支持创建iterList.setEach{}随访问更新流
Forwarded from dnaugsuz
https://t.me/hyi0618/3476?comment=1182

突然想吐槽一句🌝
我要是尊重业界这群自以为专业,动辄几十k代码堆砌出「劳动成果」的魔法师
尊重这些搞笑的过度工程、这些空有篇幅,而无功能点的大class

谁去尊重那些不断被强制更新,软件体积耗电量不断翻倍,功能却越来越卡、慢的用户?
谁去为新程序员踩的坑熬的夜买单?
谁去为谦卑的Pythonic、和WebAPIs的正确道路添砖加瓦?

> 你会买百公里耗油100升,甚至1000升的汽车吗?在软件行业,业界一直这么做。
> “你需要拼命地奔跑,才能保持呆在原地”。小白用户换上新设备,只是为了运行变得越来越慢的Apps吗?
> Windows 10大小是4GB,是w95的133倍大。Windows 10的特效比95高级133倍吗?难道区区安卓,比这4GB,还复杂1.5倍?
Windows 10需要花费30分钟来更新系统。什么算法需要这么长的时间呢?30分钟都够抹除一块SSD硬盘

为什么你没有想过,你的智能手机需要30到60秒的时间来启动。它在等什么,为何不能在10秒内至少初次绘制桌面,就像大部分二十年前的MP4播放器?
> 3年前,16GB手机能良好运行使用,但是到了近些年,靠16GB存储膨胀两倍的安卓8.1,都没有选择游戏和"微"信的余地
8.1,并没有带来了不起的新算力和新功能,只是不断“修正”“补丁”程序员们自己的毛病,系统就这么膨胀了?
https://t.me/dsuse/19346
dnaugsuz
https://t.me/hyi0618/3476?comment=1182 突然想吐槽一句🌝 我要是尊重业界这群自以为专业,动辄几十k代码堆砌出「劳动成果」的魔法师 尊重这些搞笑的过度工程、这些空有篇幅,而无功能点的大class 谁去尊重那些不断被强制更新,软件体积耗电量不断翻倍,功能却越来越卡、慢的用户? 谁去为新程序员踩的坑熬的夜买单? 谁去为谦卑的Pythonic、和WebAPIs的正确道路添砖加瓦? > 你会买百公里耗油100升,甚至1000升的汽车吗?在软件行业,业界一直这么做。 > …
#statement os #design
程序员为了教条规范放弃常识,就是最大的形式主义。

幸亏我学了元编程,不必被那些文字游戏所蒙蔽,可以有自己的心智模型。
只要穷举了「设计模式」们的Reason,就能跳过所有空洞的抽象,稍加设计,代码结构才能直观反映用户的视角。
如果,我没有遇见Prolog(https://tomstu.art/hello-declarative-world)和numpy、没有对C ABI和lisp的认识、不会写解释器和DSL,不能将协程/Reactive/OOP等“新框架”与C语言的旧需求对比着看,我肯定要被业界不沾边的教条主义牵着走。

“优雅的程序与它读写的数据,在结构上直观对应——Daniel Friedman”
从前后端到终端,从红黑树到递归和DP.. 有哪种代码不需要拆分业务逻辑、计算各色的数据?无非是晦涩或明确、重复或简洁、充满机翻感或编程如写诗。

富有语意的代码,“免费”的序列化与各种绑定..注入..的魔法,在lisp的时代就已经初具雏形。
别忘了对象树与GC、靠lambda隐藏部分参数的这个概念,就是他们的首创。 Javaer设计了那么多模式,很少有Visitor,ProxyDelegate 这样能跨语言保持一致的东西;然而60年前的函数式操作符,所有主流语言里竟然都是一个样!
部分程序员弄出来的私货,终究是暂时的闪烁,只有纯粹为语意服务的 functionals ,才能成为永久的光明。

React之流的各类“榜一”,对前人的工作有尊重吗?不幸地,沉溺于重造webkit等上游的轮子的他们,不屑于接受软件工艺的点化。

幸亏我遇到了先贤们的示例代码和优雅范式,他们对技术「自顶向下」的reasoning,才是真正与读者的平等交流,让大家能「早点休息」
而不是把对方视为copycat或翻译AI。
可怕的不是草台班子,而是你依赖的草台班子,抄袭魔改了另一堆草台班子……

如果一个人话都说不利索,讲概念难以简明扼要、一语中的,凭什么他靠写“新语言”的代码就能突破? 封问题,一定是消而不灭,照猫画虎尔,搞出更多让人头疼的坑。所以要兜售“永续学习论”“知识价值”咯..
其实,就是库的设计者一代不如一代。说是你不聪明不正经,那是在逃避编程语言的天职。

C诞生50年了,它所能实现的预处理期计算、单函数读写结构、栈参数和this变量的同构、
os级协程、将bytes重解释为"Proxy对象"如结构体的变量绑定,依然是后继寥寥, 更别说ndarray、正反函数、跨语言调用对象的这类常理化接口了,在编程界基本不存在!

Can programming be liberated from C-like OOP style? 😒 How long will it take?
https://tonsky.me/blog/centering/ #css ...
#life #music
https://github.com/jaakkopasanen/Impulcifer :构建定制化 BRIR (binaural room impulse response) 的工具,只要拥有一只扬声器、一对入耳麦克风,一副头戴式耳机,就能够测量房间专属的双耳冲激响应 (impulse response, 或称脉冲反馈)

Rachel 碎碎念:
入耳麦克风 be like
找了半天淘宝都找不到…

子安:
【淘宝】9$iibT32NWIdn$:// ZH9102 「Mu6入耳式双声道ASMR耳机vlog麦克风人头3D全景超立体声录音设备」
点击链接直接打开 或者 淘宝搜索直接打开

搜到个300块的(

duangsuse:
那不就是两个普通usb麦克风吗
只是为了测量房间回响,没必要专门搞入耳麦克风吧

麦克风模块很小的,把壳去了拿纳米胶贴上

Rachel 碎碎念:
关键不是房间回响,是你的双耳在房间中听到的回响

的确可以用两个小麦克风解决,位置一定要能固定好并且可以映射到双声道麦克风就行
duangsuse::Echo pinned «https://t.me/hyi0618/3476?comment=1182 突然想吐槽一句🌝 我要是尊重业界这群自以为专业,动辄几十k代码堆砌出「劳动成果」的魔法师 尊重这些搞笑的过度工程、这些空有篇幅,而无功能点的大class 谁去尊重那些不断被强制更新,软件体积耗电量不断翻倍,功能却越来越卡、慢的用户? 谁去为新程序员踩的坑熬的夜买单? 谁去为谦卑的Pythonic、和WebAPIs的正确道路添砖加瓦? > 你会买百公里耗油100升,甚至1000升的汽车吗?在软件行业,业界一直这么做。 > …»
duangsuse::Echo
#kt #元编程 嗯。。我有个点子,有没有懂ktx序列化的人批判一下😊 基于Visitor实现json/toml.. 的读写,data class 只提供零参构造和 KVlit.see(instance,"field",jsonVisiter)接口 数据类的KVlit,就是给dict支持了个拆箱赋值,结合零构造和field Visitor自然而然就实现了序列化 设计CLI解析器时想出来的,就挺像xmlpull const N=Double data Num2(x:N,y:N) interface KVlit…
https://tech.codelc.com/docs/thinking/quotes.html #statement

除非明确地使其沉默,错误永远不应该默默地溜走。——import this
malloc()不该沉默,因为内存可能满了,write()不该沉默,因为磁盘随时能被拔出;在java里,它们都需要一大堆 throws以及catch,复制粘贴的那种。
未定义行为,并不代表操作系统、编译器和框架不会替你善后。问题只是需要时怎么改

代码胜于雄辩。——林纳斯•托瓦兹
什么语言的代码?老冯的x86?
编程语言是我的母语。我的表述比C的结构体和流水账更“结构化”。
最深奥的代码,是写出来前就能在头脑里运行的那种。

世界上只有两类编程语言:人们都抱怨的语言和从来没有人使用的语言。——大牛
世界上只有两类编程语言:发明解决方法以为编程游戏助兴的玩具语言,和抄袭玩具以获取红利的java等语言

😊此外还有我没法反驳的
好的代码自己本身就是最好的文档。
修复 bug 很容易,但是定位 bug 却很困难。

用代码行数来衡量编程的进度,就如同用航空器零件的重量来衡量航空飞机的制造进度一样。

假如让最初90%的代码消耗90%的开发时间,剩下10%的代码会需要另外 90%的除错时间。

世界上有两个设计软件的方法,一种简洁大方,明确没堆砌出缺陷,一种冗长繁琐,连缺陷都难以明确。
Forwarded from 螺莉莉的黑板报
超迷你 JavaScript 库列表:

http://microjs.com/
Forwarded from yihong0618 和朋友们的频道 ()
胡锡进被封号了😄(朋友提醒是禁言,号还在)
1
https://m.youtube.com/watch?v=7cbF5v7ar2E&t=6m #news #谈政史 坐在金山上的乞丐
明明能靠天赐石油“剥削”全人类,却连炼油技工都润出国的《委内瑞拉》
外资内知持续叛逃中

——为啥清廉的左派皇帝,比把女人当家具的宗教国家沙特,还不会搞经济?

17:00 😊但不希望中国的未来也是这样,亡羊补牢为时已晚?
可,“委内瑞拉還有反對黨可以選,中國只有,"沒有,沒有,沒有,通過!"
地大物博>>帝大勿駁”

https://m.youtube.com/watch?v=iWyn1B177sQ https://m.youtube.com/watch?v=UY-TJe7gRn8&t=497s 借着方脸提供的历史背景,我们能明白『共产主义』是这样一种思想:

血统对立、反向拜金:穷人翻身做皇帝,人越有钱心越黑;不讲证据,不谈社会契约和监督权上人人平等,禁止道德和人性
对内瓜分'资本家和精英'解决民怨,至于以后谁创业。。

“吃人”换来高福利:共走别人的家产,来提高自己和红孩儿的福利。
以前卖货的叫资本家,现在卖地的叫「无产者」,似曾相识燕归来嘛!
对同志,强调8小时工作制和双休等小资情节,美其名曰shzy处生阶段;对人民,强调劳动价值论:不干活就没饭吃。 一个共产,各自解释!

🐴先知指明的方向下,
零元购血统纯正、靠“吃人”发福利的乌托邦诞生。 这🐴车车夫的体质还非常适合加速:它不需要系安全带!
不必面见选民,就能为民做主——这种人还称不上民主吗?
😂人民连市府大门都进不去,能卖啥国”

即便,马列依旧保留了垄断、赢家通吃,依旧是损不足以补有余的金式王朝!😋
Forwarded from yihong0618 和朋友们的频道 ()
前端之虎还是挺牛逼的,整个网页读完。
https://me.yicode.tech/
Forwarded from Lancern's Treasure Chest
https://www.figma.com/design/xQ3FvM4GmjgNsmQJqP7uvK/LLVM.org-proposed-design?node-id=322-1515&t=ZKh43c6QIFyTrzMO-11

今年 LLVM 社区的其中一个 GSoC 项目是重新设计 LLVM 主页,这是目前新 UI 的设计稿,这下好看起来了
上汽大通已将该微博删除。

#新闻学魅力时刻