adv

solidot新版网站常见问题,请点击这里查看。
Google
WinterIsComing(31822)
发表于2015年09月17日 15时38分 星期四
来自如果这个代码库给毁了
Google的互联网帝国是建立在软件之上,但它的软件规模究竟有多大?在本周硅谷举行的一个工程会议上,Google的Rachel Potvin回答了这个问题,她称构建Google互联网服务的软件大约有20亿行代码,这涵盖了搜索、地图、Google Docs、Google+、YouTube及其它所有Google互联网服务。相比之下,微软的Windows系统大约有5000万行代码。所有的Google代码都储存在一个单一的源码库内。Potvin称它可能是世界上最大的单一代码库。它只开放给公司的2.5万名程序员访问,有自己的版本控制系统叫Piper。Potvin说,搜索引擎算法等敏感代码储存在单独的库内,只开放给特定雇员访问。Piper库的容量大约为85TB,2.5万工程师每天会递交4.5万次commits,每周修改25万个文件的1500万行代码。
程序
WinterIsComing(31822)
发表于2015年09月10日 19时58分 星期四
来自千核万核
在现代的多核芯片中,每个核心都有自己的小的内存高速缓存,用于储存常用数据,而整个芯片还有一个大的共享高速缓存,所有核心都可以访问。如果一个核心试图更新共享缓存中的数据,其它访问该数据的核心都需要知道。共享缓存有一个哪个核心拷贝了哪些数据的目录。共享缓存的很大一块被这个目录占据着。在64核芯片中,目录占了12%的共享缓存。随着核心数量的增加,这个比例还会逐渐增长。128核、256核心乃至上千核的芯片需要更有效的方法去维持缓存一致性。MIT的研究人员将在下个月举行的国际会议上介绍一种新的缓存一致性机制,大大减少目录的占用比例,它与芯片核心数的对数成比例增长。在128核芯片上,新技术需要的内存为旧方法的三分之一。芯片核心越多,效率越明显。在1000核芯片上,新技术比旧技术减少96%的内存。论文第一作者是研究生Xiangyao Yu。
商业
WinterIsComing(31822)
发表于2015年08月24日 12时14分 星期一
来自面向银行
古老的编程语言 COBOL还活着,仍然有很多人为COBOL写代码,而微软想对它进行现代化的改造,简化COBOL程序员的工作。微软的最新集成开发环境Visual Studio 2015引入了Visual COBOL。Visual COBOL包含了COBOL语言的全面支持,含有智能感知、智能编辑、自动完成,代码分析和调试工具等功能。此外,它还允许开发者在其应用中加入 .NET和 C#代码,使他们的程序更具灵活性。
Google
WinterIsComing(31822)
发表于2015年08月20日 17时00分 星期四
来自中国流行Go
Google发布了编程语言Go 1.5版。开发者称,Go 1.5是一个重要版本,包含了大的架构改变,其中包括:用Go语言重写了编译器和运行时,C语言代码被完整移除;垃圾收集器支持并发,显著降低停顿时间;Go程序的GOMAXPROCS默认设置不再是1而是可用的CPU核心数;等等。更多可浏览发布公告。
Mozilla
WinterIsComing(31822)
发表于2015年08月08日 16时14分 星期六
来自六周快马加班
 Rust编程语言发布了Rust 1.2 稳定版和1.3 beta版。Rust 1.2改进了编译性能,引入Parallel codegen,显著改进Cargo性能,支持MSVC (Microsoft Visual C)工具链,动态大小类型(dynamically-sized type)等等。Rust 1.3 beta加入了一本电子书《Rustonomicon》,介绍如何正确写 Unsafe Rust程序;初步支持为Windows XP构建程序,等等。
