Pulpcode

捕获,搅碎,拼接,吞咽

0%

开篇

熟悉我的朋友都知道我喜欢把“性价比”三个字挂在嘴边,但我所说的“性价比”并不是单纯的“省钱不花钱”而已。我思考“性价比”三字许久,这已是我的一种人生态度,一种思考问题的方式,不仅限于花钱上,而用在生活的方方面面。这篇博客主要讲几个关于性价比的例子。为了让文章有趣,我会在每一个小节会穿插一个我写的关于性价比的段子,这很像是动画片或者电视剧在每集穿插的过场动画。比如《灌篮高手》,《神奇宝贝》,《武林外传》等等。我在网上查到这种东西英文叫:“Eyecatch”,日语叫“アイキャッチ”。

woshishei

成本

一件商品的成本受很多因素影响,有些东西的贵是因为原料贵,比如金银首饰的金子,有些东西贵是因为人工贵,比如开发一款软件。有些东西贵是因为存储成本,比如有些非常大的东西,存放非常占空间,又或者生鲜之类的,需要冰柜存放。此外还要考虑运输成本,比如同样是运输,如果那里的交通不发达,那运费就会很高,相反如果物流发达,就会很便宜。像是某些易碎品,价值比较高的东西,它的运输成本会更高。而这些所谓的成本,最后都要买家来买单。除了上面说的这些比较明显的成本,我这里提及一下科研成本,“越是新的东西,就要花费更高的价钱”,举个例子,如果想要买一款游戏机来娱乐,相比于VR头盔这样的设备,更应该花钱购买PS4和SWITCH这样的游戏机。我有一台quest2 VR头盔,价格比游戏机稍贵,玩过一段时间我就发现VR的游戏体量相比游戏机还差一些,因为这些游戏机已经发展了好多年,市场趋于稳定,每年花费大量的资金产出游戏作品,它们的玩法套路已经相当成熟。而VR这样的设备,还在探索阶段,大部分厂商都在试水,市面上也没有那么多成熟的游戏。研发的成本还需要玩家买单。所以相比较而言,性价比不是很高。

段子: “如果冬天你舍不得交暖气费或是开空调,可以做一间暖色调的房子,比如把墙刷成粉红的。”

阅读全文 »

此篇博客我将尝试用一个个小故事来和你分享我对游戏的经验和理解。

与作者交流

《机械迷城》是一款解谜游戏,游戏从被丢到垃圾堆的机器人主角开始,拨开层层迷雾,解救机器女友。游戏所在的城市,建筑,人物,动物都是机械。游戏里有个场景是需要玩家通过拼图来接电线。拼到一半时,一只机器猫头鹰叼走了一块拼图,飞到了电线上,折腾了很久,怎么也拿不到那块拼图,后来我以为要去别的场景找一块相似的拼图,但是别的地方根本找不到。又回到之前的场景,发现猫头鹰其实站在电线上模仿我,我向左走,猫头鹰向左走,我向右走,猫头鹰向右走。所以我试着反复的伸长和缩短自己的身体,猫头鹰也跟着模仿,然后电线就被它上下抖了起来,幅度越来越大,最后电线被摇断了,它跌了下来,我就拿到了那块拼图。我在这里感受到了游戏设计者通过机器猫头鹰的行为对我指引。

jixiemicheng_maotouying

曾经有个朋友跟我说过这样一句话,单机游戏自己一个人有什么可玩的,和别人一起玩才有意思。我想这种想法并非少数,其原因在于觉得自己玩仅仅是对着一堆冷冰冰的程序,而与别人一起玩才有互动一说。不过有这种想法的人,应该没怎么玩过游戏吧,至少没怎么玩单机单机游戏。首先我们来思考这样一个问题,读本小说应该两个人一起读么,看一部电影电影需要两个人一起看么,这里暂且不聊看完之后的剧情讨论环节,或者陪对象一起看电影的浪漫情节。在欣赏这些文艺作品的时候,应当安静的去感受。同理游戏也应该被这样对待。我们在读小说的时候,其实是在和作者交流,我们在看电影的时候,其实是在和导演交流,同理我们在玩游戏的时候,应该是和游戏设计师交流。

交流本身是一个很宽泛的词汇。并不是说你我面对面才是交流,你写一篇文章,或者画一幅画,间接让我看到,我体会到了你的想法,这也是交流。

