3 ms·
> It's not about pretty icons, Apple fanboys, and its not about business use, Windows Mobile Nerds: its about giving people the true tools to build whatever the
by nuclear_eclipse 18y ago
> It's not about pretty icons, Apple fanboys, and its not about business use, Windows Mobile Nerds: its about giving people the true tools to build whatever they want without lame App Store limitations and _OS handcuffs_.
Tell my why developers can only use Java applets then that can only access certain API functionality that Google (or the carrier) wants to limit them too? Why can't I program for Android using Python, or C, and why can't I connect to the phone from another machine over SSH to transfer files, or compile applications, or tunnel an X11 session? What was that you said about "no OS handcuffs" again?
> No one else makes a legitimate phone OS with all this support that can be tweaked down to the very roots. For one thing, I'm excited to be able to download an entirely different version of all of Android’s core applications if I don't like the default 1.0 versions—and that’s every app, everything from the dialer to the contacts manager
Openmoko has been making this possible (and infinitely more open) for far longer than Google was even planning Android...
- davidw 18y agoWe'll have the source code next month, and at that point, your hacking abilities will be the only limit. OpenMoko is interesting, but realistically, Google has way more muscle and stands a better chance of spreading Android far and wide.
- nuclear_eclipse 18y agoJust because you have the source code to Android doesn't mean you have a fully-open phone or operating system. Your Android apps are still limited to their Java sandbox, and you still don't necessarily have any sort of access to tinker with the OS installed on your phone, let alone re-flash it at will like I can with my Neo. If I screw something up, or if I one day decide I want to run Debian Linux instead of Angstrom/Openmoko, I'm free to reflash my phone's bootloader, kernel, and rootfs, or specially format its Micro SD card and boot from that instead. With Android, you don't yet have any of that freedom, and if the American cellular companies have anything to say about, you never will. However, I will grant you the fact that Google has a gigantically higher chance of changing the face of mobile communications with Android than Openmoko, but I'd still rather have my Neo any day.
- davidw 18y agoI'd say it's an open question. It depends on the hardware manufacturers and carriers and what they let you do, and at this point it's anyone's guess as to what will be allowed where. Initially we probably won't see "anything goes" types of deals, but maybe we will later on. Once you get sources though... I don't think it'll be long before people start doing C-based stuff. The Java environment (which isn't really Java in terms of the VM) is so that they can keep some semblance of control for non-hacker type people.
- omouse 18y ago>Why can't I program for Android using Python, or C, Because those are pain in the ass languages for embedded devices. Do you really want to manage your own memory in C or deal with the slowness of Python on a mobile device??
- orib 18y agoWhat if the answer was yes? There are some things C or C++ are just better at, like operating in a low-memory environment when you want to squeeze as much as possible out of the system. Sure, GC is nice and all, but for things to work well with a modern copying generational GC, you need 2 or 3 times the amount of RAM as an equivalent manually managed tool, because collection is lazy and you don't want to run it on every allocation -- that would be too expensive. So garbage sticks around for a little while. Alternatively, some people like writing in high-level compiled languages (most of which are faster than Java) like OCaml or Haskell, both of which are suitable for a device that would also be running Java.
- omouse 18y agoedit: If you want to use C/C++ go and so some other mobile device platform and see how "excellent" they are. >There are some things C or C++ are just better at, like operating in a low-memory environment when you want to squeeze as much as possible out of the system. No, that depends on the developer. A lot of developers don't want to worry about memory management and memory leaks. The thing is that they need a VM-based language so they can port the VM over to all sorts of hardware instead of forcing developers to mess around with portability issues. Port of Squeak Smalltalk to the iPhone: http://isqueak.org/HomePage http://isqueak.org/HomePage
- opal 18y agoJava's "write once, run everywhere" is a sham. Even within just the mobile targets.
- orib 18y agoNo, that depends on the developer. A lot of developers don't want to worry about memory management and memory leaks. That has nothing to do with what I said. If you want to avoid the peak memory overhead of using a GC (and the peak memory overhead is quite a bit higher if you don't want to kill performance -- you'd need to run the GC after every statement that could possibly kill garbage otherwise), you need to use C or C++. And as for other mobile platforms -- Windows Mobile allows C++, IPhone is in Objective-C, Symbian is C++, etc. Java is popular, but it's not overwhelmingly so. And this is even taking into account that it's easier to get a Java based device approved by carriers/regulators because the VM can trap more attempts to break the OS and thus make sure that you can't trick the software into doing out-of-spec stuff. GC is a wonderful tool. it prevents leaks, but it needs more memory when you're rapidly generating garbage. I wouldn't want to program without it... unless I'm trying to shoehorn things onto a tiny system.
- icey 18y agoThe problem I have with Openmoko comparisons is that nobody seems to actually use one as their regular phone yet. I get that it's cool, but it sounds kind of like something you play with as hobby; not something you put in your pocket in case there's an emergency.
- RobGR 18y agoI know two people who use an OpenMoko as their "daily driver" phone. Admittedly, those two people are hardcore linux geeks from the local LUG, and even they admit that they are putting up with some annoyances that many people would not deal with. Nevertheless, I can remember thinking "what kind of massive nerd, with way more money than sense, would have a unix server at his fucking HOUSE" back in 1995. I now have a platoon of linux machines in my house. And, openness does generally win in the end, even beating security, useability, and aesthetics. I am going to hold on to my current phone until I can justify the cost of an OpenMoko. Now, if you want to make a game tied into the next blockbuster movie and plan to sell a million copies next month and none afterwards, you probably should not invest in the OpenMoko. But if you are thinking in longer terms, I think it is the way to go. Consider this proposition: you are talking to a courier delivery service (think FedEx or UPS but a smaller regional company). They want to replace the handheld package scanner / data entry thing their delivery drivers use, the current ones cost them $500 per device plus the integration and central servers. They want to invest in something that allows their drivers to fetch more information, such as traffic information and the dispatch messages they currently get by phone or radio, and have it integrated into the hand held computer. You can't offer to save them a lot of money by writing an iphone app, iphone apps don't have access to the SMS messages among other things. I'm not sure if you can do it in Android, I'm going to guess yes though. I looked through the SDK reference briefly, and the fact that you had to write in Java was not good, and I wasn't sure how to get access to the SMS functions or call log or stuff like that. But I know you can do it on an OpenMoko, because you have access to everything. I don't need to learn an SDK, the same APIs I use to program on linux are there. And if the project is big enough to justify a special production run of an OpenMoko with some kind of proprietary RF added and a bar code scanner, the OpenMoko's hardware is open too. Now, presume that I don't have the deal above in hand, but I am thinking there is a 10 percent chance I can get it in the next 2 years. If my cell phone breaks, am I going to buy an iPhone or an Android ? No, I'm going to make a long term investment and get an OpenMoko.