如何使用 DockerHub

什么是 DockerHub 以及为什么它很重要?DockerHub 是一个由 Docker 公司运行和管理的基于云的存储库。它是一个在线存储库,Docker 镜像可以由其他用户发布和使用。有两种库:公共存储库和私有存储库。如果你是一家公司,你可以在你自己的组织内拥有一个私有存储库,而公共镜像可以被任何人使用。

谷歌公布最新Fuchsia操作系统说明文档:安卓或被淘汰

近日,谷歌公司终于公布了其 Fuchsia 操作系统迄今为止最为完整的说明文档,旨在供开发人员以及修复人员闲暇时进行阅读了解,这份名为《Fuchsia is not linux》的文档正式揭开 Fuchsia 操作系统的神秘面纱。此前,用户要获取这款操作系统相关的细节信息,需要通过各类渠道。

30 多年的编码经验浓缩成的 10 条最佳实践

良好的代码更易于阅读、理解、调试和修改,最重要的是它的缺陷也更少。显然,编写良好的代码需要更多的时间,但是从长远来看,它也具有更多的价值,因为这降低了维护的成本,而且具有更好的可重用性。

Windows 10 精简版(Windows 10 Lean)系统首曝光:精简2GB大小、无预装

“瘦版”的确精致,比Windows 10 Pro小了2GB。进一步挖掘后发现,缩减的空间主要是删掉了自带壁纸、CD/DVD驱动,甚至连注册表编辑器这样的程序也没装。

[译] 超大型 JavaScript 应用设计的哲学

本文基于 Malte Ubl 在 JSConf Australia 的演讲速记稿和现场视频整理而来,你可以在 YouTube 上观看完整演讲。由于全文大部分内容转自口述,译稿并不细究字词的严格一致,但尽力保证了原文语义和结构不发生变化

Java 10:来看 var 的新玩法

在Java 10中,var并非一个关键字,只是一个保留的类型名称。其原因也是为了避免对原有开发的代码,包括变量、方法或包名称有一些冲突或影响。也就是说,开发者仍然可以用var当做变量、方法或者包的名称。

开源软件并不是无国界的,也会被禁用,Docker 就是先例

开源社区的很多人都可以一开始就不相信开源的安卓系统能够被禁用,很多人相信开源就是无国界的,不是拿一个国家能禁止的。但事实并不是这样理所当然的,开源软件会被禁用,Docker 就是先例。

你知道吗?甲骨文拥有JavaScript商标权 未经授权不得使用

在名为“Oracle Owns “JavaScript”, so Apple is taking down my app!”(甲骨文拥有JavaScript商标权,所以苹果下架了我的应用。)帖子中写道,美国商标注册号 2416017 的 JAVASCRIPT 为甲骨文公司所有,而这款包含“JavaScript”字样的APP并未得到甲骨文的授权。

关于国内程序员肉身翻墙

本来是没有倾向谈论这个话题的,但是最近邮件或者微信问我这个问题的国内程序员朋友很多,我在这里一并介绍一下,也算作简单的解答。

Go语言的美好和丑陋

Go确实有一些不错的特性,也就是本文中“好的”部分,但是当我们不使用API或者网络服务器(这是为它设计的)而且将它用于业务领域逻辑的时候,总体而言我发现它用起来笨重且糟糕。但是即使在用于网络编程的时候,在设计和实现方面它也有很多缺陷,这导致它在显而易见的简单的表面之下是危险的。

什么是 Linux “oops”?

Linux 内核正在盯着你,当它检测到系统上运行的某些东西违反了正常内核行为时,它会关闭系统并发出一个“oops”!

请继续重复发明轮子

“重复发明轮子”这句话原本用于比喻无谓的重复劳动,但这个比喻似乎也不那么恰当,因为在人类的历史长河中,轮子已经被重复发明了无数次。

Linux 系统中 sudo 命令的 10 个技巧

从这篇文章可以看出 —— sudo 为普通用户提供了更多受控访问。使用这些技术,多用户可以用安全的方式与 GNU/Linux 进行交互。

600页阿里技术全景图《阿里技术参考图册》开放下载

阿里首次将技术体系全面对外公开:从人工智能到机器智能,从世界一流的互联网基础设施到大数据计算平台、智慧物流运维等标杆技术,从前端到研发效能,基本涵盖了阿里巴巴所有技术兵种,内容涉及业务框架、核心架构、优化算法等。

微软首次推出自主版本Linux系统

微软总裁布拉德·史密斯(Brad Smith)在旧金山的发布会上表示:“在43年之后,这是我们首次宣布,将发布订制的Linux内核。”

用漫画描述各种排序算法,你看懂了吗?

它们最初是为 Sándor 在德国不伦瑞克工业大学开设的算法和数据结构讲座而设计的,作者希望它们能够有更广的用途,因此在网上发布了这个项目,希望能够帮助到教师、学生和有好奇心的人们。

如何绕过Android P非公开API限制

首先需要强调的是,为什么要突破限制,因为安卓中许多技术需求需要使用系统隐藏 API 完成。目前大量的安卓应用都会通过反射或 JNI 方式使用到系统隐藏 API, 这其中包括几乎全部插件化框架,典型的是对 AssetManager 中隐藏 API 的使用。

从 0 开始了解 Docker

或许 XX 震惊部应该这样起名:《了解 Docker,看完这篇就行!》

麻省理工开源了一期深度学习入门级课程

麻省理工学院深度学习和自动驾驶课程,介绍了深度学习的相关知识,以及深度学习在自动驾驶领域的实践和应用。认真补充课程能量,听完之后,就能撸出一台无人驾驶车的算法了。

