K.I.S.S. – 简单哲学 Linux, Freedom, Arch, Python, Gtk+, C … Keep It Simple, Stupid!

6四/1026

最近的大小杂事

好久没有更新博客了,确实是忙翻了,很可能还会接着忙下去……生活不易啊……

先是上旬 的 HR 打来电话,说我当时的面试表现还过得去,能给我一个实习机会,问我来不来。这种机会我当然不会错过啦,于是开始探讨实习事宜,签署实习协议。

还没忙完呢,中旬考研成绩就出来了,本来以为没什么希望了,没想到居然考了个 316 分,对于我那种学习方法来说应该算是神迹了吧……很快北航复试分数线出来了,290 分,我居然过线了……好吧,开始忙复试吧……

然后学校突然召集大家,一个星期内确定毕业设计题目,之前开学半个月都不着急,现在急个屁呀!本来想在 做题目呢,结果还没商量好,计划就不得不夭折了。这个时候老师手里的 Linux 相关题目全让人选走了,最后不得已,灵机一动,自己想了一个题目,《Linux 下图形界面下载工具的设计》,虽然简单了点(目前计划基于 aria2),不过这是我觉得用 Linux 最不顺手的地方了,大家觉得怎么样呢?

题目就这样定下了,不过因为接下来仍然忙得要死,现在还没什么进展,不过六月之前搞定的话,应该不是特别的难吧……

下旬,实习的协议已经全签好了,4 月初入职。

这时候到了北航的复试了,北航的软件总共招 60 人,除去 31 个保研的,其他人竞争那 29 个名额,惨烈吧?来复试的还有不少北航本校的,另外不少分数上了 380 以上的,看看我自己的分数,都觉得考上的几率有点惨不忍睹……

英语复试倒还简单,自我介绍加上几个小问题,专业课面试就变态了,桌上一堆纸条,让你抽题!杯具就这样产生了,连抽了 15 道题以上,都是数据库题目,哥可是没学过那玩意的啊……又抽了两道操作系统和网络的题,答的也不理想,立地成仁了……(话说面试时有个老师居然在屋里打电话,太不尊重人了……)

复试杯具后,心情很不爽,睡了一天,起来准备调剂。

调剂时看中了两个学校的软件学院,一个是北交,一个是中科大。北交的软件貌似没有中科大强,不过中科大地处合肥,学习要去苏州校区,地理位置未免是个问题。接到两家学校的复试时间还犯了冲突,北交 4 月 1 号,中科大 4 月 2 号,权衡了一下,考虑到以前还曾用过中科大的 Ubuntu 源,决定去中科大。

交复试费 100 元、打印成绩单、复印各种证件、去海淀医院做了个 16.5 元的体检、买火车票,各种折腾之后终于踏上了前往合肥的 T63 次列车,无座。

到达的时候天正下雨,一群人在火车站门口卖雨伞,我有先见之明,提早拿出来——结果淌了一鞋水。

合肥的公交很不一样,没几个人刷卡,都是无人售票,基本靠投币,同时在合肥买火车票、去超市、去餐馆找零也全是一元硬币,很是神奇,另外一个神奇之处是公交车左侧也有门,有些站只能从左边上车……

这批面试的有 700 多人,走在街上扔个砖头都能砸死几个,找人合住旅店当然十分简单,当然前提是男的。

不过这样的基数,导致我从 2 号早晨排队排到 3 号下午才面试完,这次没抽题,几个老师抓住我的专业课猛问,回答一塌糊涂,英语受此气流影响,也说得哆哆嗦嗦,那个老师肯定没听懂……

4 月 5 日收到中科大录取通知。

4 月 6 日前往 实习。

终了。

PS: 机器很好,Dell 的四核 + 4G + 320G + 3450,速度爽死……

PS2: 以后工作日白天应该都会上班,继续忙死……

PS3: 七月份的尾巴,就要去中科大补专业课,虽然九月份的前奏才会开学……

PSP: 现在仅仅是 Blog 荒废的初级阶段,并将长期处于初级阶段……

