Forwarded from 层叠 - The Cascading
「纯纯写作」的开发者 Drakeet 决定将分享平台从 Telegram 移动到知识星球。相关公告中也提出了 Telegram 频道不适合此种分享的几个理由。
说得挺对的。Telegram 频道确实对评论也不是很友好。在分享这件事上,也不能指望它能和知识星球这样的专门平台一样好。
原文:https://t.me/drakeets/1605
说得挺对的。Telegram 频道确实对评论也不是很友好。在分享这件事上,也不能指望它能和知识星球这样的专门平台一样好。
原文:https://t.me/drakeets/1605
#web https://railsgirlsjr.com/guides/sc/
复习了一下 MVC
首先,基本任何应用程序都需要依赖管理和运行时
所以有 GEM Management 和 RVM
然后,Web 框架所谓框架,就是要能自行的根据提供的信息做一些自动化完成的事情
所以有 Rails Generators
然后是 MVC
MVC 有一个流行的概念,REST,表述式状态转移,把实体的状态变动映射到 HTTP 和 URL 上,被映射的实体集合被称为 Resources
MVC,首先第一个是 "M", Model
Model, data model, 你的数据模型,Rails 有 ActiveRecord ORM
第二个是 "C", Controller
Controller,控制器,是暴露数据模型为可操作(比如,CRUD,Create-Read-Update-Delete)的一种方式,控制器绑定到一个『context path』提供指定域(比如 user, comment, admin)的服务访问
Rails 提供的抽象是 ActiveController
第三个是 "V", View
View,视图,美是智慧的体现,只要有了 Windows,DOS 没人会用
Rails 提供了 Ruby 内置的模板系统,ERB,Embedded Ruby 结合 ERB 模板来展示数据
模板语言是这样的(HTML,ERB):
ETML_ADDS = <<EERB
<!DOCTYPE html PUBLIC>
<html lang="en">
<body>
<ul>
<% [1,2,3].each do |i| %>
<li><%= i %> + 1 = <%= i + 1 %></li>
<% end %>
</ul>
</body>
</html>
EERB
<ul>
<li>1+ 1 = 2</li>
<li>2+ 1 = 3</li>
<li>3+ 1 = 4</li>
</ul>
至于模板程序相信都会写啦(跑路
简而言之,<%%> 里的是 Ruby 处理的代码,给 Ruby(可能是给下文的 %= 用的)
<%=%> 里面的是 Ruby 输出的代码,给 Ruby 处理求值,结果输出
其他的是不相干的东西,直接输出。
吐槽一下,Ruby 怎么没有强行按照关键字传递参数的功能...
复习了一下 MVC
首先,基本任何应用程序都需要依赖管理和运行时
所以有 GEM Management 和 RVM
然后,Web 框架所谓框架,就是要能自行的根据提供的信息做一些自动化完成的事情
所以有 Rails Generators
然后是 MVC
MVC 有一个流行的概念,REST,表述式状态转移,把实体的状态变动映射到 HTTP 和 URL 上,被映射的实体集合被称为 Resources
MVC,首先第一个是 "M", Model
Model, data model, 你的数据模型,Rails 有 ActiveRecord ORM
第二个是 "C", Controller
Controller,控制器,是暴露数据模型为可操作(比如,CRUD,Create-Read-Update-Delete)的一种方式,控制器绑定到一个『context path』提供指定域(比如 user, comment, admin)的服务访问
Rails 提供的抽象是 ActiveController
第三个是 "V", View
View,视图,美是智慧的体现,只要有了 Windows,DOS 没人会用
Rails 提供了 Ruby 内置的模板系统,ERB,Embedded Ruby 结合 ERB 模板来展示数据
模板语言是这样的(HTML,ERB):
ETML_ADDS = <<EERB
<!DOCTYPE html PUBLIC>
<html lang="en">
<body>
<ul>
<% [1,2,3].each do |i| %>
<li><%= i %> + 1 = <%= i + 1 %></li>
<% end %>
</ul>
</body>
</html>
EERB
require 'erb'#coding:UTF-8
erb = ERB.new(ETML_ADDS, nil, '<>')
erb.filename = 'adds.html'
puts erb.src
erb.run
_erbout = +''; _erbout.<< "<!DOCTYPE html PUBLIC>\n".freeze#...
; [1,2,3].each do |i|#...
_erbout.<< " <li>".freeze; _erbout.<<(( i ).to_s); _erbout.<< " + 1 = ".freeze; _erbout.<<(( i + 1 ).to_s); _erbout.<< "</li>\n".freeze
; end
_erbout.<< "</ul>\n".freeze
<ul>
<li>1+ 1 = 2</li>
<li>2+ 1 = 3</li>
<li>3+ 1 = 4</li>
</ul>
至于模板程序相信都会写啦(跑路
简而言之,<%%> 里的是 Ruby 处理的代码,给 Ruby(可能是给下文的 %= 用的)
<%=%> 里面的是 Ruby 输出的代码,给 Ruby 处理求值,结果输出
其他的是不相干的东西,直接输出。
吐槽一下,Ruby 怎么没有强行按照关键字传递参数的功能...
duangsuse::Echo
这里给同学一个我觉得有可能的情况: #PL #CS #Java 首先,我得给大家科普一下一些关于控制流的,我之前不知道而现在又知道了的名词: + 『短路』操作符(运算符) 这里说的『短路』是指,其连接表达式可能不会被全部求值 比如,C 里的 || (Logical OR) 和 && (Logical AND) a || b 在 a 为 true 的时候值为 a,b 不需要被求值,否则值是 b 的值 Scheme 里这么定义,当然你也可以列真值表,不过这里不用列: (define logical…
Telegram
duangsues.is_a? SaltedFish
tryUpdate:{
Exception exception = null;
for (int i = 0; i < 2; i++) {
try{
postResult = balabala……
if(postResult.code>299){
throw…
Exception exception = null;
for (int i = 0; i < 2; i++) {
try{
postResult = balabala……
if(postResult.code>299){
throw…
Forwarded from Yooru喵的腦子有點crash(?
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (加藤乃爱的小傻瓜加藤日向 | 最喜欢哥哥了)
Mozilla曝出大乌龙 证书过期导致全球Firefox用户无法使用扩展
今天早上Mozilla和全球的Firefox用户开了个不大不小的玩笑,许多人一大早起来打开浏览器发现所有的扩展都无法使用,就连手机版也是如此。
重装Firefox或者重装所有的插件都无济于事,在Bugzilla上提交的报告中我们了解到,这是由于Mozilla的官方证书没有及时续期所致。
Mozilla向来在管理证书的方式上与其它友商不太一样,一旦在管理证书上出现意外,就会导致今天这样尴尬的局面。
在Mozilla为他们的证书续期之前,临时的解决方法是打开
目前Reddit和Mozilla的bugzilla社区已经炸锅。
完整版
今天早上Mozilla和全球的Firefox用户开了个不大不小的玩笑,许多人一大早起来打开浏览器发现所有的扩展都无法使用,就连手机版也是如此。
重装Firefox或者重装所有的插件都无济于事,在Bugzilla上提交的报告中我们了解到,这是由于Mozilla的官方证书没有及时续期所致。
Mozilla向来在管理证书的方式上与其它友商不太一样,一旦在管理证书上出现意外,就会导致今天这样尴尬的局面。
在Mozilla为他们的证书续期之前,临时的解决方法是打开
about:config页面,搜索
xpinstall.signatures.required,将它的值改为false,但 将会 降低浏览器的安全级别。
目前Reddit和Mozilla的bugzilla社区已经炸锅。
完整版
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (YuutaW 鱼塔)
恭喜飞飞的频道荣获 “资讯” 分类第六名!
duangsuse::Echo
#Mozilla #Firefox #bug 中彩了 😭
什么叫做『某些』?是『所有』啊!
说实话... 观察就是观察...
我这个没人看的没有什么『自然增长』的跳梁小丑也... 我努力不够,希望以后可以改进吧。
而且我还有一些自己觉得不错的东西没有做出来呢(比如,GeekSpec&绝句、GeekApk)。看看本频道之前发的内容(比如,写 parser combinator 计算器),你们会相信我只是没有时间没有精力去完成而已。
我这个没人看的没有什么『自然增长』的跳梁小丑也... 我努力不够,希望以后可以改进吧。
而且我还有一些自己觉得不错的东西没有做出来呢(比如,GeekSpec&绝句、GeekApk)。看看本频道之前发的内容(比如,写 parser combinator 计算器),你们会相信我只是没有时间没有精力去完成而已。
Forwarded from tg生态观察 ٭✡️⚝✹✸✶✷✴️✧⊛🔯❂⍣≛✨🇻🇳
所以只是想继续看昨天那场热闹的, 真的没必要继续关注这里, 因为这里很可能看不到那件事的后续。
那件事发展到后来, 也略微偏移了本频道的主要话题。 再者, 因为申明过 "如无意外, 不再跟进", 而 Drakeet 反复辱骂本频道这种事, 不算特别意外, 所以本频道不会跟进
通常, 本频道不会参与吵架 (除非 tg 更新了什么坑爹功能) 非常欢迎对 tg 软件/社区/周边感兴趣的人关注这里
说人话: 本频道不是搞事的, 请好事者取关谢谢
那件事发展到后来, 也略微偏移了本频道的主要话题。 再者, 因为申明过 "如无意外, 不再跟进", 而 Drakeet 反复辱骂本频道这种事, 不算特别意外, 所以本频道不会跟进
通常, 本频道不会参与吵架 (除非 tg 更新了什么坑爹功能) 非常欢迎对 tg 软件/社区/周边感兴趣的人关注这里
说人话: 本频道不是搞事的, 请好事者取关谢谢
duangsuse::Echo
说实话... 观察就是观察... 我这个没人看的没有什么『自然增长』的跳梁小丑也... 我努力不够,希望以后可以改进吧。 而且我还有一些自己觉得不错的东西没有做出来呢(比如,GeekSpec&绝句、GeekApk)。看看本频道之前发的内容(比如,写 parser combinator 计算器),你们会相信我只是没有时间没有精力去完成而已。
观察,也不能说是直接把 #Telegram 当成什么了,drakeet 是谁不重要,但 Telegram 只是一个自由的 IM 和媒体平台而已,他爱更新就更新,不喜欢的话可以随时离开,如果他什么不说只是停更、开付费星球,是不是你们就不会撕起来了?
就比如我要删掉自己的 duangsuse::Echo(@dsuse, 我觉得只要我的神经正常就不会这么干)
和别人有多大程度上的相干?如果我有自己的理由,自然可以随时离开,其中的内容所有权是我的。
再者,为啥他就一定是为了赚钱?其实人家已经有很好的工作了,知识付费,这点钱或许连杯日常的咖啡都买不起。
为了防止所谓的 D 粉(如果真的有的话, 个人觉得其实只是因为上面转发的频道说过分、并且太『直』了)喷说我是『见风使舵、居心叵测』的『小人』(年龄的确小一些,正在看儿童书《The Little Schemer》,还没接触形式化证明和依赖类型、人工神经网络[2],emmmm),我得在这里说点同时别的话:
如果 drakeet 真的想要维护知识付费,因为他的技术水平,他不公开我看不到,但就他对学习的态度,我觉得他虽然是一个『称职』的工程师,但很难成为一个『优秀』的工程师。那些 star,那些 followers,都和个人的素质没有太大的关系,更不可能说,有 star,国内排第几,就能直接认为编程大师了。
但是知识付费,随手写点小博客,当然是能运行的,̶这̶话̶我̶代̶他̶说̶了̶
我只是想说点自己的看法。
详情这里,有点令人不高兴(不过对我来说,不高兴是假的.... 肯定高兴)[1]
是的,我就是来凑热闹的,而且不嫌耽误事情了 🌚 (迫真黑化)
是的,我是小人。不过要说我脑残,先写门自己的语言出来
[1]: 我只是把内心最真实的感受写出来了而已(比起别人把这种🌚言论烂在心里),我知道你们看完以后会怎么不自觉的重新评价我这个人的人格,但相信能被理解,因为我就是这么幸灾乐祸
[2]: 装大佬总是没有错的,是不是?就像去年红芯事件所谓的『逆向分析』一样 [看看啥叫逆向工程],真正的技术从来不是显学,不付出怎么得到回报?
就比如我要删掉自己的 duangsuse::Echo(@dsuse, 我觉得只要我的神经正常就不会这么干)
和别人有多大程度上的相干?如果我有自己的理由,自然可以随时离开,其中的内容所有权是我的。
再者,为啥他就一定是为了赚钱?其实人家已经有很好的工作了,知识付费,这点钱或许连杯日常的咖啡都买不起。
为了防止所谓的 D 粉(如果真的有的话, 个人觉得其实只是因为上面转发的频道说过分、并且太『直』了)喷说我是『见风使舵、居心叵测』的『小人』(年龄的确小一些,正在看儿童书《The Little Schemer》,还没接触形式化证明和依赖类型、人工神经网络[2],emmmm),我得在这里说点同时别的话:
如果 drakeet 真的想要维护知识付费,因为他的技术水平,他不公开我看不到,但就他对学习的态度,我觉得他虽然是一个『称职』的工程师,但很难成为一个『优秀』的工程师。那些 star,那些 followers,都和个人的素质没有太大的关系,更不可能说,有 star,国内排第几,就能直接认为编程大师了。
但是知识付费,随手写点小博客,当然是能运行的,̶这̶话̶我̶代̶他̶说̶了̶
我只是想说点自己的看法。
详情这里,有点令人不高兴(不过对我来说,不高兴是假的.... 肯定高兴)[1]
是的,我就是来凑热闹的,而且不嫌耽误事情了 🌚 (迫真黑化)
是的,我是小人。不过要说我脑残,先写门自己的语言出来
[1]: 我只是把内心最真实的感受写出来了而已(比起别人把这种🌚言论烂在心里),我知道你们看完以后会怎么不自觉的重新评价我这个人的人格,但相信能被理解,因为我就是这么幸灾乐祸
[2]: 装大佬总是没有错的,是不是?就像去年红芯事件所谓的『逆向分析』一样 [看看啥叫逆向工程],真正的技术从来不是显学,不付出怎么得到回报?
Telegram
duangsues.is_a? SaltedFish
我要当名人! —> 哇! 我好有名!!! —> 怎么没人搭理本名人呢?! —> 哦, 原来 tg 频道不适合分享。
—> 辣鸡 tg, 本名人去知识星球捞钱啦!!!
—> 辣鸡 tg, 本名人去知识星球捞钱啦!!!
duangsuse::Echo
观察,也不能说是直接把 #Telegram 当成什么了,drakeet 是谁不重要,但 Telegram 只是一个自由的 IM 和媒体平台而已,他爱更新就更新,不喜欢的话可以随时离开,如果他什么不说只是停更、开付费星球,是不是你们就不会撕起来了? 就比如我要删掉自己的 duangsuse::Echo(@dsuse, 我觉得只要我的神经正常就不会这么干) 和别人有多大程度上的相干?如果我有自己的理由,自然可以随时离开,其中的内容所有权是我的。 再者,为啥他就一定是为了赚钱?其实人家已经有很好的工作了,知…
先不试用 VisualGimp 进行算法可视化测试,也不写 BinaryProcessor 和 TextCombinator,我先发下这个:
—> D 粉群的群主立马说, 因为我们群的消息被转发了, 所以我们要销毁这个群
—> 本频道于是转发了上述两句, 作为第一条转发引发的后续报道。
—> 对方反应激烈, 骂了更难听的词。 本频道也因此反思, 遂删除了后两条转发
—> 本频道背上对方删群 (或宣布删群) 的黑锅
[origin]
这么说我背上也有一个 @drakeets 被 holder 删掉的锅了,不过照所谓『频道即为公共财产』的逻辑,是不是说你们亏了一个 @drakeets ,赚了一个 @dsuse ?(跑路
—> 之前还有 3-4 次小摩擦,以 duangsuse 道歉、解释,和解释自己消息的真正含义结束
—> duangsuse 因为在组里提技术上的建议,还写了个 Ruby 脚本附上作为自己想法的可行性证明,被 drakeet 直接踢出
—> 本苏于是在 ::Echo 说了两句, 评价了一下 drakeet 之前的开源代码, 作为对 drakeet 的回复和出气的方法。
—> 对方反应激烈, 全网 ban 了 duangsuse, 骂了难听的词。 本频道也因此反思, 在朋友的建议下删除了自己之前的评论
—> Drakeets 广播的 holder 立马说, 因为我的消息被小人转发恶意曲解评论了, 所以我要销毁这个广播,感谢大家的支持,人生真(允许我在这里加上个 ”特么“ 加强语气)是什么都有
—> 本苏背上对方删广播板的锅
🌝
其实不能这么说,虽然从某个特殊方面来看 @dsuse 的确比 @drakeets 分享的东西强,但是不得不说.... 每个频道都是独特的
正如世界上没有完全相同的两个人一样,差异构成了多彩的 Telegram 世界,
我没有权利把 @dsuse 的『技术含量、易读性』与被删掉之前的 @drakeets 相比,况且,Drakeets 不止会分享技术,还有更多的东西,这是我的 duangsuse::Echo 所严重缺乏的。
所以希望大家对即使是有点骄傲的 drakeet, 也友善对待,尽可能给予尊重。毕竟这个帐号后面也是一个活生生的人呢(虽然我们感觉不到,emmmm
—> D 粉群的群主立马说, 因为我们群的消息被转发了, 所以我们要销毁这个群
—> 本频道于是转发了上述两句, 作为第一条转发引发的后续报道。
—> 对方反应激烈, 骂了更难听的词。 本频道也因此反思, 遂删除了后两条转发
—> 本频道背上对方删群 (或宣布删群) 的黑锅
[origin]
这么说我背上也有一个 @drakeets 被 holder 删掉的锅了,不过照所谓『频道即为公共财产』的逻辑,是不是说你们亏了一个 @drakeets ,赚了一个 @dsuse ?(跑路
—> 之前还有 3-4 次小摩擦,以 duangsuse 道歉、解释,和解释自己消息的真正含义结束
—> duangsuse 因为在组里提技术上的建议,还写了个 Ruby 脚本附上作为自己想法的可行性证明,被 drakeet 直接踢出
—> 本苏于是在 ::Echo 说了两句, 评价了一下 drakeet 之前的开源代码, 作为对 drakeet 的回复和出气的方法。
—> 对方反应激烈, 全网 ban 了 duangsuse, 骂了难听的词。 本频道也因此反思, 在朋友的建议下删除了自己之前的评论
—> Drakeets 广播的 holder 立马说, 因为我的消息被小人转发恶意曲解评论了, 所以我要销毁这个广播,感谢大家的支持,人生真(允许我在这里加上个 ”特么“ 加强语气)是什么都有
—> 本苏背上对方删广播板的锅
🌝
其实不能这么说,虽然从某个特殊方面来看 @dsuse 的确比 @drakeets 分享的东西强,但是不得不说.... 每个频道都是独特的
正如世界上没有完全相同的两个人一样,差异构成了多彩的 Telegram 世界,
我没有权利把 @dsuse 的『技术含量、易读性』与被删掉之前的 @drakeets 相比,况且,Drakeets 不止会分享技术,还有更多的东西,这是我的 duangsuse::Echo 所严重缺乏的。
所以希望大家对即使是有点骄傲的 drakeet, 也友善对待,尽可能给予尊重。毕竟这个帐号后面也是一个活生生的人呢(虽然我们感觉不到,emmmm
Telegram
tg生态观察
而剩下转发的这两条, 是相关人士对本频道转发这条指名道姓的消息的直接反应。 由于并未直接提及本频道, 可以根据对方要求删除
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse::Echo
#web https://railsgirlsjr.com/guides/sc/ 复习了一下 MVC 首先,基本任何应用程序都需要依赖管理和运行时 所以有 GEM Management 和 RVM 然后,Web 框架所谓框架,就是要能自行的根据提供的信息做一些自动化完成的事情 所以有 Rails Generators 然后是 MVC MVC 有一个流行的概念,REST,表述式状态转移,把实体的状态变动映射到 HTTP 和 URL 上,被映射的实体集合被称为 Resources MVC,首先第一个是…
所谓行动力,就是随手就能写类似这种代码的能力。有这种能力才能进行真正的工程。
有了真实的写代码能力, CoolTok 逆向工程、BinOps 计算器、VisualGIMP GUI GIMP 算法可视化制作辅助程序插件、duangsuse/GeekApk 和 GeekSpec DSL、TelegramScanner、RandomSelection、chinese.h 预处理器这些程序才能被写出来~
有了真实的写代码能力, CoolTok 逆向工程、BinOps 计算器、VisualGIMP GUI GIMP 算法可视化制作辅助程序插件、duangsuse/GeekApk 和 GeekSpec DSL、TelegramScanner、RandomSelection、chinese.h 预处理器这些程序才能被写出来~
GitHub
duangsuse/CoolTok
CoolApk token assembly reversing. Contribute to duangsuse/CoolTok development by creating an account on GitHub.
duangsuse::Echo
https://t.me/dsuses/2941
Telegram
duangsues.is_a? SaltedFish
去吃饭的路上又想到了两种方法,不过两个都不能做到同时时间复杂度 O(n) 空间复杂度 O(1)
第一种就是利用 HashMap(或者 HashSet),HashMap 插入查询的时间复杂度是 O(1),但是空间复杂度(理论上)是 O(n), n 是保存的数据个数
所谓 HashMap,就是一个数据结构,它是 Python 里的 dict、Ruby 里的 Hash、Lua 里的(一种情况,Lua 的 table 有两个部分,它融合了数组和 Hash)table、JavaScript 里的 Object、Java…
第一种就是利用 HashMap(或者 HashSet),HashMap 插入查询的时间复杂度是 O(1),但是空间复杂度(理论上)是 O(n), n 是保存的数据个数
所谓 HashMap,就是一个数据结构,它是 Python 里的 dict、Ruby 里的 Hash、Lua 里的(一种情况,Lua 的 table 有两个部分,它融合了数组和 Hash)table、JavaScript 里的 Object、Java…
duangsuse::Echo
https://t.me/dsuses/2942
现在能得出最近似的可行算法就是先 O(n) 的快速排序一次列表(但是空间又不是 O(1)...)然后再 travelse...
或许这是一个离散化查重的题目,int32 的话位运算可以 hack,不过不是简单逐个 xor 一下就能完成查重的?
或许这是一个离散化查重的题目,int32 的话位运算可以 hack,不过不是简单逐个 xor 一下就能完成查重的?