《迷人的材料》

一本简单有趣的小书。

随着科技的发展不断地发生着进步,材料,如今已经遍布我们生活中的每一个角落,在现代社会的任意一个角落,环顾四周就能发现各种各样的材料,然而我们似乎已经习以为常,我们既不知道这一种塑料和那一种塑料有着怎样的区别,也不知道同样泛着灰色光泽的金属究竟是什么,也许我们对此不感兴趣也毫不在乎。

作者决定做点什么,于是,他就从一个普通的场景:自家屋顶拍的一张照片开始,讲述了十种材料的趣味历史。

材料的进步和发展,显然可以让我们的生活变得更加便利,让生活质量更高,也创造出了许多的可能。比如胶片,早期的摄影胶片是用玻璃制作:易碎、不便携,而当塑料的胶片发明之后,摄影师的创作能力被大大增强了,这也使得另外一种艺术形式--电影--成为了可能。而如今数码技术的发展,使得人们不需要依赖胶片,就可以拍摄出比一卷胶卷多得多的照片、视频,当年的宠儿,如今逐渐退出了历史舞台。

材料的应用,也有很多我们意想不到的作用。比如台球,最早的时候是用象牙制成的,后来有人研发出了用塑料代替象牙的台球,于是台球这个运动才有可能在全世界流行开来。如果没有塑料制作台球的技术,不知道要多少大象才能供得起台球运动,材料技术的进步,意外地起到了保护动物的作用。

这不由得让我想起了之前看到过的一个新闻,有个大学的动物保护项目,制作的假的犀牛角(或者是象牙之类的东西),为了让它能足以乱真,他们甚至在里面掺入了DNA,他们以很低的成本大量制作并投放到市场上去,压低价格,让偷猎者无利可图。

好像这里举的都是塑料相关的例子,实际上作者介绍的材料远不止这些:金属、纸张、混凝土、泡沫……每一种都有着传奇的故事和有趣的知识。比如,在玻璃那一章中,作者就用非常通俗的语言、在原子层面上,介绍了为什么玻璃是透光的。

全书读完,脑子里突然浮现出一个比喻:历史的行程就像一条大河奔涌向前,我们就在河水中,一边被水流推着向前,一边又慢慢地下沉,当我们沉到河底,不会再向前的时候,可能是已经离开了这个世界,也可能是已经跟不上时代的发展,学不会新技能了。

然而还有的人,他们并不是由着自己被水流推动,他们会预测水流的方向,他们会走在水流的前面,他们甚至会推动着水流向前走,这些人,就是让思想、哲学、科技进步的人们。

就像AlphaGo横空出世的时候,有人提到那个比喻:

人工智能就像一列火车,它临近时你听到了轰隆隆的声音,你在不断期待着它的到来。它终于到了,一闪而过,随后便远远地把你泡在身后。

师兄说:还有人是制造这列火车的人。

乡下的水族馆

一个鱼比人多的地方。

在日本,除了东京、横滨、大阪等几个大都市,其他的地方都差不多自称乡下,而乡下中的乡下,就是位于山阴地区的鸟取县,全日本四十七个都道府县(相当于我们的省级行政区),鸟取县是最后一个开星巴克的,开业那天,门口排起了像新款早几年新款苹果手机发布时的盛大的队伍。

如果说鸟取还有“最后一个开星巴克的县”这么个名号[1]的话,那岛根县真的不知道是以什么闻名了[2],真可算得上是比乡下还乡下。所以当我在火车上,翻阅着不记得从哪拿来的山阴旅游地图,发现“岛根县海洋馆”的时候,我并不知道在这样乡下地方,能遇到什么样的海洋馆。

要去海洋馆,需要在上午10点钟在一个叫波子的地方下车,之后12点40有一趟快车离开玻子,去我下一个目的地,而海洋馆离火车站步行需要十分钟分钟,这意味着在海洋馆里可以玩两个小时多一点的时间。所以,在火车上的时候,我是这么打算的:如果海洋馆很有趣,那就多玩一会,在车站买便当带上火车吃,如果没意思,那就在附近的馆子里随便吃点什么。

结果我想多了:不愧是乡下,波子站很小,只有一条轨道,没有地下通道也没有过街天桥,换站台是直接跨铁轨的,出站口没有自动检票机,要人工检票,整个车站就只有一个检票的工作人员,还没有穿制服,车站里连一般车站标配的投币存包处都没有,就更不用说卖车站便当的了。

Google地图带路,沿着宁静整洁的街道往海洋馆走,刚下过雨,地上湿漉漉的,空气里泛着雨后的清新味道,只是一路上根本看不到人,如果不是房屋都还是一副有人维护的样子,真要怀疑这里是不是已经废弃了。

快到海洋馆的时候,还是看不到人,也看不到车。

海洋馆的大门口,还是冷冷清清的,建筑还算是气派。

真是不知道这样带着忐忑的心情进了海洋馆,里面总算看到几个游客,以一路走来的标准看,可以说是人相当多了。

从车站出来的一路上,虽然感觉很偏僻没什么人烟,但海洋馆里的生物却毫不含糊:鱼类、龟类、水母……该有的都有。

最值得赞叹的是,这里的表演太密集太近了。

在一个半露天的场地,观众的头顶有屋顶挡雨,企鹅的栖息地直接暴露在大自然里,隔着半人高的玻璃墙,有企鹅喂食表演,其实这倒算不上是什么表演,毕竟企鹅们主要表演任务就是吃,游客们看得也是津津有味。

可能就像看大熊猫一样吧:大熊猫不需要跨越障碍、顶球什么的,只要抱着竹子啃就够了。

白鲸(?)表演,由于体型比较大,容易溅出水花来,所以是隔着玻璃墙才能看的:

用尾巴说再见:

值得一提的是,这个池子的下半部分在楼下,是透明的玻璃幕墙,如果在楼下看到白鲸们总是把下半个身子放在水下,不把头全沉下来,说明它可能正在楼上表演。

海豹(其实不太会区分海狮、海豹、海象、海鸥……)表演:

这个技能就强多了:

就在这个表演场的隔壁,有一个小广场,有个扇形的小舞台,台下是观众坐的地方,本来零零散散的坐了几个人,在等下一波表演。

结果工作人员说,今天人太少了,大家直接靠过来吧,这样可以离近一点看,于是就变成了这样:

所以才能以这么近的距离看到这样的画面:

看这货笑的样子,跟狗有什么区别,这不就是狗吗?

表演结束,回过头来,观众席上摆得整整齐齐的,是来这里参观的日本小学生的书包:

[1]. 鸟取县还是柯南的故乡。

[2]. 大概有人知道出云大社。

一道小学题目

前两天在同学群里有人转了一篇文章,里面有一道小学题目:

烙饼的时候,第一面需要烙两分钟,烙第二面的时候,因为饼已经比较干了,所以只需要烙一分钟,锅里面刚好能放下两张饼,问烙15张饼最少一共需要多少时间?

文章的作者给出的答案是这样的:

两张一组,先正面再反面,3分钟烙好两张饼,前14张照此办理,共需要14/2*3=21分钟;最后一张饼单独烙,正反面一共3分钟,加在一起:总时间24分钟。

然后作者说,他的一位家长朋友说他的解法并非最优,更好的方法是:

1. 两张一组,烙完12张,共耗时18分钟

2. 第13、14张饼,烙完第一面,2分钟

3. 放第15张饼,烙第一面的2分钟里,另一边依次烙第13、14张饼的第二面

4. 然后第15张饼翻面再烙1分钟就完成了

总时间:18+2+1+1+1=23分钟。

确实比最初的24分钟的方案省了1分钟。

要说我的同学们还是厉害,很快就有人指出:最快的方法难道不是22.5分钟吗?

确实,省时间的要点就在于锅不能闲着:在作者最初的24分钟方案里,最后3分钟的时间,有一半锅是闲着的;在后面的23分钟方案里,最后1分钟时间,有一半锅是闲着的。

那么,什么方案是让锅始终不闲着呢?

在揭晓答案之前,我们先来算一下,理论上最快的方案所能到达的极限在哪里:一张饼需要3分钟,15张饼需要45分钟,锅里可以同时烙两张,如果有一个让锅完全不闲着的方案,最少也得需要45/2,也就是22.5分钟。

那么这个锅不闲着的方案存在吗?当然存在:

1. 前12张饼正常烙,18分钟

2. 烙第13,14的正面,1分钟(此时正面还没烙好)

3. 烙第13,15的正面,1分钟(此时13号饼的正面好了)

4. 烙第14,15的正面,1分钟(此时14,15的正面好了)

5. 烙第13,14的反面,半分钟(此时反面还没烙好)

6. 烙第13,15的反面,半分钟(此时13号饼的反面好了)

7. 烙第14,15的反面,半分钟(此时14,15的反面好了)

总耗时:18+1+1+1+0.5+0.5+0.5=22.5。

在这个方案下,锅没有闲着,也就达到了理论上的最优值:22.5分钟。

问题此时算是达到了完美解决,甚至于有同学指出,当锅可以同时烙n张饼,而总共有m张饼需要烙的时候,当m>=n时,需要时间是3*m/n,具体方案与我们的22.5分钟方案类似组合即可。

但是这个方法有一个问题:

一张饼第一面的两分钟,是可以间断的吗?

在上面的方案里,第2步烙了第14张饼的正面1分钟,然后空了1分钟再去烙第14张饼正面的第二个1分钟。如果可以间断,那这个方案就是成立的,如果不能间断,恐怕还是要之前的23分钟方案才行。

这也涉及到经常有人好奇的一个问题:

双核的速度一定是单核的两倍吗?(类似的问题:四核的速度一定是单核的四倍吗?)

用上面题目的例子就知道了,这取决于要处理的问题本身是否可以很好的并行化:锅是双核的,但如果烙一面饼不能间断(任务不能完全并行化),那就不一定能达到双倍速度。

而在现实中,不能完全并行化的任务还是很多,所以双核处理器并不总能达到双倍的速度。

回到这道题目上,不知道大家是否注意到一点:不管是什么方案,我们都忽略了把饼从锅里拿出来、再换进另外一张饼所需要的时间。如果这个时间是不能忽略的,那总时间相应地还会增加,对应到双核单核的问题上,我们管饼拿出来、换进去的时间,叫做上下文切换时间,这,也是双核速度翻倍的一个制约因素。

于是我又想到了一个经典问题:

一个码农两个月能完成的工作,两个码农一个月能完成吗?