Shared publicly  - 
This is what is wrong with the Android rom community

The CyanogenMod Kang project. Gross. If you need a tool like this, then all you are probably planning on doing is rebadging or "optimizing (read not doing a damn thing)" CM. It's not like compiling is difficult to begin with. Honestly, the whole point of opensource is to take a program and add features/code, not this. If you say that the reason I'm against this is because I don't understand Open Source, then you probably don't know how to code. Terrible.

A couple LOL-worthy bullets:

All the following do is save space on /system... which is pointless because that is mounted r/o during runtime anyway. They do NOT improve speed of a device as the "optikangers" want you to believe.

- Remove all non english languages.
- Remove live wallpapers
- Remove cm wallpapers

The "to come" features are even more laughable. This one is just impossible
- Pure AOSP via plugin

What does this even mean? Error checking? Wat.

- Better error checking support.

Erm.. the build system does this..

- Check for errors during compile and point to places to fix.

and for extra salt on the wound.. lol.

- Edit the name of your kanged rom!
Sai Bharadwaj's profile photoPedro Veloso's profile photoHasan Ceylan's profile photoDoug Cheung's profile photo
I propose an official CM decompiler: It'll take any of our builds from and baksmali/AXMLPrint the entire thing, for that extra optimization goodness from non-programmer "developers", and repackage it all at the end.

As a plugin, we can add "XDA FAST++", which will crawl forum posts for random env properties and put them in build.prop, and "PURE AOSP", which will remove CMSettings and add Launcher2.
At first I lol'd, then I realized there is no fighting this. It was going to happen eventually. Instead of a kang-machine, I see it as a 'personal nightly builder'. The fact that he plans to add upstream support is a good thing (though likely a moot hand gesture, as anyone who can code can likely use gerrit).

Getting riled up now over it is a waste. Now, when 'devs' start re-branding, and adding their damn 'donate to me for my hard work', I will be right there with the pitchfork, tar and feathers. Till then, I put this in the 'meh' column.

Also, lol +Ricardo Cerqueira thats brilliant!
Cant say this is any different of a isssue as roms that are made from others works with a new theme or wallpaper and there name slapped on it. Like all these ics builds popping up for the 3d. Aside that the program did make lol a bit.
I think it's cool if it gets more people using CM, but the "change the name of the ROM" is kinda disrespectful to any open-source project.
Your ideas are intriguing to me and I wish to subscribe to your newsletter.
What does this program accomplish exactly?

If someone wants to honestly edit CM (or AOSP for that matter) and build it, then wouldn't they need to learn to use lunch and make and the basics anyway?

I guess this would only apply to those people who want to try building their own nightlies, but if they're looking to build it themselves then I'd assume they are doing it because they want to learn something, and this would take all of the learning out of it.

The only other use of it is to blindly rename work, which although is completely legitimate from an Apache License standpoint, is as +Steve Kondik kind of disrespectful to those who work so hard on it.

I guess I don't understand the merits of this program as a releasable piece of software.
I can understand that the way they use your name must be incredibly frustrating. They probably won't deserve half the praise or rewards they get. I can /ignore that though, in a few months time it shouldn't matter.
As a layman (read that however you want) I think its a badass concept. I can see how the "change the name of the ROM" is jacked, but the concept is solid beyond CM. It will let eople who are less technically proficient get their hands dirty. And if they find themselves with jacked devices the bitching will be directed at lithid. There was a kind-of-point-and-click kitchen produced at one point and post at XDA. I thought that was a good idea as well. What I'd like to see some day is a way for individuals to compile AOSP versions for themselves. Your Rom, your way... You know, Burger King builds!
Awfully elitist post here.

Outside of the "rename ROM", which is a little disrespectful, this is no different than customizing your own Linux distribution (based off Ubuntu, Arch, whatever).