苏宁易购移动架构演进的青铜时代、白银时代和黄金时代

本文将根据移动发展各个阶段的时代特点,结合移动电商app业务的特质,以移动数据交互全景的视角,讲述苏宁易购android客户端在不同阶段出现的问题,采取的技术应对方案,以及如何衍生出最终的android运行架构。

十年不变的Reddit,花了一年半时间改版,却招来一片骂声

业界媒体《连线》近日发表文章,讲述了老牌网站Reddit改版的幕后故事。该网站在全球拥有3.3亿用户,是个非常活跃的服务,但长期以来,它看上去好像是一个电邮收件箱,缺乏视觉吸引力,对新人来说上手也比较困难。新版针对这些问题做了哪些改进呢?

编程语言 Ruby 如何还能再活 25 年?

自2012年以来,在RedMonk排名中,Ruby在排名前十的编程语言中缓慢下滑。且一直在第十名上下摆动,这反映了Ruby已经发展成熟以及Ruby on Rails Web应用程序框架优势的减弱。

Ubuntu 18.04 可在不重启的情况下安装内核更新

使用 Ubuntu 18.04 LTS 将使得 Linux 内核实时修补功能变得非常容易,实时修补(Live patching)可让你在不重新启动系统的情况下安装和应用关键的 Linux 内核安全更新。

面对Java版本的升级,旧式桌面应用改怎么办?

Java推出了新的发布计划,而Oracle也决定移除JRE中一些旧的和不建议使用的功能。本文将据此介绍一下Java即将发生的变化。由于部分移除的功能对于使用Java开发桌面应用的开发者有重大影响,因此本文将深入讨论桌面领域的变化。

四个月,与苹果审查人员的漫漫斗争路

从2017年11月20日起,到2018年3月28日,向苹果提交审核审核了20个版本,收到了11个3.1.1、3个4.3、5个2.1和2个2.3,一个开发者账号基本报废;最后终于找到了审核问题所在,在3月28日成功上架App Store,完成了这次应用版本更新的使命。

命令行里打 cd 简直是浪费生命

作为工程师,你在命令行下最常打的命令无非就是 cd 与 ls。这些年你浪费了多少时间?
作为一个程序员或者在 shell 中花费大量时间的人,你可能会经常以一种低效率的方式在目录中来回移动,特别是每天经常访问相同目录。

谷歌JavaScript编程风格指导中的13个值得关注的要点

谷歌的程序员大大为了帮助刚入手JavaScript的小白们写出干净、易懂的代码,提供了一个独具特色的教程《Java Script指南》,而本文作者丹尼尔西蒙斯,一位web开发人员/Java爱好者精心总结了谷歌推出的这份指南中最有趣、最有用的十三条规则。

谷歌公布Fuchsia深度解析文档:Fuchsia is not Linux

目前Android和Chrome OS都是使用Linux内核,不过在最新发布的文档中谷歌明确Fuchsia并非基于Linux内核。

有一种加班,叫别人没走

上个周五,等一个在后厂村上班的朋友吃饭。惊讶的发现周五晚上九点后,这里的大楼依旧灯火通明,新浪、百度这些互联网大厂的员工们三三两两的走出大楼。出租车、私家车还有公司班车在十字路口交汇成一团,“滴滴滴……”的喇叭声络绎不绝,演绎着仿佛属于互联网人的交响曲。

让你哭笑不得的电脑病毒

这些病毒被芬兰安全公司F-secure的首席资源官收集并上传到一家名为“网络档案”网站的“恶意软件博物馆”中,其中的破坏性代码已被剪去,只保留了行为代码,让我们得以在网页虚拟机中重温那些“充满活力”的病毒。

十年后的首次翻新:全球第四大网站 Reddit 重新设计的内幕故事

人们总是抗拒改变,任何一家受众广泛的网站只要改版都会激起返祖式的公愤。那么一年流量全球排名第四,样子已经10多年未变的网站如果要进行重新设计的话,那帮用户不知道会作何反应呢?如何才能让它适应新的形势呢?《连线》披露了美版的天涯/贴吧——Reddit改版的幕后故事。

谷歌工程师Sandeep Dinesh分享五个Kubernetes最佳实践

Sandeep Dinesh (@SandeepDinesh) 谷歌云的开发者布道师做了一个演讲,给大家列举了在Kubernetes上运行应用的最佳实践清单;Jordan Pellizzari (@jpellizzari), 是来自Weaveworks的工程师,随后也做了一个分享,内容是在他们使用Kubernetes开发运行SaaS Weave Cloud两年之后学到的经验教训。

Docker 从入门到实践

老式开发是没什么问题的,但是前端因为引入了编译流程,增加了 Webpack 打包构建的行为,当多人共同开发的时候经常会因为内存爆满进程被杀导致打包失败。痛定思痛后为了解决这个问题,我决定将 Docker 引入我们的开发环境

你试过不用 if 写代码吗?

试着不用 if 写代码,是件很有趣的事,而且,万一你领会了什么是“数据即代码,代码即数据”呢?

安卓Java侵权案若成真或牵出Unix/Linux侵权案

全球知名的安卓侵权Java版权案已成为软件知识产权第一大案,这也是继上世纪90年代AT&T诉加州伯克利分校BSD侵权Unix之后,波及范围最广、影响力最大的软件产权案。BSD官司戏剧性地促成了Linux的诞生,而Java案的结局则直接影响API作为软件源代码的产权效力。

[译]为什么 Kubernetes 很酷?

