[Q] Ubuntu or Android for a 3rd world tablet-based education project? - General Questions and Answers

Hi all
MY QUESTION
How much work is it to get Ubuntu working on a cheap tablet, (in terms of weeks and stress/reliability)? I'm about to spend a year writing tablet software that needs cheap hardware. If I find a capable Android tablet going cheap, is it reasonable to consider getting Ubuntu working on it, instead of restricting myself to the Android OS to use cheap tablets? Would Ubuntu C++ apps still kill performance? (Ubuntu will save me lots of development in other ways.)
ALL comments pleease, however brief and knee-jerk.
BACKGROUND (all feedback gratefully received)
I'm at the design stage of a project to use tablets to improve education in poor countries. Extremely briefly, the tablets will use elements of social media to enable children to collaborate remotely and asynchronously on projects, and game aspects to get the kids excited, who have probably spent the day working on the fields, and to welcome kids with special needs. The system will enable education to continue in complex emergencies, such as droughts and conflicts. Currently most kids drop out after grade one as the education they're offered is so poor. Tablets can support teachers and enable kids to get more out of their classroom and homework time.
The system needs some clever back-end engineering to operate a local social network if there is no internet connection. (I'm thinking something like NodeJS acting as both a p2p client and a server.) It also needs to run on cheap devices, if it is to be adopted by third world Ministries of Education.
I am currently torn between Android and Ubuntu for tablets. Android will presumably be the cheapest platform for the foreseeable future - tablets now go for as little as $40 wholesale. However Ubuntu for tablets now offers the ability to bring a proper IT education to these children, as they can learn office software, desktop OS, etc. Ubuntu also provides source code I can customize, eg, GCompris, Tux4kids, KDE and Epoptes. I can see Ubuntu on other tablets here, but it seems the Nexus 7 is the cheapest tablet I can currently get Ubuntu on and performance is still an issue. Is that fair to say?
I can write everything using C++ and OpenGL to squeeze as much as possible out of every processor cycle. I have been a developer for 15 years, but am pretty ignorant when it comes to hardware/OS level.
My alternative is using something like Titanium and Unity, (I don't think HTML5 will perform well enough), so I have a bit more platform flexibility, at the price of having to develop everything from scratch, and using technologies for the back-end stuff that aren't as ideal, (such as Android Java and/or Titanium JS). But perhaps that keeps more options open for me?
My feeling is I should go for Ubuntu, but the price needs to reliably reach considerably below $100 to become a nationwide system in a poor country.
Obviously any comments or thoughts on any aspect very gratefully received. Don't restrict your comments to my question - I want all your wisdom!
Huge thanks for reading all this and any contributions
Chris

Re-post
perhaps you would get more of a response if you made this a bit shorter, and re-posted on ubuntu.stackexchange.com, android.stackexchange.com, and programmers.stackexchange.com
Also, perhaps a little off topic, but have you considered using coffeescript? :cyclops:

Thought it might be a stackoverflow question, this forum is amazing for tablet OS dev though. As ever I blather on too much...people have complained in the past.
All three? Wouldn't that be bad netiquette?

That's kind of a tricky question because technology is always evolving and prices fluctuate so much that in a year you might be able to get a device for half the price. I'm not knowledgeable about the new Ubuntu options but if your gut says go Ubuntu, than do it.

Thanks, I'd love to say gut instinct served me well, and I'm all for intuition, but I wouldn't trust it enough to dedicate 6 months of development on its hunch. However these replies and the act of writing the question has crystallized my view a little so I now have more targeted questions.

found this excellent guide on the hassles of porting an OS to a new device...
http://www.linuxfordevices.com/c/a/Linux-For-Devices-Articles/Porting-Android-to-a-new-device/
and this
http://stackoverflow.com/questions/...droid-kernel-porting-from-one-device-to-other
So looks like a month, best case, with expert developers and a device well-known for being hackable. So to port ubuntu to a $40 device, I'm thinking three+ months, plenty of risk, and much pain.
Some other interesting posts:
A little gritty detail on porting kernels: http://stackoverflow.com/questions/...droid-kernel-porting-from-one-device-to-other
A tutorial on building (compiling, not developing) a kernel: http://forum.xda-developers.com/showthread.php?t=2110842
The best post I found on porting ROMS: http://forum.xda-developers.com/showthread.php?t=1941239
Porting modules from within kernels: http://forum.xda-developers.com/showthread.php?t=1751966
Porting cyogenmod, (a ROM, not a Mod, as anyone on this forum probably knows): http://forum.cyanogenmod.org/topic/15492-general-cyanogenmod-porting-discussion/
A new kernel developer: http://forum.xda-developers.com/showthread.php?t=2173411
A vocab for noobs like me: http://www.talkandroid.com/guides/beginner/android-rom-and-rooting-dictionary-for-beginners/

I was wrong. Ubuntu Touch is based on the CyanogenMod kernel, which is widely ported.
From Canonical's FAQ on the bits of CyanogenMod used: "The kernel and a few low level drivers for network, video, audio and some other hardware features are taken, all the higher level parts have been taken out. On top of this the whole Ubuntu is started in an chroot environment." ( https://wiki.ubuntu.com/Touch/FAQ#How_is_Ubuntu_Touch_connected_to_Android.3F)
As a result it has already been ported to about 40 devices, and porting to a further 30 is work in progress, listed here: https://wiki.ubuntu.com/Touch/Devices
CyanogenMod officially supports 172 devices, and unofficially supports another 59.
Officially supported devices: http://wiki.cyanogenmod.org/w/Devices
Unofficially supported devices: http://wiki.cyanogenmod.org/w/Unofficial_Ports

Related

[Q] Need Your Input

ViewSonic is putting together a developers' site for all our Android products, and would love your input as to key items to include. Obviously we may not be able to include everything, but want to create something you'll find useful and valuable.
Please post your wishes here!
Thanks,
-Adam
1. HDMI out.....not through a dock
2. IPS or better screen
3. 1GB + Ram
4. 16GB + internal sdcard
5. USB ports
6. Mini and micro sdcard support
7. Released source
8. 3G/4G option
9. Optional ssd
10. GPS option
11. Bluetooth
12. WIFI of course
13. Support updating operating system for at least 2 years instead of "release and forget.....*cough* sam *cough* sung"
14. Leave the bootloader unlocked for the crazies like me that want to hack no matter the consequences. If I brick I'll eat it.
15. Keep up the good customer service you currently have
16. Quit making promises about flash when you don't have control over Adobe lol
OH yeah......Can I have my Honeycreams please!!!!!!!!!!!!!!
EDIT: BTW....I am retired and would make a perfect person to test new products for you. Hint Hint
thebadfrog said:
1. HDMI out.....not through a dock
2. IPS or better screen
3. 1GB + Ram
4. 16GB + internal sdcard
5. USB ports
6. Mini and micro sdcard support
7. Released source
8. 3G/4G option
9. Optional ssd
10. GPS option
11. Bluetooth
12. WIFI of course
13. Support updating operating system for at least 2 years instead of "release and forget.....*cough* sam *cough* sung"
14. Leave the bootloader unlocked for the crazies like me that want to hack no matter the consequences. If I brick I'll eat it.
15. Keep up the good customer service you currently have
16. Quit making promises about flash when you don't have control over Adobe lol
OH yeah......Can I have my Honeycreams please!!!!!!!!!!!!!!
Click to expand...
Click to collapse
+1
I think that pretty much covers it, especially the part about honeycreams.
edit: it would be great if viewsonic devs put together a recovery package suited for the gtab since the only version of cwm that seems to work on this device is bekits modified version v.08
OfficialViewSonic said:
ViewSonic is putting together a developers' site for all our Android products, and would love your input as to key items to include.
Click to expand...
Click to collapse
It sounds like VS is asking for suggestions about what to include in the developer's site - that is, what information would be useful for developers creating apps to run on the GTablet and other VS Android tablets...as opposed to a wish list of features for the devices themselves.
Twitter feed answered by an engineer/development team member.
If you want to go hardcore.
Provide things like git hosting to selected xda developers.
Create some sort of cloud based compiling system and provide that to the developers as well.
Wait...you wanted suggestions for a web site. Look at this forum and add very strong mods to keep the clutter down. If your "official" site is not gonna allow the fun things we like to do to our tabs it probably won't gather much attention. However just keeping your online manuals and source files updated would be great. Allowing a private area for people to test UATs instead of them leaking into XDA would be kinda nice as well. I understand for legal reasons you couldn't have certain topics but it would be nice if just 1 provider of tabs would at least acknowledge the benefits of having the devs do their magic.
I was aware of what he wanted....just thought I would get my dream machine out there
It does seem like there could be a model out there for a vendor to create some sort of NDA protected developers program for early adoption.
Not releasing any files prior to official launch, but acknowledging that at launch those files will be stripped from another device. For example if company X has a legacy product Y1 and in the fall Y2 is coming out with a newer OS that could potentially be applied to Y1 then instead of waiting for Y2 to come out and people break their Y1's trying poor approaches to modification (and damaging your brand in thier eyes) you provide a group of developers lead time access without permission to release until say 3 months after Y2 comes out. This is double edged that it protects your competitive market strategy of Y2 while respecting the investment Y1 customers have made and recognizing the expectations of the users of the overall operating system you have choosen to utilize.
Had to read it twice but ^^^^^^^^^^^^what he said. There are several people here that would love this kind of opportunity. (This guy included)
Hi,
I'm not one of the devs here, but, from working w the Gtab, some of the things that would be useful would be:
- info on the BCT and partitions. There's some generic info around the web, but it seems like mostly reverse-engineered, read: guesses.
- source for bootloader and recovery (these may be proprietary, but maybe release under NDA?)
JMHO...
Jim
Adam
What would the company like to get out of starting such a project? That would dictate what should be included from a logical standpoint.
If only for research and testing then that would be something totally different especially for the folks here that know how to play with code? I would just guess if given the right information, tools and a place to share and explore the android system with support from your company , it would be taken to a level that the average user of mobile devices right now couldn't even imagine.
Android will in all likely become the system of choice surpassing the mighty Redmond and great apple.
I step back from my soapbox and blend back into lurking mode
Thanks,for responding to our calls and emails "for action and after purchase support." I bought from a retailer who was not allowing returns nor refunds, however, I did get a service plan. After working with it, I would not return it. Thanks to the incredible hardware and developer support from this site.
-Add direct movie streaming capability like from Netflix
-Easy beaming to other devices
-Easy tethering
-VPN
-Firewall or data encryption
-Public network privacy protection
-Standard auto attachment slot for GPS, music streaming, etc. making it interchangeable (I have an auto Navi/GPS (plus usb & bluetooth) about the size of this panel--thinking future forward--truly wishful thinking).
-Smart reader for scanning business cards, docs, etc. into it
-3G, 4G plus talk, fax modem capability
-Task Switcher or Manager
All I can think of now, will add more in case I forgot something.
Not a dev myself, but if this project was able to give us consumers some of my below suggestions, im sure many of us would be very happy and willing to continue to purchase VS products.
1) Real working market (I realise this is dependant on VS sorting things out with Google).
2) Required lib / drivers to use USB GPS and USB 3G.
3) For times when compatibility of software can be a task issue, the option to be able to dual boot to say WINCE. So basically WINCE support. This is for those like myself who cannot use our work related networks due to the limited proxy configurations support that Android currently has.
1: forum for known bugs list in current factory rom
2: forum for workarounds and non warranty breaking fixes for forrum #1
3: link to xda, with the caviot that using instructions from the sight could break warenty/brick/Bork the gtablet, for those who are fearless. (I have have purchased viewsonic monitors for my whole computing career, you could use an image boost. I love your brand so I think spending money reping android would bring a lot of life back to you. )
4:full software disclosure. At this point its all about power, ui, and price. You have the power and the price... recognize that 98% of your tab sails are to people who take your ui and toss it without a second thought. Not being mean, just honest.
USB
I would like to see is better support for USB drives. I would like to be able to use all my hard drives and thumb drives. Thumb drives work now but some times I plug them in and they are not recognized, forcing me to reboot.
For that matter move drivers for USB devices in general.
notsob2002 said:
Adam
What would the company like to get out of starting such a project? That would dictate what should be included from a logical standpoint.
If only for research and testing then that would be something totally different especially for the folks here that know how to play with code? I would just guess if given the right information, tools and a place to share and explore the android system with support from your company , it would be taken to a level that the average user of mobile devices right now couldn't even imagine.
Android will in all likely become the system of choice surpassing the mighty Redmond and great apple.
I step back from my soapbox and blend back into lurking mode
Click to expand...
Click to collapse
We are looking to provide a centralized source for all the code/content/specs/details/etc you need for our Android-based products. But rather than guess what to put there for y'all, we'd prefer to ask! ;-)
OfficialViewSonic said:
We are looking to provide a centralized source for all the code/content/specs/details/etc you need for our Android-based products. But rather than guess what to put there for y'all, we'd prefer to ask! ;-)
Click to expand...
Click to collapse
It's kind of funny that here you are asking for dev input and not a single one of our wonderful devs (you know who you are) have posted a response. I assume they are doing their communicating behind the scenes with you but that is purely a hunch on my part.
Anyway, I LOVE my gTab running VEGAn beta 5.1.1 but fully support your interest in helping our cookers so they can make your product as well as their product better.
sjmoreno said:
It's kind of funny that here you are asking for dev input and not a single one of our wonderful devs (you know who you are) have posted a response. I assume they are doing their communicating behind the scenes with you but that is purely a hunch on my part.
Anyway, I LOVE my gTab running VEGAn beta 5.1.1 but fully support your interest in helping our cookers so they can make your product as well as their product better.
Click to expand...
Click to collapse
I agree that the intent of the request was for what features would you like them to provide on their site, not in their products.
I think a forum, such as this, would be nice, especially if you can get the viewsonic developers to sign on to responding in a timely manner.
If you (viewsonic) are serious about reaching out to the developers, I think you have a great opportunity to make your system open and developer/modder friendly and become a leader in that category. could definitely be a great opportunity for you guys.
Oh, and perhaps a legal repository for .apks which are not available to us in the market for easy installation...
I assume VS goal is to sell tablets. You have developed a good hardware platform at a great price point. A few changes and you have a great platform. To sell more tablets you need slick firmware. The devs at XDA have accomplished that with minimal support. Full support would work wonders. Suggest ask the devs what they need, in what order and what detail. Might even give them access to your dev team. Website should have dev only section and a well updated what is going on section to elliminate the repetitive " are we there yet" questions.
If you are sincere in this offer, it should provide a great benefit to both VS and it' s users. Lookout ipad here we come.
All Android devices need work to play in the corporate environment. Security needs to beefed up, the ability to integrate with MS Exchange servers, work with proxy, vpn, and whatever other security stuff is comes out. IPV6 is a requirement too.
OfficialViewSonic said:
We are looking to provide a centralized source for all the code/content/specs/details/etc you need for our Android-based products. But rather than guess what to put there for y'all, we'd prefer to ask! ;-)
Click to expand...
Click to collapse
Well, go ahead and start the forum and post a link for us so we can start using with all the information that you have and can release and make adjustments as needed. You never know what will happen it may be more helpful to people than they may think and if nothing else it would be beneficial to people who just bought one of your products and don't understand the product and its capabilities.
Thanks for having the forethought to ask because most companies probably wouldn't even think of trying to get independent development for their product from outside of their sales or IT department! Thinking like that might actually make you the leader in a soon to be crowed market

