面试笔记

三月下旬,病还没有完全康复.我便赶往上海.只因为认识的一位菊苣帮我投递了一下简历.而且据说人家对我简历印象还不错. 现在想想,自己还真是幼稚...这句话就像你问店里员工我的菜怎么还没上,人家一定会回答:马上就好了,都已经下锅了. 刚刚抵达上海的时候已经是晚上,这是我人生第一次去上海,有种乡下人进城里的感觉.带着梦想与希望,来到了这个地方.

当天晚上便和 HR 联系面试时间,第二天早上 10 点就赶到约好的地方进行面试.说实话第一次面试,没有任何经验,炮灰的概率太大了. 虽然我有心理准备,但是面试的时候还是有点小紧张.不过面试的都很基础,例如问了我 python 如何进行文件读写,这不是太简单了么. 直接查看文档这不就几秒钟的事情么,简单到我根本不会去记住文件读写的具体写法.因为用的时候自然会去看文档,当然了熟练的话 就直接写出来了,我是一个对着电脑编程根本停不下来的人,但是给我纸笔的话反而写不好.这个文件读写放在项目里根本我都不当回事, 但是面试的时候尴尬的没回答好...后来菊苣也说了,这个时候你就如实回答查下文档不就行了么...

后来又去面试了一家公司,好吧.这回面试的公司主动反问我有什么想问的么...当时我就傻逼了,不是面试官考我么...我还问啥啊? 好吧,当时大脑空白不知道该说什么好就草草结束了这场面试,现在想想真是浪费了一次大好的机会.

第三次面试的是一家小公司,这家公司 HR 之前是知道我面试两家失败了的,然后她问了我一句:你有反思上两家面试的时候为什么失败么? 这可真是一针见血,虽然多多少少我知道自己的不足,但是还没有进行过深刻的反思,HR 就对我说了,首先,你说话太快,导致面试官很难听清 你到底在说什么,妈呀...我父母都说我说话太快.这确实是个问题,因为面试官不可能因为你说话快就让你再重复的,也就一带而过了. 第二就是说话紧张,很难发挥自己平常真实的一面,其实我是一个很怕生的人,让我不紧张实在太难了.第三就是转移话题,面试官问的问题要 就事论事,别扯太多,这个,说实话因为上两次面试没有好好的表达自己的能力这回就想多说点证明自己的实力结果还起了反效果... 第三次面试还是失败了,但是 HR 确实给我很深刻的印象,能告诉面试者不足的 HR 才是好的 HR,没有任何音讯的公司,以后我能力出众的时候你来 挖我我也不会去的,这体现的是一个公司的态度.

三次面试之后我便回学校了,因为上海的生活成本实在太高,我 HOLD 不住,在学校的时候把毕业论文搞定再说吧.不过在学校的时候也可以继续投递 简历,反思下自己哪方面做的不好有待进步.还是在本校接受电话面试,成功的话再去公司才是正确的选择.毕竟对于我这样的死宅来说长途旅行真是 要命,状态不知道要几天才能调节回来...如果有菊苣有好的职位推荐的话,顺便弱弱的球内推,实习职位即可.方向有:前端开发,Python 开发和运维 职位.希望自己之后的面试能顺顺利利~

漫无止境的三月

三月...好漫长...整个 2 月不是过年走亲戚就是在家看 PDF,鸟哥的 Linux 私房菜,虽然自己用了一年多 Linux 桌面了,但是感觉知识还是 不够系统,于是又去把鸟哥的 Linux 私房菜好好读一遍去了...

感觉鸟哥的 Linux 私房菜写的超小白,有时候想跳着读,但又怕错过了什么...又放弃了,感觉读的有点很浮躁,说实话很多功能如果不常用 的话,也会慢慢忘记,不过还是有印象的,但是就不知道在哪个位置,这就是 PDF 的缺点了,如果是纸质书的话很容易再去翻阅需要的知识点, 虽然 Ctrl+F 搜索很好用,但是得到的结果总是不尽如人意,我个人还是喜欢纸质书.

