为什么说开源可以提高程序员的编程技能?

为什么说开源可以提高程序员的编程技能?

我已经写了很多年的软件。最近我意识到,我越涉及(致力于,结合于等)开源技术,我写出来的代码就更好。这不由地让我疑惑起来:难道里面有什么相关性或因果关系吗?

Android 为什么选择了Java

Android 为什么选择了Java

2007年Android 刚刚出生的时候, 看到开发语言是Java , 我很高兴, 因为想在手机端编程的话不用去学Object-C这个看起来怪怪的语言了, 但另一方面我心里也是打了个大大的问号 :因为在很多人眼里, Java 是很慢的, 用Java 来开发手机端的应用, 尤其是游戏, 到底行不行?

都是干货!谷歌Daydream团队分享VR应用3大设计原则

都是干货!谷歌Daydream团队分享VR应用3大设计原则

谷歌指派了四名员工(包括两名工程师和两名设计师)花费 30 个星期设计了 60 款测试应用,并在每个周一邀请公司内部的志愿者进行测试。现在,Daydream 团队对外分享了他们在设计过程中吸取的经验教训,VR 次元独家整理报道。

回顾15年程序生涯,我总结的7点经验

回顾15年程序生涯,我总结的7点经验

我自己也是,眼瞅着毕业快 15 年了,15 年间从一个刚毕业的菜鸟,成长为技术骨干,做到架构师的职位,回头看看,当年听取亲戚的一句话,误入计算机行业,看来并没有走错,编程虽然枯燥辛苦,但是如果真的感兴趣,你就能体会到其中的乐趣,并且获得可观的回报。

创业公司里的程序员需具备这7个特质

创业公司里的程序员需具备这7个特质

这些技能对更成熟的公司都有用;只是在创业公司更加重要,因为时间很有限。此外,缺乏这些技能并不一定意味着你是一个糟糕的工程师。它只是意味着你可能不太适合在创业公司。但是,如果你确定是一个很好的创业公司工程师,不要让这些阻止你。找出行动的计划去改进这些技能。

招程序员的最佳方式是这样的?

招程序员的最佳方式是这样的?

那天晚上,我正在回想面试中间我最出彩的表现。让我那次表现特别有趣的,不是我做得『有多么好』,而是我『如何做得很好』。以及对自己以及整个过程不满意的地方。

程序员的走与留?

程序员的走与留?

初级开发人员在他们的职业生涯早期必须考虑的一个大问题就是,他是该离开还是留下。我在我职业生涯的早期发现,相对于我的同事我所得的报酬过低,而这仅仅是因为他们工作的年限比较长。报酬低也就算了,然而公司分配给我的工作量却是相同的,于是我的不满迅速增长。

《神秘的程序员们》漫画46:产品讨论会上的神奇事件

《神秘的程序员们》漫画46:产品讨论会上的神奇事件

《神秘的程序员们》漫画46:产品讨论会上的神奇事件

程序员讨厌项目经理的5个原因

程序员讨厌项目经理的5个原因

我有一个很好的朋友,他是一个经验丰富的数据架构师。由于我一直在写关于 IT 项目管理的文章,因此,我就问他有没有考虑过担任 PM 的工作。对此,他的回答是:“绝不做 PM。”我进一步地探究了他的理由,并且找出了令他不喜欢项目管理和项目经理的 5 个原因。

为什么给类、方法、变量命名这么难?

为什么给类、方法、变量命名这么难?

变量的名字必须区分大小写,可以是任何合法的标识符——一个不限长度的Unicode字符和数字序列,但需要以字母、美元符号“ $ ”或者下划线“_”开头。是的,你搜“怎样给变量命名?”就会搜到上面这东西。编程语言的创造者和社区提出了很多语法相关的规则和惯例。

Google是如何做到从不宕机的?

Google是如何做到从不宕机的?

连接中断而用不上Google的情况;但是Google的基础性在线服务——从搜索引擎到Gmail再到Google Docs等等——几乎永远垂手可及。根据Google官方的数据,2015年该公司旗下的Google App套件在99.97%的时间里都处于可用状态。也许我们认为这是理所当然的,但它的确是一个了不起的事实;而全世界数十亿的Google用户似乎从来没有停下来想想:Google是如何把一件如此激动人心的事情处理得如此波澜不惊的。

Java中的动态代码编程

Java中的动态代码编程

Java*统一表达式语言(英语:Unified Expression Language,简称JUEL*)是一种特殊用途的编程语言,主要在Java Web应用程序用于将表达式嵌入到web页面。Java规范制定者和Java Web领域技术专家小组制定了统一的表达式语言。JUEL最初包含在JSP 2.1规范JSR-245中,后来成为Java EE 7的一部分,改在JSR-341中定义。

一个高级PHP工程师所应该具备的 php

一个高级PHP工程师所应该具备的

