2012年8月30日星期四

Android开发笔记(二)


Android开发笔记(二)


    -- Android开发网上资料搜集(部分)


最近,刚开始从事Android程序开发,由于之前(大学时期)就已经掌握了或多或少的Java开发基础,包括Java语言基础与开发环境(Eclipse,NetBeans等),所以,在短期入门Android开发难度不大。但是,要想做好当然不容易的,需要一段时间的磨练,学习android开发资料以及实践经验的积累。

以上的背景说明大概描述过了,那说说这篇笔记的内容吧。内容就是针对这段时间(10 days+)从网上搜集到的相关资源的整理,主要涉及android开发的网络通信,多线程,消息处理等。足够的简单内容,可惜的是暂时没有属于自己的东西可拿出来的分享。毕竟,还是刚入门不久的Android小生一枚。待日后功力足矣再言,亦可。

--- Android开发网上资料搜集(部分)  --
Android UI学习 - 对话框 (AlertDialog & ProgressDialog)
http://android.blog.51cto.com/268543/333769/

Android程序完全退出的三种方法
http://blog.csdn.net/gumanren/article/details/6199789

Android中的异步IO-Select模型
http://blog.csdn.net/magoboy/article/details/7588460

GPS定位基本原理浅析
http://www.cnblogs.com/magicboy110/archive/2010/12/09/1901669.html

Android 中文件类型与MIME的匹配表
http://www.cnblogs.com/hibraincol/archive/2010/09/16/1828502.html

用 managedQuery() 时需要注意的一个陷阱
http://blog.csdn.net/quaful/article/details/6976768

android中handlerthread通知机制
http://www.liuxuchao.com/show-13-2-3.html

Android Handler机制
http://blog.csdn.net/stonecao/article/details/6417364

Android的消息机制,用Android线程间通信的Message机制,Android中Handler的使用方法——在子线程中更新界面,handler机制
http://www.cnblogs.com/-OYK/archive/2011/08/03/2126657.html

Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面
http://blog.csdn.net/mylzc/article/details/6736988

android_获取音乐文件信息
http://wenku.baidu.com/view/332ca36048d7c1c708a1454b.html

在Android 中调用选择图片、视频、添加音频、录音、拍摄视频、拍照等其他的功能
http://blog.csdn.net/geolo/article/details/6557860

Android Permission大全1.0最终版本
http://www.builder.com.cn/2008/0925/1152080.shtml

Android开发中获取本机Mac地址和IP地址的方法 (存在问题需改进)
http://blog.csdn.net/sulanyan29/article/details/7349612

Android的窗口机制分析-事件处理
http://www.linuxidc.com/Linux/2011-11/47721.htm

Android 对话框(Dialog)大全 建立你自己的对话框
http://www.cnblogs.com/salam/archive/2010/11/15/1877512.html

android Uri获取真实路径转换成File的方法
http://fzlihui.iteye.com/blog/1098043

android Toast大全(五种情形)建立属于你自己的Toast
http://www.cnblogs.com/salam/archive/2010/11/10/1873654.html

Android Handler机制
http://blog.csdn.net/stonecao/article/details/6417364

android的socket与udp广播
http://www.eoeandroid.com/thread-23413-1-1.html

【Android】Socket编程 TCP和UDP实现
http://hi.baidu.com/lphack/item/39bf110e5a118c3ef3eafcad、

Android数据存储(总结篇)
http://www.moandroid.com/?p=319

Thread和Looper以及Handler和Message详解 Android开发必读
http://www.android123.com.cn/androidkaifa/422.html

Android下如何调试程序?
http://www.moandroid.com/?p=339

Android DDMS如何使用?
http://www.moandroid.com/?p=638

android消息推送-XMPP
http://blog.csdn.net/sulanyan29/article/details/7451663

[Android算法] 【eoeAndroid索引】史上最牛最全android开发知识汇总
http://www.eoeandroid.com/thread-168008-1-1.html

加密(混淆)APK安装包防止反编译。
http://topic.csdn.net/u/20120816/18/65c5fd07-ae0c-41a9-9a46-c4faec76cd79.html?62827
--- Android开发网上资料搜集(部分)  --