As projects mature, working on said project will become easier and easier. Instead of using the stock resigned recovery to flash ROMs, there will be custom recoveries, then custom apps that script recoveries, build tools that automatically set up device vendors for you, scripts that magically download your dependencies, defines that make your brand new released device build out of the box, etc.

Android is already ridiculously easy to build, CM Builder compiler is just making it a little easier, and allowing the end user to customize their experience. There's nothing wrong with that. The barrier to entry is lower, and that's a good thing.

I, for example, have scripts that allow me to turn a fresh installed machine into a CM builder. That's not much different than what was made available here.
On the other hand, the nature of the development for recent devices... 'selfkangs'... etc. Is that source still closed? I've not followed the specifics and will gladly apologise if my view is wrong, but that's disappointed me about the cyanogenmod community.
+Koushik Dutta I feel that this takes the learning out of it, which defeats the purpose of getting involved.
+Keyan Mobli When you get into software development, one of the things you learn, is that eventually projects get big enough that no one person knows how everything works.

As projects mature, you need to lessen the learning curve, so people can actually be productive quicker.

Having a frictionless and easy to use build system for projects is a good thing. People shouldn't need to "learn" the inner workings of it.
+Koushik Dutta I agree with you there, but this doesn't lower the learning curve, it stomps on it and makes it nonexistent, making the next step, actual development, more difficult.

