Monday, October 28, 2013

[repost ]Optimization in Learning and Data Analysis

original:http://pages.cs.wisc.edu/~swright/wright-kdd-2013.pdf



via WordPress http://blog.newitfarmer.com/ai/data-mining/13173/repost-optimization-in-learning-and-data-analysis#utm_source=rss&utm_medium=rss&utm_campaign=repost-optimization-in-learning-and-data-analysis

Labels:

Sunday, October 27, 2013

[repost ]早期回答一个同学的提问:数据与微博

original:http://c.blog.sina.com.cn/profile.php?blogid=62d02ba8890000gp Q1、请您简单介绍一下数据的可视化技术、商业智能技术、和数据挖掘的技术。 答:数据可视化:本身也是一种数据分析技术,是将数据以统计图表和视觉形态表现出来的分析展现技术。我常说:看得见才能做得到,看得见才能做得好!随着数据分析技术的发展,数据存储、报表、分析和展现逐渐融合和一体化,过去是从数画图,现在往往先画图再洞察数据异常;可视化领域:报表可视化、绩效仪表盘、社会网络可视化、信息图、一页式管理图表、交互可视化等。 商业智能技术:早期的商业智能BI就是报表系统,BI公司也叫前端展现,决策者和管理者不用依赖IT人就可以获得企业运营数据,现在的商业智能是运营平台和管理体系,即包括了企业的现代化管理理念也是一套有效的管理软件工具。早期主要是大型企业,现在可是关注中小企业的运营BI系统;特指在数据仓库DW基础上,采用量化统计和挖掘工具,进行数据统计、分析、查询和报表,嵌入商业模型和商业规则,支持客户关系管理CRM、企业资源计划ERP、供应链管理SCM、绩效管理EPM;当前趋势是决策驾驶舱、仪表盘和决策支持系统; 数据挖掘技术:是采用自动或半自动的智能方式,从海量数据中寻找隐藏在数据中的模式、趋势和相关性,用到了数据库存储技术和机器学习、统计方法。是KDD从数据库中发现知识的过程,发现的知识应该是先前未知的,不能靠直觉发现的知识;发现的知识要未知、实用和有商业价值。主要技术:分类、预测、细分、关联和序列; Q2、像您这样的研究者在微博这种平台上怎样进行数据挖掘?而受众又应该怎样挖掘呢? 答:微博是巨大的社会科学实验场,上亿人每天在微博上耕耘,传递信息,分享生活情趣、流行时尚、工作感受;作为传播研究者当然关注,并且希望挖掘有价值的信息。特别是大众传播落地人际传播后,微博成为人际传播的重要场所,且是社会网络。首先研究微博的传播机制,从社会网络角度理解微博传播机制,分析幂率特征,这些都需要数据支持和挖掘。主要挖掘工作:微博抓取爬虫技术、社会网络分析技术、网络可视化技术、传播链和传播网络分析、发现意见领袖、微博营销、社会计算、情感分析、个性化推荐等。受众怎样挖掘我不是太理解,受众应该是被挖掘的角色! Q3、以微博为例,数据挖掘的价值体现在哪里? 答:微博的挖掘不仅仅体系在数据挖掘,从技术上讲可能涉及更广泛的技术体系,比如数据科学和网络科学领域,特别是在社会科学领域。价值主要体现在社会舆情监测、微博营销、个性化推荐、客户关系管理、社会情感分析、社会计算、信息的扩散与传播优化和控制等;也许有人更关心微博在社会管理、社会资本、社会价值取向、社会和谐层面的东西。 Q4、在微博上怎样把用户所需要的数据推到微博平台上? 答:数据推到微博上,还是信息推到微博上?微博带来了读图时代和信息碎片化,也带来信息的快速传播,有效传播一定要理解微博的传播机制,理解社会网络的特性,意见领袖(大号)在传播的作用不可忽视。名可养名,名可扬名,当然名也可恶名。 Q5、传统数据分析和现代网络数据分析相比,优缺点在哪里? 答:不是优缺点,而是根本性改变。传统数据分析有一套完善的方法论和解决方案,特别是在结构化数据中,数据挖掘技术和统计分析技术都相对成熟,尽管数据挖掘在国内才开始重视,商业模式越来越重视数据分析对快速和实时决策的重要性,但毕竟可以通过软硬件部署可以解决,量大是问题但不是根本性问题。但是网络数据分析,面临的更复杂的问题,首先是微博带来非结构化数据,很多人想得到但抓取技术和完整性模糊,实时生成和海量存储的一致性、连续性和标准化面临挑战,新技术需要消化,比如Hadoop、MapReduce和自然语言处理、网络分析和文本挖掘技术的实现,新数据分析工具的掌握等等,当然人才更是问题,且涉及多学科领域知识的融合。 Q6、微博基于客户应该应该建立怎样的分析体系? 答:微博抓取+文本存储结构+NLP分词技术+去高频词+词性抽取+词云分析+社会网络与复杂网络+聚类与相关+规则与模型+可视化+预测与判断!微博的分析:研究边界的节点,微博的API和网络爬虫技术,大数据的存储传统数据库还是Hadoop或云存储,文本分析和挖掘,个性化推荐技术,微博营销的效果评估,发现意见领袖,舆情控制与监测等等; Q7、您将统计学运用在媒介中称为“数学与头脑相遇的地方”,那么您会用什么样的一句话描述统计学在新媒体中的运用? 答:如果你不能量化,就不能理解,不能理解就不能控制,控制不了也就无法改变!这句话主要是强调数学思维问题,数学不是工具是脑具,是一种解决问题的方式方法;因为本人的学科背景,以及在社会科学领域,尤其是很传统的人文社会科学更想突出强调理性和数据的能力。当然差异也是一种优势! Q8、在面对微博上信息爆棚之时,信息真假难辨,如何挖掘到真实的信息? 答:首先做自己认为正确的事情,不说自己认为不真实的话,不说自己缺乏足够证据的话“,也就是传播自己肯定的信息,至少是自己认为合理的信息!辨别真伪只能靠自己的修养和媒介素养的提升,理性思考是很重要的,无利不起早,世界上没有无缘无故的爱,也没有无缘无故的恨,人在社会天生就需要与人沟通,传播信息,我们需要的思考如何在微博上与他人互动,如何影响他人或受他人影响。在微博上我们相信什么?为什么会相信,很大程度上都取决于我们与他人互动关系。谣言以及群体恐慌都说明,人们普遍都有模仿他人行为的倾向。所以在微博上,我们不能缺乏独立思考的能力,需要通过自身的学习和自省来构建自己对社会的看法和观点,不能盲目从众或人云亦云。 Q9、面对微博上用户大强度的信息发布,在微博上搜集信息其实并不是那么方便,您觉得能够建立怎样的数据分析收集机制,方便用户的信息搜集? 答:不是太理解主体!从传统的互联网搜索google 百度,到垂直搜索、企业搜索到现在的社会化搜索,也就是微博搜索都给大家带来了方便,微博也渐渐成为一种信息门户。个人来讲,可以通过建立有效合理的关注分类来查询和交流信息。另外对有用的知识型信息可以收藏和管理。我的学生有些好的习惯,比如再好的记性不如烂笔头,有道笔记本等都是不错记录信息的方法。同时更多弱关系的关注可以获得有用的信息。 Q10、您之前称“因为社会变革往往不是靠正态而是靠变态”,您说谷歌就是这种变态,那么谷歌在信息统计筛选分析的形式是否可以借鉴到微博上? 答:社会的变革往往靠的是转折点,如果能够了解造成转折点的原因很多社会问题会迎刃而解。强调的是社会科学领域的复杂性和非线性性,特别是冲突理论、混沌理论和复杂性科学理论的问题。我没有说过google是变态,但PageRank是google的核心技术,google改变了互联网的搜索。PageRank的技术和思想当然也是社会网络分析的一种思想和实践,也是关系的挖掘体现! Q11、现如今微博采用“会员制”、“微访谈收费”等措施,是否会不利于微博这种新媒体将来的发展? 答:是否有助于发展我不知道,但微博运营商要盈利才可保持持续发展和创新,大家都在寻找盈利模式,微博也是商场和战场! Q12、我们看问题是大多都是看事件的表层,您研究数据深度挖掘,是不是都是以不一样的角度去看待事件? 答:微博让人际传播可见!既有乌合之众也有群体智慧;针对特定事件或感兴趣的人我与我的团队,合作伙伴会深度挖掘传播关系和人际网络,理论上可以做到洞察每一个微博传播过程。但是,兴趣和爱好决定了我更关注研究而不是事件本身! 人天生需要沟通,通过什么方式,期望得到什么结果,由你决定。 相关软件:R语言、Knime、Cytoscape、Gephi、Tableau、Modeler、SPSS、Excel、Python、D3.js、Ucinet、NetDraw、Xcelsius、RoamFlow等



via WordPress http://blog.newitfarmer.com/ai/data-mining/13165/repost-%e6%97%a9%e6%9c%9f%e5%9b%9e%e7%ad%94%e4%b8%80%e4%b8%aa%e5%90%8c%e5%ad%a6%e7%9a%84%e6%8f%90%e9%97%ae%ef%bc%9a%e6%95%b0%e6%8d%ae%e4%b8%8e%e5%be%ae%e5%8d%9a#utm_source=rss&utm_medium=rss&utm_campaign=repost-%25e6%2597%25a9%25e6%259c%259f%25e5%259b%259e%25e7%25ad%2594%25e4%25b8%2580%25e4%25b8%25aa%25e5%2590%258c%25e5%25ad%25a6%25e7%259a%2584%25e6%258f%2590%25e9%2597%25ae%25ef%25bc%259a%25e6%2595%25b0%25e6%258d%25ae%25e4%25b8%258e%25e5%25be%25ae%25e5%258d%259a

Labels:

[repost ]Choosing the right estimator

original:http://scikit-learn.org/stable/tutorial/machine_learning_map/index.html Often the hardest part of solving a machine learning problem can be finding the right estimator for the job. Different estimators are better suited for different types of data and different problems. The flowchart below is designed to give users a bit of a rough guide on how to approach problems with regard to [...]



via WordPress http://blog.newitfarmer.com/ai/data-mining/13157/repost-choosing-the-right-estimator#utm_source=rss&utm_medium=rss&utm_campaign=repost-choosing-the-right-estimator

Labels:

[repost ]Trie树|字典树的简介及实现

