关于hopesoft

互联网从业者,从电子商务到IT门户、财经门户,再回归电子商务;从北京再到杭州,在路上。

我的2018

转眼一年,又到了个人年度总结的时间。晚上到家,打开电脑,放着音乐,泡了一壶茶,回顾下我的2018。

工作

1、研发管理工具

2018年发布了23个小版本,一方面是继续完善项目管理的功能,另一方面增加对研发全流程的支持,中间还穿插着一些小需求和前端重构。

在全年的迭代过程中,外部经历了人员变动,组织调整,内部也经历了功能试错,经过用户调研,数据分析,对产品设计也进行了重新思考,在Q4也做了一款SAAS产品的规划,限于优先级,接下来的重点还是要先聚集于内部工具的完善。

2、应用管理平台

过去的一年为50+App提供了构建支持,也为多个App提供更新功能和热修复功能,为App的灰度发布和快速发布提供了保障。移动端工程师对平台的依赖越来越高,对可用性也提出了更高的要求。

在新的一年,重点是解决构建的稳定性,构建脚本的规范化,提高复用性,减少维护成本。

3、其它

2018年参与了前端组同事发起的一个项目,简单来说就是降低前端开发的门槛,通过桌面端工具提供前端项目的入口,通过自定义物料将设计、交互规范和业务场景组件化。目前前端组同事基于飞冰实现了一期的功能,开始在少部分项目中使用,效果还有待实践检验。

跑步

2018年参加了两场马拉松,一场是4月30日的张家口半程马拉松,一场是9月8日的太原全程马拉松。太原的全马也是我的第一场全马,挑战比较大,还好最终顺利完赛。

根据Nike+记录,全年一共跑了30次,共314公里,跑步的地点也经历了多次变迁,从附近的大学操场,到区体育中心,最后转战念坛公园。锻炼时的单次最远距离也从10公里上升到了半马,11月连续两周跑了21.1公里,之后就因为天冷,一直没跑。

2019年的目标是每周跑10公里,跑一场全马,希望能坚持下来。

写字

2017年底开通了个人公众号,原本是想放些工作相关的内容。2018年元旦发布了第一篇文章后,沉寂了好几个月。

9月,跑完太原马拉松之后,想用文字记录下,以做纪念。遂有了四篇有关跑步的文章:《当我谈跑步时,我谈些什么》系列,记录了在杭州、大同半马、张家口半马、太原全马的跑步历程。

2018年10月,蝉游记网站公告网站即将关闭,便将2014年的骑行游记迁移到了公众号,即《千里走单骑》这篇文章。

2019年的目标是每月更新一篇公众号文章,争取能言之有物。

没有记录,就没有发生。

学习

2018年付费订阅了几个App的会员/内容,比如樊登读书会、网易蜗牛读书、极客时间、Lingvist等,但是学习效果不佳,很难保持频率和沉浸的状态。

2018年也买了一些书,比如《原则》、《硅谷之谜》、《必然》、《奇点临近》、《上瘾》等,还有一些技术、财经相关的书,大多没有完整的看完。

2019年的目标是看完12本书,希望能每月一本,控制数量,保证质量。

生活

过去的一年,是焦虑的一年,比较浮躁。

2018年应该是这近些年回家次数最多的一年,故乡却逐渐变为他乡。

2018年12下旬,大哥打电话说奶奶去世。奶奶已经九十多岁,除了冬天哮喘,身体一直还好,在去世前一周,身体有些不适,后来好些了,毕竟年龄大了,还是没扛过去。我在出殡前一天回到家里,大家都准备的差不多了,晚上和家人一起守夜。出殡当天送走奶奶后,又踏上回北京的火车。

爷爷和奶奶都是高寿之人,爷爷2007年去世,享年92岁,我们整个大家族也是人丁兴旺。和家人聊起爷爷奶奶时,总会感慨:人能活到爷爷奶奶这个份儿上,不容易。

电子产品

1、NAS

为了备份数据和照片,2018年1月入手了群晖,配置是群晖NAS。安装好后,也没有太多精力折腾,只用了备份照片功能。

2、Airpods