Someone that is just beginning rom development is likely to also be new to linux. (at least that's been the trend I've noticed, given that most people who are entering android coding weren't originally coding) Installing all the necessary tools is a way to become more accustomed to the commandline and how their system works. With this, they lose that valuable introduction to the linux (commandline) world.
+Koushik Dutta There's "learning curve", and there's "unbelievably lazy". We did most of the "meal management" stuff as a joke, but looking at it with fresh eyes, it did reduce the whole building process to 5 lines which can be copy & pasted from zero to install: repo init, sync, envsetup, brunch, eat.

That's not a learning curve, that's bare minimum...
+Keyan Mobli Strange. I compiled Android, built several apps, without learning anything about bash or Linux. I just followed the Android source instructions, not really understanding what was going on. I was a Windows guy when I started. Just knew how to write code. I would have liked this tool back then.

There's a stark difference between throwing someone into the deep end, versus letting them wet their feet.
+Koushik Dutta you were also a software developer and an exception to the rule (as I mentioned in the previous post) You are the 1% Mr. Yacht.
You are only reinforcing my point. If someone doesn't know Linux/bash AND doesn't know how to program, they are gonna be completely clueless. Providing them some simple tools is a boon.
I think there are two schools of thought:

-One is that doing anything really interesting with the Android source tree will require skills serious enough that the effort to set up a machine appropriately is negligible.

-The other is that lowering the barriers to entry maximizes the chance that someone will do something interesting with the Android source tree.

I lean very strongly on the second side. The more I see people get into programming, into computer science, into software engineering, the more I hope that those people will be able to help me do my job as software engineer, either by taking some of my tasks off my plate, or by building tools that will make my life easier.
I have to agree with +Koushik Dutta, aside from the questionable naming option and the inevitable douche who cashes in using this, this is no different than a gui package manager in a Linux distribution. Setting up the tools is no more a learning avenue than this is, its the logical extension of that basis, applied to CM.
I would think that the scripts being created and used here would be excellent sources for teaching folks how to prepare their compile environments.
+Rick C I was thinking about ordering the gfx from you... Let me know when you're done with SpongeDroid, mmkay? :)
+Jean-Baptiste Queru And I know you answer a thousand questions a day helping people properly prepare machines to build source code. I was just thinking last night about a script that could check dependencies on a given machine and install the proper tool chain including the android sdk. That alone would change the game for a lot of people. Giving people an entry point encourages participation.
I cannot wait for HelloKitty! 1.0 on my Moto Charm!!
Some of you guys are kinda full of yourself. Why is it that when I want to compile a version of your rom I have to see KANG. If I compile an application in gentoo should they all have KANG version numbers written in stead of what it is? Naw I don't think so. Wouldn't have to change the KANG if it wasn't there. I don't know of anything else out there that when you compile it yourself, because thats how you like it, you are now labeled a kang... Also, Why do you bitch so much about something that is ment to be for the community? Why do you can how someone builds your rom? You think I am making money or something? Looking for credit? I have never acted like that since I have been around android. No I can't develop as well as some of you, so I don't. I have been learning little by little like everyone else and choose to work on something that might help. Eventually tools become easier to use. Not everything has to stay the same. My entire project is on github. I am not trying to step on anyones toes here. I wouldn't mind having a more simple way of doing things within the repo I do all the time. Removing applications I won't use, or languages I don't need. I don't understand how its effecting you that much... Reguardless if "its not how it should be" its a tool. You don't have to use it. No one has to use it. If you don't like "kangs" then keep your code closed. Its open source code. I don't see how just because it says cyanogenmod on it that its now holy water.
When +Koushik Dutta calls a post elitist and +Jean-Baptiste Queru agrees....

I do agree that to take the "learning" aspect out of the equation, it takes away a lot of the fun. But I am kinda glad to see something like this that makes it a bit easier. It makes the "cost of entry" a lot lower, and if it's not so terribly difficult to begin with not so many people will be discouraged from actually digging into the code.

I read everything and I kinda agree with everyone but I also don't agree. This in my view is a good start. I don't like that it lets you rename it. But basic it's a great start. I have been wanting to start working on some rom's again. But don't have the time. But with this I can make one then start learning with it. Yes I like digging into the roms. But this is a very good Idea. It's a start. It's like a CM kitchen.... Sometimes the builds for phones come too slow. And at least this just might get some interested in the project.
No everyone is a computer science major or can help develop. Someone people just want to compile their own stuff. You don't have to be a developer to use a rom you compiled. You also shouldn't have to see KANG because you did so.
+Jeremie Long the -KANG in the build name is only set when the CM_RELEASE environment variable isn't set, there's no real magic in it. It's just a funny way to show that it's not an official build. All of my devices are running -KANGs. Lots of projects use some variation of this tagging, including the Linux kernel. It also gives us a way to get stats on who is building their own stuff and who's using the official stuff, which is pretty cool.
+Koushik Dutta I completely agree with you. Sorry +Keyan Mobli but I think you are blowing this out of proportion. I used to have type out the commands to wipe my partitions in console with my G1. Now I have a script to do it all for me.
Script > long ass command.

Sometimes just because it is simple does not mean its bad. For instance, Command line or GUI? I have to give it to GUI.
+Jeremie Long 'kang' isnt there to shame anybody, it is merely there to distinguish proper releases from selfbuilt. Hell, half the early CM9 alphas are labelled 'selfkang' for that very reasoning. As for this post, this discussion was bound to come up eventually. While I understand you taking it personally, its not an attack on you. The issue at heart isn't even your tool, it goes back to those who do profit from others hard work without appropriate credits.
+Steve Kondik Which I know and I change. But to someone that just wants to compile their own rom and who doesn't know the system, would be forced with these builds. While lots of projects uses tagged terms, I bet they don't get called out in an attempt to be made a fool. I would never take the CM name out of anything. But I can give them the option to replace KANG with something else.
If you are just changing the -kang, then the argument is moot then really; I see no issue there - CyanogenMod 7.2-[your tag here]. Going by the OP though, you can see where the intent could be misconstrued.
This is the single coolest conversation I have ever seen on G+!
+Jeremie Long So it's specifically the -KANG tag that offends you? It's a badge of honor :) We can make it say -pinkfuzzyunicorns or something.
I agree with +Koushik Dutta on this one too. There is a reason why people that hang around the community or that have ever met the CM / Team Douche team think you're all elitist (not saying you all are). But I would sure say that +Jeremie Long's tool would have really helped me the first time I built my own version of CM to play around with and learn the ROM building process without diving in to deep.

