php

php

php相关问题
html+css

html+css

JavaScript

JavaScript

js,jquery,vue.js等
Linux

Linux

Linux操作系统
Mysql

Mysql

各种资源

各种资源

开发工具,手册等
就业指导

就业指导

UI设计

UI设计

教学视频分享

教学视频分享

各大城市PHP薪资情况

就业指导赵老师 发表了文章 • 0 个评论 • 174 次浏览 • 2017-12-13 17:42 • 来自相关话题

   近几日浏览招聘网站,大致了解了一下其他城市互联网企业对PHP工程师的要求及收入情况。我在智联招聘上抽取北京、上海、广州、天津4个城市,关于全职1-3年PHP程序员的招聘信息,给同学们作为参考。看看,技术成熟后的你打算在哪发展?
    大帝都肯定收入高,选择多,当然发展也是突飞猛进,缺点么,大家都知道的就是压力太大,想在北京有一席之地,需要付出很多辛苦了。
 














 
   相对于沉稳的北方,广州算是花花世界了,发展机会多当然诱惑也多。










 
   上海就更不用说了














 
   再来看看我们大天津,收入相比之下可能大家要唏嘘了。但是天津也有很多好的企业啦,选择一个好平台,一样有好的发展。
 















 
  查看全部
   近几日浏览招聘网站,大致了解了一下其他城市互联网企业对PHP工程师的要求及收入情况。我在智联招聘上抽取北京、上海、广州、天津4个城市,关于全职1-3年PHP程序员的招聘信息,给同学们作为参考。看看,技术成熟后的你打算在哪发展?
    大帝都肯定收入高,选择多,当然发展也是突飞猛进,缺点么,大家都知道的就是压力太大,想在北京有一席之地,需要付出很多辛苦了。
 
北京8-1w.jpg


北京8-1W1.jpg


北京5-8.jpg

 
   相对于沉稳的北方,广州算是花花世界了,发展机会多当然诱惑也多。

广州8-1.2w_.jpg


广州6-8.jpg

 
   上海就更不用说了

上海6-8.jpg

上海8-1w.jpg


上海8-1w2.jpg

 
   再来看看我们大天津,收入相比之下可能大家要唏嘘了。但是天津也有很多好的企业啦,选择一个好平台,一样有好的发展。
 

天津5-8.jpg


天津6-1W.jpg


天津6-8.jpg

 
 

MySQL 创始人:写代码比打游戏还爽,程序员应该多泡开源社区

各种资源赵老师 发表了文章 • 0 个评论 • 156 次浏览 • 2017-12-07 11:06 • 来自相关话题

 原文出处: OpenOcean   译文出处:36氪   
 
编者按:根据StackOverflow的最新调查,MySQL仍然是全世界最流行的数据库,受访的开发者中有44.3%的人在使用,超过了第二位的SQL Server 10多个百分点。可是你知道MySQL是怎么诞生的吗?openocean 的一篇有关MySQL开发者Michael “Monty” Widenius的传记为我们揭秘。
 





 
    大学计算机专业的数量总是会随着技术公司的兴衰而起伏,而现在,计算机科学正处在全盛时期。这意味着,不管怎样,计算机科学专业的毕业生绝大部分可能都会去敲2年的代码,再转到产品管理,然后过渡到企业、创业或者商学院,接着再转为既有公司的中层管理,32岁的时候结婚,有了2个孩子,一个儿子,一个女儿,一条狗,还有一栋2层的漂亮房子。对于大多数人来说,成为程序员就是一份朝九晚五的工作,一份有保障的6位数薪水来偿还高昂的学费,一种达到目的的手段,没人应该为此受到责备。但对于千千万万无论好坏的程序员来说,只有一个Monty Widenius。

    Monty是一位编程天才。19岁的时候,他从赫尔辛基理工大学辍学开始全职工作,因为大学已经没有什么东西可以教他了。在独自一人写完除了一个库以外的全部代码之后,33岁时,他发布了MySQL,后来后者成为了全世界最流行的开源数据库。55岁时,他藐视着对老年人的歧视,仍然是自己公司最好的程序员。

    Monty1962年出生于赫尔辛基,1978年他用暑假铺沥青挣来的钱买下自己的第一台个人计算机的。Monty迅速意识到自己相当擅长写代码——对于别人来说很复杂的事情他却觉得很简单,而且他对工作非常投入。Monty用一种在讲瑞典语的芬兰人中常见的浓厚口音说:“基本上这就像是在阅读一本真的非常非常好的书。或者像在玩视频游戏。你知道开始玩游戏然后嘣一声3小时的时间就过去了的那种感觉吗?写代码对我来说就是这种感觉。”

    当别人跑去聚会的时候,Monty却呆在家里编程。他把计算机从里到外都摸透了。他把BASIC的能力推到了极限。Monty说:“学校并不理解编程不是像语言或者历史这样的东西,它不是靠学就能学来的。所以学校是不够的。拔尖的黑客是万里挑一。他们奉献了所有能用的时间,10小时,16小时,每一天,年复一年周而复始。大多数人都不愿意做这样的事情。大多数人宁愿好好生活。”在Monty眼里,好的代码是写过一次就永远不需要再碰的那种。从性能角度来看它已经是最优化了,你可以不断增强,但永远都不需要重写。

    到1980年,17岁的Monty痴迷编程已经无法自拔,他需要把自己计算机的内存从8KB扩到16KB。由于芬兰没有商店卖他想要的东西,于是他弄了一条船去到瑞典Allan Larsson的计算机商店。通过Allan,Monty结识了David Axmark,三人沟通交流了多年,就各自项目互相帮忙,偶尔也会一起协作。1995年,他们一起成立了MySQL AB。Monty负责编程,David和Allan负责干完其他的事情。自1981年以来,Monty就一直以芬兰公司Tapio Laakso Oy程序员的身份在写MySQL前身的代码,他和Allan一起创办的数据仓库公司也要用到那个东西。然而,知道1995年,在Allan和David的游说之后Monty才决定在他写的东西之上增加一个SQL层。1996年10月,MySQL终于发布了,它得到了广泛的欢迎。MySQL快速、可靠并且易学,这主要是因为在多年的开发中Monty总是不断把正是客户的反馈整合进来。

    MySQL的初衷是存储和管理大数据。如果有人想要跟踪不同的数据点,他们互使用数据库,也就是有点像微软Excel那样的东西。然而,随着数据变得越来越大,查找Excel这样的数据库就会变得慢多了,也不再可靠。MySQL有能力存储大量数据,并且返回搜索结果极其迅速。“My”来自Monty女儿的名字,而“SQL”就是结构化查询语言(Structured Query Language)的意思,是一种跟数据库沟通的语言。

    对MySQL开源的决定出自1985年的另一次芬兰到瑞典的乘船旅行,这一次是在一场开源大会上。Monty说:“讨论没花多少分钟。我们都希望回馈给开源社区一点东西。哪怕有人想拷贝或者偷盗我们的代码,我们认为自己能挣的钱也不会比现在少。”开源项目使得开发者社区帮助把软件做得更好,但从商业角度来看不好的是货币化就要困难多了。为了避免这一点,Monty补充了一个条款,那就是如果任何企业用MySQL来赚钱的话,就需要付费授权。对此MySQL的代码里面并没有进行任何限制,但就靠这一荣誉制度MySQL实现了扩张并开始赚钱。Monty说:“我认为开源是开发软件的更好方式。但你仍然需要赚够钱来招聘员工,成立公司去跟闭源社区竞争。MySQL是第一款做到这一点的产品。”

    Monty在MySQL AB的职位是CTO,对于大多数成熟的公司来说,CTO其实已经很少再编程的了。然而,Monty从未停下来过,他的绝大部分时间都是在写代码。这种(很少管理的)做法会导致很多晚期阶段初创企业内爆,但哪怕公司人数已经达到550人,Monty在MySQL AB建立的独特文化也使得他可以避免天天开会的烦扰(事实上,Monty甚至都不接受议事日程邀请)。Monty说:“我总是招会自我驱动的人进来。所以我不需要告诉他们太多东西。而开源意味着你有开源社区,大家会给你提供代码,你可以看看那些代码的质量,看看他们是怎么跟社区互动的,跟你是怎么沟通的,他们会问什么问题,在这些情况下很容易就能看出一个人是好是坏。在一次面试里面是很难了解清楚编码者有多好的。”

    MySQL的成功是CTO Monty与CEO Mårten Mickos通力协作的结果。两人能力都很强且对公司非常重要,但方式不一样。Monty是技术专家,专注于员工生产出尽量完美的代码。Mårten是公司建设者,专注于交付东西并帮助团队发展。正是两人的联合愿景制造出了MySQL。但在一家没有免费洗衣、免费午餐、站立办公桌的公司里,是Monty的个人魅力吸引住了变成人才。Monty不是好交际的筹资人,讨好别人的人,博弈论大师,或者职业沟通者。他会写代码,而且写得很好。在Monty看来赢得开发者尊重是很简单的事情:“你干的是跟他们一样的事,而且干得更好。”

    Monty给程序员的建议是,参与到开源社区去,花些时间到个人项目里面(“这些年来我开发了成百上千个程序:MySQL是其中被用得最多的一个,但其他的都只有我自己用。”)。他警告说,改变环境和代码库将意味着哪怕是最好的程序员也要去了解一堆的东西。在Sun被Oracle收购之后,Monty成立了MariaDB,这是MySQL的一个社区版的分支,开发的团队成员很多都是MySQL团队里面的,使用的也是一样的官方语言:“蹩脚的英语”。MySQL的许多热心的开源信徒跟着Monty去到了MariaDB。MariaDB更加面向开发者,允许由外人打补丁这样的事情发生,在很多Linux发行版中它都是默认的数据库。

    Monty对开源和开发者的承诺是坚定的——OpenOcean原先是Monty用自己在MySQL的所得成立的,使命是投身于开发者驱动、有技术深度的产品。他仍然在赫尔辛基自己家中主持开发者午餐,很快OpenOcean就将推出一个Slack频道让开发者可以直接向Monty提问。在几十年的时间里,Monty对塑造开源社区无私的形象做出的贡献无可争议的。但这里面大部分的功劳都应该归到成千上万无名的程序员和黑客身上,是他们投入的时间和能力造就了开源的繁荣,也是这批人才能确保开源革命的继续。 查看全部
 原文出处: OpenOcean   译文出处:36氪   
 