标签: , 26 评论
13三/1012

有图有真相,Samsung N148 上网本使用报告~

寒假之前就有意向想要买一台上网本了,主要是宿舍里太吵,不利于学习,用台式机让我后悔死了。因为有了台式机了,暂时也不想换,所以用上网本作为便携性的补充最好不过了,用来编编程、看看书、听听音乐,没有其他需求了。

翻了好长时间网站,才找到三星 这款上网本,这款上网本新品上市,成本降低,性价比很高。采用了 Atom N450 的 CPU,主频 1.66,比主流 N270、N280 要强上一些,当然性能上差别不大,据说功耗上要低不少。显卡是 GMA3150,也是比较新的,当然上网本上也不要求它能看高清了,看 720p 一点也不卡。1G 内存有些小,250G 硬盘还好,6 芯电池续航比较好,摄像头、读卡器、VGA 接口,唯一可惜的是没有蓝牙。

这款上网本,在新蛋上买是 2388 元,比旧一些的型号联想 S10-2、三星 NC10 之类的还要便宜不少,就是到货太慢,等了一个星期,不催还不给我发货。

有图有真相,看看 10.1 英寸的 和 19 英寸的液晶屏的对比,外加我超级乱的桌面:

N148_2.jpg

说实话,还是感觉 10.1 有点大,带起来没有想象中的方便,但是太小了屏幕上也放不下什么东西了吧……

3 月 8 号拿到的本本,先划出二十多 G 用 U 盘装个 Win7,很遗憾 Win7 引以为傲的驱动识别连显卡都识别不出来,只好用自带的光盘安上了驱动,当然 是没有光驱的。

其他的空间用 Arch Boot 来装 Arch Linux,这次尝试了一下 LVM,本来想把 /boot 放在 LVM 里面,然后直接装个 GRUB2 引导,不过折腾了半天没有搞定,最后用了 lilo 引导,lilo 配置简单,轻量小巧,其实用来做启动引导器也足够了,就是每次更新内核要重新运行一下 lilo,不然会进不去系统。

Intel 的驱动一向做得很好,KMS 的支持 works out of box,声音、无线都不需要额外的驱动,触摸板的滚动条也正常使用,装上了 KDEMod4,一切运行良好。

N148_1.jpg

三星的不少快捷键在 Windows 下也要安装专用软件才能使用的,很显然这些专用软件没有 Linux 版本,不过群众的力量是强大的,用 ArchWiki 里 N150 的方法,很容易就搞定了 Fn 快捷键的问题。

启动很慢,不过可以使用休眠的方法。上面那篇文章中 N150 里休眠不好使,不过我的 却是好使的,按照 ArchWiki 里 Pm-utils 的设置方法,很容易就搞定了休眠,唯一注意的就是 Wiki 中 Troubleshooting 那一节,一定要加 resume 这个 hook,不然是不会从 swap 恢复的。使用休眠之后,启动 只需要 30 秒即可。

唯一遇到困难的是蓝牙耳机,不过不是上网本的问题,是 KDE4 的问题,phonon-xine 死活不支持蓝牙输出,换成 phonon-gstreamer 就好了。

因为 没有内置蓝牙,只能用外置的蓝牙适配器,还好我没有那么多 USB 设备,三个 USB 口暂时足够用了。蓝牙耳机是前几天移动充值 500 RMB 送的,Moto S305,很方便,续航能力很强,就是和眼睛直打架,夹得耳朵疼。

N148_3.jpg

键盘是 93% 的标准键盘,打起字来没有感觉很挤,不过可能是我还不适应上网本键盘,打字总是打重,按一下出两个字……

N148_4.jpg

之前在网上看到说硬盘声音很大,有“海豚音”什么的,虽然看起来就是枪手,不过心里还是惴惴,不过拿到手里之后发现很安静,到自习室里面才发现硬盘有微小的声音“咯咯——嗞——”的声音,不仔细听是听不出来的。

散热也没有遇到问题,左下面的出风口有点热,不过在合理范围之内,可能是我没有放视频的原因……