I'm exactly like +Koushik Dutta said, a Windows developer that doesn't deal with bash often and only know what I'm doing from my experience in other languages and applications. So stuff like this to simplify things is pretty cool for me to play around in.

I just think that Linux people very often forget how steep the learning curve to all this stuff is. It still seems like a nightmare every time I step away from my Windows environment and into Linux. Bash is not second nature to most people, not even programmers.
Sorry +Steve Kondik our first priority is to get HelloKitty to boot on a VTech then we're moving on to the Charm ;)
Rick C
While I disagree with the "edit the name of your kang" option, I'm absolutely furious there's no "re-add boobies wallpaper" option.
+Abhisek Devkota So its ok for you guys to use the term kang loosely but not anyone else? This is what is in my OP "- Edit the name of your kanged rom!" EDIT the name of your KANGED rom. The difference between edit and CHANGE are totally different.
+Steve Kondik It is not the Kang tag that offends me. Its another human beings' hard work being put down over something so minuet.
the tool is a good starting point for anybody who wants to learn compiling from source, and after that it depends on user if he wants to continue this way or want to learn command line (repo, git, sync etc) nom...
Tito Z
Everybody needs access to Cyanogen Brand Bacons. As well as welcoming hands to the community with some help, not "psh, you need crutches to help you walk and run? HAH".
It's not as if people that change the rom name are immediately trying to take credit away from CM. CM is built into the ROM in several areas in very obvious ways. I don't understand why removing the -KANG name is in any way disrespectful. It's only disrespectful if they don't claim to be forking CM and try to pass it as their own "from source" ROM or trying to call it an official build of CM.
This is like 16 & pregnant for Google+!
I want some CM9-pinkfuzzyunicorns on my E4GT!
+Jeremie Long your explanation just now, of changing the -kang tag is clear. The line in the OP could be taken in either respect; to fully renaming, to adding a letter.
+Abhisek Devkota yet that is based off of assumption. If anyone has issues with anything why not contact me instead of bashing someone for no reason? I hope you all have had a great holiday. -signoff
+Cory Lu Lu it is that disrespect you describe, claiming it as their own, that is the issue. I have to agree that Keyan blew this out of proportion. The issue itself has nothing to do with CMC or lithid/+Jeremie Long. The tool is useful, no doubt/.
+Koushik Dutta +Jean-Baptiste Queru fair enough. I would agree that low barriers are necessary, but comparing the barriers of building Android vs building something like DD-WRT, one can see that Android isn't necessary difficult or even remotely confusing.

I do think it should be easy enough that people won't be turned off immediately, but I feel if its too low, it becomes counter productive
I suppose if it makes them feel like it is actually doing something, by all means, let them knock theirselves out. I am surprised by the coverage this has gotten.
personally while i understand what +Keyan Mobli is saying (cutting past all the bullshit and attitude) and i do agree that in the long run this is hurting the people trying to enter a field where knowledge is crucial.

However i think its important to think about who this tool is aimed at and what there goal is . I find it unlikely that n00bs are going to use this tool to make there own Kanged roms that they rebrand and release , (yes i know it will happen, but with any degree of success prob not) Also most prob hav no desire to become a programmer or developer and instead just want to try making something for there phone , and getting that little sense of accomplishment that most of us forgot about along time ago when creating our first rom or application .

Also as you already noted as well as +Jean-Baptiste Queru in order to really make a different rom they will have a lot to learn which surpasses the knowledge required to setup a build env and type make .

All this being said i tend to agree with +Koushik Dutta +Steve Kondik , and +Jean-Baptiste Queru and I dont see any real harm in making the floor easier to reach.