original:http://hi.baidu.com/luyade1987/item/7c1977f5e9015cdf6225d224 Trie,又称字典树、单词查找树,是一种树形结构,用于保存大量的字符串。它的优点是:利用字符串的公共前缀来节约存储空间。 相对来说,Trie树是一种比较简单的数据结构.理解起来比较简单,正所谓简单的东西也得付出代价.故Trie树也有它的缺点,Trie树的内存消耗非常大.当然,或许用左儿子右兄弟的方法建树的话,可能会好点. 其基本性质可以归纳为: 1. 根节点不包含字符,除根节点外每一个节点都只包含一个字符。 2. 从根节点到某一节点,路径上经过的字符连接起来,为该节点对应的字符串。 3. 每个节点的所有子节点包含的字符都不相同。 其基本操作有:查找 插入和删除,当然删除操作比较少见.我在这里只是实现了对整个树的删除操作,至于单个word的删除操作也很简单. 搜索字典项目的方法为: (1) 从根结点开始一次搜索; (2) 取得要查找关键词的第一个字母,并根据该字母选择对应的子树并转到该子树继续进行检索; (3) 在相应的子树上,取得要查找关键词的第二个字母,并进一步选择对应的子树进行检索。(4) 迭代过程……(5) 在某个结点处,关键词的所有字母已被取出,则读取附在该结点上的信息,即完成查找。 其他操作类似处理. /* Name: Trie树的基本实现 Author: MaiK Description: Trie树的基本实现 ,包括查找 插入和删除操作(卫星数据可以因情况而异) */ #include<algorithm> #include<iostream> using namespace std; const int sonnum=26,base=’a'; struct Trie { int num;//to remember how many word can reach here,that is to say,prefix [...]



via WordPress http://blog.newitfarmer.com/ai/math/13150/repost-trie%e6%a0%91%e5%ad%97%e5%85%b8%e6%a0%91%e7%9a%84%e7%ae%80%e4%bb%8b%e5%8f%8a%e5%ae%9e%e7%8e%b0#utm_source=rss&utm_medium=rss&utm_campaign=repost-trie%25e6%25a0%2591%25e5%25ad%2597%25e5%2585%25b8%25e6%25a0%2591%25e7%259a%2584%25e7%25ae%2580%25e4%25bb%258b%25e5%258f%258a%25e5%25ae%259e%25e7%258e%25b0

Labels:

[repost ]Centralized Logging

original:http://jasonwilder.com/blog/2012/01/03/centralized-logging/ Logs are a critical part of any system, they give you insight into what a system is doing as well what happened. Virtually every process running on a system generates logs in some form or another. Usually, these logs are written to files on local disks. When your system grows to multiple hosts, managing [...]



via WordPress http://blog.newitfarmer.com/architecture/arch-others/13129/repost-centralized-logging#utm_source=rss&utm_medium=rss&utm_campaign=repost-centralized-logging

Labels:

[repost ]Hadoop 2013:最受关注的13款大数据产品

original:http://developer.51cto.com/art/201307/403855.htm 2013年6月26、27日两天,在圣何塞举行的Hadoop Summit 2013,不仅是Hadoop生态圈的盛宴,也是各路玩家的战场。不仅有Sqrrl、Wandisco、GridGain等新创业公司涌现,也能看到核心玩家Cloudera和Hortonworks互相角力。有超过60家大数据公司参与其中,既包括像英特尔和Salesforce.com这样的知名厂商,也有像Sqrrl和Platfora这样成立没有多久的初创公司。以下是这次峰会上展示的13款全新的或者增强的大数据产品。 1、Continuuity开发公司现在支持批量处理 Continuuity发布了支持批量处理的Continuuity Developer Suite 1.7,将MapReduce集成到平台中为开发者提供更广泛的工作负载能力。 Continuuity帮助Java开发者构建能运行Hadoop和HBase数据库的应用。这些应用支持像运作分析这样的实时应用。但是Continuuity的首席执行官Jon Gray表示,一些应用仍然要求MapReduce的批量处理架构。 Continuuity Developer Suite 1.7还提供了一些用于流式实时分析、定位和个性化以及异常检测的应用模板。 2、Datameer首次展示大数据分析软件 Datameer发布了面向企业用户的Datameer 3.0数据集成和分析软件。该版本增加了“智能分析”功能,可以从Hadoop中保存的大量复杂数据中自动找出模型和关联性。 Datameer 3.0采用四种机器学习的技术:聚类、决策树、列依赖性和建议。虽然这些通常是数据科学家涉足的领域,但是被集成到了Datameer软件中,这样企业用户就可以将其作为一项自助服务使用。 Datameer 3.0将在未来几个月内提供给用户进行beta测试。 3、Hortonwork社区预览支持Yarn的HDP 2.0平台 Hortonworks将在社区中预览下一代支持Yarn(下一代Hadoop数据处理框架)的Hortonworks Data Platform。 作为ASF Hadoop项目的一部分,Yarm旨在实现多个用户实例,而不是单一的数据集。HDP 2.0社区预览版本中支持Yarn,将让Hortonworks的合作伙伴和客户能够使用这项新技术,参与到最终规范的制定中,Hortonworks营 销副总裁Dave McJannet这样表示。 4、Kognitio推出第八代分析平台 Kognitio推出了新一代的Kognitio Analytic Platform,加强了多种编程语言之间的连接性,并提高了性能。新版本提供了NoSQL处理能力,以及大规模并行处理任何脚本或者像R、Python或者Java这样的二进制代码。 使用该版本进行基准测试表明,它将答案返回给复杂查询请求的速度是上一版本的两倍。 新版本还提供了高速数据输出,针对高速数据备份以及内存压缩,作为一个可选功能。 5、MapR和Fusion-io联手提高HBase性能 MapR和Fusion-io合作,在运行读取密集型HBase应用的时候,将基于Hadoop的MapR M7大数据平台与Fusion-io ioMemory系统结合起来,实现重要的性能提升。 据MapR称,HBase应用性能通常受到磁盘存储瓶颈的限制。使用Fusion-io ioMemory,MapR系统的性能提高25倍。 I/O性能的局限性,会使采用HBase开源数据库用于高性能计算任务的速度变慢。 6、Pentaho添加大数据平台集成能力 业务分析应用开发公司Pentaho,推出了所谓其软件中的“自适应大数据层”,提供与大数据平台集成的能力。 这项新技术将Pentaho与Hadoop发行版连接起来,如Cloudera、Hortonwork、MapR Technologies、Intel、NoSQL数据库Cassandra以及MongoDB。 7、RainStor升级数据库安全性及搜索能力 RainStor推出了对其数据库软件的重要更新,增强了安全特性,并称这样可以提高Hadoop在安全敏感的客户中的采用,例如政府机构、银行和电信公司。 RainStor数据库中的新安全功能,它本身运行在Hadoo中,包括数据加密、数据掩蔽以及查看、审查跟踪、防篡改、可配置的数据弃置,支持Kerberos、LDAP、Active Directory以及PAM(Linux的可插拔认证模块)。 据RainStor称,新搜索功能提高数据库的查询性能达到10倍~100倍,能实现更高速的文本搜索。现在数据库可以搜索数十亿条记录,数PB的数据。 8、Splunk发布针对Hadoop的数据分析工具 [...]



via WordPress http://blog.newitfarmer.com/big_data/hadoop/13120/repost-hadoop-2013%e6%9c%80%e5%8f%97%e5%85%b3%e6%b3%a8%e7%9a%8413%e6%ac%be%e5%a4%a7%e6%95%b0%e6%8d%ae%e4%ba%a7%e5%93%81-2#utm_source=rss&utm_medium=rss&utm_campaign=repost-hadoop-2013%25e6%259c%2580%25e5%258f%2597%25e5%2585%25b3%25e6%25b3%25a8%25e7%259a%258413%25e6%25ac%25be%25e5%25a4%25a7%25e6%2595%25b0%25e6%258d%25ae%25e4%25ba%25a7%25e5%2593%2581-2

Labels:

[repost ]用Hadoop,还是不用Hadoop?

original:http://developer.51cto.com/art/201310/413101.htm Hadoop通常被认定是能够帮助你解决所有问题的唯一方案。 当人们提到“大数据”或是“数据分析”等相关问题的时候,会听到脱口而出的回答:Hadoop!实际上Hadoop被设计和建造出来,是用来解决一系列特 定问题的。对某些问题来说,Hadoop至多算是一个不好的选择。对另一些问题来说,选择Hadoop甚至会是一个错误。对于数据转换的操作,或者更广泛 意义上的抽取-转换-装载的操作(译者注:Extraction Transformation Load,ETL,数据仓库中对数据从初始状态到可用状态处理过程的经典定义), 使用Hadoop系统能够得到很多好处, 但是如果你的问题是下面5类之中的一个的话,Hadoop可能会是一不合适的解决方案。 1.对于大数据的渴望 很多人相信他们拥有正真“大”的数据, 但通常情况并非如此。 当考虑数据容量和理解大多数人对“大数据”处理的想法的时候, 我们应当参考这篇研究论文, 没有人会因为买了一个集群的服务器而被辞退, 它告诉了我们一些有趣的事实。 Hadoop是被设计成用来处理在TB或PB级别的数据的, 而世界上大多数的计算任务处理的是100GB以下的输入数据。(Microsoft和Yahoo在这个数据统计上的中位数是14GB,而90% Facebook的任务处理的是100GB以下的数据)。对于这样的情况来说, 纵向扩展的解决方案就会在性能上胜过横向扩展(scale-out)的解决方案。 (译者注:纵向扩展scale-up通常是指在一台机器上增加或更换内存、CPU、硬盘或网络设备等硬件来实现系统整体性能的提升, 横向扩展(scale-out)指的是通过在集群中增加机器来提升集群系统整体性能的提升。论文中比较了对Hadoop系统进行各种纵向扩展和横向扩展之 后, 在性能指标上进行评测的试验。结论是在某些情况下在一台机器上的纵向扩展会比在Hadoop集群中增加机器得到更高的系统性能,而且性价比会更好。这个结 论打破了大多数人对Hadoop系统的简单认识, 那就是一定要用若干廉价的机器组成集群才能到达最好的整体性能。 ) 所以你需要问自己: 我是否有超过几个TB的数据? 我是否有稳定、海量的输入数据? 我有多少数据要操作和处理? 2.你在队列中 当你在Hadoop系统中提交计算任务的时候, 最小的延迟时间是1分钟 。 这意味系统对于客户的商品购买信息要花1分钟的时间才能响应并提供相关商品推荐。这要求系统有非常忠实和耐心的客户, 盯着电脑屏幕超过60秒钟等待结果的出现。 一种好的方案是将库存中的每一件商品都做一个预先的相关商品的计算, 放在Hadoop上。 然后提供一个网站,或者是移动应用来访问预先存储的结果,达到1秒或以下的即时响应。 Hadoop是一个非常好的做预先计算的大数据引擎。 当然,随着需要返回的数据越来越复杂,完全的预先计算会变得越来越没有效率。 所以你需要问自己: 用户期望的系统响应时间大概在什么范围? 哪些计算任务是可以通过批处理的方式来运行的? (译者注:原作者应该是用了B2C电子商务网站上经典的商品推荐功能作为用例,描述如何用Hadoop实现这个功能。) 3.你的问题会在多少时间内得到响应 对于要求实时响应查询的问题来说,Hadoop并不是一个好的解决方案。Hadoop的计算任务要在map和reduce上花费时间, 并且在shuffle阶段还要花时间。 这些过程都不是可以在限定时间内可以完成的, 所以Hadoop并不适合用于开发有实时性需求的应用。一个实际的例子是,在期货或股票市场的程序化交易系统(Program Trading)中用到的成交量加权平均价格(Volume-weighted average price,VWAP)的计算,通常是实时的。这要求交易系统在限定时间内将结果给到用户,使得他们能够进行交易。 (译者注:Hadoop的MapReduce中的shuffle过程指的是将多个map任务的结果分配给一个或多个reduc任务是的数据洗牌和分配的操作,这篇blog解释的比较详细,http://langyu.iteye.com/blog/992916 [...]