编者按:根据StackOverflow的最新调查,MySQL仍然是全世界最流行的数据库,受访的开发者中有44.3%的人在使用,超过了第二位的SQL Server 10多个百分点。可是你知道MySQL是怎么诞生的吗?openocean 的一篇有关MySQL开发者Michael “Monty” Widenius的传记为我们揭秘。
 

du4b3zkobsgzg70e.jpg

 
    大学计算机专业的数量总是会随着技术公司的兴衰而起伏,而现在,计算机科学正处在全盛时期。这意味着,不管怎样,计算机科学专业的毕业生绝大部分可能都会去敲2年的代码,再转到产品管理,然后过渡到企业、创业或者商学院,接着再转为既有公司的中层管理,32岁的时候结婚,有了2个孩子,一个儿子,一个女儿,一条狗,还有一栋2层的漂亮房子。对于大多数人来说,成为程序员就是一份朝九晚五的工作,一份有保障的6位数薪水来偿还高昂的学费,一种达到目的的手段,没人应该为此受到责备。但对于千千万万无论好坏的程序员来说,只有一个Monty Widenius。

    Monty是一位编程天才。19岁的时候,他从赫尔辛基理工大学辍学开始全职工作,因为大学已经没有什么东西可以教他了。在独自一人写完除了一个库以外的全部代码之后,33岁时,他发布了MySQL,后来后者成为了全世界最流行的开源数据库。55岁时,他藐视着对老年人的歧视,仍然是自己公司最好的程序员。

    Monty1962年出生于赫尔辛基,1978年他用暑假铺沥青挣来的钱买下自己的第一台个人计算机的。Monty迅速意识到自己相当擅长写代码——对于别人来说很复杂的事情他却觉得很简单,而且他对工作非常投入。Monty用一种在讲瑞典语的芬兰人中常见的浓厚口音说:“基本上这就像是在阅读一本真的非常非常好的书。或者像在玩视频游戏。你知道开始玩游戏然后嘣一声3小时的时间就过去了的那种感觉吗?写代码对我来说就是这种感觉。”

    当别人跑去聚会的时候,Monty却呆在家里编程。他把计算机从里到外都摸透了。他把BASIC的能力推到了极限。Monty说:“学校并不理解编程不是像语言或者历史这样的东西,它不是靠学就能学来的。所以学校是不够的。拔尖的黑客是万里挑一。他们奉献了所有能用的时间,10小时,16小时,每一天,年复一年周而复始。大多数人都不愿意做这样的事情。大多数人宁愿好好生活。”在Monty眼里,好的代码是写过一次就永远不需要再碰的那种。从性能角度来看它已经是最优化了,你可以不断增强,但永远都不需要重写。

    到1980年,17岁的Monty痴迷编程已经无法自拔,他需要把自己计算机的内存从8KB扩到16KB。由于芬兰没有商店卖他想要的东西,于是他弄了一条船去到瑞典Allan Larsson的计算机商店。通过Allan,Monty结识了David Axmark,三人沟通交流了多年,就各自项目互相帮忙,偶尔也会一起协作。1995年,他们一起成立了MySQL AB。Monty负责编程,David和Allan负责干完其他的事情。自1981年以来,Monty就一直以芬兰公司Tapio Laakso Oy程序员的身份在写MySQL前身的代码,他和Allan一起创办的数据仓库公司也要用到那个东西。然而,知道1995年,在Allan和David的游说之后Monty才决定在他写的东西之上增加一个SQL层。1996年10月,MySQL终于发布了,它得到了广泛的欢迎。MySQL快速、可靠并且易学,这主要是因为在多年的开发中Monty总是不断把正是客户的反馈整合进来。

    MySQL的初衷是存储和管理大数据。如果有人想要跟踪不同的数据点,他们互使用数据库,也就是有点像微软Excel那样的东西。然而,随着数据变得越来越大,查找Excel这样的数据库就会变得慢多了,也不再可靠。MySQL有能力存储大量数据,并且返回搜索结果极其迅速。“My”来自Monty女儿的名字,而“SQL”就是结构化查询语言(Structured Query Language)的意思,是一种跟数据库沟通的语言。

    对MySQL开源的决定出自1985年的另一次芬兰到瑞典的乘船旅行,这一次是在一场开源大会上。Monty说:“讨论没花多少分钟。我们都希望回馈给开源社区一点东西。哪怕有人想拷贝或者偷盗我们的代码,我们认为自己能挣的钱也不会比现在少。”开源项目使得开发者社区帮助把软件做得更好,但从商业角度来看不好的是货币化就要困难多了。为了避免这一点,Monty补充了一个条款,那就是如果任何企业用MySQL来赚钱的话,就需要付费授权。对此MySQL的代码里面并没有进行任何限制,但就靠这一荣誉制度MySQL实现了扩张并开始赚钱。Monty说:“我认为开源是开发软件的更好方式。但你仍然需要赚够钱来招聘员工,成立公司去跟闭源社区竞争。MySQL是第一款做到这一点的产品。”

    Monty在MySQL AB的职位是CTO,对于大多数成熟的公司来说,CTO其实已经很少再编程的了。然而,Monty从未停下来过,他的绝大部分时间都是在写代码。这种(很少管理的)做法会导致很多晚期阶段初创企业内爆,但哪怕公司人数已经达到550人,Monty在MySQL AB建立的独特文化也使得他可以避免天天开会的烦扰(事实上,Monty甚至都不接受议事日程邀请)。Monty说:“我总是招会自我驱动的人进来。所以我不需要告诉他们太多东西。而开源意味着你有开源社区,大家会给你提供代码,你可以看看那些代码的质量,看看他们是怎么跟社区互动的,跟你是怎么沟通的,他们会问什么问题,在这些情况下很容易就能看出一个人是好是坏。在一次面试里面是很难了解清楚编码者有多好的。”

    MySQL的成功是CTO Monty与CEO Mårten Mickos通力协作的结果。两人能力都很强且对公司非常重要,但方式不一样。Monty是技术专家,专注于员工生产出尽量完美的代码。Mårten是公司建设者,专注于交付东西并帮助团队发展。正是两人的联合愿景制造出了MySQL。但在一家没有免费洗衣、免费午餐、站立办公桌的公司里,是Monty的个人魅力吸引住了变成人才。Monty不是好交际的筹资人,讨好别人的人,博弈论大师,或者职业沟通者。他会写代码,而且写得很好。在Monty看来赢得开发者尊重是很简单的事情:“你干的是跟他们一样的事,而且干得更好。”

    Monty给程序员的建议是,参与到开源社区去,花些时间到个人项目里面(“这些年来我开发了成百上千个程序:MySQL是其中被用得最多的一个,但其他的都只有我自己用。”)。他警告说,改变环境和代码库将意味着哪怕是最好的程序员也要去了解一堆的东西。在Sun被Oracle收购之后,Monty成立了MariaDB,这是MySQL的一个社区版的分支,开发的团队成员很多都是MySQL团队里面的,使用的也是一样的官方语言:“蹩脚的英语”。MySQL的许多热心的开源信徒跟着Monty去到了MariaDB。MariaDB更加面向开发者,允许由外人打补丁这样的事情发生,在很多Linux发行版中它都是默认的数据库。

    Monty对开源和开发者的承诺是坚定的——OpenOcean原先是Monty用自己在MySQL的所得成立的,使命是投身于开发者驱动、有技术深度的产品。他仍然在赫尔辛基自己家中主持开发者午餐,很快OpenOcean就将推出一个Slack频道让开发者可以直接向Monty提问。在几十年的时间里,Monty对塑造开源社区无私的形象做出的贡献无可争议的。但这里面大部分的功劳都应该归到成千上万无名的程序员和黑客身上,是他们投入的时间和能力造就了开源的繁荣,也是这批人才能确保开源革命的继续。

