Pulpcode

捕获,搅碎,拼接,吞咽

0%

就“编程像什么”这个问题,我思考了很久了,可以说每隔一段时间都会有新的想法,但始终没有一个令自己满意的结论。此篇博客尝试将自己思考的一些内容都总结出来。

1.武侠

上大学的时候,在图书馆翻到一本书叫《编程高手箴言》,这本书的作者同时也是播放器“超级解霸”的作者,梁肇新。算是老一辈的大神程序员,稍微大一点的人应该知道这款播放软件,当时中国盗版光盘盛行,但播放盗版vcd,dvd电影会很卡,正是超级解霸这种本土软件,用了一个“跳跃的算法”,尝试在卡的视频上进行“跳帧”,满足了当时老百姓用电脑看盗版盘的需求。这段故事在这本书里也有介绍。梁肇新在书的开篇,用“手中无剑,心中有剑, 手中无剑,心中也无剑”等几个阶段,来形容编程的几个阶段,现在看来是有点中二,但是当年看到这段文字的时候,确实心中有些激动,脑海中浮现出一个通过不断练习,让自己水平越来越高的一个程序员的形象。或者说不是一个程序员,更像是一个功夫世界里的侠客。

虽然我是90后,但我其实比较关注老一辈程序员的。我在学生时代,就特别喜欢听他们讲过去编程的故事,写汇编程序,在dos上开发程序,精通MSDN。当年有本叫《疯狂的程序员》的小说,是一个80后程序员将自己真实经历改编而成的。可以看到他们当时的编程环境差,日子艰苦,一本技术书翻到烂,但是又觉得很快乐。从他们的故事里,你会发现一种特别的武侠情节,也许金庸小说是他们年少时期的快乐源泉。这是一个简单直白的想法,也是许多程序员的想法,做好技术。通过练习变得更强,在这件事上,古今中外应该是统一的吧,比如在小时候看的动画片七龙珠里,甚至出现了“精神时光屋”这种东西,找一个异次元空间花大量时间练习,国外传过来这几年很火的10000小时定律也是这个思路。想要变得更强么?练习吧。

jingshenshiguangwu

但是不仅限于变得更强,学出境界,武侠情节还有另一层意思是武侠与人世间的是是非非,与世无争,所以类似侠客,还有一个词叫工匠,这个词同样描绘了一个苦心修炼技术,与世无争,牛逼又低调的人。貌似日本尤其吹嘘这种工匠精神,做一件事,把它做到极致。虽然中国也有很多的极致的工匠,比如玉雕,木雕啥的,但没有像日本吹的那么邪乎,动不动这个仙人那个仙人的。

阅读全文 »

对epoll不支持磁盘IO这件事,很长一段时间都是只知道结论,但是从来没搞清楚原因,网上找了一些中文的解释都让人看的云里雾里。最近在查找资料的时候,无意中发现如果自己按照“DISK Io”这样的方式去搜索英文资料,那可能不会找到想要的答案,因为在linux官方的叫法中,磁盘文件准确的称呼应该是“regular files”。然后我按照“epoll regular files”的方式得到的内容一下多了许多。最后也是得到了比较满意的答案,这里写出来分享一下。

阻塞和非阻塞

首先在谈论epoll不支持磁盘IO文件之前,先理清阻塞和非阻塞指的阶段是什么,我们在讨论IO操作阻塞非阻塞时,是指当你发起一个IO操作后,如果IO没有准备好,你的线程是否要停留在那里等待IO准备好。这里特别说明了只是说等待io准备好,系统真正开始io操作的时候,虽然也有耗时,但是那并不算讨论阻塞非阻塞的范畴。

接着在说回到磁盘IO这件事上,虽然linux的哲学是一切都是文件,磁盘和网络的读写都可以理解为文件的读写,但是文件和文件还是有不同的。比如说你并不能对一个磁盘文件描述符设置非阻塞,但是可以对一个网络io设置非阻塞。理解这事的核心点是理解阻塞发生的原因, 既你向操作系统发起io操作的时候,IO还没有准备好,比如在读请求的时候,缓冲区里的数据不够,或者在执行写操作的时候,缓冲区满了,这对网络来说是常态,因为你根本不确定网络连接的另一头到底什么时候会和你收发数据,所以默认阻塞是常态,然后才为了可以让你的程序不用傻等在这里,才设计了非阻塞。但是对于磁盘来说,根本就没有等待可读或可写一说,因为它一直是就绪的,始终可读可写,POSIX规范中明确指出了这一点。我猜测是设计者当时也觉得给磁盘文件io设置非阻塞没什么意义。

阅读全文 »

自己曾经被别人面试过,也当过面试官面了很多人,在出面试题这件事上,渐渐了“堆积”了一些自己的想法,在这篇博客里总结分享出来。

那么我眼中好的面试题应该是怎样的?我会尝试抛出自己的一个个观点,然后再去用例子论证它们。

好的面试题应该是有目的的

你可能觉得我上面这句话像个废话,但有些面试题我真的觉得没想过要考察啥,没想过自己到底要招聘一个什么样的人。

试想这样一个场景,一个面试者从网上找了一些面试题,然后都做了一遍记住了,而刚好作为面试官的你也从网上找了一些面试题,和面试者找的题刚好重合了,这样两边在面试的时候都很流畅,你问的问题面试者都能回答上,但是这最后的结果是你想要的么?很明显不是。你需要的应该是一个懂得解决问题的人来解出你的题目,而不是一个善于背题的人。

