吐槽部分
Focus on your KPIs, not your APIs
渣男在一处很集中,那就是一群女人的嘴里
心怀天下=克莱因瓶
婴儿长得像韭菜还是金豆?
发了一些朋友圈,被高能的微信AI给封杀,方才反应过来我其实并没生活在一个民主国家,很多真相是不能被扩散的,皇帝不喜欢听的话是不能随便说的,但如此这般我们岂不都成了奴才?所以法外之地中的这个法真的需要探明清除,这并不是抬杠。




我不知该用什么心情在此落笔。在计算机和互联网没这么发达的时代,落笔的文字组成的排列组合可以通过言传扩散,时代发展至今,万物互联的今天,信息的传递竟然更加受阻。所以我们人类文明发展的目的是什么?披着民主外皮倒退回封建专制还不如撕破表皮正大光明地登上铁王座,顺从的人加入,害怕的人臣服,勇敢的人前进,懦弱的人逃离。
我深爱着现在所从事的信息行业,毫不夸张地说“救赎之道,就在其中”。人类文明从香农开始,变得可以量化,就像RPG游戏中我们可以看到自己的HP和MP,射击游戏中终于有了环境光,建筑游戏中终于有了资源条,文明越发达信息传输的带宽极限值越大。
有幸从事过吉他的制造,声音是空气中疏密波的排列组合通过在空气中传播,到耳腔内进行一次EQ(在4kHz左右共鸣 对应峰值提高),随后通过骨膜、锤骨、砧骨等击打内部神经递质,在耳蜗末端结构不同位置共振,随后通过神经在脑中形成“声感”。而发声的源头吉他,其实是琴弦经过一系列滤波器(不同木材),把空气搅动出不同疏密波组合。如果对这个过程进行全数字化建模或仿真,其实声学本质是数学,是排列组合,我们制作吉他就是改变它的滤波器特性(这是乐器声音的核心)。再多一些考虑就是增加湿度稳定性和考虑演奏手感、外观等。但是很神奇的是,当时的市场并不如此理性,很多玄学衍生出的极端个人崇拜充斥在整个市场,演化出匪夷所思的鄙视链。如同发烧友的圈子,大家更多使用价格和眼睛去评价声音,好似一定要通过“争高下”来满足自己某些畸形的欲望。只要用盲听基本可以破除所有迷信。
到了信息行业,一切都变得客观、简单起来,所有的产品性能参数都有量化数值,好坏一眼便知,再无玄学干扰,终于可以踏实往前走。
那这种玄学行业诞生的深层原因是什么?是人的问题吗?
不,我认为不是,归根究底应是文化制度所致。
如果一个国家民族的底不喜欢自省和思辨,如果一个国家民族的每个人都崇尚至高无上的权利并渴望享受他人朝圣,如果一个国家民族不正视自己的历史不自省永远不认错,如果一个国家民族没有民主只有专制,那我认为诸如此类光怪陆离的事情只会越来越多。
所以,什么是民主?
民主一定不是简单的少数服从多数,因为未受教化的普罗大众的内心动物性大于人性,世俗语言中的人性是通过后天教育获得的“良好”的部分,之所以良好那一定是有不良好的“本性”做衬托。
想一下如果真正的工农阶级当家做主会是什么结局,洪秀全、义和团等等。他们的执政将会彻底在制度上返祖,成为完全体的“权利不受制约,人性之恶充分释放”,历史已经证明了这一点。
我自幼对科学中那纯粹、不以人的意志为转移的、客观的规律无限神往,那时的梦想真的有颜色。直到在大学中真正见到国内的“科研”氛围,便彻底绝望。周边一群喜欢当爹的人会告诉你无数“正确”的路并说“这样走,绝对没问题!”,大家都是第一次做人,为何你们会觉得你们更“成功”?为了躲避这些牛鬼蛇神,当时扮演了不少愚蠢才得以逃离。
所以国内“成功”的定义已然如此肤浅且一致,人可以没有信仰、信念,但不能没有房车孩黄金,所有的“另类”都会被持续PUA直到被同化。人应该简单一些,诚实面对自己&他人,驯化并没有让我们变得更好,但“皇帝的新衣”从精神层而非物理层彻底屏蔽了诚实面对自己和他人的信号。
正如我们不会感受到整个健康的身体,而只会觉得窄鞋子夹住脚趾头的一小处地方,同样我们不会考虑到所有进展顺利的事情,而只会留意鸡毛蒜皮的烦恼
叔本华的这句话可以扩展到“人”这个个体行为和思维的方方面面,几乎生活的大部在这句话下都成了笑话。
在国内书读得太多人,“底线”太高,却反会常做一些心手不一的事情。比如在靠技能打工的时候嚷着要赚钱;在赚完钱之后嚷着要社会和苍生。 其实在国内赚钱这件事,只要底线够低,没有那么多教育、道德上的束缚,几乎可以说是轻而易举。 疫情的时候随便垄断或生产个什么(药、口罩、食物等等),只要你内心毫无愧疚感敢想敢做,敛财速度几乎像自由落体一般快速。最赚钱的方案都在证监会犯罪条例里,都在真正的A股里,回报远超贩毒且风险几乎没有,合理合法合规 这三合就是最终极的敛财。诸位有没有想过为什么很多人会告诉你“不要轻信小道消息”? 如果大家都知道了“小道消息”,它便不再“小道”,分蛋糕的人如果是全部,那还有意义吗?那岂不是共产主义吗?诚实讲你会和别人共产吗?你自己都不会为什么要求别人和你共产?
所有赚取利润的体系里,只有抽点是稳赚不赔的。不管文明如何发展,生产力如何进步,我们都可以把世界或者金融体系当成恒定的1,也就是100%,因为人类的悲欢并不来源于所谓财富的绝对值,而来源于百分比的差异,它不受通缩通胀的影响,本质上我比你多我就开心。虽然1是恒定的,但内部是流动的,如果对所有的流动都抽点,那么只有抽点的人是“稳赚不赔”的,人类个体和群体一切的行为如果拍扁建模,都可等效于1内部的流动。
曾听过很多人说“金融是命脉”,个人觉得纯属胡扯,说这话的人只不过是抽点流程中的既得利益者,这句话所建立的精神壁垒可以让抽点过程更加被局限于某些团体,毕竟高效敛财的方法知道的人越少越好。这个体系表观越复杂“门槛”越高越利于稳定统治。
个人的劳动创造其实在内部变相“稀释”了这个1,虽然外面看仍然是1,但是你在1中所占的百分比增加了(这里假定其他地方都没有进行劳动创造),别人变相的百分比就减少了,所以别人该做什么?他们有几种方法继续维持高百分比状态,一个是抢走你的百分比(抽点或剥削),二是创造更多百分比(比你更多的劳动创造)。但这里有趣的地方来了,什么东西量度你的劳动创造?—— 金钱,所以我一定要靠比你更多的劳动创造来提升我的百分比吗? 并不一定,我可以通过无限量的印钞来降低你的百分比,再以合理合法合规(当然是我自己规定的,不能让你轻易达到的标准,实现的途径太多不赘述)的手段将这些百分比收归囊中以此维持高百分比的地位。 最终你会发现,无论你多么努力地透支生命贡献智慧来换取劳动报酬,永远都追不上“平均速度”,因为这个游戏本质就是一个圆圈的蛇咬尾的游戏,而且还有人站在GM的视角不断把蛇身砍断拼接(抽点)使其越来越短。
什么?你不接受这样的规则?想要变成GM?呵,历史上有同种想法的人多如牛毛,可以参考,可以执行,时间线中渺小一瞬的空间中的渺小一隅的排列组合的微小变化罢了。
综上而论我个人不觉得共产主义可以实现,当然表面上可能可以,但那时的人已经不是现在的人。可能是抛弃了现在人性的机器人或者是赛博生命体。
人类个体有吃有穿有住的现状并没有让所有人开心,现代人体会不到以前人均衣不蔽体食不果腹的状态,只能看得到周边有太多过的比自己好很多的人,造成痛苦的永远是DNA里的人性。现有的法制约束的“和平”世界并没有抹杀DNA中的这部分,所有人“假装”生活在“和平”世界相敬如宾,话术上“共同发展”,实则暗流涌动,皆行杀伐之事,只不过当今的杀伐从物理层面“升级”到了规则层面,破坏力更加强悍。
个体在这游戏中所能做的事,要么投身其中闪耀一下随后陨灭,要么远离纷争独善其身,在内心假象的一片净土探索,嗯 探索的速度还要足够慢,否则人生的“无聊”将又成为一大敌。
至于智慧与愚钝,那只是评价他人暗示自己开心的手段而已,时间拉长空间拉长,意义都不大。
代码学习部分
frappe/erpnext: Free and Open Source Enterprise Resource Planning (ERP) (github.com)
- PyGWalker是个在Jupyter Notebook环境中运行的可视化探索式分析工具,仅一条命令即可生成一个可交互的图形界面,以类似Tableau/PowerBI的方式,通过拖拽字段进行数据分析。
- 过去在python中进行数据可视化分析时,经常需要查询大量的可视化类的代码,并编写胶水代码将其应用在数据集上。PyGWalker的目标是通过一行代码,将数据集转化为一个可视化分析工具,只需拖拉拽即可生成图表,从而减少数据分析师在数据可视化上的时间成本
- PyGWalker: Turn your data into visual analytic app (kanaries.net)
iperov/DeepFaceLive: Real-time face swap for PC streaming or video calls (github.com) 实时换脸
Python-World/python-mini-projects: A collection of simple python mini projects to enhance your python skills (github.com) 一些小的python脚本,用以理解python
mljar/mercury: Convert Jupyter Notebooks to Web Apps (github.com) 将jupyter notebook 里的代码可视化成网页可视化并隐藏代码
《动手学深度学习》 — 动手学深度学习 2.0.0 documentation (d2l.ai)
roboflow/supervision: We write your reusable computer vision tools. 💜 (github.com) 视觉标识的python库
jackfrued/Python-100-Days: Python - 100天从新手到大师 (github.com)
编程大师Martin Fowler先生曾经说过:“代码有很多种坏味道,重复是最坏的一种!”,要写出高质量的代码首先要解决的就是重复代码的问题。对于上面的代码来说,我们可以将计算阶乘的功能封装到一个称之为“函数”的功能模块中,在需要计算阶乘的地方,我们只需要“调用”这个“函数”就可以了。
"""
输入M和N计算C(M,N)
Version: 0.1
Author: 骆昊
"""
def fac(num):
"""求阶乘"""
result = 1
for n in range(1, num + 1):
result *= n
return result
m = int(input('m = '))
n = int(input('n = '))
# 当需要计算阶乘的时候不用再写循环求阶乘而是直接调用已经定义好的函数
print(fac(m) // fac(n) // fac(m - n))
说明: Python的
math模块中其实已经有一个名为factorial函数实现了阶乘运算,事实上求阶乘并不用自己定义函数。下面的例子中,我们讲的函数在Python标准库已经实现过了,我们这里是为了讲解函数的定义和使用才把它们又实现了一遍,实际开发中并不建议做这种低级的重复劳动。
这里有一个非常值得探讨的问题,我们已经有了列表这种数据结构,为什么还需要元组这样的类型呢?
- 元组中的元素是无法修改的,事实上我们在项目中尤其是多线程环境(后面会讲到)中可能更喜欢使用的是那些不变对象(一方面因为对象状态不能修改,所以可以避免由此引起的不必要的程序错误,简单的说就是一个不变的对象要比可变的对象更加容易维护;另一方面因为没有任何一个线程能够修改不变对象的内部状态,一个不变对象自动就是线程安全的,这样就可以省掉处理同步化的开销。一个不变对象可以方便的被共享访问)。所以结论就是:如果不需要对元素进行添加、删除、修改的时候,可以考虑使用元组,当然如果一个方法要返回多个值,使用元组也是不错的选择。
- 元组在创建时间和占用的空间上面都优于列表。我们可以使用sys模块的getsizeof函数来检查存储同样的元素的元组和列表各自占用了多少内存空间,这个很容易做到。我们也可以在ipython中使用魔法指令%timeit来分析创建同样内容的元组和列表所花费的时间,下图是我的macOS系统上测试的结果。

短信接口_短信验证码_验证码短信平台-互亿无线 (ihuyi.com)
Bootstrap中文网 (bootcss.com) 简洁、直观、强悍的前端开发框架,让web开发更迅速、简单。
数据处理python库
- NumPy:支持常见的数组和矩阵操作,通过
ndarray类实现了对多维数组的封装,提供了操作这些数组的方法和函数集。由于 NumPy 内置了并行运算功能,当使用多核 CPU 时,Numpy会自动做并行计算。 - Pandas:pandas 的核心是其特有的数据结构
DataFrame和Series,这使得 pandas 可以处理包含不同类型数据的表格和时间序列,这一点是NumPy的ndarray做不到的。使用 pandas,可以轻松顺利的加载各种形式的数据,然后对数据进行切片、切块、处理缺失值、聚合、重塑和可视化等操作。 - Matplotlib:matplotlib 是一个包含各种绘图模块的库,能够根据我们提供的数据创建高质量的图表。此外,matplotlib 还提供了 pylab 模块,这个模块包含了很多像 MATLAB 一样的绘图组件。
其他数据处理python库
- SciPy:完善了 NumPy 的功能,封装了大量科学计算的算法,包括线性代数、统计检验、稀疏矩阵、信号和图像处理、最优化问题、快速傅里叶变换等。
- Seaborn:seaborn 是基于 matplotlib 的图形可视化工具,直接使用 matplotlib 虽然可以定制出漂亮的统计图表,但是总体来说还不够简单方便,seaborn 相当于是对 matplotlib 做了封装,让用户能够以更简洁有效的方式做出各种有吸引力的统计图表。
- Scikit-learn:scikit-learn 最初是 SciPy 的一部分,提供了大量机器学习可能用到的工具,包括数据预处理、监督学习(分类、回归)、无监督学习(聚类)、模式选择、交叉检验等。
- Statsmodels:包含了经典统计学和经济计量学算法的库。