Shi Hai's Blog

随遇而安

《价值》阅读随笔

我逐渐意识到滑雪和投资竟有许多相似之处,都需要时刻把握平衡,既盯着脚下,又要看到远方,在一张一弛间把握平衡,并凭借某种趋势求得加速度,而关键的是都要保持内心的从容; 张磊的三把火理论,无法烧掉的才最有价值:能力,知识,价值观 张磊面试中遇到一题面试题:要建设加油站怎么建?一般性回答是多少人口,多少车等出发,张磊没直接给出答案,他是问自己为什么要有加油站,去加油站是为了加油吗?以后出行方式会发...

《乡土中国》阅读随笔

在社会学里,我们常分出两种不同性质的社会,一种并没有具体目的,只是因为一起生长而发生的社会,一种是为了要完成一件具体任务而结合的社会。用我们自己的话说,前者是礼俗社会,后者是法理社会。一个靠规矩,一个靠法律。 在我们社会激速变迁中,从乡土社会进入现代社会的过程中,陌生人组成的现代社会是无法用乡土社会的风俗来应付的。 语言只能在一个社群所有相同经验的一层上发生。群体越大,包括的人所有的经验越复...

《胜者思维》阅读随笔

一、关于将军的产生 美国国会众议院军事委员会提出的军人的标准: 必须具有分析能力,能够超越孤立的事实或者某一领域专长,看到并整理出事物之间的相互联系; 必须是实用主义的,能够有意识地重构自己的战略模型; 必须具有创造性,经常要挑战现状; 必须接受多种教育,是通才,而不是专才。 牺牲是军人的最高付出,但不是军人的最大奉献,国家和民族养育军队,是让你夺取胜利的,不是让你在关键时刻一死了之的。...

Terraform初体验

一、Infrastructure as Code(IaC) 1.1. IaC起源 IaC确切来源已无法考证,实际还有个概念可以理解成IaC框架的扩展:配置即代码(CaC)。你可以将CaC理解成IaC的一种理念扩展,主要的CaC工具如下图所示,最早的CaC工具是1993年开发的CEFngine。 Tool Released by Method Chef Chef (2009) P...

python局部变量内存地址释放疑问的分析

一、问题背景 遇到了一段代码,如下所示,第一眼的直觉是变量ins是一个局部变量,重复调用test()函数会反复创建新的实例ins。 import sys def test(): ins = object() print(id(ins)) while True: test() 但实际情况却是在进程运行期间局部变量ins的id一直没有发生改变。 14007692...

《代码大全》阅读随笔

五、软件构建中的设计 5.1 设计中的挑战 设计就是把需求分析和编码调试连在一起的活动。 5.1.1 设计是一个险恶的问题 学校的编程任务是从头到尾直线前进而设计的。而社会中的编程开发需求可能在反复变动。 瀑布模式和敏捷模式本质区别在于承认未来的需求是否会发生变化及发生变化的频率? 5.1.2 设计是一个无章法的过程 你很难判断设计何时算是“足够好”了,设计到什么细节才算够?又有多少设计可以...

异步编程学习

异步和同步相比能充分的利用好CPU资源。 一、Java语言 1.1 Future 通过继承Thread或者实现Runnable接口可以快速实现多线程,但是这种实现方式只有执行过程没有返回值。为了要让并发任务能返回结果就需要实现Callable和Future来实现。 import java.util.concurrent.ExecutorService; import java.util.co...

python并发并行性能测试

python支持并发/并行的手段主要是asyncio、threading以及multiprocessing。 我的测试环境是4核虚拟机。 asyncio import asyncio import time async def count(number): result = sum(i * i for i in range(number)) return result...

非侵入式获取gcc编译选项

本文背景 由于需要对部门内以C语言服务进行编译参数排查,确保C语言构建项目配置了安全编译选项,如:-fPIC等。当然挨个去看构建工程可以很直观,但是服务太多,本人太懒,所以想看看是否有比较自动化的方式能从构建服务中直接获取各个服务的构建参数。因此,本文尝试寻找一种非侵入式代码方式即可获得各服务执行gcc编译所配置的参数。 技术方案探索 -frecord-gcc-switches 此参数是gc...

阅读书单推荐

不限于技术书籍,持续更新

一、社会科学 《毛泽东选集》:毛主席通过非常精确的调研数据对社会问题进行深度剖析和总结,擅长抓住事物的主要矛盾,非常擅长通过辩证法去看事物的本质。 《控制论与科学方法论》:从控制论和系统论角度来诠释社会的发展和进化,社会是一个自稳定系统,短期的波动只是向前演进的一个必不可少的一个小阶段,长期状态是稳定的。控制论中对客观事物的可能性空间定义在某种角度上可以和辩证方法论是可以对应上,通过辩证方...