后续若有时间再针对性地整理一下最近的学习心得或其他值得推荐的学习资料吧。根据网上搜索Android开发相关资料的情况,总体感觉Android开发还是比较活跃的。
最后,在此感觉一些同事、朋友提供的帮助,如@SmallArcher ,@wangzhichao等。

(完)

2012年8月27日星期一

如何提高工作会议效率


如何提高工作会议效率

#工作效率# 笔记:20120820 ) 

鉴于最近繁忙的工作,基本上每天一次工作会议讨论,其中深度热度都保持在良好的范围。差不多这样的会议:5-6人讨论会议,每次会议总结一份会议记录结果与TODO LIST,明确分工情况,每次会议内容开始于上次会议的结果与TODO LIST。大概流程如下:

a. 回顾上次会议TODO LIST的解决情况。
b. 各自发言提出遇到的新旧问题,一起讨论解决方案。
c. 下一步工作任务的确定与分工。
d. 会议记录并总结。

这段时间的会议参与让自己对于这方面有些额外(除工作内容)的体会,而且感觉不错不妨尝试将心得描述出来。
……

就关于如何提高工作会议效率”该话题,在此简单地总结关键的几点:

1,确定会议主题可包括若干主题,但不求多。
     开会之前就需要有人去确定会议的主题或是上次会议遗留下来的TODO LIST。

2彼此讨论需要意见鲜明,此时沟通无需含蓄遮掩。
     越是含蓄,或是表达不清,那么使问题容易复杂化。若没想到把问题表达情况,那请你继续思考。

3必需有人具权威地控制讨论范围,避免跑题。
     多人的会议讨论,容易扩大了问题讨论范围,或多种解决方案无法让问题有着落,或多方持有不同观点等等……此时需要权威人的拍板。

4白板画笔必备,且需有人做过程记录并会后总结。
     白板与画笔可以是思维表现的载体,彼此快速沟通的催化剂。可能这样形容不够贴切,但差不多就那意思了。会议记录与总结目的就是提取会议要点,让会议内容延续下去如推进工作进展,落实会议结果。

5适当控制讨论情绪,激动也行但不得积怨。
     希望通过会议上面的讨论,从侧面上可以增进同事间彼此的沟通与理解。

其实,实际工作中各人情况存在或多或少的差异,所以以上这些当然不是教条,只是一种工作方面的心得感悟,甚至是一时的。


附一条,昨晚的微博,如下:
睡前吐点不快,以好睡觉:哎,忙活一天,加班就不说了,都是边敲代码边思考琢磨边讨论再敲代码...这样的头脑风暴,甚可惜的是折腾到十点半还没出来满意的结果,只能明天赶早继续,还有,更好的彼此协作很重要,需进一步改进。祝晚上睡好别满脑浑沌着,明天事半功倍!好久没这状态了,亦好亦不好。

(完)

2012年8月21日星期二

Android开发笔记(一)


Android开发笔记(一)
     -- 入门新手篇


1. android开发环境的搭建。
     a. Eclipse 官网链接,选择下面两款安装包:
Eclipse IDE for Java Developers
Eclipse IDE for Java EE Developers,
          下载页面链接

     b. JDK,下载页面链接 。
      选择更加稳定的,适用于android开发即可,我现在(201208)选择的是 Java SE 6 Update 34。

     c. android开发SDK 链接
     Eclipse IDE有这样的功能,你提供url链接,IDE会自动获取android sdk,安装并更新。

     PS. 整个环境搭建的流程可以参见某博客:链接1链接2

2. android开发文档
     a. SDK官方文档,链接
     b. 几篇不错的PDF文档,罗列如下:
Android开发指南中文版.pdf
Android中文翻译组——Android中文API合集(7).chm
Android基础教程.pdf
Google Android开发入门与实战.pdf
Google.Android.SDK开发范例大全.第2版.pdf
wifi无线网络协议(链路层)
IEEE Standards 802.11-2007.pdf
wp_Wi-Fi_Direct_20101022_Consumer_Simplified_Chinese.pdf
802.11无线网络权威指南+第二版(中文版).pdf
还有,建议网上搜索《android开发视频教程》下载。


