Ubuntu开发自己的包格式和安装程序

Canonical开发者正在开发自己的软件包格式和安装程序,补充而不是替代Debian的软件包管理工具apt/dpkg。新的软件包格式和安装程序仅用于新发行的软件包,也就是运行在Ubuntu Phone/Tablet上的第三方应用,其最主要特性是应用程序之间没有依赖关系——即应用程序所需要的库都捆绑在软件包内,每个程序都安装在自己的目录下,整个包格式将纯粹是说明性的。Canonical开发者Colin Watso强调,他们会继续用 dpkg和apt构建Ubuntu操作系统,与Debian同步。

Kivy:使用python开发手持设备app

Kivy 是一套 Python 下的跨平台快速应用开发框架,对于多点触控有着良好的支持。不用深入学习 Java 或 Object C 即可开发流行智能手机平台应用。

Kivy 依据允许商业使用 LGPLv3 协议发布,支持 Linux, Windows, MacOSX, Android 和 iOS 平台,原生支持各个平台的输入设备协议,包括多点触控;其图形核心围绕 OpenGL ES2 构建,可以充分利用目标平台的 GPU 加速。其 1.6.0 版本带来了如下特性:

  • 允许自定义顶点类型,初步实现 3D 支持。

  • 支持材质平整化,在 PowerVR 设备上支持 PVRTC 压缩算法。

  • 文本渲染引擎改善,微调核心文本标签空间。

适用于多个 Linux 发行版及 Win 和 OS X 的下载

1.6.0 版本发布公告

Android 版本演示

iOS 下使用 Kivy 编写的游戏

注意:当前 Ubuntu PPA 中的版本与仓库中的 Cython 有兼容性问题,正在处理。

团队合作岗位:内向的人 or 外向的人 ?

假如一份工作有两位求职者。他们有相同的学历和经验,但个性却截然相反。一位非常安静,看起来有些紧张,面试的时候,基本都是你在讲话,显然这是因为他担心自己说错话。而另一位则非常健谈,魅力十足,自信满满。你会选择哪一位?大多数招聘经理都会选择性格外向的求职者。然而,对于需要团队合作的岗位,从长期来看,有一点“神经质”个性的求职者可能是更好的选择。

加州大学洛杉矶分校安德森管理学院(Anderson School at UCLA)的管理学教授科琳·本德斯基说:“这和常识有些相悖。”她曾参加过一项名为“外向性格者的衰落与内向性格者的崛起:任务组内地位分配的动态过程”(The Downfall of Extroverts and the Rise of Neurotics: The Dynamic Process of Status Allocation in Task Groups)研究,研究报告将在下一期《管理学会学报》(The Academy of Management Journal)中发表。

本德斯基称:“我们的研究发现,外向的人在最开始会受到团队成员的重视。然而,随着时间推移,他们的表现通常都令人失望。而与此相反,内向的人表现往往会超出预期,最终成为高效的团队成员。”

原因何在?本德斯基解释道:“主要是因为,内向的人会更努力去满足别人。许多人认为焦虑紧张具有破坏性,而内向的人们之所以会格外努力与其他人友好相处和尽量做得更好,原因恰好在于这种焦虑和紧张。而外向的人们通常都是糟糕的倾听者,对其他人的想法缺乏耐心,并不是出色的合作者。”因此,随着时间的推移,外向者对团队伙伴的贡献会远远低于预期,进而失去了在团队成员心目中的地位。<!-- more -->

本德斯基和她的研究团队通过两组试验发现了这个现象。在第一组试验中,一年级 MBA 学生先进行个性测试,然后每五个人被分成一个研究小组。学生们在一起合作一周之后,每一位学生按要求完成一份对其他团队成员的评估调查。调查的重点是在每一个小组中,哪一位成员拥有最高的地位,同时被期望拿出最好的表现。在这场人气竞争中,外向的人轻松获胜。“然而,在五个班级经过为期 10 周的高强度合作之后,我们重新进行了之前的评估调查,结果却出现了很大的不同,”本德斯基说。“个性偏内向的学生超出了预期,获得了外向的人们失去的地位。”这项研究“切实证明,预期和实践存在巨大的差异。”

当然,这并不意味着要炒掉所有外向的人。本德斯基称:“他们非常适合某些岗位,尤其是直接面对客户的工作,例如销售等。但在需要配合的岗位上,他们的效率通常都不会太高。”