程序员:开始编程生涯的5个建议

就业指导赵老师 发表了文章 • 0 个评论 • 134 次浏览 • 2017-11-29 15:54 • 来自相关话题

如果想成为一名程序员,你需要通过一些有创造性的方式来获取经验并且并推销自己。本文作者分享了一些引导性的实用对策。

有位会员在我们的论坛上提交的一个问题,问到他是否可以开始他的程序员生涯了。他已经花了大量的时间自学C#。他现在在学习WPF。此外,他是从事互联网领域的工作,因此,他对IT业已有了解。根据他的情况,我想,他已经准备好了去挑战职业开发生涯。就他如何实现目标,我有如下建议。

1. 基础学习

当涉及基础学习时,很多自学编程的朋友都有一个错误的认识。促使某人自学编程的心态是一种“现在就做些事”的动力和渴望。有这种心态非常好!但不幸的是,在学习新东西时,一旦涉及基础,很多人都急于求成(还没学会走路就想跑)。这是我的个人经验。这也就是为什么自学的程序员有时候名声不大好的原因。

确信你学到了编程基础。这包括变量名、合适结构体、有时候需要查找库而不是应用程序等等。《如何学习用某某语言编程》,这类典型的书籍往往忽略了成为一名编程高手所具备的能力:解决问题的能力。在这里,我向大家推荐Abelson和Sussman的《计算机程序设计与解释》一书,此书对你快速提升能力大有帮助。
编者注:《计算机程序设计与解释》一书于1984年出版,成型于美国麻省理工学院(MIT)多年使用的一本教材,1996年修订为第2版。在过去的二十多年里,此书对于计算机科学的教育计划产生了深刻的影响。

2. 多参与项目

编程经验,多多益善。我推荐你加入一个开源项目,或者加入当地非盈利组织,帮他们编写软件。

你将有如下收获:

你将接触到如何将一个应用程序更加规范;
你将经历研发的整个流程,包括产品维护;
你将学到团队合作经验;
你将学到基础知识,比如版本控制和编写文档;
你将得到的成就感让你远离失落;
你将可以把这段项目经历写在简历上。

3. 接受减薪

如今经济的颓势已经不再是什么秘密。一直以来,我听到的说法是:虽然有很多空闲的职位,但是工资着实很低。很多雇主把目标锁定在可以接受更低工资或者重新评定工资等级的人身上。

大学应届毕业生(他们当中的很多人发现毕业后便失业)是入门级的竞争力。另外,绝大多数应届毕业生没有像已在职员工那样的经济负担,同时,和那些毕业多年的、有贷款、有家室和车贷的人相比,他们可以接受更低的薪水。

入门级的职位同样也是最容易外包出去。但不幸的是,开发行业的总体趋势是:在职业生涯中,头五年左右的日子正变得越发艰难。

4. 关注非程序研发职位

在研发团队中,有很多职位并不参与研发工作,可是它们也会让你向目标进一步迈进。比如像品质保证/检测、维护、技术支持等。必要的话,从中选取一个作为进入研发行业的敲门砖。接着,从容地寻找通向编程之门。举个例子,你现在是一名质检员,除了单纯地寻找错误并报告外,你还可以仔细检查代码,找出错误出现的位置并以用标签加以标记。研发人员会很感激你的帮助在证明自己能力之后,开发行业的大门也向你敞开了。

5. 给老板做兼职

以你现在的经验来讲,找到一份兼职工作不太靠谱,但如果是为你现在的老板多做些分外事的话,也许可以。和你的老板还有同事们沟通一下,看看有没有一些简单的程序可以替他们完成,来减轻他们的负担。接下来,便是编写程序。如果你身边有一个内部的开发团队,你可以为他们提供一些帮助。一些经理会让你在工作时间内来做,另一些则让你在自由支配时间内完成。当然,你也可以尝试从外部接些兼职项目,参考这篇《成功接项目需要注意的几个要点》。

不管是哪种方式,你都会得到开发经验,你在目前老板面前更有价值,甚至可能在目前的公司中为自己开启一个新的职业方向。在我的职业生涯中,我一次又一次地发现,当面临事业成长、事业发展和新方向时,“多做些分外的事”可以扭转局面。

编者注:WPF(Windows Presentation Foundation)是美国微软公司推出.NET Framework 3.0的组成部分之一,它是一套基于XML、.NET Framework、向量绘图(vector graphic)技术的展示层(presentation layer)开发框架,微软视其为下一代使用者介面(user interface)技术,将广泛被用于下一代Windows平台(Windows Vista)的界面开发。
作者:Justin James   编译:伯乐在线 敏捷翻译 – 宋睿
欢迎转载,但请注明原文来源和链接,否则视为侵权,谢谢合作! 查看全部
如果想成为一名程序员,你需要通过一些有创造性的方式来获取经验并且并推销自己。本文作者分享了一些引导性的实用对策。

有位会员在我们的论坛上提交的一个问题,问到他是否可以开始他的程序员生涯了。他已经花了大量的时间自学C#。他现在在学习WPF。此外,他是从事互联网领域的工作,因此,他对IT业已有了解。根据他的情况,我想,他已经准备好了去挑战职业开发生涯。就他如何实现目标,我有如下建议。

1. 基础学习

当涉及基础学习时,很多自学编程的朋友都有一个错误的认识。促使某人自学编程的心态是一种“现在就做些事”的动力和渴望。有这种心态非常好!但不幸的是,在学习新东西时,一旦涉及基础,很多人都急于求成(还没学会走路就想跑)。这是我的个人经验。这也就是为什么自学的程序员有时候名声不大好的原因。

确信你学到了编程基础。这包括变量名、合适结构体、有时候需要查找库而不是应用程序等等。《如何学习用某某语言编程》,这类典型的书籍往往忽略了成为一名编程高手所具备的能力:解决问题的能力。在这里,我向大家推荐Abelson和Sussman的《计算机程序设计与解释》一书,此书对你快速提升能力大有帮助。
编者注:《计算机程序设计与解释》一书于1984年出版,成型于美国麻省理工学院(MIT)多年使用的一本教材,1996年修订为第2版。在过去的二十多年里,此书对于计算机科学的教育计划产生了深刻的影响。

2. 多参与项目

编程经验,多多益善。我推荐你加入一个开源项目,或者加入当地非盈利组织,帮他们编写软件。

你将有如下收获:

你将接触到如何将一个应用程序更加规范;
你将经历研发的整个流程,包括产品维护;
你将学到团队合作经验;
你将学到基础知识,比如版本控制和编写文档;
你将得到的成就感让你远离失落;
你将可以把这段项目经历写在简历上。

3. 接受减薪

如今经济的颓势已经不再是什么秘密。一直以来,我听到的说法是:虽然有很多空闲的职位,但是工资着实很低。很多雇主把目标锁定在可以接受更低工资或者重新评定工资等级的人身上。

大学应届毕业生(他们当中的很多人发现毕业后便失业)是入门级的竞争力。另外,绝大多数应届毕业生没有像已在职员工那样的经济负担,同时,和那些毕业多年的、有贷款、有家室和车贷的人相比,他们可以接受更低的薪水。

入门级的职位同样也是最容易外包出去。但不幸的是,开发行业的总体趋势是:在职业生涯中,头五年左右的日子正变得越发艰难。

4. 关注非程序研发职位

在研发团队中,有很多职位并不参与研发工作,可是它们也会让你向目标进一步迈进。比如像品质保证/检测、维护、技术支持等。必要的话,从中选取一个作为进入研发行业的敲门砖。接着,从容地寻找通向编程之门。举个例子,你现在是一名质检员,除了单纯地寻找错误并报告外,你还可以仔细检查代码,找出错误出现的位置并以用标签加以标记。研发人员会很感激你的帮助在证明自己能力之后,开发行业的大门也向你敞开了。

5. 给老板做兼职

以你现在的经验来讲,找到一份兼职工作不太靠谱,但如果是为你现在的老板多做些分外事的话,也许可以。和你的老板还有同事们沟通一下,看看有没有一些简单的程序可以替他们完成,来减轻他们的负担。接下来,便是编写程序。如果你身边有一个内部的开发团队,你可以为他们提供一些帮助。一些经理会让你在工作时间内来做,另一些则让你在自由支配时间内完成。当然,你也可以尝试从外部接些兼职项目,参考这篇《成功接项目需要注意的几个要点》。

不管是哪种方式,你都会得到开发经验,你在目前老板面前更有价值,甚至可能在目前的公司中为自己开启一个新的职业方向。在我的职业生涯中,我一次又一次地发现,当面临事业成长、事业发展和新方向时,“多做些分外的事”可以扭转局面。

编者注:WPF(Windows Presentation Foundation)是美国微软公司推出.NET Framework 3.0的组成部分之一,它是一套基于XML、.NET Framework、向量绘图(vector graphic)技术的展示层(presentation layer)开发框架,微软视其为下一代使用者介面(user interface)技术,将广泛被用于下一代Windows平台(Windows Vista)的界面开发。
作者:Justin James   编译:伯乐在线 敏捷翻译 – 宋睿
欢迎转载,但请注明原文来源和链接,否则视为侵权,谢谢合作!

增加编程经验的3种途径

就业指导赵老师 发表了文章 • 0 个评论 • 151 次浏览 • 2017-11-29 15:45 • 来自相关话题

    从事就业工作以来,一直被一个问题所纠结困扰,许多入门级程序员相同陷入尴尬局面,企业们不喜欢雇佣没有经验的人,并且多数都不愿意提供培训。如果那么多的企业都不雇佣没有经验的人,那么这些人要从哪寻得他们所需的经验呢?不幸的是,这种局面是大多数IT人士所面临的主要问题。
    通过与大神程序员们长期的交流与反复的讨论,研究他们的职业生涯发展,总结出三条建议,以助大家积累增加编程经验。在你没找到合适的工作之前,可以先尝试以下方法哦!
 
1. 无偿工作(或几乎免费)

    企业界通常可能并不想雇佣经验少或没有经验的人,而非盈利界通常乐意(至少愿意)雇佣这一类人。我在高中的时候,去我们当地发育性残疾人家庭当志愿者,我是这样进入程序员这行的。我用Excel表格来为他们管理财务,帮他们把这些信息整理到了一个网站上,等等。工作很吸引人吗?完全不是那么回事儿。我是无偿地在每天下午和每个周末为他们工作。唯一的福利就是在那个地方我可以随时从一个装得满满的食品柜里拿东西出来吃。除了给社区做贡献之外,它还给了我足可以写上简历的工作经历,还有一份推荐信。一些非营利组织还会支付给你少量薪水。

    选择一个“废弃”的开源项目,再做二次开发。开源项目的工作经历绝对是简历上的亮点。

    如果你在当地找不到慈善机构或者非营利组织,也许你也可以为家人打工。说不定你的哪个亲戚朋友的企业就需要一个程序员。主动地无偿请战吧,我敢打赌,你会发现你/你朋友的叔叔或阿姨会为你的加入而感到欣慰。
 
2. 拼命工作

    如果你想成功,就必须赶快行动起来;我还没见过哪个开发人员的机会是轻易得来的。我猜是一些开发人员是足够幸运,亦或是他们的某个亲戚在他们刚毕业的时候就高薪聘用了他们。还有一些人找到了很好的实习机会,最终引领他们找到了其他的好工作。但对大多数目前在校或是刚走出校园的学生来说,唯一既能突显自己有能增长经验的方法就是工作、工作、再工作。就是这样!

    你的老板可能更想让你在服务台工作,而不太会让你花太多时间在写代码上,。那么,如果你想在服务台工作中获得软件开发经验,就必须自己抽时间。利用午休时间来写代码吗?没错!下班后继续工作吗?没错!在家也要做计划和研发吗?没错!

    我懂,我都懂……免费做事或者做那些预期之外的事,这听起来太没劲。不过,其实情况更能更糟。你是否曾经了解过医生们在住院实习期间所做的工作吗(先不提工资)?就把这个当作你自己的住院实习期吧。在今后的几个月或几年的时间中,你要额外刻苦工作,努力积累经验。尽管你的下一份工作可能并不轻松(也不会轻松),但薪水会更高。

    其实还有很多增长经验和薪水的方法;诀窍就在于从工作的“后门”中一点点争取。例如,我之前的工作是网络的管理与监督。当时我已经很长时间没接触程序设计院的工作了,并且我知道我想重操旧业。但是实际情况是我的大部分工作经验都是在Perl语言领域(当时也已经基本荒废了),并且我也好多年没编程了,不过我很清楚我在完全有资格任职之前要增加我这方面的经验。那么我都做了什么呢?我开始在空闲时帮助我们部门写程序;有时候,我甚至下班后再编代码,所有的一切都是为了积累经验和一份推荐。

    也许你找不到一个软件开发的工作,但是你也许可以找一个倾向那方面的工作,比方说,系统工程师或者服务台。从那起步,你便可以开始显示出你代码方面的实力从而选择或者是为自己完善一份出色的简历后辞职,还是继续晋升。实际上,服务台或是系统工程师(或者叫“计算机操作员”)的工作都是一个逐渐熟悉这个领域的最古老的方法之一。
 
3. 在家工作(当自由职业者)

    可能你找不到接受你无偿写代码的人。也许你根本就不能把编程融入到你的非编程性质的工作中(就像一个没能得到加班授权的钟点工)。这时你家的作用就突显出来了。如果其他的选择都行不通(或者为了补充目前的能力),就在家做些工作吧。找一个你真正喜欢的程序,用自己的风格写出来。或者把你日思夜想的那个程序写出来。另外,在家做自由职业者的话,可以参考伯乐在线的这篇文章《自由职业者:寻找客户的三大首选途径》,获取客户后,自然可以增加经验了。

    在家工作时,尽量试着模仿专业环境下的软件开发流程。先写出一个项目计划,创建单元测试,晚上再执行代码等等。我保证有了它,你将成为一个更优秀的程序员,并且你也可以向雇主展示你的作品。这其实是很重要的。

    我以前工作的时候,不能带上自己的作品并且展示给潜在雇主们看。因为这既违反我的雇佣合同,又违反我的雇主与客户之间的合同。但是当我在家用我自己的资源做我自己的工作的时候,我便可以自由地向潜在雇主们展示。

    例如,当我想要找一份网络开发偏多,网站管理偏少的工作时,我会把简历中的亮点和推荐人的推荐语等其他东西,聚集做成一份Flash演示稿。我甚至会把演示稿压缩制作成一张可以自动运行的精美CD,所以潜在雇主只需看CD。这张CD曾帮助我在互联网泡沫时找到过工作。这真的很管用。

    作为一个多次参与面试和被面试的过来人,我敢说,如果求职者有创业经历时,会给你留下一个非常深刻的印象。这能和其他工作有相同级别的薪水么?有时候能。我认为,在可靠的开源项目中做“实际工作”和正常带薪工作的效果是一样的;除非你参与的项目实在很糟糕,并且你又把它拿给面试官看了。所以,“无薪工作”是另外一个建议,这也通常能让你在和竞争同一岗位的众多入门级程序员中鹤立鸡群。
  查看全部
    从事就业工作以来,一直被一个问题所纠结困扰,许多入门级程序员相同陷入尴尬局面,企业们不喜欢雇佣没有经验的人,并且多数都不愿意提供培训。如果那么多的企业都不雇佣没有经验的人,那么这些人要从哪寻得他们所需的经验呢?不幸的是,这种局面是大多数IT人士所面临的主要问题。
    通过与大神程序员们长期的交流与反复的讨论,研究他们的职业生涯发展,总结出三条建议,以助大家积累增加编程经验。在你没找到合适的工作之前,可以先尝试以下方法哦!
 
1. 无偿工作(或几乎免费)

    企业界通常可能并不想雇佣经验少或没有经验的人,而非盈利界通常乐意(至少愿意)雇佣这一类人。我在高中的时候,去我们当地发育性残疾人家庭当志愿者,我是这样进入程序员这行的。我用Excel表格来为他们管理财务,帮他们把这些信息整理到了一个网站上,等等。工作很吸引人吗?完全不是那么回事儿。我是无偿地在每天下午和每个周末为他们工作。唯一的福利就是在那个地方我可以随时从一个装得满满的食品柜里拿东西出来吃。除了给社区做贡献之外,它还给了我足可以写上简历的工作经历,还有一份推荐信。一些非营利组织还会支付给你少量薪水。

    选择一个“废弃”的开源项目,再做二次开发。开源项目的工作经历绝对是简历上的亮点。

    如果你在当地找不到慈善机构或者非营利组织,也许你也可以为家人打工。说不定你的哪个亲戚朋友的企业就需要一个程序员。主动地无偿请战吧,我敢打赌,你会发现你/你朋友的叔叔或阿姨会为你的加入而感到欣慰。
 