其他是一些小问题了,扬声器声音比较小,键盘上 Home、End 键要靠 Fn 才能按出来,电源按钮的位置太过隐晦,上表面是指纹收集器、不得不包个膜,各个接口都没什么防尘设计之类的……

不过这些都是小问题了,总体来说,现在看还是很满意的。有了 ,以后天天去自习室,这学期一定要多看书、多编程!嗯嗯!

标签: 12 评论
3三/101

另一个图形界面批量改名工具——GPRename

今天用到批量改名的功能,本来想要用 Linuxtoy 介绍的 pyRenamer 的,不过通过 AUR 安装的时候发现 pyRenamer 的服务器杯具了(法克及。爱抚。打不留!)只好寻找一个替代产品,这就找到了 GPRename。

GPRename 是基于 gtk2-perl 的批量改名工具,我们知道 perl 在正则的使用上是十分灵活的,用来做改名工具最适合不过。

不知道是不是和 pyRenamer 有什么渊源,两者的界面十分相似,GPRename 支持对文件名改变大小写、插入、删除、替换以及批量改为数字文件名的功能,在正则表达式的帮助下足够应付大多数情形,对于那些有这种需求,又懒得或者不会自己编写脚本的人一定很有用。

GPRename1.png

GPRename2.png

GPRename3.png

GPRename4.png

想要安装 GPRename,在 Arch 里只需要使用下面的命令即可:

sudo pacman -S gprename

1三/106

GNOME 2.29 的新改进

这两天回到学校,有惊无险地把 Arch 更新了,到 Arch 官方源上一看,发现 gnome-unstable,也就是 GNOME 的开发版本 2.29 已经在里面了,而且这次有了 x86_64 的包,作为一个更新狂,当然赶紧加上源更新。

有用 Arch 的同学可以在 /etc/pacman.conf 里面加上这两句话来开启 gnome-unstable 的仓库:

[gnome-unstable]
Include = /etc/pacman.d/mirrorlist

GNOME 2.29 带来了那些更新呢?我来说说对我来说比较有用的:

  1. Nautilus 默认为 Browser 模式,增加双面板视图。
  2. DeviceKit-disks 重命名为 udisks,带来大幅度改进。
  3. Evince 支持反色,支持查看 PDF 文件的注解。
  4. Gnome Terminal 支持无限回滚,可以设置粗体字的颜色。
  5. Vinagre 支持修改色深,JPEG 有损压缩,通过 ssh 隧道连接 vnc。
  6. Tomboy 支持后台自动同步和粘贴 HTML。
  7. Empathy 多项改进。
  8. users-admin(用户和组)界面重新设计,功能更加强大。
  9. Devhelp 全屏模式。
  10. Anjuta 增强了对 C, C++ 中 ".", "->" 和 "::" 的自动补全支持。

当然更新不仅仅是这些,这些更新都会反应在将来面向普通用户的 GNOME 2.30 上面。

看一些截图,是在 Ubuntu 上截的:

gnome-2.29-1.png

gnome-2.29-2.png

gnome-2.29-3.png

PS:在新蛋买了一个三星 上网本,付了费才发现新蛋正在闹“发货门”,不知道会不会杯具……

22一/108

Personas 给你的 Firefox 换件衣裳

3.6 今天发布了,并且以追新著称的 Arch 很快就将其打包到 testing 源里,作为不怕死的小白,我当然立刻安了上来。

其他的功能改进还没有发现,首先第一次启动的新版 就自动弹出了一个网页,,这是什么?

personas.png

看出我的 跟上次相比有什么不同了么?为了展示效果,我特别将一些没用的工具栏都打开了,这样就可以看到完整的图片了。

是的,这就是一直处在 的实验室里,现在终于推出的 ,它给 添加了即时换肤的功能,而不用再重启了!

好吧,就如你所看到的,这就是一个背景图片加上一些前景、背景色的搭配,是不是很熟悉?是的,我也感觉,这跟 Google Chrome 浏览器不是如出一辙嘛?

