Page 3 of 5 FirstFirst 12345 LastLast
Results 21 to 30 of 46

Thread: Android enter car entertainment

  1. #21
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    Quote Originally Posted by Confuzed View Post
    I agree, but I don't see how that's different to saying that using Linux specific features prevents you running an application on HP-UX, Mac OS X, or Windows. Ultimately we have to make a decision to target a platform at some level. In the case of designing an ICE system I was looking at it as a whole system solution, in a box, so the idea of being locked in to a platform is not a problem in this instance.
    Well actually, if you do it right, an app written for Linux can run on BSD or even Mac OS X and many times even Windows. That's because there are standards and if you follow them, you are more likely to be compatible with other systems that use those standards as well.

    There's a lot of work (trust me) in building an entire system. It helps when you select a good base. Take for example, debian. There are a bazillion devices that can run debian. My phone runs debian. there is awesome device support, it boots fast, has excellent power managment, etc, etc, etc. Debian has shipped in mobile devices long before Android was even thought of. Why would I choose Android over Debian which doesn't have that level of driver or device support? Well, Android has a touchy UI that's pretty nice that I can build carPC apps with. However, if you want the Android UI, you have to use the Android core underneath.

    Contrast that with the MeeGo UI. It's touchy, it's pretty, and it runs on Debian, Fedora, Ubuntu, MacOSX, BSD, etc, etc. If I were to select a base to build on, I would choose the one with the best support for my target device. If your device is a cell phone, Android probably has better support. If your device is a Beaglboard, or Gumstix, or generic x86 board, or an nvidia tegra, Debian already runs on those and has great support. Sure you can brute-force android onto it, but that's extra work and resources that you could be utilizing elsewhere.

    We'll have to agree to disagree on this. I can't see what's "pseudo" about it. You can download the whole source, people contribute to it, and you can modify it to your own needs and distribute it. The changes made to the kernel, though rejected from the trunk because they weren't really useful beyond Android (and uses odd file locks), are available should anyone want them.
    Open source isn't just about throwing code over the wall so people can see it. It's about community. Trust me, Google isn't making many friends in the Open source communities by forking people's code at will, changing it in self-serving ways which isn't useful to anyone else and thus fragmenting Linux. Did you know device drivers written for android have to be re-ported to Linux? This is because of Google's "bizarre" security model which could be useful to all of Linux, except the code that was in the the mainline kernel tree linked to code outside the tree and wouldn't build unless you have both Google's and the mainline branch - utter nonsense. And then Google stopped maintaining it so it wouldn't build at all and therefor became useless. Subsequently, the code was removed.

    The "right thing to do (TM)" would be to push *all* of the code to the tree and help make *it* the standard. Google doesn't care about standards though as they have shown. They want total control and they don't want to answer to anyone. So yeah, fork the code, fragment the community and call yourself better than Apple . This goes against everything that Open Source is IMHO.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  2. #22
    FLAC
    Join Date
    Jan 2008
    Location
    Dartmouth, MA
    Posts
    914
    Tripzero, if I were google, I would fork the code too.

    Linux distributions are hacked together. Too much code sits on top of too much other code and too much code has not been properly debugged. Linux was my primary desktop at one point, but a linux system is far too much work to maintain. Dependency this, dependency that. You install program A one month, two months later you install program B. Both depend on C, but B updates C which breaks A so A must be upgraded to a new version which you don't like. That's just one annoying situation.

    Android provides tight integration. Linux lacks this. I would be ****ed if I installed an app on my phone and the dialer broke because of a dependency. Keeping linux up to date is not designed to work on a system which needs to work reliably. It's good on a set it and forget it server, but you damn well better not mess with that box too much after you deploy it.

    Android also provides easy to use libraries. If you develop an app, you don't have to deal with calling some bluetooth library which may or may not work. You know it's there and you know it works solidly. Linux cant make those guarantees.

    Say what you want, but theres a reason linux isn't popular.
    My Nearly Complete Car:
    http://www.mp3car.com/vbulletin/show...ed-car-pc.html

    Micro Control Center... Control Your Car Across the Internet
    http://www.mp3car.com/fusion-brain/1...-internet.html

    Website: (It's a work in progress, really. All my projects have taken me from ever really developing it.)
    http://paulfurtado.com/

  3. #23
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    Quote Originally Posted by PaulF View Post
    Tripzero, if I were google, I would fork the code too.

    Linux distributions are hacked together. Too much code sits on top of too much other code and too much code has not been properly debugged. Linux was my primary desktop at one point, but a linux system is far too much work to maintain. Dependency this, dependency that. You install program A one month, two months later you install program B. Both depend on C, but B updates C which breaks A so A must be upgraded to a new version which you don't like. That's just one annoying situation.

    Android provides tight integration. Linux lacks this. I would be ****ed if I installed an app on my phone and the dialer broke because of a dependency. Keeping linux up to date is not designed to work on a system which needs to work reliably. It's good on a set it and forget it server, but you damn well better not mess with that box too much after you deploy it.

    Android also provides easy to use libraries. If you develop an app, you don't have to deal with calling some bluetooth library which may or may not work. You know it's there and you know it works solidly. Linux cant make those guarantees.

    Say what you want, but theres a reason linux isn't popular.
    I'm curious to know what distro you had installed on your system? This is almost complete FUD. What you describe is a debian-sid or a gentoo experience. On this type of experience, any update can and does break dependencies, apps, and stability. If you remember from Toy Story, Sid was the kid who liked to blow up toys. If you use Sid as your desktop, you deserve what you get. But you also get to play with the toys that nobody else plays with, which is part of the appeal. However, if you build a product based on something like sid, you may need your head examined.

    Most distro's take snapshots of upstream packages, freeze them, and then there is a period of stabilization before a release. In the case of debian, packages from Sid when stable go into the "testing" branch, which in a few years becomes the next stable Debian release. Other distro's have a tighter cycle, for example Ubuntu takes a snapshot of Debian Sid every six months and then stabilizes it for production desktops and servers. In the case of ubuntu, the only updates you get are stability or security fixes. Then every 6 months, you can "dist-upgrade" to a more updated set of packages.

    For LinuxICE, I took an already 6 month old version of Ubuntu and stabilized that for the car.

    The point is, none of these distro's need to "fork" anything to produce something stable.

    So for the record, "forking" is when you take an upstream package, and modify it in ways that the upstream maintainers either disagree with, or don't think is very valuable to the project. "Snapshotting" is taking a stable version of an upstream package, applying any necessary security and stability patches, and then shipping it with a product. Any patches are then pushed back upstream so future versions will benefit.

    I invite you to try out maemo5 on the n900 if you can. It's a spectacularly integrated system. and guess what? It's a snapshot of debian as well . I have yet to break anything on my phone... yet .

    Linux may be considered the "hacker's" OS, but it's definitely *not* a hack job. There are far more people who want to "do it right" than there are people who want to get a product out the door because there is a deadline and their job is at stake. The Linux hacker's pride is in the beauty of his implementation. After all, he's parading his code to the world.

    Linux is very popular with the hacker ethos. It may not be very popular for the masses, but then again most of the masses don't even know what makes a good OS other than "ZOMG does it play WoW?" In which case, "Yes, Linux does that too."
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  4. #24
    SuperMod - OBDII GPS Logger forum
    Auto Apps:loading...

    Join Date
    Mar 2009
    Location
    Los Angeles
    Posts
    924
    Linux distributions are hacked together. Too much code sits on top of too much other code and too much code has not been properly debugged. Linux was my primary desktop at one point, but a linux system is far too much work to maintain. Dependency this, dependency that. You install program A one month, two months later you install program B. Both depend on C, but B updates C which breaks A so A must be upgraded to a new version which you don't like. That's just one annoying situation.
    Dependency hell on Linux is dead. We've well and truly crossed the point where that was a legitimate complaint. Nowadays if you're suffering dependency hell, it's a pre-meditated choice because you're choosing to use one of the arcane distributions that chooses not to resolve that for you.

    Gentoo counts as arcane, or premeditatedly busted. Sid counts as premeditatedly busted.

    The changes made to the kernel, though rejected from the trunk because they weren't really useful beyond Android (and uses odd file locks), are available should anyone want them.
    This is factually incorrect. Ref: http://www.kroah.com/log/linux/andro...-problems.html

    And that, right there, is why I don't go for android on some devices. Because you've hit a fork in the road; you have to choose to travel the fork that is developed by one company and will demonstrably diverge, or the fork that is developed by many companies and advancing at a much greater pace. This isn't a negative sleight on Android, it's a positive view of not-android.

    And speaking as a developer, I *like* apps that are open source. I *do* bust open the source, fix things, and submit patches on occasion when I need to. With a platform like Android [the apps, not the kernel in this case], Windows, RoadRunner or Centrafuse, that can't happen. Which really puts me off.

    Of course, the kernel and open source are two very small windows onto the wider world of OSs and stuff, but they're a couple things that really make a big difference to me. And honestly, even if you're not a developer yourself, they should make a difference to you.


    So, I've kinda diverged from the topic again, my apologies. But let me finish with a small quote from Neal Stephenson's "In the beginning was the Command Line" [which has some really great parables at the top], something that he hosts on his site about Cyptonomicon, a book that *everyone* should read.
    The group giving away the free tanks only stays alive because it is staffed by volunteers, who are lined up at the edge of the street with bullhorns, trying to draw customers' attention to this incredible situation. A typical conversation goes something like this:

    Hacker with bullhorn: "Save your money! Accept one of our free tanks! It is invulnerable, and can drive across rocks and swamps at ninety miles an hour while getting a hundred miles to the gallon!"

    Prospective station wagon buyer: "I know what you say is true...but...er...I don't know how to maintain a tank!"

    Bullhorn: "You don't know how to maintain a station wagon either!"

    Buyer: "But this dealership has mechanics on staff. If something goes wrong with my station wagon, I can take a day off work, bring it here, and pay them to work on it while I sit in the waiting room for hours, listening to elevator music."

    Bullhorn: "But if you accept one of our free tanks we will send volunteers to your house to fix it for free while you sleep!"

    Buyer: "Stay away from my house, you freak!"

    Bullhorn: "But..."

    Buyer: "Can't you see that everyone is buying station wagons?"

    Gary (-;
    OBDGPSLogger, for logging OBDII and/or GPS data
    OBDSim, an OBDII/ELM327 software simulator
    mp3car forums: obdgpslogger, obdsim

  5. #25
    Raw Wave
    Auto Apps:loading...
    justchat_1's Avatar
    Join Date
    Jul 2008
    Location
    Boston, Ma or NY,NY
    Posts
    1,783
    Quote Originally Posted by tripzero View Post
    I'm curious to know what distro you had installed on your system? This is almost complete FUD. What you describe is a debian-sid or a gentoo experience. On this type of experience, any update can and does break dependencies, apps, and stability. If you remember from Toy Story, Sid was the kid who liked to blow up toys. If you use Sid as your desktop, you deserve what you get. But you also get to play with the toys that nobody else plays with, which is part of the appeal. However, if you build a product based on something like sid, you may need your head examined.

    Most distro's take snapshots of upstream packages, freeze them, and then there is a period of stabilization before a release. In the case of debian, packages from Sid when stable go into the "testing" branch, which in a few years becomes the next stable Debian release. Other distro's have a tighter cycle, for example Ubuntu takes a snapshot of Debian Sid every six months and then stabilizes it for production desktops and servers. In the case of ubuntu, the only updates you get are stability or security fixes. Then every 6 months, you can "dist-upgrade" to a more updated set of packages.

    For LinuxICE, I took an already 6 month old version of Ubuntu and stabilized that for the car.

    The point is, none of these distro's need to "fork" anything to produce something stable.

    So for the record, "forking" is when you take an upstream package, and modify it in ways that the upstream maintainers either disagree with, or don't think is very valuable to the project. "Snapshotting" is taking a stable version of an upstream package, applying any necessary security and stability patches, and then shipping it with a product. Any patches are then pushed back upstream so future versions will benefit.

    I invite you to try out maemo5 on the n900 if you can. It's a spectacularly integrated system. and guess what? It's a snapshot of debian as well . I have yet to break anything on my phone... yet .

    Linux may be considered the "hacker's" OS, but it's definitely *not* a hack job. There are far more people who want to "do it right" than there are people who want to get a product out the door because there is a deadline and their job is at stake. The Linux hacker's pride is in the beauty of his implementation. After all, he's parading his code to the world.

    Linux is very popular with the hacker ethos. It may not be very popular for the masses, but then again most of the masses don't even know what makes a good OS other than "ZOMG does it play WoW?" In which case, "Yes, Linux does that too."
    And yet linux can be shot down with one word...."standardized" . The beauty of open source ends up biting linux in the *** on this one. If hacker1 decides to write xyz audio program theres 6 different sound systems it could be based off of. Which really shoots the whole thing in the foot if hacker2 picks a different one then hacker1. I think thats part of the whole love affair with android (because like i'm sure you'll point out, dozens of its features are built directly off of linux features).

    edit:
    Oh and how bout those kernal updates on a linux system...

  6. #26
    SuperMod - OBDII GPS Logger forum
    Auto Apps:loading...

    Join Date
    Mar 2009
    Location
    Los Angeles
    Posts
    924
    And yet linux can be shot down with one word...."standardized" . The beauty of open source ends up biting linux in the *** on this one. If hacker1 decides to write xyz audio program theres 6 different sound systems it could be based off of.
    Oh, please. Sound is the classic example ever since that guy at adobe talked about it. For all the issues, the sound system is sufficiently incestuous that anything targetted at one sound system will probably work for others, because they all feed off each other. If you really care, just pick one of the three big hitters depending on your needs, and you're good to go.


    This is a thread about car PCs, so let's go to town on standardisation.
    Specifically, interface standardisation, seeing as how interfaces are pretty much pivotal to what makes a CarPC suck or not.

    RoadRunner has a forum about how best to make your interface not like anything else. CentraFuse too.

    The lack of standardisation in car front ends means that this very website has twenty five subforums about different front ends. There's a forum with almost a hundred threads dedicated to talking about front ends not yet popular enough to warrant their own subforum. People use windows, despite the fact that the built in media player completely fails to adhere to the windows HIG. Not to be outdone, Microsoft's flagship application suite doesn't adhere to the HIG anymore either! Feeling insecure in their banality, none of the other common media players decided to go with any standard interface either.

    What am I getting at? I don't see choice as a bad thing, especially in something as highly complex and personal as a CarPC or a choice of desktop environment. But one man's standardisation is another man's choice, and I think bashing linux for choice is possibly not the most effective way to begin what you hope will be a conclusive skewering.

    Gary (-;
    OBDGPSLogger, for logging OBDII and/or GPS data
    OBDSim, an OBDII/ELM327 software simulator
    mp3car forums: obdgpslogger, obdsim

  7. #27
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    Quote Originally Posted by justchat_1 View Post
    Oh and how bout those kernal updates on a linux system...
    What about kernel updates on a linux system? When my kernel updates in Ubuntu, all the proprietary modules recompile themselves. This was a problem when they didn't up until about a year and a half ago. You'd have to reinstall the nvidia driver every time you get a kernel update. But if you use the distro's package, you no longer have to even care.

    I can't think of anything else that could go wrong. If you don't have any closed-source modules, you don't need to worry. Also, if something does go wrong during the kernel update (for instance, lightning hits your house or something), you can always boot to the previous kernel.

    Linux is not without flaws just like any piece of software. The problem is, if you don't keep up to date, your complaints quickly become invalid.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  8. #28
    Newbie
    Join Date
    Mar 2010
    Location
    Devon, UK
    Posts
    9
    Quote Originally Posted by tripzero View Post
    Well actually, if you do it right, an app written for Linux can run on BSD or even Mac OS X and many times even Windows. That's because there are standards and if you follow them, you are more likely to be compatible with other systems that use those standards as well.
    You don't know me so I'll let you off this one... it will help if you know the main product I work on, on a daily basis, is built currently on 16 (yes, sixteen) platforms... so I know all about building products for multiple platforms and I know how hideous it can be. When you consider that the majority of those are UNIX or UNIX-like (POSIX, hah!) and we still have to work our asses twice as hard to make things work the same across all platforms... well you can understand why I am amused by this. As for Windows... come on... are you talking CygWin or what?? Your app needs to be insanely simple for it to compile under Windows and just work when its been written for a POSIX platform!

    There's a lot of work (trust me) in building an entire system. It helps when you select a good base. Take for example, debian.
    A great example... I built a virtual appliance based product from the ground up, which took almost three years and is intended for enterprise security. Debian was my starting point for the appliance's OS. Debian is great as a base and the package management is beyond excellent!

    Why would I choose Android over Debian which doesn't have that level of driver or device support?
    You do remember that these exact same arguments have always been made against Linux versus Windows etc, right?

    Contrast that with the MeeGo UI. It's touchy, it's pretty, and it runs on Debian, Fedora, Ubuntu, MacOSX, BSD, etc, etc.
    It looks good, though I've not really worked with Qt personally and found some of the example code to look kinda bloated for what it acheived, almost Windowsey! But more importantly, from the point of view of support, what products are on the market with it installed?


    If I were to select a base to build on, I would choose the one with the best support for my target device. If your device is a cell phone, Android probably has better support. If your device is a Beaglboard, or Gumstix, or generic x86 board, or an nvidia tegra, Debian already runs on those and has great support. Sure you can brute-force android onto it, but that's extra work and resources that you could be utilizing elsewhere.
    Again, these are arguments that have been made against Linux in the past, and I've argued against them then. The simple answer is that, despite your views on it, Android is open source and does receive contributions from the community... and even if you don't contribute directly to Google's code and just modify for yourself and others online, you can add to its functionality. This is exactly how Linux has obtained a lot of its compatibility now. Linux didn't start out ported to so many hardware platforms, people have made it that way. So why shouldn't the same happen to Android?

    Open source isn't just about throwing code over the wall so people can see it. It's about community. Trust me, Google isn't making many friends in the Open source communities by forking people's code at will, changing it in self-serving ways which isn't useful to anyone else and thus fragmenting Linux.
    Hmm, I work closely with FOSS people around the world, people involved in the kernel and in projects that are synonymous with your every-day linux install, and I've not received that message. We'll just have to disagree on that one.

    [quote]
    Did you know device drivers written for android have to be re-ported to Linux? This is because of Google's "bizarre" security model which could be useful to all of Linux, except the code that was in the the mainline kernel tree linked to code outside the tree and wouldn't build unless you have both Google's and the mainline branch - utter nonsense.
    [quote]

    I find this argument a little odd. How do you think many of the big changes in the kernel have happened? SE Linux for one! Various file systems and drivers. Someone at some point has to make a change for things to develop. Not every change is going to be universally accepted from the start. I'm not going to claim that Google's devs couldn't have gone about the kernel side of things better, sure they could, and maybe they would have made more friends that way. But ultimately they've made a product that works, is selling, and is getting a lot more people (unwittingly) using Linux when they could have been using WinMo.

    The "right thing to do (TM)" would be to push *all* of the code to the tree and help make *it* the standard. Google doesn't care about standards though as they have shown. They want total control and they don't want to answer to anyone.
    As far as I'm aware, The Open Handset Alliance actually has "control" over Android. If they want control, why create a platform that is open source in the first place? Motorola and HTC have both modded Android to their needs, opting to lose the "With Google" branding in favour of doing things their own way, because they are free to do so. Apps are accepted on to the Market and only get removed if users flag it. How is that like Apple?

  9. #29
    Newbie
    Join Date
    Mar 2010
    Location
    Devon, UK
    Posts
    9
    Quote Originally Posted by chunkyks View Post
    And speaking as a developer, I *like* apps that are open source. I *do* bust open the source, fix things, and submit patches on occasion when I need to. With a platform like Android [the apps, not the kernel in this case]
    Bit of a generalisation... some apps for Android are open source, others aren't. The platform itself is. True also of Linux. There are also plenty of open source applications for Windows.

    But let me finish with a small quote from Neal Stephenson's "In the beginning was the Command Line"
    Excellent quote :-)

  10. #30
    Newbie
    Join Date
    Mar 2010
    Location
    Devon, UK
    Posts
    9
    Quote Originally Posted by tripzero View Post
    What about kernel updates on a linux system? When my kernel updates in Ubuntu, all the proprietary modules recompile themselves. This was a problem when they didn't up until about a year and a half ago. You'd have to reinstall the nvidia driver every time you get a kernel update. But if you use the distro's package, you no longer have to even care.
    Linux is not without flaws just like any piece of software. The problem is, if you don't keep up to date, your complaints quickly become invalid.

    I agree absolutely with the above. A modern linux system, especially one using the debian style package management, just doesn't have those kinds of problems these days. Updates couldn't be easier, to installed software, and to the system.


    Regarding our differing views on the whole Open Source thing and Google's take on it, I was giving it some thought. I have a lot of involvement with the big enterprises and their connections with FOSS. The company I work for hosts a couple projects and even employs some "names" from projects you would know well.

    The companies we deal with don't buy in to FOSS ideals, in some cases they go as far as banning anything open source from their networks due to security concerns. I guess because of this I have adopted a view of FOSS that is sympathetic to the commercial and corporate world, losing some of the ideals along the way.

    So yeah, Google could have done things differently, particularly the kernel side of things. I don't have any strong feelings about that, but I don't think that making a change that suits Android's needs that isn't wanted generally in the kernel code is evil or "wrong". It is the kind of thing that is explicitly allowed in the license.

    On a loosely related note, perhaps you're aware of the current situation with the Motorola Milestone? The European version of the Droid. It has a signed bootloader and only boots code signed by Moto, making it virtually impossible to run custom ROMs. Unlike the Droid. Of course there are a lot of people very unhappy with this and giving Moto a hard time (have a look at Motorola Europe's "Fan" page on facebook!).

    One guy referred to this as Tivoization. Richard Stallman thinks this is pure evil, Linus Torvalds thinks its fair play and protects the rights of companies to do this kind of thing with the linux kernel.

    I guess you're more Richard, I'm more Linus, and we both have valid points of view

    Man its frustrating trying to take part in a discussion when my posts are delayed by several hours. Isn't it clear yet that I'm not a spambot??

Page 3 of 5 FirstFirst 12345 LastLast

Similar Threads

  1. FAQ: Why not Home PC speakers for the car?
    By RedGTiVR6 in forum The FAQ Emporium
    Replies: 25
    Last Post: 03-08-2010, 09:44 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •