开始一个新的项目

最近公司 IT 建设速度明显加快了,上周开始业务中台的需求启动,今天 DevOps 的计划也准备开始试点。

有时候想想,学习编程已经三十多年了,小学时候的 Basic,初中时候沉浸在 LOGO 语言中,以及后来的 dbase 和 foxbase 这些。五年前的技能都被淘汰了,IT 世界发展的太快。但是这份初心却始终不变。我还是很喜欢编程。所以就继续喜欢吧。有时候很多东西难以说清,或许就是那么多年了,即便我没有太高天分,也毕竟花费了这么多时间和努力,总不至于太差。

开始一个新的项目,查了一下版本记录,最早是2016年4月就开始研究了,思考了那么久,还是要给自己一些压力。之前的 fish_base 项目功能虽然简单,但是从 sphinx 文档到之后 CI,都在努力学习中,然后这个项目也准备做的好一些,之后能够开源,让更多人收益。做一个基于半自然语言的报表生成工具、数据分析工具。

PyCharm 2018.1 新版本发布

PyCharm 2018.1 新版本如期而至。

对于 Python 3.7 的支持,比如 dataclasses。

更加智能的代码提示。

对单元测试更好的边栏支持。

科学研究模式可以运行部分指定的代码。

通过 conda 环境来支持建立一个科学数据研究项目。

Flask CLI 的支持。(Flask 在目前版本支持 Click 的命令行功能,现在 PyCharm 直接支持 Flask CLI 的调试了)

对于 TypeScript 2.7 的完整支持。

版本管理支持部分提交、更好的 rebase 支持。

远程开发方面支持更容易配置的基于 SSH 的 Python 调试器,提高了对于 Docker Compose 3.3 的支持。

PyCharm 包含了 JetBrainstorm DataGrip 的所有功能。

一直感觉,PyCharm 已经是非常完美的工具,甚至觉得它的功能太多了,已经复杂的很,没想到,依然继续提升,继续跟进所有的技术开发潮流。佩服!

MVP:3月的礼物

去年十月开始,最忙碌的项目之一,就是上云,现在也不知道当时是怎么过来的。

从2011年,接触 aws 开始,到现在,真正的将很多应用迁移上云,以及使用云上的 SAAS、PAAS 等各种技术,看到了崭新的世界。

一位朋友说得好,云之彼端,云至彼端。上云很简单,用得好却不易。

这半年,和团队,我们的上云小组,以及阿里云的很多专家一起,从无到有,从少到多,积累了不少经验。谢谢阿里云给予的 MVP 荣誉,更是鞭策。

汇付第二届科技节

昨天,汇付的第二届科技节。我的部门包圆了大项目的一二三名,小项目的十个中也斩获三个,成绩不错。

当然,一方面我的 team 的确比较重视,另一方面毕竟公司内部评选还是鼓励为主,竞争性不算太强。如果以数量来论,小项目这里32个进10,大项目6进了4,还是小项目竞争激烈。

昨天我分享的不完全是得奖的 Jarvis 2.0如何,我想在座大部分并不是很能理解也不需要理解,我将这些年总结的方法论展现了出来,其实包含了如何持续学习、如何时间管理、如何项目管理,项目管理包括对于创新型的科技项目,也照顾所谓传统的项目,项目的分类更多由企业的性质所定。

Jerry 对于我们去年写书的鼓励,甚是温暖。那种外人无法体会的孤独,以及强大的意志力,甘苦自知。“平生所事皆最爱”,很久以来,我是特立独行和在乎别人看法的矛盾混合体。其实想透了也不矛盾。

我们团队的科技创新也不容易,上台领奖的只是坚持到了最后的,还有很多项目都默默无闻了,持续的科技创新的能力培养,团队的培养才是关键。

也算正式提出了“精益敏捷”这个说法,以及我们的 DUKE 项目管理方法,外人不知道的是,从2003年开始,就不停的学习、思考、实践、反思、再学习、再思考,十几年光阴飞逝,算是略有小成。上天总是公平。看来本来想明年再结集出版的方法论,可以早一点了。

昨天演讲匆忙,有十六个字的心得,未来得及阐述:兵无常势,水无常形;竭尽所能,顺其自然!

今天,生日,挺开心的。

Google Chrome 的自动更新

大约这个月开始,发现 Google Chrome突然在国内可以自动更新了。让人很意外。没有去分析后面的技术,但是估计应该不容易,给我们用户带来很大的便利。之前要VPN等一堆设置,有时候还不稳定。

Google 好像在这方面一直比较执着,或许背后是他们的价值观。反正用户是受益的。

Adobe Lightroom CC 新版本发布

昨天才发现,原来是 Adobe 的 MAX 大会,很多产品做了升级,之前我看到的 Lightroom Classic CC 就是为了这个新版本 Lightroom CC,因为有了新的,所以之前的继续升级为 Classic 了。

