Skip to content

Commit

Permalink
[doc] update tao-art and PM.
Browse files Browse the repository at this point in the history
  • Loading branch information
lihanghang committed Jul 31, 2022
1 parent 8cafac1 commit eff40b5
Show file tree
Hide file tree
Showing 14 changed files with 296 additions and 97 deletions.
Binary file modified build/doctrees/doc/团队与项目管理/team_project.doctree
Binary file not shown.
Binary file modified build/doctrees/doc/道与术/tao-art.doctree
Binary file not shown.
Binary file modified build/doctrees/environment.pickle
Binary file not shown.
37 changes: 30 additions & 7 deletions build/html/_sources/doc/团队与项目管理/team_project.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
==================
.. note::
- 创建时间:2020-1-1
- 更新时间:2022-07-29
- 更新时间:2022-07-31
- 开发与项目管理是不可分家的(自我定位要准),对于个人也是同样的。虽然你我可能还处于所谓的“码农”阶段,但也要有big picture!,了解团队协作、项目从立项到实施再到交付、维护全流程等,这样才能在工作中多角度思考所遇到的问题,同时也有利于协作能力的提升。
- 本章就会集中记录下我在日常工作的思考、学习、实践的心得和经验。

Expand Down Expand Up @@ -65,27 +65,50 @@
6. 适度向组员传导压力,不用过多阻塞在项目经理或执行经理这里。


敏捷开发
===========
敏捷(Agile)开发
=====================
背景
^^^^^^^^
从2022年4月开始,公司产品研发迭代基于敏捷开发进行,每个迭代周期基本持续4周,每个周期的工作包含了需求梳理,设计,编码,测试,发布,验收。
在这个过程中我以teamleader的角色全程参与,也是初次完整实践敏捷开发流程,下文主要将敏捷开发的基本动作和个人的实践做一总结。
在Scrum团队我担任的角色是Scrum Master。

1. 看板。小组内的迭代目标及每个人的任务进度,未完成,进行中,已完成。
2. 每日站会。每天固定时间花费在15分钟内同步下任务完成情况,昨天的任务完成情况,今天的计划,遇到的问题,需要哪些配合等。
3. 迭代完成后的总结,复盘。


什么是敏捷开发?
^^^^^^^^^^^^^^^^^^^^
- 作用:

应对开发中的不确定性,周期性,增量式交付成果,最终交互按时,保质的产品。

- 方法:

1. scrum
2. 极限编程(Extreme programming, xp)

Scrum Meetting
^^^^^^^^^^^^^^^^^^^^
Scrum
^^^^^^^^^^^
scrum是敏捷开发的一种框架,流程化具体做法。涉及到一些名词概念:

1. sprint。冲刺,也可在scrum中译为迭代。
2. backlog。 任务池,还未开始做的工作。
3. Daily Scrum Meeting。每日站会。

Scrum涉及到的三个角色:

1. SScrum Master。 敏捷专家,简称SM
2. Product Owner。产品负责人,简称PO
3. Development Team。开发团队

实践中的真实情况
^^^^^^^^^^^^^^^^^^

1. 沟通是关键,面对面的沟通尤为重要,因为它更有效。
2. 任务分解和跟踪是保证。


实践总结及建议
^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^
1. 产品的总体规划和系统总体设计尤为重要,这会为后续的迭代提供最根本的遵循,以团队防止迷失方向。
47 changes: 40 additions & 7 deletions build/html/_sources/doc/道与术/tao-art.rst.txt
Original file line number Diff line number Diff line change
@@ -1,26 +1,59 @@
===============
coding的道与术
道与术
===============
.. note::
- 将工作中涉及编码的的所见、所听、所感,统统记录在这里
- 将工作,职场中的的所学、所见、所感记录在这块田地里,不断成长,林荫满园
- 创建时间:2020-05-23
- 更新时间:2020-06-24
- 更新时间:2022-07-31


