挑选哪门编程语言来学习,是个让人压力山大的问题。无论何时,当前流行的编程语言可能一年后人们就不再关注了,更何况是那些能帮你找到好工作的编程语言。
所以,当程序员们不为老板干活、而进行那些纯粹出于兴趣的个人项目时,他们用什么编程语言就很值得关注了。
那,就让我们就从黑客马拉松讲起。
很多黑客马拉松(也包括在每届 TechCrunch Disrupt 大会前我们举办的黑客松活动)都使用的后端架构工具 ChallengePost 在今天早上有了新的名字:Devpost。在新名庆祝会上,他们分享了超级多在过去一年里发生的种种事情。
在黑客马拉松上,哪个移动平台曝光度***?哪门编程语言***?哪些 API 被调用的最多?
在举办过 160 场黑客马拉松、同 13281 名黑客完成了近 1 万个项目后,他们得到了一些回答。你可以 点击这里查看完整报告 ,不过接下来我想挑重点说几件有意思的事情:
粉丝最多的移动平台花落谁家?安卓(Android)占 38.2%,iOS 居次席占 22.7%,Windows Phone 占 4.9%,其余的 34.2% 则是被其他非主流系统瓜分。
Devpost 黑客马拉松上***的 10 门语言是:
- HTML/CSS(见下文注释)
- JavaScript
- Python
- Java
- C/C++
- PHP
- Objective-C
- C#
- Swift
- JSON (它不算是严格意义上的编程语言,不过出于某种原因还是被列在榜单上,所以我又加了第 11 名)
- Ruby
HTML、CSS 和 JavaScript 位居榜首,我们毫不意外(暂且不谈「脚本语言」和「编程语言」之争)。它们的容错度高,不需要编译器,在浏览器、而非某个特定操作系统中运行,新程序员们逐渐开始选择它们所为入门语言。如果你进到一间满是陌生人的房间,想在此寻找一个开发团队(这种事黑客马拉松上就时有发生),他们掌握的很可能就是这三门语言。
注释:HTML 并不算是「编程」语言——它是标记语言,用于标记和输出文档元素。不过它确实是一门语言,并且相当多的 web 程序员每天都使用它,所以字意争论暂且不表。
Swift 攀升速度如此之快,让人意外——要知道,苹果 13 个月之前才刚发布它。
那 API 的使用情况如何?
Devpost 没有把所有 API 放在一起比较,而是分门别类地进行统计,每一类别的工具都相当出色。
谁是***的通信类 API?答案是 Twilio。社交类呢?Facebook(啧~),随后是 Twitter(啧啧~)支付类呢?Venmo 击败了贝宝(Paypal)荣登榜首,而 Stripe 意外地只居第三。***毫无悬念地,谷歌地图赢得了地理类 API 榜首位置。
Twilio 在通信类的胜出非常让人信服,因为它在黑客马拉松上极度活跃。每次参加黑客马拉松,虽然它只是非官方的众多推荐之一,我也总能见到它的身影。Twilio 要求每位新职员通过它的 API 来完成一个项目。Twilio 与另一家公司一同创立了 Major League Hacking,后者专注于全世界学生黑客马拉松比赛。
在游戏类,Unity 统治了大半壁江山,有 1000 多个 Unity 项目提交。位居第二的 Pygame 仅有不到 50 个。
Devpost 好像有意挑起「圣战」,还统计了文本编辑器的使用情况。获胜者是 Sublime Text,同样也是我的选择,本文就是在这个软件里写成的(译者也是在这里完成翻译的)。
那些兼有软件和硬件的项目,表现又如何呢?
Arduino 获选黑客硬件之王,可谓当之无愧。它足够多变、可为很多轻量的电子元件项目重造,它亦足够便宜、用坏两三个也不会太心疼。可谓「黑客上手、即用即会」。紧随其后的是多款特定用途的设备:Myo 手势控制臂环、Pebble 智能手表、Leap motion 手势控制器、Oculus Rift VR 头戴显示器。令人意外的是,灵活又便宜的 Raspberry Pi 仅排第六。
注意:以上数据有戏谑成分,不能完全反映真实情况。编程语言榜前五名都值得一学,但不做提倡作为专业参考。如果你还在犹豫学哪门语言,我的建议是选择一门容错度高的语言(JavaScript 值得一试),全神贯注地理解编程要义,并且仔细对比每处细微差异。如果有人告诉你,你选错了入门语言,你应该去学“2015 ***的语言”,别鸟他们。