3. android编程开发基础
     a. Java 语言基础。参考维基,链接
     b. 面向对象技术。参考维基,链接

4. android程序的几要点, 包括:
     a. Activity, 为用户操作展示的可视化用户界面. 包括所有android程序界面.
     b. Service, 提供用户允许提交给系统后台允许的android服务, 如后台播放音乐, 后台下载.
     c. BroadcastReceiver, 广播接收器是一个专注于接收广播通知消息, 并做出对应处理的组件.
     d. ContentProvider, 内容提供者将一些特定的应用程序数据提供给其他程序使用, 用于跨进程间的数据通信.
     e. Intent, 其对象保存着消息的内容, 以异步消息的形式可以激活activity, Service, BroadcastReceiver对象.
     f. AndroidManifest.xml, android程序的一个很重要的配置文件,比较简单,值得研究.
     g. 不能在主线程(即android UI线程)以外的线程里创建AsynTask实例,引用API里的原话“The task instance must be created on the UI thread.”。
          类似这样的错误,程序会抛异常如:CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
     PS. 以上描述内容可参考《Android开发指南中文版.pdf》的详细说明。

5. 网络通信
     android网络通讯编程涉及内容包括wifi, wifi-direct, 蓝牙, NFC, 3G2G等.
     参见官网SDK的API说明,链接
     相关的Android程序示例,在安卓巴士网站上围观看看,链接

     注意:目前(201208)以上的网络通讯操作,需要在android真机上面运行测试,模拟器上暂没有支持这些。
     
6. 调试工具
   首选DDMS,android手机以调试模式连接开发机,方便调试的程序在Eclipse输出Log, 有助于调试程序。关于DDMS说明可参考链接1链接2


 笔记. 20120818. Junkun Huang.
(完)

     

2012年8月11日星期六

一个设计漏洞引发的故事


一个设计漏洞引发的故事
     -- 根据链接URL的字段值判断采用的下载调度策略


讲故事吧,想说明一个漏洞案例是具体如何被触成的而已。引以为鉴!
“秦人不暇自哀,而后人哀之;后人哀之而不鉴之,亦使后人而复哀后人也”

==
2010年,为了节省会员CDN带宽与服务器压力,在客户端程序针对会员CDN的连接,做了流量优化的下载调度策略(保证速度的前提下尽量少去CDN请求下载数据),以达到目的。
PS. 会员CDN即XL公司自己架设的服务器专门提供给迅雷会员加速下载的。

诶,好不容易做了一套效果勉强还行(?)的策略,成了。就这样!那时候我才刚刚接手下载调度模块,显然策略的设计者不是我,而是跨部门A的某同事,但是后面我就一直充当其维护者。
题外话:由于某下载调度老前辈升职去了其他部门A结果就顺着带下载调度模块过去,而我当时任务就是尽快熟悉下载调度并拿回来下载调度模块……

当时,百思不得其解,优化策略其中的一奇怪逻辑判断该资源来自于会员CDN根据其URL是否包含某字段值。 如:
若下载资源对应的URL包含关键字段为"xxx.vip.xxx",则任务该资源为会员CDN,即参与资源流量优化调度策略。
不明白为啥这么做,我也问过相关同事(跨部门),得到的说法只是设计简单实用。

好吧,程序就在那持续的跑着,没问题。

====
2011年,刚好另一部门B的其他下载产品同样需要做流量优化。该部门的某同事偷偷在其他同事那边打听到了上面描述的”奇怪逻辑“。然后,他就在其产品的下载任务URL上面增加了关键字段"xxx.vip.xxx"。唉,恰到好处确实可行。我估计,该同事当时肯定偷着乐到了。(其实我是事后2012最近才知道这事情的。)
好吧,程序就在那持续的跑着,没关系。

====
2012年,(上面提到的)另一部门B发现那套优化策略已不适用,存在不合理地方,主要由于其产品演变包括用户数剧增,产品特性变化等。既然不适用了那么就需要找人继续优化了。找谁,找其他部门因为他们不持有该策略的研发(downloadlib),正是我现在所在的部门。
经多方面讨论,决定使用已有的那套优化策略服务部门B的CDN,为节省器服务器带宽。这样的决定,说明了我们都不知晓“2011那段故事”。
直到我们完成了功能的开发设计,在做程序连调时候无意间在LOG上发现存在怪异情况,即使没有新加的逻辑,程序也已经在为部门B的CDN资源做流量优化了啊。
……在此省去很多气愤与无奈的表达……
最后,召集大家一起讨论,说清具体事实情况,才知晓了“2011那段故事”。
其实,那套流量优化策略不仅在为部门A的会员CDN服务着,还默默地为部门B的CDN服务着。

好吧,程序就在那持续的跑着,没关系。

====
显然,那奇怪逻辑就是一个设计漏洞。很容易被外者利用以触发原本不该走到的逻辑。还好上面说的外者是自家的兄弟部门。
若是外面其他公司的CDN知道该漏洞,并加以利用了,那么我们不就白白为他人做了巨大的省钱活儿了吗!
所以,需尽快改正回来!

(完)

2012年8月10日星期五

一个编程语言之争的小话题


编程语言之争
     -- 近期(201208)源于新浪微博的编程语言之争,仅限于C与C++。

> 话题

最近在IT程序员业界,颇受关注的一个热门话题:比较C与C++的坑多坑少,然而孰优孰劣的问题。

> 故事

关于该话题,几位技术大拿们纷纷讨论起,有点儿激烈。类似这样的编程语言之争的话题,好像一直以来都是程序员的鸡血话题。不管你是菜鸟(...)或是牛人(如Andrei Alexandrescu)或是专家(如Linus)或是科学家(如Kenneth Lane Thompson 肯爷爷)例子举的都是国外的大人物都有过语言之争你可以Google搜搜的,都很容易卷入进去激烈讨论争辩一通,后续的场面很可能就是各自选好队占然后开始对阵谩骂激战,越来越激烈……话说回来,针对以上该话题目前大家均表现得矜持、斯文一些,没有对骂阵势,但后续不知,也可能就此打住了。

不过,倒是看头不少,该话题源自新浪微博@左耳朵耗子 ,后来相续大拿们各自撰文说明各自观点。涉及的内容都挺值得围观。
技术争论不要停留在非黑即白的二元价值观上,这样争论无非就是比谁的嗓门大,比哪一方的观点强,毫无价值。我们应该多看看技术是怎么演进的,怎么取舍的。”   @左耳朵耗子

还有,关于故事经过描述亦可参见这里


> 派系

为剧情的需要,在此我想简单做一下派系划分,并推几位鲜明的代表人物(均为业界大拿),同时引其微博为证。据个人娱乐估摸^_^,“派系”可以划分如下:
挺C++派
@左耳朵耗子 : 说C++比C的坑更多的人我可以理解,但理性地思考一下。C语言的坑也不少啊,如果说C语言有90个坑,那么C++就是100个坑(另,我看很多人都把C语言上的坑也归到了C++上来),但是C++你得到的东西更多,封装,多态,继承扩展,泛型编程,智能指针,……,你得到了500%东西,但却只多了10%的坑,多值啊。
@miloyip:“自己的舊文《C++强大背后》中也有一些相似的觀點。 http://t.cn/h4ARFo 另外,對於遊戲程序員來說(@简悦云风 除外),多數不能避免使用C++。”
 ……
挺C派
@简悦云风:“不要用 C++ 直接用 C , 就没那么多坑了。“
@淘宝褚霸:“自从5年前果断扔掉C++,改用了ansi c后,我的生活质量大大提升,没有各种坑坑我。”
@Laruence: “我确实用不到, C语言灵活运用struct, 可以很好的满足这些需求.//@左耳朵耗子: 封装,继承,多态,模板,智能指针,这也用不到?这也学院派?//@Laruence: 问题是, 这些东西我都用不到… C语言是工程师搞的, C++是学院派搞的”
 ……
中立派
     @老赵,……
围观者
     多数微博程序猿群众们,包括我。