不过 里面的主题显然要比 Chrome 那里多得多,而且将鼠标移到 网站上的图片就可以即时预览,很是方便。

如果你喜欢这种个性鲜明的主题的话,赶快去 Personas 的官网试一试吧~

PS:Arch 升级了 libpng 和 libjpeg 之后天下大乱,一半的程序都杯具了……还没有升级的同学千万别升这两个包!

19一/108

Tomfox 让 Tomboy 成为 Firefox 的收集面板

最近在看《Linux C编程一站式学习》,发现了很多以前在 C 语言学习过程中没有发现的问题,于是想着记录下来。作为一个文明人,当然不能动笔来记,于是就想到了一直被我扔在角落里的 Tomboy 来。

Tomboy.png

然而,每次从网页上复制下来保存在 Tomboy 里面也不太方便,于是到 附加组件的网站上一查,查到了 这个扩展,有了这个扩展,只需要选中网页中的文字,从右键菜单中选择“Create Tomboy note”就可以了~记录中还会有来源网页的地址链接,很容易就可以找到来源,比自己手动复制强多了。

另外, 还提供了几个有用的选项,可以自定义标题、记事本、是否立即显示便签等等,很好用。

Tomfox-pref.png

我使用 Tomboy,通过它的备份插件,将便签同步到了 的子目录,可以实现很方便的备份。

记得以前用傲游浏览器,最常用的就是它的收集面板,现在貌似还可以同步到服务器了,现在使用 Tomboy 和 也实现了类似的功能,可以方便地采集网页上的信息了。

你还在用收藏夹来保存有用的文章么?试试 吧~

下载地址:Tomfox

15一/101

让 Firefox 的纵向空间无限大

自从在异次元看到一篇《FireFox 仿4.0版超酷全半透明玻璃特效皮肤》之后,我就一直在研究怎样让 更加方便,不仅仅是像《使用 Stylish 打造个性化 Firefox》那样调整组件的外观颜色,还要尽可能地增大显示空间,让每屏显示更多的内容。

先看一下效果图~

firefox-area.png

配置方法:

1.用 自身的定制工具栏功能,把想要的工具栏按钮转移到菜单栏上去。

2.安装扩展 Hide Caption(隐藏标题栏)、Fission(在地址栏显示进度条)、Omnibar(整合搜索栏到地址栏)、Tabkit(标签栏树形显示)。

3.(可选)安装主题 Strata40 及相应扩展 StrataBuddy,使主题具有 3.7/4.0 元素。

经过这样一番配置,纵向的工具栏就只有两个,其中的状态栏我想了很多办法都没办法去掉的同时保留右下角的那些功能按钮,只能作罢。

标签栏放在右边,是因为大多数网站在宽屏下观看都会有很大留白,即使没有留白,对于文字网站来说,横向太长也不利于阅读。

关于这项配置,大家有什么想法么?欢迎前来交流~

PS:关于谷歌这件事,我想说的大家都已经说过了,只能说一句:Fuck!

最后送上几大发明的图片:

chinainventions10-hp.gif

12一/105

推荐关于 POSIX 线程的几篇文章

万恶的考研终于结束了,虽然很可能明年会接着考(汗……),不过暂时算是放松下来了。

接下来的时间里,希望能够巩固一下自己的基础知识,学习一下 Linux 下 C 环境编程之类的,搜索了一下,发现 IBM 中国上不少好文章。

如果你对线程编程感兴趣,却苦于无法入门的话,不妨看一下下面几篇文章:

POSIX 线程详解》:这是由 Gentoo 创始人 Daniel Robbins 大牛写的系列文章,一共有三篇,极力推荐!除了第三篇稍微有点难,其他两篇都是浅显易懂,很好的入门文章。

Posix线程编程指南》:作者似乎是麒麟操作系统的工程师,专攻多线程一块,文章对 API 讲解比较透彻,可以作为上面文章的补充和扩展来看。

pthreads 的基本用法》:这篇虽然短了点,但是对互斥和死锁讨论的比较多,例子也比较有趣,值得一看。