新版本 Lightroom 变化很多,整个界面都重构过了,相册和照片管理和原来也不太一样。还要适应一段时间。据说 Adobe 这次 AI 方面发力很多,其致力于在功能方面的提升,而不是搭建一个平台。这个思想我很认同,平台这样的事情有几个巨头去做就行了,我们提升产品质量,改变一点点世界。

只是以后又有 Classic 版本,又有新的 CC 版本,比较纠结。

Lightroom CC 更名为 Lightroom Classic CC

今天发现我订阅模式购买的 Adobe Photoshop 和 Lightroom CC,有了重大更新。

用了很多年 Lightroom,基本从第一代开始,不花哨,功能强大,管理照片和后期处理都很棒。用 Photoshop 处理照片主要原因还是国内大部分人用的是盗版,这真的是杀鸡用牛刀了。而 Lightroom 天生就是为了管理照片和处理照片而设计,自然更加专注于此。国内没有办法直接购买Adobe 的订阅模式,绕道香港网站,买 Photoshop+Lightroom的套餐最划算,每月68港币,不过 Lightroom 只能在两台电脑上安装,所以不能太贪心。

Classic CC 版本主要更新内容如下:

大幅提升效能:當您啟動應用程式、產生預覽、從「開發」切換成「資料庫」模組、移動滑桿和筆刷,以及進行更多操作時,將感受到更快速的效能。

加快影像選擇速度:使用改良的「內嵌預覽」工作流程,在匯入時開始加快影像選擇速度。

使用範圍遮色片精細地控制選取範圍:選取精確的顏色和色調以進行局部調整。使用「調整筆刷」、「徑向濾鏡」或「漸層濾鏡」來定義粗略的遮色片,然後使用新的「範圍遮色片」選項來微調您的選取範圍。

看完官网,发现 Lightroom 上一次的主要更新已经是2015年8月了。

阿里云 RDC 产品升级为云效

云栖大会上,阿里云发布了很多新产品和升级产品,我们正在 POC 的 RDC 也升级为云效,不过好像官方网页还没有全部修改。

除了应用的全周期生命管理,代码管理,自动化测试等,还增加了运营功能,的确这要比一般的项目生命周期管理软件完善的多。以我的了解,应该也便宜很多。

我们目前还是放了六个项目在 RDC 云效上进行测试,不过我发现其实大部分程序员的编程习惯并不是很好,或者比较随意。毕竟再好的工具只是工具,人的责任心是最重要的。像云效这样的工具在内部推广过程中,还是会碰到很大的困难。(什么事没有困难呢)

依托阿里云、腾讯云这样在真实场景中锤炼的系统,可以让我们更加好的专注于业务成精,而不是重复的去发明轮子。

这几天和同事说的比较多的就是,世界已经改变了,整个开发模式已经在改变中了,或许三年、五年,会彻底颠覆传统的 IT 架构。因为相信,所以看见。

开始试用阿里云的 code 管理和 RDC

2018.1.15 更新,阿里云的云效产品已经发布了一段时间,正在试用,实在博大精深。

iOS 11, watchOS 4.0 各种升级,之后还有 macOS 的升级。

我一直很佩服 Apple 的项目管理,以前还略微空闲的时候,试图从外部来探究 Apple 是怎么进行这么复杂的项目管理的。当然后来也略明白,基本也是敏捷、多项目线、大量自动测试、功能尽可能的松耦合等。

之前几年公司一直用 jira 来管理项目,用的还不错,包括其中的敏捷项目管理。目前正在测试阿里云提供的 RDC 功能,比起 jira 来说,更加全面。并且 jira 有一个比较麻烦的就是,需要自己安装服务器,如果都是用 jira 云上的,速度性能有点不行。用阿里云 RDC 算是一个挑战吧,工具本身并不是最重要的,还是开发流程的再造重构本身压力很大。

最近先将两个大项目群中的几十个小项目从 svn 迁移到 git,算是 gitlab 的版本吧,然后在开发中继续使用 issue、milestone 来控制进度,wiki 来进行文档管理,项目本身还是要通过 unittest 以及 converage rate 来控制质量。不过还不是自动构建,每个 issue 的开发还是要人工来跑 unittest,并且 RDC 对于我直接带领的两个项目中使用的 Python 支持不是很好(对 Java 应该没问题)。还好,我们还不是迫切到需要每日构建和连续发布。

阿里云的 code 管理做的还算不错(应该就是 gitlab),git 我觉得建立本地分支和 pull request 流程都是非常不错的,养成习惯后,对于日常开发管理可以减少错误。习惯了 bitbucket 和 github 之类后,发现用 git 在国内的服务器速度要快了不少。

RDC 有专门的同事在做测试,两周后希望可以有一个实践心得,用在真实的开发项目中。

项目管理始终是一个大学问,是否做好,对于结果,天壤之别。

因此多做一些记录,便于以后回顾和分享。