A few people have asked me what would be the most useful or best coding language to learn.

Skipping aside HTML/CSS—I think the answer rests on what you want to do with code.

A quick rundown



Javascript and its frameworks are really useful for building something with just one language.
Angular.js can control the front side of the website that displays to your users.
Node.js will act as a Web server that can host all of your content.
Express.js runs in the middle directing where information goes.
MongoDB acts as the storage center for data you accumulate from your users.

The MEAN (Mongo/Express/Angular/Node) technology stack—an organizing framework that helps build everything you’d need for a Web application—is the one favored by a whole lot of startups these days. It’s a whole component of technologies that can build everything Web-wise based on one language.

I’ve been using Egghead.io and Scotch.io to catch up on my Angular and MEAN stack skills. Egghead is focused on video tutorials that are structured sequentially, Scotch has some great graphics about the whole process of building Web apps, including the following explaining the MEAN stack.

They’ve got great tutorials on how you can go about building nifty applications such as basic search engines, and new ways to validate forms (making sure that when you create input forms, people are actually putting in valid criterion). With Angular itself, you can animate a website and make it move, with not too much in terms of setup, which is pretty nifty.

Python is very readable and legible, and has recently become the introductory language of choice for universities teaching computer science majors.

It’s fantastic for playing around with data, and doing all sorts of nifty things you wouldn’t have thought possible with its various community modules, such as scraping Web pages in their entirety, and doing advanced scientific data analysis. I started out with Learn Python, which suited my fashion of learning by doing.

Java (and other languages that are closer to interacting with computer hardware) can be a bit more difficult to interpret for human eyes, though they are wonderful for understanding more of how code actually works and how you’re interacting with the computer.

Java is also used for mobile development on the Android ecosystem, which is something that will always be in demand.

If we want to switch briefly from knowledge to money, I’ve seen a lot of demand for iOS developers, and Objective-C and Swift aren’t that hard to pick up.

Ruby, especially when used in conjunction with Rails, is also something a lot of startups are building on for which the learning curve isn’t that high (in fact, there was a children’s book for Ruby).

I myself am personally learning Python for playing with data, Javascript and the MEAN stack for building Web applications, and Java for a deeper understanding of computer science and building things for mobile. I think is a well-balanced set of languages carrying forward.

I’ve got together a bunch of learning lists, and resources to help me and you learn what we need to build great things. But none of these are the best coding language to learn, per se.

The best coding language to learn—and how to go about doing it



The absolute best thing to learn is to learn how to think like a programmer—learn how to solve problems mathematically, with clean and concise code. Coding languages evolve, they change, they fall in and out of favor. One community might morph into another.

The great Web applications of the present might be obsolete in a few decades. What won’t change is the need for people to think logically, and solve problems—and make it an automated and easier process with machines.

You can bank on the fact that going forward, if you practice your problem solving skills, you’ll be able to find your best language, and get the knowledge and money you need to build great ventures.

I’ve been opening up Project Euler, a set of programming math and logic problems, and using the Codecademy workspace in Python to try to create clean code to solve these problems. This was something a Google recruiter mentioned as being a great training step to learning code—and I don’t doubt it. I feel sharper and more confident in my ability not only to code—but to think.

The best language to learn is ultimately the language of logic, math and problem-solving that is at the core of code. There is no right or wrong, as long as as you understand the fundamental values of programming.

What are your thoughts?




 不少人曾经问过我,最牛逼的编程语言是啥。

跳过HTML/CSS这些不说—我认为这个问题的答案取决于你想用代码去做什么事情~

 

你得明白的一些东西



    只使用一种语言去做项目,那么使用Javascript和它的诸多框架就轻松又愉快了。
    Angular.js可以控制网站的前端,换句话说,就是用户看到的那些东西
    Node.js工作在服务器,用来存放你的所有网站内容
    Express.js在中间层,控制着数据的流向
    MongoDB是数据存储中心,里面存放着你的网站用户的所有数据。

 

MEAN (Mongo/Express/Angular/Node),这些技术堆积起来,可以变成一个卓有成效的架构组织——帮助你应付一个网站所需的一切,同时 它们也是一大堆初创企业编写网站时的最爱。它们组合起来,变成一个整体,却可以解决编写网站的所有问题,但事实上,它们都是Javascript。

我曾经使用Egghead.io 和 Scotch.io 来奋发努力的学习MEAN的高级技巧。Egghead主要采用循序渐进的视频教学的方法,而Scotch则有很多不错的图表,完整的教你编写网站的每一个过程,当然也包括了关于MEAN的解释。 
 

他们的教程在教你如何编写漂亮的应用上面做的很不错。例如基本的搜索引擎,验证表单的新方法(确保在你创建表单的时候,人们会在里面输入正确的内容)。使用Angular,你可以让你的网站更有灵气,更加生动,不需要太多设置和条件,真好看的说。

Python简明易懂,近来甚至有不少大学考虑把其列为计算机科学里面的编程语言课要学习的语言。

得益于其大量的模块,诸如抓取网页模块、科学计算模块等等,Python在处理数据和做一些你根本想不到的事情的时候如有神助。我很快开始学习Python,这门语言符合我的一贯风格——在使用的过程中去学习。

Java(和其它更接近计算机硬件的语言一样),它的代码我们看着可能稍微痛苦一点,不过它更能帮助你了解代码的工作原理和你和计算机之间的那些互动是如何进行的。

Java也用来在安卓生态系统里面开发应用,万金油你懂的。

为了赚钱的话,我们会看到大量对IOS开发,Objective-C和Swift的开发者的需求,嗯,它们其实也没有那么难嘛。

Ruby,尤其是Ruby on Rails,也是很多初创公司的选择,因为Ruby的学习成本很低(事实上,还有给小朋友看到Ruby学习书)。

我自己用Python来处理数据,Javascript来做网络应用,用Java来更深入的学习计算机科学,或者开发手机应用,我认为目前的这个语言平衡非常优雅。

我曾经列过一堆要一起学习的语言清单,学得够多,我们才知道我们需要用什么语言来完成非同凡响的作品。但是,没有一门语言本身就是最好的。

 

最应该学习的编程语言是什么以及如何运用




 
 

毋庸置疑,最应该学习的是如何像一个工程师一样思考问题—学习如何用干净优雅的代码解决数学问题。编程语言也在不断改变和进化,或流芳千古,或被人遗弃。万物都在更迭演化。

现在看来牛逼的不行的网站可能过几十年就完全过时了,而不会改变的是人们对于严谨思维能力的需求和让问题解决的需求——即用计算机让一切变得更容易。

你有理由去信心满满的看待未来。如果你不断练习你解决问题的能力的话,你会发现你的最佳语言是什么,然后升值加薪出任总经理当上CEO赢取百富美。

我 曾经开发过一个叫欧拉的程序,它由一组解决各种数学和逻辑问题的程序构成。我还用Codecademy提供的工作空间来尝试写出优雅的代码来解决问题。据 说一个谷歌的招聘官也曾经提到过,并把它当作一个重要的学习步骤——我绝不怀疑这点。有时我感觉自头脑更加清晰,人也更加自信了,这不仅仅是在写代码上面 ——还在思考方式上面。

最好的语言是逻辑,数学和能解决问题的终极语言,这也是纷繁复杂的代码的核心。只要你能理解代码的本质,你使用任何语言就都没有对错之分了。

你觉得呢? 



By 圣经上的子弹(7958 view)