I understand the two sided feeling when someone uses your work, and I know that appreciation for the actual hours put in to dev are seldom realized and properly expressed, but what else is new ? You knew the job when you took it , and as the saying goes imitation is the highest form of flattery. Relish in the fact that something you are a part of got big enough that it spawns side projects like this and others. Remember CM got to where it was by having people come up with ideas that were not yet thought of or implemented , it is very possible that non developers can come up with some new ideas that those of us living in the box for the last 5 years now over look or have not thought of, and while they likely will not be able to create these ideas them selves they might in turn give them to you or others to materialize .
+Jeremie Long The only thing I'd dislike is the point-and-click rebranding (if you want to do this, just fork the whole project and have a good reason for doing so). I hope you do contribute your build system enhancements upstream because it's certainly a useful tool.
+Jeremie Long I enjoy these discussions and by contacting you directly I'd miss out on them. I feel that both +Koushik Dutta and +Jean-Baptiste Queru raised absolutely great points, I just don't agree with them fully. That being said, my viewpoint has changed considerably and think there are some great gems here in terms of logic.
Another thing that is important to realize is that many of my trololols are written tongue in cheek. It's how I have fun.
Tito Z
Its safe to put down the touches and pitchforks now.
+Keyan Mobli I would disagree. Building Android for the first time for me took me much more time than building an OpenCV CMake project in Visual Studio using it in C++. Even the step by step is very confusing if you're not familiar with Linux.

I'm just saying, it can get pretty confusing pretty fast. I could see a ton of people screaming "JAVA NOT FOUND! WTF!" or "APT-GET NOT FOUND WTF!" or other little hickups that are more from not having a Linux box setup than from not following the instructions.
+Cory Lu Lu Android is much easier to build now than it was in Froyo for example. Along with the OS, the start-up guides have been more streamlined.
+Keyan Mobli Oh okay great. I haven't built one for a long time. But I know how it is stepping into a new field and not knowing all the steps before hand that you have to learn before even starting the step up process. Even with easy stuff like C# projects, I forgot how difficult some things seemed to be when I first started that are second nature to me now.
Bro, don't hate. It motivates people to use CM. But think of it this way: It has no purpose. Let me set it up like this: Lets believe that CM is communication. The finished ROM is your friend, and ways to build it are methods of communicating. You could A) build it by going the old fashioned method, and typing commands and whatnot, like walking to talk to your friend. Or B) Use this compiler, like using a phone. Sure, it's less work, but it's for convenience, not actually serving a purpose...
I can see epic failures in the future when people start thinking they are android Dev's now with this.... Should just leave things like AOSP Roms to the pro's over at CM and not brick countless devices because you want to be a dev....
+John Kirk - the difficulty here is to find a right balance. Too tight (e.g. mandate 10.04, which is the only variant for which I can really guarantee some compatibility), and people won't pay attention to it as it'll be too far from what they have. Too loose (e.g. only check that the packages are here without knowing whether they actually work or not), and people won't pay attention as it won't really tell whether a machine is compatible.

Worse, a lot of it is in the realm of "known unknowns". I know that I don't know whether the next code drop of Android works on <anything other than Ubuntu 10.04>. I know that I don't know how much work would be necessary to make it work.
+Jake Apperson Sure, but unless it's something hardcore, the worst situation is a bootloop or no boot at all. No hard brick for example...
+Jake Apperson I whole-heartedly disagree with that statement. I would have never gotten anywhere with programming if I had the mentality of "Just leave it to the pros".
I'm honestly surprised this hasn't been done sooner; although knowing the inner workings of the build system is a good advantage to have, its definitely not required to submit quality work to the community
Tito Z
Come on you guys,you really don't see the point. This goes back to the one click root method. Is it REALLY necessary to go through all the motions if you really just want one thing? Its not like most people will use this to kang, and if they do simply eradicate it. If people want a current CM build, but that don't have the knowledge this is perfect, if people wanna get indepth, there is always the wiki.
For those jumping in now, please read the comments prior to yours; most of your topics have been covered, acknowledged, discussed, and clarified.

