Teaching Distributed Systems in Go (2013)
da-data.blogspot.com
da-data.blogspot.com
Generally, I disliked a few things about Go: lack of sum types, error handling, lack of genericity. But apart from that, it's really convenient and easy to learn.
The last version posted on MIT Open Courseware was from 2006. I'm going to go ahead and guess that video/audio recording/editing resources etc. are limited, and this is not a priority course.
That didn't stop the Prof from posting all lecture notes online [0] and using Github to host assignments [1].
Will check this out later; though I recently started using Go and love it. I was able to recently build the smarts of a distributed back-end application with existing Apache projects, some shell, and a lot more Go than I anticipated; which was excellent.
The sort of extreme example of this is this particular bit of Erlang that seems familiar from a C background
myFunc(Val) ->
if Val -> io:format("Val was true", []) end,
io:format("the end", []).
myFunc(false).
When executed you'd expected it to print just "the end". It doesn't; the if statement throws an exception. It looks similar, but behaves differently, and that makes it harder to learn than the constructs that are completely unfamiliar.On the other hand, Go uses static typing with type inference which is a good compromise between conciseness and safety. And I also much prefer the Go syntax.
This is a hint to blogspot. Use ordinary HTML/js/css so that people with their browsers set to maximum security still can read what's on the blog.
Don't be deceived by your hate towards any specific company, otherwise you will miss a lot of beautiful, useful, adorable things in this world.
Go isn't a language I've used in production, but it's something I'm playing around with. I really like the standard library, there's a few thing ( like variable assignment ) that just wrong, but overall it's really a fun language.
The main feature I really really want to make use of is the statically compiled binaries. Deployment just becomes so much easier compared to pretty much anything.
People can just like the language, but the upvote system is anon...
Go, in contrast, is fairly unremarkable language. That doesn't make it bad in any way (tried and true combined with a primary emphasis in maintainable software is a winning combo), it's just that it's attacking a space which many other languages have dealt with before.
Wait, this isn't LtU?
I believe in go because I trust the go team! Especially after reading Rob Pike's blog on the motivation of developing this language, I told myself, this language will Go far.
FYI: http://commandcenter.blogspot.it/2012/06/less-is-exponential...