她补充说:“我们的团队中或许有太多外向的人,因为他们在面试时的表现总是如此的出色。但最优秀的团队应该是不同性格类型的混合体。”如果你所领导的团队表现并没有达到你的预期,而且团队中已经有一部分具有内向性格的员工,本德斯基建议:“试试再多招点这样的员工”。

美国监狱奇观

近几日,众多美国及西方媒体报道了美国新的监狱奇观,Tavon White-36岁,谋杀犯,黑帮 - 黑色游击队家族老板及巴尔的摩监狱领主,身兼数职的Tavon White在过去的四年的监狱生活里尽享齐人之福,他成功的接手了国营巴尔的摩拘留中心的管理,控制了整个监狱系统,他让狱警们给他往监狱里面弄毒品、钱、最新的手机、烟草、食物、酒以及豪华宝马和梅塞迪斯轿车,这些手下是这么的忠诚,其中的一些她们还蒙幸奉献上了她们的躯体和生育能力,4名女狱警:31岁的Jennifer Owens,24岁的Katera Stevenson,27岁的Chania Brooks及27岁的Tiffany Linder不仅陪伴他度过了监狱时光还给他产下了5个孩子,其中两个女警还把他的名字纹在了身上,一个在脖子上,一个在手腕上,当然付出是有回报的,她们得到了包括豪华轿车等名贵礼物,其中之一甚至还弄到了钻石戒指,Tavon White是那么的博爱,据报道和他有染 的还包括狱友。依据一次被窃听的电话录音,Tavon White自豪的对他的朋友说,“这是我的监狱,你的明白?我严正的告诉你,这里最后拍板的是我”。

当然,既然你现在看到了这则报道,说明这出戏结束了,13名女管教官员,7名狱友和另外5人被指控涉毒、密谋洗钱。 至于Tavon White这么幸福并不是因为他进入了女子监狱,在巴尔的摩国营监狱超过60%的狱警是女性,这份工作虽然充满压力但是相当稳定,每年都能获得平均4万美元的薪酬,之所以有大量的女警下水,不仅因为这些女警不自爱还因为她们的不安全感,另据美国司法部报告,在监狱里性侵犯人的警卫很多是女警,在39121起监狱男犯人被警卫性虐事件中,69%是女警员

Nginx HttpLimitReq 限速设置

WIKI: http://wiki.nginx.org/HttpLimitReqModule

漏桶原理(leaky bucket): http://en.wikipedia.org/wiki/Leaky_bucket

#以用户二进制IP地址,定义三个漏桶,滴落速率1-3req/sec,桶空间1m,1M能保持大约16000个(IP)状态
 limit_req_zone  $binary_remote_addr  zone=qps1:1m   rate=1r/s;
 limit_req_zone  $binary_remote_addr  zone=qps2:1m   rate=2r/s;
 limit_req_zone  $binary_remote_addr  zone=qps3:1m   rate=3r/s;
server {
#速率qps=1,峰值burst=5,延迟请求
 #严格按照漏桶速率qps=1处理每秒请求
 #在峰值burst=5以内的并发请求,会被挂起,延迟处理
 #超出请求数限制则直接返回503
 #客户端只要控制并发在峰值[burst]内,就不会触发limit_req_error_log
 # 例1:发起一个并发请求=6,拒绝1个,处理1个,进入延迟队列4个:
 #time    request    refuse    sucess    delay
 #00:01        6        1        1            4
 #00:02        0        0        1            3
 #00:03        0        0        1            2
 #00:04        0        0        1            1
 #00:05        0        0        1            0
 location /delay {
 limit_req zone=qps1 burst=5;
 }
#速率qps=1,峰值burst=5,不延迟请求
 #加了nodelay之后,漏桶控制一段时长内的平均qps = 漏桶速率,允许瞬时的峰值qps > 漏桶qps
 #所以峰值时的最高qps=(brust+qps-1)=5
 #请求不会被delay,要么处理,要么直接返回503
 #客户端需要控制qps每秒请求数,才不会触发limit_req_error_log
 # 例2:每隔5秒发起一次达到峰值的并发请求,由于时间段内平均qps=1 所以仍然符合漏桶速率:
 #time    request refuse    sucess
 #00:01         5         0          5
 #00:05         5         0          5
 #00:10         5         0          5
 # 例3:连续每秒发起并发请求=5,由于时间段内平均qps>>1,超出的请求被拒绝:
 #time    request refuse     sucess
 #00:01         5         0           5
 #00:02         5         4           1
 #00:03         5         4           1
location /nodelay {
 limit_req zone=qps1 burst=5 nodelay;
 }
}

from:http://www.hemono.com/?p=673