在我使用 Kubernetes 全职工作了三个多月后,我才逐渐明白了为什么我应该使用它。(我距离成为一个 Kubernetes 专家还很远!)希望这篇文章对你理解 Kubernetes 能做什么会有帮助!

现实中的代码评审

我本人特别反对一种颇为常见的观点,就是“一个良好运作的项目,不同的人,应该写出一样的代码”。我非常理解这种观点的初衷,一个良好规范约束的团队中,不同的人写出来的代码应当一致。

[译文]Java 和 Scala 的类型系统是不健全的

诸多研究者在研究一门复杂的语言的时候,选择使用一些简化的模型来进行抽象,并验证这个模型的某个核心功能,却忽视了不同的特性交织在一起的时候产生的效果。本文所发现的不健全的例子则是多个特性进行叠加之后的结果。

关于 ECMAScript 2015(ES6)的一些有用的提示和技巧

EcmaScript 2015(又名 ES6 )已经发布好几年了,各种新功能现在都能以灵巧的方式使用。我想列出并讨论其中的一些我认为会对大家有所帮助的实用功能。

阮一峰:彩票的数学知识

2005年2月,美国的一个彩票品种,就出现了漏洞,被麻省理工学院的学生发现了。随后的七年,这个学生反复购买这个品种,一共赚到了300万美元。本文介绍他怎么做的,以及其中的数学原理。我依据的材料,主要来自数学教授 Jordan Ellenberg 在斯坦福大学的一次演讲

新华三的“加班事件”说明码农的时代已经过去?

3月12日,新华三(H3C)总裁兼CEO于英涛突然在微博上连续向公司的研发人员“开炮”,开炮的内容围绕“研发人员加班费”,微博内容是这样的——

K-Means算法的10个有趣用例

K-means算法具有悠久的历史,并且也是最常用的聚类算法之一。K-means算法实施起来非常简单,因此,它非常适用于机器学习新手爱好者。首先我们来回顾K-Means算法的起源,然后介绍其较为典型的应用场景。

八个Docker的真实应用场景

下面是我总结的一些Docker的使用场景,它为你展示了如何借助Docker的优势,在低开销的情况下,打造一个一致性的环境。

Java 10 var关键字深度解读

Java 10如约而至。虽然这一版本带来的特性并不是非常多,但其中有一项仍然成为大家关注的热点,它就是局部变量类型推断(JEP 286)。事情就是这么简单。不过,这篇文章将会讨论更多有关var的内容,比如什么时候可以用var、什么时候不能用var、var对可读性的影响,以及为什么没有使用val。

谷歌不能杀死安卓 但可以让它“冬眠”

虽然之前也有不少媒体或者评论者宣称Android品牌已经被谷歌废弃了,但它似乎总是很快又重新回到人们的视野。

谷歌中国推出了机器学习自学课程

机器学习速成课程中的编程练习是通过 TensorFlow 并使用 Python 进行编码的。您无需拥有使用 TensorFlow 的任何经验,但应该能够熟练阅读和编写包含基础编程结构(例如,函数定义/调用、列表和字典、循环和条件表达式)的 Python 代码。

蒙特卡罗树搜索之初学者指南

蒙特卡罗树搜索由RémiCoulom于2006年作为Crazy Stone的一个组成部分引入,令人印象深刻的是其出色的引擎的能力,同时也是Alpha Go / Zero的核心组件。蒙特卡罗树搜索主要目的是:给出一个状态来选择最佳的下一步。我们回顾AlphaGo / Zero,试图解释在Alpha Go中使用了哪些蒙特卡罗树搜索变体。

每日站会并不是只是站在开会就行了:每日站会范例

在站会期间,与会者得知道谁应该先发言。由协调人决定谁先发言是与自我组织对抗的、虽然微妙、但是确切的力量。在不需要干预的情况下,团队也应该知道谁先发言。

Linux 4.16 正式发布:不再支持 8 种 CPU 架构,内核减少了 450000 行代码 !

不太了解这八种CPU体系结构也没什么好丢人的:它们从Linux的支持体系结构名单中消失的原因是,内核开发者发现再也没有人使用它们来运行Linux了。

揭秘《阿里巴巴Android开发手册》

阿里继去年推出Java手册之后,在春节期间推出的《阿里巴巴Android开发手册》的目的是什么呢?为此,我们第一时间采访了阿里巴巴高级无线开发工程师、手册的主要作者之一芸墨,为大家揭开其背后创作故事,并在此与大家分享采访结果。

10个有趣的Linux命令和Shell 脚本

shell 脚本可以使用一些 GUI 组件(菜单、警告框、进度条等),你可以控制终端输出、光标位置以及各种输出效果等等。利用下面的工具,你可以构建强壮的、可交互的、对用户友好的 UNIX/Linux bash 脚本。

Python3的这些新特性很方便

就是Python2和Python3,两个版本互不兼容,而且Github上Python2的开源库有很多不兼容Python3,导致大量的Python2的用户不愿意迁移到Python3。   Python3在很多方面都做出了改变,优化了Python2的很多不足,标准库也扩充了很多内容,例如协程相关的库。现在列举一些Python3里提供的功能

十个 PHP 开发者最容易犯的错误

PHP 语言让 WEB 端程序设计变得简单,这也是它能流行起来的原因。但也是因为它的简单,PHP 也慢慢发展成一个相对复杂的语言,层出不穷的框架,各种语言特性和版本差异都时常让搞的我们头大,不得不浪费大量时间去调试。这篇文章列出了十个最容易出错的地方,值得我们去注意。

Java 的 Kotlin 特性愿望清单

Kotlin 对于现代化的多平台应用是一种静态类的编程语言。尽管我已经从事 Java 开发有相当长的时间,但是在做一个数据-匿名化的项目时使我感觉到 Java 需要从 Kotlin 引入一些东西。下面是一些我愿意看到的在 Java 中占有一席之地的 Kotlin 特性。

再创新高!华为员工2017年平均年薪70万

以18万员工计算,不计算离职计划项目下金额,仅以支付雇员工资、薪金及其他福利金额、时间单位计划项目下金额计算,2017年华为员工人均年薪酬为68.89万元。

升级到 Ubuntu 18.04 LTS 的理由,大波新特性到来

我们为什么要升级到 Ubuntu 18.04 LTS 呢? 让我们来看看为大家总结的 X 大理由。

所有程序员都应该遵守的11条规则

我的这些准则都是为我自己设定的,不过总的来说,其他程序员遵守这些准则也是有百利而无一害。这些准则更多的来说不算的上是“规则”,而更应该称作“指导方针”。

如何在Linux中查找最大的10个文件

本教程中,我们将教您如何使用以下四种方法在 Linux 系统中查找最大的前 10 个文件。

雷军凌晨2点下班、刘强东睡4小时,库克3点45起床,你呢?

他每周的工作时间超过100个小时,在非常忙碌或者有重大难题需要攻克的时候,甚至干脆睡在工厂或办公室睡袋中,与工人同吃同住,每天夜里接近3点才会躺下。

人工智能、机器学习和深度学习之间的差异

随着人工智能的巨大进步 – 从无人驾驶汽车领域的进步,到掌握扑克和围棋等游戏,以及自动化客户服务交互 – 这项先进技术将为企业带来革命性的变化。但是,AI,机器学习和深度学习这两个术语经常被随意使用,并且可以互换使用,因为每种技术之间存在重大差异。以下是这三种工具之间差异的指南,可帮助您掌握机器智能。

CSS中新型类型化对象模型的JavaScript交互API介绍

作为 Houdini 工作的一部分,新的 CSS 类型对象模型(Typed OM), 通过给 CSS 值添加类型、方法和适当的对象模型来进行扩展。值不再是字符串,而是作为 JavaScript 对象的值,用于提升 CSS 的性能和更加合理的操作。

用格式塔原理分析页面中的用户体验

我一直认为心理学和设计是包含用户体验的。每当我们的目标是解决需求的时候,我们的专业就需要有同理心。随着我继续深入研究心理学进入设计领域时,我偶然发现了格式塔原则。

左耳朵耗子:从亚马逊的实践,谈分布式系统的难点

从目前可以得到的信息来看,对分布式服务化架构实践最早的应该是亚马逊。因为早在 2002 年的时候,亚马逊 CEO 杰夫·贝索斯(Jeff Bezos)就向全公司颁布了下面的这几条架构规定(来自《Steve Yegge 对 Google 平台吐槽》一文)。

来算算程序员们这些年所欠下的债!

小编在发这篇文章的时候真的是有点瑟瑟发抖,因为我也是程序员。PS:别打我

被加班逼到要用猝死换休息的程序员们

不向“过劳死”“加班狂”学习,也是一种权利。如果不能让员工产生认同感,不能给员工成长,不能在加班的基础上给予应有的回报,那么盲目的加班只会让公司和员工之间的关系恶化。

JavaScript 机器学习编程指南

现在我可以听到人群的叫喊:JavaScript不适合机器学习。你也许是对的。但是有一些原因可以解释,为什么可以使用 JavaScript 去学习机器学习,不仅仅是因为你是一个 Web 开发者。我个人认为它有巨大的潜力。这就是为什么我试图让web开发人员更容易访问这个主题。

PHP的未来: JIT 编译

一直以来,我心中有一个疑问,就是 JIT compilation 为何一直难以在 Perl 或 PHP (Zend Engine) 这类 3P Language 中实现?继 LLVM 开源后,陆续听到许多 Language VM 尝试整合 LLVM 试验并得到很好的测试数据,却一直没有被整合到正式版本中,原因究竟为何?而 Lars Bak 带领团队开发的 V8 — JavaScript JIT Compiler 却在几年内直接成功达阵。

机器学习中的置信区间与置信度

机器学习本质上是对条件概率或概率分布的估计,而这样的估计到底有多少是置信度?这里就涉及到统计学里面的置信区间与置信度,本文简要介绍了置信区间这一核心概念,它有助于我们从直观上理解评价估计优劣的度量方法。

美国联邦巡回上诉法院裁定Android,谷歌或赔88亿美元

谷歌可能要求审理该案的三名上诉法院法官重新考虑他们的裁定,或把这一问题交由该法院的所有法官裁定。失利的一方可能要求最高法院审理该案。

核心代码从Python换成Go语言,提速30倍!

Go是编写微服务的伟大语言。它的速度非常快,具有原生并发原语,对现有工具的卓越支持,并且开发起来非常有趣。与Ruby或Python等脚本语言相比,Go语言可能需要更长的时间,但维护成本要低得多,而且将节省大量时间优化代码。

一个十几年程序员给所有新老程序员的忠告

吉日噶拉(在外企、上市公司工作过,自己也创业失败过,遇到过很多失败挫折,甚至露宿街头,但是最后还是挺过来了),是一个十几年的程序员了,里面介绍了他的相关经历,以及他的一下经验,无论是对刚入门的程序员,还是工作了十年八年的程序员都有一些经验值得借鉴学习