2. 拼命工作

    如果你想成功,就必须赶快行动起来;我还没见过哪个开发人员的机会是轻易得来的。我猜是一些开发人员是足够幸运,亦或是他们的某个亲戚在他们刚毕业的时候就高薪聘用了他们。还有一些人找到了很好的实习机会,最终引领他们找到了其他的好工作。但对大多数目前在校或是刚走出校园的学生来说,唯一既能突显自己有能增长经验的方法就是工作、工作、再工作。就是这样!

    你的老板可能更想让你在服务台工作,而不太会让你花太多时间在写代码上,。那么,如果你想在服务台工作中获得软件开发经验,就必须自己抽时间。利用午休时间来写代码吗?没错!下班后继续工作吗?没错!在家也要做计划和研发吗?没错!

    我懂,我都懂……免费做事或者做那些预期之外的事,这听起来太没劲。不过,其实情况更能更糟。你是否曾经了解过医生们在住院实习期间所做的工作吗(先不提工资)?就把这个当作你自己的住院实习期吧。在今后的几个月或几年的时间中,你要额外刻苦工作,努力积累经验。尽管你的下一份工作可能并不轻松(也不会轻松),但薪水会更高。

    其实还有很多增长经验和薪水的方法;诀窍就在于从工作的“后门”中一点点争取。例如,我之前的工作是网络的管理与监督。当时我已经很长时间没接触程序设计院的工作了,并且我知道我想重操旧业。但是实际情况是我的大部分工作经验都是在Perl语言领域(当时也已经基本荒废了),并且我也好多年没编程了,不过我很清楚我在完全有资格任职之前要增加我这方面的经验。那么我都做了什么呢?我开始在空闲时帮助我们部门写程序;有时候,我甚至下班后再编代码,所有的一切都是为了积累经验和一份推荐。

    也许你找不到一个软件开发的工作,但是你也许可以找一个倾向那方面的工作,比方说,系统工程师或者服务台。从那起步,你便可以开始显示出你代码方面的实力从而选择或者是为自己完善一份出色的简历后辞职,还是继续晋升。实际上,服务台或是系统工程师(或者叫“计算机操作员”)的工作都是一个逐渐熟悉这个领域的最古老的方法之一。
 
3. 在家工作(当自由职业者)

    可能你找不到接受你无偿写代码的人。也许你根本就不能把编程融入到你的非编程性质的工作中(就像一个没能得到加班授权的钟点工)。这时你家的作用就突显出来了。如果其他的选择都行不通(或者为了补充目前的能力),就在家做些工作吧。找一个你真正喜欢的程序,用自己的风格写出来。或者把你日思夜想的那个程序写出来。另外,在家做自由职业者的话,可以参考伯乐在线的这篇文章《自由职业者:寻找客户的三大首选途径》,获取客户后,自然可以增加经验了。

    在家工作时,尽量试着模仿专业环境下的软件开发流程。先写出一个项目计划,创建单元测试,晚上再执行代码等等。我保证有了它,你将成为一个更优秀的程序员,并且你也可以向雇主展示你的作品。这其实是很重要的。

    我以前工作的时候,不能带上自己的作品并且展示给潜在雇主们看。因为这既违反我的雇佣合同,又违反我的雇主与客户之间的合同。但是当我在家用我自己的资源做我自己的工作的时候,我便可以自由地向潜在雇主们展示。

    例如,当我想要找一份网络开发偏多,网站管理偏少的工作时,我会把简历中的亮点和推荐人的推荐语等其他东西,聚集做成一份Flash演示稿。我甚至会把演示稿压缩制作成一张可以自动运行的精美CD,所以潜在雇主只需看CD。这张CD曾帮助我在互联网泡沫时找到过工作。这真的很管用。

    作为一个多次参与面试和被面试的过来人,我敢说,如果求职者有创业经历时,会给你留下一个非常深刻的印象。这能和其他工作有相同级别的薪水么?有时候能。我认为,在可靠的开源项目中做“实际工作”和正常带薪工作的效果是一样的;除非你参与的项目实在很糟糕,并且你又把它拿给面试官看了。所以,“无薪工作”是另外一个建议,这也通常能让你在和竞争同一岗位的众多入门级程序员中鹤立鸡群。
 

程序员鼓励师是真的吗?

各种资源赵老师 发表了文章 • 0 个评论 • 149 次浏览 • 2017-11-29 14:57 • 来自相关话题

    一个新兴职业正受到众多网络公司的青睐。“程序员鼓励师”这个职位也是中国特色,我们的程序员像宝宝一样需要保姆?
    今年6月,位于重庆北部新区光电园的一家网络公司引进3名程序员鼓励师,让旗下数量庞大的程序员直呼“春天来了”。
 
程序员鼓励师是什么鬼?
职位诱惑:逗狮子、哄码农、溜马畜
 
职位描述:
    鼓励程序员、攻城狮长期干活(例如春节前50天无休)的时候,鼓励其像狮子一样勇猛、狼性不减、高质量得完成版本开发。当然岗位要求也是很高的。这一家公司要求是长相甜美放佛章泽天,微笑常挂酷似高圆圆。
    在程序猿遇到BUG内心焦躁的时候,坐在旁边给他加油鼓励的妹子。要善于倾听,还要受得住工程师们死宅无法交流的性格。
    要担任程序员鼓励师,单靠“颜值”是远远不够的,还需要对互联网方面有认识,才能与程序员沟通顺畅。程序员的问题都是以技术环节的语言或逻辑为切入点,不懂这方面知识根本不知所云。
    如果真是这样,那程序员们内心肯定会疯狂得呼唤bug的,但是据我了解,真有搞不定bug的时候程序猿可是对身边的人男女不分的。
    















 
 
你信吗?反正我是不太相信。
  查看全部
    一个新兴职业正受到众多网络公司的青睐。“程序员鼓励师”这个职位也是中国特色,我们的程序员像宝宝一样需要保姆?
    今年6月,位于重庆北部新区光电园的一家网络公司引进3名程序员鼓励师,让旗下数量庞大的程序员直呼“春天来了”。
 
程序员鼓励师是什么鬼?
职位诱惑:逗狮子、哄码农、溜马畜
 
职位描述:
    鼓励程序员、攻城狮长期干活(例如春节前50天无休)的时候,鼓励其像狮子一样勇猛、狼性不减、高质量得完成版本开发。当然岗位要求也是很高的。这一家公司要求是长相甜美放佛章泽天,微笑常挂酷似高圆圆。
    在程序猿遇到BUG内心焦躁的时候,坐在旁边给他加油鼓励的妹子。要善于倾听,还要受得住工程师们死宅无法交流的性格。
    要担任程序员鼓励师,单靠“颜值”是远远不够的,还需要对互联网方面有认识,才能与程序员沟通顺畅。程序员的问题都是以技术环节的语言或逻辑为切入点,不懂这方面知识根本不知所云。
    如果真是这样,那程序员们内心肯定会疯狂得呼唤bug的,但是据我了解,真有搞不定bug的时候程序猿可是对身边的人男女不分的。
    

1440310868764211.jpeg


1440310888498500.jpeg


1440310907885318.jpeg

 
 
你信吗?反正我是不太相信。
 

AI(人工智能)可能会替代医疗行业的哪些工作?

各种资源赵老师 发表了文章 • 0 个评论 • 203 次浏览 • 2017-11-27 10:46 • 来自相关话题

    近期一则新闻:强生也要进军AI领域,正在加速前进。近日,强生医疗创新中心在美国德州医学中心登场。据强生内部人 士透露,这一创新中心主要负责研发巨头突破性的医疗设备,以降低外科手术的侵入程度。
    机器人诊断眼底病变图像优于人类医生的研究论文登上了顶级学术杂志,IBM的Watson机器人医生正式进入中国服务病患,众多的影像辅助诊断软件也正在兴起,无怪乎有人放出豪言:未来30年内医生将要失业!
    那么问题来了,人工智能会取代医生吗?目前还说不上完全取代,但是AI+人工智能已经在很多方面能够帮到医生以及患者。
 
一、智能医疗机器人
    智能医疗机器人主要指用于外科手术、功能康复及辅助护理等方面机器人。
    世界上最具代表性的外科手术机器人——达·芬奇手术系统,拥有一套三维成像系统和四支灵活性远远超过人类的机械手臂。在这套系统的帮助下,医生能够显著提高手术的精度和稳度,有效减少对患者身体的创伤。机器人的应用也使得远程手术成为现实。





 
 
