adv

adv
solidot新版网站常见问题,请点击这里查看。
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万次。
程序
WinterIsComing(31822)
发表于2015年03月26日 18时38分 星期四
来自你们无法在硅谷找到工作
软件开发者都知道内存存取要比磁盘存取快得多,所以他们会尽可能的在内存中执行大部分任务。但加拿大两所大学的研究人员在预印本网站上发表了一篇受争议的论文(PDF),宣称内存存取未必比磁盘存取快。他们创建了1MB大小的字符串,然后写入磁盘。他们发现,在内存中完成大部分工作比反复的写入磁盘要慢得多。开发者认为研究人员缺乏编程的经验
程序
WinterIsComing(31822)
发表于2015年02月16日 19时08分 星期一
来自新人辈出
一种新兴的编程语言项目最近吸引了越来越人的关注Nim是一种静态类型、命令式的系统级编程语言,其作者是Andreas Rumpf,最新版本是v0.10.2,正在向1.0版迈进。Nim的语法受到了Python和Pascal的启发,其主要特性包括编译到C的原生代码生成,不依赖于虚拟机;非跟踪垃圾收集器;跨模块内联;编译器和标准库都用Nim实现;强大的元编程能力,等等。它是如此受欢迎以至于《Unix in Rust》的作者为它放弃了Rust。Rust是Mozilla主导开发的系统级编程语言。
程序
WinterIsComing(31822)
发表于2015年02月14日 17时04分 星期六
来自开始生产环境
Rust编程语言团队公布了进展报告和正式发布时间表。Rust是Mozilla发起的注重安全、并发和性能的编程语言项目。Rust语言在上个月发布了1.0-alpha1,1.0-alpha2将在2月20日发布,3月9日nightly版的所有1.0模块稳定(stable),3月31日发布1.0-beta ,5月15日发布1.0正式版。1.0-alpha1代表语言及核心库已经特性完整,而1.0-alpha2则代表则主要API的修改结束,所有模块以后只会进行小的调整。
程序
WinterIsComing(31822)
发表于2015年02月10日 18时27分 星期二
来自编写三次
苹果Swift语言的爱好者将可以用Swift为Windows和Android开发软件了Silver编译器能编译Swift代码运行在.NET和Java运行时上。开发Silver的公司RemObjects不允许开发者利用它开发完整的跨平台应用,理由是用户界面应该原生开发,iOS应用应该用iOS的用户界面库才会让人觉得在iOS上最合适,.NET应用应该用微软的Windows用户界面库,Java应用应该用Android或Java库。Silver在Windows上集成 Visual Studio 2013 和2015,在 OS X上集成RemObjects自己的集成开发环境 Fire。
程序
WinterIsComing(31822)
发表于2015年02月05日 16时10分 星期四
来自Google有UI
开发一个移动应用如果你想要面向尽可能广的用户,你需要为Android开发一个,iOS开发一个,Web开发一个。为每个平台开发一个版本意味着三倍的工作量,三倍的bug处理量。令整个事件变得更复杂的是,三个平台必须使用不同的语言开发:iOS是Objective-C/Swift、Android是 Java,而Web是JavaScript/CSS/HTML5。在开发Google Inbox时,Google采用了一组工具让它能在三个不同平台之间共享70%的代码。它的工具就是开源的J2ObjC,顾名思义它将Android的Java代码翻译成iOS的Objective-C代码。Google Sheets就用了J2ObjC,但Inbox是至今使用J2ObjC的最大项目。J2ObjC没有翻译UI部分,除了翻译底层的相同功能,为了更好的用户体验每个平台仍然使用了原生的UI。
程序
WinterIsComing(31822)
发表于2015年02月03日 18时10分 星期二
来自排队插队
MIT的研究人员创造了一种数据结构能让多核处理器更高效的处理数据,其方法是随机化任务而不是传统的先到先服务的队列模式。MIT的SprayList算法允许有许多核的处理器(例如英特尔的18核处理器 E5 2600v3) 随机化分配任务。研究人员称,传统的优先队列对于8核以下处理器工作良好,但如果有更多核心加入这种工作方式将会创造性能瓶颈。他们的新方法对于80核以下处理器都更具有效率。