年薪50万美金的工程师到底牛在哪里?

声明:我之前也是 Google 的员工,但是我的回答不代表 Google 的观点。

首先,这问题问得有点奇怪,有点误导人,好像只要工程师做了哪几点,或是获得哪些技能以后,就可以挂到年薪 50 万的保证。其实 Business Insider 那边说得很清楚了,50 万美金其实是薪水跟股票的总和。

一类跟二类劳工

要了解高昂报酬背后的条件,让我先来打个比方。

假设你是村子里面非常重要的,负责水源供给的劳工好了。这里有两种劳工类型:一类劳工,与二类劳工。

一类劳工会拎起一到两个水桶,冲到水源旁边,装满它们,把他们两个挑回来,大概够 20 个人喝吧,如此一来有水喝的村民就皆大欢喜了。这个劳工挑水的过程可能会喝掉一些水,然后回到村中,他可能可以分一些水回家作他的报酬。

二类劳工不太理所谓“公平分水”的概念,他会拿起一把铲子,带上一止水杯,然后忽然间就消失了。他跑到水源处,挖起一条可以通到村庄的小溪,希望可以把水源引过来。每当他拖着疲惫的身躯,拎着空杯子回到村庄的时候,总会引起一阵失望,但是不知道为什么那村中的长老相信他,相信他在做的事情(还丢根骨头给他啃,让[......]

阅读全文>>

CSS3实现Google侧边自定义滚动条

这次要分享一款用CSS3实现的自定义滚动条,这个CSS3滚动条是仿Google分析的侧边栏的滚动条的,Google的风格一向以简单著称,所以这款自定义滚动条也非常简单大气。至于兼容性,当然是要支持CSS3的现代浏览器才行。

css3-google-sidebar

在线演示源码下载

纯CSS3实现清新下拉菜单 菜单淡入淡出动画

今天我们要来分享一款比较简单清新的CSS3下拉菜单,这款下拉菜单是垂直方向的,点击主菜单项可以展开和折叠子菜单,在展开折叠的过程中伴随着淡入淡出的动画效果。另外这款CSS3垂直下拉菜单的色彩可以自己配置,是非常实用的CSS3菜单应用。

css3-drop-down-menu

在线演示源码下载

HTML5 Canvas绘制灰太狼 超级可爱

HTML5 Canvas相当于一个画板,你可以在Canvas绘制任意的东西,今天要分享一款利用HTML5 Canvas绘制的灰太狼形象,个人以为,这个灰太狼绘制得十分逼真形象,小伙伴们都要惊呆了。以后我们再来弄一个HTML5 Canvas的喜洋洋如何?

html5-canvas-huitailang

在线演示源码下载

HTML5登录表单验证 Tooltip验证提示

表单验证功能非常实用,今天要分享的一款HTML5登录表单验证就非常酷,表单默认只对输入的长度作验证,你也可以自己修改正则表达式来完成更复杂的表单验证。当然这款HTML5表单验证最有优势的是他的外观,不但登录表单制作非常精美,而且验证提示也有漂亮的Tooltip提示框。

html5-form-validation

在线演示源码下载

HTML5如何用window.postMessage在网页间传递数据

估计很少人知道HTML5 APIS里有一个window.postMessage API。window.postMessage的功能是允许程序员跨域在两个窗口/frames间发送数据信息。基本上,它就像是跨域的AJAX,但不是浏览器跟服务器之间交互,而是在两个客户端之间通信。让我们来看一下window.postMessage是如何工作的。除了IE6、IE7之外的所有浏览器都支持这个功能。

数据发送端

首先我们要做的是创建通信发起端,也就是数据源”source”。作为发起端,我们可以open一个新窗口,或创建一个iframe,往新窗口里发送数据,简单起见,我们每6秒钟发送一次,然后创建消息监听器,从目标窗口监听它反馈的信息。

//弹出一个新窗口
var domain = 'http://scriptandstyle.com';
var myPopup = window.open(domain 
            + '/windowPostMessageListener.html','myWindow');

//周期性的发送消息
setInterval(funct[......]

阅读全文>>

程序员如何活得明白

商业内幕最近发表了一篇文章说做程序员压力山大,很多人都快疯了。文中陈述了几个典型的罪状:骗子综合症,加班加点,精疲力竭等。作者指出,程序员的工作压力的根源通常是源自混乱的管理,但越来越多的压力开始来自程序员社群自身,社群中开始形成一种文化,将加班加点当成判断一个程序员是否具有奉献精神的石蕊试剂,强加到程序员身上。换句话说,如果你不在下班时间继续写代码,你就不可能成为一名合格的程序员。跟这些压力相呼应的是急速革新的各种新技术、新框架、新语言、新平台、新程序包、新SDK等的不断出现,就如火上浇油。

可事实上问题不在于此。编程,就跟写作、绘画、作曲一样,首先是一种创造性的活动,而不是一个种技术工作。当然,对一种技术或编程语言的不断练习和保持熟悉很重要,这其实就是在学习使用工具和技法,但它并不会让你本质上变成一名更优秀的程序员。它只是让你能更熟练的使用工具。而能让你成为更优秀的程序员的是学会如何思考问题,因为最终你是把脑子里思考出的逻辑转换成了一系列操作计算机的指令,让计算机遵照指令解决问题。而学习如何正确的思考——如何抽象归纳,如何组合,如何分析信息,如何自我反省——可以通过各种方式,[......]

阅读全文>>

做程序员压力山大,很多人都快疯了

programmer-computer-night-3

软件程序员在如今看来是一个既能挣钱又有工作保障的职业,但是,这种职业对你的精神健康却会造成巨大的伤害。

有两种事情几乎能让程序员疯掉。

一个是被人们称作“骗子综合征(imposter syndrome)”的东西。患这种症状的人通常是发现一起共事的所有程序员都比自己聪明、比自己有天份、比自己有才能。你生活中一直恐惧中,担心其他人会最终发现你是个冒牌货、你的技术和能力是装出来的。

经常会有女性程序员坦白说遭受”骗子综合征(imposter syndrome)”的折磨,这并不让人意外。这种精神疾病是由心理学家Pauline Rose Clance博士和Suzanne Imes博士提出,他们发现一些成功的女性会表现出这种症状。有很多心理健康类的书籍也以”骗子综合征(imposter syndrome)”为题材,在女性读者中很流行。

但是,大量的男性程序员也越来越多的表露他们也有这种精神压力

通常人们喜欢对其他人高要求,而这些人却有个共同的习惯是,给自己施加极高的标准和要求。这种综合征通常出现在有人评判、有人对比的职业类型中。软件开发正是这样的一种行业,特[......]

阅读全文>>

HTML5可编辑Table表格 可编辑、删除、排序

今天我们要来分享一款非常实用的HTML5表格应用,这款HTML5表格的数据行是可以编辑的,包括对数据项的更新、删除和行的排序,另外,该HTML5可编辑Table表格还可以动态新增行,Table数据也能以json的格式导出,是一款实用的HTML5应用。

html5-editable-table

在线演示源码下载

HTML5视频播放器 超酷播放器UI界面

今天要分享一款UI界面非常出色HTML5视频播放器,播放器具备播放/暂停、音量调节、全拼播放等功能,应该也算是比较完善了的。我们也可以看看之前发布过的HTML5视频播放器,像HTML5播放器API集合 轻松学会HTML5播放器开发,也非常酷。

html5-mini-video-player

HTML代码:

<section id="wrapper">
	<div class="videoContainer">

    <video id="myVideo" controls preload="auto" poster="css/vp_poster.jpg" width="380" >
      <source src="http://simplypx.com/images/Prometheus.mp4" type="video/mp4" />
		  <p>Your browser does not support the video tag.</p>
		</video>
		<div class="capt[......]

阅读全文>>