[Q] Android App Emulator

I'm much like several of the people who bought TouchPads in the recent firesale. I absolutely love WebOs and the device in general but the thing that's bothering me is that the app selection is absolutely horrible! I know that there is an Android App Emulator on the PlayBook, is it possible for something like that to show up on the TouchPad? I love WebOS and I don't really want to give it up for only Android. I'm sure tons of people would really like something like this on their new Touchpads. Thanks!
Sounds like a great idea hmm...
I agree. I think that porting Dalvik to WebOS might be the best move to give us the Android apps and still let us easily use Linux, including ubuntu apps.
Well the problem would be the license..
lol...good point
license issues?
I thought it was opensource/freeware? How else could Cyanogen, etc., do what they do?
is it possible to port alien dalvik to the TouchPad? We should get some developers on this.
FAILHARD said:
is it possible to port alien dalvik to the TouchPad? We should get some developers on this.
Click to expand...
Click to collapse
You took the words right out of my mouth!!
I'm actually trying to find developers for the exact same thing. It should be doable. Alien Dalvik was made in Qt which was ported to WebOS so in theory it's entirley doable. the only question is if there are any developers free to take it on that aren't currently working on a full Android OS port.
I'd really like to get a development team set up for this because alot of people would like to keep WebOS and just have a larger app catalog.
Yeah, exactly what I was thinking. We should look for a dev who could possibly have experience it Qt, though that's not completely necessary. If we gain more support, I'll post a dev thread.
I can't offer anything other than Beer/Pizza money but this is a great idea. WebOS is generally well reviewed and not looked at as a problem so much as a benefit. The OS is solid. The App Catalog is not.
Android Emulator :-D
I would love see a emulator on my TP. I would like to be able to place Android on the device I still much prefer the UI and design on WebOS even though Android is far more capable.
I'm happy to donate to this cause should someone take it up
alien dalvik is not open source, however, dalvik in general as well as the whole android os is under the apache license, this can be modified, forked and reworked (such as myriad turbo/alien dalvik) without having to release the source, its obviously possible... But you know what would be easier, porting android as a whole... Even dual booting would be easier.
Well the allure of this is having the superior Android app selection on the arguably better tablet experience of WebOS. If that were made possible - I wouldn't care about having Android on the device.
I couldn't agree more. As an OG Pre owner I love webOS but couldn't fight everything I can do with Android.
If I could get all my Android apps and keep my TP the way it is would be perfect.
The problem with porting Android right now is we have to use 2.3 which is for phones and not 3.2. I would rather either wait for ICS/4.0 for a port or just get the app market working.
Sent from my PG86100 using XDA Premium App
That settles it there are enoght people interested in having a standalone WebOs android app emulator without having full android.. I'm starting a development thread, doing some preliminary work, and going to look for a few interested developers to work with on getting this going. My touchpad comes tomorrow so then i can really get into it..
Thanks Roto I was just about to do the same.
also, Roto post a link
Up. Beer on me
Here is the link to the development thread.
http://forum.xda-developers.com/showthread.php?p=16904876#post16904876
Failhard since you and I were the first to put in work on this idea i'd like you to help me head the project and find volunteer talent if you're up to it.
I took a look into what goes into a Dalvik port... it's TOTALLY doable just a matter of time and effort..
Unfortunately after i return to college in a week time will be in short supply for me so ALL help is appreciated!
I had never used WebOS before getting a tablet this last weekend. I have been an android fan for smartphones for now (I am willing to move to something better when it is available, otherwise stick to what works). I am a web designer/user interface designer and since starting using WebOS this last weekend, when it comes to the OS and its default apps that come with it, it is clear WebOS has the best user interface of the tablets (I used both iOS and Android OSes 1.5-3.2, Windows 7 tablets don't really count as a tablet OS and that is clear when using it on tablets).
The Android Emulator would be a great idea, but if you want quick development specifically for WebOS, we need to get a program created that can easily and painlessly port android apps to WebOS apps. Also it will take HP courting and reassuring the big players like Netflix, Hulu, Corporate IT Software Development companies that WebOS is viable and have continued support.
HP/WebOS only has a short amount of time to really establish itself. Next summer is rumored to be Windows 8 release and Windows 8 tablets coming. If Windows 8 can create a good tablet interface (WebOS is the one to beat imo atm as it has the number 1 interface), plus it's strong backing of games, program/application support and being able to integrate phone, xbox, tablet, and PC (Desktops and Laptops). Windows 8 is the biggest threat to anyone in the tablet market at the moment imo and they have been very successful in many of their endeavors as of late ("don't poke the sleeping giant" comes to mind, google and Apple have done that).
Due this short Window of time (pun partially intended), we have to establish WebOS as a main competitor to Google and Apple and prepare it for the onslaught of Windows 8. We need to work as a community to get things rolling and we need to push HP to court the big players in the industry to produce apps and content for WebOS and to continue further development on the operating system on their end. If we as a community and HP execute right, it will be a very exciting year coming up.

[Q] Question About Outsourcing Development For Android App

Hi Guys (please let me know if this post is in the wrong section, and I will move it),
I am sales/marketing professional that's been in the digital/mobile app space for a while. While I am fairly technically savvy for someone in my field (self taught HTML/CSS, websites, e-commerce sites, etc..), I lack skills in languages (java, C, etc) to build my own app. I also fear that given my own work schedule and time constraints, studying and learning on my own will not yield the level of expertise required to build an app to the specifications and quality that I have in mind.
As I had said, I know the app space quite well from a marketing, user acquisition, and monetization standpoint. I am assessing the costs associated with outsourcing the development of an android app for either either:
1) A utility/productivity app - well designed, built, possibly widget
or,
2) Adventure app - bug free, 50 levels or so to start, skinnable levels
My question for you guys revolves around the feasibility of outsourcing development at a reasonable rate, expected quality, costs, time to develop, etc. I used to own a fairly successful e-commerce company on the side, and we used to outsource development but I got so sick of the lack of quality, high costs associated, and missed deadlines...that I spent 6 weeks full tilt learning to code and ended up redesigning and developing the entire site which worked out quite well in the end...but I don't believe that my innate skill sets will allow for me to learn the necessarily languages well enough for android.
So, questions for outsourcing dev:
1) What are my options - of course there's elance, freelancers of the world...and I know many game/dev studios personally...but I know they charge major premiums and typically work with clients with a much larger budget than mine?
2) For those options, what is a reasonable hourly rate, or fixed cost associated for development (I know how long it takes to do XYZ for web dev, but not with android...so I don't know how to gauge whether or not I'm being gamed/ripped off)?
3) Quality - what can I expect for the $$ investment?[/INDENT]
As well, any suggestions or referrals would be helpful as well...but I'm more looking for some guiding principles here.
Thanks for your help and time guys, I really appreciate it - also, again, if this post is in the wrong location...please let me know!
thanks!
Geo_Mojito
geo_mojito said:
Hi Guys (please let me know if this post is in the wrong section, and I will move it),
I am sales/marketing professional that's been in the digital/mobile app space for a while. While I am fairly technically savvy for someone in my field (self taught HTML/CSS, websites, e-commerce sites, etc..), I lack skills in languages (java, C, etc) to build my own app. I also fear that given my own work schedule and time constraints, studying and learning on my own will not yield the level of expertise required to build an app to the specifications and quality that I have in mind.
As I had said, I know the app space quite well from a marketing, user acquisition, and monetization standpoint. I am assessing the costs associated with outsourcing the development of an android app for either either:
1) A utility/productivity app - well designed, built, possibly widget
or,
2) Adventure app - bug free, 50 levels or so to start, skinnable levels
My question for you guys revolves around the feasibility of outsourcing development at a reasonable rate, expected quality, costs, time to develop, etc. I used to own a fairly successful e-commerce company on the side, and we used to outsource development but I got so sick of the lack of quality, high costs associated, and missed deadlines...that I spent 6 weeks full tilt learning to code and ended up redesigning and developing the entire site which worked out quite well in the end...but I don't believe that my innate skill sets will allow for me to learn the necessarily languages well enough for android.
So, questions for outsourcing dev:
1) What are my options - of course there's elance, freelancers of the world...and I know many game/dev studios personally...but I know they charge major premiums and typically work with clients with a much larger budget than mine?
2) For those options, what is a reasonable hourly rate, or fixed cost associated for development (I know how long it takes to do XYZ for web dev, but not with android...so I don't know how to gauge whether or not I'm being gamed/ripped off)?
3) Quality - what can I expect for the $$ investment?[/INDENT]
As well, any suggestions or referrals would be helpful as well...but I'm more looking for some guiding principles here.
Thanks for your help and time guys, I really appreciate it - also, again, if this post is in the wrong location...please let me know!
thanks!
Geo_Mojito
Click to expand...
Click to collapse
Have a look here:
http://forum.xda-developers.com/app-development