从java5到java8出现的新特性总结

要了解一门语言,最好的方式就是要能从基础的版本进行了解,升级的过程,以及升级的新特性,这样才能循序渐进的学好一门语言。以下介绍一下JDK1.5版本到JDK1.7版本的特性及JDK1.8部分特性。

AlphaGo背后的力量:蒙特卡洛树搜索入门指南

,蒙特卡洛树搜索是在完美信息博弈场景中进行决策的一种通用技术,除游戏之外,它还在很多现实世界的应用中有着广阔前景。本文中,我们会以 AlphaGo 为例子,对这一方法进行详细介绍。

程序员不一样的浪漫

一位网名叫做 LA pike 的程序员,他为了向交往已久的女友求婚,利用自己的专长,写出了一个以两人的回忆为主题的闯关游戏。他邀请女友来玩游戏,女友在不知情的状况下,开始了他设计的闯关游戏。

什么样的代码规范才能得到程序员的认可?

程序员是一群个性独特的人,唯有你定义的东西能够服众,才能被长久传承下去。愿我们能在最好的年华做最美好的事,谨以此文献给在路上的各位程序员们。

Golang 新手可能会踩的 50 个坑

Go 是一门简单有趣的编程语言,与其他语言一样,在使用时不免会遇到很多坑,不过它们大多不是 Go 本身的设计缺陷。如果你刚从其他语言转到 Go,那这篇文章里的坑多半会踩到。

GPL侵权诉讼被驳回,Linux之父Torvalds又要发飙了!

万万没想到的是,Patrick McHardy剑走偏锋,在与软件自由保护协会(SFC)进行了一番交流之后,就放弃了这种常规的处理流程,选择自行起诉,并最终通过德国法院起诉了违反 GPLv2 协议以谋取私利的公司。

哪些Linux发行版是适合新手的?哪些是不适合的?

我在本文中将介绍几款最适合新用户的Linux发行版。选择这些发行版的标准是易用性,而不是“学习Linux”的潜力。我希望一劳永逸地摈弃这个误区:所有使用Linux的人都需要非常熟悉Linux是如何工作的。使用了多年Linux后,我可以肯定地说,随着时间的推移,这个误区会不攻自破。

报复与威胁,碰瓷程序员的诈骗之道

「程序员的快乐」的挑衅因此了一种莫名的喜感,因为喜剧来自于荒诞的展示,而他挑衅赵长鹏在币圈中人看来正如堂吉诃德挑战风车一样荒诞。

初识Java 9模块化编程

本文主要介绍了什么是Java9模块化编程。首先从Java9为什么迟迟不能发布说起,然后引申出什么是模块化编程,接着系统性地介绍模块化编程的系统目标、特点、要求,再通过JDK的模块化案例介绍,让读者能够了解JDK的发展趋势

别再骗我站着办公了,这可能是史上最大骗局

事实上,许多科学研究反而认为,立式办公桌会导致下背疼痛和其他负面影响,比如对骨骼和循环系统造成压力,并增加深静脉血栓和静脉曲张的风险。如今,一份新研究报告指出,立式办公桌还会对我们的认知能力产生消极影响。

看我如何绕过限制访问到Google内部管理系统

正当我苦苦思索如何绕过谷歌安全限制时,我就想“能不能问问谷歌自己如何绕过它自己的限制呢?”,hahahaha,谷歌一下啊。于是,我就用谷歌搜索了大量“绕过谷歌IP限制的方法”,有一篇路径为/blog/forum/comments的文章中透露

如何在 Linux 上运行你自己的公共时间服务器

最重要的公共服务之一就是报时,但是很多人并没有意识到这一点。大多数公共时间服务器都是由志愿者管理,以满足不断增长的需求。这里学习一下如何运行你自己的时间服务器,为基础公共利益做贡献。

谁会从 Google 手里偷走 Android

今天我将要讨论一下 Android :仅仅是我作为一个外行和业余爱好的 Android/IOS 开发者的个人观点。正如人们所知道的,好的事情不会连续降落在你的头上,我可以很保证地说这篇博文不会火起来的。只有你我看到。

Docker面对Java将不再尴尬:Java 10为Docker做了特殊优化

在过去的几年中,Docker一直是非常受欢迎的容器技术,而原因也很简单。将基于JVM的应用程序容器化部署,可以为应用程序提供一致的开发、部署环境以及零耦合的环境隔离。但不幸的是,目前的JVM在Linux容器内运行事务并不那么简单。因此,为了优化一些问题,Java 9和10做了很多非常必要的改进,这里我们重点说三点。

为什么Ubuntu移动操作系统会失败?

现在 Ubuntu 手机与平板已经远去了,这个项目为什么失败?从中能学到什么?我有一些个人之见可以供您参考。

谷歌移动UI框架Flutter到底强大在哪里?

2018年2月,Flutter推出了第一个Beta版本。Flutter是什么呢?它是Google使用Dart语言开发的移动应用开发框架,使用Dart代码构建高性能、高保真的iOS和Android应用程序,虽然Flutter不是标准的,但是谷歌希望它看上去是原生的。

我只是一名平庸的开发者

我们说什么,机器就做什么。即便是错的,它们也毫不迟疑。所以,软件开发中的主要问题不是机器,在于开发人员的心智能力。而这玩意提升的空间是非常有限的。所以,我们——作为平庸的开发人员——不能将有限的脑力浪费在创建复杂的抽象、模糊算法或不可读的长代码块上。你需要保持一切简单明了。

JDK 10 的 109 项新特性