via WordPress http://blog.newitfarmer.com/big_data/hadoop/13117/repost-%e7%94%a8hadoop%ef%bc%8c%e8%bf%98%e6%98%af%e4%b8%8d%e7%94%a8hadoop%ef%bc%9f#utm_source=rss&utm_medium=rss&utm_campaign=repost-%25e7%2594%25a8hadoop%25ef%25bc%258c%25e8%25bf%2598%25e6%2598%25af%25e4%25b8%258d%25e7%2594%25a8hadoop%25ef%25bc%259f

Labels:

Friday, October 25, 2013

[repost ]Yahoo! Learning to Rank Challenge Datasets

original:http://research.microsoft.com/en-us/um/beijing/projects/letor/yahoodata.aspx Yahoo! Labs organizes a learning to rank challenge in March 2010. Two large scale datasets are released. The challenge consists of two tracks: a standard learning to rank track as well as a transfer learning one. It is open to all research groups in academia and industry. The datasets come from web search ranking [...]



via WordPress http://blog.newitfarmer.com/ai/rank/13110/repost-yahoo-learning-to-rank-challenge-datasets#utm_source=rss&utm_medium=rss&utm_campaign=repost-yahoo-learning-to-rank-challenge-datasets

Labels:

[repost ]LETOR: Learning to Rank for Information Retrieval

original:http://research.microsoft.com/en-us/um/beijing/projects/letor/letor4baseline.aspx Baselines for supervised ranking Algorithms using linear ranking function Algorithms MQ2007 MQ2008 Notes Experiments by RankSVM-Struct here here algorithm details Tao Qin ListNet here here algorithm details Di He AdaRank-NDCG here here algorithm details Jun Xu AdaRank-MAP here here algorithm details Jun Xu Algorithms using nonlinear ranking function Algorithms MQ2007 MQ2008 Notes Experiments by [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/13109/repost-letor-learning-to-rank-for-information-retrieval#utm_source=rss&utm_medium=rss&utm_campaign=repost-letor-learning-to-rank-for-information-retrieval

Labels:

[repost ]Language Modeling and Information Retrieval Background

original:http://sourceforge.net/p/lemur/wiki/Language%20Modeling%20and%20Information%20Retrieval%20Background/ 1. Introduction A ”statistical language model”, or more simply a ”language model”, is a probabilistic mechanism for generating text. Such a definition is general enough to include an endless variety of schemes. However, while a statistical language model can in principle be used to synthesize artificial text, a program that classifies text into predefined [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/13107/repost-language-modeling-and-information-retrieval-background#utm_source=rss&utm_medium=rss&utm_campaign=repost-language-modeling-and-information-retrieval-background

Labels:

[repost ]About Indri

original:http://sourceforge.net/p/lemur/wiki/Indri/ Indri is a text search engine developed at UMass. It is a part of the Lemur project. From an academic perspective, Indri is interesting because it combines inference networks with language modeling. The query language, which is reminicent of the Inquery query language, allows researchers to experiment with proximity, document structure, text passages, and [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/indri/13106/repost-about-indri#utm_source=rss&utm_medium=rss&utm_campaign=repost-about-indri

Labels:

[repost ]Indri:Inline and Offset Annotations

original:http://sourceforge.net/p/lemur/wiki/Inline%20and%20Offset%20Annotations/ In-line Annotations Most people are familiar with in-line annotations, or in-line field definitions. These can be found in tagged text such as HTML or XML. For example, if you have the following HTML snippet: <h1>The Lemur Toolkit</h1> <h2>for Language Modeling and Information Retrieval</h2> <p>Language modeling has recently emerged as an attractive new framework for [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/indri/13105/repost-indriinline-and-offset-annotations#utm_source=rss&utm_medium=rss&utm_campaign=repost-indriinline-and-offset-annotations

Labels:

[repost ]Indri Repository Structure

original:http://sourceforge.net/p/lemur/wiki/Indri%20Repository%20Structure/ Overview An Indri Repository is a collection of a set of files with a specified format that contains all the relevant information regarding a collection. The collection contains information about the indexed documents, any fields or metadata, the inverted indexes for the collection and other necessary items. It is important to note that when [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/indri/13100/repost-indri-repository-structure#utm_source=rss&utm_medium=rss&utm_campaign=repost-indri-repository-structure

Labels:

[repost ]Indri Scored Query Evaluation

original:http://sourceforge.net/p/lemur/wiki/Scored%20Query%20Evaluation/ Once the smoothing parameters are applied, the real work begins – query evaluation. The basic flow of query evaluation is to create an optimized inference network and evaluate each candidate document against it to obtain the scores. Internal to _scoredQuery is a loop across all potential index servers. Since multiple Indri indexes can be [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/indri/13098/repost-indri-scored-query-evaluation#utm_source=rss&utm_medium=rss&utm_campaign=repost-indri-scored-query-evaluation

Labels:

[repost ]Indri Document Scoring

original:http://sourceforge.net/p/lemur/wiki/Indri%20Document%20Scoring/ Indri uses the language modeling approach to information retrieval. Language modeling assigns a probability value to each document, meaning that every score is a value between 0 and 1. For computational accuracy reasons, Indri returns the log of the actual probability value. log(0) equals negative infinity, and log(1) equals zero, so Indri document scores [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/indri/13094/repost-indri-document-scoring#utm_source=rss&utm_medium=rss&utm_campaign=repost-indri-document-scoring

Labels:

[repost ]Indri Retrieval Model

original:http://sourceforge.net/p/lemur/wiki/Indri%20Retrieval%20Model/ Introduction This document is meant to give a broad, yet detailed, overview of the retrieval model that Indri implements. The model is based on a combination of the language modeling (PonteCroft1998) and inference network (TurtleCroft1991) retrieval frameworks. Both frameworks, on their own, have been widely studied, applied, and found to be very effective for [...]



via WordPress http://blog.newitfarmer.com/ai/ai-ir/indri/13091/repost-indri-retrieval-model#utm_source=rss&utm_medium=rss&utm_campaign=repost-indri-retrieval-model

Labels:

Saturday, October 19, 2013

[repost ]TAO: The power of the graph

original:https://www.facebook.com/notes/facebook-engineering/tao-the-power-of-the-graph/10151525983993920 Facebook puts an extremely demanding workload on its data backend. Every time any one of over a billion active users visits Facebook through a desktop browser or on a mobile device, they are presented with hundreds of pieces of information from the social graph. Users see News Feed stories; comments, likes, and shares for [...]



via WordPress http://blog.newitfarmer.com/nosql/graph-store/facebook-tao/13077/repost-tao-the-power-of-the-graph#utm_source=rss&utm_medium=rss&utm_campaign=repost-tao-the-power-of-the-graph

Labels:

[repost ]解密Facebook产品开发流程的九大步骤