二、智能药物研发
    智能药物研发的底层核心是知识图谱,其实质就是将来自实验室的理化数据、各种期刊文献中的研究成果、以及各种开放医疗资料等原本没有联系的数据连通,将离散的数据整合在一起,从而提供更有价值的决策支持。
    2015年,美国硅谷公司Atomwise基于现有的候选药物,应用人工智能算法,在不到一天时间内就成功地寻找出能控制埃博拉病毒的两种候选药物。
 
三、智能诊疗
    智能诊疗融合了知识图谱、自然语言处理、认知技术、自动推理、机器学习、信息检索等技术,通过假设任职和大规模的证据搜集、分析、评价,从而给出诊疗判断。
    在智能诊疗的应用中,IBM Watson是目前最成熟的案例。它可以在17秒内阅读3469本医学专著、248000 篇论文、69种治疗方案、61540次试验数据、106000份临床报告。2016年,Watson在日本曾诊断出一名60岁女性患有罕见的急性骨髄性白血病。






 
四、智能影像识别
    智能影像识别指运用人工智能技术识别及分析医疗影像,帮助医生定位病症分析病情,辅助做出诊断。
贝斯以色列女执事医学中心(BIDMC)与哈佛医学院合作研发的人工智能系统,对乳腺癌病理图片中癌细胞的识别准确率能达到 92%。
 
五、智能健康管理
     智能健康管理主要通过体检报告、电子病历、可穿戴设备、智能手机等方式收集用户身体状况的相关数据,提供分析报告及健康管理建议。
 
    健康管理平台Welltok,运用人工智能技术分析来源于可穿戴设备的 Map My Fitness和Fit Bit 等合作方的用户体征数据,提供个性化的生活习惯干预和预防性健康管理计划。
 
六、智能语音
    智能语音主要用于辅助医生书写病历,提升医生工作效率。
    调查显示中国50%住院医生每天花在写病历的时间约为4个小时,科大讯飞智能语音系统能在医生和护士、患者交流的过程中,由人工智能系统自动过滤掉无用信息,将所需的医疗数据自动转换成文字,并形成结构化电子病历。医生只需对电子病历内容进行简单修改确认,即可打印提供给患者,并完成电子档保存。
 
七、智能就医搜索
    智能就医搜索是指针对特定就医需求,提供高质量、专业化、智能化的信息检索服务。
    跨境医疗公司康安途,通过深度挖掘约2700万篇科研论文和各类资料,将各国的新药进展、医疗价格、发病率、医保覆盖等指标进行分析,建立全球医疗信息大数据库,搭建人工智能平台,为患者筛选性价比最优的医疗咨询方案。
 
八、智能医疗导诊
    智能医疗导诊主要利用智能问答系统(AIJust)帮助患者解答挂号、缴费、科室分布等常见问题,引导患者顺利就医,提升医院导诊咨询的压力。
     在国内,科大讯飞、百度、智慧思特都在积极探索智能医疗导诊的相关服务。在国外,医疗机构利用Medical Graph图谱分析对病人做出迅速、有针对性的判断,从而使病人分诊时间缩短 30%-40%。

 
  查看全部
    近期一则新闻:强生也要进军AI领域,正在加速前进。近日,强生医疗创新中心在美国德州医学中心登场。据强生内部人 士透露,这一创新中心主要负责研发巨头突破性的医疗设备,以降低外科手术的侵入程度。
    机器人诊断眼底病变图像优于人类医生的研究论文登上了顶级学术杂志,IBM的Watson机器人医生正式进入中国服务病患,众多的影像辅助诊断软件也正在兴起,无怪乎有人放出豪言:未来30年内医生将要失业!
    那么问题来了,人工智能会取代医生吗?目前还说不上完全取代,但是AI+人工智能已经在很多方面能够帮到医生以及患者。
 
一、智能医疗机器人
    智能医疗机器人主要指用于外科手术、功能康复及辅助护理等方面机器人。
    世界上最具代表性的外科手术机器人——达·芬奇手术系统,拥有一套三维成像系统和四支灵活性远远超过人类的机械手臂。在这套系统的帮助下,医生能够显著提高手术的精度和稳度,有效减少对患者身体的创伤。机器人的应用也使得远程手术成为现实。

v2-cd238c9f17cc49edd6a6b34f9744b6e6_r.jpg

 
 
二、智能药物研发
    智能药物研发的底层核心是知识图谱,其实质就是将来自实验室的理化数据、各种期刊文献中的研究成果、以及各种开放医疗资料等原本没有联系的数据连通,将离散的数据整合在一起,从而提供更有价值的决策支持。
    2015年,美国硅谷公司Atomwise基于现有的候选药物,应用人工智能算法,在不到一天时间内就成功地寻找出能控制埃博拉病毒的两种候选药物。
 
三、智能诊疗
    智能诊疗融合了知识图谱、自然语言处理、认知技术、自动推理、机器学习、信息检索等技术,通过假设任职和大规模的证据搜集、分析、评价,从而给出诊疗判断。
    在智能诊疗的应用中,IBM Watson是目前最成熟的案例。它可以在17秒内阅读3469本医学专著、248000 篇论文、69种治疗方案、61540次试验数据、106000份临床报告。2016年,Watson在日本曾诊断出一名60岁女性患有罕见的急性骨髄性白血病。

v2-9f9de448e1fc4003d733c153f270ce95_r.jpg


 
四、智能影像识别
    智能影像识别指运用人工智能技术识别及分析医疗影像,帮助医生定位病症分析病情,辅助做出诊断。
贝斯以色列女执事医学中心(BIDMC)与哈佛医学院合作研发的人工智能系统,对乳腺癌病理图片中癌细胞的识别准确率能达到 92%。
 
五、智能健康管理
     智能健康管理主要通过体检报告、电子病历、可穿戴设备、智能手机等方式收集用户身体状况的相关数据,提供分析报告及健康管理建议。
 
    健康管理平台Welltok,运用人工智能技术分析来源于可穿戴设备的 Map My Fitness和Fit Bit 等合作方的用户体征数据,提供个性化的生活习惯干预和预防性健康管理计划。
 
六、智能语音
    智能语音主要用于辅助医生书写病历,提升医生工作效率。
    调查显示中国50%住院医生每天花在写病历的时间约为4个小时,科大讯飞智能语音系统能在医生和护士、患者交流的过程中,由人工智能系统自动过滤掉无用信息,将所需的医疗数据自动转换成文字,并形成结构化电子病历。医生只需对电子病历内容进行简单修改确认,即可打印提供给患者,并完成电子档保存。
 
七、智能就医搜索
    智能就医搜索是指针对特定就医需求,提供高质量、专业化、智能化的信息检索服务。
    跨境医疗公司康安途,通过深度挖掘约2700万篇科研论文和各类资料,将各国的新药进展、医疗价格、发病率、医保覆盖等指标进行分析,建立全球医疗信息大数据库,搭建人工智能平台,为患者筛选性价比最优的医疗咨询方案。
 
八、智能医疗导诊
    智能医疗导诊主要利用智能问答系统(AIJust)帮助患者解答挂号、缴费、科室分布等常见问题,引导患者顺利就医,提升医院导诊咨询的压力。
     在国内,科大讯飞、百度、智慧思特都在积极探索智能医疗导诊的相关服务。在国外,医疗机构利用Medical Graph图谱分析对病人做出迅速、有针对性的判断,从而使病人分诊时间缩短 30%-40%。

 
 

优秀程序员需要具备几种能力

各种资源赵老师 发表了文章 • 0 个评论 • 158 次浏览 • 2017-11-22 15:17 • 来自相关话题

1.思路
 
编程思路,是系统的计划和设想,是程序员写程序时的条理和线索。优秀的思路背后一定是不断的积累。在熟知编程基础的前提下,优秀的程序员会积累尽可能多的经验,这份经验让他们更快的得出更好的思路。
 
2.解决问题的能力
 
解决问题的能力不是与生俱来的,还是要靠后天的经验积累。在写代码的时候会遇到各种各样的bug,优秀的程序员第一反应总是自己尝试去解决这个问题,首先确定这个问题,根据运行时产生的崩溃信息或者编译时出现的编译错误,找到错误的根源。关于各类问题的解决,解决办法总是能找到,只要愿意主动寻求解决方案。





 
3.代码优化能力
 
一般的程序员写一个方法可能有几百行代码,写一个类就想把所有功能实现,不考虑程序设计原则,也不考虑执行效率,更不去想如何让我的程序质量更好。“代码可运行”对一个优秀的程序员来说绝不是结束,而是开始。比如对于优化C语言来说,要选择合适的算法和数据结构、减少运算的强度等。优秀的程序员一定熟知各种算法和数据结构,会灵活运用,致力于写出更简单、效率更高的程序。
 
4.全局掌握
 
优秀的程序员有意识地知道自应该再局限于简单的技术问题,他们追求从全局上把握和设计一个较大的系统体系结构,从内核到外层界面,使用已掌握的技能解决问题,并且能够考虑到系统的扩展性、安全性、稳定性等问题。
 