前半年买了个苹果的蓝牙耳机,这个算是年度最佳电子产品,缺点就是容易丢。我在公园丢了一只,后来在淘宝上配了一只。另外电力只能支持2小时左右,跑全马的话中途就没电了。

3、小米AI音箱

8月底买了个小米AI音箱,实际用起来才发现语音输入带来新的体验,而且和小米系列的智能家居联动的很好,比如打开小米盒子,关闭小米净化器,关闭飞利浦台灯。

4、Apple Watch Series 4

9月21日在西单大悦城店入手Apple手表,本来是想跑步时监测心率,结果用的不多。现在最常用的功能是解锁MBP,监测睡眠,接收一两个App的推送提醒,挂骚扰电话。

5、MBP升级硬盘

MBP是14年的电脑,8G内存,256G硬盘,最近好几个月提示可用空间只有几个G,经过一番折腾,11月底换了一块Intel 760P 1T的SSD硬盘,彻底解决了空间焦虑,而且读写速度有了大幅提升。

数字化生存

2018年4月,北京地铁支持Apple Pay刷卡进站,终于可以只带手机,不需要带现金了。

2018年9月,Apple发布iOS12正式版,新增加的屏幕使用功能,使得每天使用手机的时间量化。同时入手了Apple Watch,也买了一个监测睡眠的应用,提供了每日睡眠时间的统计。

2018年11月,买了一台云麦体重秤,可以记录体重、BMI、脂肪、肌肉等各项指标。

全年跑步的数据都在Nike+中记录,消费基本都在微信和支付宝,信息偏好都在微信和微博、知乎等。

手机的功能越来越强大,也导致了越来越严重的后果,消耗了大量的碎片时间。

可口可乐公司旗下的“维他命水”公司近日发起了一项竞赛:成功做到一年不用智能手机的人,将获得10万美元(约人民币69万)的奖金。如果只能坚持半年,那就可以获得1000美元的奖金。

1999年,中国媒体组织了一场“72小时网络生存测试”,20年后,挑战的内容变成了“无网络生存”。

2019目标

以上就是2018年的流水帐,和2019年的Flag,想记录的太多,只能选取一些片断,聊做记录。

祝新年快乐!

我的2017

今天是2017年的最后一天,转眼又是一年,终于又到了个人年度总结的时候。

今天难得和家人一起吃了个晚饭,2017年工作日和家人吃饭的时间一个巴掌数的过来。最近正好临近公司举行大促,已经连续上了8天班,元旦休息一天之后,又是连续的10天,一直到1月11日之后。

关于工作:

今年经历了两个产品的迭代:

第一个是内部的研发管理工具,2月开始推广,利用半个月完成了从多个旧系统到整合后以新系统的迁移,比预期的要快。上线后经历了小版本的快速迭代,前期基本保持了一周迭代一次的节奏,后期大的功能开发逐步改为每两周一次,看了下发布日志,从2月10日到年底一共发布了32次,版本号从1.6.3到1.9.12,新的一年将迈入2.0版本。

在做研发管理工具的过程中,基本上把各种类型的同类工具都研究了一遍,最终根据公司的组织架构及研发流程,打造了一套满足自身流程的研发管理工具,涵盖了从需求管理到立项管理、项目管理、里程碑变更、上线流程审批等各个环节,提供组织、团队、个人多个维度的聚合统计。

研发管理工具的1.0版本实现了三个目标:

1、项目流程系统化,一站式研发管理工具,提高工作效率,提升用户体验;

2、项目状态实时化,自动化项目日报/周报,减轻项目经理工作量,提高项目透明度;

3、沉淀历史数据,为研发管理工作提供数据支撑;

粗略统计了下,技术中心全年上线将近6000次,平均每周上百次,体现了互联网公司的快速迭代。

第二个是应用管理平台,主要解决APP从开发完毕之后的构建、测试、发布、到更新、热修复等各个环节的管理。

做之前参考了蒲公英,flow.ci、JSPatch等几个平台,也参考下饿了么、美团、携程类似工具的技术文章介绍。