original:http://www.managershare.com/2013/03/28/nine-steps-to-decrypt-facebook-product-development-process/ 王淮是Facebook第二位中国籍工程师,也是第一位中国籍研发经理,他一手开创了Facebook的支付安全和客服工具领域。2011年他离开Facebook,回国成为天使投资人,希望用自己在Facebook的经验帮助创业者。 在详细说明Facebook产品开发流程的九大步骤之前,必须先讲清楚一点,这些是我用马后炮的方式来思考自己在Facebook做产 品、项目的实践中可能出现的步骤。所谓的“流程”,在Facebook内部并不存在,这些步骤并不都是必须的。对于不同类型的项目,有些对时间要求高一些,所以更强调速度;有些对质量要求高一些,会更强调项目管理的流程(Process)。请读者在阅读时仔细斟酌,哪些符合自身的实际情况,则可以借鉴; 哪些不适合,要灵活掌握。 一、描绘远景,设置目标 做每件事情之前都要有明确的目标,在聚焦于细节之前要有大的远景(Vision),这可以在以后的实施过程中指引方向。对于远景的思考,主要围绕以下三点。 1. 为什么设这个目标,而不是另外一个? 2. 在做一件事情之前,脑子里应该有这件事情完成之后是什么样子这个画面,接下来很多事情都是围绕着这个最终画面来进行的。 3. 计划做些什么来实现这个远景?这就需要将最终目标具体化,变成一个可以想象的图片,甚至量化,然后才能使得最终目标容易被别人理解。 那又该如何设定目标呢?在Facebook,常用的方法是遵循“SMART”规则。 S——非常详细具体的(Specific)。目标必须被清晰定义,无法被混淆或者误解。 M——是能够衡量的(Measurable)。只有可以被衡量的目标,才能一直清楚做得如何,离目标有多远,当前是超出还是低于预期的进度。 A——要有足够的难度和挑战性(Aggressive)。容易完成的目标,很容易让员工懈怠;一旦失去战斗的激情,更谈不上发挥潜能。 R——现实的(Realistic),这是对上一点的平衡。过于有难度的目标,会令员工疲惫不堪,如果最后还是没能完成任务的话,对他们的信心是非常大的打击。 T——要有实现的期限(Time-bound)。没有实现期限的目标是没有意义的,因为不知道什么时候应该到达什么程度。 有了目标之后,才可能有很详细的项目计划,所有的项目都应该是跟这些目标相关的。不相干的项目会分散注意力(Distraction),要坚决抵制。接下来,组里人员的绝大多数时间都要花在跟这几个目标相关的项目上。 二、收集想法并排出优先次序 有 了目标以后,会产生很多相关的想法(Idea),但很难判断究竟哪个想法一定能达到这些目标,也不可能把所有的想法都试一遍,往往到最后都需要有理有据地 进行“赌博”,把精力押在某几个核心的想法上。这也是Facebook要招最好的工程师的原因之一。工程师不仅要善于写程序,也要有选择想法的能力,你不 仅要对这个问题有很深入的思考,进行大量的分析,还要有胆量,能果断押注,并且有很高的命中率。 那么,这些想法从何而来呢?最自然的方式就 是之前延续下来的、大家明确知道要做的项目,而那些不明确的想法,才是难点。在发展非常快的公司里,绝对不会缺少这种不明确的想法。在Facebook, 一般是由技术经理、产品经理、工程师贡献大量的想法。负责商业运营(Business Operation)的同事也会贡献一些想法。做下一个月计划时,我会在当月25日左右开始给相关人员发一个一周后的头脑风暴会议邀请,并希望他们在会议 之前把自己认为应做的或者想做的事情发邮件告诉我。我事先做分类整理,让会议进行得更加高效。当然,线下的讨论、分享等也是产生想法的好机会。 接下来最为关键的就是分析想法——如何挑选出最可能产生效果的想法。理论上,如果有无限的资源,我们应该尝试所有的想法。但在Facebook,任何时候都处于资源短缺的状态,我们必须把有限的资源放到有可能产生最大价值的想法上面。 这里,我要特别强调一下“Top X(只做前X项)”规则:只做对目标最有影响的前X项。我们会对所有的想法进行讨论,根据每个想法对目标的影响和其所需要的资源(主要是人力与时间—— “人周”)进行讨论,然后排序(按P0,P1,P2……的方式来),最后挑选排在最前面的几项。分析完后,对几个明显一定要做的想法很容易决定,对几个要 去掉的也很容易决定,关键是剩下的那些想法,没有足够的精力把它们都尝试一遍,这就要考验你的抉择能力了。 三、跨团队沟通 决定了要做的项目之后,就需讨论如何跟其他相关组的计划对接。你当然不希望原本以为兄弟组能配合自己做一个项目时,却发现对方并未把与你项目相关的工作放入他们的计划中。这里要进行的沟通,就是让相关组之间做的事情是相辅相成的,而不是互相扯皮,造成不必要的内耗。 有两类人是特别需要沟通的。 1. 不同职能之间的沟通,包括工程师、产品经理、设计师,还有与项目相关的上下游团队或部门。 2. 相关的工程兄弟组之间的沟通。因为大家相互之间经常有技术或者框架上的共享,我们定下要做的事情,就看看相互之间是否有可以匹配的项目,如果我们需要他们的配合,就要看怎样可以列入他们的计划。 四、告知所有可能关心的人 我们会召开一次最终的计划定夺会议。主要是由工程师和产品经理及一些非常相关的人参加,这种会议是小规模的,因为不想在决策时让其他非产品技术的人员参与进 来,其他人的声音已经在之前的跨团队沟通过程中被充分地考虑了。如果前面的工作准备得比较好,这种会议速度都很快,一般半个小时左右。 整个计划定下来之后,会发一封邮件给所有关心该计划的人和相关工作的人。并且会在接收人那里把老板、老板的老板都放进去,以确保他们能清楚、理解并支持我们组的计划。 五、设计产品 对于任何一个项目,具体执行中一般都涉及四个维度:功能(Feature Set),预期完成时间(Time to Market),预算(Budget,主要是人员,还有服务器、带宽资源、金钱等),完成质量(Quality,包括可扩展性Scalability、性 能Performance等)。不管你做没做计划,所有的决定都围绕着这四个方面进行考量。如果进度拖后了,那么可以去掉或精简一个功能,或者推后完成的 时间,或者增加人手、加大投入,或者降低质量等,无非就是在这四个方面进行取舍。 很重要的一点是,设计产品时,要大概知道第一版本(V1)是什么样子。可以在设计时构思产品的最终状态,但公司不会允许花大量的资源去打造一个所谓的终极版本。一定要思考第一版本包含哪些功能、什么时间发布、要多少人员配置、要花多少钱做市场宣传、达到什么效果等。 这可以避免一开始投入过大,但做出的产品并不是市场所需要的,再进行很大修改甚至放弃该产品的情况出现,这无疑是很大的浪费。 [...]



via WordPress http://blog.newitfarmer.com/software-design/design-product/13036/repost-%e8%a7%a3%e5%af%86facebook%e4%ba%a7%e5%93%81%e5%bc%80%e5%8f%91%e6%b5%81%e7%a8%8b%e7%9a%84%e4%b9%9d%e5%a4%a7%e6%ad%a5%e9%aa%a4#utm_source=rss&utm_medium=rss&utm_campaign=repost-%25e8%25a7%25a3%25e5%25af%2586facebook%25e4%25ba%25a7%25e5%2593%2581%25e5%25bc%2580%25e5%258f%2591%25e6%25b5%2581%25e7%25a8%258b%25e7%259a%2584%25e4%25b9%259d%25e5%25a4%25a7%25e6%25ad%25a5%25e9%25aa%25a4

Labels:

Friday, October 18, 2013

[repost ]Deep Learning and Shallow Learning

original:http://freemind.pluskid.org/machine-learning/deep-learning-and-shallow-learning/ 由于 Deep Learning 现在如火如荼的势头,在各种领域逐渐占据 state-of-the-art 的地位,上个学期在一门课的 project 中见识过了 deep learning 的效果,最近在做一个东西的时候模型上遇到一点瓶颈于是终于决定也来了解一下这个魔幻的领域。 据说 Deep Learning 的 break through 大概可以从 Hinton 在 2006 年提出的用于训练 Deep Belief Network (DBN) 的算法开始,打破了持续了数十年的多层神经网络效果很差的尴尬局面,其之后各种其他的算法和模型也相继被提出来并在各个应用领域中大展神威。而近来 Google 聘请 Hinton、纽约时报的封面报道等公众媒体的宣传,更是使得 deep learning 变得大红大紫。记得之前在老板的某个 draft 中看到过这样一段话: I do not expect that this paper will ever be published in the usual journals. “Success” for a paper [...]



via WordPress http://blog.newitfarmer.com/ai/deep-learning/13035/repost-deep-learning-and-shallow-learning-2#utm_source=rss&utm_medium=rss&utm_campaign=repost-deep-learning-and-shallow-learning-2

Labels:

Wednesday, October 16, 2013

[project ]Netflix Hystrix is a latency and fault tolerance library

original:https://github.com/Netflix/Hystrix/wiki What is Hystrix? In a distributed environment, failure of any given service is inevitable. Hystrix is a library designed to control the interactions between these distributed services providing greater latency and fault tolerance. Hystrix does this by isolating points of access between the services, stopping cascading failures across them, and providing fallback options, all [...]



via WordPress http://blog.newitfarmer.com/architecture/arch-availablity/13029/project-netflix-hystrix-is-a-latency-and-fault-tolerance-library#utm_source=rss&utm_medium=rss&utm_campaign=project-netflix-hystrix-is-a-latency-and-fault-tolerance-library

Labels:

[repost ]IBM中国研究院在京举办2013认知计算研讨会

original:http://product.ccidnet.com/art/28023/20131013/5212573_1.html 【赛迪网讯】由IBM中国研究院主办,以“从大数据到认知计算”为主题的认知计算研讨会在北京举行。中国工程院院士李国杰,原中国教育部副部长、中国工程院院士韦钰,原中国科技部副部长马颂德,中国工程院院士李德毅,中国工程院院士高文,模式识别国家重点实验室主任谭铁牛,中国科学院心理研究所所长傅小兰,中国科学院计算所所长孙凝辉,香港大学工学院院长Norman Tien教授,IBM沃森技术全球研究主管Eric W. Brown博士等资深专家出席了研讨会。 人类已经进入认知计算时代,认知计算是应对大数据挑战的关键科技之一。与会专家深入探讨了大数据时代认知计算技术的多维度走向。IBM中国研究院院长沈晓卫博士表示:“作为IBM研究院全球系列研讨会之一,本次会议旨在探讨认知计算的技术趋势和未来发展方向,更好地应对大数据时代的各种挑战。” 认知计算四大特性:辅助、理解、决策、发现——应对大数据时代挑战 大数据具有数量大、速度快、多样性、不确定性等特点,这给数据的采集、存储、管理和分析都带来许多挑战。如何将纷繁数据化繁为简,实现类似人脑的认知与判断,发现新的关联和模式,从而做出正确的决策,就显得尤为重要。 认知计算时代,计算机将成为人类能力的扩展和延伸。将计算机的运算处理能力与人类的认知能力完美结合,完成人类或机器无法单独完成的任务。认知计算意味着更加高效的信息处理能力、更加自然的人机交互能力、以数据为中心的体系设计,以及类似人脑的自主学习能力,这为人类应对大数据挑战开启了新的方向。 认知计算系统所具备的四个层次的特性——辅助(Assistance)、理解(Understanding)、决策(Decision)、发现(Discovery),将是人类面对大数据时代的挑战、做出智慧决策的保障。百科全书式的信息辅助和支撑,让人类利用广泛而深入的信息,轻松成为各个领域的“资深专家”;非凡的观察和理解能力,帮助人类在纷繁信息中发现其内在的关联和涌现的趋势;快速决策能力,帮助人类定量地分析影响决策的方方面面,降低失误,保障决策的精准性;发现及洞察能力,将实现从“演绎”到“归纳”的突破,真正让机器具备类似人脑的“认知”能力,帮助人类发现当今计算技术无法发现的新洞察,新机遇及新价值。 认知计算的应用前景 作为认知计算系统的杰出代表,IBM沃森技术已经应用于医疗、金融和客户服务等领域,以其更加智能、精准的大数据分析能力,降低误诊、拯救生命和提升客户体验。例如,在医疗领域,IBM正在与一些医疗保健机构合作,基于沃森技术,将数百万页的期刊、报告和教科书结合在一起,解答许多复杂的医学问题,通过创新方式开展医药的研究与实践活动,从而提高医护质量。 沃森的商用实践预示了认知计算广阔的行业应用前景。未来,认知计算在人类生活的各个方面都将带来根本性的改变。例如,在实时金融风险控制领域,认知计算技术可以让人们实现秒级的风险检测与防范;在癌症治疗领域,目前需要一个月或更长时间才能制定出针对性的药物治疗方案,而认知计算技术则可以把这个周期缩短至一天,这将极大地提高癌症患者的治愈率;在教育领域,认知计算通过实时分析技术,为学习者制定个性化的教育计划并及时评估学习效果,以此优化教育方案,提高教育质量和效率。 协作创新,构建认知计算的生态系统 “认知计算是一个系统工程,是一个贯穿整个计算机软硬件的整体创新。它的实现需要来自各个领域的科学家的共同努力。认知计算技术的发展一定是协作创新的结果。”IBM中国研究院院长沈晓卫表示:“我们期待与学术界、产业界一起,协作推动产学研合作,推进技术的转化,积极构建认知计算的生态系统建设。”



