2016年热门技术方向预测

关于2016年对技术的预测众说纷纭,我有一些在MongoDB公司的朋友和我说了他们的预测。关于Kafka和Container Orchestration的预测看来非常正确。我还想补充的一点是,微服务仍将很重要,以及Apache Spark将会如同星星之火燎原。我觉得Scala、Go、Python将急剧上升,Java将保持稳定。很多很酷的新项目和技术会以大数据,云和 devops的工作形式出现。让我们一起拭目以待吧。[......]

阅读全文

十大流行编程语言和它们的创造者

软件开发领域里有许许多多编程语言。在这里,不断有新的编程语言在诞生,如Scala、Go、Closure等,也不断有老的编程语言慢慢消亡。它们中的 许多都曾为软件开发作出了巨大贡献。作为软件开发领域中最重要的事物,编程语言从一诞生起就会经历人们的议论、批评与改进。这些编程语言的创造者是编程世 界的标志人物,当我看到某些人在使用某种编程语言却不知道这门语言从何而来的时候,会感到一种淡淡的忧伤。对于最为流行的编程语言,出现这种情况的情况较 少,比如Java,几乎所有人都知道Java之父的名字James Gosling,但是,对于Perl、Pascal、Lisp或者Erlang呢,你是否依然知道它们的创造者是谁? [......]

阅读全文

50行Python代码写一个语言检测器

你有没有曾经好奇过Chrome浏览器是如何知道一个网页的语言,并对外国文字的网页提供翻译服务的?或者,Facebook是如何翻译你朋友用写在你主页上的外国文字?检测一种语言实际上非常简单,改进了用户体验,而且不需要用户做任何的事情。 [......]

阅读全文

Google技术开发指南:给大学生自学的建议

技术开发指南

想 要成为成功的软件工程师,必须拥有坚实的计算机科学的基础。本指南针对大学生,给出一条自学途径,让学生以科班和非科班方式提高技术技能。读者可以学习本 指南中介绍的课程,但是为了能正常毕业,还是请侧重于自己本身的专业。本指南中介绍的在线课程无法代替你在大学中的课程。但可以作为其补充,或者作为计算 机方面的介绍。[......]

阅读全文

编程语言IDE对比

IDE是集成开发环境的英文缩写,所谓集成开发环境,就是将你在开发过程中所需要的工具或功能集成到了一起,比如代码编写、分析、编译、调试等功能,从而最大化地提高开发者的工作效率。

每种编程语言都有一些特定的IDE,本文将简单为你介绍这些IDE之间的区别,希望能够为你选择IDE时提供一些帮助。[......]

阅读全文

35个有关Python的小技巧

从我开始学习python的时候,我就开始自己总结一个python小技巧的集合。后来当我什么时候在Stack Overflow或者在某个开源软件里看到一段很酷代码的时候,我就很惊讶:原来还能这么做!当时我会努力的自己尝试一下这段代码,直到我懂了它的整体思路以后,我就把这段代码加到我的集合里。这篇博客其实就是这个集合整理后一部分的公开亮相。如果你已经是个python大牛,那么基本上你应该知道这里面的大多数用法了,但我想你应该也能发现一些你不知道的新技巧。而如果你之前是一个c,c++,java的程序员,同时在学习python,或者干脆就是一个刚刚学习编程的新手,那么你应该会看到很多特别有用能让你感到惊奇的实用技巧,就像我当初一样。 [......]

阅读全文

编程语言中一些令人抓狂的规则

许多年前在编程语言设计和操作系统设计上的选择可能当时看起来无关紧要。但是,这些远古的决定至今仍然继续困扰着软件开发者。

程序员使用的是别人开发出来的编程语言和操作系统以及各种开发工具。一些语言开发和系统设计行业里的前辈以前所作出的决定在那个时候可能是很有意义的,不过在现在看来可能是多此一举。[......]

阅读全文

看Python超级程序员使用什么开发工具

