1. 常用的workflow

    入Mac三个月了,除了 coding 平时做的事无非就那几样:surfing, writing, watching... 因此使用的应用及服务基本都固定了,这里整理下常用的,不是狭义的特指Alfred的workflow。部分是以前玩 Linux 的经验,不定期更新。 基本原则 国外的服务优先 自己的东西/服务优先 跨平台的优先 不用flash优先 开源的优先 还在维护的优先 轻量级优先 命令行优先 没用到java或ruby的优先 python2优先 可离线使用的优先 免费的优先 上网 浏览器: Chrome + 20多个扩展。 主要扩展比如: Vimium: 以 vi 方式上网。最离不开的扩展 uBlock: adblock alternative 有道词典: 以前用Linux时常用,现在都是 command + control + d 了 lastpass: 密码管理工具…


  2. QQ实习Offer

    4月13号考完腾讯实习生的笔试,感觉还是不错的,题目挺简单的。第二天收到了一面的短信,在隔天上午。我是认识的人里最早去面试的,按职位来的吧。 一面 4.15 等到第二天要面试我才在网上搜面经,一搜我才知道原来技术运营本质上是运维……然后看到那些别人被问到的题目我觉得我悬了,有些东西甚至都没听过……那天晚上艰苦复习理论基础到两点多才放弃挣扎。 第二天十点到华工酒店,排队、签到,然后被告知在323房间。到那里能看到挺年轻的面试官在玩 MBA,以为要等他叫我所以一直傻站着。站了好几分钟等不下去了就去敲门,他才礼貌地请我进去。想想也是,我要是面试官我才懒得亲自去叫人 - - 自我介绍后他问 Linux用得多吗,然后就问知不知道用什么命令可以抓包,我想了下说 Tcpdump;他又问知不知道安全方面的命令,我又想了几秒说 iptables。其实这两个命令我只停留在“知道”的阶段,进一步问我可能就答不上来了,iptables 我在自己电脑和服务器都没有部署过,觉得不是很需要的样子 = = 还好他听完好像挺满意的样子,就转而说项目了。 问了我一个项目的内容,然后看我简历里好像用 Python 的居多,就问我…

    on interview, intern

  3. BASH 逆序字符串

    昨天腾讯实习笔试,投的技术运营岗,因为它的要求看起来不像其他那么高 - - 其实像我这种不想做底层、前端不精也不会 PHP 的都不知道如果真能进 BAT 能去做什么 …… 题目感觉不难,25 道选择题 + 3 道简答题。大都很基础,知识性题目,基本没有计算,一个钟就有不少人交卷了。 虽然签了保密协议不过我还是打算讨论一下其中一道简答题。其他两道简答题分别是 “ OSI 网络七层协议分别是什么及各自作用”, “一 XP 用户访问不了 www.qq.com,问如何排查原因”。 而第三道题目则是让你分别用 C 和 BASH 实现将一个句子的单词逆向输出。比如输入 i am a student,最后输出 student a am i。 利用 mtime 对 BASH…

    on shell, vimscript, bash

  4. 三个电面

    继上文,4月4号那天两点电面。上午没去上课,还是尽量多看一些 Python 的东西。其中找到了不知道在微博收藏里躺了多久的 Python学习笔记,一个国人总结的东西,很细。翻开后看了点内存管理的东西,下午面试时还是有点用的。 然后我顺手搜了下有没有人有这个公司的面试经历,结果真找到一个。他应该也是面的 Web后端,但他在博客里说问了好多基础的东西,操作系统,计算机网络,组成原理之类的东西。看完我就吓尿了,因为基础不扎实…… 一面 两点过一点收到邮件,是个链接,随即电话就响了,叫我点开那个链接,是个协同编辑的网站: collabedit,之前只在 Google Doc 里体验过协同编辑的概念。 自我介绍后马上就给一道题,很简单的脚本题,大致就是一个文件里有两列数字,代表 A 关注了 B, 现在要找出相互关注的人。然后就挂了,说十几分钟再打来。我还挺紧张的,前两分钟什么都写不出来。后来开始写就好点了,不过为了去重什么的写完觉得有点冗长,而且一点也不 pythonic 。唉…

    on python, interview

  5. 迁移至 Ghost

    好吧我 blog 又换了,清明觉得没事做就想着把博客前端修正一下吧,实在有点丑,最好用个漂亮点的 CSS 框架。结果看了下 Ghost ,我觉得给它个机会吧,结果一不小心就不想换回去了…… 其他的不说了,说下我遇到的坑。 首先是坑爹的网络环境,ghost 首页加载好慢,这点忍了,问题是 npm stall 时实在不能忍,要下的东西也多,于是我干脆在 vps 上直接部署了。 安装好就 npm start,挺好看的。有个 /admin 页面供管理,里面还支持多用户。似乎他们的目标是想像 Wordpress 一样做成建站利器。 然后我注册自己用户后试着发布文章,提示我没有发布权限,"you do not have permissions to add posts"。不解,google 了下居然几乎没有遇到我这种问题的…

    on blog

  6. 一道 python 远程笔试题

    看到某公司的官方招聘页面有“Web后端开发工程师”,于是三月就把简历投了一下,然后收到 HR 邮件,说先进行一下笔试考核,让我一周时间完成一个小 project 。题目其实就是做个 website ,用户在前端指定关键词,后端要把包含该关键词的 twitter 推文或微博内容 实时反馈给用户。 看到这题目其实马上想到的是 node.js 和 socket.io ,但我想用 Python 写,而且应该是 tornado 框架。于是去翻了那本忘得差不多了的 Introduction to Tornado ,这本书其实挺好的,除了少部分内容有点过时以外,比如它里面的 tornado 版本才 2 点几,还有里面用到的 twitter search API 现在也已经弃用了。于是我看了里面 Asynchronous Web Services 这一章,作者也是要实现一个实时的东西…

    on tornado, websocket, twitter

  7. 入手 kbt race2

    上周一淘的键盘终于到了。这辈子还没用过好的键盘,此前一直听说机械键盘很爽,专门搜索过不同轴的特点,还专门去 youtube 听它们的声音,但毕竟如果没有亲自敲过永远不知道是什么感觉。所以对机械键盘其实早就想入了,但身为穷学生。。。 三月时终于不再犹豫了,于是才开始比较不同的机械键盘。首先确定轴,不打游戏主打代码的话,根据大家的反馈选择青轴,虽然听说声音很大,不过我觉得应该也就那样吧,能大到哪去 - - 然后是长度,我觉得数字键对我没什么用,方向键虽然用的不多但有也是不错的。所以长度的话 60% - 80% 吧。然后是价位,由于是第一把我觉得 < 500 吧。。。 tb 看了下这种价位好像大都是大陆产,也有 cherry 的,不过先不说 cherry 这种价位的好坏,每次看到 cherry 那扁扁的样子就不喜欢,所以从一开始我就没把 cherry 纳入考虑范围。估计等哪天我亲自摸到 cherry 的键盘时会笑过去的自己多…

    on keyboard

  8. 一次web优化经历

    在 V2EX 看到有人分享了 99¥/year 、1G 内存的 vps ,身为穷逼一时心动就入了。当晚 ping 值平均200ms,比起这个 blog 已经快了,觉得真赚了,一下子就把平时习惯的配置都在上面部署了一趟。不得不说很享受配置一个全新 Linux 的感觉,不过考虑到以后越来越多这种情况,应该设法把它搞成自动化的。 结果第二天 ssh 过去超慢,再 ping 一下居然 500 多……然后从那到现在 ping 值都有至少三四百的水准 orz 。但还是得用啊,于是把之前给高中弄得微博树洞(以下简称 nest )迁移过去。nest 之前是放在 SAE 的,由于访问量不高也不怎么吃云豆 =。= 但由于要小规模重构,决定把它迁出来到 vps 上,毕竟 paas…

    on vps, web, cache, cron, server

  9. Hello Flask

    上篇post提到寒假第一件事就是把博客从Octopress迁到 Pelican ,结果有了计划不立马开搞心里就是不踏实。于是别人都开始期末大复习时我开始了又一轮折腾…… Why a Blog 一开始是在网易博客开始写博的,很多人最开始应该都是用的第三方博客系统。其实我不是喜欢写东西的人,高中最讨厌的事就是写作文。开博是希望给平时『折腾和学习的心得』找个安放的场所,而且我是个怀旧的人,以后回头看自己的经历肯定也别有滋味。 第三方博客嘛就没想太多,试过cnblogs,最后选择了网易了。当时也没什么互联网经验,现在再选可能会考虑点点,blogspot,wordpress,甚至是SegmentFault那些吧。 Why Octopress 为什么迁到Octopress? 逼格高: 单从这方面考虑,网易新浪什么的没法比吧? Github托管: 对于买不起主机/VPS的穷学生,一个可以托管博客的地方实在是天堂 静态博客: 都是静态页面,速度快。不过考虑到github在朝内的速度。。。 Geek: Markdown + Git , Commandline更新博客。 自己域名 高度可定制: 多种主题、多个插件。比如不喜欢Disqus的话可以自己用多说的代码替换掉。不想要文章url 是 /blog…

    on blog, octopress, python, flask

  10. Late 2013

    2013最后一天。 虽然每周都感觉过得很快,但每个月都能发生好多事请。 月初开始搞计算机网络课程设计,其实就是小组做一个又CS又P2P通信的小程序。小组讨论后让我和另一个做客户端,他们服务端使用java,但出于对java的反感以及曾经的VC经验我决定使用Qt 来写客户端。因为我觉得二者应该是独立的,通信协议已经确定,使用的语言不会相互影响。后来发现naive了。 在收发数据上就出现了问题,不知道服务器是怎么读的,我使用QTcpSocket自带的函数来发和读结果都和服务器对不上,后来两端都各自调整一下:服务端修改读取数据的方式,客户端要判断数据是否读满才行。因为客户端收到的数据貌似是分块的,一次来一点,需要判断什么时候完整了才行。这也是在StackOverflow提问才明白的,毕竟之前写Qt 没有接触过网络编程的。话说觉得Qt 这个信号与槽的机制与node.js的事件驱动还是蛮像的,没有阻塞性,所以客户端要实现十秒一次的心跳信息时我也不需要劳神去处理多线程之类的任务,直接开一个QTimer倒计时就好了,时间到了自己会执行。 此外还有P2P,一开始想着估计强大的Qt 库也有个类似QP2P 之类的东西,后来发现没有,google才想起来,p2p要自己在两个客户端聊天时既当Client又当Server - - 这时又要用到QTcpServer,好在最终顺利解决。其实其中java和C++之间通信的坑要多得多。 然后人工智能(AI)project更坑,基于维基或百度百科的词条内容。其实小组连做什么都一直不确定…

    on python, qt, node.js, project