<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title><![CDATA[Allow users easily modify and contribute code of any installed software.]]></title>
    <link>http://brainstorm.ubuntu.com/item/11677/</link>
    <description><![CDATA[I propose lowering entrance level for casual developers who able and want to "scratch their own itch", or just want to help or, probaly, receive high rating from ubuntu users.<br /><br />There are many programmers and geeks among ubuntu users. I myself for one. And there is some tension (correct word?) which prevents us from contributing code to ubuntu - one have to install development tooling, development packages of necessary libraries, find somewhere and checkout source code, modify at last, build, test, find the person or community responsible for software and communicate with them to patch to be acceptable and so on... You all know how it goes. Not very encouraging for average person who engaged on full-day work.<br /><br />And i noticed two menu items which help contribute for translators and testers: Help->Translate This Application... and Help->Report a Problem.  And i thought: Ubuntu needs similar item for programmers: Help->Modify This Application...<br /><br />When someone selects this item:<br />*  development tooling packages are installed (gcc, emacs, make, svn, you name it..);<br />* -dev packages for libraries, required by this particular application, are installed;<br />* build system is installed;<br />* source code for this particular application is checked out from ubuntu repository;<br />* and programmer now can easily modify and build software;<br />* and probrably contribute modifications back to ubuntu community through software maintainer probably.<br /><br />Ubuntu is free software and it should encourage it's users to participate in development. We just need to make it easy for average user.<br /><br />And as a next step, you can extend this idea with community integration:<br />* allow to see "List of tasks/ideas related to this software";<br />* making popular tasks (from brainstorm for example) person will increase his/her own rating;<br />* make list of most rated people on your site;<br />* and so on, and so on, there are much you can do here!<br /><br />And as a next step you can extend this idea on musicians and artists.<br /><br />
<br />


<b>[60 votes] Solution #1: Auto-generated solution of idea #11677</b>
<br />

<br />
<br />



]]></description>

    <language>en-us</language>
    <pubDate>Thu, 31 Jul 2008 08:49:24 +0000</pubDate>
    <lastBuildDate>Fri, 22 Aug 2008 20:19:34 +0000</lastBuildDate>
    <generator>QAPoll module</generator>
    <guid isPermaLink="true">http://brainstorm.ubuntu.com/idea/11677/</guid>
        <item>
  <title>Comment from Arnaudus</title>
  <description><![CDATA[Reading your ideas, I have the feeling you think that all pieces of software are developed by Ubuntu, which is totally wrong. Otherwise I can't understand your idea. <br /><br />IMO, the only thing Ubuntu can do properly is to send you to the site of the application. The main problem in your idea is that the versions of the softs proposed by Ubuntu are (fortunately) stable versions, sometimes years older than the current development version. Most bugs fixed this way were probably fixed a long time ago in the development version, but not backported in the stable one because of many possible reasons (not critical...). <br /><br />The tools used to develop and compile an application must remain the decision of the development community, i.e. NOT Ubuntu. Diversity is a huge advantage for free software, and any kind of normalization would probably be constrains on the freedom of the devs. If Ubuntu may have a role in this process, it would be a kind of buffer between the end user and the development teams. ]]></description>
  <pubDate>Thu, 31 Jul 2008 11:51:36 +0000</pubDate>
</item>
        <item>
  <title>Comment from fukanchik</title>
  <description><![CDATA[This is just idea. I'm not talking about implementation here. I can't say how they implement it.<br /><br />Will they send patches upstream or accept only to own repo? I don't know.<br /><br />Will they dictate tools which are used to develop software, or give you a freedom to choose your favorive one? I don't know.]]></description>
  <pubDate>Thu, 31 Jul 2008 12:04:35 +0000</pubDate>
</item>
        <item>
  <title>Comment from vexorian</title>
  <description><![CDATA[All of this is already possible, man, just download dev packages, build essentials, etc. There's really no reason really to include all that stuff in the default CD, though an Ubuntu developers edition would be awesome, I am planning one day to become a translator cause some programs have very silly Spanish translations...]]></description>
  <pubDate>Thu, 31 Jul 2008 14:37:21 +0000</pubDate>
</item>
        <item>
  <title>Comment from Eldmannen</title>
  <description><![CDATA[Yes, I am an novice who would like to contribute to Ubuntu but found it to be far too difficult.<br /><br />I often have trouble finding the source code and getting it to compile and knowing where to send patches, etc.]]></description>
  <pubDate>Thu, 31 Jul 2008 16:52:42 +0000</pubDate>
</item>
        <item>
  <title>Comment from Ubun2ideas</title>
  <description><![CDATA[I'm thinking about Eric S Raymond's seminal book "The Cathedral and the Bazaar".  The long term success of open source software, in my opinion, depends on moving closer to a level playing field for all participants.  <br /><br />I dream of a day where Brainstorm says:<br />"The Ubuntu community has contributed 11259 ideas, 51766 comments, 1093522 votes, **and 21093522 code contributions**."<br /><br />If we truly want linux to be ubiquitous, we need to take a page out of the old Volkswagen Beetle playbook, and make it more easily maintainable by the masses.  <br /><br />Right now you're reading this in your browser.  There are millions of people who build for this window on your screen (the content section of the browser where the webpage is displayed) - we call them 'web developers'.  If we take one step out, we look at the window that is the browser itself, and now instead of millions of developers, there's probably thousands of people who contributed code that makes up your web browser.  Then we take another step out and look at the desktop (GNOME, KDE, XFCE, whatever), and now that audience is much smaller, maybe several hundred developers wrote the code that powers your desktop environment.  The point I'm trying to make is that the web succeeds because it is relatively easy enough for people to program for it.  Linux needs to focus on making it simpler and easier for people to contribute the actual changes they are requesting (here on Brainstorm), otherwise, to use Mr. Raymonds' metaphor, we're moving away from the more even playing field of the Bazaar, and back to the top-down hierarchy (think Microsoft) of the Cathedral.<br /><br />Thanks for listening.]]></description>
  <pubDate>Thu, 31 Jul 2008 16:53:25 +0000</pubDate>
</item>
        <item>
  <title>Comment from Bender2k14</title>
  <description><![CDATA[@Ubun2ideas<br /><br />So you are saying that even though Canonical/Ubuntu uses DVCS, if they do not make it easier for more people to contribute, then the process is still too much like Raymonds' Cathedral?]]></description>
  <pubDate>Fri, 01 Aug 2008 04:17:07 +0000</pubDate>
</item>
        <item>
  <title>Comment from snadrus</title>
  <description><![CDATA[Any IDE for the purpose is good enough. Imagine if:<br /><br />"Help" --> "Modify this application" (downloads and) opens an IDE in debug mode from a checked-out launchpad BZR stream <br /><br />The IDE has:<br />- a debugger & code color & typeahead (for this language)<br />- Compile, test, Submit to BZR branch<br /><br />Preferences --> "preferred IDE" may be unnecessary because that working setup allows pieces replaced later.<br /><br />]]></description>
  <pubDate>Fri, 01 Aug 2008 15:55:31 +0000</pubDate>
</item>
        <item>
  <title>Comment from Ubun2ideas</title>
  <description><![CDATA[@Bender2k14: I guess I'm saying DVCS is good, but just one part in addressing the larger issue.  <br /><br />Currently, if you want to add some functionality on a website you're building, there's such a large pool of talent that you can turn to.  This is because so many people are familiar with the tools and standards for building web pages.  Conversely, if you want to add or change some functionality on your Linux desktop (as indicated by the volumes of Brainstormer's ideas), then the pool of talent that can take that idea and bring it to reality is much much smaller.  <br /><br />In my opinion, if Linux is to really be 'free' it needs to move out of the ivory tower and into the streets (or out for the Cathedral and into the Bazaar).  Currently we have "The Ubuntu community has contributed 11294 ideas".  Say 1% of those are good ideas.  Of those, maybe half will be noticed by someone who can do anything about it, and maybe half of those will actually get implemented.  (Correction: Appearently I was being overly optimistic.  According to http://brainstorm.ubuntu.com/idea/11692/ only 0.0023% of all Brainstorm ideas get implemented.)<br /><br />What's missing here?  The freedom of users to implement the changes they want to see in their own systems themselves.  The freedom of users to have the same powers currently awarded to those with specialized technical know-how.  <br /><br />What I'm pointing at is a movement, a determined choice to make software and systems that are more easily modified and maintained by those who use it.  Linux as a self-maintaining.  Users as contributors.<br /><br />Do you see what I'm getting at?]]></description>
  <pubDate>Fri, 01 Aug 2008 21:06:13 +0000</pubDate>
</item>
        <item>
  <title>Comment from nsanz</title>
  <description><![CDATA[I'm one of this persons, I want to contribute sometimes but it's make me very difficult to understand all the protocol to contribute.<br /><br />@vexorian: isn't necessary include anything in the CD, I understand that @fukanchik are saying is if I click on the menu for modify this application helps me to do this, by installing the necessary thinks and maybe recommendations of first steps, tutorials, thinks that helps the newbies to star.<br />]]></description>
  <pubDate>Sat, 02 Aug 2008 06:21:18 +0000</pubDate>
</item>
        <item>
  <title>Comment from KIAaze</title>
  <description><![CDATA[Just two commands to get program dependencies and source code:<br />apt-get build-dep <br />apt-get source <br /><br />Unfortunately, the above method doesn't always simplify things because some packages don't use the standard configure/make/make install process.<br />ex: xorg/X11 stuff<br /><br />The other problem is of course that you don't get the latest source code this way. Only the code of the currently used version.<br /><br />So in the end, it's more up to the program developers (not ubuntu) to help other programmers get into the code with for ex:<br />-good documentation<br />-commented code<br />-helper scripts<br />-development environments<br />-IDE project files<br /><br />But I still like the idea of a "help modify this software" button, so +1. :P<br />]]></description>
  <pubDate>Sun, 03 Aug 2008 11:12:35 +0000</pubDate>
</item>
        <item>
  <title>Comment from Endolith</title>
  <description><![CDATA[Unfortunately most people just don't know how to write code, so they have to learn that first, which is arguably more difficult than figuring out how to contribute their changes.<br /><br />That said, apt package manager should have mandatory URLs for a packages main website and for their development site, bug tracker and SVN/CVS/whatever.  Then this could be more automated and not take forever to track down which project uses which bug tracker and which patch contribution mechanism.]]></description>
  <pubDate>Fri, 22 Aug 2008 20:16:59 +0000</pubDate>
</item>
        <item>
  <title>Comment from Endolith</title>
  <description><![CDATA[You might look into what the One Laptop Per Child project is doing about this.  I know they use Python for everything because it's easy for the kids to make changes to and see the results of their changes immediately.]]></description>
  <pubDate>Fri, 22 Aug 2008 20:19:34 +0000</pubDate>
</item>
      </channel>
</rss>