程序
WinterIsComing(31822)
发表于2015年07月17日 15时53分 星期五
来自程序员晕过去了
卡车/巴士系数是指一个项目在失去多少关键开发者后会瘫痪,失去关键开发者的最少数量就是卡车/巴士系数,系数越高意味着一个项目在发生严重事故后仍然有足够的人能带领项目继续前进。开发者退出有一个短语形容——被卡车/巴士撞了,意思是职业和生活方式变动、婚育、意外伤亡等导致他们停止参与一个开源项目。巴西米纳斯州联邦大学计算机科学系的研究人员发表了一篇论文(PDF),设计了一种方法去计算开源项目托管平台Github上流行项目的卡车系数。他们的方式是从系统中不断移除某个开发者的所有文件,直至超过半数的系统文件没有作者。他们共计算了133个项目的卡车系数,结果显示46%的项目卡车系数是1,28%的项目是2,而Linux内核项目是90,Mac OS X Homebrew包管理器最高159。对Linux项目,许多人有异议,认为Linus Torvalds的重要性被低估了。
Google
WinterIsComing(31822)
发表于2015年07月07日 10时43分 星期二
来自奇虎木马入侵谷歌
奇虎360的软件工程师在Go语言官方博客上发表文章介绍该公司使用Go语言的经验。尽管Google被封杀,但该公司主导开发的Go语言在中国非常受欢迎,而让很多人感到不可思议的是,奇虎是一家受争议的公司,同时还是封杀Google的帮凶。在Go博客文章中,奇虎的工程师称他们从2012年开始使用Go,被用于旗下产品的推送服务。奇虎的产品多为免费,它的收入来源与推送关系密切。奇虎工程师称,基于Go的推送系统最初运行在20台服务器上,有2000万的实时连接,一天发送200万条信息。今天,这套系统运行在了400台服务器上,支持2亿+的实时连接,每天发送超过100亿条信息。
Bug
WinterIsComing(31822)
发表于2015年06月30日 19时12分 星期二
来自如果又发现了bug
在本月美国计算机学会举行的编程语言设计和实现会议上,MIT的研究人员展示了名为CodePhage的系统,它不需要访问应用程序的源代码就能自动修正其bug。CodePhage的工作原理类似于器官替换,有大量的开源项目实行了相同的功能,CodePhage系统就是识别目标软件有故障的组件,然后将“捐赠者”的好组件拼接到目标软件上替换故障组件。但说起来简单实际上很复杂,因为不同的软件使用了不同的编码标准,不同的变量名,不同类型的变量,变量可能是局部的也可能是更高级的,而CodePhage需要识别这些联系,让捐赠的组件能完美工作。研究人员在会议上用CodePhage修复了7个发现bug的开源程序,花费时间从2分钟到10分钟不等。
程序
WinterIsComing(31822)
发表于2015年06月26日 12时29分 星期五
来自版本号大跃进
Rust编程语言项目采用六周的发布周期:在1.0稳定版发布六周之后它正式宣布了1.1稳定版和1.2的beta版。Rust 1.1的主要改进是编译时间,相比1.0版,1.1的编译时间减少了32%。另一个主要改进是编译中产生的错误信息。其它特性包括:新的std::fs API,支持musl,cargo rustc等等。1.2 beta版也将再次改进编译性能,测试显示它的编译时间又比1.1版减少了30%。Rust项目计划在六周之后发布1.2版的稳定版和1.3版的beta。
程序
WinterIsComing(31822)
发表于2015年06月18日 15时21分 星期四
来自和谐
Ecma国际宣布批准了第六版的ECMAScript语言标准(aka ES6 或Harmony)。ECMAScript是标准化的JavaScript语言,是网景的Brendan Eich花了10天专门为浏览器开发的脚本语言,1997年发布了第一版,1998年和1999年发布了第二和第三个版本,之后ECMAScript沉寂了许多年,直到Ajax流行起来后标准工作再再次起步,2009年发布了第五个版本。第六个版本的正式名称是ECMAScript 2015,加入了许多新特性,如模块和类,它向后兼容旧的版本。ECMAScript的第七个版本正在开发之中。
程序
WinterIsComing(31822)
发表于2015年06月18日 11时54分 星期四
来自重新上阵
Firefox、Chromium、Edge(M$)和WebKit的工程师联合发起了一个源于Asm.js的新项目WebAssembly,它是一个二进制格式,本地解码速度比JS解析快得多(测试显示超过20倍),在移动设备上的使用体验更好。JavaScript作者Brendan Eich指出,Asm.js面临的一个问题是它的解析速度,这在移动设备上尤其致命,WebAssembly 让JS得到解脱,它不是取代而是补充JS。在可预见的未来JS不会消失。Brendan Eich说这是双赢。WebAssembly文件名后缀.wasm,它将支持广泛的编程语言。该项目已经获得了Mozilla、Google和微软的支持,苹果可能也会支持,参与该项目的WebKit工程师是苹果雇员。
程序
WinterIsComing(31822)
发表于2015年06月04日 15时15分 星期四
来自都向Google学习了
今天的现代浏览器普遍采用六周的发布周期,以将新功能尽快的提供给用户,以及尽快的释出安全修正。桌面应用则很少采用如此快速的更新周期,它们通常是一年更新一两次。Mozilla开发的新编程语言Rust刚刚发布了1.0正式版,它的更新策略将向浏览器看齐:开发者Steve Klabnik说,Rust 1.0在5月15日发布,同时发布的还有Rust 1.1beta版,六周之后的6月26日1.1将脱离beta阶段发布正式版,1.2发布beta版,主开发分支进入到1.3。以此类推。Rust的开发和发布也将分为nightly、beta和stable,nightly版是24小时更新一次,而beta和stable则遵循六周发布的周期。1.x系列将会维持向后兼容性,即为1.0写的代码将仍然能工作在后续版本上。
Google
WinterIsComing(31822)
发表于2015年05月26日 16时26分 星期二
来自编程如编衣服
Google等科技公司缺乏女性程序员。公司多元化总监Nancy Lee在回应搜索巨人不够多元化的询问时称,这要怪母亲。从1984年起学习计算机科学的女性比例出现下降,Google委托进行的研究发现,这主要与父母的鼓励和认识有关。父母不认为年轻的女孩应该从事计算机科学,没有引导她们朝该方向前进。父母们认为,编程和计算机科学更适合男孩。Google的研究显示,父亲比母亲更可能鼓励年轻的女孩学习计算机科学,认为在计算机科学教育推广中需要加入父母教育的部分,父母学习如何积极的鼓励女儿成为程序员。
程序
WinterIsComing(31822)
发表于2015年05月16日 16时30分 星期六
来自Brendan Eich原来是成龙粉丝
JavaScript作者Brendan Eich制作了一个幻灯片(方向键翻页),回顾了他在1995年5月的10天内开发出JS语言,描绘了JS在当前的演化。Brendan Eich称,JS是Java的小兄弟,Java的字节码设计影响了他在JS上的工作。Java是一种静态类型语言,而JS则是一种非类型(动态类型)语言。1995年的5月,他在10天完成了JS的句法分析和解析程序,解析程序运行在一个字节码解析器中,而标准库则没有完善。此后JS的发展如一日千里,出现了asm.js、ES6、TypeScript、Flow等。JS是动态类型,但asm.js为了确定性能采用了类型字节码。今天的开发社区有着数以百计的编译到JS语言,如 Dart,连Java VM也支持动态语言了。
Mozilla
WinterIsComing(31822)
发表于2015年05月16日 15时20分 星期六
来自连访问rust都要代理了
Rust编程语言核心团队正式宣布发布Rust 1.0。Rust是Mozilla开发的注重安全、性能和并发性的新编程语言,它不要求垃圾收集器或运行时,Rust库因此可作为C的插入式替代使用。发布1.0版意味着功能已经稳定,不会发生兼容性破坏的变化,但这也不意味着Rust语言已经完成了,开发者仍然在为隔夜版本引入众多改进和加入新功能,所以他们同时释出了Rust 1.1的beta版本。
程序
WinterIsComing(31822)
发表于2015年05月07日 20时22分 星期四
来自准备学习Python
开源Web应用框架Django的主要作者、资深Python开发者Jacob Kaplan-Moss在很多人眼里是一名有天赋的明星程序员。但他自谦的说他最多是一名普通程序员,他在一张幻灯片上写道:“Hi,我是Jacob,一名平凡的程序员。”当Jacob说自己是一名普通程序员许多人都不会相信。人们相信编程能力是呈U型分布,即你要么是一名差劲的程序员,要么是一名出色的程序员,没有中间地带。对此,LWN网站编辑Jake Edge认为编程天赋是一种危险的神话。编程不是热情也不是天赋,它是一种能够学习的技能,相信编程需要天赋的说法会将学习者赶出编程领域,阻止人们学习编程。
Idle
WinterIsComing(31822)
发表于2015年05月07日 17时06分 星期四
来自# shit fuck....
如果你是一名程序员,无论是使用哪一种语言开发,总是难以避免的会写出一些“ugly hack”,原因可能是死线逼近,或缺乏知识,或懒惰,或不知道最优方法。对开源代码托管平台GitHub的搜索发现,C程序员创造了最多的“ugly hack”,或者是C程序员是最愿意承认写了ugly hack的人。搜索显示,C语言代码中含有ugly hack字符串的文件数多达18.9万,其次是PHP的8.2万,JavaScript的4万,C++的2.3万,Python的1.95万,Text的1.3万,Makefile的1.1万,HTML的1万,Java 的8K和Perl的4610。
程序
WinterIsComing(31822)
发表于2015年04月09日 11时32分 星期四
来自创建10个账号就有了10GB
分布式版本控制系统Git在版本控制大文件上有所欠缺,基于Git的代码托管平台Github宣布了扩展Git Large File Storage (LFS),改进了大文件的版本控制,允许开发者在工作流中整合大的二进制文件如音频样本、数据集和视频。Git LFS暂时只提供给部分挑选出来的用户组,未来几个月每个托管库将默认支持Git LFS。免费用户的Git LFS有限额,文件储存限制在1GB,每月带宽流量1GB。用户可付费增加储存空间和流量。
程序
WinterIsComing(31822)
发表于2015年04月08日 12时13分 星期三
来自农民也会编程了
编程问答社区Stack Overflow公布了2015年程序员调查报告,来自157个国家的26,086名开发者参与了调查,其中有两人的身份是农民。参与调查的美国人最多,有4745人,其次是印度的2461人,英国的2402人,中国大陆252人,台湾55人。卢森堡的开发者比例最高,之后是冰岛、瑞典、以色列、芬兰和新加坡。美国开发者的平均年龄31.6岁,英国30.3岁,俄罗斯26.6岁,印度25岁。92.1%的开发者是男性,近一半的人没有计算机科学相关学位。他们最常用的编程语言是JavaScript、SQL、Java、C#和PHP;最喜爱的语言是 Swift、C++11和Rust,最常用的编辑器是NotePad++、Sublime Text、Vim和Emacs。最常用的桌面系统是Windows 7,Mac OS X和Linux相差不大。最流行的版本控制系统是Git,其次是SVN和TFS。
Mozilla
WinterIsComing(31822)
发表于2015年04月04日 13时38分 星期六
来自挑战Go语言
Rust编程语言核心团队宣布发布Rust 1.0 Beta,正式版将在六周后的5月15日发布。开发者称,beta版本测试期间他们的工作重心主要集中在修正bug、改进文档和错误信息方面,不会对已稳定的内容做出功能上的改变,但这并不意味他们不开发新功能。事实上,新功能的开发和1.0的完善在同步进行,他们计划在发布1.0正式版的同时释出1.1的beta版。开发者将会努力确保在引入新功能的同时不会造成兼容性问题。开发者称,它的软件包库crates.io已被下载了超过109万次。