tl;dr There is no more drama here.
+Keyan Mobli +Steve Kondik +Koushik Dutta +Jean-Baptiste Queru +Todd G. I think at the end of the day, beyond learning curves, and entry level. Lays the foundation of community, the helping each other. Something lost this days within the users. Everyone wants to be the first to create and make it happen as if it was a race. Post like this make those who know, and deliver, look like elitist dimwits. Thus pushing further the separation of the community. Me and a group of guys ported cm7 to Atrix, work hard until it finally got introduce to nightly. I personally learned a lot from the experience. Making that happen was a job we took serious, and though of work for the community. Not for anyone to feel he owns. But for anyone too see, use compile, or modify however they felt!

I think the script is a great idea. Setting up a build box is a pain on the butt. I produce something that someone could interpret as a KANG machine, I assume my work is gross as well! ( )
Maybe people are just tired of waiting for a build of CM9 shown running on a certain developer's phones for over a month. If it is good enough to be your daily, it's good enough to be ours...
heh this wont help that :/ only devices that are on cm git can be built with this anyway
+Sam Gilley by all means, go for it :) I just hope this does not cause a flood of carbon copy renamed ripoffs of people who actually know what the hell they are doing like the CM Crew.
+Jean-Baptiste Queru re: " I think there are two schools of thought" post

I couldn't agree more with your second school of thought, with one minor exception.

Sometimes tools made to make coding easier inadvertently creates sloppy, inelegant code. WYSIWYG is a great example of this sort of thing.

+Steve Kondik man I wish I had your chops, to be honest, I don't know where to start, and sadly I just stopped because other people were "realizing" my ideas while I was still dreaming them and I can't seem to break the concept-design barrier.

+xda-developers I understand that people asking the same questions repeatedly, rather than using the search function, is annoying and bogs down a forum, but I have found the forums have become too hostile for beginners.
+Keyan Mobli You know I'm not a dev but I think about what you just said all the time. After ICS came out for Sensation, within a few days, 10 new ICS roms came out, all of which had no differences except for the name. BS. I had a question about CM9, I don't know if this has been asked but where do you all stand on the kernel for the Sensation? Have you all managed to O/C it on ICS? Just curious. Thanks and keep up the good work.
Rowan D
Scripts are sometimes nice. Problem is they shouldn't be used to let noobs do stupid stuff. This wouldn't be a problem if people actually made worthwile edits, and submitted them to the CM team, so everyone can enjoy them as part of official CM(9).
Can't commit code until you have something to test the code on, can't even work on a device until they are brought into the repo. Unless your on the cm team currently, or have a working build of CM9. We are waiting to help.
Rowan D
I agree +Jeremie Long I had fun making mods for CM7, never quiete bug free enough for public use though. Teamhacksung is keeping the SGS device tree locked down. No code testing and commits (can't even get emulator to build). "We are waiting to help."
That was a fun read. Thanks guys. I definitely agree with +Keyan Mobli's point that having this conversation out in the open is more constructive than had it been in private. This is what I like about the true CM community: One member can rant about something and a discussion follows. Most other groups turn to name calling and butt hurt bitching. I know this because I wwebsite as on the internet before it was the internet.
editted for +David Brantner . +Steve Kondik Hope your distribution can be well maintained now that you're huge and worldwide! You may need a PR guy rather than that UX guy! Best of luck in 2012 :D. Happy New year to all!!!!!
+Dan B lol I remember when I had my first beer - but seriously, can you edit your last post so it there is some cohesion?
From a SysAdmin/Early CompSci Major side of things(My view of this), regardless of who thinks this tool is a good idea or a bad idea, when I'm finally getting to the point where I'm comfortable and coming up with ideas of my own. From what I've read(most of what's above, skipped a couple posts though) this open source tool will likely help me the following ways(in order):
- See what system requirement I'm missing and what source code files I need in order to create something that works[Ingredients and sample result]
- Look at the code of the tool to confirm the compiling processes and where I might do things differently(due to some odd feature I might be dreaming of)[Experimenting with the cooking instructions of the recipe, like 4 minutes more in the oven makes pizza crispier?]
- Then go back and start looking at the source code files to see what results what[Why not try using oranges instead of lemons in my pie?]