5.学习先进的技术
 
一般的程序员到达一定境界后很难有突破。现状会让他们不自觉的产生编程无非如此的错误观念。优秀的程序员看到世界最新技术就能马上主动去了解、去学习并且掌握。计算机技术每经过几年就会有一个质的飞跃。一旦脱离技术潮流,就很难赶上。优秀的程序员跟上每一步技术,在这个领域看得更远,思维越开阔。
 
6.耐心
 
假如使一个程序实现某种功能有很多种方法,但在这些方法中,只有一两种方法是最好的,优秀的程序员会花时间实践,实践后总结出那一两种最好的方法。所以,要写一个好程序是很需要耐心的,要成为一个优秀的程序员也是。 查看全部
1.思路
 
编程思路,是系统的计划和设想,是程序员写程序时的条理和线索。优秀的思路背后一定是不断的积累。在熟知编程基础的前提下,优秀的程序员会积累尽可能多的经验,这份经验让他们更快的得出更好的思路。
 
2.解决问题的能力
 
解决问题的能力不是与生俱来的,还是要靠后天的经验积累。在写代码的时候会遇到各种各样的bug,优秀的程序员第一反应总是自己尝试去解决这个问题,首先确定这个问题,根据运行时产生的崩溃信息或者编译时出现的编译错误,找到错误的根源。关于各类问题的解决,解决办法总是能找到,只要愿意主动寻求解决方案。

timg.jpg

 
3.代码优化能力
 
一般的程序员写一个方法可能有几百行代码,写一个类就想把所有功能实现,不考虑程序设计原则,也不考虑执行效率,更不去想如何让我的程序质量更好。“代码可运行”对一个优秀的程序员来说绝不是结束,而是开始。比如对于优化C语言来说,要选择合适的算法和数据结构、减少运算的强度等。优秀的程序员一定熟知各种算法和数据结构,会灵活运用,致力于写出更简单、效率更高的程序。
 
4.全局掌握
 
优秀的程序员有意识地知道自应该再局限于简单的技术问题,他们追求从全局上把握和设计一个较大的系统体系结构,从内核到外层界面,使用已掌握的技能解决问题,并且能够考虑到系统的扩展性、安全性、稳定性等问题。
 
5.学习先进的技术
 
一般的程序员到达一定境界后很难有突破。现状会让他们不自觉的产生编程无非如此的错误观念。优秀的程序员看到世界最新技术就能马上主动去了解、去学习并且掌握。计算机技术每经过几年就会有一个质的飞跃。一旦脱离技术潮流,就很难赶上。优秀的程序员跟上每一步技术,在这个领域看得更远,思维越开阔。
 
6.耐心
 
假如使一个程序实现某种功能有很多种方法,但在这些方法中,只有一两种方法是最好的,优秀的程序员会花时间实践,实践后总结出那一两种最好的方法。所以,要写一个好程序是很需要耐心的,要成为一个优秀的程序员也是。

程序员的几种类型

各种资源赵老师 发表了文章 • 0 个评论 • 177 次浏览 • 2017-11-22 14:52 • 来自相关话题

纯以编码能力来看,可以分为五类,依次是:

1. 拷贝型
拷贝型选手就是传说中的“代码拷贝员”了,他们对实现功能几乎没有思路,所作的事情就是从网上或是之前其他团队成员写的代码中拷贝出片段,然后放到项目中,如果运行项目出现了期望结果,则表示任务完成。
这类人只会改代码,却不会写代码。他们大多对编程毫无兴趣,只是希望以此糊口;又或是加入了平庸的团队,无法感受到技术的魅力。

2. 新手型
当产品有功能需求时,由于经验有限,程序员并不完全知道要如何实现这个功能,需要通过学习、寻找资料等方式来解决问题。
这种情况下的编码过程,程序员的主要目标是“完成功能”,那么很难有多余的心思去考虑边界条件、性能、可读性、可扩展性、编码规范等问题,因此代码bug可能较多,稳定性不高。常常会发生开发花费1个月,改bug却要改上好几个月的事情。

3. 学习型
这类程序员对所在领域的语言已经比较了解,对于一般功能可以有较为清晰的实现思路,给出需求时可以通过自己的思路来实现,并且会一定程度上考虑边界条件和性能问题。但仅此而已,他们对可读性和可扩展性考虑很少,也没有项目级别的考虑,主要是希望通过实现代码来练手或是学习。
这类程序员最大的表现在于喜欢“创造代码”,即使有现成的实现,他们也希望自己来实现一套,以达到“学习”的目的。他们不喜欢复用别人的代码,看见项目中别人实现了相类似的功能,他们会以“需求不同”的借口来自己重新实现一套。这类人一般来说对技术有着较为浓厚的兴趣,希望能够通过项目来进行学习。
从项目的角度来说,这种做法最大的麻烦在于开发周期可能较长(相比直接使用现成的实现),并且会使得项目代码膨胀,影响未来的维护。但这类程序员由于有兴趣,如果好好培养或许会成为明天的牛人。

4. 实现型
这类程序员一般有较为丰富的经验,由于写得太多,因此不再追求“创造代码”来进行学习,同时对所在领域可能涉及的很多第三方框架或是工具都比较熟悉,当接受到产品需求时,对功能实现方案已经了然于胸,因此他们可以快速的实现需求,并且对边界、性能都有一定程度的考虑。因为能够快速实现需求功能,经常会被团队评价为“牛人”。但他们一般仅仅停留在“完成功能”级别上,对代码的可读性、可扩展性、编码规范等考虑较少,对项目总体把握也较少(例如控制项目膨胀、方便部署等架构级别的东西)。
这类程序员最大的表现在于喜欢“开发项目”,却不喜欢“维护项目”。他们产出的代码最大的问题就是维护较为困难,可能过上几个月回头看自己的代码都会晕头转向。因此即使是自己写的代码,仍然不愿意维护,一般会苦了后来人。
因为接口设计的缺乏,当需求变更时,发现代码要改的东西太多,然后抱怨需求变化,却很少认为是自己的代码问题。这样的项目如果经过长时间的变更维护,最终会变得难以维护(一般表现在需求变更响应时间越来越长)甚至无法维护,最终要么是半死不活,要么是被推倒重来。

5. 架构型
这类程序员比实现型更进一步,他们经验丰富,对相关框架和工具等都很熟悉,“完成功能”“稳定性”“性能”这些已经不再是他们的追求,更优美的代码、更合理的架构才是目标。
这类程序员接口设计大多建立在对需求变更的预测上,即灵活又不过度设计——可扩展性好;代码细节也尽量多的考虑边界情况、性能——稳定高效;代码命名、注释及逻辑分离都恰到好处,语义丰满——可读性较高;同时在开发过程中他们会不断重构,对代码做减法——保证项目可持续发展;等等。
但由于考虑问题较多,单从“实现功能”阶段来看,完成速度不一定会比“实现型”要快。只是到了项目中后期优势才会慢慢体现出来。
 
你属于哪种类型的程序员呢?
 
链接:https://www.zhihu.com/question ... 73375
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 查看全部
纯以编码能力来看,可以分为五类,依次是:

1. 拷贝型
拷贝型选手就是传说中的“代码拷贝员”了,他们对实现功能几乎没有思路,所作的事情就是从网上或是之前其他团队成员写的代码中拷贝出片段,然后放到项目中,如果运行项目出现了期望结果,则表示任务完成。
这类人只会改代码,却不会写代码。他们大多对编程毫无兴趣,只是希望以此糊口;又或是加入了平庸的团队,无法感受到技术的魅力。

2. 新手型
当产品有功能需求时,由于经验有限,程序员并不完全知道要如何实现这个功能,需要通过学习、寻找资料等方式来解决问题。
这种情况下的编码过程,程序员的主要目标是“完成功能”,那么很难有多余的心思去考虑边界条件、性能、可读性、可扩展性、编码规范等问题,因此代码bug可能较多,稳定性不高。常常会发生开发花费1个月,改bug却要改上好几个月的事情。

3. 学习型
这类程序员对所在领域的语言已经比较了解,对于一般功能可以有较为清晰的实现思路,给出需求时可以通过自己的思路来实现,并且会一定程度上考虑边界条件和性能问题。但仅此而已,他们对可读性和可扩展性考虑很少,也没有项目级别的考虑,主要是希望通过实现代码来练手或是学习。
这类程序员最大的表现在于喜欢“创造代码”,即使有现成的实现,他们也希望自己来实现一套,以达到“学习”的目的。他们不喜欢复用别人的代码,看见项目中别人实现了相类似的功能,他们会以“需求不同”的借口来自己重新实现一套。这类人一般来说对技术有着较为浓厚的兴趣,希望能够通过项目来进行学习。
从项目的角度来说,这种做法最大的麻烦在于开发周期可能较长(相比直接使用现成的实现),并且会使得项目代码膨胀,影响未来的维护。但这类程序员由于有兴趣,如果好好培养或许会成为明天的牛人。