结合我们的现状,最终采取的方案是通过应用管理平台调度,利用Jenkins做构建(Mac mini做Slave用来打包),构建包上传至阿里云OSS,同时提供内网和外网不同的下载页面区分不同环境,更新管理和热修复管理参考了JSPatch的设计,可以实现按人数灰度,也可按城市、用户等预置条件或自定义条件来灰度,同时提供构建统计、下载统计、更新统计、热修复统计。

在构建Android应用界面,如果选择加固,在Jenkins构建时将调用360命令行加固,同时生成渠道包,不再需要手工操作。

应用管理平台实现了以下几个目标:

1、构建流程系统化

原有的流程,开发工程师需要本地手工打包,再上传至FTP,配置地址,手工发给测试人员下载地址下载。现在只需要在应用管理平台点击构建,选择几个选项,构建成功后会自动发给相关同事钉钉通知,点击链接地址即可扫码下载。不是技术人员也可以完成构建操作,而且集成了应用加固、自动打渠道包等功能,极大地提高了工程师的工作效率。

2、更新、热修复集中化

之前的更新配置,每个APP都需要自已搞一套,需要投入一定的人力,无法复用;灰度功能没有或不够通用化。应用管理平台提供统一的更新配置,支持全量更新或灰度更新,灰度支持预置条件或自定义条件。同时针对RN或Weex混合开发的APP,提供热修复配置,可上传补丁包,全量或灰度热修复。

今年团队的小伙伴很给力,上半年获得季度突出业务贡献团队奖,后续随着人员的调整和新人的加入,面临的挑战是如何让新人快速成长。

关于生活:

工作之余,生活中值得一提的事不多,今年参加半程马拉松算是一个。早就想参加个马拉松,2017年申请了太原、南京、杭州马拉松,都挂在了抽签上,结果9月份的大同马拉松一报名就成功,应该是大同第一次组织马拉松,还没有太多人关注。这也是我第一次去大同,对大同印象不错,包括饮食、严华寺、城墙、蓝天,随机采访了几位大同出租车司机,对原来的市长耿彦波评价很高。在跑半马之前,没有坚持锻炼,最终2:43跑完半马,成绩一般,坚持跑完全程就是胜利,算是完成2017年的一个心愿。

关于阅读:

今年买了樊登读书会和网易蜗牛读书的年度会员,断断续续读了一些书:《在线》、《创新者》、《腾讯传》、《支付战争》、《高铁风云录》、《颠覆者:周鸿祎自传》、《创京东》、《富甲美国》、《褚时健传》、《蚂蚁金服》、《小米生态链笔记》、《上瘾:让用户养成使用习惯的四大产品逻辑》、《疯传》、《引爆点》、《凤凰项目》,有些已经读完了,有些排在了2018…

年度照片:

今年用手机应该照了几千张照片,也许只有这张才能代表心中向往的宁静。

年度推荐:

  • 硬件:iPhone 8P
  • APP: Pocket、MWeb、网易蜗牛读书
  • 图书:《创京东》、《富甲美国》
  • 音乐:《归来》(满江)

短短几个小时对一年做一个总结,是一件困难的事,看来年度总结要改为月底总结,小版本迭代,阶段性回顾。

2017年的待办列表还有不少没有完成,2018年已经准备立下新的Flag,希望新的一年能做到知行合一。

顺祝各位元旦快乐!

我的2016

今天是2017年1月1日,此刻正在言几又书店,准备写2016年的年度总结。

2016年主要分为上半年、年中、下半年三个阶段。

  • 16年上半年的关键词是加班,从1月开始的生鲜节到之后的2.0系统的开发,持续好几个月高强度的开发,3、4月份每天回家已经接近凌晨12点,身体也变得比较差。
  • 16年4月底,胆结石发作去医院急诊,连着输了几天液,医生建议手术。6月份开始休假,中旬在北医三院做了微创手术,在家又休息了一周。
  • 休假结束后,在公司调岗到了另一个部门,经过短暂的休整后,开始负责一个独立的产品,一切从零开始。从刚开始的一个人到最终形成一个团队,产品从模糊的想法到初具雏形,准备上线,收获良多。