本文来自pypix,原文作者以个人的身份采访了几个顶尖的Python程序员,问了他们以下5个简单的问题:

  • 当前你的主要开发任务是什么?
  • 你在项目中使用的电脑是怎样的?
  • 你使用什么IDE开发?
  • 你将来的计划是什么?
  • 有什么给Python程序员的建议?

就是这几个问题,我找了几个顶尖的程序员和编程书籍作家,问他们这几个相同的问题。下面是他们的回答,希望在他们的回答中你能找到一些可以让你的开发更便捷的工具。[......]

阅读全文

一切皆为JavaScript

JavaScript起源于Netscape公司的LiveScript语言,这是一种基于对象和事件驱动的客户端脚本语言,最初的设计是为了检验HTML表单输入的正确性。

早些年,JavaScript由于其复杂的文档对象模型(DOM)、糟糕的实现和调试工具、不一致的浏览器实现而不受开发者的待见。而随着技术的发展, JavaScript变得越来越的强大、完善,比如, Ajax技术可以创建更加迷人的Web应用,Node.js将JavaScript的应用范围扩展到了服务器端,各种层出不穷的框架使得 JavaScript的开发更加简捷,尤其是近几年HTML5的出现,将 JavaScript提升到了前所未有的高度。[......]

阅读全文

令人讨厌的编程语言排行榜

为了避免引起语言之争,先声明一下,这个榜单统计的是跨语言开发者最讨厌的编程语言,比如你最喜欢使用A语言来编程,那么可能会对其他语言的某些特性看不惯。

这是一种很主观的看法,上榜的语言不代表这个语言不好,只是说明某些开发者不太喜欢这个语言中的某些特性而已。欢迎在评论中说出你对某些语言的看法。

下面这个排名是根据 QuoraStack OverflowHacker News上相关帖子统计出来的。[......]

阅读全文

Python六大开源框架对比:Web2py略胜一筹

Python 是一门动态、面向对象语言。其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的特性。除了语言本身的设计目的之外,Python标准库也是值得大家称赞的,Python甚至还自带服务器。其它方面,Python拥有足够多的免费数据函数库、免费的Web网页模板系统、还有与Web服务器进行交互的库、这些都可以设计到你的Web应用程序里面。[......]

阅读全文

GoAgent

GoAgent是google开发的一个基于Google Appengine的,全面兼容IE,FireFox,chrome的代理工具。

GoAgent是使用Python和Google App EngineSDK编写的免费代理软件。程序可以在MicrosoftWindows,Mac,Linux,Android,iPod Touch,iPhone,iPad,webOS,OpenWrt,Maemo上使用。GoAgent出口地址使用的是美国加利福尼亚州山景城Google数据中心IP段。[......]

阅读全文

如何学会600多种编程语言

几周前,做为8th Light公司的实习生,我从CEO那里拿到了我的工作成绩报告。在与CEO的会见期间,我发现了一个对如何做一个程序员的认识上的盲区。起初我以为,想扩展自己的软件职业道路,那就要学很多各种的语言。我现在就要告诉你,事情不是这样的。

我们一共有多少种编程语言?你只需看一下维基百科上的清单,600多种!说实话,就我个人的情况,我不相信我能学会数百种语言。因为有太多的文档需要看,它们之间有太多的差异需要注意。它们很多都是相似的,例如那些面向对象的语言:C++,Java,Ruby,Python等。然而,我们却有一种更高效的方法学习它们,那就是对它们归纳分类。[......]

阅读全文

10个古老的经久不衰的开源项目

如今,开源项目无处不在,它们经历了诞生、兴盛、衰落等一系列过程,最终非常优秀的项目才得以存留并发展壮大。

一些人认为开源运动是近几年才兴起的,其实不然,开源项目甚至可以追溯到几十年前。比如,20世纪60年代的NASA COSMIC软件集合

自由软件创始人Richard M. Stallman曾说,“当我1971年在麻省理工学院人工智能实验室工作时,我已经成为了软件共享社区的一部分,当时该社区已经存在很多年了”。

本文将列出一些古老的、经典的开源项目,在这个名单中我只列出了目前仍在使用的开源项目。
[......]

阅读全文