Facebook第一位女程序员的故事 故事追溯到2005年,Ruchi Sanghvi 第一次到达 Facebook 位于帕罗奥图市中心的办公室面试。她看到一张菜单的外面写着“招工程师”。
当时的 Facebook ,位于帕罗奥图市中心的一个中国餐厅楼上。一个充满现代感和年轻工程师的地方。办公室里充斥着黑色的沙发和熔岩灯,壁挂和电影海报遮盖了大部分的墙面。
同一年早些时候,毕业于卡耐基梅隆大学计算机系的她,在毕业三周后就拿到了华尔街的银行的工作。“我慌了,我更加希望一个能利用到我学习的核心知识的地方”她说道。
当她的朋友告诉她 Facebook 这个公司的时候,她已经飞到了加州,并且面试过了甲骨文公司。
“我对 Facebook 知道的不多,我甚至不知道他们已经搬到了加州。我以为他们还在波士顿的哈佛大学学生宿舍里” ?她嘲笑的说着这些。
滑板文化
我们坐在Dropbox位于旧金山市中心的时髦的办公室里,31岁的Ruchi Sanghvi,此时已经是Dropbox 的执行副总裁...
还有王法吗?还有法律吗?代码女神每天编程9小时 
人人网上一组名为《这世界唯一的你》的相册最近火红,里面上百张照片都是同一个女孩。这女孩一脸素净,有网友惊呼无妆容的清纯脱俗,素颜魅力远超叶一茜刘诗诗宋茜;此外,她还是个程序员,让网友不禁叹道,“原来程序员不光是抠脚大汉!”
前端工程师跟大家想象的并不一样,“我们一般9点以后上班,晚上6点下班,平时在办公室编写程序,进行产品的界面开发”
尽管自己在网络上火了,但是赵洁琼表示,自己的生活没有受到影响,她说自己还会继续从事前端工程师的工作。
优秀工具推荐:超实用的 CSS 库,样板和框架 
当启动一个新的项目,使用 CSS 框架或样板,可以帮助您节省大量的时间。在这篇文章中,我编译整理了我最喜欢的 CSS 样板,框架和库,帮助你在建立网站或应用程序时更加高效。
Bootstrap
如果你想给你的新项目的专业的外观和感觉,Boostrap 可能是你需要的工具。它拥有一个非常干净的排版,表格元素,以及设计一个现代化的网站你需要的所有东西。
MongoDB是个天才般的笨蛋 
MongoDB 2.4之后的版本,将V8作为默认的JavaScript引擎,加上基于BSON(JSON)格式的文档存储,一直以来都被认为是Node.JS的好搭档,红帽也已经将她整合进自己的Linux系统,但由于发展时间不长,难免有些不足,下面这篇文章就是国外某程序员的吐嘈。
MongoDB还存在许多需要改善的地方,比如全局写锁(现在仅仅是一个数据库级的写锁)。本文主要关注如何扩展以应对大数据,这里的大数据体积为100GB。
当你着眼于底层存储的实现时,它将更有意义。基本上,MongoDB由一堆BSON文档mmap(内存映射)链表组成,它们使用了简单的B-tree索 引,以及作为存储耐久性机制的基本日志。最终由OS写入磁盘,并在页面中读取由操作系统加载到内存中的数据结果。
对于现代开发来说,JavaScript就是一种垃圾语言 这是某国外程序员对JS的吐槽,不过通过篇博文你也许能学到很多JS的知识。
Javascript在很多方面都烂透了,而且还极其无趣,我就纳了闷了,大家为啥都义无返顾,群情激奋的跳进Node学习的大军里,是!Node 是比Ruby快,Node是基于事件模型处理的,但让我无法理解的是,一些人动不动就想把自己的程序用Node重构一下,过过脑子行吗!
Javascript的继承,深拷贝问题,不是定义一个新ECMA标准就能解决的,不是套个漂亮的语法外壳(比如CoffeeScript)就能搞 定的,不是用require实现个标准化或者引入classes就可以万事大吉的,ECMA语言里不是有个引入classes的ActionScript 吗!那玩意跟Javascript一样屎,只要大家继续用它,PHP框架的现状就是JS的未来— 一堆一堆的人前赴后继,日以继夜的为这坨屎一样的语言搭框架、写工具。
我来说一下为什么Javascript糟糕,当然了,它也有好的方面。 但是问题就是太不实用。
性能测评:Node.JS比Java EE快20% 
国外某工程师写了一段简单测试脚本,用以比较Java EE和Node.js的性能,结果另他大吃一惊,作为脚本语言的Node.js在竟然比编绎型语言还快了20%,而且还是在不考虑内存消耗的情况下。
他在Mac平台上从CunchDB数据库读取JSON数据,两段测试代码都很短,而且很简单, 代码和结果如下:
漫画:为什么不能打断程序员? 
昨天从 HN 上看到 Jason Heeris 制作的这张漫画,说的就是为什么不能随便打断程序员思维的原因。正如王建硕在《入静和入世》文章说的: “当看到一个程序员冥思苦想的时候,不要过去打扰,甚至在极端的情况下,一句友好的问候都是多余的。 ”
谈谈公司内部的技术分享 这段时间,为了促进程序同事间技术氛围,在公司内部组织开展技术分享 会。形式很简单,每两周也就是半个月,进行一次技术分享;分享人由组员顺序安排;题材不限,可以是自己熟悉的技术,比如说服务端的开发者,分享后端定时 器,消息队列等等,前端的开发者分享加载的模式,MVC模式等等,可以是一些通用的技术,比如数据结构,算法,代码风格,Effective 系列,调试技巧等,甚至可以是经典书的读后感等等,抑或是最近大家在研究一个开源的项目,也可以跟大家讲一下这个开源项目的框架;或许有些人利用业余时间 做了一个小软件,也可以拿出来分享。
所谓技术分享,可能很多人觉得是为了让参与者提高技术,对方方面面的技术有一个了解,提高一个广度上面的认识;其实我认为对于分享者的提高会更大。
高级JavaScript调试—— console.table() 试想一下,假如你创建了一个编程语言以及其文件后缀名列表:
var languages = [
{ name: "JavaScript", fileExtension: ".js" },
{ name: "TypeScript", fileExtension: ".ts" },
{ name: "CoffeeScript", fileExtension: ".coffee" }
];
现在我们使用console.table()进行打印。
你可以看到如下表格:

如何开发不可维护的软件? 我从别人遗留的的技术性债务中获得报酬。在我的日常工作中,我见到了很多难以维护的代码,并且我一次次地看到了很多相似的并可以避免的问题。
我专门从事调试、修改、维护、扩展遗留软件系统这类工作,我的典型客户一般都有一个或多或少可以运行的网站或者软件,但是其开发者都因为各种原因不 再维护了,因为商业需求改变导致软件无法跟上需求;或者我的客户有一些“几乎快要完成”的软件,但是因为预算用光或者计划有变与开发者分道扬镳。通常这种 软件会缺少一系列的功能并有一坨bug。
我那些客户通常被其他程序员告知,需要废弃已有的所有代码从头开始。大部分程序员不喜欢维护代码,尤其不喜欢维护别人开发的代码。当程序员写代码 时,当他们谈论到可维护性时,程序员经常会问一些错误的问题——想了解这种情况是如何发生的,请参看Matt Duvall的文章《可维护性的神话 | The myth of maintainability》。
以下是一些你可以在你自己的软件工程中做的“好”事,因为这些事可以帮我找到活干。