6月份手术后,从医院回家休息。每天吃过早饭后,去公园遛弯儿,坐在凳子上,深深地感受到身体与大脑之间以不同的频率在运转,大脑在飞快的旋转,身体却虚弱无力,此时此刻,才真正地体会到了身体健康的重要。

公司在七月份搬家,搬家后来回需要三个小时,比原来多了一个小时,每天晚上回到家已经是晚上10以后,和家人交流的时间很少,也很少在家里用电脑,到家基本已经比较疲惫,直接洗漱睡觉。怀念在杭州时步行十分钟上班的幸福时光……

去年大部分时间花在了工作中,在个人成长方面做得不够,在新的一年需要继续加强,包括阅读、写作、管理、技术方面;在生活方面,要多抽些时间陪陪家人,做好财务方面的规划。

再见2016,你好2017!

关于读书这件事

每年都要买不少书,家里书柜已经堆满,床头也有好几摞,手机上装了多个看书的App,也先后买了2个kindle,坏掉一个,另一个也在吃灰中。

买书容易,读书很难,如叶公好龙,看到不错的书便买来,却读的不多,书对我而言,已变成了负担。

准备将手头的书整理成列表,归类,排出阅读计划,并在阅读完毕后整理为笔记,不求快,但求有效。另外克制买书的欲望,以免读书债越积越多。

12月的书单,暂定德鲁克的一本:《卓有成效的管理者》,用一个月的时间完成阅读,并交付一篇阅读笔记。

 

杂记

自上篇博客后,已经过了快两年时间,发生了好多事情,一直没有时间或心情来写blog。

2015年是动荡的一年,自14年10月加入创业公司开始创业,自15年8月结束,一共将近10个月,几百万的天使投资,几十号同事,做了两个项目,从刚开始的同城物流到水果B2B。第1个项目是因为同行发力更快,在15年4月转型做水果B2B。第2个项目在融资方面遇到了问题,已经有VC给了TS,最终还是因为资本市场开始遇冷,资金断链。15年8月公司并入北京一家生鲜B2B,我和技术团队同学又回到了北京,负责物流相关的研发。

从11年10月离开北京到杭州,再到15年8月重回北京,一个轮回,又回到了起点。

从15年8月到16年5月,一直做物流相关,经历了人事更迭,各种撕逼,持续加班,身心疲惫。16年春节后,基本每天都是晚上12点才到家,身体变得很差。4月29日,晚上胆结石发作,去医院紧急输液,原来的泥沙样胆结石已经变得范围比较大,需要做手术切除。6月休了一个长假,和家人去了一次青岛,回来做了个胆结石微创手术,休息了一段时间。

休假结束后,回到公司,换了一个部门,重新开始。

目前在做研发管理工具相关,从0开始,组建团队,做竞品分析、产品规划、参与产品设计,技术设计,推进敏捷方式开发。计划到年底完成功能开发,投入使用。

目前每周末基本陪家人一天,然后找个地方加班,处理下周报,本周遗留的工作,看些资料。

刚结束的双11,买了一堆小米的硬件,有路由器、智能网关、无线开关、温度计、yeelight床头灯、空气净化器、智能手环,准备组个智能家庭网络,总得来说,小米的生态链超出了我的预期。

最近看了一本书,《奇特的一生》,讲前苏联一位生物学家柳比歇夫的时间统计法,深受触动,下了一个iTimelog,按事件记录开始结束时间,刚开始,以观后效。

本次耗时36分钟,写于言又几书店。

我的2014

今天是2015年2月14日,马年最后一个工作日,公司上午组织了一个全体会议,和部门同事中午一起聚餐,下午和几个同事聊了下新的一年规划后,正式开始进入春节假期。

往年的年终总结一般都是元旦整理,今年元旦时有些累,一直拖到现在,终于抽出时间来整理下。

过去的一年,对于我来说是非常重要的一年,从呆了两年多的公司离职,给自己放了一个长假,跑了不少地方,考了驾照,做了一次长途骑行,结识了不少土豪朋友,加入O2O创业大军,转型移动端开发,小家伙平安降生。关键词:任性,感恩,圆满。

相关链接:

2014年10月作为联合创始人加入一家新的公司,经历了这家公司从0到1的创建过程,遇到一群充满活力的同事,一起做一件有价值的事,累并快乐者!