虽然这三篇文章都比较老了,但是 标准也没什么变化,应该是足够了。

另外,这里有一篇《Linux环境进程间通信》是关于进程的,写的也很全面,正在研究中……

标签: , 5 评论
3十二/0935

今天去 Redhat 面试了

本来是安排在 11:30 的,不过面试进度比较快,就有 的 GG 打电话叫我提前去了。

面试地点在旁边的北航,如心会议中心,签到、照相之后,让我在贵宾厅的那桌等着,我一看,我那桌一个人没有,旁边一个桌子坐了四五个人……看来报我这个 Quality Engineer - Kernel (General) 这个职位的人不多啊,我猜那一桌人多的,估计是 I18n 的,看了一圈,没一个像是本科生的,一个个老气横秋,太阳穴突起,一看就是练家子……

很快把我叫到贵宾室门口,又坐了半个小时,想偷听一下屋里面在问啥,也没有得逞。斜对面一位看起来像是博士的,跟我大眼瞪小眼,少顷,我肚子一痛,受了内伤。

总算进了传说中的贵宾室,一 GG 一 MM 的组合,上来没有废话,GG 飞给我一张纸,“十分钟时间,读一下”。我一看,上面讲的 GCC 4.3 的 BUG,就是这篇文章,然后问了我几个问题,问讲的什么,BUG 怎么重现之类的,这是考我的阅读能力了。

然后 GG 用英语问我几个问题,开源软件的测试和传统软件的不同,我加入红帽的优势,这是考我听说了。

然后 GG 又飞我一张纸,两个智力测验,就跟传说中 Google 爱考那些题一样,我受宠若惊,没答上,这是考我智商了。

然后 GG 又飞我一张纸,上面一小段话,上面是个具体的工作,然后问了问我该怎么安排,出现问题怎么办之类的,这是考我的思路和应变能力了。

好吧,我知道大家肯定关心 MM 了,MM 当然不是花瓶来着,问了些我的 Linux 经验,用什么发行版啦、哪方面比较擅长啦、常上什么内核相关网站啦、对 rpm 熟不熟啦(天知道我虽然给 DEB、pkg.tar.gz 打过包,就是没接触过 RPM ……),然后问我,“Shell 的内置命令主要是干什么的?存放在哪?”我有点发蒙,内置命令我就想起 cd 和 export,其他还真想不起来,存放在哪我回答个“Shell 的库”,结果 MM 问我“Shell 有库么?”,汗……现在想来应该是硬编码到 Shell 里面的吧……

好吧,总之这次 的面试感觉状态不佳(尤其肚子痛),问了很多问题,我都感觉问题比较笼统,无从下手的感觉……唉,最后两位面试官大概对我都不抱希望了,提问的时间都没给我,直接让我等通知了……

说实话,Linux 内核方面我连初学者都算不上,不过确实很感兴趣……唉,还是以前学的太过杂了,看见什么都想学学,虽然现在什么都能插上两嘴,毕竟不够专一……

总体来说, 的面试比较注重实力和潜力,没有常规面试那一套套,整个面试过程,直指面试者的能力本身,这与上次 的面试相比,又是一种不同的风格吧……

标签: , 35 评论
15十一/0922

Amdocs 面试和 Redhat 笔试

考研进入灼热期的同时,找工作的事情也渐入繁忙时期,这段时间,大概是出生以来最忙的时候吧……

之前在北交(面试一紧张,记成了北邮,郁闷)参加了 的笔试,昨天又去参加了面试。 这个公司大概比较深藏不露,以前从来没有听说过,不过一查之下才发现是电信相关软件的重要软件商,似乎在融合通信方面世界第一呢。前几年收购了国内的朗新,才进入的中国市场。

笔试题分为数学逻辑题和技术题,技术题又包括 C++、Java、数据库的题目,C++ 的题比较简单,不过大多数要答准也不太容易,考验基础吧,另外两样用得很少,基本上没怎么答……总体来说是比较中规中矩的题,没有像百度一样,全是数据结构……