在虚拟中寻找现实

在游戏《植物大战僵尸》里有一种植物叫寒冰射手,它是在豌豆射手的基础上,给豌豆添加冰冻效果,从而减速僵尸。游戏中还有一种头上着火的树桩植物。从它头上经过的豌豆能有点燃效果,加大攻击力。有一次我灵机一动,在寒冰射手前面放上火树桩,那不正好给僵尸来个“冰火两重天”么?当我在游戏里实验这一思路时,我发现我想错了,寒冰射手的冰豌豆划过火树桩后,变成了普通的豌豆。感觉游戏的设计者识破了我的意图,我尝试用别的思路,把火树桩种在寒冰射手的后面,普通豌豆种到火树桩的后面,这样火豌豆和冰豌豆都打到僵尸身上来个冰火两重天。可实验后我发现冰火两重天虽然实现了,但没有减速和加倍伤害并没有同时生效,火豌豆会移除冰豌豆带来的寒冰减速效果。像这么一款休闲类的游戏,居然有冰火互斥的物理引擎在?不得不说设计者的思维缜密,连这种小细节都想到了,反观很多所谓的大制作却做不到这一点。

阅读全文 »

开篇

在《如何阅读一本书》中,作者介绍了阅读的几个层次,分别是“基础阅读”,“检视阅读”,“分析阅读”和“主题阅读”。
其中“基础阅读”是指能够读懂书中内容的初步阅读。“检视阅读”是指系统化略读,在阅读初期就对书籍有一个大致的了解判断。“分析阅读”是指追求理解的全面性阅读。最后的“主题阅读”是指带着主题在多本书中主动研究的阅读方式。
作者在书中特意提到,这四类阅读是层次渐进的,既第一层阅读并没有在第二层阅读消失。之所以要提起这本书是因为平时在做技术分享的时候,积累了一些感悟,我认为在技术分享这个事儿,同样也分为几个层级的。

基础分享

第一个层级我叫它“基础分享”。在这个层级中,要做好两件重要的事,第一个是主动分享。第二个是清晰表达。

主动分享
我发现有很多程序员不愿意做技术分享,主要还是心态没有转变过来。原因我整理了这几种:

觉得自己当前做的不够好不配分享。认为自己学过的别人都会,等以后全都学好了再去分享。

这种有点完美主义有点自卑的情绪就好比在想等自己足够优秀的再去追喜欢的女生一样。你要觉得准备好了再去,那是没有准备好的一天的,有些时候就是要先硬着头皮上,所谓完成比完美更重要。这次大胆尝试,下次做的更好就行了。

阅读全文 »

红黑树和跳跃表都是高效的数据结构,但redis的zset底层实际使用了跳跃表而非红黑树是为什么?

这篇博客的内容来自于我在公司分享的一部分内容,其目的是探讨如何对比两种数据结构?背后的原理是技术选型的思路?

当然要说明一点,要说zset是跳表也不完全合适,使用的其实是改进后的跳表,比如允许key重复。

那么如何对比两种数据结构?首先要看他们支持哪些操作,这些操作的复杂度是多少?

那对于大部分数据结构而言,它们要支持的操作无非就是增删改查,分的更细一些就是单个查找和范围查找,找最大最小之类的。那么接下来我们就分别对比下这两种数据结构,对应操作的时间复杂度是多少。

阅读全文 »

提示,文章中有引用英文原文,如果你使用了浏览器自动翻译,会让文章读起来怪怪的。

cpu load是cpu比较关键的一个指标,当你的系统cpu load 高问题时,如果你去网上查阅资料一定会查到类似“cpu load 是统计一段时间内正在使用和等待使用CPU的平均任务数”的指标,当说到等待cpu时,更明确的解释是“处于不可中断睡眠的(D状态)的任务
”。man的解释是:

The load average is calculated as the average number of runnable or running tasks (R state), and the number of tasks in uninterruptible sleep (D state) over the specified interval.

所以看上去当你的系统出现cpu load高,但是cpu使用率却很低的时候,去找到这些不可中断状态就成了唯一线索了。

