专访王豫翔:编程道路上的“三少三多”

转自:http://www.csdn.net/article/2013-02-17/2814150

社区之星第13期采访的嘉宾是上海锐学计算机科技有限公司CTO王豫翔,他作为20年的老兵,始终战斗在代码生产第一线并乐在其中。他在编程道路上遵循自己的“三少”“三多”原则:少讨论概念,少争论特征、少议论模型;多写代码、多做测试、多做应用。

王豫翔认为,想要突破自己的技术局限,还需多看多听他人的想法。

王豫翔,上海锐学计算机科技有限公司CTO,微软最有价值专家(Microsoft MVP)。曾在各种类型企业做编程技术工作,从代码工人到架构设计,从CS到BS,从静态语言到动态语言,从企业应用到移动互联网,作为20年的老兵,始终战斗在代码生产第一线,乐在其中。

“三少三多”原则

CSDN:请先介绍下自己学习和工作经历。

王豫翔:国内低调大学毕业,无留学经历、无海外关系、无著名导师、无背景家庭。在IT行业摸爬滚打近二十年,经历过很多公司,外资民企国企、大、小、微型企业、打工、失业、创业,可以说是经历丰富,惜无所成。目前是在上海锐学计算机科技有限公司担任CTO一职。

CSDN:你何时接触到计算机的?又是什么原因促使你走上编程的道路?你最先接触的编程语言是什么?

王豫翔:最早接触到可编程的计算机,具体年月已经很难考证回忆,但记得是一个卡西欧品牌的在远洋轮上进行工作的一体化计算机,键盘打印机屏幕都一体化,装在一个手提箱里,屏幕是只有几行的窄屏。语言是Basic。最早使用的正式的编程语言应该是dBaseII,也算是屌丝语言了,主要是用于数据库方面的录入统计。

CSDN:你曾在不同类型企业做过编程技术工作,也熟练掌握多种编程语言。请问你是如何在不同的编程语言中遨游的?有没有什么好的学习方法和我们大家分享下?

王豫翔:作为应用型的开发人员,在语言上没有过多的挑剔和水土不服。一般而言,大多数基于class模型编程语言C++、Java、C#总体都比较接近,多熟悉IDE和语言的特征就很容易能上手。而javaScript、HTML这类语言就需要换种思路和想法去学习。

不过,现在网上Demo多、高手多,要熟练使用这些编程语言的最佳办法就是:设法去做完整的可商用的项目。比如,你用C#写了一个企业管理项目,想学Java?那就用Java重构一次。想学HTML5+javaScript?就用HTML5重构一次即可。

学习方法我推崇的是“三少”和“三多”:少讨论概念,少争论特征、少议论模型;多写代码、多做测试、多做应用!

你何时获得Microsoft MVP的奖项?为此做过哪些工作和贡献?请给我们推荐一些质量较高的技术社区或论坛?

王豫翔:获奖是在2009年。我最多的贡献还是分享,我比较喜欢总结,完成了一个项目或一段时间的技术学习后,很乐意写一些自己的心得。写下心得最大的收获不是在别人的评价中得到陶醉,而是在写的过程中对技术体系和自己思路的再次整理。CSDN 已经是国内最优质的技术社区了。

你曾经投身到创业大潮中,请谈谈你的创业心得。

王豫翔:创业并不是非常成功,但我相对想创业的同学说点心里话。技术人员创业往往会设想只要自己的产品做的非常好,不愁没有客户。但这只是理想状态,你我皆凡人是不可能做出一个完美的产品。并且现在软件行业很多商业模式不清晰、不成熟,完全依赖产品的创业思路是非常危险的。技术人员必须了解到市场重要性,合作伙伴中必须有具有丰富市场经验的人员参与。

不要选择过于复杂的商业模式,简化商业模式,让你和客户的关系简单,服务质量可控,降低对销售的要求。

CTO成长之路

CSDN:想必成为CTO的道路并不平坦,在管理、心态、技术方面你是如何转变的?在这条道路上,你碰到过哪些捉襟见肘的难题?又是如何应对的?