It's the same way I taught myself all the software and configs and custom compiles that I deal with at work for Apache, nginx, MySQL, PHP5, Memcached, Unison, ProFTPd, OSCommerce, Magento, and any other random tool that pops up due to a buzzword that the boss thinks actually has relevancy to what the company is working on. So regardless if many of you are convinced it's going to result in a ton of script kiddies generating multiple versions of a deck of cards(Hello World?), I can see this tool being precisely the floaties I'll be looking for(aside all the step-by-step guides that seem to assume my dev environment is already setup and don't explain what I did wrong) getting my feet wet to eventually leading me to scuba diving.

Thank you for the CyanogenMod on every device it is currently loaded on, and thank you for creating a tool that will make sure that I'm following an up-to-date set of instructions on how to do something(guides from 2009 drive me crazy) and will be able to show me that if I stop screwing with it, it can work and it was my fault not my environment or the source code.
+Dan B people may love straight AOSP on the galaxy nexus as do I, but CM9 will be like no release prior. They are really out doing themselves this time. Just wait and I bet you a dollar you will try CM9!
Really enjoyed reading this (mostly civil) discussion.
As a supersonic user that was dying to try out the T9 dialer, I welcome this tool as a way for me to easily build my own nightly while the buildbot is waiting for CM9 :>
I am waiting for the first commercial rom. Good stuff where I can pay for. I don't like buying beers at all.
+Keyan Mobli I agree. The same with one click roots. I think it's great that people want to mod their phone but learning is half the fun. telnetd ftw
+David Brantner - while I see your point, I think it's important to find a middle ground, and to not fall into fundamentalism. As an example, it's too easy to dismiss interpreted languages on account that compiled languages are more robust, it's too easy to dismiss code running in virtual machines on account that it introduces some overhead, it's too easy to dismiss object-oriented programming languages on account that it makes it hard to follow the code flow, it's too easy to dismiss portable languages on account that only pure assembly gives the best possible performance...

I think that what matters, really, is to have correct code that is ready when necessary and that is maintainable if necessary.

If sloppy inelegant code allows to ship earlier, it has value. If sloppy inelegant code takes less time to write or maintain, it has value. If sloppy inelegant code can be written by someone less qualified, so that the most senior engineers can focus 100% of their time on the hardest problems, it has value.

I certainly know that someone else's sloppy and inelegant code is often better than the code I don't have time to write myself.

In the end, one man's best work is another man's sloppy inelegant work, all the way to the top. We all write code that someone else would find sloppy and inelegant. I know I certainly do. I write code that I find sloppy and inelegant myself right as I write it. As an example, I know that I often copy-paste code where extracting common code would make things more maintainable, but I also know how often that common code needs to be changed and how much it'd cost to extract it compared to the cost of changing it everywhere.
IMHO this is a clear sign of the maturing of both Android and CM.