via WordPress http://blog.newitfarmer.com/ai/cognitive-computing/13027/repost-ibm%e4%b8%ad%e5%9b%bd%e7%a0%94%e7%a9%b6%e9%99%a2%e5%9c%a8%e4%ba%ac%e4%b8%be%e5%8a%9e2013%e8%ae%a4%e7%9f%a5%e8%ae%a1%e7%ae%97%e7%a0%94%e8%ae%a8%e4%bc%9a#utm_source=rss&utm_medium=rss&utm_campaign=repost-ibm%25e4%25b8%25ad%25e5%259b%25bd%25e7%25a0%2594%25e7%25a9%25b6%25e9%2599%25a2%25e5%259c%25a8%25e4%25ba%25ac%25e4%25b8%25be%25e5%258a%259e2013%25e8%25ae%25a4%25e7%259f%25a5%25e8%25ae%25a1%25e7%25ae%2597%25e7%25a0%2594%25e8%25ae%25a8%25e4%25bc%259a

Labels:

[repost ]IBM CEO罗睿兰:认知运算催生智慧企业 IBM CEO Ginni Rometty: Cognitive Computing Expedites Delivery of Smarter Enterprises

original:http://ibm.e-press.com.cn/wio/v/id/7847134 Summary:On recently held IBM InterConnect Conference in Singapore, IBM CEO Ginni Rometty further made illustration on cognitive computing and proposed three benchmarks of smarter enterprises. She said that information will become new natural resource in the 21st century and data will be a new footstone for the competitiveness of each sector. According to Ginni [...]



via WordPress http://blog.newitfarmer.com/ai/cognitive-computing/13024/repost-ibm-ceo%e7%bd%97%e7%9d%bf%e5%85%b0%ef%bc%9a%e8%ae%a4%e7%9f%a5%e8%bf%90%e7%ae%97%e5%82%ac%e7%94%9f%e6%99%ba%e6%85%a7%e4%bc%81%e4%b8%9a-ibm-ceo-ginni-rometty-cognitive-computing-expedites-deli#utm_source=rss&utm_medium=rss&utm_campaign=repost-ibm-ceo%25e7%25bd%2597%25e7%259d%25bf%25e5%2585%25b0%25ef%25bc%259a%25e8%25ae%25a4%25e7%259f%25a5%25e8%25bf%2590%25e7%25ae%2597%25e5%2582%25ac%25e7%2594%259f%25e6%2599%25ba%25e6%2585%25a7%25e4%25bc%2581%25e4%25b8%259a-ibm-ceo-ginni-rometty-cognitive-computing-expedites-deli

Labels:

[repost ]开发与研发

original:http://blogread.cn/it/article/2989?f=wb 按:这几天我一直在写这篇东西,本来是胸有成竹,没想到后来越写越发现自己在这个题目下有太多话想说,而以我现在的能力又不能很好地概括总结,以至于越写越长,文章结构也变得混乱,到后来修改的时候每次都要考虑好久才能下笔,所以决定拆成两部分来发,以便阅读。这篇写得我心力交瘁,质量不算好,凑合着看吧。 同样是写程序,不同的岗位工作内容不一样,对程序质量以及工程师的要求也不一样。程序开发大概可以划分成两类:开发和研发,相应也就有开发工程师和研发工程师。很多人觉得做开发和做研发没什么区别,“都是一样对着电脑写程序啊”,但其实这两者是完全不一样的,下面我想抛开公司对员工的期望、社会对工程师的需求等其它因素,单纯从国内互联网行业“工程师个人发展”的角度来说一下我个人对这两类工作的看法。 开发 开发一般是指产品开发,开发工程师直接为产品贡献代码。每个公司都有自己的产品线,拿 Google 来说吧,它有 Gmail, Chrome 等产品,每个产品都有很多开发工程师在后面支持,这些产品的开发、维护以及升级都是由相应的开发工程师负责的。由于开发工程师的工作直接关系到产品的质量和在线情况,所以开发工程师的责任是很重的,他可能经常为了下个版本的发布而加班,为了产品的故障不得不在休假的时候打开电脑工作,甚至在过年的时候都会接到领导的电话。所以你看到那些总抱怨加班太多,总是说自己是“IT民工”的,大部分都是开发工程师。在工程师当中,大部分人都是做产品开发的,毕竟公司都是要靠产品盈利,招聘的大部分人也要直接为产品服务。 做开发是很辛苦,但也有好处,因为需要对产品线负责,所以会是公司的核心,裁员对你威胁不大,如果你负责的产品恰好又是盈利产品的话,那么加薪、奖金、集体出游等福利都不会少。如果你足够幸运地加入了一家快速发展的创业公司,说不定一下子就发家了。还有很重要的一点是,作为产品的开发人员可以看到自己做的东西被那么多人使用,那是一种莫大的鼓励和肯定。 苦闷的开发工程师 尽管我很尊重开发工程师,但是我不得不承认,在国内大部分的公司,做开发工程师是没有前途的。首先,从微博到开心,有多少国内的产品不是山寨的?这也罢了,最恶心的是有一些产品经理连产品设计图都懒得自己画,直接去截取别人产品的图片,假如我是一个人人网的开发工程师,每天看到产品经理把 Facebook 新上线功能的截图拿过来让我做,你让我如何对产品有荣誉感和认同感?而如果一个开发工程师对自己做的东西没有荣誉感和认同感,那么他坚守自己的岗位要么是因为公司给的钱多,要么是因为他还没有找到下家。我个人认为,做开发最大的一个好处就是可以亲手实现一个“自己的作品”,就算平时很累,但最后完成它的时候也还是会无比满足,这点被剥夺了之后,和饭店打工的服务员有什么两样?不一样是为了糊口吗? 我不知道别人怎样,但我自参加工作以来就一直纠结于此――甚至开发的大部分产品都不好意思写上自己的名字;直到前不久有机会去做一个公司内部使用的平台,才终于有个作品让自己觉得满意。相信很多开发工程师参加工作之前都对互联网上很多诸如Gmail, Facebook 等优秀的产品耳熟能详,自己也常梦想做出那样的产品,但万万没有想到的是,工作之后要学习的第一课就是“不要对自己做的东西有感情”――有了感情你就不愿意做广告弹窗,不愿意看到它下线,不愿意为了短期利益伤害用户。与此同时,你还要继续听产品经理和老大们满怀激情地说“我们一定要让用户喜欢我们的产品”。一个连开发工程师本人都觉得无聊的产品如何让用户真正喜欢呢?拿搜索巨人来说吧,Google 把社交网站看作是某种形式的娱乐而不是有用的工具,所以它会在社交领域失败,再牛的技术也无法遮盖情感上的空白。不过话说回来,这好像对于国内大部分的公司都不是问题,因为它们做一款产品只是想从用户那里拿到钱,如果以后用户流失了就下线,然后再开发一个新的。他们要的不是用户的长期感情,而是一夜情,开发工程师就是一夜情的工具。 其次,国内几乎所有公司的技术流程和技术积累都做得很烂,大部分都只是片面地追求开发速度。我们在大学里受到的教育是“文档和注释很重要”,工作之后才发现文档和注释是很稀有的东西,只有特别负责任的工程师才会挤时间去写。有一个很有意思的现象是,国内很多产品发布之后会特别自豪地说“XX 是我们开发团队在时间紧迫的情况下,封闭开发了X 天就完成的!只有最牛的工程师才能创造这样的奇迹!!多少个凌晨,XX写字楼上只有我们办公室的灯还亮着……”,然后你会觉得“好感动啊”,但冷静下来想一想,这种拼命赶工做出来的东西质量会过硬吗?抛开产品质量不谈,没有时间写文档、没有时间写注释、没有时间做 code review, 没有时间做阶段总结……没有了这些,作为一个开发工程师你通过这个项目可以提升多少呢?所以好多开发工程师一开始是“代码民工”,过了几年还是“代码民工”,而一个人年富力强的时间又有几年呢?怪不得那么多人说工程师和妓女一样,都是吃青春饭的。 发展方向 我个人认为,国内的开发工程师大概有三个发展方向:1.做管理。 2. 去做架构等与产品关系不那么紧密的研发。3. 提升其它方面的能力,做 “A+ Player”,然后自己创业。我对管理没有研究,也没有兴趣,这里就不说了。研发我会在下篇中细说,这里主要说一下第三条。 为什么要关注代码之外的事情 如果你只会埋头写代码,那么代码写得再好也可能不会是一个好的开发工程师。做开发不是做学术研究,你的任务不是去钻研技术,而是利用自己的技术把产品做出来。尽管技术能力是基础,但如果无法把能力很好地应用到开发当中,那么你在团队中就没什么价值。举个例子,如果你不能很好地理解产品需求,那么就会根据自己的理解去做技术方面的架构和编码,等到后来发现了再去修改就特别麻烦,这个时候技术能力强反而成了坏事,南辕北辙的故事我想大家都听说过。 很多开发工程师属于那种“很本分”的人,从来不会提出意见,不关心产品形态和细节,只是去做产品经理提出的需求。我觉得别人把工程师叫做“代码民工”也就算了,但是工程师对自己做的东西完全没有看法,那就是甘心沦落为民工了。这也有文化的原因,国内的公司都喜欢那些不爱抱怨的员工,因为他们听话而且符合中国传统的价值观,但我更喜欢那些爱抱怨并且抱怨得有道理的人,因为国内(不只是互联网上面)粗制滥造的东西实在太他妈的多了,不抱怨才不正常,有不满才会去思考如何做得更好。 曾经听到有人谈论如何管理技术人员的时候说:“管理技术人员很简单,找一个比他们都牛的人就行了。” 这个人很了解工程师的脾气。工程师去判断其他工程师的时候,往往只看他的技术能力,觉得谁的技术好谁就最牛,其它的都无所谓。没错,技术牛的工程师写的代码质量很高,但这只是一个方面而已,判断一个人在团队中是不是“很牛”要看他对团队对产品的整体贡献,而不是他的个人能力。他能很好地理解产品需求吗?能很好地理解设计师的意图吗?和团队其他成员沟通顺利吗?写出的代码方便测试吗?会对产品提出好的建议吗?……这些都是判断一个开发工程师的标准,整体素质越高在团队中的价值也就越大。 所以要想做一个好的开发工程师,就要在写好代码的同时努力提高其它方面的能力。我知道大部分的工程师都喜欢和机器而不是和人打交道,所以遇到和产品经理、设计师以及 QA 等部门协调沟通的时候就皱眉头。协调沟通确实是一件闹心的事情,但从另一方面来说,这是开发工程师的一个得天独厚的优势:你可以深入接触产品生产线上的所有环节。需求评审的时候,你可以了解产品设计;开发界面的时候,你可以了解到视觉和交互设计;测试的时候,你可以了解到产品测试的细节;上线的时候,你也可以多观察 Ops 同事的操作。如果你可以在协调沟通的时候学会换位思考,多从对方的角度看问题,多想一下“他为什么要这么做”,那么不知不觉就会对各个领域有一些了解,进而发现原来每个领域都大有学问,就不会因为周围那些学艺不精的人而轻视他们所在的领域。 学习设计 对于工程师来说,测试和上线都是技术性的工作,和开发有很多相通的地方,而产品设计、交互设计和视觉设计等设计领域则比较陌生。对于自己不了解的东西,我们的看法往往会趋于两个极端:要么是看得高深莫测,要么是看得一文不值。其实对于大部分的东西,只要不笨并且愿意下功夫学习,总是可以学会的。尽管达到大师的水平可能需要传说中的“天赋”,但做到中等水平并不是特别困难。关于设计领域我一直在断断续续地在学习,到现在可能连略窥门径也算不上,这里只是说一下我个人对设计的理解和心得,供大家参考。 产品设计 产品设计看上去比较简单,因为只要清楚自己想要做什么,那么自然可以慢慢勾勒出产品的形态和功能。要做好产品设计,就需要平时多下一些功夫,多研究一下互联网上那些已有的产品,另外还需要多看一些诸如社会学、历史等“闲书”,举个例子,假如你想开发一款针对台湾用户的产品,那么了解一下台湾的文化肯定是有必要的。总之,学习产品设计是慢功夫,没有什么速成的捷径,只有一点一滴地不断积累才能培养出敏锐的产品意识和深刻的洞察力。 工程师学习产品设计有一个优势,那就是设计出来的产品是自己亲手实现的,你可以在实现的过程中不断重新反思原来的设计,然后加以修改和完善。这就好像写文章一样,很多时候你写东西的时候并不清楚自己具体要写什么,但只要是下笔开始写,写着写着就会发现新的想法,写作的过程同时也是思考的过程。写作和写代码很像,它们不仅可以表达想法,还可以创造想法。 视觉设计 很多工程师听到视觉设计会立刻退避三舍,觉得自己“不会画画”、“不懂配色”是不可能学习视觉设计的。诚然,视觉设计是需要更多艺术方面的基本功,要完全掌握需要长期的训练,但我们还是可以从简单的学起,慢慢培养对设计的感觉。我个人在这方面所知非常有限,但是对视觉设计中的完美主义印象深刻。 编程的时候,如果你的某行代码多了一个空行可能不会有什么问题,但在视觉设计中差了 1 个像素或者 10% 的透明度就是不可容忍的,很多设计师要求的都是 “Pixel-Perfect”――像素级别的完美。如果你不苛刻地追求完美,几个这样的“小瑕疵”就可以把整个作品毁掉。在我没有接触过视觉设计的时候很难理解这一点,切页面的时候并不会特别仔细地去看设计图,而且为了降低技术难度会想当然地篡改设计师的意图,比如把一些微小的渐变用纯色代替,这是很无知的做法。所以当设计师要求你做一个 [...]