王豫翔:想成为CTO并不难,只要你一直关注技术,一直锻炼自己就可以。高难度挑战是在成为CTO之后,你会发现原来并不是所有的程序员都真正的喜欢技术。从你自身的经历你会认为选择做程序员的人是喜欢编程、喜欢接受挑战、喜欢解决问题、对新编程技术充满了渴望和有无穷无尽的自学欲望和能力。实际上,你就会发现自己错了,要调整心态;你会发现你管理的是一群你从来不认识也不理解的“怪物”。

他们选择程序员的工作也许是因为大学的专业是软件工程,也许是碰巧第一份工作就是程序员,也许是因为他们不会做销售也考不上公务员。所以你要用平和的、8小时的、替老板打工的心态来管理你的程序员。其实在你成为项目经理的时候就会经历这个过程。而身为CTO,就应该用同样的心态来管理你的项目经理们。

CSDN:近年IT业快速变化,CTO的职位是否肩负了更多的职责?分别体现在哪些方面?

王豫翔:CTO要跟得上时代,要有能力能看到未来几年的发展。CEO和董事会都希望你能像先知那样预言未来的IT发展,你要清醒的认知到对于非天才来说,这几乎是一个不可能完成的任务。但是考虑到你的职责是你必须为服务的企业提供有价值的策略,那你必须严肃认真的确认公司所处的行业和你所在的部门的价值。

对于主要是提供信息化技术的企业,你要考虑目前采用技术的生命周期,采用新技术对公司目前人员的学习曲线度(前面说了,不是所有的程序员都喜欢学习)、新技术人员招聘成本、新技术的市场前景。而且最重要的是,你要问问自己,选择这个新技术,是你个人喜欢这个技术体系、个人好奇这个技术,还是这个技术能在未来市场中为公司带来相当大的竞争力?

对于其他应用技术来提高生产力的企业CTO来讲,恭喜你生在一个正确的时代!如果提前15年,你会发现你处于一个只花钱不赚钱的尴尬的角色,但现在你的策略会明确很多:提高数据采集面、加快从客户到管理层的响应速度、减少中间管理监督成本、降低基层人员的技能要求、提升管理人员的数据分析能力,这样大致可以完成你的工作,当然很重要的是和你的CFO多多沟通成本这个重要因素。

CSDN:你现在是如何分配自己的时间?是否还坚持在一线,这能给你带来什么乐趣?

王豫翔:不同规模的公司,相同的职位,但具体做的事情差别很大。我目前如果是算8小时工作的话,那时间主要安排在做计划、检查计划、监督计划、观察和发现优秀的技术人员、参加各种研讨会、和技术合作公司多多往来、和董事会喝茶讨论对未来技术的看法。总之,在程序员和项目经理眼中,CTO就是给他们压任务、画大饼,自己又无所事事拍董事会马屁并常常口中说些不知所以的新概念的人。去年是云,今年是移动互联网,下半年估计就是说大数据计算了。

具体举例,假设公司以前主要使用Windows Mobile技术为企业提供移动服务,作为CTO就需要考虑在适当的什么时候引入Android的技术。而当windows Phone出现后,公司的技术平台是否要转移,或者公司是否同时推出两个平台的产品和服务,原有的android技术团队如何处理,这些就是CTO要定调的事情。

8小时之内似乎不做什么编程的事情,但8小时之外,我会大量的阅读文档,保证自己每天有2小时以上编写代码,并且对所有准备从口中说出的技术,都至少做2-5个Demo,确保基本概念不会理解错误。

CSDN:你认为一名CTO或技术管理者,应具备什么样的能力?如何能快速开发、调配人员、解决技术争议?

王豫翔:公司的技术一般不会单一化,CTO也不代表公司技术最高的人。想要突破自己的技术局限,需要多看多听他人的想法,这是CTO最起码的职业素养。我想规模比较大的公司CTO一般不直接管理到人员和开发的具体事情。在规模较小的公司,CTO应该在日常积累和培养技术人员对市场上各种成熟的框架的训练,这些框架在开发周期中会提升小公司的生产力。

CSDN:贵公司使用的技术或架构是由什么而决策出的?你是否掌握大部分决策权?

王豫翔:公司采用的技术架构由公司的技术储备力量和项目的特性决定,但前者往往更重要,虽然这也许不是最好的选择。CTO对技术架构的决策权拥有很大的权重,如果没有什么特别原因都是CTO决定。