Sure there will be douchebags who abuse it, but hasn't that always been true in the opensource world? Yet somehow, their glory is always short lived :-)
+John Barlev Curious how is building a tool to make it easier to compile a rom a slap in the face? Why use a gui rdp client when rdesktop is there? Why use gedit if you have vim? Why use any gui tool that has a cli replacement? Could it be because its easier? I would think so. Just because someone wants to write code for android doesn't mean they need to learn how to use an OS. Interfacing with the system eases this. Just like any other linux gui. You can do just about anything via cli but it makes it easier to have a wrapper that takes those cli commands and makes them more "human" friendly for alien users that know the os or even care to learn it. Some developers simply run a vm to mess with the android system. They know C, C++, Java ect ect. Like I have said before. Guns don't kill people. People kill people. Likewise, this tool doesn't KANG roms and try to lie and steal for profit. People do that.
+Jeremie Long whether or not a repo is open during development is totally up to the team involved. In some cases we keep them closed because we don't want to deal with supporting it just yet- you have no idea how many emails I get about "xxx doesn't compile!". I'm trying to push everyone to be as open as possible, though. For example, the Galaxy Tab 10.1 repos are open and they are still a bit incomplete.
+Steve Kondik which is good to be open. while some people don't understand that its development, which will happen no matter what. Others would like to help. For example I moved from the supersonic and now I have the attsgs2. Becuase they are keeping that repo closed for now there is nothing I can do. I have a local and ics build nothing close to where they might be at, which I don't see the point trying to fix things that might have already been done upstream. Until then I keep messing with my local code and wait for the repo to be opened up to see whats actually going on. Until then, we have no idea. Not everyone who contributes to cyanogenmod is on the cyanogenmod team.
+Jeremie Long Honestly, if you want to get involved with a particular device, it's best to contact the team involved and have something ready to contribute or have proven your merit in the past. It's not some kind of elite club, these are just small groups of developers trying to stay organized without being overwhelmed by support requests and other nonsense. There is a strong social component involved. Each of the various teams that are part of CM have different ways of doing development and there's no reason to mandate any kind of change there. Whatever works best for that team is what is used. As long as the source code is made available to everyone when it's in good enough shape, we're doing OK.
I love the point of views given here in the replies. While i understand where Keyan is coming from, i also agree that this helps the newbs bypass the more difficult tasks...... All i have to say is "I LOVE ANDROID AND THE COMMUNITY BEHIND IT"
+Steve Kondik Is there a list for who to contact about a specific device?

As far as I can tell (from watching XDA, and the CM forums) is that there is no movement on CM9 on the HTC Glacier. In fact I'm not even sure what hardware is most similar even if I wanted to "Kang" a build for a different device. There is a AOSP 4.0.3 build on XDA with basically only the camera left to go, but I would like to help(even if that ends up just test driving) with CM9 for it.
After reading half of the comments, I feel like I should mention that the builder won't be used except for people wanting to do their own tinkering.. These people are the ones curious enough to learn from what is presented to them to possibly take it to the next level.. The majority of people will just look at the tool and skip over it for a fully built ROM. Personally, I think it's kinda cool, and I might poke at it to see what happens, but I doubt I'd use it on my daily driver.

If CM9 is already released to source code, what level of effort is it to change the name now?
I've tried on a number of occasions to build Android for myself. I'm not a programmer by any stretch of the imagination, but I'd still like to roll my own build. I just keep getting stuck though. None of the guides out there are applicable to my setup, and of course there's no ICS code out there for my device (Sensation) - at least, not last time I checked. When a build fails (even for a supported device) for some reason, the terminal spits out an error that just makes no sense to me. When that happens, I think "bugger this!" and boot back into Windows and wait patiently for +Keyan Mobli to release a selfkang of CM9 (hint, hint ;)).

if there's a tool that can make building Android easier for me, I'd be all over it.
I think that although knowing how to code and knowing your way around the linux command line go hand in hand for some people, the link isn't universal. I started out programming for lego Robots, first like this:, then like this:, then in C. I've since learned some PHP by fiddling with other peoples code and Java from some tutorials so I could make android apps. I love programming and I've done lots of it, but the hardest thing I've ever had to learn about how to use the linux command line. There are tutorials for every programming language under the sun aimed at people with all levels of proficiency, but it always seems to be assumed that anyone who doesn't already understand the Linux command line will never has any use for it. That might have been true once, but I really don't think it is now. Reading scripts like this one help people like me see how the command line works enough to concentrate on what we do best. There might be people around who could make great contributions to CM who have no idea about the linux command line.
Add a comment...