工作
**********
关于coding
==============
工具/调试
============
-------------
1. 一般来说,使用Pycharm进行开发还是比较方便的,有较为完善的调试工具和交互界面,比较高效。善于使用工具可以大大提高工程开发的效率,要有意识去尝试方便的开发工具。也可以使用VSCode工具(插件化生态做的可以,界面简洁功能同样强大)
2. 对于一个专业的以开发为营生的人来说,开发前准备好两个基本工具是很有必要的。一是个人喜欢且具备高效率的IDE、二是保证随时能够Google!
3. 公司的日常开发,必然是协作。这时必须熟练使用GIT命令及创建分支与commit code的规范,开发环境最好使用虚拟环境,推荐使用的工具有:pipenv:虚拟环境管理工具、pyenv:Python版本管理工具。以上都是作为一个有开发经验人所应具备的。
4. 有一个能力必须在日常实践中有意识的训练:debuge、debuge、debuge!!!
5. Docker作为一个工具,在部署环节可大大减少工作量,以配置文件代替大量的复杂环节,对后续的可扩展起到一定帮助作用。
6. pycharm 官方学习文档包含工程方面的讲解比较全面,想快速学习相关调试等可以进入官方文档学习。
7. 掌握常用vim命令也能在服务器操作中起到事半功倍的效果。

精益代码
==========
-------------
1. 看到公司对于代码的要求:简洁优美、重要的是代码的可扩展能力和易用性,需要在开发中去思考代码如何能够最大化扩展性能。主要有几个特点:封装、高内聚,低耦合、兼容性。
2. 对于新进公司的人才,当接触到公司庞大的代码时,可以在具体的任务背景下去运行并调试代码,需要带着问题去看代码,如:参数是什么格式或类型、传参过程是怎样的、最终返回了什么等等。还有一个技巧就是参考并手敲(经典的代码2遍起吧)并能运行前人写的代码,注意人家的命名规范和解决问题的思路等等。这个过程可能会有些痛苦(目前(201907)的我)但是成为一个优秀程序员的必经之路,没有什么捷径可走!
3. 如何写出"有味道"的代码,主要从两个方面入手:一是标准的代码风格;二是优秀的具有逻辑的实现。

Code Review
================
1. CR原则梳理 `脑图 <http://naotu.baidu.com/file/56ee560ce52d4e48fa49982d799c0f29?token=399924fdebcdb173>`_
----------------
1. CR原则梳理 `脑图 <http://naotu.baidu.com/file/56ee560ce52d4e48fa49982d799c0f29?token=399924fdebcdb173>`_


职场
*****
关于写作
========
方法论
-------------
以下内容摘自 刘润老师的公众号文章 `请笑纳:我这28年的写作心法,全部都在这里了 <https://mp.weixin.qq.com/s/r09jN0HS9DO0Mrx7OlxkVA>`_。

写作时可以借鉴的几个心态或者要点,我根据自己的经验和感受排了个序,看看你觉得哪些点更重要呢?

1. 逻辑。推荐书籍《金字塔原理》。文章的背景、冲突、问题、答案。
2. 同理心。
3. 对象感。对象要具体,如用”你“代替“大家”
4. 讲故事-关键在于细节。因为没有人喜欢被强加的观点,我们喜欢的,是自己得出结论。
5. 举例子-降低认知成本。
6. 幽默感。目的是让读者更加读懂和理解要讲的内容。开自己的玩笑,是一种幽默感。
7. 开门见山。直接给出结论,然后再说背景和冲突。个人体悟:这一点你在工作肯定用的到,比如给主管或领导汇报工作,一般结论现行都是很正确的做法。
8. 有能力解决冲突,能够提出问题也有能力解决问题,让读者能从文字中获取信心。
9. 打比方-窥探核心本质。
10. 商派。场景导入-打破认知-核心逻辑-举一反三-回顾总结。

11. 结构。刘润老师的公众号文章一般有3段式、10点式、32条。
12. 观点。
13. 突出忧虑。直接跑出一个引起人忧虑的问题?让人进入情境。 一般骗子就喜欢制造焦虑。