我看过各种关于 JDK10 新特性的博客,但是它们都倾向于关注通过 JEPS 定义的大方面。这篇博文,我将看看是否可以罗列出 JDK10 中已经发生变化的方方面面(包括新增的和剔除的)。

看吧,这就是现代化 PHP 该有的样子

文章的标题真是自命不凡,不是吗?是的,虽然我们使用 PHP 工作很多年,但是我们能够说出哪些是最佳实践和最好的工具吗?我不能,但是我将要去这么做。

2018年前端流行哪些技术?

如果项目要求支持低版本的 IE 的话,就用较传统的jQuery,Bootstrap,jQuery插件/组件以及类似 Knockout.js 能够提供数据绑定的 JS 库,再加上 require.js + gulp 或者 fis3 做模块化和自动化构建。

程序员,如果一小时后永久断网,你会干嘛?

看下面这只恐龙是不是很可爱,可是它已经灭绝了,所以 Google 告诉我们,没网我们会灭绝。看来断网比断电恐怖多了,都回到史前了。

程序员发朋友圈的七种范式

看完这个几个范式,是不是更了解看似高冷的程序员大大们一丢丢呢?

不上进的程序员和不称职的领导

我的这篇文章很受欢迎,到目前为止阅读次数已经超过了 6.2 万次。然而很难过的是,我没有收到任何经理或领导对这个故事的回应。似乎你们这些人没领会什么意思,那么我只好直言不讳了。

IBM工程师 Phil Estes 分享他和 linux 的故事

IBM 使用 Linux 的频率迅速增加。由于 Dan Frye 的远见和坚持,IBM 在 Linux 上下了“一亿美元的赌注”,在 1999 年创建了 Linux 技术中心(LTC)。在 LTC 里面有内核开发者、开源贡献者、IBM 硬件设备的驱动程序编写者,以及各种各样的针对 Linux 的开源工作。

Kotlin标准函数run,with,let,also和apply的使用和区别

和Java相比,在Kotlin中提供了不少新的特性。这次我们就来聊一聊Kotlin的一些通用的扩展标准函数run,with,let,also和apply。对于这五个标准函数它们都存在于Kotlin的源码标准库当中,也就是在Standard.kt文件当中。

程序员如何摆出有个性的电脑桌面图标

对于爱装逼的人来说,电脑桌面图标摆放可不能随意。请看下面的示范:

600页阿里技术全景图《阿里技术参考图册》开放下载

阿里首次将技术体系全面对外公开:从人工智能到机器智能,从世界一流的互联网基础设施到大数据计算平台、智慧物流运维等标杆技术,从前端到研发效能,基本涵盖了阿里巴巴所有技术兵种,内容涉及业务框架、核心架构、优化算法等。

从 0 开始了解 Docker

或许 XX 震惊部应该这样起名:《了解 Docker,看完这篇就行!》

Docker 从入门到实践

老式开发是没什么问题的,但是前端因为引入了编译流程,增加了 Webpack 打包构建的行为,当多人共同开发的时候经常会因为内存爆满进程被杀导致打包失败。痛定思痛后为了解决这个问题,我决定将 Docker 引入我们的开发环境

阮一峰:彩票的数学知识

2005年2月,美国的一个彩票品种,就出现了漏洞,被麻省理工学院的学生发现了。随后的七年,这个学生反复购买这个品种,一共赚到了300万美元。本文介绍他怎么做的,以及其中的数学原理。我依据的材料,主要来自数学教授 Jordan Ellenberg 在斯坦福大学的一次演讲

新华三的“加班事件”说明码农的时代已经过去?

3月12日,新华三(H3C)总裁兼CEO于英涛突然在微博上连续向公司的研发人员“开炮”,开炮的内容围绕“研发人员加班费”,微博内容是这样的——

K-Means算法的10个有趣用例

K-means算法具有悠久的历史,并且也是最常用的聚类算法之一。K-means算法实施起来非常简单,因此,它非常适用于机器学习新手爱好者。首先我们来回顾K-Means算法的起源,然后介绍其较为典型的应用场景。

左耳朵耗子:从亚马逊的实践,谈分布式系统的难点

从目前可以得到的信息来看,对分布式服务化架构实践最早的应该是亚马逊。因为早在 2002 年的时候,亚马逊 CEO 杰夫·贝索斯(Jeff Bezos)就向全公司颁布了下面的这几条架构规定(来自《Steve Yegge 对 Google 平台吐槽》一文)。

核心代码从Python换成Go语言,提速30倍!

Go是编写微服务的伟大语言。它的速度非常快,具有原生并发原语,对现有工具的卓越支持,并且开发起来非常有趣。与Ruby或Python等脚本语言相比,Go语言可能需要更长的时间,但维护成本要低得多,而且将节省大量时间优化代码。

一个十几年程序员给所有新老程序员的忠告

吉日噶拉(在外企、上市公司工作过,自己也创业失败过,遇到过很多失败挫折,甚至露宿街头,但是最后还是挺过来了),是一个十几年的程序员了,里面介绍了他的相关经历,以及他的一下经验,无论是对刚入门的程序员,还是工作了十年八年的程序员都有一些经验值得借鉴学习

从java5到java8出现的新特性总结

要了解一门语言,最好的方式就是要能从基础的版本进行了解,升级的过程,以及升级的新特性,这样才能循序渐进的学好一门语言。以下介绍一下JDK1.5版本到JDK1.7版本的特性及JDK1.8部分特性。

AlphaGo背后的力量:蒙特卡洛树搜索入门指南