但问题是什么是不可中断状态,如何去找它们,我在网上搜了一些中文资料,发现大部分博客是截取的书中内容,或者相互抄袭,还有甚至有明显错误,比如有些博客让你用top命令找D状态,但真实情况是D状态存在的瞬间那么短,你怎么可能用top命令找到D状态呢?还有些博客说不可中断状态就是等待IO,那IO到底是磁盘IO还是网络IO,再说IO还有很多阶段啊,难道我发起个阻塞调用这段时间会一直是不可中断状态?找了半天没有一个让我一下明白到底啥是不可中断状态的。所以我打算在外网找一些答案,经过了长时间的查找,还是有所收获的,在这里分享出来。

阅读全文 »

我的mac屏幕在两年前碎了,因为公司有满年限回购电脑的机制,所以在领了新电脑之后,我花了500元买下了这部旧电脑,一直放在家里插着显示器直接使用,这样我就不用每天背着电脑回家了。也许你会好奇为什么我没有修屏,原因有两个,第一,虽然可以直接在公司直接找资产部门进行维修,但修一个屏要2200元。第二是因为我已经修过一次了屏了,而且就在第二次屏坏的一个月以前。当时我真是心痛,没想到忍痛花2200元修一个屏,不到一个月就要再修一次。所以当时生气的我选择放着先用吧,就这样一直放到现在了。

现在又要拿出来修是因为我觉得那个旧mac编译大型程序稍有些稍卡,所以我决定修了碎屏mac给对象平时做ppt用,然后给自己更新了一个mac mini当台式机用。

不过我确认维修价格的时候,却有些生气,因为他们告诉我维修价是2700。我问他们是涨价了么,他们说没有一直是这个价,一开始我还真以为是自己记错了,然后我查到之前维修的聊天记录和支付账单,果然就是2200,我把账单给工作人员看,他们又开始敷衍的解释说,这个可能是之前供应商的报价,他们的价目表一直是2700。当时我就有些生气,说的话完全前后对不上。

你可能觉得这已经是我个人的电脑了,为什么拿去公司修。但其实这个电脑目前还不属于我,因为我只是交了钱,并没有在公司注销,所以这个电脑目前还是公司资产,我不注销的原因是因为注销会把电脑所有东西都清空,包括操作系统。我真怕清空到连外接显示器的驱动都给了清空了,那样的话在修显示器之前,是无法使用的。

阅读全文 »

在我的脑海中里,始终有一些深刻的镜头画面,一些残存的记忆碎片,可能是一部电影,一个游戏,或者是一个玩具。之所以称它们是碎片是因为我实在不知道它们到底叫什么,完整的样子是什么,因为太小众了,年代又有些久远。它们本身就不是《机器猫》,《超级玛丽》这种被大家所熟知的东西。这些记忆总是是不是会在你眼前晃一下,但是你想更深入回忆一下时,却又进行不下去,前段时间狠下决心,决定凭着仅有的记忆碎片寻找这些作品的名字和那段有趣的历史。

碎片1-红白机游戏

那是一款在小时候玩过的红白机FC游戏,我从一个土豪同学家里借来的,那个游戏应该比较冷门,因为那个卡带我只见过一次,印象深刻的是那个卡带就一个游戏,但是不是那种三国类加电池记忆卡带,游戏的画面并不光鲜,但是元素比普通FC游戏多很多,一开始过场动画是一个飞机失事,游戏中操作的人物可以跳的很高,而且起跳摆起手来的姿势像是中国僵尸那样,导致周围的一些小伙伴称之为“僵尸游戏”,房子上的雪球还会掉下来。关卡一开始有一个很长的,长满尖刺的坑,根本跳不过去,需要用手抓住上面的绳索荡过去,游戏里如果长时间不烤火还会冻死,记得还可以在商店里购买类似枪的道具,通关结局是搭上一个飞机离开,但是如果闯关失败,则会看到一个人头像的照片,看着有点像成龙,这游戏我只见过一个人通关,就是我弟,但是我询问我弟更多的信息,他说只有点印象而已,当时我们获得卡带都是被拆开壳子的芯片,所以也没有关于卡带封面的记忆。

我在百度搜索了很多关于游戏的关键词,在知乎和v2ex上都有提问,都没有答案,询问儿时的一些小伙伴他们有些只是有印象,有些甚至都不记得自己玩过这样一款游戏了。后来无意中发现百度贴吧的fc吧,里面有很多fc大神,有一个人给我答案,我去搜了下视频果然是我记忆中的那个游戏,它的名字叫《绝岭雄风》英文叫《cliffhanger》

阅读全文 »