96 changes: 66 additions & 30 deletions build/html/doc/团队与项目管理/team_project.html
Original file line number Diff line number Diff line change
Expand Up @@ -100,14 +100,7 @@
</ul>
<p class="caption"><span class="caption-text">编程语言及开发框架</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/C++.html">1. C++</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/Java技术栈/Java基础技术体系.html">2. Java基础技术体系</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/Java技术栈/常用框架/Spring.html">3. Spring</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/Java技术栈/常用框架/SpringBoot.html">4. SpringBoot基础</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/Java技术栈/常用框架/SpringBoot.html#id6">5. SpringBoot进阶</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/python技术栈/Python.html">6. Python基础知识</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/python技术栈/常用框架/django.html">7. Django</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/Drools.html">8. Drools规则引擎</a></li>
<li class="toctree-l1"><a class="reference internal" href="../编程语言及开发框架/index.html">语言及框架</a></li>
</ul>
<p class="caption"><span class="caption-text">后端接口开发</span></p>
<ul>
Expand Down Expand Up @@ -143,8 +136,7 @@
</ul>
<p class="caption"><span class="caption-text">服务器</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../服务器/server.html">1. Linux 基础知识</a></li>
<li class="toctree-l1"><a class="reference internal" href="../服务器/server.html#id1">2. Linux 常用命令</a></li>
<li class="toctree-l1"><a class="reference internal" href="../服务器/server.html">1. 服务器系列</a></li>
</ul>
<p class="caption"><span class="caption-text">分布式与微服务系列</span></p>
<ul>
Expand Down Expand Up @@ -182,12 +174,12 @@
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#id5">1.3. 团队协作</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id6">1.4. 敏捷开发</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id7">1.4.1. 背景</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id8">1.4.2. 什么是敏捷开发?</a></li>
<li class="toctree-l3"><a class="reference internal" href="#scrum-meetting">1.4.3. Scrum Meetting</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id9">1.4.4. 实践中的真实情况</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id10">1.4.5. 实践总结及建议</a></li>
<li class="toctree-l2"><a class="reference internal" href="#agile">1.4. 敏捷(Agile)开发</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id6">1.4.1. 背景</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id7">1.4.2. 什么是敏捷开发?</a></li>
<li class="toctree-l3"><a class="reference internal" href="#scrum">1.4.3. Scrum</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id8">1.4.4. 实践中的真实情况</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id9">1.4.5. 实践总结及建议</a></li>
</ul>
</li>
</ul>
Expand All @@ -196,7 +188,7 @@
</ul>
<p class="caption"><span class="caption-text">道与术</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../道与术/tao-art.html">1. coding的道与术</a></li>
<li class="toctree-l1"><a class="reference internal" href="../道与术/tao-art.html">1. 道与术</a></li>
</ul>