其实,我的观点是挺@左耳朵耗子的,很赞成其博文《C++的坑真的多吗?》观点(挺C++)。文章描述了该话题的发生的过程,说明的观点鲜明,且引用的论据有意思。语言要简单易用没用,基本的道理而已,但要相信高级的东西设计出发点都有“简单易用”这点,只是后来发展发展相对不简单了。Unix发展到今天也不见的啊,C语言发展到今天也不简单的啊。嘿,你别说就很简单,那...那你说说有多简单?

> 引文

作者陈皓(@左耳朵耗子),关于陈皓参见这里

Laruence,关于语言的选择-选易用的
Laruence,PHP开发组成员, PECL开发者. Yaf, Taint等Pecl扩展作者.,

miloyip,C++背后强大

Milo Yip是香港同胞,现任职于上海麻辣马,开发多平台游戏项目。
在高一高二时兼职开发游戏《王子传奇》后,便潜心向学(伪),得到认知科学学士和系统工程及工程管理学哲学硕士后, 于大学里做游戏科技的相关项目,直至2008年才来到上海,再次投身游戏业界,之前的作品是《美食从天而降》Xbox360/PS3/Wii/PC。

赵劼,资深码农,InfoQ中文站编辑,Jscex类库作者

(完)

2012年8月6日星期一

说说校园招聘这事儿(转)


今天中午,在丁香园CTO冯大辉@Fenng博客上翻看文章(其中的不少内容都挺值得我等小辈们学习的),无意之间看到一篇博文《说说校园招聘这事儿》引起的内心的些许触动……令我回忆起当年自己参加的校园招聘,三年前的2009,毕业在2010,现在的2012,至今自己参加工作已两年了。),当时我还算比较幸运的吧,加上编程基础功还算比较扎实,所以拿了几个offer。时间真快,稍纵即逝,都快三年过去了。


其中有这么句话,“…… 你选择别人还是别人选择你,这是要取决于你过去几年的积累与努力,取决于你是否是个有心人,所以我多希望是那些大二大三的同学也能看到这篇文章。


确实,若是在校大学生看到这篇文章,好好拜读一番,好处应该多多的,可以良好的影响你日后择业的一些价值观。原文转载如下:


--- 转 ---

By Fenng on October 20, 2010 | 72 Comments