CSDN:技术人天天面对代码、项目,肯定枯燥,你在业余时间喜欢做些什么来放松自己?

王豫翔:旅游、摄影、做菜。考虑到摄影毁三代,所以我的摄影就是拿个单反在路上随手拍。做菜是我很喜欢的业余事务,在我眼里,做菜和写代码差不多,去菜场前大致有个方案,但是还要依据当天能够买到的原材料来即时地设计和修改方案。将杂乱无章的原材料通过有序的操作,转变为可口的饭菜,和写出优秀的代码一样具有成就感。

移动互联网为B2B带来新机遇

CSDN:从资料看,你关注移动互联网领域。你认为移动互联网现在处于一个什么阶段?谈谈你看法。

王豫翔:一直在企业应用解决方案公司工作,无幸加入互联网公司,曾在MVP OpenDay中发表过自己对互联网的看法,自认为对互联网有点认识,结果在一次去某纳斯达克上市的互联网公司面试时,一句话都没有说,就被鄙视没有互联网公司工作经验,你懂啥互联网?

所以我只能说,我现在关注移动互联网的企业应用领域。

对大部分企业而言,移动互联网的和企业业务的整合才刚刚开始,传统的企业信息化服务是为在办公室的管理人员服务,而移动互联网利用设备的普及和小型便携特性开始讲信息化服务对象转移到生产第一线的人员,如何利用手机等设备降低第一线人员的技能要求,减轻他们的工作复杂度,更直接方便的管理这些人员是移动互联网B2B的机遇。

CSDN:贵公司与微软在合作推广Windows Phone 8的B2B方案,你们是否会与微软进行更深层次的合作?你们的方案相比其他公司的优势和亮点是什么?

王豫翔:我们当然期待和微软公司有进一步的合作,并且希望能够尽早在微软的Windows 8新生态链中占有一席之地。和其他的公司相比,我们的B2B方案已经有了比较成熟的大型企业应用基础,是真正落地的企业级移动技术应用方案;而且,在我们的计划中,接下来还会把更多Windows Phone 8所特有的针对企业的优势和技术特点应用到更新的方案中,充分体现Windows Phone 8为企业用户服务的特色——而这些,也是我们对微软Windows 8系列产品打赢市场翻身仗的信心所在。

CSDN见证你的成长

CSDN:你在学习或工作中,是怎么接触到CSDN?CSDN对于你的工作或学习有什么影响,起到过什么帮助?有没有故事可以分享?

王豫翔:CSDN可以说是每个中国程序员都必去的技术社区,我很早就接触CSDN,从习惯浏览到伸手党,然后到帮助别人解决问题。CSDN为国内程序员的交流沟通提供了相当好的平台,如果你长久在CSDN混迹的话,可以清晰的看到自己的成长轨迹,这是相当开心的事情。

王豫翔 CSDN ID:shyleoking     CSDN博客地址:http://blog.csdn.net/shyleoking

