Go is not a particularly hard language for the level it's designed at (though I'm not sure that remembering keywords is really a primary usability concern for any language)... but if you are just trying to slap together a web app and feel intimidated by deploy details and want to use cheap shared hosting and plug into existing libraries as much as possible, Go is somewhere between inconvenient and totally infeasible.
I'm not saying Go is a bad choice... there are good reasons to look at it, particularly if you intend to work at a somewhat lower level (e.g. for performance) and want some of Go's benefits (like the concurrency model, or some of the benefits of static typing and compiling without so much time or effort on managing dependencies as you would otherwise spend, etc.)
I'm saying the priorities which would make PHP attractive would tend to make Go quite unattractive. I can certainly see how PHP programmers (like many other programmers) can benefit from learning another language with abilities complementary to what they already know.
What? Sorry but I know nothing about deployment. Should I? In the past I've only used PHP to solve simple problems.
That's interesting stuff, but not on the "must know" list.
Why do people use PHP mostly ? For web development.
Why PHP guys should learn Golang should at least tell PHP guys if it's possible to do web development in Golang, and how, and show them how it's better suited (without telling them only "it's a better language").
> This is my writing exercise. If you find any grammatical or spelling error, plz tell me!
Also notice that it's a predominately Chinese blog.
I don't really care about the author's English skills, I'm no grammar nazi.
On the other hand, PHP has a huge list of existing resources, libraries and excellent documentation and community.
Look over at the language used by the largest sites on the Internet, and compare the number that use PHP to the number that use Go. Not saying Go can't handle those applications, but obviously PHP was used in scale effectively on many occasions, while Go hasn't proved anything yet.
Go documentation is very good, the standard library is extensive, and it has a very active community, but it does lack certain libraries that web developers might find attractive, e.g. a comprehensive ORM.
Insinuating PHP is better because it's deployed in more places is silly.
You sounded a lot like Go hasn't proved it's viable for "web scale." It has. Is it as widely deployed? Of course not, it's new.
I'm not sure what strength of PHP you're referring to--I'm assuming the ubiquity with shared hosting providers--but it's not even that great of a language to interface with databases, which was your example before.
Not arguing for Go particularly, just arguing against PHP. Its ubiquity is basically all it has going for it, but yes, that's a big deal.
("Poor library support" is a terrible argument for PHP vs. Python, Ruby, or even functional languages with respect to web development too.)
Now you're twisting your own words.
This depends on what is your definition of "widely deployed":
A type of web app for which Go shines is ones that have data already prepared when the user arrives. Database retrieval and update can be handled by processes that aren't dependent on the user. This can make the app super fast; e.g. langalot.com.
Seeing no references to any of these, I don't find the article terribly persuasive.
The immediate feeling of condescension turned me off.
The original: "PHP is easy to learn. Golang is as easy as PHP!"
"Ruby is easy to learn. Golang is as easy as Ruby!"
"Clojure is easy to learn. Golang is as easy as Clojure!"
"Python is easy to learn. Golang is as easy as Python!"
Hmm, I'm still not feeling offended. Are you sure this might not be some sort of inferiority complex at play? I think a lot of PHP developers get needlessly offended whenever we talk about PHP, positive or negative.
The particular line of the article I quoted however does, to me, infer that php developers can only learn simple languages.
But some of his reasons that Go may be better or more useful than PHP don't really stick. You can deploy a PHP web application using the PHAR format, which is a lot like just moving a file into a folder. And static variable typing isn't really a requirement for a successful language if you're adequately validating input and the like.
Also, a PHP programmer would have an easier time learning another scripting language compared to another compiled language, regardless of the overhead of configuring a development environment.
Things that would make me consider Go would include ease of deployment, significant speed improvements, fantastic libraries for the kinds of things I want to get done, or smart under-the-hood concurrency that I don't personally have to worry about coding. Go could have all these things, and I've have no idea from this post.
I stopped reading here.
I don't know. Skimming over this blogpost made me think "Why should I use go?". I'm not even a PHP guy and this isn't even convincing me. What hope do they have to convince a PHP guy.
I didn't see any code. Sure there's a link to the "A Tour of Go" but if I was a PHP guy I would be confused by the syntax. No semicolons? Ok that may be an advantage (I'm also fairly sure you can add semicolons to Go and it wouldn't care).
I dunno, there wasn't enough here explaining why I should use Golang instead of PHP. I didn't like the way it was formatted. I didn't like the rhetoric.
I am one of those strange people who prefers to watch videos of a language or a web tool working and found http://ftp.heanet.ie/mirrors/fosdem-video/2011/maintracks/go... which seems to go through some of Golang's features. It's a little longer than that blogpost but it's a little better with convincing me to use Golang.
It might be a cool language, but the main reason php developers use PHP in the first place is Web Development; the article doesn't even mention the possibility of using GO for web development.
There aren't any code samples on the article either; why is GO so good ? what does the syntax looks like? Don't just tell, SHOW
I prefer to invest my time learning languages like ruby or python.
Given the available communities, performance of current JIT and GC systems, tools, libraries and distribution mechanisms.
If they prefer to go VM free, there are commercial native compilers for JVM and MSIL bytecodes.
For those with VM phobia, D, OCaml, SBCL, Haskell, Rust offer native code compilation by default, with 2012 set of language abstractions.
I don't think so.
Not to mention the unfounded and insulting assumption that "you PHP guys" are all the "everything looks like nail" kind of people. Methinks the author is projecting too much.
Also does your university not provide a C compiler to their students? I'd be shocked of that were the case.
IMHO, if a programmer only know PHP and want to explore, I would suggest Java/Scala/Python/Ruby as the next language instead of Go.
And concurrency in Go compared to Java is like day and night.
Then there is the simplicity and clarity of the standard libraries, and so on.
1. Golang is a compiled language with a static type system. You have no chance to confuse veriable types
2. You must have already felt some powerlessness to PHP. It dosen’t have concurrent mechanism build-in..
3. Golang has GC, there is no need to care about memory management
4. Golang is also a C family’s programming language. Eh… with a litte syntax difference.
Oh well, I suppose at least it's more popular than Dart... ducks
Even if we supposed that PHP beginners all outgrew it after one year, there are enough people always picking it up that you would still always have PHP programmers, until there was enough of a cultural shift that people stopped picking it up. (Unlikely since PHP's virtues or apparent virtues to newbies are many, and whatever its problems it is still a viable way to build things)
Second, even if PHP is a relatively bad tool in some important ways - if you actively push your abilities as you log many hours, your knowledge will improve. And without specific numbers, PHP is certainly among the most popular languages for web work (if not the single most popular one). So we can expect there are a large number of people who have grown up in PHP and have therefore gained some level of technical maturity even if they are using a bad tool (actually, struggling successfully with bad tools might help develop certain muscles useful in areas like maintenance coding).
People are PHP programmers not because they are stupid, but because that is what first worked for them and they haven't had the time or reason to change yet, or it's where their job is, or because they just have bad taste ;)
(that's a joke, I do mean to say that matters of taste are involved though)