见世界

代码总结

把写过的小玩意儿搬过来开一个展示页面。
求职用。

js:
1.google小工具大赛参赛作品:surfing plan
surfing plan
2009年五月,大三。
炎热的夏天,坐在西门外闷热的出租屋里。第一次,作为一个程序员坐下来写点什么。想做网络书签,无资源无能力。
现在看来没什么意义,在当时成为我得到第一份工作的最后一根稻草。

 

2.图片匀变速播放 demo 09年11月,实习所在的公司并入LITB。老大们到北京述职。
没有任务十分无聊的我,坐在科技京城15楼写字间的门口,花一上午写了这玩意儿。
当时觉得还要在恰当时机_clean_Timeout。后来一直没有契机接着写。

3.dialog类 demo
dialog

2009年11月——2010年3月
回到家里写自己的项目:anti-otaku.net(taocon.com)
这是一个讨论平台,以前有介绍。传送门
要做的大约是“引入理性的讨论规则,以完善的讨论流程确保规则的施行”、“集中展示阶段性成果”。
不同于传统bbs,当时希望网站能以尽量减少人类思维负担的方式运作、呈现。
用户应该可以随处看随处写,只在必要时才进行身份认证。
于是开发了这个dialog类。计划大部分展示和操作均依赖dialog窗口完成。
我认为这件事还算有点意义。不过对于当时刚刚从大学肄业,没有任何收入的我来说,长期做一个“理想主义”的项目明显是对自己和家人不负责。
项目收进电脑深处,三月初我回到上海开始工作。

btw,这个dialog类模态窗以外的部分兼容ff,chrome和ie6。
去年(2011)添加了模态窗口,没有为ie6做hack。
(对于不支持position:fixed的ie6,当年流行的做法是做随滚动条移动的层,不完美。
后来学会网易邮箱iframe的方法,觉得太麻烦——如果不是一开始就这么设计,动静未免大了点。)

4.难以名状的作品 demo

一个地区选择器,刚刚从项目里扒出来的。为什么说难以名状呢?心情复杂
2010年10月至2011年8月,在ATA踏踏实实写了十个月zf php。
当时的项目经理和产品经理都是5年7年的老程序员,以前搞.net的,水平很高。
我虽然是个小兵,但很有作为coder的荣誉感。而这些人都是老油条了,看不起码农。
一来二去就有一些摩擦(我eq不高,对待上级是有一些问题)。他们就使坏出了这么个难题指名要我做。
leader跟我说,这个需求是有点变态了,你先别做,我跟产品再说说。
当时我就着急了,我说别,这个我有思路。需求不变态,怎知我厉害。
后面用两天时间完成了这个类。嘿嘿,验收成功~
之后的关系就变得比较融洽了。许多关于js的内容,也交给我负责了。
果然程序员还是要用代码说话。

5.chrome插件

chrome插件写起来好爽啊——代码随便写,css3随便用,不必hack不做兼容。
想放个安装地址感觉略广告。悄悄给权当公测。发现问题恳请给个反馈ORZ
使用方法:用户进入我们支持的电子商务网站(如360buy.com),会在浏览器底部出现工具条,高亮文字或者输入商品信息,购物助手会给出同类商品比价信息供用户选择。

perl:
2010年3月,入职上海一家做联盟业务的小公司。
业务流程有一步日志统计,用到perl。此时开始接触perl语言。
理科生,代码洁癖,强迫症。
强大,易用,信手而成。
官方鼓励极速而随心所欲的写法,perl成为我焦灼人生的一剂安定。
这门语言用途广泛,写起来轻松愉悦。
处理文本,抓取数据,多线程负载,linux管理……
几年来写过的脚本不计其数,有段时间算个乘法也要perl -e “print 79*884”一下。
下面罗列几个典型的程序。

1.抓取——百度文库自动评分

财富值是文库的货币,一些优质资源需要消耗财富值才能下载。
百度文库刚出来的时候,给其他用户上传的资源评分可以会奖励财富值,每天最多增加5分。
于是我写了个自动评分的脚本放进crontab,嘿嘿
没跑几天财富累积机制就改了,但我表示已经够用了^^