收到面试通知后,做了不少准备,昨天晚上去了学知园的科技财富大厦,参加了面试。

虽然提前一个小时动身,但是等车还是用了好长时间,总算提前五分钟到了,到了九楼,一看,门口还是朗新的牌子,没有预料中的其他面试者,就我一个,不过看登记表上有不少其他面试者的记录,大概是时间错得很开吧……

负责技术面试的是两个 GG,一个主问,另一个主观察,大概问了我一下项目、兼职、实习的经历,比较擅长什么,对 Linux 方面哪里比较感兴趣。从这里我了解到,原来 的后台程序都是 Unix 环境的……GG 还问我数据库学得怎么样,我尴尬……

哦,对了,有个技术问题我没回答上来:C 里面的函数指针,在 C++ 里面可以用什么替代?

当时紧张了,忘了跟 GG 要答案了……C++ 里面一般都是 method 吧,用函数指针做什么呢……引用的话,只能用来替代普通的指针吧,函数指针也能替代么?还是说虚函数?呃……好像不沾边……谁知道的话告诉我答案吧!

不知道是不是每个人都有被 HR 面试的机会,反正我是被面了,面试的是两个美女……大概问了一下我家里的情况、对考研的看法、对工作地点的看法之类的,然后突然让我用英文自我介绍……我蒙了,多少年英语没动嘴了,张口倒不是不会说,不知道该说点啥……一紧张,学校的名字忘了用英语怎么说了,汗……英语老师,给您丢人了,你来惩罚我吧……

面试经历就是这样,总体来说印象不错,不过我表现得还是不够好……HR 说两周内会有结果……

然后今天上午,又爬起来去清华参加了 的笔试,呃,这个不用介绍了吧,多少人梦寐以求的公司,看笔试人数就知道了,虽然 Linux 方面比较冷门吧,也占了三个教室呢,根据上次宣讲会的经验,估计会有不少是硕士和博士。

去笔试要打印版的面试通知,防止霸王笔,看了一下其他人的通知,看到的都是 GMail 大大的图标……心里压力一下子就大了起来……

的试题纯英文,看起来到不困难,不过还是有个别词不懂,尤其是测试相关的题,从来没有看过英文的文章和书籍,有些名词叫不准(而且好久没有看测试这一块了)……

考题上,分了必答题和职位选做题,必答题又包括了基础知识(操作系统、组成原理、网络、数据结构)、Linux 相关题、脚本语言题,Linux 相关的题答的比较顺手,脚本主要考 Shell,基本靠蒙,最后分别考了两道 Perl 和 Python 的题。基础知识最难了,考的网络协议啦,内存类型、南北桥之类的知识,晕了……

我报的内核测试和 I18n(不过后来工作人员打电话给我说只能报一个,只好选了内核测试……),后面又分别答了质量保证、C 语言、内核、I18n 的选做题,感觉不是太难,不少问题相关知识都听说过,但是都很难保证答对……

相比 的出题风格比较灵活,我也曾想象过如果我出题会怎么出,结果 和我想象中的出题方法差不多:通过一些细节来鉴定一个人对电脑的使用经验,比如怎么删除文件名是 * 的文件,ln -s 的参数顺序等等,这些没有一些经历、光是靠虚拟机+看书的人是很难了解到的。编程题也没像百度一样搞个二叉树遍历,而是使用提供的 api(iconv)来编一个函数(把 gb2312 编码的字符串转换成 utf8 的),更加注重实战,而不是背书吧……(隔壁有个考研的同学把数据结构书上的算法全都背下来了,强悍……)

总体来说, 的笔试发挥一般,不是太好也不是很坏,就算能够过笔试这关,面试能够通过的机会也很小(据说面试要跟老外英语聊天……),好吧,不管怎么样,都是一段不错的经历吧,至少更加明白自己的差距和短处在哪里了……

明天还有智乐的笔试,智乐听说过么?Gameloft 哦……我手机里面还有他们出的游戏呢~