Browsed by
日期:2020年2月6日

如何看待华为裁撤 34 岁以上的员工,是否技术人员中年后在职业上会出现困境?

如何看待华为裁撤 34 岁以上的员工,是否技术人员中年后在职业上会出现困境?

閱讀本文約花費: 4 (分鐘) 问:如何看待华为裁撤 34 岁以上的员工,是否技术人员中年后在职业上会出现困境? 答:华为是我所尊敬的一家公司,在用人制度上,这家公司过去也有做法引起争议(全员辞职下岗再应聘),但后来证明,是对的。这次所谓「裁撤 34 岁以上的员工」,我还判断不出来是不是事实。但我认为媒体的报道跟实际情况肯定有偏差。 那些看到「华为年终奖大曝光 总额 1500 亿,入职 3 年能分到 18 万」而激动的,和看到「华为优化三四十岁老员工」骂华为的都是同一波人。 几年前,我写过一次某个互联网大公司变相裁人的信息,但描述上出了偏差,虽然写的是部分事实,依然被该公司组织力量口诛笔伐,还有一些员工说我造谣,吸取了教训,后来就刻意避免参与类似的讨论了。 我刚参加工作的时候,互联网泡沫刚过,那时候大家在论坛上讨论的是,程序员 30 岁之后怎么办?是不是要转管理岗位?要不然,到了 30 岁还能写动程序吗?那时候,30 岁以上的程序员确实不多见,毕竟 IT 产业在国内才发展多少年啊。 这几年,很少看到有人讨论 30 岁程序员的话题了,大家开始讨论 35 岁,40 岁以后该怎么办的问题了。我看到不少朋友到了 35 岁 40 岁,依然在开发第一线乐此不疲,依然是优秀的工程师,真没觉得年龄对他们有什么影响。有几次去国外开会,看到一大群大叔大妈级别的人在会场,挺感慨的。 我相信互联网行业一部…

Read More Read More

搜狗实验室技术报告

搜狗实验室技术报告

閱讀本文約花費: 4 (分鐘) 无意发现搜狗实验室,和她的技术报告,不错,良心企业,赞。   C10K问题—epoll简介 简介:编写连接数巨大的高负载服务器程序时,经典的多线程模式和select模式都不再适用。应当抛弃它们,采用epoll/kqueue/dev_poll来捕获I/O事件。 乱序优化与GCC的Bug 简介:乱序优化是现代编译器非常重要的特性,本文介绍了什么是乱序优化,以及由此引发的一个gcc bug,希望引起各位开发者的注意。 轻量级AJAX库 简介:Ajax作为一个非常常用的功能,在页面中的作用越来越举足轻重。而对于浏览器的支持,易用性,lib本身大小就成为了衡量一个lib的指标。作者重写了ajax library用来取代现有的prototype.js。 用java的nio技术实现的异步连接池 简介:本文重点讲解异步连接池的诞生背景和使用方法,同时介绍java nio技术的基础知识。 XSS跨站脚本攻击及防范 简介:XSS(Cross Site Script)跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。本文介绍了该攻击方式,并给出了一些防范措施。 实现跨域访问的Ajaj 简介:Ajaj即Asynchronous JavaScrip…

Read More Read More

Unix目录结构的来历

Unix目录结构的来历