2.负载——多线程作业
朋友项目挂靠的公司属于一位个人站长。在这里颇做了一些黑暗领域的事儿。
(注册邮箱,模拟访问,刷广告代码什么的我会到处乱说?)
赚点cpm,cpc的小钱,效率很重要。php没有多线程,c有多线程但是太牛刀,perl就简单多了。
以最近做的验证码广告为例。一台普通笔记本(i3,4g),换代理模拟验证流程,使用生产者消费者模式,40线程,2秒延时,速度能够达到5000次/小时。
鉴于这事不能说太细,就不贴代码了。有兴趣可以到github里找,地址附在文后。

3.电商商品信息抓取爬虫
https://github.com/qdladoooo/b2c_crawler
工作任务,感觉不太通用。
示例是京东,包括价格在内的商品信息抓取,至2012年8月仍有效。

c/c++:
不学c/c++ gof、cc2都看浪费了——互联网编程复杂度略低。(门槛低=压力大)
不学桌面编程觉得自己不算完整的程序员——主要是限制了创意表达。
啃算法导论的时候,c语法温习了个三三两两。趁热情尚在,2011年上半年,多方考察之后开始学QT。(当时打算为手机编程打个底,objective-c……昂贵)
至今没有成熟作品,习作倒有两个。
一个加农炮游戏,来自流传甚广的教程;一个带webkit的客户端,前面提到半途而废的那个。
编程是一生的事业。买了《c程序设计》《c++primer》见缝插针循序渐进的学。
c艹形势严峻,学好c做嵌入式或者game server倒是不错的出路。
我喜欢c简单直接强大的特点。

lnmp:
下了最多功夫做的领域。php程序员的立身之本。
项目经验不用多说,三年来每天都在写php,简历里都有。
说点没有的:)
A. 09年第一次做项目,用的是我“老师”jw自己写的一个mvc框架。多入口,非oo,model层采用mdb2,view层是smarty。轻量,极简,效率很高,常用需求有完善应对方案。
分别之后,我们各自充实了这个框架。
我做讨论平台,model层改用pdo并使用oo重构。他做公司项目,集成了新的策略。(本月早些时候他发布了这个框架^^,github用户名tmfc。感兴趣的自己去看吧)
这是个知其所以然的过程。是我php生涯的一笔重要财富。
一是接触其他框架不心虚——类比一下就知道它要干什么。
二来有了然于胸的自己的框架,可以快速搭建,无限扩展,连bug也无所遁形。这些优点是那些封装好的代码不能取代的——zf也不行。
B.写长了,下面简单罗列下做过的事吧
由于自己要创业,整个流程都要懂,贪心做了许多不必要的事。
apache,nginx优化配置不必多说。搭过nagios、cacti监控,awstat日志分析。重构过edm。用过mongodb的邮件队列(我搭别人用,主要是同事负责,我趁机学习了一下)。对sphinx引擎的方方面面都十分熟悉(需求导向,摸索实战)。写过搜索框文本的解析类(统一了bt需求,抽象的很得意)。做过基于gmap的ria应用(工作内容= =,也是自己最近项目的平台)。

到这里就结束。不能为过去花更多时间了。
总结为了看清楚自己。方便作调整,下决心,在技术道路走的更有目的性。
另外如果有朋友有想法或者money,想做点事情还缺个技术。不妨联系我。
临时buff下脸皮,我要说我应该能算那种一骑当千的coder,项目初期有那么一个两个足够了。技术绝不坑爹。

最近有点悲观。资历能力学历一无所有的时候,无所谓,输得起。不必扬鞭自奋蹄。
三年后到了该向自己要成绩的时候,反而一副吊儿郎当的样子。
一切经历都是财富,唯独不想生活过出太多空白。
接下来要大干一场了。第一桶金应该来自最擅长的领域。
目前有两个游戏点子。先做个新浪平台的页游试水吧。

qq/email: dlad(a)wobu2.com
https://github.com/qdladoooo