4. 实现型
这类程序员一般有较为丰富的经验,由于写得太多,因此不再追求“创造代码”来进行学习,同时对所在领域可能涉及的很多第三方框架或是工具都比较熟悉,当接受到产品需求时,对功能实现方案已经了然于胸,因此他们可以快速的实现需求,并且对边界、性能都有一定程度的考虑。因为能够快速实现需求功能,经常会被团队评价为“牛人”。但他们一般仅仅停留在“完成功能”级别上,对代码的可读性、可扩展性、编码规范等考虑较少,对项目总体把握也较少(例如控制项目膨胀、方便部署等架构级别的东西)。
这类程序员最大的表现在于喜欢“开发项目”,却不喜欢“维护项目”。他们产出的代码最大的问题就是维护较为困难,可能过上几个月回头看自己的代码都会晕头转向。因此即使是自己写的代码,仍然不愿意维护,一般会苦了后来人。
因为接口设计的缺乏,当需求变更时,发现代码要改的东西太多,然后抱怨需求变化,却很少认为是自己的代码问题。这样的项目如果经过长时间的变更维护,最终会变得难以维护(一般表现在需求变更响应时间越来越长)甚至无法维护,最终要么是半死不活,要么是被推倒重来。

5. 架构型
这类程序员比实现型更进一步,他们经验丰富,对相关框架和工具等都很熟悉,“完成功能”“稳定性”“性能”这些已经不再是他们的追求,更优美的代码、更合理的架构才是目标。
这类程序员接口设计大多建立在对需求变更的预测上,即灵活又不过度设计——可扩展性好;代码细节也尽量多的考虑边界情况、性能——稳定高效;代码命名、注释及逻辑分离都恰到好处,语义丰满——可读性较高;同时在开发过程中他们会不断重构,对代码做减法——保证项目可持续发展;等等。
但由于考虑问题较多,单从“实现功能”阶段来看,完成速度不一定会比“实现型”要快。只是到了项目中后期优势才会慢慢体现出来。
 
你属于哪种类型的程序员呢?
 
链接:https://www.zhihu.com/question ... 73375
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

养成良好的工作习惯

就业指导赵老师 发表了文章 • 0 个评论 • 177 次浏览 • 2017-11-07 16:36 • 来自相关话题

1、别人质疑你时,不要习惯于给自己找理由,弱者才会这样去做。
2、养成总结的习惯,每隔一段时间,写一点什么。如果不知道写什么,把自己这一段时间的工作罗列下来,然后把工作展开,写下来每个工作中你对自己满意的部分和不满意的部分,坚持一段时间,你会对自己越来越满意。
3、把自己的工作、学习心得分享出来, 是很好的习惯。因为分享的过程既是二次思考,又能听到别人的意见。
4、很多时候,你的主管要的是成果,而不会去关心过程有多曲折,因此汇报工作时不要强调加了多长时间班等和过程相关的问题(不要担心你的主管不知道),而要明确你完成了什么事。
5、要处理的事情有很多,忙不过来,怎么办?我的建议是把这些事按紧急并且重要、紧急但不重要、重要但不紧急、既不重要又不紧急的方式进行分类,你会发现世界是如此的美好,而我也没那么烦躁。
6、如果承诺在指定时间完成工作,一定要全力以赴去做。如果确实事情进展过程不顺利,不能按期完成,一定要提前告知对方(该事项owner或者主管),否则对方无法及时调整,从而因为你一个环节导致整个事情推迟。
7、学着这样提问:“我现在遇到了一个问题,…………,对于这个问题,我有两个解决方案,第一个方案有以下优点……,同时有以下缺点……,第二个方案……,请您帮我想想”。而不是:“我有个……问题,你看怎么办?”。 查看全部
1、别人质疑你时,不要习惯于给自己找理由,弱者才会这样去做。
2、养成总结的习惯,每隔一段时间,写一点什么。如果不知道写什么,把自己这一段时间的工作罗列下来,然后把工作展开,写下来每个工作中你对自己满意的部分和不满意的部分,坚持一段时间,你会对自己越来越满意。
3、把自己的工作、学习心得分享出来, 是很好的习惯。因为分享的过程既是二次思考,又能听到别人的意见。
4、很多时候,你的主管要的是成果,而不会去关心过程有多曲折,因此汇报工作时不要强调加了多长时间班等和过程相关的问题(不要担心你的主管不知道),而要明确你完成了什么事。
5、要处理的事情有很多,忙不过来,怎么办?我的建议是把这些事按紧急并且重要紧急但不重要重要但不紧急既不重要又不紧急的方式进行分类,你会发现世界是如此的美好,而我也没那么烦躁。
6、如果承诺在指定时间完成工作,一定要全力以赴去做。如果确实事情进展过程不顺利,不能按期完成,一定要提前告知对方(该事项owner或者主管),否则对方无法及时调整,从而因为你一个环节导致整个事情推迟。
7、学着这样提问:“我现在遇到了一个问题,…………,对于这个问题,我有两个解决方案,第一个方案有以下优点……,同时有以下缺点……,第二个方案……,请您帮我想想”。而不是:“我有个……问题,你看怎么办?”。

白班程序员VS夜猫子程序员

各种资源赵老师 发表了文章 • 0 个评论 • 170 次浏览 • 2017-11-07 15:15 • 来自相关话题

我一直深信,在这个世界上有两种程序员,我们称之为:

1. Day Programmers 白班程序员

2. Night Programmers 夜猫子程序员

白班程序员在这个行业中最受关注,你会发现在公司组织架构上占据一定的数量。

白班程序员具备以下特点:

通常大部分是被领导,很少领导别人
无法应对突发情况
无法设想出一个解决方案
不会在家使用开发工具
通常不会参与开发社区工作
把编程仅看成“一份工作”来对待

相反的,如果你是一名夜猫子程序员,你可能很难理解为什么白班程序员会进入到这个行业,原因是他们做的事情有区别于你。

夜猫子程序员具备以下特点:

通常都领导别人
面对难以理解的事情,一定会刨根问底
能根据第六感设计出一个解决方案
会在家使用alpha/ctp/beta等各种版本工具
参与用户群组和邮件列表项目
把编程视为呼吸空气作为生活中至关重要的一部分

如果你是一名白班程序员,看到夜猫子程序员你会认为他们的生活没有意义。当他们为开发框架做出一些很酷、很炫的技术而感到兴奋时,你甚至会嘲笑他们。

有的程序员人喜欢白天工作,有的则喜欢夜间工作,此前,CSDN还发表过一篇文章《为什么程序员都是夜猫子 》,这事归纳起来有3点即:工人的时间表,疲倦的大脑和明亮的电脑屏幕。

有人便提出了疑问:为什么我们要把智力上最复杂的事情放到我们的大脑想去睡觉的时间段里去完成,而在我们的大脑最敏锐最清醒的时候去做相对简单的事呢?
 
那么,你怎么看呢? 查看全部
我一直深信,在这个世界上有两种程序员,我们称之为:

1. Day Programmers 白班程序员

2. Night Programmers 夜猫子程序员

白班程序员在这个行业中最受关注,你会发现在公司组织架构上占据一定的数量。

白班程序员具备以下特点:

通常大部分是被领导,很少领导别人
无法应对突发情况
无法设想出一个解决方案
不会在家使用开发工具
通常不会参与开发社区工作
把编程仅看成“一份工作”来对待

相反的,如果你是一名夜猫子程序员,你可能很难理解为什么白班程序员会进入到这个行业,原因是他们做的事情有区别于你。

夜猫子程序员具备以下特点:

通常都领导别人
面对难以理解的事情,一定会刨根问底
能根据第六感设计出一个解决方案
会在家使用alpha/ctp/beta等各种版本工具
参与用户群组和邮件列表项目
把编程视为呼吸空气作为生活中至关重要的一部分

如果你是一名白班程序员,看到夜猫子程序员你会认为他们的生活没有意义。当他们为开发框架做出一些很酷、很炫的技术而感到兴奋时,你甚至会嘲笑他们。

有的程序员人喜欢白天工作,有的则喜欢夜间工作,此前,CSDN还发表过一篇文章《为什么程序员都是夜猫子 》,这事归纳起来有3点即:工人的时间表疲倦的大脑明亮的电脑屏幕

有人便提出了疑问:为什么我们要把智力上最复杂的事情放到我们的大脑想去睡觉的时间段里去完成,而在我们的大脑最敏锐最清醒的时候去做相对简单的事呢?
 
那么,你怎么看呢?