AOSP based fork possibilities

Well, I had this idea 2 days ago, and I've given it a lot of thought. I want to rip apart AOSP and rebuild it using python and elf binaries instead of making everything in Java and making a decision file so it seems faster and more responsive... I want to rip out the Dalvik JVM, rip out everything pretty much, port the latest python, as well as the 2.7.x legacy python interpreters to Android and build an interface for loading python compiled or uncompiled(well JIT compile it whenever the md5 hash changes of the installed package, and also add support for pure elf binaries as packaged apps for the heavy lifting and performance, and rebuild from as little code from AOSP as possible a whole phone system, with lighter apps and any apps really done in python, and give the option for the binaries for high performance and multithreaded apps. We'll be using FOSS products modified to suit our needs, and building everything phone related that we can't use with an open license in python. So essentially rewriting every system and user app, from scratch in python, and of course we can optimize with C libraries and for that extra performance boost I'll edit the libs if I feel it's worth it with asm optimization. Call me a masochist but I love finding uses for my asm skills. I'm a noob to Android specific development but have a good working of using Linux(I've been using it 20 years although I've only gotten good with it in the past few years. I've been coding for 25 years, 13+ of those were spent learning assembly and os development. I've written functional minimalist kernels for hobby projects in pure asm, both x86 and arm, although I'll admit I'm less practiced on the arm instruction sets. So, python and native binaries as apps instead of Dalvik Java, and an entire interface in these 2 options from the system UI to the dialer to the calculator... Etc... Most of the basic app set will be python based in my vision of how this will work, and the developers can use c or c++ or anything I port a compiler for or write one for, and a set of python libraries that are C based and also matching libs for the libc component, probably based mostly on the same code for both C and Python. I feel like supporting python will result in more app developers wanting to write for our marketplace because most coders I know agree with me that writing code in python is better for rapid deployment as well as being less of a pain to implement. So app market fills up faster, more app developers, high performance native elf binaries, and a completely new design offering competing features against Android and iOS. We will have to rewrite everything from the system UI to the typical basic user apps. I'm guessing I will take me between 6 and 8 months to get the OS to a point where it's ready for app developer to start working on the core apps, then when that's done we can release a beta that also serves as a developer preview build for people to populate a marketplace before the OS goes into a public beta phase, by which point the developer preview users should have some non-essential apps to add appeal to the OS. I don't want this to end like Symbian where you have a superior OS and no apps and no device support beyond a few crummy phones from one maker. I'm looking for input on what people think of this idea. We will still be bound by AOSP licenses unless I go crazy and go overkill replacing everything from top to bottom. I can write Android drivers, I can port the toolchains and interprter, and I can make some of the apps, but once the core of the OS is finished and the HAL is available to all our supported languages, I'm going to need app developers to help me because writing a huge complete and quality OS release by myself would take many years. If you have any comments or criticism or advice or anything to say about this new project please post it or message me. Right now I'm collecting e-mailed addresses or other contact info for people interested in app development. I have 6 people so far who want to help but a 7 man team can't build Rome in a day so I'm going to need support from others to make this happen in a reasonable time frame with a completive selection of useful apps.
I'd like to create a superior alternative to Android and do it in a way that will encourage it to be adopted by people and hopefully even device manufactures will pick it up once the project matures and be shipping phones with it as the stock ROM/OS. For now I'm in the research/hacking phase, as I only started about 36 hours ago and have only been working with Android as developers for a couple months, but I feel confident I can do this if the right people help out, and I feel like Android has gotten too bloated and people are just using it because it's better than iOS, but in reality iOS provides competing performance on far less powerful system specs, which I think we can achieve if this is done right. Which would put a normal 4-8 core Android phones performance off the charts in comparison. I have Nexus 5, a Galaxy S5 Neo, a Galaxy Grand Prime, and I'm going to order some more phones when I get paid so I have more devices to mess with and do kernels/driver developers for. I think at first though we start with a stripped down AOSP that boots and gives debugging and and other logs, both on screen and via ADB logcat, so that we have a debloated core system to build on top of, which is what I worked on for the past 36 hours straight. Now it's time for rest but I thought before I get the sleep I missed while working on this I would make a post here and see what other people think of the idea. If we package source and the core OS has the toolchains to build for the device being installed to, we can avoid the whole thing that Android does with binaries​ where they package every architecture into an apk and let the installer chose the one to use. I want this OS to be easy on RAM, CPU time, and as a result have much better battery life. So... 6-8 months is the timeframe I've given myself to make platform developers can build on, but it could be more or less depending on how I exactly do everything and what FOSS stuff I use compred to how much I build myself. I am a minimalist programmer who thinks that programmer today just use tools and code that is easy to write and less time consuming because they know most people have resources to waste, but I don't want a shred of bloat in this thing, and I want it to offer every useful feature Android+g-apps offers before rolling out the developer preview. I figure if I can find another 30-40 devs, the project could be ready to roll out as stable v1.0 in 2.5 to 3 years, and I feel like we could negotiate with IP creators to license their stuff for a cut of device licenses for manufactures using the system. It wouldn't be much money per device but if we can take large chunk of Android's market share the revenue could be significant. Maybe this is all a pipe dream but I want to do it both for myself and for the people who would want to use it, and the potential for profit isn't a bad thing to consider although there's no guarantee we'll make a single penny in the end. Since I was 7 years old and exploring the world of coding, I dreamed of doing OS development, and I realized this project has much better chance of being adopted than my homebrew x86_64 OS I've spent the last 6 years working on, so I've dropped that project and will be working on this 16-18 hours a day since my hobby is OS development and I love to take on challenges that force me to learn, adapt, and become better at what I already do and love which is coding. Sorry this has turned into a big rant but I'm done now. Any feedback positive, negative, or suggestions to modify my idea to improve what we end up with, will be greatly appreciated. You can even call me an idiot or moron but all the people who've told me I can't do things with Android have so far been proven wrong and labeled as pleb coders who think because no one else can do it, I can't... And I don't give up when I commit to something like this. The guys who said I couldn't make a Exynos/MALI 200 driver set for my custom kernels and ridiculed me for even trying were proved wrong in under 4 hours with my PoC kernel, which now has full hardware support. They said it was impossible to support undocumented hardware, they said I couldn't even make a ROM for it, and I'm beta testing the ROM I made right now as I type this post out. They said I couldn't do a lot of things and all it did was make me work faster so they looked worse for being naysayer. I am going to buy a bunch of phones for development with a variety of different hardware configurations, and I'm going to have this running on all of them eventually just to stick it to those pleb Android "hackers" who mocked me for setting lofty goals. I got into this because when I started looking around at how people do these things I instantly knew my years of coding and hacking and just messing with things to learn more about them would make me a great ROM Dev, the it quickly progressed and I got into modding AOSP, modding the kernel I based mine off of, and then when I was in my Brazilian Jiu-Jitsu class my mind wandered from the lesson just long enough to conceive this idea before I got choked out for not paying attention.
So yeah, again. need input, need other people's ideas to add to my own, need to know if there is enough support from the community to have a full set of apps plus more in a market place in a matter of a few years. I have too many ideas at this point and I can't use them all because some of them are incompatible with other ideas I have... But work has begun and I look forward to any comments or criticism, or mocking that will encourage me to prove more people wrong. Anything you got to say, speak your mind I won't​ hold it against you, I might even respect your input and adopt your idea(s) instead of my own if it/they are better than what I've been brInstorming since the conception of this project 2 days ago.
Sent from my prototype Galaxy S5 Neo ROM(work in progress)

Complete and Beyond Noob Programmer Embarking on a journey to create a new smartphone

Wow - that's a mouthful, eh?
Hi, I'm an Electrical Engineering Student going into my third year of Engineering. After taking my first Digital Processing class I fell in love with hardware and software. My friend who's a mechanical engineering student in the same year and I created a company and by using community fundraising, we've finally made enough money to start thinking of actually embarking on a large enough quest. Here's the thing - you've probably understood where I'm going with this so without further ado - We want to create a smartphone. We are a team of around 7 engineering and computer science students wanting to create an android smartphone who have not the slightest clue on where to start.
There is a whole slew of things I could be looking for from you guys and I'd greatly appreciate if you all could help me out. I have only once owned an Android device and it was running Android 4.0 when I had it - ever since then I had switched to iPhone (not because it was superior but rather because it was the more financially viable option since I was a software developer and making apps on the App Store generally generated more revenue than apps on the Play Store) therefore I am very VERY noob in terms of Android OS. That being said, here's a short list I came up with of things I think I may need but feel free to add suggestions if you choose to do so.
Information on the Android OS
Information on ROM creation
Information on picking parts
Information on manufacturing opportunities (i.e. factories that will custom produce a prototype or two for you)
Information on creating a Stock ROM for your device lineup
Information on finding the most absolutely stock version of Android (does that exist?)
Information on perhaps other projects in the same ideaspace
Information on how smaller companies such as OnePlus or Essential started to create their phones.
Information on languages I should know (I already know a lot of languages but perhaps there's something more lower level than I need to know?)
Overall, thanks for reading this post and I hope to see replies soon!
Best Regards!
RoyalKingMomo said:
Wow - that's a mouthful, eh?
Hi, I'm an Electrical Engineering Student going into my third year of Engineering. After taking my first Digital Processing class I fell in love with hardware and software. My friend who's a mechanical engineering student in the same year and I created a company and by using community fundraising, we've finally made enough money to start thinking of actually embarking on a large enough quest. Here's the thing - you've probably understood where I'm going with this so without further ado - We want to create a smartphone. We are a team of around 7 engineering and computer science students wanting to create an android smartphone who have not the slightest clue on where to start.
There is a whole slew of things I could be looking for from you guys and I'd greatly appreciate if you all could help me out. I have only once owned an Android device and it was running Android 4.0 when I had it - ever since then I had switched to iPhone (not because it was superior but rather because it was the more financially viable option since I was a software developer and making apps on the App Store generally generated more revenue than apps on the Play Store) therefore I am very VERY noob in terms of Android OS. That being said, here's a short list I came up with of things I think I may need but feel free to add suggestions if you choose to do so.
Information on the Android OS
Information on ROM creation
Information on picking parts
Information on manufacturing opportunities (i.e. factories that will custom produce a prototype or two for you)
Information on creating a Stock ROM for your device lineup
Information on finding the most absolutely stock version of Android (does that exist?)
Information on perhaps other projects in the same ideaspace
Information on how smaller companies such as OnePlus or Essential started to create their phones.
Information on languages I should know (I already know a lot of languages but perhaps there's something more lower level than I need to know?)
Overall, thanks for reading this post and I hope to see replies soon!
Best Regards!
Click to expand...
Click to collapse
You need to start with exactly which hardware components you will put in the device. That is what will decide everything about how the software should be built.
As for figuring out hardware and design, you won't get much help here with that.
The majority of this community is everyday users, the rest are software developers and most of them are self taught non professionals. We deal with custom software development here. This forum won't do you any good until you have a working hardware design.
Sent from my SM-S903VL using Tapatalk

Categories

Resources