这段时间正是各大互联网公司校园招聘的高峰期,应该说,每一家具有一定规模的互联网公司都把每年一次的校园招聘当成一件大事而来抓,尤其是对人力资源部来说,更是大事儿中的大事儿。今年我已经投身创业公司,恐怕三两年内也不需要参加校园招聘这等大费周章的事情了,倒是可以说一些过去的感受,供同学们参考。
且先说两个来自 Twitter 的关于招聘的段子:
其一,据说某公司招聘,先把收集到的一大堆简历随机挑出一半扔掉,因为他们的招聘理念是 "不要运气不好的人" 。
其二,某 HR 说:校园招聘简历挑选法就是第一轮先把长得太寒碜的男生刷掉;第二轮,把长得太漂漂的女生刷掉;第三轮,再把星座和自己不和的刷掉。
且不说这两个段子真实性与否,但至少可以肯定的透漏出两个信息(尤其是对临近毕业的在校生来说):找到一份工作有很大的偶然性(运气成分)在里面,找到一份适合自己的工作则一定有其必然性;而对于招聘方来说,发出去的 Offer 信则是绝对有很大的随机性的事情。
要知道,每年的校园招聘,那些招聘人员风尘仆仆奔波几个城市的大学,还要起早贪黑的阅卷,忍饥挨饿的面试,负责联系面试的人力资源部门甚至连基本休息的时间都没有,所以有的同学收到夜半电话也是不足为奇的事情,面试官有的一天要面试数十人,需要相当有体力才能坚持下来。这种情况下,就意味着一定有疏漏发生,比如张冠李戴,比如阅卷的时候多给加了几分,或者是看着写字太烂把卷子扔掉(没错,字写得好机会都比别人多),比如想早点结束征程,所以,能拿到 Offer 的同学有很大一部分人应该先感到庆幸,要想想你找到这份工作的时候有多少人还奔波在各个面试考场呢。你真的是脱颖而出么?
的确有极少数的同学是相当优秀的,也就是那些能同时拿到几份 Offer 的人,暂且把这样的同学看做优秀吧,这类同学面对的问题是如何找到一个更为适合自己的工作,更能让自己有所施展的工作,这个选择或许比较难,但有一点,千万别因为钱而做出愚蠢的选择,你的第一位工作可能决定你以后的职业生涯,但你的第一份工资不会改变你的命运。能够做出正确的判断,要靠你自己平时多去留意一些业界信息,你得到的信息越多,你越有可能做出正确的判断。不要去和什么师兄师姐去比较,人和人是不一样的,尤其不要去比较薪水,这是最等而下之的事儿。听取建议的时候也最好不要只听来自师兄师姐的信息,其实他们自己也未必能搞清楚。考虑一下你做的事情能给社会带来多大的价值?你的能力能给你未来的雇主带来怎样的价值?你做的事情会给你怎样的回报(不只是工资)? ......
求职受挫的,不要气馁,不要去怨天尤人,那些顺利拿到 Offer 的人未必比你强到什么地方,但他们一定有些特质才会拿到好机会,而你,和周围的人相比,有什么长处与整个会场的数千人竞争呢?依靠运气是有可能找份工作,但如果没有经历过努力和挣扎,那运气未必在你这边。仔细分析一下自己,认清自己,有利于你做下一步的决断。
计算机专业的同学,我觉得求职竞争起码还算公平的,所谓"贫寒子弟无着落,富家儿女进机关,在校学业虽优秀,没有背景靠一边"的现象在这个行业少有发生。你选择别人还是别人选择你,这是要取决于你过去几年的积累与努力,取决于你是否是个有心人,所以我多希望是那些大二大三的同学也能看到这篇文章。是否花了更多时间去夯实基础知识,比如操作系统、算法、数据结构、计算机网络这些永远都用得着的知识,而不是只为了考试而学习;取决于你是否利用各种机会去获取业界信息。国内大学的这个垃圾教育网--局域网内的局域网--极大的限制了很多同学通过网络获取信息的途径,想起来就有些火大--有些扯远了,暂且不说。
对于招聘的随机性,记得自己说过一个玩笑话,我说这些学生随便站成一排,随机挑一堆带回公司按照既定的可能培养几个月,魔鬼训练之后,坚持下来的也能成为合格的工程师。这话或许没错,但很多公司看重的是候选人将来是否能融入公司的文化,是否契合某种感觉,是否是公司需要的那一类人,这才是他们眼里的"人才",多数"人才"都是针对某类公司或者工种才是"人才"。比如做销售的,性能内向的人就很难吃的开,比如做数据的,太粗心的人也不成。所以,没被录取只能说你和这家公司不够契合,总结经验更为重要。也有的招聘人缘木求鱼,直接看这个人能否符合公司的价值观,这实际是候选人进入到公司后才应该考虑的问题。但是,当对方问你一些类似个性或是价值观相关问题的时候,你需要能传递出来一种信息,起码要能了解对方问你的是什么。比如,很多考官喜欢让你说说在大学里经历过的最有挑战的事情是什么?最简单的回答如果是:没有。这就话不投机了。
好吧,还是扣住"校园"来说吧,其实校园招聘是个成本相当高的事情,算下来,多数招聘团队在一个学校能人均招聘到一个毕业生就算不错的了。考虑到宣传和场地布置都是外包给那些专业招聘公司的,可以估算一下平均招聘一个人的成本如何了,这也是多数创业公司不希望采取的做法,这也是大家说的大公司"人才争夺战",可谓你方唱罢我登场,不蒸(争)馒头也争口气 :) 也有些公司的校园招聘主要是出于宣传目的,比如 08 年经济危机来袭,有些公司在招聘会上根本不发 Offer ,让不少同学空等一场。
校园招聘,对很多公司或者很多人来说,是公司形象宣传会,是年底晋升的铺垫,是赚钱的好机会,是笔大生意即将来临......不过对于创业公司来说,则面临着一定的参与、操作难度,所以,采取吸引学生来实习的方式吸引人才,非常值得尝试,而且可以比较合理分配公司的资源--起码不用倾巢出动去招聘。对于临近毕业的同学来说,少了到处挤招聘会的困扰,可以专心利用这几个月多学习一些实际的东西,多锻炼一下自己,也是相当可取的。至少比参加什么北大青鸟之类的回炉培训要好得多吧。当然了,有些实习生实习期满也未必愿意留在这家公司,另攀高枝的事情常有发生,也要保持平常心才是:) 顺便说一下,我们团队近期实习生的招聘已经临近尾声了。
"临渊羡鱼,不如退而结网"。我接触过的一些同学,其实到毕业前至少还有几个月的时间,这几个月如果稍微专心一点,即使是自学,也完全能掌握一门可以混口饭吃的 IT 技能,可还是有很多人飘来荡去最后一筹莫展。诚可叹也。
以上只是我的一家之言,唠唠叨叨,博君一笑而已。
--EOF--
后记:想起我当初毕业求职的时候,给我机会的那位大姐来着,真该隔着互联网说声谢谢!工作后,我也曾给了不少同学同样的机会,甚至有和同事吵架争来的 Offer 机会,尽管他们有些人并不知道来龙去脉,也从来没跟我说声感谢 :)
--- 转 ---
原文链接在这里
最后,对与原文作者@Fenng 表示赞!
(完)