Expand Down Expand Up @@ -267,7 +259,7 @@ <h1>1. 团队建设与项目管理<a class="headerlink" href="#id1" title="永
<p class="first admonition-title">注解</p>
<ul class="last simple">
<li>创建时间:2020-1-1</li>
<li>更新时间:2022-07-29</li>
<li>更新时间:2022-07-31</li>
<li>开发与项目管理是不可分家的(自我定位要准),对于个人也是同样的。虽然你我可能还处于所谓的“码农”阶段,但也要有big picture!,了解团队协作、项目从立项到实施再到交付、维护全流程等,这样才能在工作中多角度思考所遇到的问题,同时也有利于协作能力的提升。</li>
<li>本章就会集中记录下我在日常工作的思考、学习、实践的心得和经验。</li>
</ul>
Expand Down Expand Up @@ -358,24 +350,68 @@ <h2>1.3. 团队协作<a class="headerlink" href="#id5" title="永久链接至标
<li>适度向组员传导压力,不用过多阻塞在项目经理或执行经理这里。</li>
</ol>
</div>
<div class="section" id="agile">
<h2>1.4. 敏捷(Agile)开发<a class="headerlink" href="#agile" title="永久链接至标题"></a></h2>
<div class="section" id="id6">
<h2>1.4. 敏捷开发<a class="headerlink" href="#id6" title="永久链接至标题"></a></h2>
<div class="section" id="id7">
<h3>1.4.1. 背景<a class="headerlink" href="#id7" title="永久链接至标题"></a></h3>
<h3>1.4.1. 背景<a class="headerlink" href="#id6" title="永久链接至标题"></a></h3>
<p>从2022年4月开始,公司产品研发迭代基于敏捷开发进行,每个迭代周期基本持续4周,每个周期的工作包含了需求梳理,设计,编码,测试,发布,验收。
在这个过程中我以teamleader的角色全程参与,也是初次完整实践敏捷开发流程,下文主要将敏捷开发的基本动作和个人的实践做一总结。</p>
在这个过程中我以teamleader的角色全程参与,也是初次完整实践敏捷开发流程,下文主要将敏捷开发的基本动作和个人的实践做一总结。
在Scrum团队我担任的角色是Scrum Master。</p>
<blockquote>
<div><ol class="arabic simple">
<li>看板。小组内的迭代目标及每个人的任务进度,未完成,进行中,已完成。</li>
<li>每日站会。每天固定时间花费在15分钟内同步下任务完成情况,昨天的任务完成情况,今天的计划,遇到的问题,需要哪些配合等。</li>
<li>迭代完成后的总结,复盘。</li>
</ol>
</div></blockquote>
</div>
<div class="section" id="id8">
<h3>1.4.2. 什么是敏捷开发?<a class="headerlink" href="#id8" title="永久链接至标题"></a></h3>
<div class="section" id="id7">
<h3>1.4.2. 什么是敏捷开发?<a class="headerlink" href="#id7" title="永久链接至标题"></a></h3>
<ul>
<li><p class="first">作用:</p>
<p>应对开发中的不确定性,周期性,增量式交付成果,最终交互按时,保质的产品。</p>
</li>
<li><p class="first">方法:</p>
<blockquote>
<div><ol class="arabic simple">
<li>scrum</li>
<li>极限编程(Extreme programming, xp)</li>
</ol>
</div></blockquote>
</li>
</ul>
</div>
<div class="section" id="scrum-meetting">
<h3>1.4.3. Scrum Meetting<a class="headerlink" href="#scrum-meetting" title="永久链接至标题"></a></h3>
<div class="section" id="scrum">
<h3>1.4.3. Scrum<a class="headerlink" href="#scrum" title="永久链接至标题"></a></h3>
<p>scrum是敏捷开发的一种框架,流程化具体做法。涉及到一些名词概念:</p>
<blockquote>
<div><ol class="arabic simple">
<li>sprint。冲刺,也可在scrum中译为迭代。</li>
<li>backlog。 任务池,还未开始做的工作。</li>
<li>Daily Scrum Meeting。每日站会。</li>
</ol>
</div></blockquote>
<p>Scrum涉及到的三个角色:</p>
<blockquote>
<div><ol class="arabic simple">
<li>SScrum Master。 敏捷专家,简称SM</li>
<li>Product Owner。产品负责人,简称PO</li>
<li>Development Team。开发团队</li>
</ol>
</div></blockquote>
</div>
<div class="section" id="id9">
<h3>1.4.4. 实践中的真实情况<a class="headerlink" href="#id9" title="永久链接至标题"></a></h3>
<div class="section" id="id8">
<h3>1.4.4. 实践中的真实情况<a class="headerlink" href="#id8" title="永久链接至标题"></a></h3>
<ol class="arabic simple">
<li>沟通是关键,面对面的沟通尤为重要,因为它更有效。</li>
<li>任务分解和跟踪是保证。</li>
</ol>
</div>
<div class="section" id="id10">
<h3>1.4.5. 实践总结及建议<a class="headerlink" href="#id10" title="永久链接至标题"></a></h3>
<div class="section" id="id9">
<h3>1.4.5. 实践总结及建议<a class="headerlink" href="#id9" title="永久链接至标题"></a></h3>
<ol class="arabic simple">
<li>产品的总体规划和系统总体设计尤为重要,这会为后续的迭代提供最根本的遵循,以团队防止迷失方向。</li>
</ol>
</div>
</div>
</div>
Expand Down

0 comments on commit eff40b5

Please sign in to comment.