-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
496 lines (404 loc) · 22.2 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
<!DOCTYPE html>
<!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"><![endif]-->
<!--[if IE 7]><html class="no-js lt-ie9 lt-ie8" lang="en"><![endif]-->
<!--[if IE 8]><html class="no-js lt-ie9" lang="en"><![endif]-->
<!--[if gt IE 8]<!-->
<html class="no-js" lang="zh">
<!--<![endif]-->
<head>
<meta charset="UTF-8">
<title>
风车官方博客 | 高效团队协作工具
</title>
<meta name="description" content="记录风车的产品更新和团队思考">
<meta name="keywords" content="项目管理工具,团队协作工具,项目管理工具,高效团队协作工具">
<meta name="author" content="The Fengche.co Team">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta http-equiv="cleartype" content="on">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="apple-touch-icon-precomposed" type="image/png" sizes="57x57" href="/apple-touch-icon-57x57-precomposed.png">
<link rel="apple-touch-icon-precomposed" type="image/png" sizes="72x72" href="/apple-touch-icon-72x72-precomposed.png">
<link rel="apple-touch-icon-precomposed" type="image/png" sizes="114x114" href="/apple-touch-icon-114x114-precomposed.png">
<link rel="apple-touch-icon-precomposed" type="image/png" href="/apple-touch-icon-precomposed.png">
<link rel="apple-touch-icon" type="image/png" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon.png">
<link rel="shortcut icon" sizes="16x16" href="/favicon.ico">
<link rel="alternate" type="application/rss+xml" title="Fengche.co Blog Feed" href="/blog/feed.xml" />
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link href="/stylesheets/application.css?1405912777" rel="stylesheet" type="text/css" />
<script src="/javascripts/application.js?1405912779" type="text/javascript"></script>
<script type="text/javascript" async="" src="http://www.google-analytics.com/ga.js"></script>
<script type="text/javascript">var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-4054156-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();</script>
</head>
<body class="index">
<header class="navbar navbar-fixed-top" role="banner">
<div class="container">
<a class="btn btn-navbar" data-target=".nav-collapse" data-toggle="collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="https://fengcheco.com/" tabindex="-1">Fengche.co</a>
<nav class="nav-collapse collapse" role="navigation">
<ul class="nav pull-right">
<li><a href="https://fengcheco.com">首页</a></li>
<li><a href="https://fengcheco.com/tour">了解产品</a></li>
<li><a href="https://fengcheco.com/pricing">价格方案</a></li>
<li><a class="login" data-target="#login-modal" data-toggle="modal" href="https://fengcheco.com/login" role="button" type="button">登录</a></li>
<li class="action"><a class="signup" href="https://fengcheco.com/signup">免费注册</a></li>
</ul>
</nav>
</div>
</header>
<section class="hero wrap-blue">
<div class="container header">
<h1 class="blog-name">「风车协作」官方博客</h1>
<p> 好好做产品,做好产品 </p>
</div>
</section>
<section class="main">
<div class="container">
<div id="posts">
<article class="post">
<header>
<h2 class="title">
<a href="/understanding-permission-system">理解风车的「权限系统」</a>
</h2>
</header>
<aside>
<ul class="meta">
<li class="author-photo">
<a href="http://beenhero.com">
<img alt="" width="120" height="120" src="/images/ben-he.png?1379005285" />
</a>
</li>
<li class="author">
by 何斌
</li>
<li class="date">
Dec 13, 2014
</li>
<li class="tags">
<a href="/tags/announcement">Announcement</a>
<a href="/tags/permission">permission</a>
<a href="/tags/权限系统">权限系统</a>
</li>
</ul>
</aside>
<div class="content">
<p>风车发布「权限系统」一个多月了,但仍有部分用户对「权限」设置及管理存有疑惑,甚至有些新用户找不到想要的功能。有必要写一个说明文档出来,暂且发布在 blog 里。</p>
<h2>用户角色和权限</h2>
<p>权限一般通过「角色」去定义范畴,换句话说「角色」就是若干「权限」的打包应用,在风车项目中,我们从权限的小到大划分了:</p>
<h4>访客</h4>
<p>以「访客」为角色加入项目的用户,他仅拥有只读权限,而且只能访问到那些被邀请加入的任务列表,所以一个默认的新访客进入项目是看不到任何东西的。但有一个特例:访客可以在加入的任务列表里面,参与任务的讨论,这也是为了团队沟通的考虑。</p>
<p>适用场景:</p>
<pre><code class="highlight plaintext"> 1. 比如外包项目,可以把雇主联络人加入进来,他可以看到项目的进展和信息,可以参与讨论,但是不能更改任何信息。
2. 跨部门的合作方,比如加入运营人员,让他们看到任务进展和参与讨论,但不能修改信息。
3. 加入公司的决策层,他们一般只需要阅览信息,而不需要对内容进行读写操作。
</code></pre>
<h4>合作方</h4>
<p>「合作方」相比「访客」,他们拥有读写权限,仍需要被邀请加入任务列表,加入后才能对列表任务进行读写操作。</p>
<p>适应场景:
主要是对「访客」的补充,一方面是控制该角色用户的资源访问权限,一方面他对资源可见时,也意味着可读写。
比如:第三方合作时,把他们加入进来,一起协同一些任务,但仍保持对其它信息的隔离。</p>
<h4>成员</h4>
<p>一般团队成员被加入项目后的用户角色,他们对项目的所有资源都可见,并且能对列表和任务进行读写操作,比如:新建任务、修改任务信息,参与讨论等等。</p>
<p>适应场景:普通项目团队成员,放开信息读写,但不能管理列表和成员。</p>
<h4>管理员</h4>
<p>除了拥有普通成员的权限,还拥有:新建/管理列表、邀请/管理成员及其它高级功能权限(如创建私有列表,下文会提到)。</p>
<p>适应场景:项目的管理员统筹和管理整个项目的资源.</p>
<h4>创建者</h4>
<p>项目的创建者,...</p>
<p>
......
</p>
<p>
<a href="/understanding-permission-system">Read more →</a>
</p>
</div>
</article>
<article class="post">
<header>
<h2 class="title">
<a href="/new_feature_resize_center_column">新功能:中间栏比例调节</a>
</h2>
</header>
<aside>
<ul class="meta">
<li class="author-photo">
<a href="http://poiyzy.github.io">
<img alt="" width="120" height="120" src="/images/zhuoyu-yang.png?1379005285" />
</a>
</li>
<li class="author">
by 杨濯宇
</li>
<li class="date">
Oct 30, 2014
</li>
<li class="tags">
<a href="/tags/announcement">Announcement</a>
</li>
</ul>
</aside>
<div class="content">
<p>终于… 直接看图!</p>
<p><img alt="resize-column" width="480" height="360" src="/images/resize-center-column/resize-center-column.gif?1414693345" /></p>
<p>
......
</p>
<p>
<a href="/new_feature_resize_center_column">Read more →</a>
</p>
</div>
</article>
<article class="post">
<header>
<h2 class="title">
<a href="/new_pricing_plan">风车全新 SaaS 定价</a>
</h2>
</header>
<aside>
<ul class="meta">
<li class="author-photo">
<a href="http://beenhero.com">
<img alt="" width="120" height="120" src="/images/ben-he.png?1379005285" />
</a>
</li>
<li class="author">
by 何斌
</li>
<li class="date">
Oct 09, 2014
</li>
<li class="tags">
<a href="/tags/announcement">Announcement</a>
<a href="/tags/pricing">pricing</a>
<a href="/tags/saas">SaaS</a>
</li>
</ul>
</aside>
<div class="content">
<h2>定价迷思</h2>
<p>如果让我说,我会把「定价」的难度排到周知的难题「取名」「<a href="http://martinfowler.com/bliki/TwoHardThings.html">缓存失效</a>」之列。毫不夸张的说,我们宁可去面对前两难,也想回避「定价」这个难题。作为SaaS应用,风车初版发布的时候,我们团队内部就有过很多的讨论,集中在:</p>
<ul>
<li>是否提供免费?</li>
<li>定价区间在哪里?</li>
<li>如何合理的限制资源?</li>
</ul>
<p>通常定价会考虑两大要素:1. 成本是多少? 2. 给客户创造的价值是多少?
除此外,通常定价也会参考同行竞争环境的价格,以此去设定一个理性的价格,所谓理性的另一层含义就是「客户能够接受的范围」。</p>
<p>然而在我们的调研过程中听到了两种截然不同的声音:</p>
<p><strong>A.「中国用户没有付费习惯」「互联网应用收费行不通」</strong>;<br>
<strong>B.「当没有客户因为你的定价而流失,说明你的定价还不够高」</strong>。</p>
<p>一系列激烈的讨论在此略过,但我们仍然没有一个统一的方案,最后秉着「<a href="http://en.wikipedia.org/wiki/Lean_startup">Lean Startup</a>」的原则,我们达成并沿用至今的定价方案:</p>
<p><strong>1. 不开放免费计划,只提供试用一个月</strong></p>
<pre><code class="highlight plaintext">我们想:
- 测试中国用户的付费习惯;
- 用户应该向「为其提供价值的应用」付费;
- 通过付费这个行为来验证我们所做的事情的正确性和方向性;
</code></pre>
<p><strong>2. 定价区间设在中下水平</strong></p>
<pre><code class="highlight plaintext">我们想:
- 当时市场上没有明确的竞争者定价参考,10~15元人/月的价格,应该是被QQ及迅雷这样的先驱验证过的。
- 较低的起价,可以让没有口碑和品牌影响力的产品更容易被接受。
</code></pre>
<p><strong>3. 不限任何资源,按团队规模收费</strong></p>
<pre><code class="highlight plaintext">我们想:
- 让每个用户都能无约束的去使用产品,发挥产品的最大能效。
- 无论存储力还是计算力,其实都已经非常廉价。而我们提供的客户价值,是随着团队规模的增大而放大的。
- 由于产品还处于成长初期,中小企业才是我们的目标客户。
</code></pre>
<p><img alt="Old Pricing Plan" width="1208" height="297" src="/images/new-pricing-plan/old-pricing-plan.jpg?1414688985"></p>
<h2>用户反馈</h2>
<p>这套方案沿用了一年多,很难说它的成败好坏,但这个过程中我们收到很多的反馈,包括来...</p>
<p>
......
</p>
<p>
<a href="/new_pricing_plan">Read more →</a>
</p>
</div>
</article>
<article class="post">
<header>
<h2 class="title">
<a href="/attachments-updates">新功能:下载所有附件</a>
</h2>
</header>
<aside>
<ul class="meta">
<li class="author-photo">
<a href="http://yedingding.com">
<img alt="" width="120" height="120" src="/images/dingding-ye.png?1379005285" />
</a>
</li>
<li class="author">
by 叶玎玎
</li>
<li class="date">
Aug 23, 2014
</li>
<li class="tags">
<a href="/tags/announcement">Announcement</a>
<a href="/tags/文档管理">文档管理</a>
</li>
</ul>
</aside>
<div class="content">
<p>作为一个以任务管理为核心的工具,风车是为了解决计划安排和进度跟踪的问题,所以在文档管理上目前还有不少欠缺,比如不像 Dropbox 能直接本地管理,也没有文件版本控制。但是相比用 QQ 文件传来传去的无序,在风车上基于任务主题分享文件协同管理还是非常方便的。今天我们发布了一个新功能,『下载所有附件』,同时也加强了文件管理上的安全性。</p>
<p>一个任务附件太多,一个一个下载很麻烦,现在好了,我们提供了一键下载所有任务附件的功能,点击后会提供压缩包下载。当然,如果当前任务没有任何附件,你在菜单里是看不到这个操作的。</p>
<p><img alt="Download All Attachments" width="200" height="271" src="/images/attachments-updates/download-all-attachments.png?1408772257" /></p>
<p>在此之外,我们在安全性上也做了增强,现在文件的地址会是随机生成并且具有短时效性,超时将无法访问,这样大大减少了文件误分享的可能性。</p>
<blockquote>
<p>小贴士: 其实风车是可以拖拽上传文件的,直接选中文件拖进风车的应用或者页面就可以了。</p>
</blockquote>
<p>知识管理是团队协作中很重要的一环,风车虽然侧重任务管理,但是也会提供简单基础的文档协同功能。关于知识管理的下一步,我们计划提供团队文本协同编辑和统一的文件管理入口,敬请期待!</p>
<p>
......
</p>
<p>
<a href="/attachments-updates">Read more →</a>
</p>
</div>
</article>
<article class="post">
<header>
<h2 class="title">
<a href="/daily-recap-and-reminder-help-you-never-missing">新功能:「每日回顾」和「到期提醒」邮件让你不再错过</a>
</h2>
</header>
<aside>
<ul class="meta">
<li class="author-photo">
<a href="http://beenhero.com">
<img alt="" width="120" height="120" src="/images/ben-he.png?1379005285" />
</a>
</li>
<li class="author">
by 何斌
</li>
<li class="date">
Aug 14, 2014
</li>
<li class="tags">
<a href="/tags/新功能">新功能</a>
<a href="/tags/email">Email</a>
<a href="/tags/announcement">Announcement</a>
</li>
</ul>
</aside>
<div class="content">
<p>进入八月,距离我们「风车协作」发布中文版已过去一年多。这一年我们不停地听取用户意见,不停地改进产品,其中发现大家对 Email 的依赖程度还是非常高.我们有常规的任务更新与讨论的邮件通知,我们还做了 <a href="https://fengcheco.com/blog/new-feature-comment-via-email/">Email 来管理任务</a> 并且进行了<a href="https://fengcheco.com/blog/enhancement-of-email-management">加强</a>,今天向大家发布两个新的 Email 功能:「每日回顾」和「到期提醒」。</p>
<h2>每日回顾</h2>
<p>当你在外出差,或在休假途中,你可能不会一直开着我们的 App 来关心团队成员们在做些什么或讨论什么,但是你一定不想错过任何关键的信息。基于此,我们专门搜集和整理了每一天的更新动态,按照你参与的项目划分,罗列出该项目哪些成员参与了协同,哪些任务被谁做了什么更新。同时在最顶处,展示了每一天你所有项目的一个数据统计,包括「每天有多少个活跃项目」「每天新建了多少个任务」「每天完成了多少个任务」和「每天成员们新增的讨论数」。(见下图)</p>
<p><img alt="Daily Recap Snapshot" width="754" height="755" src="/images/daily-recap-and-reminder-help-you-never-missing/daily-review-email-snapshot.jpg?1408772257"></p>
<p>有了「每日回顾」,我想它应该是你或管理员,去查看一天团队或项目动态的最佳途径。当然,你可以选择关闭这个邮件通知,采用打开App 查看「通知中心」去了解动态。关于如何关闭邮件通知,我后面马上会提到。</p>
<h2>到期提醒</h2>
<p>从 <a href="http://zh.wikipedia.org/wiki/GTD">GTD</a> (Get Thing Done) 的角度出发,你应该充分清空大脑,把要做的事情都罗列到「风车协作」里面,然后一次就关心一件事情,大脑专注去做事。为了避免错过关键时间节点,你需要为任务设置一个到期时间,让系统帮你去记忆和提醒。虽然风车系统里有明显颜色区分的「到期时间」显示,但仍有错过的概率。所以我们学习 Calendar 日历的做法,让提醒更主动的推送到你面前:每天早上发送一封「当日到期任务的提醒邮件」,让你清楚知道今天需要做什么事情。此外,在「今天到期任务」下方我们还列出了「已逾期任务」,提醒你那些已经过期但仍未被处理的任务(还不赶紧去处理!) :)</p>
<p><img alt="Reminder Snapshot" width="750" height="624" src="/images/daily-recap-and-reminder-help-you-never-missing/reminder-email-snapshot.jpg?1408772257"></p>
<h2>关闭「每日回顾」和「到期提醒」</h2>
<p>因为这两个...</p>
<p>
......
</p>
<p>
<a href="/daily-recap-and-reminder-help-you-never-missing">Read more →</a>
</p>
</div>
</article>
<ul class="pager">
<li class="next"><a href="/page/2">Older →</a></li>
</ul>
</div>
<script type="text/javascript">
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
var disqus_shortname = 'pragmaticlyblog'; // required: replace example with your forum shortname
/* * * DON'T EDIT BELOW THIS LINE * * */
(function () {
var s = document.createElement('script'); s.async = true;
s.type = 'text/javascript';
s.src = '//' + disqus_shortname + '.disqus.com/count.js';
(document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
}());
</script>
</div>
</section>
<footer class="site-footer" role="contentinfo">
<div class="container">
<div class="row">
<div class="span2 offset2">
<nav>
<h5>网站相关</h5>
<ul>
<li><a href="https://fengcheco.com/">首页</a></li>
<li><a href="https://fengcheco.com/tour">了解产品</a></li>
<li><a href="https://fengcheco.com/pricing">价格方案</a></li>
<li><a href="https://fengcheco.com/privacy">隐私政策</a></li>
<li><a href="https://fengcheco.com/terms">服务条款</a></li>
</ul>
</nav>
</div>
<div class="span2">
<nav>
<h5>服务支持</h5>
<ul>
<!--<li><a href="/help">帮助中心</a></li>-->
<li><a href="https://fengcheco.com/get-started">新手帮助</a></li>
<li><a href="mailto:[email protected]">联系我们</a></li>
</ul>
</nav>
</div>
<div class="span2">
<nav>
<h5>联系合作</h5>
<ul>
<li><a href="https://fengcheco.com/about">关于我们</a></li>
<li><a href="mailto:[email protected]">合作伙伴</a></li>
<li><a href="mailto:[email protected]">媒体报道</a></li>
</ul>
</nav>
</div>
<div class="span2">
<nav>
<h5>关注我们</h5>
<ul>
<li><a href="https://fengcheco.com/blog">官方博客</a></li>
<li><a class="social-weibo" href="http://weibo.com/fengcheco" target="_blank">微博</a></li>
<li>QQ群: 162278625</li>
<li><a class="social-facebook" href="https://facebook.com/fengcheco" target="_blank">Facebook</a></li>
<li><a class="social-twitter" href="https://twitter.com/#!/fengcheco" target="_blank">Twitter</a></li>
</ul>
</nav>
</div>
</div>
<div class="copyright">
<p>© 2012-2014 Fengche.co (former Pragmatic.ly)</p>
</div>
</div>
</footer>
<!-- begin olark code -->
<script data-cfasync="false" type='text/javascript'>/*{literal}<![CDATA[*/
window.olark||(function(c){var f=window,d=document,l=f.location.protocol=="https:"?"https:":"http:",z=c.name,r="load";var nt=function(){f[z]=function(){(a.s=a.s||[]).push(arguments)};var a=f[z]._={},q=c.methods.length;while(q--){(function(n){f[z][n]=function(){f[z]("call",n,arguments)}})(c.methods[q])}a.l=c.loader;a.i=nt;a.p={0:+new Date};a.P=function(u){a.p[u]=new Date-a.p[0]};function s(){a.P(r);f[z](r)}f.addEventListener?f.addEventListener(r,s,false):f.attachEvent("on"+r,s);var ld=function(){function p(hd){hd="head";return["<",hd,"></",hd,"><",i,' onl' + 'oad="var d=',g,";d.getElementsByTagName('head')[0].",j,"(d.",h,"('script')).",k,"='",l,"//",a.l,"'",'"',"></",i,">"].join("")}var i="body",m=d[i];if(!m){return setTimeout(ld,100)}a.P(1);var j="appendChild",h="createElement",k="src",n=d[h]("div"),v=n[j](d[h](z)),b=d[h]("iframe"),g="document",e="domain",o;n.style.display="none";m.insertBefore(n,m.firstChild).id=z;b.frameBorder="0";b.id=z+"-loader";if(/MSIE[ ]+6/.test(navigator.userAgent)){b.src="javascript:false"}b.allowTransparency="true";v[j](b);try{b.contentWindow[g].open()}catch(w){c[e]=d[e];o="javascript:var d="+g+".open();d.domain='"+d.domain+"';";b[k]=o+"void(0);"}try{var t=b.contentWindow[g];t.write(p());t.close()}catch(x){b[k]=o+'d.write("'+p().replace(/"/g,String.fromCharCode(92)+'"')+'");d.close();'}a.P(2)};ld()};nt()})({loader: "static.olark.com/jsclient/loader0.js",name:"olark",methods:["configure","extend","declare","identify"]});
/* custom configuration goes here (www.olark.com/documentation) */
olark.identify('8594-504-10-6122');/*]]>{/literal}*/
</script>
<noscript><a
href="https://www.olark.com/site/8594-504-10-6122/contact"
title="Contact us" target="_blank">Questions? Feedback?</a>
powered by <a href="http://www.olark.com?welcome" title="Olark
live chat software">Olark live chat software</a></noscript>
<!-- end olark code -->
</body>
</html>