/ 闭门造轮子 / 2014 年终总结

2014 年终总结

2015-01-03 posted in [闭门思考]

2014算是我真正在家做自由职业的第一年,大大小小的项目接了不少,年终了在这做个整理。

外包项目

古北咖啡公司官方主页

http://gubaycoffee.com/

Hsllany 同学设计,我开发制作的单页式纯静态企业展示页。

客户原因未付款。

Nature Tibet 旅游网站主页

界面设计,Wordpress 单页式主题开发。

客户原因未上线,未付款。一年后终于上线并付清余款。

美漾化妆品试用电商网站

继续用原有 ci-bootstrap 项目开发了商品订单模块,接入了支付宝即时到账接口,并使用 crontab 管理订单自动任务。

客户已下线另做升级。

Cat挖机连连看微信游戏

仿 2048 的手机端微信页面游戏。

腾讯世界杯营销总结

微信活动页面。

dbtsai.com

https://www.dbtsai.com/

在美国的台湾人的个人主页,使用 Jekyll 开发,托管在 Github。

该项目来源于 Elance 的邀请推荐,但至今无法联系上客户,还剩尾款 $450 未付,无法结项

后来通过 twitter 联系客户居然被 block,一怒之下将所有过程曝光于 Github。之后再去信通知客户,其迫于压力,最终于七个月后结清尾款。

某医院网站 BUG 修复

朋友临时的紧急页面修复项目。

PhotoMaster

朋友临时的紧急微信页面项目。

Wipos 官网首页

http://www.emebroad.com/

大量视差滚动效果。

过敏测试 App

一个针对 iPad 的活动应用,使用 Cordova 封装 Web 开发。

由于客户原因未上线,未付款。

优客途团队

北京的一个主营微信第三方接入平台的创业公司,大量涉及微信公众号的手机页面开发,为其兼职了近半年的时间。

团队开发流程改造

团队原来使用的 SVN 管理版本,但上线操作居然是由开发人员用 FTP 逐个上传修改的文件。于是出于效率和可靠性的考虑,将团队开发/部署流程改造为 git 版本管理 + webhook 自动部署,同时使用了 Bitbucket 管理团队项目,极大的提升了团队的合作水平。

微信公众平台

模板管理系统重构

原有代码中设计复杂,过度冗余,且性能低下,重构后极大提升了模板管理系统的性能和易用性。

在重构的基础上,又为平台开发了大量手机网页模板,并完成了全部原有模板的样式问题修复。

手机页面编辑器

要求仿口袋通微杂志的手机页面编辑器,通过 JSON 格式定义整个页面的布局和内容。

其他零散项目

Epuxy团队

10月起加入该团队并参与和国外Team的远程合作开发。

Replay.io

首个与国外团队合作的项目,主要负责介入 RoR 体系架构中的部分前端页面,且包括各种设备屏幕尺寸的响应式适配。

该团队对代码复用的追求近乎苛刻,尤其在使用了section这个 gem 后,所有页面都做成了模块化。

在使用 pull request 的合作过程中,由于时间问题推送粒度太大,导致合并困难,每个 PR 出现上百的意见与讨论,反复修改过程更长。

Agralogics

参与的首个使用 AngularJS 的项目。

原始代码没有根据 AngularJS 的最佳实践进行架构设计,缺乏复用,四处都是 copy/paste,臃肿不堪。由于是运行中的项目,架构设计很难调整,只能在所负责的模块中尽量抽象重构,以使代码更加简洁易懂。

合作流程上没有相关的团队规范,提出了合作建议,但还未得到执行。

总结

统计来说,接触的项目主要从企业(个人)官网到微信/移动页面,再到后来的远程团队和国外项目。总的情况上看,还是企业官网和移动页面对外包的需求量比较大,当然微信现在也是非常火,也带动了大量移动推广页面的需求。而电商类在和一些客户的接触中,发现要么就是定制开发,要么最好给直接上开源产品,否则之后的维护是个大问题。

对于企业官网的设计,主要倾向于单页式纯静态内容,辅之以视差滚动,整体能达到简洁大气的效果,也算是赶个流行的时髦。

前端上来讲,主要在移动设备的 HTML5 开发碰了不少坑,算是积累了一部分经验。而且对响应式设计也算有比较全面的理解,甚至超过一些国内外的设计师,毕竟大多数设计师是不考虑实现当中的很多问题的。等有空了会整理出一份响应式设计指导方案,以减少今后更多项目的基础知识教学沟通问题。

再讨论下 Angular 这类东西,从需求上来说还是很多的,即使不说现在团队,Elance 上也是大量 Angular 的项目。但不知道是目前项目架构的问题,还是我使用尚少,我始终觉得这是一个过度设计的产物。双向绑定少数时候很有用,但绝不是解决所有问题的银弹。我还是更看好 Web Component 的未来,那才是更好的 Web 交互开发的解决之道。

后端依旧耗在最好的语言 PHP 里,虽然有接触 Ruby 的项目,但毕竟不用我负责。而兼职项目需求最多使用最成熟的还是 PHP,可能国内来说这还是部署和运维最简单,开源代码最多的解决方案。所以试用品商城项目依旧使用 ci-bootstrap 的基础来搭建。整体的熟悉了 PHP 项目中从 session,OAuth 登录,上传图片,支付宝接入到 crontab 管理定时任务等各个基本环节的解决方案,不说以后都用 PHP,但即使切换到其他后端语言(比如 node.js),也是有很大帮助的。

要成为一个优秀的全栈工程师,后面还要学习的主要是数据库版本维护,和其他运维方面的技术。

App 接到的需求反而不多,这是因为大部分市场都被微信挤占了,而且越来越高昂的 App 装机成本和越来越好的硬件,让大多数事情都可以用 HTML5 来解决了。所以现在甚至可能多了一种奇怪的职位 title —— 手机 H5 工程师。虽然 HTML5 不能解决一切问题,但对于未来的愿景,我依然看好 web 这个最通用的技术,因为硬件越来越不是问题。

现在下来,基本达到了我在 2013 年初计划的“用一年做外包的时间来摸索市场”的目的。因为单干这件事的确很不稳定,单子多了又接不过来,少了又有很大的生存压力顶在头上。所以后来两度加入不同的远程工作团队,以确保部分稳定的同时可以有更多的发展。其实还有一个失误是没有在早期加入一家本地团队,以积累更多人脉。但是鉴于本地企业的待遇水平过低,难以让我恢复之前把所有积蓄花光了的经济水平,只能通过其他手段来达成。庆幸的是通过一年在本地社区的活动,结识了一帮不错的开发者同伴,还组织了一次昆明本地的开发者线下聚会,达到了不错的效果。

所以新的一年发展方向,在稳定恢复经济水平的情况下,要尽量结交更多的合作伙伴,寻找其他可能的创业点,并发力在一两个方向上,看看到年底是不是会有些收获。

-EOF-