新的一年,更精彩!

千里走单骑

早就有长途骑行的想法,这个月终于付诸行动,骑行路线参照网友小马的路线:先坐动车到厦门,第二天骑车环岛,然后一路向北,骑行到杭州。从来没有骑行过这么远的路程,原计划用11-12天,实际用了10天(骑行9天),以下为具体行程:

Day 1 杭州-厦门(动车)
Day 2 厦门-晋江-泉州:122公里
Day 3 泉州-惠安-莆田-福清:143公里
Day 4 福清-福州-连江-罗源:140公里
Day 5 罗源-宁德-福安:119公里
Day 6 福安-柘荣-福鼎-苍南:106公里
Day 7 苍南-瑞安-温州-青田:105公里
Day 8 青田-丽水-缙云:100公里
Day 9 缙云-永康-金华-义乌:92公里
Day 10 义乌-诸暨-杭州:131公里
合计1058公里

继续阅读

三年小记

转眼来杭州快三年了,这篇博客算是一个小的总结。

三年前,我在北京一家垂直门户工作,带领一个十多人的技术团队,负责多个频道的开发及维护工作,并兼任项目经理。当时已经在这家公司做了四年,角色逐渐从技术转向了管理,负责的业务基本已经熟悉,管理方面也积累了一定经验,同时也感觉遇到了天花板。

当时典型的一天是这样度过:早上七点多出发,从北京南城换乘两班地铁,大概四、五十分钟后到公司,经过一天高强度的工作,晚上六、七点下班,再搭乘一个小时的地铁回到家,和家人一起吃晚饭。每天背着电脑包,地铁从来都是挤的满满当当。虽然单程一小时的上班路程在北京算正常,但地铁上人挤人透不过气来,感觉非常差。周末基本上宅在家,很少出门。

公司各方面都还不错,纳斯达克上市公司,帐上有足够的现金,旗下有多家子公司,上千人规模,福利待遇也不错,虽然隐隐感觉到了一些疲惫,却也还是沿着旧有的轨迹一直向前走。

九月,骚动的季节。

继续阅读

项目管理工具Redmine安装文档

一、背景介绍
为便于项目管理,内网安装redmine在团队内部试用

二、安装说明
1、参考文档:
http://www.redmine.org/projects/redmine/wiki/Redmine_on_CentOS_installation_HOWTO
http://blog.fity.cn/post/365/
http://jicki.blog.51cto.com/1323993/1336591
http://ruby-china.org/topics/5321
http://www.imagemagick.org/script/install-source.php#unix

2、安装nginx
具体安装过程略

继续阅读

OpenResty(Nginx)+Lua+GraphicsMagick实现缩略图功能

一、背景说明
大多数网站基本都涉及到图片缩略图的处理,比如新闻配图、电商商品图等,特别是电商类网站,每个商品图对应多个不同尺寸的缩略图,用于不同的页面。

初期访问量少时,处理流程一般由web程序在上传成功后,同时生成相应缩略图。这种方式在访问量小,单机部署时没有问题。当访问量逐渐加大,服务器由单台变为多台时,这种方式扩展性较差。

以下有几种方案可以解决这个问题:
1、使用七牛又拍云提供的云存储及数据处理服务,解决图片的处理、存储、多节点访问速度的问题,这种方式优点是方案成熟,相应的有一定费用和开发工作,另外有一些小概率的风险,比如云服务挂掉影响本站访问。
2、使用第三方的图片处理程序,比如zimg,点击查看使用手册@招牌疯子开发。zimg的性能和扩展性不错,文档也很完善,会继续保持关注。
3、自己造轮子,根据自身业务,将生成缩略图功能独立出来,与web程序解耦。

我们采用的是第三种方案,参考了网友的基础代码,利用OpenResty(Nginx)+Lua+GraphicsMagick实现缩略图功能,图片上传及删除还是由web程序处理,缩略图由单独模块完成。目前可实现配置路径及缩略尺寸,无图片时显示默认图片,支持多种缩放方式等,后续可基于GraphicsMagick实现更多功能

继续阅读