via WordPress http://blog.newitfarmer.com/industry/career/13022/repost-%e5%bc%80%e5%8f%91%e4%b8%8e%e7%a0%94%e5%8f%91#utm_source=rss&utm_medium=rss&utm_campaign=repost-%25e5%25bc%2580%25e5%258f%2591%25e4%25b8%258e%25e7%25a0%2594%25e5%258f%2591

Labels:

[repost ]TogetherJS is a service for your website that makes it surprisingly easy to collaborate in real-time.

original:https://github.com/mozilla/togetherjs What is TogetherJS? TogetherJS is a service for your website that makes it surprisingly easy to collaborate in real-time. Using TogetherJS two people can interact on the same page, seeing each other’s cursors, edits, and browsing a site together. The TogetherJS service is included by the web site owner, and a web site can [...]



via WordPress http://blog.newitfarmer.com/ajax-framework/js-libary/13016/repost-togetherjs-is-a-service-for-your-website-that-makes-it-surprisingly-easy-to-collaborate-in-real-time#utm_source=rss&utm_medium=rss&utm_campaign=repost-togetherjs-is-a-service-for-your-website-that-makes-it-surprisingly-easy-to-collaborate-in-real-time

Labels:

[project ]Shumway is an HTML5 technology experiment that explores building a faithful and efficient renderer for the SWF file format without native code assistance.

original:https://github.com/mozilla/shumway Shumway Shumway is an HTML5 technology experiment that explores building a faithful and efficient renderer for the SWF file format without native code assistance. Shumway is community-driven and supported by Mozilla. Our goal is to create a general-purpose, web standards-based platform for parsing and rendering SWFs. Integration with Firefox is a possibility if the [...]



via WordPress http://blog.newitfarmer.com/web/html5/13014/project-shumway-is-an-html5-technology-experiment-that-explores-building-a-faithful-and-efficient-renderer-for-the-swf-file-format-without-native-code-assistance#utm_source=rss&utm_medium=rss&utm_campaign=project-shumway-is-an-html5-technology-experiment-that-explores-building-a-faithful-and-efficient-renderer-for-the-swf-file-format-without-native-code-assistance

Labels:

[repost ]数学是一种文化 (?)

original:http://www.mysanco.com/wenda/index.php?class=discuss&action=question_item&questionid=6052 【新语丝电子文库(www.xys.org)(www.xys2.org)】 ———————————————— 数学是一种文化 ——《通俗数学名著译丛》告诉你真实的数学 葛之 谈到数学,绝大多数人的印象是严格、抽象,或许还有枯燥。但是,笔者好 友、《通俗数学名著译丛》的主要策划者、上海教育出版社的叶中豪先生则认为: “数学是一种文化,而文化就是要被继承的东西。” 仔细地想一想,事实也确实如此:世界上的语言、文字、宗教、党派都有地 域之分,但世上只有一种数学,数学定理又能万世流传。按中豪的说法,数学确 实是最具有文化特征的了。 可惜的是,99%的数学至今仍掌握在远远不到1%的人的头脑中。于是我们 不可避免地遇到一个棘手的问题:数学究竟是精英文化还是大众文化? 看看伟大的数学家庞加莱是怎么说的,庞加莱说: 科学家研究自然并不是因为它有用,他研究它是因为他喜爱它,他喜爱它是 因为它美。如果它不美,它就不值得被人知道,而如果自然不值得知道,人也就 不值得活下去。当然,我这里说的并不是那种激动感官的美———那种品质上和 外观上的美;并不是我低估那种美,远远不是如此,但那种美跟科学不相干;我 说的是各部分之间和谐有序的更深刻的美,是一个纯洁的心灵所能掌握的美。 显然,庞加莱指的“科学”主要是理论科学,包括数学。他似乎也支持科学 (包括数学)是一种精英文化。 这篇文章当然不可能解决这个问题,《通俗数学名著译丛》也不是对这一问 题的回答。但中豪认为,数学过分地远离公众,并不是一件好事;或许学术界允 许哈代这样孤独的数学精英存在,但出版界既然承担起传播知识的作用,显然应 有别种角度的考虑。事实上,中豪和数学界的史树中、李文林等诸位教授的努力, 使得《通俗数学名著译丛》出版并在社会上引起很好反响,这确实是为社会奉献 了一套“精英的礼物”。 笔者读过这套丛书中的许多本,也和中豪交流过许多次,这套丛书可以告诉 读者什么呢? 首先要讲的是对读者的引导问题。数学界近年有一个新名词,叫核心数学。 也就是说,衡量一个数学家的水平,主要并不是看他解题水平有多高。数学家的 主要工作,就是从一些必要的前提出发,尽可能多地建立结构或关联,这种结构 的选择并不具有任意性,因为数学的结构有重要和不重要之分。 中豪认为,数学所具有的客观性,是任何智慧生命所不可避免的“命运”。 作为一门科学,数学必须强调普遍性;在某种意义上说,只有核心数学(强调重 要结构的那部分数学)才是不可避免的。一个数学问题或理论,如果只有一个人 或少数几个人研究过,无法继承下去,最终只能成为后人从陈年故纸堆中翻出来 的思维调料,这样的数学就算不上是好的数学,也就称不上是核心数学。 在一般人心目中,“高级数学”就是哥德巴赫猜想。该丛书中的《数学:新 的黄金时代》、《20世纪数学:五大指导理论》、《计算出人意料》,可以告诉 读者,在20世纪,什么数学是最重要的。 其次,要把数学看作是一种高级趣味,能够帮助人们提高自身的修养。该丛 书中有一本《数论妙趣》,把高斯称为“数学之皇后”的数论描写得生动有趣, 读来真是一种享受;《数:科学的语言》是一本名著,对于了解数学文化提供了 很好的帮助;《无穷之旅》把神秘的“无穷大”描述得淋漓尽致,读了这本书, 读者就会明白与现实生活“相去甚远”的无穷大,实际上在文化史上扮演了一个 相当重要的角色。即将出版的《制胜之道》,作者是剑桥大学著名数学家康威等 人。作为“生命游戏”的创立者、20世纪无可争议的天才,康威采集了几乎有史 以来所有的数学游戏,而且这些游戏不是一般的游戏,有很深的数学(比如群论) 背景。这样的书极难写,大概只有《GEB———一条永恒的黄金辫带》才能与之 媲美;《当代数学:为了人类心智的荣耀》则对现代数学作了相当出色的概括。 其作者是世界著名数学家、布尔巴基的笔杆子迪厄多内。这本书书名就取得相当 之好,看来迪厄多内与庞加莱的思想有不谋而合之处。 有一些人,他的数学成绩很好,工作中也用到了数学,但他们可能仅仅把数 [...]



via WordPress http://blog.newitfarmer.com/ai/math/13006/repost-%e6%95%b0%e5%ad%a6%e6%98%af%e4%b8%80%e7%a7%8d%e6%96%87%e5%8c%96#utm_source=rss&utm_medium=rss&utm_campaign=repost-%25e6%2595%25b0%25e5%25ad%25a6%25e6%2598%25af%25e4%25b8%2580%25e7%25a7%258d%25e6%2596%2587%25e5%258c%2596

Labels:

Tuesday, October 15, 2013

[repost ]Algorithm Writes People’s Life Histories Using Twitter Stream