谈谈团队建设


谈谈团队建设
     -- 有感于XL下载库团队


最近半年时间下来,在某些方面(团队良好建设方面)隐隐觉得总有或多或少有些体会与感悟,(题外话:有时疲惫的时候脑子装东西多,容易浑起来就慢慢担心过了就忘了,所以就想找个办法帮忙记录下来,此时笔记倒是一项良好的辅助记忆的解决手段。)所以,就此写一篇小小总结博文记录之,希望可以积累下来。

不妨,挑选一些重点(细节)讨论分享吧,尽量保持简洁,罗列下面几点:
1. 氛围活跃
     需要营造良好的相互学习与技术交流的氛围。
     最好每个成员都有自己的专长,能够整理出属于自己独特的知识与大家分享,这样做同时可以让大家在心理上建议一种平等,因为程序员们是相对骄傲的一类群体。可以每周(每月长了点)定期组织一次由某成员发起的具有针对某主题的分享、交流、讨论会议。

2. 存在权威
需要一个权威成员,不管是来自技术还是管理层面都可行,只要能够在多成员间存在争议时拍板做最终决定。
     引用几句有点意思的话,某权威同事说,“就这样决定了,服从就是绩效。”,哈够强悍吧,显然他既涉及技术也是管理人员。

3. 共同爱好
     团队需要有一个共同的业余爱好,交流融洽。
     比如午休时间玩玩三国杀,或每周一次的篮球运动或游泳或其他运动、娱乐项目。这种活动对于团队的默契以及成员间的友好作用不凡。
     让同事们除了在工作中协同合作,还在生活玩的项目上协作吧,收获乐趣的过程中就释放了工作中的压力与疲惫,同时收获友情!下班时间,同事们可以互相调侃,玩笑,聊聊生活趣事,尽量不必谈及工作的事情。

4. 良性发展
     整个团队需要有良好的发展与支持(物质与精神上)。
     作为团队的Leader(TL @jieouy),必须(应该)尽力去为下面的同事们争取各种福利,包括升职加薪机会,工作与学习资源,还有团队活动经费等。这点对于TL而言,很重要不仅大大提高其在兄弟们心中的分量,而且之后兄弟们一定是更愿意尽心尽力去做事。

5. 能力拓展
     培养团队成员们都具有一定的产品与项目管理意识,最好都有尝试去做好的机会。
     该点也是为了同事们都有更好的发展,不必疑问说“有些人不合适做产品或项目管理呢“。不好意思我想说的是,不管是产品或是项目管理涉及的范围都是多方面的,只要你用心去发现去做,正常人都会从中获益的。这样的结果,大家都有一定成就感在其中,可以有提高团队凝聚力,尤其在与其他团队PK某竞争时候。

6. ……
   (待续,再想想应该还有不少点可以加以总结,但暂时未想到更好的,就先占坑放着吧。)

注:以上内容可认为纯属笔者YY的结果。

最后,感谢所在团队的同事们,感谢欧爷@jieouy!
(完)