很多面试,很多人员能力要求都有“PHP高级工程师的字眼”,如果您真心喜欢PHP,并且您刚起步,那么我简单说说一个PHP高级工程师所应该具备的,希望给初级或已经达到中级的PHP工程师一些帮助。

我的开源项目从 0 到 1024 的过程

我的开源项目从 0 到 1024 的过程

第一次做开源项目,从0到1024个star数量经历了一个多月的开发和维护,从新手到入门(至于之后的阶段,我也还在摸索中)。在这里我就来分享一下我的经历吧,希望能够对想做开源但是没行动的小伙伴有所帮助。

15 个 Android 通用流行框架大全

15 个 Android 通用流行框架大全

15 个 Android 通用流行框架大全

儿童编程语言的进化史

儿童编程语言的进化史

随着机器人技术的应用和其影响力的扩大,教师们自己现在也需要学习模块化编程。但在这些方法被越来越多人采用的同时,我们应该思考的是:这是否就是正确的前进方向?又或者是不是还有其它更好的方法可以帮助孩子们学习计算机呢?

程序猿,怎样才能写好程序?

程序猿,怎样才能写好程序?

我和狗叔回忆,我们好像都没有正经上过什么“把程序写好”的培训班,也没有《九阴真经》之类的宝典。但是我们又都看到,很多程序员写的程序是不合格的,大量基础规范都没有遵循(更可怕的是这样的程序很可能还在服务我们每天的生活)。那么,优秀的程序员,是从哪里学到把程序写好的知识的呢?

简述百年计算机科学

简述百年计算机科学

我有些同事知道了我最近对学术论文有所研究后,都在问我建议他们从哪里开始。看了Michaels Feathers和Fogus做的一张类似的清单后,我也编辑了一份自认为代表了过去100年计算机科学发展历程的清单。在编辑的时候,我采用了如下的选择标准: 这篇论文必须改变了世界 这篇论文必须颠覆了我当时的既有观点 每十年只能有一篇入选

Python导入模块的几种姿势

Python导入模块的几种姿势

作为一名新手Python程序员,你首先需要学习的内容之一就是如何导入模块或包。但是我注意到,那些许多年来不时使用Python的人并不是都知道Python的导入机制其实非常灵活。在本文中,我们将探讨以下话题: 常规导入(regular imports) 使用from语句导入 相对导入(relative imports) 可选导入(optional imports) 本地导入(local imports) 导入注意事项

美国联邦政府仍在使用的10大古老软件系统

美国联邦政府仍在使用的10大古老软件系统

一份最新美国政府内部报告显示,政府信息科技系统使用过时且不支持的软件和硬件发布恶劣气象预警,处理数以百万计纳税申报表,追踪危险废物事件,甚至保护美国核兵工厂。有多过时?据政府问责总署发布的最新报告显示,某些联邦 IT 系统使用的应用程序编程语言在安迪·格里菲斯秀(Andy Griffit Show)首次公演时(20 世纪 60 年代)算是新的。

12个关键词,告诉你到底什么是机器学习

12个关键词,告诉你到底什么是机器学习

随着人工智能(AI)技术对各行各业有越来越深入的影响,我们也更多地在新闻或报告中听到“机器学习”、“深度学习”、“增强学习”、“神经网络”等词汇,对于非专业人士来说略为玄幻。这篇文章为读者梳理了包括这些在内的 12 个关键词,希望帮助读者更清晰地理解,这项人工智能技术的内涵和潜能。

谷歌胜诉,Android 可以光明正大的使用 Java API

谷歌胜诉,Android 可以光明正大的使用 Java API

旧金山消息——经过了两个星期的庭审,联邦法院最终于当地时间周四裁定Google的Android操作系统并没有违反Oracle的版权,因为Google重新编写的 37 个(有争议的)API受“正当使用(fair use)”法律条款的保护(译注:“fair use”是一项法律条款,指允许人们在不影响作者利益的情况下有限地引用他人的作品。)。经过三天的深思熟虑,陪审团终于达成了一致并形成了判决。

六个漂亮的 JavaScript6 技巧

六个漂亮的 JavaScript6 技巧

在这篇文章里,我将演示 6 种 ES6 新特性的使用技巧。在每个段落的末尾,我会指出它们在我的书 Exploring ES6 中的出处()

槽点比亮点多 Android N并非如你所想

槽点比亮点多 Android N并非如你所想

在Android 4.4时候引入了对齐唤醒的功能来提高Android手机的续航能力,接着就在Android 5.0时候引入了Battery saver这种俗称省电模式的玩意。Android 6.0提供了全新的Doze电量管理模块,在Android 7.0为Doze引入了新的内容,届时需要对比一下续航成绩才知道是亮点还是纯属噱头。

17年编程生涯的三大经验总结

17年编程生涯的三大经验总结

我在代码上淫浸了足够长的时间,因此看到了很多语言和平台的兴盛和消亡,看到了很多模式被普及,被苛责,然后再次被推广。在某些时候,我常常分不清这是大势所趋还是明日黄花。