閱讀本文約花費: 3 (分鐘) Unix(包含Linux)的初学者,常常会很困惑,不明白目录结构的含义何在。 举例来说,根目录下面有一个子目录/bin,用于存放二进制程序。但是,/usr子目录下面还有/usr/bin,以及/usr/local/bin,也用于存放二进制程序;某些系统甚至还有/opt/bin。它们有何区别? 长久以来,我也感到很费解,不明白为什么这样设计。像大多数人一样,我只是根据《Unix文件系统结构标准》(Filesystem Hierarchy Standard),死记硬背不同目录的区别。 昨天,我读到了Rob Landley的简短解释,这才恍然大悟,原来Unix目录结构是历史造成的。 话说1969年,Ken Thompson和Dennis Ritchie在小型机PDP-7上发明了Unix。1971年,他们将主机升级到了PDP-11。 当时,他们使用一种叫做RK05的储存盘,一盘的容量大约是1.5MB。 没过多久,操作系统(根目录)变得越来越大,一块盘已经装不下了。于是,他们加上了第二盘RK05,并且规定第一块盘专门放系统程序,第二块盘专门放用户自己的程序,因此挂载的目录点取名为/usr。也就是说,根目录”/”挂载在第一块盘,”/usr”目录挂载在第二块盘。除此之外,两块盘的目录结构完全相同,第一块盘的目录(/bi…

Read More Read More

Kubernetes源码之旅:从kubectl到API Server

Kubernetes源码之旅:从kubectl到API Server

閱讀本文約花費: 13 (分鐘) 概述: Kubernetes项目目前依然延续着之前爆炸式的扩张。急需能够理解Kubernetes原理并且贡献代码的软件开发者。学习Kubernetes源码并不容易。Kubernetes是使用相对年轻的Go语言编写,并且拥有大量的源代码。在这个系列的多篇文章里,我将为大家深入分析Kubernetes的关键源码,以及介绍那些帮助我理解源码的技术。我的目标是提供一系列的文章,让对于Kubernetes还较为陌生的开发者能够快速学习Kubernetes源码。 在第一篇文章里,我会分析从运行一个简单的kubectl命令到向API Server发送REST调用的源码执行过程。在开始深入Kubernetes之前,我建议你先阅读一下Julia Evans对Kubernetes架构的高级概述分析的文章。 Kubectl命令的基本运行 Kubernetes里的命令行接口叫做kubectl。它用来控制Kubernetes集群。阅读这部分源码实现是一个好的开始。我们要追踪的命令是kubectl create -f——它会从文件创建K8s资源。我们要创建的资源是使用了Nginx基础镜像的单副本Pod。下面是它的yaml描述: apiVersion: v1 kind: ReplicationController metadata:  name: nginx spec…

Read More Read More

How does the Kubernetes scheduler work?

How does the Kubernetes scheduler work?

閱讀本文約花費: 1 (分鐘) Hello! We talked about Kubernetes’ overall architecture a while back. This week I learned a few more things about how the Kubernetes scheduler works so I wanted to share! This kind of gets into the weeds of how the scheduler works exactly. It’s also an illustration of how to go from “how is this system even designed I don’t know anything about it?” to “okay I think I understand the basic design decisions here and why they were made” without actually.. asking anyone (because I don’t know any kubernetes contributors really, certainly not well enough to be like PLEA…

Read More Read More

Excel 用什么函数可以判断一个字符串中是否包含某些字符

Excel 用什么函数可以判断一个字符串中是否包含某些字符

閱讀本文約花費: 2 (分鐘) 判断方法如下: 1,判断字符串中是否包含大写字母A,可用公式=IF(ISNUMBER(FIND(“A”,A1)),”有”,”无”)。 2,下拉公式会发现,含有小写字母a的结果是无,该公式里的FIND函数提取的是指定的字符区分大小写。 3,如果要判断是不是包含字母A且不区分大小写,可用SEARCH函数代替FIND函数,公式=IF(ISNUMBER(SEARCH(“A”,A1)),”有”,”无”)。 4,要想判断单元格中是否包含多个指定字符中的某一个,如判断单元格中是否包含“大”、“小”、“20”这三个字符中的一个,可用公式=IF(OR(ISNUMBER(FIND({“大”;”小”;”20″},A1))),”有”,”无”)。 5,下拉公式会发现,只要包含这三个字符中的任意一个,结果都是有。 6,而要判断是否同时包含这三个字符,只要把公式中的OR改成AND即可,公式=IF(AND(ISNUMBER(FIND({“大”;”小”;”20&#8…

Read More Read More

你知道为何敏捷估算要使用斐波那契序列吗?

你知道为何敏捷估算要使用斐波那契序列吗?

閱讀本文約花費: 6 (分鐘) 如果你已在使用计划扑克估算,那么你或许已能熟练运用斐波那契序列(或者修订的斐波那契序列)卡片。 传统的斐波那契序列是1、2、3、5、8、13、21等等,每个数都是其前两个数之和。 多年前,我开始让团队使用修订的斐波那契序列(1、2、3、5、8、13、20、40和100)进行估算。 为什么要使用斐波那契序列呢? 因为彼此之间过于接近的数字作为估算值使用时,难以进行区分。  韦伯定律 设想一下,如果你握有两个重物——一个是1千克(2.2磅)而另一个是2千克(4.4磅)。如果一手一个,即便不用眼睛看,您也能区分出来。因为2公斤的重物会让人感觉明显更重。 再设想一下,如果把手中的重物换成20公斤和21公斤。虽然它们之间的重量差异同之前(1公斤和2公斤)完全一样,但是你却很难在两个重物中识别出更重的那个。 这就是韦伯定律效应。韦伯定律指出,我们能识别的对象间差异,是以百分比来表示的。  衡量对象间差异  从1公斤到2公斤,差异是100%。或许您能轻易区分出差异为100%的重物。 然而,20和21公斤间的差异仅为5%。或许您就无法判断出其差异了。(我很清楚我自己是做不到的。)如果您能做到的话,就意味着您能区分出1.00千克和1.05千克间的重量差异(同样为5%)。 斐波那契序列中的数值能有效用于估算,是因为它们基本上符合韦伯定律。在…

Read More Read More

用户访谈——哪些原则简单却有效

用户访谈——哪些原则简单却有效

閱讀本文約花費: 11 (分鐘) 最近,桥水基金创始人瑞·达利欧的《原则》一书风头无两,洛阳纸贵。这本书对我最大的启示是,工作中无论多小、多简单的事情,都可以将其沉淀为原则。对自己而言,可在实践中将这些原则反复打磨锤炼,迭代优化,逐渐成熟;对于行业新人而言,亦可为其提供快速有效进阶的参考。 在此,笔者针对用户研究最常用的方法之一——用户访谈,抽象出5条谈话技巧。这些技巧,我斗胆称之为“原则”,希望你可以选择适合自己的几条,逐一实践,并将实践的结果反馈给我,我们一起迭代优化。当然,知晓这些原则没有价值,知晓之后的思考,思考之后的实践,实践之后的收获,才有价值! — 01 —“最近一次”原则 访谈中,我们需要探知用户的行为或是态度。例如,我们希望了解用户在购买服装类商品时,是否会考虑搭配问题。如果直接询问,其实是让用户对他们的行为进行总结和提炼。首先,这样的提炼会因场景或先前条件的描述不充分而有失偏颇;其次,这样的提炼往往简短直接,研究人员因此损失了很多用户行为和体验的细节,不利于充分理解用户,挖掘其深层次需求。 事实上,总结和提炼是研究人员应该做的事情,用户只需要讲好他们的故事。针对这一问题,我们可利用“最近一次”原则,即请用户描述他们最近一次体验类似场景时的情绪体验和处理方式。 应用于本文中的案例,我们就可以请用户描述他们最近一次买衣服的详细过程,例如买了什么,如何搜索、如何挑选、…

Read More Read More