,蒙特卡洛树搜索是在完美信息博弈场景中进行决策的一种通用技术,除游戏之外,它还在很多现实世界的应用中有着广阔前景。本文中,我们会以 AlphaGo 为例子,对这一方法进行详细介绍。

Docker面对Java将不再尴尬:Java 10为Docker做了特殊优化

在过去的几年中,Docker一直是非常受欢迎的容器技术,而原因也很简单。将基于JVM的应用程序容器化部署,可以为应用程序提供一致的开发、部署环境以及零耦合的环境隔离。但不幸的是,目前的JVM在Linux容器内运行事务并不那么简单。因此,为了优化一些问题,Java 9和10做了很多非常必要的改进,这里我们重点说三点。

我只是一名平庸的开发者

我们说什么,机器就做什么。即便是错的,它们也毫不迟疑。所以,软件开发中的主要问题不是机器,在于开发人员的心智能力。而这玩意提升的空间是非常有限的。所以,我们——作为平庸的开发人员——不能将有限的脑力浪费在创建复杂的抽象、模糊算法或不可读的长代码块上。你需要保持一切简单明了。

2018年前端流行哪些技术?

如果项目要求支持低版本的 IE 的话,就用较传统的jQuery,Bootstrap,jQuery插件/组件以及类似 Knockout.js 能够提供数据绑定的 JS 库,再加上 require.js + gulp 或者 fis3 做模块化和自动化构建。

不上进的程序员和不称职的领导

我的这篇文章很受欢迎,到目前为止阅读次数已经超过了 6.2 万次。然而很难过的是,我没有收到任何经理或领导对这个故事的回应。似乎你们这些人没领会什么意思,那么我只好直言不讳了。

为什么我要从 Angular 迁移到 React 和 Redux ?

我对 Angular 又爱又恨已经有一段时间了。这很有趣,因为我正在学习,而且在做一个简单的应用程序时,我被卡住了好几周。我注意到,即使在制作最简单的特性的过程中,我甚至不确定它是否值得使用 Angular 。我彻底掌握了基本的基本原理,这足以使小的特性发挥作用。但是,它没有成功。更糟糕的是,我甚至根本不使用 Javascript 。它更像是一种完全不同的语言。

编程语言中的一些邪恶咒语,千万不要用

下面是我最喜欢的、惊奇的、滑稽的并仍然有效的咒语集合。一般来讲,利用这些古怪的行为被视为坏事,因为代码不应该出乎意料。

了解这15条命令,你将掌握 Linux 文件传输的所有内容

了解这15条命令,你将掌握 Linux 文件传输的所有内容

为什么我会被Kubernetes“洗脑”?

Kubernetes 已成为部署分布式应用的标准方式。在不远的将来,任何新成立的互联网公司都将用到 Kubernetes,无论其是否意识到这点。许多旧应用也正在迁移到 Kubernetes。

同样是闪存,为什么固态硬盘比U盘快?

在固态硬盘问世之前,优盘曾被用作Windows ReadyBoost加速,提升机械硬盘随机读写能力。而在固态硬盘诞生后,又再次强势秒杀优盘。同样使用闪存作为存储介质,固态硬盘和优盘有什么区别?为什么固态硬盘会比优盘快的多?存储极客今天就来解答这两个看似简单却又复杂的问题。

[译]用Java创建你的第一个区块链-part2:可交易

区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

不要用Java的语法思维来写Kotlin

如果你是像我一样是一名优秀的Java开发者^_^,而且已经想用kotlin来实现你的程序,那么,抱歉!不要用Java的语法思维来写Kotlin,不要让kotlin的优雅埋没。如果你没有Java开发经验,下面的内容也对你会有帮助。。。

区块链很火,但你知道它的一些致命缺陷吗?

我们千万不要被一时的区块链热而冲昏了头脑。应该冷静地看待和对待这件事情。这对投资或创业的人都大有帮助。

JavaScript反调试技巧

在这篇文章中,我打算跟大家总结一下关于JavaScript反调试技巧方面的内容。值得一提的是,其中有些方法已经被网络犯罪分子广泛应用到恶意软件之中了。

区块链技术有哪些主要流派?

本文试图对区块链有关技术流派和主流平台进行一个概览,作为学习区块链技术体系的导览,意在抛砖引玉,促进区块链开发社区的讨论与共识。

为什么说Flutter是革命性的?

与任何新系统一样,用户想知道Flutter有什么与众不同之处,“Flutter有什么新的或者令人兴奋的东西吗?”,这是一个合理的问题,本文将从技术的角度回答Flutter有什么东西让人兴奋,而且给出它为什么让人兴奋的原因。

Kubernetes效应

Kubernetes(k8s)在很短的一段时间内走过了很长的一段路。仅仅两年以前,它还需要与CoreOS的Fleet、Docker Swarm、Cloud Foundry Diego、HashiCorp的Nomad、Kontena、Rancher的Cattle、Apache Mesos、Amazon ECS等进行竞争,来证明自己比那些产品都要优秀。

我只想安静地写代码,领导却跟我谈大局、讲奉献

为什么你们这帮程序猿整天就只想写代码?难道做什么不比怎么做更重要吗?但凡你对公司有点奉献精神对业务有点关心的话都不会这样,一切都是你的错,对吧?不对,错不在程序员,错在你们这帮领导。

阮一峰:HTTP/2 服务器推送(Server Push)教程

HTTP/2 协议的主要目的是提高网页性能。头信息(header)原来是直接传输文本,现在是压缩后传输。原来是同一个 TCP 连接里面,上一个回应(response)发送完了,服务器才能发送下一个,现在可以多个回应一起发送。服务器推送(server push)是 HTTP/2 协议里面,唯一一个需要开发者自己配置的功能。其他功能都是服务器和浏览器自动实现,不需要开发者关心。

