http://blog.motioninmotion.tv/why-swift-will-never-replace-rubymotion
Please stop trying to make lifeless programming languages compete, instead of accepting that they’re all here to work as companions to one another, solving the jobs they’re best at or supplying a way that a developer can complete a task in best.
请不要白费生命去比较编程语言,完成工作任务才是正道。
以前的一个 Phd 女同事 (美国的华裔),一年前在 ibm 做销售,一年后创业做开发,随手用 java, ruby, clojure, python, javascript 做项目(大数据),问她怎么快学会那么多编程语言,她说"几乎不用学,那些都只是 syntax"!而且从不写测试!她真的能把编程语言当作一纸说明书?! 什么意思?什么意思?
为什么在中国很多人花很大精力“学习”编程语言?而学成后其实也没干得了啥! 弄来弄去无非都是那些简单的“应用”,类似 todo app, blog engine, clock..... 简单的数据模型,简单的交互。那压根可能就不算一个“软件”。代码永远都是那几行肤浅的:string, hash table, array, 连个像样的有深度的数据结构都没有。知识领域狭窄,本末倒置,给他们再牛逼的编程语言也干不出啥有用的东西!
@tommy__ 牛人是真实存在的,咱没法跟牛人比 :) 那个做 InstanGram 的小伙子之前不就是在 Google 做销售,然后心血来潮辞职花了十几天做了一个 App 么。十几天啊,咱做个模型都做不出来,更不要说做成品加学语言了,就更更不要说人家那个 App 有多大的成功了。
理工的 Phd 还是有料的,之前做研究也是要编程的,只是语言不一样,但理解绝对是很深刻。后面用不同的语言,确实可以像玩一样。
#5 楼 @tommy__ 觉得很多东西都有共性。数据库查询,用 sql 是一直 chain 下去,用 rails 的 scope,也是一直 chain 下去。再比如 nest function。JQuery 很牛逼,也是因为 chain。clojure 直接提供了 -> 和->>外加 partial,切换成 ruby,写个 class,然后返回 self 一样玩。
再比如 nest function 写什么语言都会用到。就是表现形式不同罢了。
老外从本科的时候就比较习惯一学期撸几门语言(有一门讲 rails 的,一学期,撸掉了我工作碰到的几乎所有东西)。他们的套路是,用什么学什么。再就是给你 example code,能覆盖掉 80% 的情况(比如 rails 查询用的 find 加上:all 和:condition)。学的少,所以写学的快。
#5 楼 @tommy__ 我觉得这与欧美的计算机教育有很大的关系。就咱们国内想我或者更早毕业的国内理工科学生,计算机编程水平及经验甚至还不如欧美发达国家高中毕业生水平。(鄙人被北美某著名报表公司构架师鄙视过。。。不过自己的编程能力当时确实有限,仅仅研究生时期 C 用过 1 年多,做嵌入式,写通信协议软件)相当于编程本身在理工科对国外的大学生来说如同咱们能手算微积分一样。举个例子,美国 NBA 球员波什的爱好就是编程,而他高中毕业。 另外,反思下国内的计算机教育,C 入门学计算机,绝对是个坑,国内应该用 ruby 或者 python 入门计算机。C 入门是大坑,自己被坑了 7 年。。。依稀记得大学的作业是 C 写个 sin()函数。。。。
比尔盖茨
A 退学 (因) -> 没有大学毕业证 (果) B 努力+天赋+运气 (因) -> 创建微软成功(果)
而不少人把B的果算作A的因上 ……
#28 楼 @jinleileiking 并不是说 C 不好,我上学做的就是 Linux 系统下的开发。。我只是说编程入门,呵呵,用编程来解决问题。 这就跟会用数学解决问题,不一定就要会手工演算微积分。多数场合 C 是个重量级的语言,就如同你说的,要跟操作系统一起学习研究才能有效果,但是这样一来学习成本和获得的效益并不是任何人都适合。相比而言 Ruby python 这样动态语言,能快速解决问题,非常便捷,可以说学习起来性价比高,立马能够实现你的想法。 反过来说,当学习 ruby/python 的人想真正的深入理解语言本身的话,自然是要对 C 和操作系统有了解的。 总之,会用工具不一定要懂工具是如何做出来的,用的好比懂得个人认为要好些。(个人愚见。。)
#30 楼 @jinleileiking 哈哈,是啊,找到知音了。我现在的公司已经彻底开始抛弃 C++ 全面转向 JAVA,还是因为 C++ 开发维护成本太高,性能优势一下就被钱被比下去了
#33 楼 @jinleileiking 鄙人公司是国际某 IT 巨头。。。公司产品全面转向 Java 在同行业已经算晚的了。。。Java 的跨平台优势让开发维护成本相对于 C++ 来说,太重要了,另外,公司产品主要跑在自己的系统平台之上,兼顾 window,所以 Java 优势很大。