News for hackers. Stuff that matters.
Re:I’m joining the Go team at Google by dgb23 on Friday September 23, 2016 @08:22AM (#12563999)
Some of the harder more time consuming things in high level programming include abstraction/polymorphism, concurrency and dependency management which are all simpler and clearer in Go than in Java. Think about how many hours you have to invest to learn any of these things in either language.
Re:I’m joining the Go team at Google by tmpxkdks on Friday September 23, 2016 @08:48AM (#12564137)
> abstraction/polymorphism, concurrency and dependency management which are all simpler and clearer in Go than in Java

Really? A lot of copy/pasted code, generics replaced with casts on empty interfaces, poor support for collections, only very primitive concurrency tools, and so on...

I can understand that simplicity is good for small CLI/network tools, but it is hardly an alternative for really big applications where Java is vastly used

Re:I’m joining the Go team at Google by Thaxll on Friday September 23, 2016 @10:14AM (#12564762)
Your big application shouldn't be that big first?
Re:I’m joining the Go team at Google by jeremiep on Friday September 23, 2016 @01:16PM (#12566254)
So you're saying we shouldn't have operating systems, browsers, video games and all that good stuff?

Most actual engineering is very far from writing a dumb server for yet another CRUD app :)

Re:I’m joining the Go team at Google by Thaxll on Friday September 23, 2016 @02:22PM (#12566817)
What I'm saying is Golang is a recent programming language so it works best when used for multi tier/services, not to create a giant monolithic Java app that has a huge number of loc.
Re:I’m joining the Go team at Google by jeremiep on Friday September 23, 2016 @03:25PM (#12567279)
What does Java have to do with big monolithic apps? I think you're confusing complex application domains with bloat.

Go is supposed to be a systems programming language. That means a very, very wide range of possible domains, where for many of them even network latency is unacceptable. For example, Photoshop would have a terrible user experience if it wasn't the monolith it is. A game engine wouldn't go above ~20FPS (even 60FPS games have a network loop that is capped around 20FPS).

If I can't do systems-level programming in Go, what's its advantage over real systems languages or higher-level languages then? Especially when you consider what Go offers (CSP) comes in opt-in libraries in many other languages.

I feel like Go should be put in the same category as C# and Java. They're just above systems languages but just below scripting languages; giving you the worst of both worlds. Not bare-metal, but also not that productive.

Re:I’m joining the Go team at Google by pjmlp on Saturday September 24, 2016 @03:21PM (#12572176)
Java does run bare metal and there are commercial JDKs with real-time GCs.

PTC is one such those vendors,

http://www.ptc.com/developer-tools/perc

Go might eventually be used in such scenarios, but the toolchain is not yet there.

Re:I’m joining the Go team at Google by coldtea on Friday September 23, 2016 @02:15PM (#12566754)
That depends on business needs, not what some programming language designer thinks.
Re:I’m joining the Go team at Google by pjmlp on Friday September 23, 2016 @08:53AM (#12564166)
Think about how many hours you have to invest in writing workarounds for features available out of the box in other languages.
Re:I’m joining the Go team at Google by weberc2 on Friday September 23, 2016 @11:49AM (#12565490)
Think of all the hours you save not having to work around the misfeatures available out of the box in other languages. I know, you don't make mistakes or use those nasty features, but think of your coworkers.
Re:I’m joining the Go team at Google by pjmlp on Friday September 23, 2016 @11:51AM (#12565502)
My coworkers are savvy enough to handle those features.
Re:I’m joining the Go team at Google by _ph_ on Friday September 23, 2016 @12:50PM (#12566014)
Then you are a very lucky person. For the rest of us, it is very good to have a manageable language at hand.
Re:I’m joining the Go team at Google by pjmlp on Friday September 23, 2016 @01:27PM (#12566352)
We can easily manage Java, C#, C++, Swift, Objective-C, JavaScript across our consulting projects....
Re:I’m joining the Go team at Google by _ph_ on Friday September 23, 2016 @03:06PM (#12567141)
Of course you can. None of those languages would be in use, if projects could not be managed at all. The question is: are you benefiting from their "features" or are you able to succeed despite of the challenges brought up to you because of those features and their complexity?
Re:I’m joining the Go team at Google by pjmlp on Friday September 23, 2016 @03:44PM (#12567413)
It was the simplicity of Java 1.0 that lead to some of the famous patterns we see in some frameworks, that were initially created to workaround language limitations.

The same path that is being followed by those that rely on libraries to reduce error handling boilerplate and go generate, just as two examples.

Re:I’m joining the Go team at Google by weberc2 on Tuesday September 27, 2016 @09:46AM (#12589526)
Who is using libraries to reduce error handling boilerplate? I rarely see `go generate` used for things that don't require static code gen (e.g., automatically generating bindings to C libraries). Sounds like you're inventing problems...