将于本月发布的Java 10中会改变你写代码的方式的新特性

尽管引入var变量会使代码可读性变得更糟,但此次的新特性为开发者提供了一种在编写复杂表达式的时候寻求了一个新的契机。

谷歌中国推出了机器学习自学课程

机器学习速成课程中的编程练习是通过 TensorFlow 并使用 Python 进行编码的。您无需拥有使用 TensorFlow 的任何经验,但应该能够熟练阅读和编写包含基础编程结构(例如,函数定义/调用、列表和字典、循环和条件表达式)的 Python 代码。

要嫁就嫁程序猿——钱多话少死的早

我是一个苦b的程序员,今晚加班到快通宵了,困得快睁不开眼了,女上司很关心,问我要不要吃宵夜。我没好气地说,宵夜就算了,能让我睡一觉就行了。女上司红着脸说了句讨厌

有人向我反馈了一个bug

有人向你反馈了一个bug。 “26楼会议室的灯亮着。它需要被熄灭。”bug的备注里写道“你应该能在5分钟内搞定,只要按一下开关就好了。“ 你去了26楼的会议室。灯的确亮着,但房间里没有灯的开关。

[译]用JavaScript写一个区块链

几乎每个人都听说过像比特币和以太币这样的加密货币,但是只有极少数人懂得隐藏在它们背后的技术。在这篇博客中,我将会用JavaScript来创建一个简单的区块链来演示它们的内部究竟是如何工作的。我将会称之为SavjeeCoin!

做程序猿的老婆应该注意的一些事情

经过初步了解,配电脑、修电脑、装系统等都可以找程序猿来干。而且程序猿不会油嘴滑舌的。很多妹子也都这么想的,于是大学四年,程序猿钻了不少次各种妹子宿舍,一去就一下午,他说装系统太慢,我暂且就信了吧。

哪个中年IT男不是一边面对危机,一边咬牙硬抗

因为“内向”,让这部分中年IT男在岗位上有着太多的难言之隐。只有单一的专业技术,也让他们面对突如其来的“职场危机”时,容易乱了阵脚。在转行与不转行之间摇摆不定的他们,承受了“职场危机”中太多压力,以至于丝毫意外都能够让他们的情绪瞬间崩塌。

高盛区块链79页完整报告:从理论到实践!【中文版】

我们阐明区块链的特性最适应现有的哪些商业问题,并量化其如何改变产业现状。我们突出展示那些将探索或赋能这一进程的私有和上市企业——并分析区块链可以创造哪些新的利润池,或是破坏哪些旧的利润池。

[译]Java创建你的第一个区块链-part1

区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

为什么有些大公司技术弱爆了?

今年年初,到一家互联网公司实习,该公司是国内行业龙头。
不过技术和管理方面,却弱爆了。

2018 年,我们该如何使用 JavaScript?

从命令行工具和 webpack 到 TypeScript,Flow 等其他工具,我们不妨来讨论一下在 2018 年该如何使用 JavaScript。

如果编程语言是种武器

对程序员来说,编程语言就是武器,但有的武器好用,有的武器不好用,有的武器甚至会杀了自己

《自然》杂志:中国人越来越沉迷于对着一个叫“区块链”的东西胡言乱语

起初,《自然》杂志以为在2018年春节前后中国发生了一场瘟疫,但很快就改变了这一看法。除了精神亢奋无法入睡,那里的人们身体还算健康。不过,他们越来越沉迷于对着一个叫“区块链”的东西胡言乱语,根本停不下来。

聊聊HTTPS和SSL/TLS协议

要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识。1. 大致了解几个基本术语(HTTPS、SSL、TLS)的含义2. 大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接”)3. 大致了解加密算法的概念(尤其是“对称加密与非对称加密”的区别)4. 大致了解 CA 证书的用途

腾讯关于微信和移动开发的10大开源项目

Tinker是微信官方的Android热补丁解决方案,它支持动态下发代码、So库以及资源,让应用能够在不需要重新安装的情况下实现更新。当然,你也可以使用Tinker来更新你的插件。

周鸿祎:很多程序员一看就知道不会创业

关于程序员创业,我之所以愿意谈我的观点,是因为我是程序员出身,也是从小公司做起来的,我自认为对待很多程序员个人包括共享软件作者和一些小网站还是很好的。我希望分享一些经验和体会。

白话区块链加密货币中的零知识证明(Zero-Knowledge Proof)

老钱觉得原文是零知识证明方面写的最好最接地气的科普类的文章。所以想要翻译一下,顺便在原文基础上加上一些自己的解读。想要了解零知识证明,或者匿名性极强的区块链加密货币ZCash的朋友不妨读一读。

十大编程算法助程序员走上高手之路

编程算法,是完成程序逻辑的主要途径。本文推荐十大编程算法,有利于程序员的编程逻辑。

游戏开发中防外挂的一些技术技巧

对于一个要上线的游戏,防外挂是必须的,历史上因为外挂而造成大量玩家流失的游戏数不胜数。随着游戏研发技术的发展,对外挂的预防业内其实做的已经越来越好了。下面总结一下防外挂的基础知识,以及我们的移动模块为防外挂做了哪些工作。

成人网站PornHub爬虫分享(一天可爬取500万以上的视频)

10个线程同时请求,可达到如上速度。若个人网络环境更好,可启动更多线程来请求,具体配置方法见 [启动前配置]