光看书真的很没劲,于是我又开坑了...为了练习 python,我想当后端工程师啊!IE 一天不死我写前端就不会痛快! 新项目 (opens new window)就这么愉快的开坑了,前端懒的设计就直接用Bootstrap (opens new window)了,感觉 Bootstrap 也就只能用些组件的 UI, 布局神马的还是不符合我的胃口.项目部署的网址是:http://netkuu.icehoney.me/ 目前还是绝赞填坑中~ 前端后端全部自己一个人写,希望能把自己锻炼成 full stack developer~ 现在就差数据库练手了,好久没玩数据库了.

大家肯定会好奇为啥到现在还不去上学或工作,一直在家,其实由于种种原因,上了手术台,在家养病中.希望能尽快康复.我想出去挣钱啊 QAQ

每月一篇文章任务完成~

GUI和CLI的使用比较

GUI 和 CLI 也算是使用软件的两大流派吧,Win 下几乎都是 GUI 程序,Linux 下几乎都是 CLI 程序.因为两者面向的用户不同, 初衷也不同.今天看了<程序员修炼之道>这本书,可谓是有了更深入的了解.GUI 侧重于易用,CLI 则侧重于效率.

对于使用 Linux 的程序员,工作台就是命令 shell.在 shell 提示下,你可以调用你的全套工具,并使用管道,以这些开发者从未想过的方式 把他们组合在一起.在 shell 下,你可以启动应用、调试器、浏览器、编辑器以及各种实用程序.你可以搜索文件、查询系统状态、过滤输出. 通过对 shell 进行编程,你可以构建复杂的宏命令,用来完成你经常进行的各种活动.在 shell 下面,可以高效率的处理事务,并且 shell 可以完成 在 GUI 下几乎所有的任务.GUI 和 IDE 会让程序员变得更懒,更无知,各种辅助工具,例如自动补全可能让某些程序员连 asynchronous 这个单词都无法完整的拼写出来.

对于在 GUI 界面和集成开发环境(IDE)上成长起来的程序员,这似乎显得很极端.毕竟,用鼠标指指点点,你不是也同样能把这些事情做好吗?

简单的回答:"不能".GUI 界面很奇妙,对于某些简单操作,它们可能更快、更方便.移动文件、阅读 MIME 编码的电子邮件以及写信,这些都是你可能想要 在图形环境中完成的事情.但如果你使用 GUI 完成所有的工作,你就会错过你的环境的某些能力.你将无法使常见任务自动化,或是利用各种可用工具的全部 力量.同时,你也将无法组合你的各种工具,创建定制的宏工具. GUI 的好处是 WYSIWYG--所见即所得(what you see is what you get).缺点是 WYSIAYG--所见即全部所得(what you see is all you get).

GUI 环境通常受限于它们的设计者想要提供的能力.如果你需要超越设计者提供的模型,你大概不会那么走运--而且很多时候,你确实需要超越这些模型.注重实效的程序员 并非只是剪切代码、或是开发对象模型、或是撰写文档、或是构建过程自动化--所有这些事情我们全都要做.通常,任何一样工具的适用范围都局限于该工具预期要完成的任务. 例如,假定你需要把代码预处理器集成进你的 IDE 中(为了实现按合约设计、多处理编译指示,等等).除非 IDE 的设计者明确地为这种能力提供了挂钩,否则,你无法做到这一点.

你也许已经习惯于在命令提示下工作,这种情况下,本文就可以忽略啦~ 否则,你也许还需要我们向你证明,shell 是你的朋友.

作为注重实效的程序员,你不断的想要执行特别的操作--GUI 可能不支持的操作.当你想要快速地组合一些命令,以完成一次查询或某种其他的任务时,命令行要更为适宜. 例如:

在上周哪些 Java 文件没有改动过?

Shell

find . -name '*.java' -mtime +7 -print
1

GUI

点击并转到"查找文件",点击"文件名"字段,敲入"*.java",选择"修改日期"选项卡. 然后选择"介于".点击"开始日期",敲入项目开始的日期.点击"结束日期",敲入 1 周以前的日期(确保手边有日历).点击"开始查找".

这样的例子很多.shell 命令可能很晦涩,或是太简略,但却很强大,也很简练.同时,因为 shell 命令可被组合进脚本文件中,你可以构建命令序列,使你常做的事情自动化. 希望你看完这篇文章能逐渐接受 CLI 并熟悉 shell.多用你的命令 shell,你会惊讶他能使你的生产率得到怎样的提高.