original:http://www.technologyreview.com/view/519961/algorithm-writes-peoples-life-histories-using-twitter/ If you tweet about your life, a new algorithm can identify your most significant events and assemble them into an accurate life history, say the computer scientists who built it Twitter allows anyone to describe their life in unprecedented detail. Many accounts provide an ongoing commentary of an individual’s interests, activities and opinions. So [...]



via WordPress http://blog.newitfarmer.com/anls/social-analytics-anls/12992/repost-algorithm-writes-peoples-life-histories-using-twitter-stream#utm_source=rss&utm_medium=rss&utm_campaign=repost-algorithm-writes-peoples-life-histories-using-twitter-stream

Labels:

[repost ]IBM研究人员:仅200条微博 就可构建人格剖析图

original:http://www.csdn.net/article/2013-10-12/2817155-ibm-personality-data-based-on-tweets IBM研究人员近日称仅通过分析大约200条具有实质内容的微博,就可以较为准确地判断出一个人大概性格。据悉这项研究结合了文本分析、人机交互、心理学和大规模数据处理,而这项成果将会给诸多行业提供相关见解和建议。 北京时间10月12日消息,据BusinessInsider报道,IBM研究人员Michelle Zhou近日表示,仅通过分析大约200条具有实质内容的微博,她就可以较为准确地判断出一个人的大概性格。 Michelle Zhou提炼的分析数据来自于Twitter和IBM自己的内部社交网络处理数据,最终得出的结论来自于从推文中相配套的IBM Connection深度信息平台。 Dean Takahashi的分析结果 Michelle Zhou是一个数据分析专家,她在接受采访时就基于记者Dean Takahashi的Twitter推文构建了他的人格分析图,划分的依据主要是语言心理学、选词的分析以及41性状。 Michelle Zhou在接受采访时称,计算机能够从人们日常语言的脚印中得出某个人的性格特征。或许有些人会好奇,为什么在此之前这种性格分析技术并没有得到广泛应用?这主要原因是不知道从哪获得正常的语言脚印,但现在却可以从社交媒体和数字通信中获得相关信息,这些都是现成的,并且到处都是。Michelle Zhou声称,只要200条推文,大约有2500到3000左右的字就可以对一个人进行性格评价。 值得一提的是,这项研究类似于另外一项新研究,该研究分析了75000名志愿者的1500万条Facebook状态,两个研究都得出一个共同的结论——一个人的词汇选择和行为习惯与这个人的性格具有一定的相关性。 这两个研究的结论,都是从一个巨大的信息池经过复杂的算法后得出,而从根本上来说,大数据也符合心理学。 Michelle Zhou指出,这些得出的人格特征包括你的动机是什么?你的信仰是什么?你都有什么基本需求?看到这,思考下也的确是,用传统的方法是无法在短时间里认识一个人的性格特征,当然标准的心理测试除外。 VentureBeat记者Dean Takahashi最后指出,IBM的研究结合了文本分析、人机交互、心理学和大规模数据处理,而这项成果将会给诸多行业提供相关见解和建议,比如零售、政府、媒体、贸易谈判(分析谈判对手的性格)、银行和医生(医生可利用这些信息进行指导治疗)等行业,其影响和价值十分深远。



via WordPress http://blog.newitfarmer.com/ai/data-mining/12988/repost-ibm%e7%a0%94%e7%a9%b6%e4%ba%ba%e5%91%98%ef%bc%9a%e4%bb%85200%e6%9d%a1%e5%be%ae%e5%8d%9a-%e5%b0%b1%e5%8f%af%e6%9e%84%e5%bb%ba%e4%ba%ba%e6%a0%bc%e5%89%96%e6%9e%90%e5%9b%be#utm_source=rss&utm_medium=rss&utm_campaign=repost-ibm%25e7%25a0%2594%25e7%25a9%25b6%25e4%25ba%25ba%25e5%2591%2598%25ef%25bc%259a%25e4%25bb%2585200%25e6%259d%25a1%25e5%25be%25ae%25e5%258d%259a-%25e5%25b0%25b1%25e5%258f%25af%25e6%259e%2584%25e5%25bb%25ba%25e4%25ba%25ba%25e6%25a0%25bc%25e5%2589%2596%25e6%259e%2590%25e5%259b%25be

Labels:

[repost ]深度学习新算法,完成字里行间的情绪识别

original:http://www.csdn.net/article/2013-10-12/2817157-nasent-deep-learning 深度学习是近几年也被归入了过分吹嘘的技术之一,究其原因在于还没有成熟的算法和应用。然而学术界一直没有停止这方面的研究,近日,斯坦福大学研究开发的深度学习新算法NaSent,或为这个领域带来一线曙光。



via WordPress http://blog.newitfarmer.com/ai/deep-learning/12979/repost-%e6%b7%b1%e5%ba%a6%e5%ad%a6%e4%b9%a0%e6%96%b0%e7%ae%97%e6%b3%95%ef%bc%8c%e5%ae%8c%e6%88%90%e5%ad%97%e9%87%8c%e8%a1%8c%e9%97%b4%e7%9a%84%e6%83%85%e7%bb%aa%e8%af%86%e5%88%ab#utm_source=rss&utm_medium=rss&utm_campaign=repost-%25e6%25b7%25b1%25e5%25ba%25a6%25e5%25ad%25a6%25e4%25b9%25a0%25e6%2596%25b0%25e7%25ae%2597%25e6%25b3%2595%25ef%25bc%258c%25e5%25ae%258c%25e6%2588%2590%25e5%25ad%2597%25e9%2587%258c%25e8%25a1%258c%25e9%2597%25b4%25e7%259a%2584%25e6%2583%2585%25e7%25bb%25aa%25e8%25af%2586%25e5%2588%25ab

Labels:

Monday, October 14, 2013

[repost ]stanford Deep Learning in Natural Language Processing

original:http://nlp.stanford.edu/projects/DeepLearningInNaturalLanguageProcessing.shtml Overview Deep learning has recently shown much promise for NLP applications. Unlike most approaches in which documents or sentences are represented by a sparse bag-of-words vector, our work in the intersection of deep learning and natural language processing handles variable sized sentences in a natural way and captures the recursive nature of natural language. [...]



via WordPress http://blog.newitfarmer.com/ai/nlp/12973/repost-stanford-deep-learning-in-natural-language-processing#utm_source=rss&utm_medium=rss&utm_campaign=repost-stanford-deep-learning-in-natural-language-processing

Labels:

Sunday, October 06, 2013

[repost ]Adobe Creative Suite family :CS2 free downloads

original:https://www.adobe.com/cfusion/entitlement/index.cfm?e=cs2_downloads Product Platform Downloads Serial number Creative Suite 2 Mac CS2_install_Mac.pdf 1130-0412-8377-1896-9751-5759 CS_20_IE_NonRet_D1.dmg.bin CS_20_IE_NonRet_D2.dmg.bin CS_20_IE_NonRet_D3.dmg.bin VCS2.dmg CS_2.0_IE_Extras_1.dmg.bin Win CS2_install_Win.pdf 1130-1414-7569-4457-6613-5551 CreativeSuiteCS2Disc1.exe CreativeSuiteCS2Disc2.exe CreativeSuiteCS2Disc3.exe VCS2.zip CS_2.0_WWE_Extras_1.exe Acrobat 3D 1.0 for Windows Win AC3D_1.0_Volume_NACK_WWE.zip 1159-1414-7569-3493-5006-5653 Acrobat Standard 7.0 Win 22001904.exe 1016-1415-6379-6184-1333-2468 Acrobat Pro 7.0 Win 22020134.exe 1118-1414-8477-7606-6339-4141 After Effects Mac clamchop-x244-install.dmg 1063-0418-7724-1551-7671-3039 Win clamchop-x244-install-oem.zip 1063-1417-2474-8268-4115-9194 Audition 3.0 [...]



via WordPress http://blog.newitfarmer.com/software-design/design-tool-software-design/12971/repost-adobe-creative-suite-family-cs2-free-downloads#utm_source=rss&utm_medium=rss&utm_campaign=repost-adobe-creative-suite-family-cs2-free-downloads

Labels:

Wednesday, October 02, 2013

[repost ]Scalable ETS: Does Such a Thing Exist?

original:http://www.erlang-factory.com/upload/presentations/862/Scalable_ETS.pdf Video:https://www.youtube.com/watch?v=v0EcMi_gc_0



via WordPress http://blog.newitfarmer.com/programming/erlang/12967/repost-scalable-ets-does-such-a-thing-exist#utm_source=rss&utm_medium=rss&utm_campaign=repost-scalable-ets-does-such-a-thing-exist

Labels:

[repost ]Exploiting Similarities among Languages for Machine Translation

original:http://arxiv.org/pdf/1309.4168.pdf Abstract Dictionaries and phrase tables are the basis of modern statistical machine translation systems. This paper develops a method that can automate the process of generating and extending dictionaries and phrase tables. Our method can translate missing word and phrase entries by learning language structures based on large monolingual data and mapping between languages [...]



via WordPress http://blog.newitfarmer.com/ai/nlp/12965/repost-exploiting-similarities-among-languages-for-machine-translation#utm_source=rss&utm_medium=rss&utm_campaign=repost-exploiting-similarities-among-languages-for-machine-translation

Labels:

Tuesday, October 01, 2013

[repost ]技术团队新官上任之基层篇

