back to article You can't say Go without Google – specifically, our little logo, Chocolate Factory insists

Back in 2009, Google chose to name its latest programming language Go, a decision that is still giving it a migraine It could have called it "Google Go" to avoid confusion with Frank McCabe's Go! programming language. Despite criticism, it didn't do so. After almost a year of online grumbling, Google software engineer Russ Cox …

  1. Mage Silver badge
    Pirate

    Oh Oh Oh

    He's so fine, Golang, Golang, Golang.

    Reminds me of a row. In the 1970s, Harrison was sued for plagiarism over 'My Sweet Lord' due to its similarity to the Ronnie Mack song "He's So Fine", the 1963 hit for the Chiffons.

    I don't know that it was fair that Harrison lost, (I think he lost?), but I prefer the meaningless original.

    I think you need a long handle to sup with Google. Perhaps they'll lose interest. How's Fuchsia going?

    1. Anonymous Coward
      Anonymous Coward

      Re: Oh Oh Oh

      Is the highest achievement in the language to be called the Golang Heights?

    2. Flywheel
      Joke

      Re: Oh Oh Oh

      How's Fuchsia going

      It's not ready yet, but should be here in the near fuschia

    3. magickmark
      Facepalm

      Re: Oh Oh Oh

      "Harrison was sued for plagiarism over 'My Sweet Lord' due to its similarity to the Ronnie Mack song "He's So Fine", the 1963 hit for the Chiffons.

      I don't know that it was fair that Harrison lost, (I think he lost?), but I prefer the meaningless original."

      He was but there is more, the publishing company that was suing he went bust, because of the case. Harrison's lawyer, Allen Klein, who had been defending him, brought the company including the copyright to "He's So Fine" and with it all litigation claims.

      In litigation the Judge was so disgusted with Klein's behavior quashed the fine that had been given and awarded Harrison the the right to "He's So Fine" as well.

      It is a bit more complex than that and there is a good write up on wikipedia!

      https://en.wikipedia.org/wiki/My_Sweet_Lord

  2. Updraft102

    It's another demonstration of what Google already knows... open-source doesn't mean Google has any less control, or that the "community" makes any difference at all. Google develops open-source Google software for the benefit of Google, just as it would with closed-source, and anyone who doesn't like that is "free to fork the project" that relies on a corporate benefactor like Google to keep it going. To make such a statement is a big "fork you" to anyone who objects.

    1. Anonymous Coward
      Anonymous Coward

      Times being what they are, Google is saying...

      "Goflakes" ?

    2. Persona Silver badge

      "just as it would with closed-source" …….. except this way Google doesn't have to pay the developers.

      1. baud

        Most golang contributors are employed at Google.

  3. chuckufarley Silver badge
    Meh

    Welcome to the world...

    ...Of open source software. It's where (most of the time at least) the corporations only care about other corporations, where the distros only care about their specific distro, where the package maintainers only care about their specific package, where the developers only care about other developers, where the zealots only care about "license purity," where the documentation is so poor you are usually better off reading the source code, and where no body gives a damn about those average users that are so fed up with Windows, MacOS or Chrome OS that they become willing to try a FLOSS alternative.

    It could be so much better (that is to say more useful) than it is but it's still not as bad as it could be. If these various communities do not come together and act in a unified manner to fix these issues then it may well lead to a schism in the Bazaar model that disrupts and reshapes the open source software landscape for good. Sort of like climate change for the people that never go outside.

  4. Anonymous Coward
    Anonymous Coward

    Go away

    Inside of Google, Go makes sense.

    Google has draconian style guides and numerous blacklisted features in Java and C++. The style guides are the Ten Commandments inside but the outside world might seem them as badly dated anti-patterns. I heard that the rules were to simplify languages for faster onboarding of new hires. Asking for more details will have you branded "not Googley." It made software development completely miserable, especially if you get two people with OCD issues infinitely arguing in one pull request.

    Golang is the least common denominator between Java, C++, and the style guides. It's simple. It's elegant. It looks great. The tutorials are a breeze. You can't use a blacklisted feature because it's not there. You can't write in a bad style because it won't compile. The Golang evangelists are elites above the tens of thousands of Java, C++, and (spit) PHP coders.

    Would I ever use Go now that I've left the multi-colored alternate universe? No desire at all. The reduced feature set seriously cripples development of large and/or complex tasks. The workarounds are far worse than features deemed "too complicated" in Java and C++. Coding in Golang is like using a flathead screwdriver as a chisel and a phillips screwdriver to bevel screw holes. It's elegant simplicity that's a PITA.

    Good luck getting the Golang owners at Google to listen, you filthy unworthy outsider.

    1. teknopaul

      Re: Go away

      If this is true, sounds like a fork might be able to get ahead of the Google controlled Go?

      1. -tim
        Coat

        Re: Go away

        Add real currency to the fork and you might just have a real winner.

        Mines the one with the pockets full of the .00999999999 cents left over from floating point rounding

    2. Persona Silver badge

      Re: Go away

      I've never looked at Go but from your post I'm wondering if one of the language "simplicity" design goals was to make it fundamentally harder for people to write insecure code and/or make any coding errors easier to find with automated tools.

      1. Charlie Clark Silver badge

        Re: Go away

        Basically, yes. Think of it as an update of C for systems work. At the time Google had been using various approaches to coordinate its vast systems and found them all deficient. Python was popular but struggled with the sheer amounts of data that Google has to shift internally, where performance, concurrency, and above all, reliability are paramount. I think similar motivations were behind Mozilla's Rust.

        Like Go, Python has traditonally been conservative when it comes to new features and this is generally to be welcomed. Often it turns out that YAGNI (you ain't gonna need it) is the correct response for a language feature request. The requests generally come from "language X has it, why can't we?" or the desire to scratch a very particular itch. 9 times out of 10 it turns out that the feature can be replaced by two extra lines of code. Hence, the popularity of the BD (benevolent dictator) model for projects: someone at some point has to decide whether something goes in or stays out.

        All open source projects need some kind of funding to be successful. Python got lucky that enough companies were invested in it that it made sense for them to contribute to it. US funding for non-profit corporations makes such funding tax-efficient, but I suspect the governance structure that had been developed in advance (it was a Dutch government research project) helped. Though, it should also be noted that this hasn't insulated it entirely from corporate preferences: over the last few years Dropbox has had a lot of influence over development.

      2. Beaufin

        Re: Go away

        I wander if you meant insecure or unsecure :)

    3. Charlie Clark Silver badge

      Re: Go away

      I heard that the rules were to simplify languages for faster onboarding of new hires.

      Beyond that, my understanding is that they expect developers to switch projects frequently, and the style is supposed to support this with a minimal learning curve for new developers, whether new to Google or just coming from another project.

      Given the scale of the codebase and the problems that we all have of maintaining code, this does make some sense even if it is anathema to some programming languages or frameworks and I'm sure I'd struggle with it, but I'm sure they've got test cases highlighting the importance of this "KISS on OCD" approach, where you can't expect all your programmers to write clear, concise and safe code.

      1. Claptrap314 Silver badge

        Re: Go away

        Yeah, he got that part wrong. It really is about people being able to quickly understand each other's code. I wasn't there long enough to enter the priesthood of readability, but one of my coworkers went through it. Uggh.

  5. JohnFen

    Rightly or wrongly

    Rightly or wrongly, I have always considered Golang to be a Google language, not any sort of community language. It's why I haven't bothered looking into it.

    1. Tomato42
      Coat

      Re: Rightly or wrongly

      Since the very begging the design decisions were very Googlesque (e.g. you don't need dynamic linking if you recompile the world for every change you make). Since I'm not Google and don't have Google problems, I don't need a language that solves Google problems.

      Now let me take my coat, it's the one with the book with a wood rat on the cover.

      1. Michael Wojcik Silver badge

        Re: Rightly or wrongly

        the book with a wood rat on the cover

        OK, I'll bite. I figured you were talking about an O'Reilly book (along with the ASU "Dragon" book, they're the programming volumes best known for featuring animals on the covers), but the Menagerie doesn't include any "wood rat".

        Among the various rat-oriented O'Reilly books, featured languages include Java, Python, and Javascript (via, ugh, jQuery). And possibly others I overlooked, or were missed by the search function, which returns some rather odd results (armadillo? land snail? not rats as such, I think).

        1. Tomato42

          Re: Rightly or wrongly

          It is "Wood Rat": https://www.oreilly.com/animals.csp?x-search=Learning+python&x-sort=animal

  6. Anonymous Coward
    Anonymous Coward

    Fed up with "Go"?

    How about calling it "Bugger Off"?

    1. Michael Wojcik Silver badge

      Re: Fed up with "Go"?

      That's better than the cacophonous "Golang". Though "Gotohell" would be in keeping with the existing name.

  7. ratfox
    Angel

    Frozen

    Let it go, let it go...

    1. Psmo
      Flame

      Re: Frozen

      Do you wanna build a Go, man?

  8. SVV

    Go community is free to fork the project if they're unhappy with Google's involvement.

    Please create a forked version called Ogle. I'd love to see that.

    Go (community) fork yourself!

    1. Teiwaz

      Re: Go community is free to fork the project if they're unhappy with Google's involvement.

      Please create a forked version called Come.

      Go (community), Please youselves and not Google.

    2. lglethal Silver badge
      Trollface

      Re: Go community is free to fork the project if they're unhappy with Google's involvement.

      Even better, call the forked version Gone...

  9. Anonymous Coward
    Anonymous Coward

    Forking-off can be successful

    When OpenOffice had a community, and major developers who did not want to be close to Oracle, they formed LibreOffice. I, a mere user, went with them.

    If you don't have developers that wish to fork with you, then it doesn't make sense to fork - but, if you have enough support to set up an alternative home page, loose the branding and give a better experience, then maybe it will become the favoured home site for Go?

    1. JohnFen

      Re: Forking-off can be successful

      I don't think that Golang is quite popular enough for someone to bother forking it. At least, not yet -- you never know what the future brings.

      1. Anonymous Coward
        Anonymous Coward

        Re: Forking-off can be successful

        Is it the popularity, or Google employing most of the developers?

        If Google employs most of the developers then they will do as Google says - without them you can't fork the language *development*, but you might successfully fork other community aspect such as the home page.

        1. JohnFen

          Re: Forking-off can be successful

          I take "fork" to mean forking the language itself, ending up with two different languages that are initially identical but may follow divergent paths moving forward. "Fork" could also mean just forking the tool chain itself, not the language, which is what I think you're talking about.

  10. Julz
    Coat

    Some Title Here

    In what dystopian universe do we live when, without irony, it can be said that JavaScript and Python are two of the fastest growing programming languages and that this is considered a good thing?

    Mines the one with meaningful white spaces and scopes in the pockets...

  11. Psmo
    Boffin

    Python took 30 years to get this popular

    two of the fastest growing programming languages in recent years, JavaScript and Python, have thrived without a singular sustainer

    Python isn't going to be their model.

    It was an obscure academic project owned by various institutions from 1991 'til about 2001.

    Then it gradually spread over the last twenty years, all the time maintaining an impressive number of parallel versions and backports.

    Google doesn't have the patience for that sort of long slog.

    1. Ordinary Donkey

      Re: Python took 30 years to get this popular

      I wonder how many other people first heard of Python as a serious language when it was used for this little thing called Bittorrent?

  12. Claverhouse Silver badge

    Despite criticism, it didn't do so. After almost a year of online grumbling, Google software engineer Russ Cox, in 2010, closed GitHub Issue #9, dismissing the complaints as "unfortunate."

    Wow, that page makes Google sound... almost creepy.

  13. Chronos
    Devil

    Prior art

    I think you'll find Murray Walker already has a trademark on the term, especially if repeated three times and followed by someone else saying "it's the formation lap, Murray."

  14. IGnatius T Foobar !

    I don't see the value in Go.

    Tried it, wrote a few hundred LoC in it ... gotta say I'm not impressed. For systems-level stuff, C is still king. For portability, garbage collection, type flexibility, etc... why would one want to write in anything other than Python. Go doesn't seem to solve a problem that actually exists.

    1. JohnFen

      Re: I don't see the value in Go.

      "why would one want to write in anything other than Python"

      Because Python is not the best solution for every problem, perhaps. Golang does solve a problem that Python doesn't address well, but it's a problem that is fairly unique to Google.

      1. Chronos
        Joke

        Re: I don't see the value in Go.

        What, it replaces the comments with AdSense or does every line of code end with Californian "up-talk" instead of a semicolon?

    2. a_yank_lurker

      Re: I don't see the value in Go.

      I can see a value to many languages at least for specific niches. As a replacement system language for C Rust may be a better choice than Go. One idea I like in Go is the ability to create your own custom type making the code much more type safe. For a general purpose language I would say Python, Ruby, and Kotlin (JVM) are good choices depending on exactly you need to do. I dislike the verboseness of Java and C#; to me a sign of developer incompetence. I despise JackassScript (JavaScript) as misbegotten crime against humanity - too many badly implemented (if that is the correct term) ideas combined with a syntax that mimics languages that are very different from it.

      1. David Nash Silver badge

        Re: I don't see the value in Go.

        "I dislike the verboseness of Java and C#; to me a sign of developer incompetence"

        You start by suggesting that verboseness is a feature of those languages but then say that it's because of the developers.

        Which did you mean?

        1. a_yank_lurker

          Re: I don't see the value in Go.

          The language developer not the programmer, wasn't clear. Verbose basically serves no purpose for the programmer and only highlights the language developer was incompetent and lazy.

      2. JLV

        Re: I don't see the value in Go.

        Agree. Besides compile time checks, one differentiating attribute that makes a true system language worthwhile is fine grained control over memory management. As in C, C++, D, Rust, Objective C.

        If you’re garbage collecting that's a big chunk of pedal-to-the-metal that’s gone. Go and Swift don’t give the programmer that control and neither does Java.

  15. Snowy Silver badge
    Coat

    Fork it

    As others have already said if you do not like the way Google is doing it fork it.

    As for a name called it Going, which is could stand for Go is not Golang :)

    1. Snowy Silver badge
      Facepalm

      Re: Fork it

      Abit late to edit it but Going could also stand for Going Is Not Go :)

  16. Anonymous Coward
    Anonymous Coward

    Go figure.

  17. WallMeerkat

    I thought Go was a petrol station

    With a broken website

    http://www.goforecourt.com/

    NEW EDGES, NEW SHAPES

  18. ForthIsNotDead

    Looked at it...

    ...decided to give it a miss, simply because it originated from Google, and is therefore evil by definition. I don't mind learning new languages, but I've yet to find one that's worth the effort. If you can code in say, C, C++, Java, and Python (which I can) then I'd say your set for pretty much any programming challenge that comes your way. After that it's all fluff.

    1. JohnFen

      Re: Looked at it...

      "After that it's all fluff."

      Sorta. There are major categories that need to be learned differently -- procedural languages, object oriented languages, and massively parallel languages. The differences between languages within a given category is essentially a difference in syntax, but the differences between categories is deeper than that.

      That said, certain syntaxes make certain types of tasks harder or easier to accomplish in a high-quality way. That's why I have learned and used over a dozen different languages during my career so far.

  19. Claptrap314 Silver badge

    Google developed Go to solve Google's problems

    And for one senior language developer to shake his fist at the world.

    The Google problem is that they are literally running hundreds of thousands of copies of some of their applications. Turns out, compute isn't really that cheap compared to dev time at that scale.

    The second issue is that they more-or-less invented microservices. So they needed a tool that efficiently (at the scale of millions of transactions a second over a network segment) can handle calls to processes on other systems.

    I'm not enough of a language guru to know if there were good solutions already out there or not. One could certainly ask if C with some libraries would not have done the job.

    If you are considering Go, ask yourself just how close to the language's sweet spot your application is. Actually do that for pretty much any tool.

    1. Psmo

      Re: Google developed Go to solve Google's problems

      ask yourself just how close to the language's sweet spot your application is. Actually do that for pretty much any tool.

      BUT MY THING IS BETTER THAN YOUR THING!!!!!!1111!!!!!<froth><spittle>

      Spot on, though I do mostly prototype in Python to get the algorithm and data model before translating to something deployable on existing infra.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like