代码审计CodeQL
CodeQL是一个白盒源码审计工具,它以一种非常新颖的方式组织代码与元数据,使研究人员能够“像查询数据库一样检索代码”,并发现其中的安全问题。 GitHub于去年收购了开发CodeQL的公司Semmel,并与其联合成立了GitHub Security Lab,Semmel在此前推出了面向开源社区和企业的源代码分析平台 LGTM,这个平台能够自动化的发现并预警GitHub上开源软件的安全问题,同时,与CodeQL一样对开源社区与开发者保持免费。...阅读全文
CodeQL是一个白盒源码审计工具,它以一种非常新颖的方式组织代码与元数据,使研究人员能够“像查询数据库一样检索代码”,并发现其中的安全问题。 GitHub于去年收购了开发CodeQL的公司Semmel,并与其联合成立了GitHub Security Lab,Semmel在此前推出了面向开源社区和企业的源代码分析平台 LGTM,这个平台能够自动化的发现并预警GitHub上开源软件的安全问题,同时,与CodeQL一样对开源社区与开发者保持免费。...阅读全文
华为提供了一个基于 CentOS 的企业级 Linux 发行版 EulerOS,华为也发布了一个名为 openEuler 的 EulerOS 社区版。 openEuler 的源代码也一同发布了,源代码可以在 Gitee 找到。它有两个独立的代码库,一个用于存储源代码;另一个作为软件包的源代码,存储有助于构建该操作系统的软件包。 openEuler 基础架构团队分享了他们使源代码可用的经验: 我们现在很兴奋。很难想象我们会管理成千上万的仓库。为了确保它们能被成功地编译,我们要感谢所有参与贡献的人。 openEuler 是基于 CentOS 的 Linux 发行版 与 EulerOS 一样,openEuler OS 也是基于 CentOS,但华为技术有限公司为企业应用进一步开发了该操作系统...阅读全文
运作开源项目很容易。所有你需要做的就是让你的源代码可用和开源,对吧?嗯,也许。其实,开源项目是否成功取决于你对项目成功的定义。且不论你是怎么定义的,创建开源项目需要大量的工作。如果你已经有了目标,那么你需要准备投资。虽然开源软件是免费的,但它的创作却不是免费的:你需要往项目中投入时间和精力等宝贵资源。 那么,你如何投资这些资源? 1、定义成功 在考虑运作开源项目之前,你需要明确定义成功的意义。这里有很多因素要考虑。只将代码放入可公开访问的存储库就可以了,还是说你想对你的项目做更多?合作与采用对你来说重要吗?你只是为了打造作为一名软件开发者的声誉吗?你对成功的定义是否包括长期的可行性?你想围绕这个项目发展一个社区吗?你关心商业采用吗?你对这些问题的回答可以帮助你确定接下来你需要采纳的建议有多...阅读全文
9 月 8 日,字节跳动正式宣布开源 CloudWeGo。这是一套以 Go 语言为核心、专注于微服务通信与治理的中间件集合,具有高性能、可扩展、高可靠的特点。 据介绍,作为项目维护方,字节跳动基础架构团队已推进项目以 CloudWeGo 开源库为主进行迭代,未来团队将坚持内外维护一套代码,统一迭代演进,并逐步分享更多内部微服务最佳实践。 项目地址:https://github.com/cloudwego 项目官网:www.cloudwego.io CloudWeGo 第一批开源了四个项目,以 RPC 框架 Kitex 和网络库 Netpoll 为主。 Kitex Kitex 是一个 Golang 微服务 RPC 框架,具有高性能、强可扩展的特点。 字节跳动使用 Golang 作为主要业务开...阅读全文
正如体育界不成文的规定一样,这些规则基本上不会出现在官方文档和正式记录上。比如说,在棒球运动中,从比分领先时不要盗垒,到跑垒员跑了第一时也不要放弃四坏球保送。对于圈外人来讲,这些东西很难懂,甚至觉得没什么意义。但是对于那些想成为 MVP 的队员来说,这些都是理所当然的。 软件开发,特别是开源软件开发中,也有一套不成文的规定。和其它的团队运动一样,这些规定很大程度上决定了开源社区如何看待一名开发者,特别是新加入社区的开发者。 按部就班,循序渐进 在参与社区之前,比如开放源代码或者其它什么的,你需要做一些基本工作。对于有眼界的开源贡献者,这意味这你需要理解社区的目标,并学习应该从哪里起步。人人都想贡献源代码,但是只有少量的人做过准备,并且乐意、同时也有能力完成这项艰苦卓绝的工作:测试补丁、复审...阅读全文
3月27日,华为开发者大会2020以线上形式举行,华为云与计算BG总裁侯金龙在主题演讲中发布openEuler系商业发行版操作系统,首批参与的操作系统包括银河麒麟服务器操作系统V7.6,普华服务器操作系统V5.1(鲲鹏版)、深度欧拉V1.0以及傲徕服务器操作系统1.0。 IT之家此前报道过,今年1月份,openEuler开源社区(以下简称openEuler社区)正式开放源代码、镜像及开发测试环境,标志着openEuler社区开放运作迈出了坚实一步。作为主要筹备方,华为会逐步开放在ICT基础软件领域的技术积累,将操作系统、编译器/JDK等领域的基础平台能力开源至openEuler社区。 在openEuler社区,社区参与者可下载操作系统安装镜像或源代码,快速了解并掌握openEuler操作系...阅读全文
去年GitHub突然宣布开源代码也要受美国出口管制EAR让全球程序员都担心了,不过Linux基金会现在可以确认开源技术不受美国管制了。 软件开发方面,开源技术已经成为全球共识,很多项目都是全球各地的程序员合作开发的,不仅有美国及欧洲程序员,中国不少公司及开发者也是全球开源社区的重要组成,任何一方如果强硬限制,那么整个开源社区就存在断链的风险。 本周,Linux基金会在官网上发表了一份白皮书《了解开源科技和美国出口管制》,中英文双版介绍了美国出口管制的限制,最重要的是这个指南明确了“公开发布给全世界享用的开源技术是不受制于美国出口管制EAR,开源至今仍然是一个最为便利的全球协作的模式。” EAR第734.7条款指出,当可被公众获取且无进一步传播限制时,未被归类为密级事项的『技术』或『软件』属...阅读全文
据 Venturebeat 报道,微软今天宣布,将关闭开源软件托管平台 CodePlex。微软 2006 年推出这项服务,并决定在今年 12 月 15 日将其关闭。 微软公司副总裁布莱恩·哈里(Brian Harry)在博文中写道,人们将可以下载他们的数据档案,微软正与面向开源及私有软件项目的托管平台 GitHub 合作,给用户提供 “简化的进口体验”,代码和相关内容都将转移到 GitHub 上。简单来说,GitHub 赢了! 哈里写道:“过去多年中,我们已经看到许多惊人的选项起起落落。但是现在,GitHub 正成为开源共享和大多数开源项目托管事实上的中心。”过去几年里,微软越来越向 GitHub 倾斜。它已经于 2016 年将 CNTK 深度学习工具包从 CodePlex 转移到...阅读全文
树莓派4B使用国内源(buster版本) 之前一直找的是网上现成的源,结果后面发现树莓派4B早已不是stretch版本,而是buster版本,踩了许许多多坑,希望后来的人不要重蹈覆辙。下面就来手把手教你如何将树莓派4B切换为国内源。 1.使用ssh或者VNC登录到树莓派,然后打开终端,修改软件更新源,执行如下命令: sudo nano /etc/apt/sources.list 2.在第一行复制粘贴以下代码,在这里使用中科大官方镜像源。 deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi !!!(2020年8月18日更新,5月份以来在官网下载的镜像已经是Raspberry Pi...阅读全文
论 Go 2 了。 开发团队表示,Go 语言如今的目标与 2007 年相同,就是希望使程序员更有效地管理两种规模:生产规模和开发规模,其中又主要针对的是与许多其他服务器交互的并发系统,和许多工程师协调的大型代码库。Go 2 的目标就是解决 Go 1 在规模化方面做的还不好的地方。 据 Russ 估算,目前全球的 Go 开发者至少有 50 万,这意味着有数百万个 Go 源文件和至少十亿行 Go 代码。那些程序员和源代码代表了 Go 的成功,但同时也是对 Go 2 的主要约束。只有在回报非常巨大时,才能让开发者改变原有的旧习惯,学习新用法。Go 2 必须修正 Go 1 的问题,带动所有的 Go 开发者, 也就必须带上所有现有的 Go 源代码,不能让生态系统分裂。 如果把 Go 2 要增加的特性分...阅读全文
Linux 安全性、项目管理及与其他领域结合发展 (1)近期勒索病毒肆虐全球,安全性方面,总会有人拿Linux 与Windows 相比。而 Jim 则不认可这种比较。他认为开发任何一个比较复杂的软件系统,都难免会有安全漏洞。 从安全性的角度来看,在 Linux 开发过程中会启动 CoreOS 项目,对所有代码进行同行评估,成千上万个开源开发者参与其中,对所有代码的安全性进行审议。由此希望通过审计的代码是最安全的,开发出的软件是安全可靠的。 “总而言之,安全是我们的任何项目的重中之重,非常关注与重视的一个问题,包括 Linux 的所有项目” (2)Linux 作为超大规模的项目,又是如何进行管理的呢? “每天我们贡献的代码数量会达到 1 万行,从中抽取 5 千行,还有1800行代码每天都是精心修改的...阅读全文
。它播放的序列由你决定,但默认情况下它包括一个加密货币挖掘模拟器、composer PHP 依赖管理器、内核编译器、下载器、内存管理等等。不过,我最喜欢的是显示 simcity 加载消息的设置。因此,只要没有人检查得太仔细,你就可以花整个下午的时间等待电脑完成进度条。 Genact 有 linux、os x 和 Windows 版本,Rust 源码可以在 github 上找到。 Hollywood Hollywood 采取了更直接的方式。它本质上是在终端中创建一个随机数和拆分屏幕的配置,并启动看起来很忙的应用程序,如 htop、目录树、源代码文件和其他应用程序等,并每隔几秒钟进行切换。它以 shell 脚本的形式组合在一起,因此可以很容易地根据你的需要进行修改。 Hollywood 的源代码可...阅读全文
Infrastructure as Code", 基础架构即代码。Terraform 几乎可以支持所有市面上能见到的云服务。具体的说就是可以用代码来管理维护 IT 资源,把之前需要手动操作的一部分任务通过程序来自动化的完成,这样的做的结果非常明显:高效、不易出错。 Terraform 提供了对资源和提供者的灵活抽象。该模型允许表示从物理硬件、虚拟机和容器到电子邮件和 DNS 提供者的所有内容。由于这种灵活性,Terraform 可以用来解决许多不同的问题。这意味着有许多现有的工具与Terraform 的功能重叠。但是需要注意的是,Terraform 与其他系统并不相互排斥。它可以用于管理小到单个应用程序或达到整个数据中心的不同对象。 Terraform 使用配置文件描述管理的组件(小到单个应用程序,达到整个数据中心...阅读全文
谷歌开源了一套代码评审(Code Review)规范,它是谷歌一套通用的工程实战指南,几乎涵盖了所有编程语言与各种类型的项目,这个规范代表了谷歌长期发展以来最佳实战经验的集合,谷歌表示希望开源项目或其他组织能够从这套规范中受益。 代码评审,也称代码复查,如果一个团队正在使用任务分支工作流,那么在所有代码编写完成并通过自动化测试之后,在代码合并之前,就会启动代码评审。通常的目的是查找系统缺陷,保证软件总体质量和提高开发者自身水平,代码评审的所有工具和过程都是为了这个目的而构建的。代码评审对于敏捷团队来说的作用如下: 代码评审共享知识通过代码评审可以更好的进行工作评估代码评审能让你享受休假通过代码评审指导新工程师 既然代码评审要进行众多的检查,那么找一个优秀的评审者就非常重要了。一般对于变更列...阅读全文
Linux Foundation 正致力于通过组建新项目来改善开源的合规性,他们近日推出了一个 Automated Compliance Tooling(ACT)项目,旨在整合对推进开源合规性工具的投入,提高互操作性和可用性,从而帮助组织管理合规性义务。 根据 Linux 基金会的说法,虽然开源代码的使用变得越来越流行,但使用开源代码有责任遵守该代码许可的条款,这会给用户和组织的管理带来挑战。 Linux 基金会战略高级主管 Kate Stewart 表示:“推进开源合规性的工具或项目有很多,但大多没有资金,构建强大可用性或高级功能的范围有限。我们从许多组织那里听说,目前存在的工具无法满足当前的需求。在 Linux 基金会下成立一个中立机构来处理这些问题,将使我们能够增加对合规工具开发社区...阅读全文
2022年1月18日,全球企业级开源解决方案领导者SUSE宣布:NeuVector代码库现已在GitHub上向开源社区开放。将之前的专有技术全部开源是对SUSE开源文化的传承,也践行了SUSE向合作伙伴和客户提供开放、互操作性和创新的解决方案的承诺。基于本次发布,NeuVector成为了业界首个端到端的开源容器安全平台,唯一为容器化工作负载提供企业级零信任安全的解决方案。 三个月前,SUSE完成了对NeuVector的收购;此后,SUSE一直在考虑将这一云原生容器安全平台开源所涉及的技术和法律问题。NeuVector是业界领先的安全和合规解决方案,已被全球知名企业广泛采用;其代码库的开源不仅使NeuVector成为开源社区的首选技术,还为受严格监管的客户(包括政企、金融)提供了更可靠...阅读全文
师之前,应当先成为Java工程师。熟练使用各种框架,并知道它们实现的原理。jvm虚拟机原理、调优,懂得jvm能让你写出性能更好的代码;池技术,什么对象池,连接池,线程池……Java反射技术,写框架必备的技术,但是有严重的性能问题,替代方案java字节码技术;nio,没什么好说的,值得注意的是"直接内存"的特点,使用场景;java多线程同步异步;java各种集合对象的实现原理,了解这些可以让你在解决问题时选择合适的数据结构,高效的解决问题 成为Java架构师,需要掌握哪些技能呢? 1.框架源码分析 设计模式:Singleton单例模式,Factory工厂模式,Proxy代理模式,Template模板模式,Prototype原型模式等Spring5:Spring提醒结构,IOC注入原理,AOP设...阅读全文
-proxy/cloaking-rules.txt 这个文件,在后面添加你的DNS,例如:# my customized dns www.one-domain.com x.x.x.x *.your-domain.com x.x.x.x其实我想要方案是匹配域名,然后把这些域名的DNS指向另一个DNS,这样会方便些,不过似乎 dnscrypt-proxy 还不支持。还有一个方案就是把 fallback_resolver 改成公司所提供的DNS。更多文章socketserver 源码阅读与分析functools 源码阅读与分析contextlib代码阅读Collections 源码阅读与分析Redis通信协议阅读2016年就要结束了,2017年就要开始啦!unittest 源代码阅读APUEv3 - 重读笔...阅读全文
一、SVN切换分支操作介绍SVN(Subversion,下文简称SVN)是一种版本控制系统,它提供了一系列的命令行工具来管理源代码。在代码的开发过程中,可能会需要更改当前工作目录下所处的分支。SVN提供了switch命令供用户进行分支切换操作,该命令只修改当前工作目录下原本的模块链接并不会真的修改目标URL中的版本库。在SVN中,一个版本库可能会有多个分支,我们可以通过checkout命令来创建这些分支,也可以使用branches工具来进行分支的删除、移动、查看等,这些工具都是由SVN提供的。SVN提供了非常完善的分支管理机制,让我们可以方便地在开发过程中,随时随地地更换所处的分支。二、SVN切换分支常用命令及其参数介绍切换分支是SVN的基本操作之一,下面是一些常用的命令及其参数。大家可以...阅读全文
持周期,以避免更新混乱的出现。 2、有利于产品的长期发展 福布斯杂志指出,90%的初创公司最后都会失败,而他们当中,只有不到一半的中小型公司存活期能超过5年。如果在产品开发的中途突然出现需要更换供应商的问题,那迁移的成本就很高了。所以,要避免选择只有一个供应商支持的产品。 而开源使得社区成员能够协同编写软件。如 OpenStack 就是由多个公司及个体志愿者共同编写的。这么做,就能保证,在一个供应商出现问题的情况下,其他供应商能继续支持。而且,软件一经开源,企业就会长期投入开发团队以实现产品开发。使用源代码的好处就是,你可以聘用贡献者来保证开发的活跃性。 3、更安全 以开源的方式进行开发,可以很直观地看到,供应商是如何对待安全问题,以及是否在积极保证产品安全。研究源代码并执行独立代码审核,也...阅读全文
近日,Facebook 开源了一套解决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制、资源利用、工作负载隔离、负载均衡、测量和监控等方面:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd。 Facebook 表示这些项目现在已大规模用于其所有基础设施生产环境中,并用于其它许多企业组织的环境中。 BPF:https://facebookmicrosites.github.io/bpf/ BPF 是 Linux 内核中一种高度灵活、高效率的代码执行引擎,可以让字节码在各个 hook 点运行,以使用自定义代码。虽然 BPF 已广泛用于数据包过滤,但是 BPF 的指令集具有很强的通用性和灵活性,足以支持和允许除网络之外的众多使用场合,比如跟踪和...阅读全文
Linux基金会发布了其中一个开源项目ACRN的详细信息,这是一个专为物联网和嵌入式设备设计的管理程序。该项目得益于英特尔代码和工程的贡献,其目标是创建一个灵活小巧的虚拟机管理系统。通过基于Linux的服务操作系统,ACRN可以同时运行多个客户操作系统,使其成为许多场景的理想选。 Linux基金会表示,管理程序和设备模型是以“安全关键型工作负载”为基础构建的,并且设想ACRN将一些IoT工作负载整合到一个平台上。虽然该项目是作为强大而灵活的解决方案提供的,但嵌入式开发人员社区被邀请提供代码以进一步扩展和改进ACRN。 通过项目ACRN,嵌入式开发人员可以立即使用新的管理程序选项。 ACRN针对资源受限设备进行了优化,并将重点放在隔离安全关键型工作负载并给予他们优先考虑,使项目适用于许多物联...阅读全文
宣布推出“Moby项目”,将其旗下的Docker产品(包括DockerCE与Docker EE两款商用产品)从Docker开源项目当中剥离出来。同时,Moby也将成为面向特定基础设施创建定制化容器软件的重要起点。 在接受电话采访时,Docker公司市场营销与社区高级副总裁David Messina指出,DockerCon大会与会者已经得到了这一明确通告。 Messina表示,“Moby项目属于Docker项目的全新上游”,用户将可利用该开源代码库克隆出自己需要的系统。 Messina同时承认此次更名在一定程度上可能引发误解。他指出,“无论何时,开源世界中的重大改进总会引发混乱,但我们并不是有意要制造麻烦。” 尽管如此,该公司于两年前决定将其容器软件从基础设施组件(包括runc...阅读全文
,FreeOffice 已经扩展到支持早期的 Microsoft 格式 DOC、XLS 和 PPT 以及标准化文档格式 OpenDocument Text(ODT)。 但是 FreeOffice 并不是开源的软件,Jack 认为这便是 Manjaro 的大胆之处。 虽然有人会认为 Linux 上应该使用开源项目,并且开发者需要能够查看到 FreeOffice 的源码,并且在出问题时能够自行调试代码解决,但是这样影响办公效率的事情实际上很少会发生。“Linux 上拥有另一种选择的想法,尤其是使与 MS Office 的无缝协作更加现实的想法,应该被视为 Linux 桌面的巨大胜利。” Jack 分享了他在 Linux 上文档协作方面的困苦,后来其实也是到了需要求助于 Google Docs 之类的线上工具的地步...阅读全文
请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。 101 服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切换到在Upgrade 消息头中定义的那些协议。 只有在切换新的协议更有好处的时候才应该采取类似措施。例如,切换到新的HTTP 版本比旧版本更有优势,或者切换到一个实时且同步的协议以传送利用此类特性的资源。 102 由WebDAV(RFC 2518)扩展的状态码,代表处理将被继续执行。 2xx 成功 这一类型的状态码,代表请求已成功被服务器接收、理解、并接受。 200 请求已成功,请求所希望的响应头或数据体将随此响应返回。 201 请求已经被实现...阅读全文
/Native 已支持用于开发 iOS 应用,这也将是 Kotlin/Native 0.4 的特性之一。虽然对 iOS 开发的支持仍处于早期阶段,但确实已经实现了,这是在所有平台上使用 Kotlin 进行开发的重要一步。 官方还特意展示了利用 Kotlin/Native 开发的两款应用(Spinner app (GitHub)、KotlinConf app (GitHub)),它们都可以运行于 iOS 和 Android 平台。Android 和 iOS 平台共享了不少代码,其中包括大多数图形处理、声音播放和用户输入响应代码。 两款应用都已开源,你可以将它们作为模板,仅使用 Kotlin 构建自己的跨平台移动应用。点此可了解其中一款应用。 IDE 对 Kotlin/Native 的支持 Kotlin...阅读全文
aws-sdk-cpp 源代码构建添加各种代码质量检查和实用程序 Bug Fixes 将 Windows MSI ErrorControl 设置为 normal 而不是 critical改进 CMake 中子模块的使用修复 MacOS 应用层防火墙表修复 BPF 事件表中的问题Linux 下 PCI 设备表的重构与改进在 Windows processes 表上实现 PID 索引改进 WHERE IN() 性能改进内部 HTTP 客户端 Table Changes 对 Darwin(Apple OS X) 添加了表 alf_services对 Microsoft Windows 添加表 connectivity、default_environment 及...阅读全文
许多人认为10月5日是 Linux 系统的周年纪念日,因为这是 Linux 在1991年首次对外公布的时间。不过,你可能不知道的是,早在1991年8月25日,当年还是大学生的 Linus Torvalds 就向 comp.os.minix 新闻组的人透露了由于“业余爱好”他正在研究操作系统的消息。因此,该时间也被许多爱好者视为 Linux 的真正诞生日期。 为纪念 Linux 27 岁诞辰,OMG Ubuntu 列出了 27 个与 Linux 和 Linus Torvalds 相关的有趣事实。 1、截至 2018 年,Linux 内核已有 20,323,379 行代码。尽管近期有所减少,但庞大的代码量意味着 Linux 仍然是地球上(单个)最大的开源项目。 2、Linux 差点不叫这个名字...阅读全文
执行恶意命令。Weak credentials: Tsunami 使用其他开放源代码工具(例如 ncrack)来检测协议和工具(包括SSH、FTP、RDP 和 MySQL)使用的弱密码。 谷歌方面还表示,在未来的几个月中,其计划发布更多的漏洞检测器,用于检测类似于远程代码执行(RCE)之类的漏洞。此外,开发团队还在研究其他几个新功能,以使得该工具更强大、更易于使用和扩展。更多详细信息可查看官方博客。...阅读全文
Apache 软件基金会宣布 Apache Superset 成为顶级项目 (Top-Level Project, TLP)。 Apache Superset 是一款现代化的开源数据工具,用于数据探索和数据可视化。它提供了简单易用的无代码可视化构建器和声称是最先进的 SQL 编辑器,用户可以使用这些工具快速地构建数据仪表盘。 Apache Superset 将 SQL IDE、数据浏览工具、拖拽式仪表板编辑器和插件组合使用,以构建自定义的可视化效果,支持从许多关系数据库和非关系数据库中创建仪表板,这些数据库包括 SQLite、MySQL,以及 ClickHouse、Google BigQuery、Snowflake、Oracle 数据库、IBM DB2 和其他各种兼容的数据源,并且可以连接...阅读全文
近日,Intel发布了最新版本的Linux处理器微代码数据文件,而这个补丁文件能够修复Intel CPU中的Spectre以及Meltdown漏洞。广大用户可以使用微代码文件来修复操作系统中目前已知的Intel CPU安全漏洞,而无需在计算机中执行BIOS更新。 根据Intel微代码下载页面所提供的介绍,Intel此次发布了40种不同版本(针对Linux)的补丁代码,可适用于多款不同型号的Intel处理器。 下面给出的就是Intel官方网站列出的处理器支持型号。大家可以参考下列表格以及cpu-world.com网站上的CPU信息来寻找合适自己处理器的补丁版本。注意,下列表格中的CPU版本号为十六进制值(例如(06-3c-03:32)),你可以在cpu-world.com寻找到相匹配的处理器...阅读全文
Node.js 早诞生将近20年,所以在文档,API 和代码库等在线资源方面更为丰富。所以很有可能其他人也尝试了你想要用代码完成的事情并从中获得了帮助。另一方面,Node.js 虽然已经得到了开发者和组织的广泛关注,但是它支持开发者开发的资源缺相当少。 8.学习曲线: 编写 Node.js 代码对于新手甚至是专业的 JavaScript 开发人员来说都不是件容易的事情,因为他们需要在入门之前理解一些复杂的概念,比如 web worker 和回调函数。相反,PHP是一门非常友好的编程语言对于开发 Web 应用程序的新手来说。 Node.js 和 PHP 战斗的结果是相辅相成的,因为这两种技术都有各自的优点和缺点。这大多是相似的情况在比较或选择用于 Web,桌面和移动开发的其他技术时。Node.js 有前途...阅读全文
安全研究员从内核发现的 bug 数量这一角度认为 BSD 正在死亡。安全公司 IOActive 负责渗透测试的总监 Ilja von Sprundel 分析了 BSD 的源代码,从 3 大 BSD 发行版发现了 115 个内核 bug,其中 FreeBSD 有 30 个,OpenBSD 有 25 个,NetBSD 有 60 个,大部分 bug 被认为是非常容易发现的。 他报告了这些 bug,但六个月后许多 bug 仍然没有修复。 Linux 内核的 bug 通常存在的时间很短,很快就会修复,但 BSD 的情况不是如此,许多 bug 已经存在了十年甚至更长时间。von Sprundel 特别称赞了 OpenBSD 的代码质量。 【原文来自 CSOOnline】...阅读全文
HHVM 3.24 终于发布了,此版本包含新功能、错误修复、性能改进和对未来改进的支持工作。值得注意的是,HHVM 3.24 是支持 PHP 5 的最后一个版本,这包括对 PHP 5 扩展 (ext_zend_compat) 的源码级别兼容性。官方建议迁移到 Hack 或 PHP 7。 此外,HHVM 3.24 也是对 Debian 7 Wheezy 和 Ubuntu 17.04 Zesty 支持的最后一个版本。 有以下值得关注的更新亮点: In Hack code, reference arguments must now be marked at the call site, e.g. $foo = [3, 1, 2]; sort(&$foo); Support for using...阅读全文
输数据,在不使用的情况下默认不会传输任何 UDP 数据包,所以比常规VPN省电很多,可以像ShadowSocks一样一直挂着使用。 WireGuard协议的速度几乎秒杀其它VPN协议,测试结果如下图; WireGuard 受到 Linus 本人的推荐,将整合到最新版Linux Kernel中,安装部署更方便。WireGuard 总共几千行代码,只需十分钟就能搞定一台WireGuard服务器。 Wireguard安全性高。极佳的VPN漫游特性,设备支持广泛。内核级别的端对端隧道加密技术,拥有良好的加密特性。Wireguard配置文件由两部分组成:interface和peer。服务器端、客户端互为平等关系。支持预共享密钥preshared key加密,防止量子计算攻击。 国际著名项目,开源代码审...阅读全文
的 Sidecar 支持(不包含 iptables)添加了为 sidecar Envoys 配置 DNS 刷新速率 的功能,以减少 DNS 服务器上的负载Graduated Sidecar API from Alpha to Alpha API and Beta runtime. 详细内容请查看发布公告。 源码下载地址:https://github.com/istio/istio/releases/tag/1.2.0 Istio 是一个由谷歌、IBM 与 Lyft 共同开发的开源项目,旨在提供一种统一化的微服务连接、安全保障、管理与监控方式。 Istio 项目能够为微服务架构提供流量管理机制,同时亦为其它增值功能(包括安全性、监控、路由、连接管理与策略等)创造了基础。这款软件利用久经考验的...阅读全文
Debian 发行团队发布了有关即将到来的 Debian 10 “Buster” 的最新信息。Debian 发行团队目前计划在 2019 年 1 月 12 日开始往冻结状态过渡,2019 年 2 月 12 日处于软代码冻结状态 (Soft Freeze),并最终于 2019 年 3 月 12 日左右进行全面冻结。 据表示,官方发布 Debian 10.0 “Buster” 的时间将是明年年中左右。 此外,对于 Debian 11 “Bullseye”,他们希望能通过持续集成、自动打包测试等方式引入更多的自动化 QA 测试,而根据过去的发布时间,Debian 11.0 可能会在 2021 年发布, 而 Debian 12 的代号也已经确定,被命名为“Bookworm”。显然,还要再过好几年才...阅读全文
三个编译注释,你可以使用它们来给编译器发送指令。这些注释会在稍后再做更详细的介绍。 Java注释可以在编译时(build-time)时使用,当你编译你的工程时。编译过程包括生成源代码,编译资源文件,生成XML文件(如:部署表述文件),以及将编译好的代码或文件打包成一个jar文件等。编译过程通常是由诸如Apache Ant或Apache Maven之类的编译工具自动完成的。编译工具会浏览你代码中的特定注释,并基于这些注释生成源代码或其他文件。 通常情况下,Java注释在代码编译完成后就变得不可见了。但是存在这种可能,你可以定义自己的注释,并使它们在运行时仍然可见。之后可以通过反射机制来访问这些注释来影响你的程序。 注释的基本知识 注释的最简单形式如下: @Entity 字符@告诉编译器这是一个...阅读全文
图片来自于 Youtube 关于近期关于放弃 Unity 的决定,Google+用户 Maartin Kozub 在文章中写道: 这个决定并不能简单的用惋惜和悲伤而形容,因为 Canonical 所从事开始的多个项目也宣告了死亡。 我认为当前最大的问题是大部分开源开发者无法深入理解,也不会进而欣赏面向对象的编程语言(C++)。他们依然还习惯使用 C 语言来编程一些丑陋的代码,也许有些时候利用个性化定制功能能够让 C 更加接近于 C++,但无疑会增加门槛和降低可读性。所以,为何不直接使用 C++?最典型的例子就是 Wayland。 在另一方面,Canonical 是目前极少数创建优秀和简洁开源 C++代码的公司/社区,就像 Mir 一样能够充分利用各种现代化 C++功能。 Mark...阅读全文
在 MSHTML 中增加了另外一层事件支持,这是微软专有的 HTML 布局引擎,用于 Windows 版本的 IE 浏览器。 其中还提到:“再一次,因为是年度发布,一些功能还在开发当中,会被延迟到下一个开发周期当中。这包括 Direct3D 12 和 Vulkan 支持,以及在 Android 上启用 Direct3D 的 OpenGL ES 支持。”。 下载 Wine 3.0 如果你不想等待你的 Linux 发行版更新,你可以直接下载源代码构建或者从官方网站下载二进制包。 源代码: https://dl.winehq.org/wine/source/3.0/wine-3.0.tar.xz http://mirrors.ibiblio.org/wine/source/3.0/wine-3.0...阅读全文
在以前,很多从其他语言转过来 Go 语言的同学会问到,或是踩到一个坑。就是以为 Go 语言所打包的二进制文件中会包含配置文件的联同编译和打包。 结果往往一把二进制文件挪来挪去,就无法把应用程序运行起来了。因为无法读取到静态文件的资源。 无法将静态资源编译打包进二进制文件的话,通常会有两种解决方法: 第一种是识别这类静态资源,是否需要跟着程序走。第二种就是考虑将其打包进二进制文件中。 第二种情况的话,Go 以前是不支持的,大家就会去借助各种花式的开源库,例如:go-bindata/go-bindata 来实现。 但从在 Go1.16 起,Go 语言自身正式支持了该项特性,今天我们将通过这篇文章快速了解和学习这项特性。 基本使用 演示代码: import _ "embed...阅读全文
在微软宣布以 75 亿美元的价格收购 GitHub 后,这个在全球拥有超过 2800 万开发者的代码托管平台即将在微软庞大的云计算框架下进行独立运作。 微软 CEO Satya Nadella,CFO Amy Hood ,GitHub 联合创始人兼现任 CEO Chris Wanstrath ,以及即将上任的 GitHub CEO(也是 Xamarin 创始人)Nat Friedman 昨天在短暂的媒体电话会议中分享了有关此次收购和微软对 GitHub 的后续规划的更多细节。 微软在扩展 GitHub 的覆盖面,以及将平台融入微软生态上有着宏伟的规划,但所有的计划会基于以下两点原则:GitHub 将保持自主性独立运营,GitHub 向所有开发者开放。 1、三大策略将 GitHub 融入微软...阅读全文
WebAssembly 应用程序完全用 Rust 编写,相反,大部分应用程序代码仍然使用 JavaScript。Rust 和 WebAssembly 将分别用于应用程序的特定部分,例如解析源映射或确定对 DOM 做了哪些更改。 可以从 GitHub 下载 wasm-bindgen。 来源:InfoWorld...阅读全文
能够帮助运行在 Wine/Proton 上的少量游戏,在现代化处理器(AMD Zen 2 或者英特尔 Connon Lake)上能够使用 Store Local Descriptor Table Register 或者 Store Task Register 指令。 6.XFS 文件系统 XFS 文件系统现在支持到 2486 年,克服了此前 Year 2038 的问题。 7.声卡支持 由于开放源代码社区的工作,终于在 Linux 下支持了 Creative Labs SoundBlaster AE-7 声卡。 8.任天堂 Switch 手柄支持 借助新的Nintendo HID驱动程序(另一个开源社区创建),Linux Kernel 5.10 终于添加了对任天堂 Switch 手柄的支持。任...阅读全文
/apt/sources.list 2、删除原文件所有内容,buster 系统用以下内容取代: deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib 注:网址末尾的raspbian重复两次是必须的。因为Raspbian的仓库中除了APT软件源还包含其他代码。APT软件源不在仓库的根目录,而在raspbian/子目录下。 stretch 系统用以下内容取代: deb http...阅读全文
布。这种分离带来了挑战,包括维护向下兼容性。 由于工具和部署选项的性质,移动持续部署面临着一些特定的挑战。Web 部署则更为容易,因为 Facebook 拥有完整的技术栈和工具。为了解决这些挑战,Facebook 已经构建了一些专注于更快的移动开发的工具和库,包括 Buck 、Phabricator、 Infer、 React 以及 Nuclide 。Facebook 的移动部署是以三层来并发运行。 • 构建:合并到移动主分支上的所有代码都会进行构建,这会针对受影响的所有产品(Instagram、Messenger)并且会跨各种芯片架构。 • 静态代码分析:Linters 和静态分析工具的组合,称为 Infer ,用于检查各种问题,包括资源泄漏、未使用的变量、有风险的系统调用和编码准则违规...阅读全文
对于 Python 开发者来说,web 开发框架真可谓玲琅满目。然而 Django , 毋庸置疑的成为最受青睐的 web 框架。通过本篇博客,我来为大家讲解下为什么相比 Flask、Pyramid、Tornado、Bottle、Diesel、Pecan、Falcon 这些流行的 Python web 框架,Python 开发者更倾向于选择 Django。 再大肆宣扬Django之前,让我们简单了解一下web框架 Web框架是一个代码库,使开发人员更容易构建动态网站、Web应用程序和Web服务。 众所周知的是,每个网站都有一些通用的功能(如处理会话,数据验证等等),一些您每次创建网站时都需要编写的功能。 这使开发任务平淡乏味。 然而,使用Web框架可以让您每次创建网站都需要重新编写通用功能代...阅读全文
让我们先探讨什么是基于主机的入侵检测系统。如前所述,入侵检测系统是一种硬件或软件应用程序,可在检测到恶意活动时检测并警告管理员。HIDS主要专注于监视和分析日志文件,以便 基于预定义的策略和一组规则来检测异常和未经授权的更改。换句话说,HIDS与您添加的预先建立的规则一样有效。对于大量存储的日志,提取有意义的信息对于检测异常至关重要。提取的信息应准确。因此,确保这些日志的安全性对于防御日志操纵至关重要。1. OSSECOSSEC是开源安全事件关联器的缩写。这个建立良好且信誉良好的解决方案是OSSEC基金会开发和维护的免费和开放源代码的基于主机的入侵检测系统,这要归功于众多的贡献者。它后来归趋势科技所有。这是一个不断发展的项目,每月下载约5000次,并且具有可扩展性和多平台方面的特点,因为它...阅读全文
Metasploit 5.0 版本实现。 另外需要注意的是,Metasploit 现在有了一个更成熟的开发流程。希望在未来继续用这个流程,进一步改进代码库。 详细更新说明 源码下载地址: Source code (zip)Source code (tar.gz)...阅读全文
Jira Jira 是 Atlassian 开发的专用问题跟踪产品,提供了错误跟踪和敏捷项目管理功能。 JetBrains YouTrack YouTrack 是由 JetBrains 开发的,基于浏览器的专用商业软件,融合了错误跟踪器、问题跟踪系统以及项目管理软件。它的卖点是基于查询的问题搜索,拥有自动完成、分批处理问题、自定义问题属性集,以及创建自定义工作流的特性。 Zendesk Zendesk 可以轻松地从所有渠道跟踪每一个客户问题。目前 Uber 和 Airbnb 等许多公司都在使用 Zendesk Support 作为他们的问题跟踪软件。 源代码控制 源代码控制主要是为了控制资产,减少沟通障碍,赋能团队。目前业内比较常用的 SCM 工具包括 Git、GitHub、GitLab...阅读全文