阅读全文 »

故事

在未来的某天,人类经历了第三次世界大战之后,赖以生存的家园被核武器毁的面目全非,只有小部分幸存者在还没有被辐射完全侵蚀的废墟中苟延残喘。靠着战前遗留下来的物资生存。

这时画面中一辆破旧的皮卡从远处驶来,一个看上去三四十岁的男人开着这辆皮卡,男人看着身体结实,留着胡须,脸上还有一些伤疤,皮卡后面拉着各种物资,像是食物,药品,衣物,汽油,铲子工具之类的。皮卡上有个磁带机,放的是那种你根本不想听的七八十年代的迪斯科。但是在这个末日下,你又能有什么选择呢,有盘能用的磁带已经是万幸了,真正让你头疼的是怎么去寻找食物,怎么从别的废弃车辆中搞点汽油,还有怎样不会被自己的同类当作猎物杀掉。

车行驶了一段时间,男人看到了远处几个身影在招手,可能是求救,也可能是个陷阱,男人拿起了挂在车窗旁的望远镜,发现是确实是几个人招手求救。

男人开车过去,看到四个女人站在那里,穿着破旧的衣服。这种场面男人应该见过很多了,所以很冷静的点起一根烟说到,“抱歉我的车拉的东西太多,只能再拉一个人走。”

第一个女人先开口说话了,那个女的身材高挑,即使衣服破旧,没有化妆,但依然可以看出很有姿色,在这种生活状态下依然留长发。“我曾是一个时装杂志的模特,拿过很多次选美冠军,曾经追我的男人排成队,上学时班上每个男生都表白过我。很明显你应该带我走的。”

阅读全文 »

一直想写一篇这样的博客,用看过的电影,把整个的历史线穿起来,之所以这样是因为当今大部分好看的电影都是美国人拍的,只有了解他们的历史文化才能获得更好的观影体验。否则只是隔靴搔痒。

而且这篇博客我会在后续阅读到其它书籍电影之后,不断更新这篇博客的细节,或者是修改一些错误。

1492,哥伦布发现新大陆

他以为到了印度,所以称那里的人是印第安人(indias,西班牙语的印度人),实际上到了美洲,而且哥伦布应该不是第一个发现美洲大陆的人。
后来经过阿美利哥·维斯普西的航海考察,确定了这个新大陆美洲,后来有人以他的名字命名这块大陆为“阿美利加”(America)。

在这之后的日子里,欧洲的各个国家开始对美洲大陆进行殖民。

1565年,西班牙人建立圣奥古斯丁

这是欧洲人在北美洲建立的第一座城市;

1620年,一批英国清教徒乘坐五月花号抵达普利茅斯港。

五月花号公约签订,这是美国宪法的雏形。

1718年,法国人建立新奥尔良。

在殖民的过程中,除了杀害,驱赶印第安人,还包括欧洲各国之间争夺资源的战争。

1757年英、法两大帝国在美洲争夺殖民地的七年战争。

在电影《最后的莫西干人》中讲述了英、法两军在殖民地战争同时又与本地美洲印第安人产生冲突,奥斯卡影帝饰演印第安部族-莫希干族的霍克依爱上了英军上校的女儿可娜,就讲述了这段历史。
the-last-of-the-mohicans

阅读全文 »

CPU

问题:linux有哪些用来查看CPU的命令?

命令:top
简介: 查看系统运行的基本状况

computer-system-structure

命令:mpstat -P ALL 1
简介: 每个CPU的占用情况

computer-system-structure

这些参数包括:

  1. User —— 运行的应用程序
  2. System —— 操作系统
  3. Interrupt —— 硬件中断
  4. Wait —— 等待I/O操作的完成
  5. Steal —— 与虚拟机无关的周期
  6. Idle —— 未进行任何作业
阅读全文 »

最近一直想找地方散散心,想起还有几天年假索性修了算了,我思索了一下去青岛或者大连这样的海滨城市,刚好我有一个大学同学在青岛,就买了来回的高铁票,单程大概300多元。
当晚联系到他,大概帮我规划了下行程,我就在火车站附近订了一间如家。这间如家很便宜,111元的房子加上我25元的酒店优惠券,一共才花了86元。朋友说这个地段的酒店,旺季的时候大概能涨到500左右。

出发前我带了四件内衣和四双袜子,因为想到沿海地区应该会很潮湿,估计洗了也不容易干。
然后是一些洗漱护肤用品,防晒霜(我想沿海城市防晒霜必不可少,虽然现在也才三月份),小瓶的洗头膏,洗面奶,面霜,牙膏毛巾。
我准备了一些常见的感冒和拉肚子的药,划伤需要的创可贴,扭伤用的云南白药喷雾,还带了一把雨伞。
剩下就是kindle,电源线,ipad,移动电源,耳机等用来打发时间的电子娱乐设备。哦对了,我还带了一个索尼的黑卡3相机,这款卡片机非常的精小实用,能满足我大部分摄影的需求。我没有买单反,因为太沉,而且很多功能我也用不到。我本人并不喜欢旅游一路背着个沉甸甸的相机到处乱拍,到最后完全没玩好的感觉。

我在旅行的时候,会把带的东西列一个清单,这样我在离开的时候就可以check是否有遗漏的东西。
当然还有防止手机丢失的纸质电话薄,钱包里的一些零钱,坐公交用。

阅读全文 »