original:http://www.csdn.net/article/2013-09-04/2816724 摘要:从技术一线升职为基层技术管理人员,直至CTO或分管技术的总经理、副总裁,这可能是很多技术人员的梦想职业发展路线图。本文希望能够和刚刚走上技术管理岗位的同学们分享一些经验,使职业生涯的发展更加顺利和合理。 技术团队的管理人员身负技术和管理的双重使命,有着与众不同的成长路线。绝大多数情况下,在成长路线的第一步,是“技而优则管”,亦即由于表现出了出众的技术交付能力,优秀的技术人员被提拔到了基层管理岗位以承担更加重要和关键的交付任务。 众所周知,这并不是技术人员的唯一职业成长路线,大多数人都会在所谓的个人贡献路线上持续发展,走到管理岗位的转折点是少数人的路线。这条路并不好走:一方面,一旦承担了管理使命,工作内容和期望就会发生性质的转变,需要思考和学习一些全新的东西,这对于新官上任的技术管理人员来说挑战着实不小;另一方面,原有的技术使命变得更重了,如何能够运用好管理杠杆,不辱使命地完成技术任务,更是缺乏经验的技术管理人员很容易陷入两难的谜题。 技术管理路线从哪里开始 这个问题貌似非常可笑。技术管理路线不是从被提拔到技术管理岗位的那一天开始的吗?其实这么想就大错特错了。技术管理从来都是先有了管理之实,才会给予管理之名的。管理,顾名思义,包括“管”和“理”两个部分,而这两个部分都有着十分具体的工作内容。“管”的核心,在于对人员和资源施加影响和约束,使之向着既定的目标靠拢。而“理”的奥秘,在于组织协调人员之间的关系,减小摩擦阻力而激发合作动力甚至潜力。一言以蔽之,管理的实质,在于发挥团队的力量来完成 目标。也就是说,只要一个目标并非通过自己个人的力量,而是假借了别人的力量来完成,这就是管理路线的开始了。 这也是管理魔力的所在:一名 优秀的技术管理人员,就仿佛是长了三头六臂,既能够考虑到技术设计的方方面面,又能够把这种设计落实成以健壮漂亮的代码、精美易用的界面为基础的技术产 品。这不是因为他自己的精力变得无限了,也不全是因为他的技术本领变得高强了,而是因为有很多人在他的影响和组织下,向着他制定的统一目标在各显神通。 只要一名技术人员,他不仅是在一个人完成自己被分配的任务,而是在影响和组织不止他自己的其他人共同完成任务,他的工作角色中就已经包含了管理的成分。也只有事实上已经在从事管理工作、积累了管理经验并表现出一定管理天赋的技术人员,才有可能最终走上技术管理岗位,成为一名专职的技术管理人员。 这也部分地回答了“如何才能升到技术管理职位”的问题。想成为开发经理吗?那就不能满足于只是完成每天领来的那部分开发任务,而要思考这样的问题。 首先,我开发的这部分代码在整个项目里发挥着什么样的作用? 其次,我是不是可以把项目中至少我负责的这部分代码的上下游拉下来看一看是怎么回事? 再次,我理解了一个更大的逻辑以后,是不是能够和更多的开发人员坐下来商量一下怎么可以共同做一些改进,使得大家的日子都好过一点?还有,我是不是可以看一下测试人员是怎么来测试我写的代码,用例是什么样的?而运维人员又是怎么部署和升级的,遇到生产环境中的问题是怎么解决的?我可以多开发一些工具来改进 交付流水线吗?我需要和几个人一起筹划这件事? 当开始这样思考并着手做事时,你就开始向技术管理职位迈进了。 不要做什么 技 术管理当然是内容非常丰富多彩的一个课题,要做什么、该怎么做,可以写出许多书来。但是,也许像任何踏进任何一个内容丰富的领域一样,先弄清不要做什么也许反而是很关键的。毕竟职业发展并非一日之功,刚刚入行时犯一点小错也是在所难免,但如果有方向性的问题没有弄清楚,就比较糟糕了。 不要去模仿乔布斯。我是说,也不要去模仿任何当下出名时髦的IT商界领袖。这里面有几层意思。 第一,基层技术管理人员往往除了管理职能以外,还有相当具体和繁重的一线技术的个人贡献期望。此时,如何把手头的短期工作用技术手段加以实现还是主要矛盾 所在,管理在这个阶段往往还是以提升技术效率为目的的辅助手段。在这个阶段,主要以全局战略和大胆创新为主要特点,高层技术管理思想和方法对于基层技术管理人员的直接参考意义不大。 第二,一个企业的成功往往有多方面的因素,绝不可能仅仅是技术因素促成了全部的结果。另一方面,当企业被光环笼罩时,无论是领导人还是企业的的传记作者都不免自觉或不自觉地夸大成绩方面而忽略甚至避而不谈其阴暗面。但如果片面夸大技术因素或成功因素,而忽略其可能带来的负面效应,哪怕只是很小的一方面,都 可能会导致适得其反的局面。 第三,也是最重要的,每个人都只能以自己的方式成功。应该对于自己耳听目见的信息,以及综合用心的判断抱有信心,只有自己总结出来的经验才能灵活运用,真正能够达到卓越程度的技术管理者无一不是自己摸索出来的管理之路。 不要去做职业经理人。更不要去学厚黑学,基层技术管理人员尤其没有这样做的生存空间。技术行业是一种终身职业,一旦入行,就要终身学习。IT技术行业,就更是如此。 试问,如果一个开发经理自己都不能够在下属遇到技术问题时为其解惑,又如何谈得上去影响和组织技术人员,使其发挥团队力量?又如何能够担负技术难题攻关的责任?技术人员是非常特殊的人群,其最显著的特点是生产力强大,但沟通力低于平均水平。 所 以,普通的职业经理人只运用沟通工具上传下达,是完全不能实现技术管理目标的,因为技术人员的显著特点就是在得不到适当信息输入的前提下,没有足够的意愿 达成沟通。并且,即使沟通已经很充分,也需要相当的技术理解力,才能将沟通的成果加以消化和落实。而这些,也正是技术管理人员独有的用武之处。 不要立刻施政。《谁说大象不能跳舞》一书中,IBM的新CEO郭士纳在走马上任的第二天就打破陈规,宣布新政。对于临危受命的高层管理人员来说,也许这样做有其必要性。但坦率地说,其实这可能并非最好的做法。而对于刚刚任命的基层技术管理人员来说,也许最重要的就是按捺住自己自以为是——也许出发点并不坏 ——的一肚子改革方案,而要耐着性子和团队一道做一段时间最无趣、最底层的“脏活累活”,真正了解到团队难在何处,以及需要怎样的帮助才能摆脱困境或做得 更好。 这是必须要做的、绝对不能省略的环节,无论这新上任的技术管理人员是原先从这个团队提拔上来,还是空降而来的。根本原因在于,专职技术管理人员是一定需要时间对于团队和技术产品做出深一步了解,而不可能瞬间无师自通的。即使对于若干技术细节已经有了专家水平的了解,但必然对于其他的部 分,还是需要相当的时间才能熟悉,进而才能与原有的知识融会贯通。 非技术管理人员瞎指挥,虽然可恶,但总算情有可原。但如果技术管理人员不懂装懂,给技术团队带来伤害,这真是罪无可恕!千万不要搞什么新官上任三把火,这除了烧掉自己的锦绣前程之外,别无它益。 打开思路,好好学习 成为一名基层技术管理人员以后,要着手做三件事:第一,要继续学习技术相关的业务知识;第二,要打开技术工作的思路;第三,要规划自己未来的专业发展路线。 很多优秀的技术人员,升任到管理岗位以后,便放慢了技术本身的深造和相关业务的学习。几年下来,人就基本上废了。而学习如逆水行舟,不进则退。此时再要求进 步,就难上加难了。但是,管理不是要别人做事吗?为何自己还要继续精进?没错,管理的实质在于借助他人的力量,将每个人的生产力加上团队合作的放大系数, 达成生产力大大提升的结果。但管理从来都不是发号施令这么简单,技术管理就更是如此。 技术人员可不是傻子,行家一出手,就知道有没有。任务下达、分工安排,甚至是一个小小流程的细节,技术人员心里都有一杆秤,在度量着自己的管理人员到底靠不靠谱。如果一个开发经理要求自己的员工“写出没有 Bug的代码”,此言一出,在专业技术人员的心中他就威信全失了。相反,如果一个敏捷教练能够准确地指出“在这个Sprint里面,我们把内嵌的SQL语句替换成了对应的API调用,这对于我们客户的安全性是一个很大的提升,防止了注入的风险并使得实现具有了弹性”,技术人员又怎能不对他肃然起敬?向管理 要效益,这是人人会说的话,但技术管理要取得效益,就体现在每一次的代码签入、质量评审、交付上线、运维配置上。 这一个个的活动,以及真正动手与它们打交道的人,正是需要基层技术管理人员用心去经营的对象。而这无不要求更高效、更全面的学习。更有甚者,基层技术管理人员往往是技术部门和其他部门,甚至企业外部的技术接口,而技术语言在更广阔的世界中是需要翻译的。基层技术管理人员往往面对这个新职能,会不知所措,而唯一的办法,只能是从小学 生做起,听听业务人员怎么描述他们的专业工作,甚至他们眼中的技术产品。能否立足技术、精通业务这一点,往往就是基层技术管理人员拉开差距的关键所在。 一线的技术工作,往往从方法到结果都有较大的限定性。而基层技术管理人员,第一次有了具体技术方案的调整权力,以及资源方面的一定自由。权力和资源,这是每一个管理人员都必须去想办法争取的核心利益所在。 管理人员如果没有一定的野心,这对于企业来说其实是非常不利的。可以说,正是管理人员想要争取权力和资源的动力,使得他们绞尽脑汁地优化自己的管理思想和方法,从而给企业带来了活力。但也正是他们争取权力和资源的动机和手段的差距,使得他们归属到了不同的梯队里。 基层技术管理人员,玩权术是绝对玩不过别人的,但也不能以此为借口,就因循守旧固步自封。须知,如果不是资深技术人员从事了技术管理岗位,那些岗位就必然是由技术不过关的人员占据,这对于团队和企业都不是好消息。 其实,权力和资源只要是出于正当的动机和合理的用途,就是为所有人造福的必要基础。那么基层技术管理人员如何争取到更多的权力和资源?办法很多。 首先,要对自己和团队做了哪些工作,做好详尽的记录和归档。这样,不仅对于技术工作的连续性是一个很好的保证,也是在整理和表述团队的技术成绩和做出成员业绩评审时的最有力材料,更可以在未来申请更多资源,承担更大责任时做到胸中有底、心中有数。 其次,权力和资源在运用时要节约,申请时要留有余量。有形的招聘、采购时,节约经费这个好理解。但在汇报工作时,注意汇报材料的合理性,不浮夸更不造假,从 而积累无形的信任;在为手下员工安排工作时,能够考虑到合理安排进度,造成有一定的压力但不至于形成焦虑的程度,并在遇到实际困难时予以解决,等等,从而积累无形的安全感和凝聚力,这些能力就需要时间来培养了。 从根本上说,一切皆是经营的结果,多站在老板和员工的角度来思考他们的难处,利用自己手里的权力和资源,尤其是团队的技术优势来为他们排忧解难,这是基层技术管理人员成长的阶梯和秘诀。 [...]



via WordPress http://blog.newitfarmer.com/management/project-manage/12955/repost-%e6%8a%80%e6%9c%af%e5%9b%a2%e9%98%9f%e6%96%b0%e5%ae%98%e4%b8%8a%e4%bb%bb%e4%b9%8b%e5%9f%ba%e5%b1%82%e7%af%87#utm_source=rss&utm_medium=rss&utm_campaign=repost-%25e6%258a%2580%25e6%259c%25af%25e5%259b%25a2%25e9%2598%259f%25e6%2596%25b0%25e5%25ae%2598%25e4%25b8%258a%25e4%25bb%25bb%25e4%25b9%258b%25e5%259f%25ba%25e5%25b1%2582%25e7%25af%2587

Labels: