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

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
dnaugsuz
如果你真的想开始干,4天内我们写自己领域入门级的教程,然后看怎么改吧? 😒 千里之行始于足下
明晚7点就是验收日了,我把一小段稿子贴这:

对动苏,无论如何计划好的文章会码完的。我本来就计划写 Java 入门,如果能乘上这次机会,或许会有不一样的收获。虽然人少但回形针前端也是非常靠谱的

<[^编程]是什么,许多大学毕业生也无法回答这个问题。许多人认为程序就是代码、Java代码、C代码,编程=写代码=“编码”,没有意识到 __代码背后的「目标领域」及其上「概念」__,其实,编程是从基础API(如List,int,..)用语言的定义结构(如变量,函数,类)和控制结构,实现自己的应用领域(Android,Web后端,.)意义的目的。
<因为校外的大家基本是从阅读片面的实例入门,__看不到『编程语言』对程序起的作用__,只有“我这改一点,运行后这里变化,那这些代码是干啥”的模糊语感。 真相未必复杂
<随着代码历史的增加,你们对这点理解会越来越深。 现在你们眼里程序只是段顺序执行的流程,或许觉得class 和那些函数很奇怪,我明白; 或许你也觉得标准库API是特殊的
<比如,许多人认为 C printf("%d",1) 的不定长参数(vararg)是语法、C++ 的 cout<<""<<endl;template<typename T> 是不可改写的,乃至 int ret=1;/**/ return ret; 类可以说有文科『语病』的代码都不知 应明确涵义——其实都是因为我们对语言从未真正了解,只会机械堆砌

<画布上“悬停”的画笔<a l>、矢量图-SVG绘制路径 path</a>移动,就像刚爬上沙滩海龟的尾迹。通过(单位=步长或角度)“前进3;右转90度;前进9” 在面向正右侧时可画一个“”形,我们称其海龟。并且因为编程结果较直观,是外国 __少儿编程的入门语言__!我最初认识编程就是通过 MIT(麻省理工) 大学的 Scratch.mit.edu ,当然也有更复杂的的 BYOB/Blockly/Arduino Blocks 。
>哇,老师是从MIT的东西入门!一定很厉害吧!
<儿童教育不应是为「厉害」而生……更多是在激发兴趣 求知欲<a l=2> 不是求职欲</a>。其实MIT在做和我一样的事——科普。 许多人觉得大学只有知名和普通,其实它们也是负有社会责任、擅长领域/方向的研究机构,许多原理性的发明创造都是从大学文化圈延伸出来的,并非只颁发毕业证书
>B可为什么中国的知名大学没有类似产品呢?
<这也正是格兰达大学在思考的问题。努力学习,你<a l>可以平凡,但</a>也可以为科学出一份力。

我见过最好的科普文都是含有对话的。 The Little Schemer 的作者通篇设计与读者的对话来教学、 Ruby元编程 设计了虚构的同事,读起来就像小说一样不令人感到压力,并且示例、图文 一应俱全
格兰达大学的稿件也会努力模范这种技巧——其实它对影响表达的效率是有好作用的,例如:

L是一个能求值四则算式的工具,把 "n/0" 交给它会抛出除0异常,而 "n/0.0" 则会得到 Infinity

>我想学做一个能算+-*/的工具。牧羊犬,你打过算盘吗?
>B计算机院不学从两边2x5,5x1拨珠到中轴计数或筹算“三下五除二”右退位,问号羊
<那是因为计算机现在有好用的运算系统了。它也有更完善的规则,比如 n/0 和浮点 n/0D
>除0异常和无穷大?这不严谨啊
>B你也没法在1和2间找到一个int啊,不一样的
#js #code http 中间件 ,?
app.use(route.all(test+'/*', proxy(qq, pipe('url',url.parse, u=>u.path.reaplce(test,'')) ))
app.use(route.put('/user/my/password', {
await checkSession(uid,session); changePass(request.body.old,new); status=204
} catch(e) {endProc(e.code,e.msg)})

app.use(Router().routes() allowed).listen()


>不要用 if(q)await next(); else {} 的“递归”处理链,很糟糕
<那么 this.f().f1(); 本质上不是 f1(f(this)) 的“递归”喽
>其实呢,next=()=>{proc[i++](next)} 固定就可以了
<还是 ctx.abort() / _stop=$Y 然后用真的队列更好,像事件截获
duangsuse::Echo
明晚7点就是验收日了,我把一小段稿子贴这: 对动苏,无论如何计划好的文章会码完的。我本来就计划写 Java 入门,如果能乘上这次机会,或许会有不一样的收获。虽然人少但回形针前端也是非常靠谱的 <[^编程]是什么,许多大学毕业生也无法回答这个问题。许多人认为程序就是代码、Java代码、C代码,编程=写代码=“编码”,没有意识到 __代码背后的「目标领域」及其上「概念」__,其实,编程是从基础API(如List,int,..)用语言的定义结构(如变量,函数,类)和控制结构,实现自己的应用领域(Android…
奇怪的内容增加了…… 写在尾声里 #china #huawei #Android 😂

>不能作为工作,为啥还要干呢?
<不能作为 job,work 意义的工作,但可以作为 career ,和找工作是不冲突的。 Linus Torvalds 就是在MIT开源他的代码后得到社区的帮助和新功能,从而把 Linux 做到华为都摆脱不了的流行度

>华为的技术都是原创的,鸿蒙操作系统完全技术自主,摆脱了 Google 的技术垄断、打脸了邪恶资本主义
<没有人的技术是100%原创的,但每个小论坛的权限都能100%自主。我可以一边用小A的开源代码和软件包/框架格式一边在娱乐平台宣称全我掌控,这不违反软件著作权。开源社区没有垄断一词,你们也没见过硅谷的真 Google 和AOSP,百度很强,也不够对标那个Google。这是陈述句。

>华为有几百个数学和物理博士、天才,夜以继日在研究各种新硬件和5G+
>B要是用那么多天才就能成功就好了。只可惜天妒英才,不肯把更天才的天才降下来改善大家的生活、解决领域无解的问题、分担大家的责任、治疗癌症或狂犬病,所以你才必须来这里学编程,而不是由天才做游戏发Steam玩着玩着就啥啥都懂了,对吗?
<英雄不总是博士和天才,也可以是挺身而出的普通人。
>中国需要华为!老师,我听他们说的
<中国更需要强大。而强大不会永远停在某处,靠风口无法定义真理,实践才能。 百度echarts、阿里飞天/OceanBase、都是称得上中国智造的平台工具。

>屁股决定脑袋,老师,我质疑你人民立场不正,是为西方资本主义说话!
>B老师,问号羊这也是代人提问:我们做科普的,没有正确的价值观和正能量,知识多了也会害人吧?
<若立场决定真理,中西间的学术 只是疯话场,只要骂死你就我对__。 现代技术是工具、是进步文化,不要默认人讲话是邪恶的、不要戴着傲慢的眼镜看别人,看他一个完整历史。 觉被轻视者也瞧不起自己,__拒绝交流就敌对,恰恰是最傲慢的
<我们就是人民。而我更是计算机爱好者,我在做我为国该做的正能量。 无解不可怕、一叶障目失去未来才要命。
<我不想作过多解释,只劝大家对党同伐异的“锤人”多长个眼,精挑细选的伪事实比谎言、伪科学更可怕。科学话题的全面性,需要大家的保护。
Forwarded from 心惊报 ()
请问下,这种想把get方法隐藏的功能怎么写呢? #kotlin

Rin:
@Deprecated("Hidden", level = Level.Hidden)
get() = ...

那大概是没办法了,或者多写一个_onCardClickListener

{หऽ∮ಭ》优妮:
直接 get() { throw xxxx}
我大致看了一下回形针粉丝文稿归档,觉得它文案确实没有回答一些好奇问题,而且在这上百期里出了些知识差错,但作为「硬科普」已经够了——好好看看现在你能在各种tv、科学杂志上,回形针的文稿其实是不比它们差的

科普≠设计手册,一些有专人士的脑没专业人士的责任感的人就搞不懂这个。许多误差回形针也知道但不可能绝对严谨。严谨不是“硬”科普唯一的标杆,首先要有传播价值,同时也要尽量准确。

https://paperclip.wiki/Vol.112/

就讲了区块链、虚拟货币需要分布式可信账本,靠算力挖矿证明价值,是因为矿池上首先算出来、长度最大的人有权记账,然后是下一区块,无穷无尽,

https://paperclip.wiki/Vol.072/
解释了机械/固态硬盘通过磁头/晶体管-电子保留状态的原理
不过最后它没有解释为什么“固态硬盘断电1年数据丢失”,而U盘不会。

当然啦,同样基于颗粒,类型也是不一样的。RAM就分DRAM和SRAM,前者需定时刷新才能保证不丢失,后者性能更好,但面积存储效率太低了
回形针也没科普BIOS时代 CHS和LBA 的地址问题

https://paperclip.wiki/Vol.120/ 用很长的篇幅解释了 #cv #cg 二维码的编码原理,这个程度和知名度,比 #zhihu 的许多人都值得钦佩了
duangsuse::Echo
关于这个我说点想法,就比如上图复杂的印花是以6边形旋转而成,在定义『矩形』和『正方形』getArea() 后我简单定义父类『龟』来在Graphics上绘制它,阐述类的封装和多态抽象性(area 正方形= sqrt(4w), 矩=s sqrt(ww+hh) ), 通过点1次 画N边形() 引入子程序调用和成员继承 ,在下节『列表处理』我会回顾这节的矩形:xy累加调用,getArea() ,顺便引入队列 从小到大 逐个绘制 环境配置是 VSCode redhat.java 。 教学目标是理解判断/重复流控、for和while…
>苏,最近的项目需要一个认真的UI了,你打算学Vue还是React?隔壁 Nbnhhsh 划词小脚本都是vue2呢
谁也不学,我就用DOM元素树。我不写XML或它的“改良”。
>就是jQuery喽?还是TypeScript underscore lodash 啥的,可那样要手动生成<ul>啊
事件 el.div("Says",wA({C:"list cont"}), ops=wOp("a","!d",{click(e) {alert(e.text)} }), "child"); time.set(5,ops.drop)
我用 el.bind(a=[1,2], el.ul(), x=>el.i("num":,i) ) 自动生成<li>在a更新时更新的列表;靠 a.make(it=>it.filter(x=>x<10) ) 过滤显示。
>那么单页应用Router总要用吧?虽然只是点链接渲染个视图
PJAX就够了。`history` 在 body a click 时直接 pushState((k||i++).also{st[it]=body[iMain].replaceWith(rtab[k="/blog"]) },"#/blog")`,onpopstate 时 `body[iMain]=st[data] 。当然未注册的路径就不能退出重进了,需RegExp参数
这类保存封送必须可序列化,如 Error 就不行
我用 navit`/user/${Num}${i=>el.}${i=>summary}` 支持视图栈。
非主动load 时只渲染预览+ahref,否则把参数(如文章ID)用来生成<main>内容。链接皆是 /blog/:uid/:id 的完整格式。由历史栈记录返回位置
>不会影响PWA和 ServiceWorker 缓存吧
不会。就是俩json性质的套版
>fetch呢Promise呢Babel呢
咱不考虑,默认都有
>a内某位置有项移除,后面的元素要更新吧
不需要。`Array` 和 NodeList 操作相同,比如 a.splice(i,1)=`e.children[i].remove()`;我甚至不必缓存什么Node
>性能有问题吧
JS Proxy可以给{}添加求差异的能力。[]是有优化的。el.bind 会使新创建节点e绑定到 o[k], a[i] 位置,由bind([]) 维护 refs[no].i 相等和 push(o={}) 初始化的写法
>那为什么要有 virtual DOM 和 DOM diff 呢,你不写?
能用为啥要改呢,我既不需要跨出Webkit也没有从整个树的角度diff,只是监听数组和{}改写,把Object-Element/text同步而已。若我不想求 a.make(transform) 的最小编辑序列,可以全量更新。这次就是如此,赋值list不比重render香?
再者,我也不需要把编辑做成队列或dom2canvas,乃至 undo stack,直接在DOM树修改 浏览器自然知道有啥要重绘
>厉害的算法为啥不用
我就想做完这个洗洗睡,要研究diff去学编辑距离不直接吗,为啥要借着NodeList来讨论呢
>那简单的emmet解析和Bezier速率JS动画会用吗
太复杂了。其实主要问题是博文工具、文本处理,页面上没几个模板,引入css2htm太麻烦,其实ES6简化力已经够了
比如说,`e.attr.ref.wtf.pop() 和 `e.toggle("cls") 这样的就用不到; bind({q:$Y,v:10},body, x=>el.p(wA({hidden:x.ref.q, Cbig:Eqv.pipe(x.ref.v, v=>v>10) }), x.ref.v) ) 够了
>Eqv 是什么
Equiv即等效,由 from+ into(可报错) 正逆函数构成。 input[value] 有显示+1这样的处理又要编辑,或者两个元素val关联,代码不必写两份
>基本操作的官网能做吗
排除简单hover和scroll逻辑外,加载gif、鼠标跟随动画、wx风格会话框、带表情输入都做得到,分页和PV计数也不需特例代码
Forwarded from 螺莉莉的黑板报
你们阿里云为啥改个 DNS 都要验证手机号……
还有 gcc -save-temps ... 我一般只会 -S 或objdump. inline教学难道不是过程重要而是策略性重要 #ce
Forwarded from Phonograph (Ralph 萌新喵)
好起来了
Forwarded from Phonograph (Ralph 萌新喵)
绕口令:
explicitly defaulted default constructor is implicitly deleted
default constructor is explicitly defaulted but implicitly deleted
#cplusplus #sql join 是按AB共同键的相等性过滤。中间三角是交、并、并-交
总之 join B on A.k=B.k 左交就是A+B查询,加 where B.key=NULL(仅选B没有的部分) 就是 A-B
所以L/R/inner/fullouter join 的复杂度是 O(nn)这种 for(a)for(b)

此外SQL 还有GROUP BY HAVING(=where)
Forwarded from Phonograph (Ralph 萌新喵)
一张图解释 SQL JOIN
草,一周MIPS虚拟机UI..
Forwarded from Phonograph (Ralph 萌新喵)
这是一周要完成的作业???
这老师果然sb
https://chalaoshi.24dt.cn/t/1665/
真是服了,这些设计师是要调色Atom多少门编程语言的高亮,做个配色圆角风格加上面板就能开始收钱 #design
Forwarded from Phonograph (Ralph 萌新喵)
哈哈
卸载。
Forwarded from Phonograph (Ralph 萌新喵)
不知道是不是冷知识:
今天在看 SMTP,发现电子邮件里的 “抄送 cc”,cc 是 carbon copy (复写副本)的缩写。
配图展示了传统意义上的复写副本。

图源:https://en.wikipedia.org/wiki/Carbon_copy#/media/File:Karbonkopia_2008.jpg
#db 啊woc,数据库居然比svg还独立