Forgot your password?
typodupeerror
Programming Google

Google Go Capturing Developer Interest 434

Posted by ScuttleMonkey
from the fear-the-behemoth dept.
angry tapir writes with news that Google Go seems to be cutting a wide swath through the programming community in just a short time since its early, experimental release. While Google insists that Go is still a work in progress (like so many of their offerings), many developers are so intrigued by the feature set that they are already implementing many noncritical applications with it. What experiences, good or bad, have you had with Google Go, and how likely is it to really take over?
This discussion has been archived. No new comments can be posted.

Google Go Capturing Developer Interest

Comments Filter:
  • Oh yeah, that ... (Score:5, Insightful)

    by checkitout (546879) on Monday March 01, 2010 @11:31AM (#31316666)
    Until this article, I forgot it was ever announced.
  • by Anonymous Coward on Monday March 01, 2010 @11:32AM (#31316680)

    Translation: Someone is drumming up some marketing astroturf for a single-company controlled proprietary language.

  • by zeromorph (1009305) on Monday March 01, 2010 @11:40AM (#31316812)

    It is an interesting concept for a low-level language and could be pretty important. And since the gccgo compiler has been accepted by the gcc steering committee (link [gnu.org]), I am expecting Go to stay and prosper.

  • Bad infomercial (Score:5, Insightful)

    by captaindomon (870655) on Monday March 01, 2010 @11:41AM (#31316822)
    This summary reads like a bad infomercial. "How likely is it to really take over?" not likely at all, and nobody would ask that question unless they worked for Google Marketing.
  • by delinear (991444) on Monday March 01, 2010 @11:44AM (#31316874)
    Well we could suspect nefarious link ranking by Google, but it's more likely the fact that anything Google does is instantly linked from every news source on the planet, including the big, respected media websites which generate a lot of page rank and don't want to be seen as missing out on the Next Big Thing.
  • by MrBandersnatch (544818) on Monday March 01, 2010 @11:47AM (#31316920)

    "At least Java's main benefit was portability."

    Write once, test everywhere?

  • by TheLink (130905) on Monday March 01, 2010 @11:51AM (#31316982) Journal
    Me too. I'll wait for those captured developer(s) to develop more libraries for it first.

    A programming language that's "powerful" for the code you write is good for those uber-programmers.

    A programming language that's "powerful" for the code you no longer have to write is for those crappy programmers like me :).

    Many promising programming languages make it to the first category but never make it to the second.
  • already invented? (Score:2, Insightful)

    by agentultra (1090039) on Monday March 01, 2010 @11:54AM (#31317046)

    Why pick Go when there's D which already has a pretty stable platform to develop on?

  • by binarylarry (1338699) on Monday March 01, 2010 @11:59AM (#31317110)

    lol, sounds like someone who's never used any of them in production.

    Prohint: There's a reason why Java is the most popular platform and language for huge, cross platform enterprise software. And it does involve portability.

  • by FlyingBishop (1293238) on Monday March 01, 2010 @12:02PM (#31317178)

    That's inevitable. It's certainly better than write everywhere, test everywhere.

  • by Anonymous Coward on Monday March 01, 2010 @12:06PM (#31317254)

    It's a 'systems' language who's implementations are slower than Java, with a universally panned name, uses meaningful capitalization, etc, that can't even interoperate with C much less anything else.

    The only thing actually interesting about this language is as a demonstration of how easily politics trumps technology.

  • by cmiller173 (641510) on Monday March 01, 2010 @12:07PM (#31317268)
    30 years ago there were enough programming languages "already". What do you need that can't be handled by COBOL, FORTRAN, Pascal, Ada, ANSI C and assembly language?
  • by TheLink (130905) on Monday March 01, 2010 @12:13PM (#31317356) Journal
    Perl and python are quite portable too, though not as portable as Java.

    But in practice many nontrivial programs end up with so many dependencies that they aren't that portable anymore.

    For example, say you want to write a program to record video from a video camera and audio from a sound device. And you want to cater for the possibility of more than one selectable camera and sound device.

    Even if you write it in java, you're going to have to do different things depending on whether it runs on Windows, OSX or Ubuntu.

    Why? Little things like figuring out which is the user's default recording device, and using it might be different on different platforms.

    Or in theory it's supposed to work, but currently the current Java release for the current OS release is buggy, so the workaround meantime is "...".

    If you want a polished end product you have to take care of stuff like that.
  • by Nursie (632944) on Monday March 01, 2010 @12:19PM (#31317454)

    As someone that works on a non-java cross-platform enterprise product and has experience working with some of the big java ones I'd like to add -

    For fsck's sake please stop using java unless you know what you're doing!

    I know, the old "C is just faster" meme makes people angry. I'm sure java can be programmed well and made to be fast and efficient. So why is it every java app of any size I encounter is a slow, bloated memory hog?

    I'll be sticking to C for the foreseeable future methinks.

  • Re:who's using it? (Score:3, Insightful)

    by hans_e (548959) on Monday March 01, 2010 @12:20PM (#31317464) Homepage
    You forgot the final logical step.

    "Go is too hard. I'm going to write my own language."

  • Re:who's using it? (Score:3, Insightful)

    by Midnight Thunder (17205) on Monday March 01, 2010 @12:26PM (#31317576) Homepage Journal

    Ruby is considered easier than Python? C# is considered easier than Java?

    It doesn't really matter when you reason for changing language is more hype based, rather than considering what problem they are really solving.

  • by ClosedSource (238333) on Monday March 01, 2010 @12:31PM (#31317644)

    "There's a reason why Java is the most popular platform and language for huge, cross platform enterprise software."

    Sure, it's because PHBs are easily duped. Now they're stuck with it.

  • Re:who's using it? (Score:3, Insightful)

    by slim (1652) <john@ha[ ]up.net ['rtn' in gap]> on Monday March 01, 2010 @12:34PM (#31317690) Homepage

    Haskell's lovely - but you need to be /clever/ to use it. It's not going to unseat procedural languages.

  • Eh? (Score:5, Insightful)

    by thePowerOfGrayskull (905905) <marc...paradise@@@gmail...com> on Monday March 01, 2010 @12:42PM (#31317802) Homepage Journal

    angry tapir writes with news that Google Go seems to be cutting a wide swath through the programming community

    He may write that, but that's not what the article says:

    While Go is still a work in progress, some developers are so encouraged by its features and design that they have started using it to build noncritical application

    What experiences, good or bad, have you had with Google Go, and how likely is it to really take over?

    Um, take over what? Is this a serious question? The answer here is "never" -- for the same reason that no single language will ever "take over" the software development landscape. There is no one tool fit for every job.

  • by jo42 (227475) on Monday March 01, 2010 @12:47PM (#31317876) Homepage

    ...and how many years and versions of Java did it take to get to real portability?

  • Re:who's using it? (Score:3, Insightful)

    by ClosedSource (238333) on Monday March 01, 2010 @01:02PM (#31318160)

    "C# is considered easier than Java?"

    Well, at least by me. You don't have to deal with checked exceptions or use adapters for (some) event handling.

  • by elfprince13 (1521333) on Monday March 01, 2010 @01:14PM (#31318366) Homepage
    because Java programmers are never taught about memory management. It's just "magic" and so they don't think about it. C programmers who happen to be writing code in Java are a very different bunch.
  • Re:Whitespace (Score:3, Insightful)

    by Abcd1234 (188840) on Monday March 01, 2010 @01:22PM (#31318498) Homepage

    Quick being an obnoxious, pedantic jackass (though, kudos for once again demonstrating the Greater Internet Fuckwad Theory).

    It's clear the OP meant "significant indentation", and it disappeared back in the days of Fortran until Python popped up on the scene and everyone suddenly decided it was a good idea again.

  • by 1729 (581437) <slashdot1729.gmail@com> on Monday March 01, 2010 @01:30PM (#31318636)

    It can't be that large (hello python, no threads, no JIT, etc)

    Are you really claiming there are no large Python apps? A lot of people in high-performance computing (including myself) are running huge massively-parallel (either MPI or some MPI+threads hybrid model) scientific codes that are largely Python, with some computationally expensive modules written in C or C++.

  • Re:who's using it? (Score:3, Insightful)

    by Abcd1234 (188840) on Monday March 01, 2010 @01:32PM (#31318664) Homepage

    And anyone who's programmed in a functional style understands how nice it is to have proper, lexical closures at one's disposal, as opposed to hacking it with inner classes and hoping for the best.

  • Re:Name (Score:4, Insightful)

    by derGoldstein (1494129) on Monday March 01, 2010 @01:39PM (#31318778) Homepage
    Another element that plays a role is Google's "ass-ness". Does anyone think for a second that they didn't bother *Googling* the damn name prior to release? There is and *was* a Wikipedia entry, it'd probably be one of the first results. They simply switched on the "Apple Mode" -- grab the name, and let's see who has the balls to sue.
  • by BitZtream (692029) on Monday March 01, 2010 @03:50PM (#31320726)

    I run into more portability issues with Python than I ever have with Java, and thats just between Windows and Linux, the same could be said for Ruby. I haven't dug deep enough into perl to say the same for it. I avoid TCL ever since I stopped using eggdrop, vile creature that it is.

    I've written a little python, a lot of ruby, and a fair amount of java, it beats both those others for cross platform issues in my experience, and I'm ignoring Ruby on DOS as thats a whole new set of issues and isn't really even a fair comparison since the OS is so far different, I don't think there is a DOS JVM, and I have no idea about python and DOS.

    I absolutely HATED Java apps before I was forced to start writing Java code myself. What I learned VERY rapidly is that Java apps suck if you're a shitty programmer. If you don't have any clue how to write code and no clue about the common pitfalls of cross platform dev, it can kill you. 9 times out of 10, its because the programmer did stupid shit that he/she shouldn't have that is clearly OS specific when its a cross platform compatibility issue. Likewise all the slow beasts of Java 'apps' that you come across generally suck because the programmers have no idea what they are doing. Stupid crap like doing string concatenation one character at a time using a string variable rather than class designed for string concatenation and proper allocation for it.

    Java isn't the problem. Much like VB, shitty Java programmers are the problem. Java and to a much larger extent, VB draw in people who aren't programmers because of the marketing, and then we see tons of crappy Java apps because the language is in fact, TOO easy to use.

    Say what you want about Java in the past, it could be true. Today? Muh, there is very little if any truth in your statements at this point in time.

  • Re:who's using it? (Score:3, Insightful)

    by Unoti (731964) on Monday March 01, 2010 @03:56PM (#31320852) Journal
    Explicitly declaring thrown exceptions is one key thing I like *better* about Java over C#. It's a good idea, not a bad one.
  • Go forces the use of garbage collection and makes me use its included batteries for concurrency. It's an applications-programming language, not systems-programming.

  • by RAMMS+EIN (578166) on Monday March 01, 2010 @04:47PM (#31321730) Homepage Journal

    The other question is what portability really means.

    Many people think that portability means "your code will run on multiple platforms".

    With Java, I feel it is more a case of "your code will run on the Java platform".

    The distinction is that, in the latter case, a lot of the facilities that have been implemented for existing platforms have to be re-implemented for the new platform. I feel a lot of effort has gone into creating things for Java that already existed outside it.

    By contrast, many other programming languages attempt to fit in and play nice with whatever platform they end up being deployed on. Where Java has your programs run inside a virtual machine which is more or less the same across native platforms, other languages have you create programs that are just like the programs your native platform knows how to run. Where Java has people build functionality on the facilities provided by the virtual machine, other languages have you build functionality on the facilities provided by the native platform.

    The approaches are different, and lead to a vastly different feel both during application development and when using an application developed using one approach or the other. Both approaches have their pros and cons.

    Java's approach has the advantage that, absent deficiencies in the specification and bugs in the implementation, the Java platform is the same everywhere, regardless of native platform. The disadvantage is that you lose access to the native platform's facilities that are not also in the virtual platform. It also means that your software is almost certain to not really fit in with the native platform.

    The other approach leaves you with access to the native platform's facilities, which is a double-edged sword. The disadvantage is that many of those will not be available on all platforms, and code that uses them will therefore be non-portable. The advantage is that you can make your software do anything that would normally be expected of an application on the native platform. Software developed using this approach will thus tend to integrate better with the native platform, and feel less foreign to users.

  • by Hurricane78 (562437) <deleted@s l a s h dot.org> on Monday March 01, 2010 @04:54PM (#31321850)

    Yeah. And all those are *extremely* slow interpreted scripting languages. While java on the server (its actual main base) is actually half as fast as C. Which is really nice for code that does all the type checking for you and is machine code independent.

    The reason that Java WAS not on every platform is... well, have you seen the size of its standard libraries (J2SE, J2EE)?? All those language’s *built-in* languages are a joke to what Java offers out of the box.

    Sorry, but for professional big projects, those languages can’t hold a candle to Java. The only one that can do that, might be .NET. But that one’s by definition not portable. (No, the Linux version of it doesn’t count, for it is way outdated.)

  • by vcompiler (1383819) on Monday March 01, 2010 @07:29PM (#31324068)
    I doubt that. Many languages invented before Java have already been qualified to fulfill cross-platform requirement in almost all fields except GUI. And look Java did what to GUI? Almost nothing. Java's GUI sucks, and instead of providing cross-platform, it created a new platform (recommend the use of Metal Look-and-Feel?). If your whole solution to make people working on two platforms feel better is to create the third platform, what's your point? Does people who are willing to get unified user experience have to pay money to Microsoft and Sun and Apple, and then resort to Java to get the same Look-and-Feel?

    More over, all users I encountered, except developers, using one single OSs dominantly. So if you want to offer your app on multiple platforms, good, but only make the functionality cross-platform, not the user experience at the GUI level. Your cross-platform app is meant to make the same functionality accessible from different OSs, not to enforce the users of an OS experience what they should feel in another, or worse, in another new.

    I think some people eventually realize GUI is of so high level of complexity and all different GUIs of different OSs can not be abstracted with a unified model in such detailed level like Java Swing.

    So write once, test everywhere, for non-GUI? OK, C and other language already do that. For GUI? No improvement from Java.

You will lose an important disk file.

Working...