专访王豫翔:编程道路上的“三少三多”相关推荐

  1. 第一天开通博客,记录自己在编程道路上的点点滴滴

    第一天开通博客,第一天写随笔:今年刚毕业,希望能用博客记录自己在编程道路上的点点滴滴,会记录自己在编程过程中遇到的问题及解决办法,也会记录自己的程序人生,分享出来和大家共勉. 希望自己能早日成为一名快 ...

  2. 编程道路上的困难—怎么克服?

    16年的这个时候,跟着自己的想法开发了一个技术网站,取名为'猿天地'.寓意是程序猿的天地,开发者的网站.网站域名也是程序猿天地的缩写cxytiandi.com. 上线之后就开始了写文章的旅程,以前没有 ...

  3. 冠军专访:是情侣,更是夺冠道路上的最佳伙伴

    团队档案  队名:红烧鱼七秒 队长:陈昱翔 电子科技大学研一在读 队员:戴瑞 安徽大学计算机学院本科毕业 背景:第一届中国农业人工智能创新创业大赛冠军 戴瑞:"肯定是没有过拟合,可能拟合都不 ...

  4. 专访王劲:我和百度不一样

    专访王劲:我和百度不一样 新浪首页01-0205:20 景驰创始人兼CEO王劲 新浪科技 辛苓 12月28日下午2点,广州黄埔区开发区,天气微有小雨.略不争气的天气并未给一场备受瞩目的发布会带来丝毫影 ...

  5. 【考生说】负重前行的道路上一直都需要一个自律的你

    21世纪的第二个十年裹挟着互联网技术迅猛发展的浪潮不期而至.大数据.云计算.区块链.5G.万物互联等全新科技深刻地影响着人们的生活,就连传统媒体行业也开始紧跟潮流.这也大大刺激着广大的学生开始期望着成 ...

  6. 励志!26岁单臂博士生:我想在科研的道路上发更多高质量论文

    "人生应该坚持不懈地努力."尽管3岁时因车祸失去右臂,只能左手握笔,袁鑫的字却力透纸背,正如他的人生,坚韧有力. >>>> 靠左手敲代码,武汉科技大学计算机 ...

  7. python定义一个人类_python基础课程 第9章 面向对象编程(上) 一场人类进化史

    日月灿烂,若出其中,星汉灿烂,若出其里. -- 曹操.观沧海 东汉末年 人类文明以降,总会有无数的人通过对世界的观察和思考去总结我们从哪里来,要往哪里去. 遥远的古代我们的祖先通过想象力把数字变成了符 ...

  8. 22. 并发编程(上)

    22. 并发编程(上) 网络编程,了解网络相关的知识点并且要知道几乎所有网络的通信本质上都是通过socket模块实现.例如:网站.网络爬虫. 并发编程,提升代码执行的效率.原来代码执行需要20分钟,学 ...

  9. Day22 并发编程(上)

    day22 并发编程(上) 网络编程,了解网络相关的知识点并且要知道几乎所有网络的通信本质上都是通过socket模块实现.例如:网站.网络爬虫. 并发编程,提升代码执行的效率.原来代码执行需要20分钟 ...

  10. 一行代码损失数亿美元!来看看编程史上的著名bug!

    作为程序员最大的敌人,bug是很多程序员挥之不去的噩梦,一行小小的代码bug,就可能造成致命的问题,造成整个系统的崩盘.今天,菜鸟哥就为大家分享,编程史上的最著名的5个bug. 1.欧洲航天局阿丽亚娜 ...

最新文章

  1. ListView的高级使用
  2. 初次使用CxImage类库、VC6配置UNICODE的方法
  3. Python中enumerate函数的解释和可视化
  4. Contiki系统介绍
  5. oracle parallel_index hint在非分区表的生效
  6. 刀片 显卡 排行_AMD发布RadeonRX6000系列游戏显卡 4599元起
  7. 简单理解训练集、测试集、验证集
  8. 运筹优化(十六)--排队论基础及其最优化求解
  9. 通过IP获取相应所在地的地址
  10. 20190913每日一句
  11. 清明上河图 HTML 代码
  12. Win11想运行老游戏怎么设置
  13. Prometheus最佳实践 Summary和Histogram
  14. 解决微信公众号分享出去的是链接
  15. 动图图解!既然IP层会分片,为什么TCP层也还要分段?
  16. 新人主播直播人气热度底,往往是忽略了这几点。
  17. 华为路由器怎么看是不是公网_华为路由器怎么判断有没有被蹭网
  18. 机器学习算法面经(阿里京东拼多多百度等)
  19. HTML 转义字符nbsp; ensp; emsp;thinsp;zwnj;zwj;空格标记
  20. 滑动报错 Unable to preventDefault inside passive event listener due to target being treated as passive.

热门文章

  1. linux没有cpufreq目录,linux cpufreq framework(1)_概述
  2. 电力系统潮流计算中的导纳矩阵计算,matlab源程序
  3. JS中的对象和方法简单剖析
  4. 开源护眼工具LightBulb2.3.3汉化说明
  5. 不多不少,大学里必做的五件事(从我的大一说起)
  6. CSS 权威指南 读书笔记(五)
  7. 关于数据分析师的4点思考
  8. paypal支付接口说明
  9. mysql数据库行列矩阵调换位置(行与列调换)
  10. 主流浏览器发展史及其内核初探