三月小结(暨TARQIE——一种量化成长的方法(下))

前端之家收集整理的这篇文章主要介绍了三月小结(暨TARQIE——一种量化成长的方法(下))前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

原文链接http://lucida.me/blog/summary-of-march-2014/@H_404_1@

目标实际完成情况

Tarqie-J

  1. 目标
    • 高效完成Q1 OKR。 –> 1.0
      • 搞定,超出Manager和Mentor的预期。
  2. 量化
    • 成功迁移124个Test。 –> 1.0
      • 搞定,并且构建了持续测试环境。
    • 为这些Test配置一个可稳定运行的环境。 –> 0.8
      • 基本搞定,但仍存在少量(每天1~2次)的不稳定状况。
  3. 改进
    • 恬着脸皮向不同的同事请教。 –> 1.0
      • 达成——基本每个同事都被我骚扰了一遍 –_–
    • 理解当前Test的架构和流程。 –> 1.0
      • 重建测试框架的过程中了解
    • 阅读The Art Of Unit Test,Guice Book和GuiceBerry Manual,了解如何用Guice写良好的Test。 –> 0.7
      • 部分完成,阅读Google Guice Book,了解了Guice运作机制。
    • 阅读Java Best Practices和Effective Java。 –> 0.8
      • 部分完成,重新阅读了JBP,但Effective Java只看了一多半。
    • 阅读Java Performance,了解JVM。 –> 0.7
  4. 验证
    • 每周与mentor交流,进行进度控制/难点求助。 –> 0.6
      • 由于mentor结婚度蜜月所以没有达成。
    • Test的数量不断增加。 –> 1.0
      • 达成——事实上全部搞定。
    • CL中review的数量持续降低。 –> 1.0
      • 搞定,成功的从每次提交代码20余个review降至小于6个。
    • 逐步理解项目代码背后的机理。 –> 0.6
      • 部分搞定,对项目测试框架已经相当了解了(毕竟自己重新搭建了整个框架),但对整个项目的各个模块,交互流程还是一头雾水。

综上所述,得分 0.85@H_404_1@

Tarqie-L

  1. 目标
    • 提高精力,理解Python。 –> 0.8
      • 精力小有提高,至于Python——实现机制不太了解,但Python语法和编程风格我现在有足够自信——毕竟写了一个程序解析合法的Python然后生成同等语义的Google风格的Python,再加上身边有一个Python Readability Reviewer,说自己现在达到中级Python开发者的水准应该不为过。
  2. 量化
    • 精力提高(自然醒,不赖床)。 –> 0.6
      • 自然醒但依然赖床——-_–
    • 熟悉Python及其实现。 –> 0.8
      • 部分搞定,见上文。
    • 理解4个开源项目的架构。 –> 1.0
      • 搞定,见下文。
  3. 改进
    • 早睡早起(11:30 PM ~ 8:30 AM)+每天运动20分钟。 –> 0.7
      • 早睡早起没做到,运动的频率两周一次。
    • 阅读相关技术书籍(Python源码剖析,开源项目架构等)。 –> 0.6
      • 部分完成,Python源码剖析只读了第一章,但开源项目架构每周一篇。
    • 增强学习能力(阅读《Study Less,Learn More》) –> 1.0
      • 完成。
    • 控制手淫频率至两周一次。 –> 1.0 –_–
      • 完成。
  4. 验证
    • 早睡早起+运动不间断。 –> 0.5
      • 搞定一半。两天运动一次。
    • 学习能力增强(+系统学习能力)。 –> 1.0
      • 部分做到,但很难验证——不过用十天搞出了另外一个家伙搞了5个月的东西应该能说明部分问题。
    • 逐步理解Python各个部分的实现(对象,语句,元组,列表,字典,控制流,异常,自定义类型,列表理解,生成器,模块,从源码了解其机制)。 –> 1.0
    • 每周理解1个开源项目的架构。 –> 1.0

综上所述,得分 0.8@H_404_1@

成就

工作

  1. 构建新的测试环境并迁移原有的测试用例。
    • 各种神坑,Team/MailList/Group/ReadTheFuckingSource。
    • manager一度问我是否需要support——想了想还是撑下来了,还好搞定了。
    • 神奇的发现自己第一次实习时做的也是migration,尼玛难道是轮回?
  2. 利用业余时间构建了pyfmt——基于AST的代码格式化工具,生成符合Google Python Style的等语义代码
    • 速度是公司工具的6倍到50倍不等(已验证)。
    • 速度是autopep8的3倍到30倍(已验证)。
    • 生成代码质量基本等同(待验证)。
    • 代码量是autopep8的二分之一。
    • 不依赖任何第三方库。
    • 不使用任何正则表达式——Never send a regex to do a parser’s job.

生活

  1. 重新实现了自己两年前写的Lucida。
  2. 《如何阅读书籍》《网络上瘾及其解决方法》两篇议论型博客
  3. 完整的完成一个引体向上。

阅读列表

一些体会

  1. 慢读慎写——读书不是靠页数,代码不是拼行数。
  2. 精益求精——严肃认真对待自己的任何一个项目/作品,每一行代码,每一个细节都应有其意义。
  3. Don’tsatisfice—— 在时间充裕的情况下,尽力寻找最优解,而不是找到一个答案就满足。
  4. Have a mentor/coach——无论学习什么,身边要有一个大师级人物,不要盲目相信自学能力——坑大多都是自己挖出来的。
  5. 在合适的抽象层工作(Working at a proper abstraction layer),包括下面几点:
    • 找到与目标最契合的层次:
      • 如果层级过高就会造成性能损失和功能缺失。
      • 如果层次过低就会变成重造轮子。
    • 总是在同一个层次工作——以避免上下文切换。
    • 将复杂度封装到各自对应的层次——以避免进行交互——Law of Demeter

发现的问题

  1. 3月目标制定的过于宏大——尽管完成度不错,但代价也很大——工作时间从每天8小时增加到10小时,到了后期的阅读时间几乎被缩减到零,接下来会相应的缩小计划目标。
  2. 除了工作就是学习,导致略抑郁——尽管做出的东西带来了一点成就感。总之接下来需要更多的娱乐。
  3. 猛然反应过来所谓的TARQIE其实就是OKR(Objective-Key-Results)——所以接下来直接使用OKR制定计划,更加简洁。

4月计划

OKR-J

  • 目标
    1. 完整迁移测试到原项目中。
    2. 稳定+推广pyfmt。
  • 关键结果
    1. 成功迁移124个Test到原项目。
    2. 将测试的不稳定性控制在每天3次以下。
    3. pyfmt通过Python Readability。
    4. pyfmt有10个以上的用户
    5. pyfmt从experimental进入devtools(略激进,但值得一试)。

OKR-L

作者:Lucida@H_404_1@

原文链接http://lucida.me/blog/summary-of-march-2014/@H_404_1@

猜你在找的正则表达式相关文章