Go Programming Language and Courses?
Archive - Originally posted on "The Horse's Mouth" - 2010-01-26 13:43:07 - Graham Ellis• What is Go?
Go is potentially the next generation C or C++. It's Open Source, developed internally by Google, already there and in use. Although computers have got many times faster since C and C++ were written, code development in systems languages has not, pushing people towards dynamically typed languages such as Python in which execution time is spent (squandered, for inappropriate applications) in defining the relationship between types. So Go is a modern systems language - and "modern" these days means parallel processing, network aware, server stuff. There's an FAQ on go at http://golang.org/doc/go_faq.html
• Will Go become popular?
"Please hand me my crystal ball and I'll have a look". Ah - I may not need my Crystal ball - we may already have some seeds of evidence. The fact that it's Google sponsored gives it weight. The fact that Google are using it for live projects gives it extra weight. And for decison makers choosing the base language for a new project, it's worth a look. The language fits into a niche where the other (competing) languages are stale and slow to develop, and there used to be a saying "no-one every got fired for specifying IBM" ... which became "no-one ever got fired for specifying Microsoft" and - now - who would fault you for following Google's lead?
Surveys such as that by TIOBE software are (as I write) showing Go moving from no-where to becoming one of the top dozen programming languages already - for sure, behind Java, C, C++, PHP, Ruby, Perl and Python ... but ahead of Pascal, MATLAB, Tcl and Lua.
• What does a Go program look like?
package main
import "fmt"
func main() {
fmt.Printf("Hello, World\n")
}
OK - so it looks very "C" like in some ways. BUT ... no semicolons, no need for brackets round if conditions, Object Oriented and garbage collected.
It's set up in such a way that it cuts out all the management that you have to do manually with included files / headers / the preprocessor in C and C++ and it starts to look rather good.
• Go Programming Courses?
We're not offering a general public Go course just yet, but it's something that may well come along in the next months - please get in touch if you have an interest as we may well be able to help even in the quite short term. Please don't ask if your tutor would have "at least three years experience in Go" ... he couldn't, until 2012, as the language was only specified / written / released in 2009 - be he would be a professional programming expert and trained compiler writer, very familiar with the C / C++ on one side and Python (Python tools are used to install Go) on the other.