Slashdot Mirror


The Insane Amount of Backward Compatibility in Google Maps (tnhh.net)

Huan Truong, a software developer, writes in a blog post: There is always an unlikely app that consistently works on all of my devices, regardless of their OS and how old they are: Google Maps. Google Maps still works today on Android 1.0, the earliest version available (Maps actually still works with some of the beta versions before that). I believe Maps was only a prototype app in Android 1.0. If I recall correctly, Google didn't have any official real device to run Android 1.0. That was back all the way in 2007. But then, you say, Android is Google's OS for Pete's sake. How about iOS? Google Maps for iOS, version 1.0, released late 2012, still works just fine. That was the first version of Google Maps ever released as a standalone app after Apple ditched Google's map solution on iOS. But wait... there is more. There is native iOS Maps on iOS 6, which was released in early 2012, and it still works. But that's only 6 years ago. Let's go hardcore. How about Google Maps on Java phones (the dumb bricks that run Java "midlets" or whatever the ancient Greeks call it)? It works too. [...] The Palm OS didn't even have screenshot functionality. But lo and behold, Google Maps worked.

73 comments

  1. Stable API by dos1 · · Score: 3, Insightful

    Maybe they just got a reasonable and stable API from the beginning, so they don't really need to have "insane" backward compatibility?

    1. Re:Stable API by Anonymous Coward · · Score: 1

      Seems unlikely, given that the early maps applications displayed tiles with raster images, while modern ones display client side rendered vector tiles.

      It looks to me like the API contract has completely and entirely changed, they're just working really hard to keep the old API working.

    2. Re:Stable API by jellomizer · · Score: 4, Insightful

      The google Maps when was released was impressive, as it used the newer features in the browser, where other vendors were a bit wary to implement. During this time, including Javascript as only for form validations, and was coded to be expected not to be used. However these new features in the browser have became commonplace. But other then using the new standard browser features, Google didn't do too much that was crazy, Like having a plug in, using a MS or Firefox only feature. They followed the HTML 4 Standards. By actually following the standards it allowed for easier forward compatibility, as features are removed and deprecated much slower from a standard then they are in some crazy hack.

      I myself have some fairly advanced HTML pages still running on modern hardware without worrying about upgrades, Because I followed the standards and didn't include any browser/os/hardware particular features. So they still work decades later.

      This is why I have been a proponent of the Web Application method. The software has a much longer life span then with a say Windows forms.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    3. Re:Stable API by Anonymous Coward · · Score: 2, Funny

      That's okay, it's backward compatible down to 5mm diameter.

    4. Re:Stable API by Anonymous Coward · · Score: 0

      Once you know the algorithm to convert lat/long to Google's x,y,z tile function, it's just PNGs to download off their map servers (It's not vector tiles, like the other AC wrote). Not hard to support old versions that way. I'm sure the Google Map app on my old Motorola RAZR would still work just fine.

    5. Re:Stable API by Anonymous Coward · · Score: 1

      Find a recent computer, and recent browser, and try zooming in and out on google maps - you'll notice that labels grow and shrink, roads widen and narrow, at no point do you see any pixelation... They are using vector tiles, not just pngs like they used to.

    6. Re:Stable API by ebrandsberg · · Score: 1

      This doesn't mean that they don't still support the PNG interface. You CAN have multiple versions of apis active for exactly situations like this.

    7. Re:Stable API by Anonymous Coward · · Score: 0

      Maybe they just got a reasonable and stable API from the beginning, so they don't really need to have "insane" backward compatibility?

      Google ... reasonable and stable API?

      Stop it ... you're killing me!

    8. Re:Stable API by Anonymous Coward · · Score: 1

      Yeh - which was precisely the point. They are supporting an old API, not just keeping the API constant as the root of this thread said. The API has changed dramatically, but google are maintaining impressive backwards compatibility with the old API.

    9. Re:Stable API by dos1 · · Score: 1

      Raster images are still used even by some of their Web frontends, and it seems completely reasonable to support both tiles and vectors for maps service API. You don't need to remove or "work hard to keep it working" old one when you add a new feature to your service, when the old one is still a core feature of your platform.

    10. Re:Stable API by shess · · Score: 2

      The google Maps when was released was impressive, as it used the newer features in the browser, where other vendors were a bit wary to implement. During this time, including Javascript as only for form validations, and was coded to be expected not to be used. However these new features in the browser have became commonplace. But other then using the new standard browser features, Google didn't do too much that was crazy, Like having a plug in, using a MS or Firefox only feature. They followed the HTML 4 Standards. By actually following the standards it allowed for easier forward compatibility, as features are removed and deprecated much slower from a standard then they are in some crazy hack.

      The value in having a reasonable and stable API from the beginning would be that the tech used to build the client would be irrelevant. If you design your API around the specific capabilities of a specific browser, then in two or three years it's going to be painful to continue supporting that browser while also supporting whatever new API you created to conform to the specifics of newer browsers.

      [That said, I think the OP on this thread overplays it. I doubt the first choice was having a reasonable API, the first choice was to commit to supporting things for a long time, at which point there are incentives to have an appropriate API. As opposed to the standard approach of "Who cares, just throw the shit against the wall and see what sticks", where you promote cutting corners to a valuable attribute of your project.]

    11. Re:Stable API by Anonymous Coward · · Score: 0

      Find a recent computer, and recent browser, and try zooming in and out on google map

      Open the developer console and look at the network monitor while you're doing just that. It's all PNGs. The zooming 'motion' is simulated.

      For the imagery, at least. I'm sure some of the layers are rendered, but the map / satellite / terrain stuff is all images.

    12. Re:Stable API by TheRaven64 · · Score: 1

      It will be more interesting to see if the same thing is true in six more years. The original Google Maps API was as simple as the GP says, so there's no reason that Google would break it because it's trivial. It's also largely independent of the internal format for the data: as long as they have a rasteriser, they can keep supporting it. More recent versions are a lot more complex and Google is notoriously bad at maintaining stable APIs for complex things because their entire internal development model is to change APIs and apply automated refactoring tools to all users (which doesn't work so well with third-party users).

      --
      I am TheRaven on Soylent News
    13. Re:Stable API by mrbester · · Score: 1

      The static API uses PNGs. So rather than it being backward compatibility, it is a low bandwidth non-interactive variant of the product for when you don't need all the bells and whistles.

      --
      "Wait. Something's happening. It's opening up! My God, it's full of apricots!"
    14. Re:Stable API by AmiMoJo · · Score: 1

      Google Maps is available as an API for commercial use. A lot of business specific apps use it. So for that reason the API is very stable, and they don't deprecate old stuff. They add lots of new functionality, but the old stuff keeps working as a fall-back.

      The map tiles are a good example. The current version of the app and web site use vectors, allowing for arbitrary zoom levels and rotation. But the old bitmap tiles are still there and constantly updated, because a vast amount of stuff uses them. If they ever went away it would break people's cars and a whole load of custom business/industrial applications.

      The web site is the most impressive bit of backwards compatibility. They keep the older bitmap tile based interface going and supporting most of the features of the new one. It works reasonably well in more limited browsers, and on both desktop and mobile.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    15. Re:Stable API by omnichad · · Score: 1

      Each zoom level has a completely separate set of tiles. So even on raster, you didn't see any pixelation when zooming. That was true long before they switched to vector tiles on browsers that support it.

    16. Re:Stable API by Anonymous Coward · · Score: 1

      Windows forms have had a stable and consistent API for going on 30 years now, with braindead-easy implementation in .Net for more than 15 years.

      WNDCLASS is a struct to define the settings of a window while you're creating it. This was in common use back in the Win16 days, along with the CreateWindow() function.

      WNDCLASSEX is the same thing, but EXtended with a few extra settings, like the small icon in the window title bar. This became a thing with the dawn of the Win32 era, along with the CreateWindowEx() function. CreateWindow(...) is now just a macro to CreateWindowEx(0, ...), which can take any WNDCLASS(EX), which self-specifies the struct size for future expansion.

      Meanwhile, in .Net-land, all of this is just "Form f = new Form()" (or, if you're a mouth-breather, "Dim f As New Form") and you're done. But under the hood, the CLR is still using all of the same CreateWindowEx() stuff.

      That's how you stable API. Javascript certainly can't touch it. It hasn't even existed as long as Win32 has, much less been stable for that whole time. And Win16 has 10 years more beyond that.

    17. Re:Stable API by Anonymous Coward · · Score: 0

      Yeh - which was precisely the point. They are supporting an old API, not just keeping the API constant as the root of this thread said. The API has changed dramatically, but google are maintaining impressive backwards compatibility with the old API.

      That we be very helpful when Google Maps moves out of Beta.

    18. Re:Stable API by Anonymous Coward · · Score: 1

      Lol, that's literally the only part.

    19. Re:Stable API by dos1 · · Score: 1

      There's nothing "old" in tiles, they aren't just a fallback - they are still essential to the service they provide, so there's no reason to remove support for them. Maps offer two equally supported ways to get the map data: raster and vector. In some use cases you want raster, in others vector. That's it, not much to attribute to backwards compatibility, yet alone its "insane amount".

      (sure, they do provide HTML-only frontend for instance and that's very good and could make some argument there, but that's not what the article was talking about)

    20. Re:Stable API by Anonymous Coward · · Score: 0

      Windows? Does it run on PC-DOS 1.0 or the Commodore PET with 16 KB of RAM? Radio Shack TRS-80? Apple ][? Multics?

  2. Cool story, bro by Anonymous Coward · · Score: 0

    That's rare and awesome.

  3. lynx by aod7br7932 · · Score: 1, Interesting

    lynx still browses the WEB, that doesn't mean the web has backwards compatibility

    1. Re:lynx by Anonymous Coward · · Score: 1

      It does which is called HTML

  4. Needs Google+ Integration by Anonymous Coward · · Score: 0

    That is a sure way to break compatibility.

  5. Yes, but what about IE6? by evenmoreconfused · · Score: 3, Funny

    Surely the only thing that's really important is what IE6 does with it. Why would anyone use anything else?

    --
    No. Well...maybe. Actually, yes. It really just depends.
    1. Re:Yes, but what about IE6? by Anonymous Coward · · Score: 0

      Haha, if it works on IE6 we should get them a prize. Therapy sessions would be a good idea.

    2. Re:Yes, but what about IE6? by toddestan · · Score: 1

      I tried it actually, and it doesn't work. I didn't dig too deep, but it appears the problem is that Google forces everything to https, and IE6 doesn't know how to handle the type of encryption Google is using. Google Maps, however, did work just fine in Firefox 8.0.1.

      Note that this on a Windows XP SP1 machine, you may have more like on a more updated version of IE6.

  6. Okay then by cyberchondriac · · Score: 2

    This sounds like a free ad for Google more than anything else. Slow news day?

    --

    Look back up at my post, now look back down, you're on the Internet. Now look back up. I'm a signature.
    1. Re:Okay then by postbigbang · · Score: 1

      The only thing that's insane is the poster. Don't get me wrong, it's nice that you can scroll a map, size it, and use different overlays. It's hardwork. But insanely cool? Nope. Just good work over a long ride.

      --
      ---- Teach Peace. It's Cheaper Than War.
  7. Amazing by mdm-adph · · Score: 1

    Absolutely amazing. Really shows you what continuing to support an older API can do. I wonder if there's some really old customer that started using Maps API v1 or something that still uses it, and that's why Google keeps it going?

    Also, I think the T-Mobile G1 (called the HTC Dream outside the US) ran Android 1.0. I remember getting one, and using it, and about a month or so later getting the first Android 1.1 update.

    --
    It is by my will alone my thoughts acquire motion; it is by the juice of the coffee bean that the thoughts acquire speed
    1. Re:Amazing by rickb928 · · Score: 2

      My G1 ran Android 1.0 (in October 2008) all the way to 1.6 stock, and further, 2.1, on Cyanogen Mod.

      Since Cyanogen had offended Google by then, I had to get the Google Apps from a zip file, a lot of stuff wasn't in CM 5 due to memory constraints, and it was slow. But it worked. And it still does to this day, though the battery I have is pretty sad.

      Not that Google was the least embarrassed to release Android 1.0 without working Bluetooth, mind you. But that was a fun phone, rooted and all. Perhaps my HTC M7 was as much fun. I can assure you my U11 is not. I will not purchase another HTC device. the run is over.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    2. Re:Amazing by Anonymous Coward · · Score: 0

      Serge still has an old Android v1 phone, they have too keep supporting it because of him.

  8. Insane by Anonymous Coward · · Score: 1

    The only thing insane is how low our expectations have become that we don't expect software to degrade gracefully, especially since Google maps is a glorified web page.

    Early on I had hoped that Free and Open Source Software would mean less software being abandoned or radically overhauled and that users would have greater comfort and consistency. How very wrong I was.

    1. Re:Insane by xxxJonBoyxxx · · Score: 1

      ^^ This.
      "Hey, something STILL works three years after it was created" = double-plus good.
      >> I had hoped that Free and Open Source Software would mean less software being abandoned or radically overhauled
      And now you know one of the reasons why we still have Microsoft. And Oracle. And IBM.

      It's really only when you get comfortable with regular radical overhauls that you get truly comfortable with free open source projects supporting your operations.

  9. Android TV, Dex? by Anonymous Coward · · Score: 0

    Try it on any Android TV device and its unusable, you can zoom in but not out, it doesn't support mouse and keyboard properly.

    Try it on Dex, sucks, unusable.

    It needs work on modern devices, don't care if it can still run on a 2004 Java phone.

  10. 5 years? by DogDude · · Score: 2

    It's sad that a company keeping software roughly the same for 5 years is considered "news". Microsoft and other real software companies often support their products for a decade or more, believe it or not.

    --
    I don't respond to AC's.
    1. Re:5 years? by Voyager529 · · Score: 1

      It's sad that a company keeping software roughly the same for 5 years is considered "news". Microsoft and other real software companies often support their products for a decade or more, believe it or not.

      Well, I think the more newsworthy part is that Google has a piece of software which continues to function for users of relatively ancient devices and operating systems. Since the company is notorious for depreciating products at a whim, it's surprising that anything but their search engine has that amount of backwards compatibility available to it.

      Moreover, MS is in a bit of a different position with respect to supporting software for a decade - it's typically locally installed. I've got Windows 98 install CDs that will still happily install and run on hardware capable of handling it - it's not dependent on the mothership for anything. By contrast, the locally installed component of Google Maps is basically responsible for figuring out which map data is needed from Google, getting that map data, and then showing it with a blue dot on the screen. If Google made changes to the back end, the installed copy would load, and proceed to go nowhere, or throw an error message, or something.

      Essentially, it's not surprising that the old mobile apps still start, it's that Google has been mindful to make sure that improvements to the back end are still usable by the last .1% of people still using very old hardware.

    2. Re:5 years? by TheRaven64 · · Score: 2

      The real news is that a Google product lasted for more than 5 years without being cancelled or changed into something completely different that all of the users hated.

      --
      I am TheRaven on Soylent News
    3. Re:5 years? by Anonymous Coward · · Score: 0

      The real news is that a Google product lasted for more than 5 years without being cancelled or changed into something completely different that all of the users hated.

      https://tech.slashdot.org/story/18/02/12/143230/googles-next-android-overhaul-will-embrace-iphones-notch

      You have a very good point.

    4. Re: 5 years? by Anonymous Coward · · Score: 0

      2007 to 2018 is only 5 years? It felt longer than that.

  11. What a miracle! by Anonymous Coward · · Score: 1

    Microsoft supports running 30 year old third-party applications on Windows 10? Idiotic cruft from a stupid evil monopoly.

    Google supports running a web app that it writes itself on a 9 year old platform that it still controls? OMG THANK YOU FOR GENIUS ENGINEERING GOOGLE! LET US WORSHIP YOU!

    Incidentally, for all this "amazing" compatibility, how about getting Google Earth to run on Firefox? Or how about getting Google Earth to run on Chromium without hacking Chromium up? Oh wait, that doesn't count apparently.

  12. Not insane by RJFerret · · Score: 4, Insightful

    That is neither "insane" nor "hardcore", stuff continuing to work should be the norm (and is in many cases); insane is the opposite, that software is changed to not function anymore. It's ridiculous that simple things we used to be able to do are no longer capabilities.

    Worse is systems/devices that used to have decades or hundreds of years of functionality are now being compromised by more software integration without a durable mindset.

  13. Incredible! by Anonymous Coward · · Score: 0

    This is like how if you take the apps from Windows 2.0, you can still run them under modern versions of Windows.

    Except that is actually impressive, because the backwards compatibility spans over 30 years and many huge technological changes.

    This is similar, except it's only had to maintain compatibility over like 3 years and all the breakages their own team have introduced on a whim.

  14. It's not software by Anonymous Coward · · Score: 1

    Have you seen the Google Maps API? It works like webpages. You send the server a request with parameters to define details and it sends back a JPG, XML, JSON, or whatever. But it's actually much simpler than webpages because the possible parameters are limited. In other words, it's not backward compatibility. It's just a simple set of web server requests.

    I happen to be writing this on XP -- 17 years old. When I want to edit a Google map image I use Paint Shop Pro 5, which is about 20 years old. I guess we have different definitions of "way back".
     

  15. buy a goolge self driveing car vs an apple one as by Joe_Dragon · · Score: 0

    buy a google self driving car vs an apple one as the apple one will go EOL and stop getting software updates after only 2-3 years with an $5000+labor and shop fees cpu upgrade needed to keep it on the road.

  16. Web Site vs Application by Anonymous Coward · · Score: 0

    Jeez, it is almost as if a web site will work across any device that has a browser while an installed app only works according to the operating system and environment and hardware.

    Makes you wonder about the future of a company that installs an app vs one that creates a web site that acts as the application.

  17. Re:buy a goolge self driveing car vs an apple one by XxtraLarGe · · Score: 2

    buy a google self driving car vs an apple one as the apple one will go EOL and stop getting software updates after only 2-3 years with an $5000+labor and shop fees cpu upgrade needed to keep it on the road.

    Mac OS High Sierra is supported on Macs from 2009. Your argument is invalid.

    --
    Taking guns away from the 99% gives the 1% 100% of the power.
  18. It works on iOS 4 by Quakeulf · · Score: 1

    I still use an iPhone 4 with iOS 4 and it works just fine. I don't have the fancy streetview but at least I get directions and position.

  19. Ever heard of Windows? by Anonymous Coward · · Score: 0

    That is what you call backwards compatibility.

    These web tards think they invented the idea of something working for 6 years without breaking.

  20. Layers by Howitzer86 · · Score: 3, Insightful

    If you run Google Earth Pro (the application, not the web app), you can see how the new stuff is layered on top of the old stuff in a way that might not be as apparent in the Google Maps app.

    By default, Google Earth looks a lot like Google Maps - especially the browser version.
    If you turn off 3D Buildings in Google Earth Pro, it drops back to projecting 2D satellite photos on topography. This is how it looks in the Google Maps Android app.
    If you turn off terrain, that topography disappears and the ground is perfectly flat. Now you're working with data that's available to the old Android apps.
    You can't turn off the satellite textures in Google Earth, but if you could, that would just leave the roads and street names. This is what was available to the first Android and Java apps.

    New versions of Google Maps will load new layers, but so long that Google maintains the old layers and the format it is stored in, there's no legitimate reason why old versions of Google Maps couldn't load it and simply ignore the new stuff.

    Though I have no experience, I'd guess it's this way because the database is being updated constantly, and not just for every official release. I can imagine they don't want to have to keep things updated while also updating the format, so instead, they just created one good extensible database and add to that in layers as new features become available.

    Someday, years from now, we'll be marveling at the fact that Google Earth Pro still works, and still accesses all the new GIS data, years after Google abandoned it in favor of the web app. Sure, it won't support holographic teleportation targeting, but it'll still do what it was designed to do 10 years prior.

  21. Yeah, but... by Anonymous Coward · · Score: 0

    ... sometimes you gotta use the lite mode ( ?force=lite )... and it does not always show an icon so we can click on it.

  22. Normal, note insane. by Anonymous Coward · · Score: 0

    Backward compat should be the norm, not some 'insane' exception and is for most large scale code ventures that last more than a couple versions/years. The idea that doing backward compat work is exceptional shows what crap is being taught in schools these days

     

  23. Utter Shite by Anonymous Coward · · Score: 0

    pile of dog poo

  24. Re:buy a goolge self driveing car vs an apple one by omnichad · · Score: 0

    And the last version of Final Cut Studio was released that same year. It does not work at all on High Sierra.

  25. Meh by fluffernutter · · Score: 0

    For a company the size of Google, an an application that is basically drawing tiles in a grid, is this really all that impressive?

    --
    Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    1. Re:Meh by Anonymous Coward · · Score: 0

      I hope you're joking else you have no clue about the technology needed to make this work beyond the superficial "drawing tiles on a grid"

  26. Palm OS Maps was crippled by bugs by 2011. by Anonymous Coward · · Score: 0

    On Palm OS the live traffic part of Google maps started crashing the whole app in about 2011. Map the app useless for traffic after that.

  27. The trouble today by darkain · · Score: 4, Insightful

    This just goes to show the trouble with today's mindset of software, that any sort of decent backwards compat support is seen as revolutionary. And here I am, running Windows 10, still printing on a printer built in 1998 (that has official Win10 drivers), and using software written for Windows 95 that still works flawlessly. As much as the Slashdot crew loves to bitch about Microsoft, the WIn32 API has been stable as hell since its inception, MS has put in a great deal of effort to ensure software retains functionality. (yes, this excludes the DDK, which changes every Windows version)

    1. Re:The trouble today by Anonymous Coward · · Score: 0

      And, now MS really wants to squirrel away Win32 behind whatever the MS Store POS apps come from - UWP, right? (uh, Point of Sale...yeah).

  28. It's Low Expectations by Anonymous Coward · · Score: 0

    A lot of the newer software (mobile, cloud stuff) has lowered expectations of compatibility dramatically. Easy come, easy go.

    I have experience in the mainframe and minicomputer world. Compatibility lasting decades is the norm there.

    Therefore when I heard breathless descriptions like "Google Maps for iOS, version 1.0, released late 2012, still works just fine." My response is, really? 5 years of compatibility is impressive to you? What else mundane is impressive to you? Toothpicks? Grocery store scanners? Beanie Babies?

    It sure doesn't take much to impress some these days. Is Truong a Millennial?

    1. Re:It's Low Expectations by Anonymous Coward · · Score: 0

      Further to my comments above.

      One thing that doesn't always get attention. Compatibility can become an albatross; I saw that in the large systems world.

      In general a default design assumption of compatibility is good. However you can find yourself boxed in by a long-term treadmill, where everything you do has to be compatible with everything that came before. In the large systems world this manifested itself as applications that were version current, but hadn't changed to meet more current expectations. A static UI, limited (and unchanging) interface and export options, an inability to support and model different workflows.

      At an even higher level, those large systems had marketing, cost and architectural assumptions that could not easily be changed. I can hear the objections now! "Yes, but it doesn't have to be that way!" I used to repeat those objections myself...

      One of the biggest changes in computing, and the hardest for older systems to respond to. Large systems were created in an environment where the computer was expensive and the people were (relatively) cheap. Now, the truth is, the computer is cheap and the people are expensive.

      Just try and re-architect a system around these new cost dynamics! Most of the time you cannot cost-justify such a massive redesign based upon a single driving factor. Instead you wind up revisiting every assumption, reviewing every unmet need, and re-doing everything from scratch. And that normally means leaving the original hardware and OS platform behind. Or you leave the legacy system largely as it is. Which is what usually happened.

  29. You mean "insane OS backwards compatibility" by Anonymous Coward · · Score: 0

    Most of the backwards compatibility is likely to reside in the Android OS and iOS, specifically in the APIs that Google Maps uses.

  30. Old Opera by kackle · · Score: 1

    Google Maps still works in Opera 12 (~5 years old) as I use it now and again.

    I still miss the Javascript-less version of mapping that Yahoo! used to have during the dial-up days. Every edge-of-the-map "square" was an HTML link pointing to the next portion of the map. It was so fast despite the bandwidth and slower CPUs of the time.

  31. That's because when the MBA's took over by Anonymous Coward · · Score: 0

    They didn't know how to innovate so the only breaking changes are those their UX Dessigners introduced rather than any core changes to the product.

  32. Also not even true by Anonymous Coward · · Score: 0

    I'm currently using a stupidly old computer (only two cores! only one GB of memory!) and I can readily notice when google fsc^Wimproved something *sigh* again *sigh*: The memory use will have gone up, the speed will have gone down, and nothing useful will have changed.

    I *wish* that something, once made to work, would keep on working. But with software, especially anything remotely connected with "'web", including websites and web browsers, that's just not true. And in the case of browsers, you can't even "just" upgrade to a newer version to keep all those redone! improved! websites working like they did even just yesterday: The user interface will have changed, there'll be more unwanted software in there, it'll require OS upgrades and hardware upgrades and more memory and whatnot.

    It's just wasteful. I'm seriously considering going back to paper maps and plotting my courses by hand, because google maps just won't do it without all the extra malarky I would do so much better without. Well, maybe try a FOSS non-browser mapping program first. Suggestions?

  33. It's not backwards compatible by reboot246 · · Score: 1

    with my eyes! Seriously, the maps lack decent contrast. What I could see a few years ago is nearly impossible to see now. I would like to blame them, but I know it's really my aging eyes that are at fault.

    Their maps have never really had decent contrast. You sure as hell can't print them. Plus, I wonder how many car accidents have been caused by people squinting at their phones trying to see a street name.

  34. Backwards compatibility is not insane. by Anonymous Coward · · Score: 0

    This article is a sad reflection on the pathetic state of today.

    Backwards compatibility should be the standard, not "insane".

    It's insane that people are expected to be good little consumers and upgrade every year.

    Fuck off.

  35. i still remember by RIPgriggs · · Score: 1

    when they were offering you the opportunity to use their GPS maps service and incorporate it into your app. this is why it is still compatible. this project was always meant to be that way.

  36. I have complained about this for YEARS... by Anonymous Coward · · Score: 0

    Specifically regarding GNU Projects.

    Musl Libc is dramatically better about this, when your apps work, but it also only targets linux 2.6.32+ (I've actually used it on 2.4 kernels as part of a statically compiled older busybox with threading removed, although I think newer versions may have broken that thanks to c11+ bits.)

    Glibc has always been a clusterfuck that seemed more intended for job security for supposed 'open source programmers' than actually intended to provide the sane and functional POSIX/unix environment claimed. Rich Felker particularly and many of the other musl-related guys have written a lot of documentation on the what is wrong with glibc, and having read the old mail threads back when there was hate for both the gcc and glibc maintainers, I can attest that not only were they often hostile to people trying to offer sane (and backwards compatible) alternatives to certain patches, but they seemed as often as not to be actively hindering gcc/glibc development. Given that one of the guys quit to go work at Goldman Sachs, I have to wonder if they weren't industry shills put in place to set back open source.

    As far as linux videogames go: You are often better off with wine and the win32 version for the simple reason that you can get the libraries all compiled against the C++ abi you need relatively easily. With linux it is a crapshoot if the c++ compiler, libc, and game specific prereq libraries will all compile together without error and leave you with a result that doesn't crash due to mangled data structures. Still happens with the latest g++ releases (5/6/7, haven't tried 8 plus any of the others yet). So basically you need separate copies of libraries compiled for each standard, c++98, c++11, plus symbol mangling specific to the -fabi version. And even then thanks to header changes sometimes things break that don't show up until runtime.

  37. "Crazy backward compability......" by Anonymous Coward · · Score: 0

    ..about as crazy as software written when M$ Dos 3.30 was new still running just fine under
    M$-Dos 6.22 or "Dos 7.0"/Windows 95

      Sounds like they simply designed their API/infrastructure well from the beginning. Maybe other companies should take note.