<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: My first intense hacking session: learning a few lessons</title>
	<atom:link href="http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/feed/" rel="self" type="application/rss+xml" />
	<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/</link>
	<description>The Log Module</description>
	<lastBuildDate>Fri, 05 Feb 2010 14:10:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: jason holmes</title>
		<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/comment-page-1/#comment-37430</link>
		<dc:creator>jason holmes</dc:creator>
		<pubDate>Wed, 15 Oct 2008 09:26:22 +0000</pubDate>
		<guid isPermaLink="false">http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/#comment-37430</guid>
		<description>just a novis can you help to make my first hack
jason</description>
		<content:encoded><![CDATA[<p>just a novis can you help to make my first hack<br />
jason</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: The Linux Index &#187; Juan Carlos Torres: Konquering the Planet</title>
		<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/comment-page-1/#comment-5300</link>
		<dc:creator>The Linux Index &#187; Juan Carlos Torres: Konquering the Planet</dc:creator>
		<pubDate>Tue, 25 Sep 2007 18:03:32 +0000</pubDate>
		<guid isPermaLink="false">http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/#comment-5300</guid>
		<description>[...] I have written some pieces (or rather just one) of documentation and tried to make some patches here and there. But I&#8217;m planning on expanding my territories. I&#8217;m currently learing C++ in [...]</description>
		<content:encoded><![CDATA[<p>[...] I have written some pieces (or rather just one) of documentation and tried to make some patches here and there. But I&#8217;m planning on expanding my territories. I&#8217;m currently learing C++ in [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eike Hein</title>
		<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/comment-page-1/#comment-4563</link>
		<dc:creator>Eike Hein</dc:creator>
		<pubDate>Mon, 10 Sep 2007 14:17:46 +0000</pubDate>
		<guid isPermaLink="false">http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/#comment-4563</guid>
		<description>&gt; Second reason would be a lower entry barrier. If I were to submit the patch to both Kubuntu developers and to Marchel Junke at the same time, I bet that the patch would get tested and incorporated quicker in Kubuntu.

Which is sort of the point: Applying a patch to a package within a distribution is quicker and easier than it should be, because more likely than not it&#039;s not being tested and reviewed properly. I&#039;m speaking from experience. I maintain several applications within the KDE project, and developers affiliated with distributions as varied as SuSE, Debian and Gentoo send us patches regularly (thanks!). As developers familiar with the code base, we can often quickly spot obvious bugs in those patches that the authors are oblivious to, get them sorted out, and integrate the patches. If the distribution goes straight ahead and applies the patches to their packages directly without getting them upstream first, however, those bugs stay in and it&#039;s the users who bear the cost, and the developers it reflects poorly upon. It&#039;s unfun to learn this the hard way for all involved.


&gt; I do want to get my patch upstream. But after this, I’m a bit wary of how to proceed. Will he/they eat me?

If he&#039;s any good, he&#039;ll be happy about any patch that makes the app better, and do his part to get it in. Ideally an open source developer puts the project above himself and makes sure he&#039;s not being a single point of failure for it. And he should try to make the experience pleasant enough that the contributor will want to come back.


&gt; What if other downstreams (of the same upstream) do not want/need those changes? Perhaps it’s a case to case basis. Some patches would probably be of interest to upstream and the general whole, while some would most probably be of interest only to a specific downstream. 

Generally speaking, it&#039;s in the interest of a given project to make their product flexible enough to accomodate a wide range of downstream needs. An easy example is making it straight-forward to swap differently branded visuals by having proper theming facilities, but there are much more technical cases, too, of course. So yes, there is certainly a lot of opportunity for the upstream project to be managed so poorly as to make downstream&#039;s life hard despite downstream having all the best intentions, and the burden of doing the right thing doesn&#039;t solely rest on distributions. More often than not it&#039;s whether it&#039;s able to balance contending needs that makes the difference between a good and a bad open source project. 


&gt; Think of it as testing it on guinea pigs and weeding out the bad patches.

I don&#039;t think it&#039;s desirable to abuse users as beta testers if it&#039;s avoidable. 


&gt; Isn’t this the sort of technical and social centralization that Linus is essentially trying to overcome (re: git discussion in core-devel)?

No, those are slightly different discussions. That vendor kernel trees are an increasing problem for the Linux industry and generally frowned upon should tell you as much, though. In fact, the kernel community is trying rather hard to make it easier and easier for people to stay close to the mainline in what they ship and deploy; that was one of the main reasons for changing the development model a few years back. 


&gt; Instead of a central space for development, how about a central place for communication?

Development -is- communication, to a very large degree. That&#039;s why I&#039;m emphasizing the upstream project as a shared space for all involved parties.


&gt; But I guess upstream shouldn’t always expect or demand that development should start or happen on their turf alone, or that things will always go their way. The road goes both ways IMHO.

You&#039;re still clinging to that &quot;us vs. them&quot; image that you shouldn&#039;t be having in the first place, so it seems I&#039;m not really getting through. Rather than seeing upstream as a foreign country, see upstream as the club house for every one, a shared facility. The mantra is &quot;involve yourself&quot;.</description>
		<content:encoded><![CDATA[<p>&gt; Second reason would be a lower entry barrier. If I were to submit the patch to both Kubuntu developers and to Marchel Junke at the same time, I bet that the patch would get tested and incorporated quicker in Kubuntu.</p>
<p>Which is sort of the point: Applying a patch to a package within a distribution is quicker and easier than it should be, because more likely than not it&#8217;s not being tested and reviewed properly. I&#8217;m speaking from experience. I maintain several applications within the KDE project, and developers affiliated with distributions as varied as SuSE, Debian and Gentoo send us patches regularly (thanks!). As developers familiar with the code base, we can often quickly spot obvious bugs in those patches that the authors are oblivious to, get them sorted out, and integrate the patches. If the distribution goes straight ahead and applies the patches to their packages directly without getting them upstream first, however, those bugs stay in and it&#8217;s the users who bear the cost, and the developers it reflects poorly upon. It&#8217;s unfun to learn this the hard way for all involved.</p>
<p>&gt; I do want to get my patch upstream. But after this, I’m a bit wary of how to proceed. Will he/they eat me?</p>
<p>If he&#8217;s any good, he&#8217;ll be happy about any patch that makes the app better, and do his part to get it in. Ideally an open source developer puts the project above himself and makes sure he&#8217;s not being a single point of failure for it. And he should try to make the experience pleasant enough that the contributor will want to come back.</p>
<p>&gt; What if other downstreams (of the same upstream) do not want/need those changes? Perhaps it’s a case to case basis. Some patches would probably be of interest to upstream and the general whole, while some would most probably be of interest only to a specific downstream. </p>
<p>Generally speaking, it&#8217;s in the interest of a given project to make their product flexible enough to accomodate a wide range of downstream needs. An easy example is making it straight-forward to swap differently branded visuals by having proper theming facilities, but there are much more technical cases, too, of course. So yes, there is certainly a lot of opportunity for the upstream project to be managed so poorly as to make downstream&#8217;s life hard despite downstream having all the best intentions, and the burden of doing the right thing doesn&#8217;t solely rest on distributions. More often than not it&#8217;s whether it&#8217;s able to balance contending needs that makes the difference between a good and a bad open source project. </p>
<p>&gt; Think of it as testing it on guinea pigs and weeding out the bad patches.</p>
<p>I don&#8217;t think it&#8217;s desirable to abuse users as beta testers if it&#8217;s avoidable. </p>
<p>&gt; Isn’t this the sort of technical and social centralization that Linus is essentially trying to overcome (re: git discussion in core-devel)?</p>
<p>No, those are slightly different discussions. That vendor kernel trees are an increasing problem for the Linux industry and generally frowned upon should tell you as much, though. In fact, the kernel community is trying rather hard to make it easier and easier for people to stay close to the mainline in what they ship and deploy; that was one of the main reasons for changing the development model a few years back. </p>
<p>&gt; Instead of a central space for development, how about a central place for communication?</p>
<p>Development -is- communication, to a very large degree. That&#8217;s why I&#8217;m emphasizing the upstream project as a shared space for all involved parties.</p>
<p>&gt; But I guess upstream shouldn’t always expect or demand that development should start or happen on their turf alone, or that things will always go their way. The road goes both ways IMHO.</p>
<p>You&#8217;re still clinging to that &#8220;us vs. them&#8221; image that you shouldn&#8217;t be having in the first place, so it seems I&#8217;m not really getting through. Rather than seeing upstream as a foreign country, see upstream as the club house for every one, a shared facility. The mantra is &#8220;involve yourself&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jucato</title>
		<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/comment-page-1/#comment-4562</link>
		<dc:creator>Jucato</dc:creator>
		<pubDate>Mon, 10 Sep 2007 12:47:07 +0000</pubDate>
		<guid isPermaLink="false">http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/#comment-4562</guid>
		<description>@nocti: Thanks for your words of encouragement :)

@Jonas: That issue with Debian is precisely something I want to avoid when working for KDE and Kubuntu.

The reason why I started the patch in Kubuntu instead of upstream is because of the circumstances at that time. First, Kubuntu will be using D3lphin by default in Kubuntu 7.10, which is about a month away. So time is of the essence. I needed to get this patch done, tested, and uploaded ASAP. Second reason would be a lower entry barrier. If I were to submit the patch to both Kubuntu developers and to Marchel Junke at the same time, I bet that the patch would get tested and incorporated quicker in Kubuntu. And again, the time factor played an important part in that. Given more time, I would most probably have communicated with D3lphin developers first. Who wouldn&#039;t want their work (or name) to reach more people, anyway? :)

@Eike: thank you for your concern. Both KDE and Kubuntu are special to me. You know me and how committed I am to creating an amicable working relationship. I am committed to not cutting out either end of the development stream. I do want to get my patch upstream. But after this, I&#039;m a bit wary of how to proceed. Will he/they eat me? :)

But I also wonder if all changes should always be pushed or started upstream. What if upstream refuses to accept those patches or new features? What if other downstreams (of the same upstream) do not want/need those changes? Perhaps it&#039;s a case to case basis. Some patches would probably be of interest to upstream and the general whole, while some would most probably be of interest only to a specific downstream. Perhaps implementing some patches on the distro level first also has advantages. Patches would get used and tested first by more users, allowing upstream to observe the changes. Think of it as testing it on guinea pigs and weeding out the bad patches. :)

&gt;&gt; The point is that there is a need and an incentive for different parties who use and distribute an open source product to convene in a central space for development, to avoid fragmentation, to keep quality up, to make sure that improvements are broadly available to all end-users.

This one I absolutely agree on. But maybe saying feature-level development should only be in upstream isn&#039;t really the solution. Isn&#039;t this the sort of technical and social centralization that Linus is essentially trying to overcome (re: git discussion in core-devel)? Instead of a central space for development, how about a central place for communication? I do understand, though, that distros shouldn&#039;t just keep to themselves. But I guess upstream shouldn&#039;t always expect or demand that development should start or happen on their turf alone, or that things will always go their way. The road goes both ways IMHO. And I will try hard to wear both hats responsibly. Of course presuming I get to wear either hat in the first place. :P

If there&#039;s anything that all these has made me realize, it&#039;s that a common place of communication is needed, something I thought about in my other post about upstream and downstream. But perhaps I&#039;m to idealistic. The utopian dreams of the young. :)</description>
		<content:encoded><![CDATA[<p>@nocti: Thanks for your words of encouragement <img src='http://jucato.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>@Jonas: That issue with Debian is precisely something I want to avoid when working for KDE and Kubuntu.</p>
<p>The reason why I started the patch in Kubuntu instead of upstream is because of the circumstances at that time. First, Kubuntu will be using D3lphin by default in Kubuntu 7.10, which is about a month away. So time is of the essence. I needed to get this patch done, tested, and uploaded ASAP. Second reason would be a lower entry barrier. If I were to submit the patch to both Kubuntu developers and to Marchel Junke at the same time, I bet that the patch would get tested and incorporated quicker in Kubuntu. And again, the time factor played an important part in that. Given more time, I would most probably have communicated with D3lphin developers first. Who wouldn&#8217;t want their work (or name) to reach more people, anyway? <img src='http://jucato.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>@Eike: thank you for your concern. Both KDE and Kubuntu are special to me. You know me and how committed I am to creating an amicable working relationship. I am committed to not cutting out either end of the development stream. I do want to get my patch upstream. But after this, I&#8217;m a bit wary of how to proceed. Will he/they eat me? <img src='http://jucato.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>But I also wonder if all changes should always be pushed or started upstream. What if upstream refuses to accept those patches or new features? What if other downstreams (of the same upstream) do not want/need those changes? Perhaps it&#8217;s a case to case basis. Some patches would probably be of interest to upstream and the general whole, while some would most probably be of interest only to a specific downstream. Perhaps implementing some patches on the distro level first also has advantages. Patches would get used and tested first by more users, allowing upstream to observe the changes. Think of it as testing it on guinea pigs and weeding out the bad patches. <img src='http://jucato.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&gt;&gt; The point is that there is a need and an incentive for different parties who use and distribute an open source product to convene in a central space for development, to avoid fragmentation, to keep quality up, to make sure that improvements are broadly available to all end-users.</p>
<p>This one I absolutely agree on. But maybe saying feature-level development should only be in upstream isn&#8217;t really the solution. Isn&#8217;t this the sort of technical and social centralization that Linus is essentially trying to overcome (re: git discussion in core-devel)? Instead of a central space for development, how about a central place for communication? I do understand, though, that distros shouldn&#8217;t just keep to themselves. But I guess upstream shouldn&#8217;t always expect or demand that development should start or happen on their turf alone, or that things will always go their way. The road goes both ways IMHO. And I will try hard to wear both hats responsibly. Of course presuming I get to wear either hat in the first place. <img src='http://jucato.org/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>If there&#8217;s anything that all these has made me realize, it&#8217;s that a common place of communication is needed, something I thought about in my other post about upstream and downstream. But perhaps I&#8217;m to idealistic. The utopian dreams of the young. <img src='http://jucato.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eike Hein</title>
		<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/comment-page-1/#comment-4534</link>
		<dc:creator>Eike Hein</dc:creator>
		<pubDate>Sun, 09 Sep 2007 15:15:29 +0000</pubDate>
		<guid isPermaLink="false">http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/#comment-4534</guid>
		<description>&gt; Does it mean that all feature development should happen/start from upstream only?
&gt; Does it mean that distributions are limited to just superficial and minor tweaks and leave “feature-level” improvements to upstream?

It means that development should happen within the organization created for that purpose, i.e. upstream, where parties with varied agendas convene to assemble a balanced, useful piece of software on neutral ground where they can help out each other and share their improvement to everyone&#039;s collective benefit.

As I wrote in my earlier post, it&#039;s perfectly legitimate for a distribution project to employ developers to work on functionality they feel is important for their target demographic and then contribute it to the upstream project. The obvious example is the Linux kernel, where the majority of the (non-driver) code is being written by developers who are on the payroll of a distribution, but it&#039;s submitted to the Linux community for discussion and integration. 

Whenever this hasn&#039;t been done, however, i.e. when distributions have kept kernel features out of the mainline and away from the wider community, their quality has suffered massively from the lack of testing and review, and the distributions have had to put in extra work to keep their additions working with mainline, because they aren&#039;t pulled along by the community. Kubuntu has suffered from similar problems as you know.

A distribution-affiliated developer has two simultaneously wear both hats: He&#039;s a member both of the upstream project and the downstream distribution, and has to responsibly balance out the interests of both. The better distributions have an active interest in making sure that it is as easy as possible for the developers they sponsor to function as a member of the upstream projects, because it gets them better results (and thus people will think of themselves as Kernel developers and not Red Hat developers). 


&gt; Does it mean that downstream devs are incapable of creating “feature-level” modifications?

Incapable in so much as they do not have the means to ensure quality, and are likely to turn their development enterprise into an uphill battle as the wider community becomes less and less likely to want to help them out in a bind because they keep development to themselves rather than share it for the benefit of everyone (and no, &quot;but anyone who wants it can grab it from somewhere on our website&quot; does not work). 


&gt; I have always thought, perhaps wrongly or too ideally, that unlike a real river, development in FOSS flows both downstream and upstream. Perhaps I was wrong?

The point is that there is a need and an incentive for different parties who use and distribute an open source product to convene in a central space for development, to avoid fragmentation, to keep quality up, to make sure that improvements are broadly available to all end-users. Imagine a KDE world where every distribution kept to themselves rather than contribute to kde.org: The more fragmentation, the harder it gets to support end-users, the harder it gets for application developers to target the platform, the harder it gets to make any forward progress because of the lack of pooled manpower.

I have attended Kubuntu development meetings in the past for various reasons, and have encountered a worrying amount of project members who do not understand that dynamic, who treat upstream projects not as the shared spaces they are, but as wall-socket code supply that occassionally drops some more code into their lap via some mysterious process, and then the distribution gets to do all the important work. Who actively jump at including half-baked patches as differenciation factor from other distributions, and have no interest in bringing those modifications up to speed and actively sharing them with the wider community of the component they apply to.

If I seem unseemingly critical of you right now, it&#039;s because I&#039;m concerned that as a new open source contributor who is loyal to the first project he made a connection with you might be adversely influenced by a work ethic and mindset that does not reflect the real strengths of the open source model.</description>
		<content:encoded><![CDATA[<p>&gt; Does it mean that all feature development should happen/start from upstream only?<br />
&gt; Does it mean that distributions are limited to just superficial and minor tweaks and leave “feature-level” improvements to upstream?</p>
<p>It means that development should happen within the organization created for that purpose, i.e. upstream, where parties with varied agendas convene to assemble a balanced, useful piece of software on neutral ground where they can help out each other and share their improvement to everyone&#8217;s collective benefit.</p>
<p>As I wrote in my earlier post, it&#8217;s perfectly legitimate for a distribution project to employ developers to work on functionality they feel is important for their target demographic and then contribute it to the upstream project. The obvious example is the Linux kernel, where the majority of the (non-driver) code is being written by developers who are on the payroll of a distribution, but it&#8217;s submitted to the Linux community for discussion and integration. </p>
<p>Whenever this hasn&#8217;t been done, however, i.e. when distributions have kept kernel features out of the mainline and away from the wider community, their quality has suffered massively from the lack of testing and review, and the distributions have had to put in extra work to keep their additions working with mainline, because they aren&#8217;t pulled along by the community. Kubuntu has suffered from similar problems as you know.</p>
<p>A distribution-affiliated developer has two simultaneously wear both hats: He&#8217;s a member both of the upstream project and the downstream distribution, and has to responsibly balance out the interests of both. The better distributions have an active interest in making sure that it is as easy as possible for the developers they sponsor to function as a member of the upstream projects, because it gets them better results (and thus people will think of themselves as Kernel developers and not Red Hat developers). </p>
<p>&gt; Does it mean that downstream devs are incapable of creating “feature-level” modifications?</p>
<p>Incapable in so much as they do not have the means to ensure quality, and are likely to turn their development enterprise into an uphill battle as the wider community becomes less and less likely to want to help them out in a bind because they keep development to themselves rather than share it for the benefit of everyone (and no, &#8220;but anyone who wants it can grab it from somewhere on our website&#8221; does not work). </p>
<p>&gt; I have always thought, perhaps wrongly or too ideally, that unlike a real river, development in FOSS flows both downstream and upstream. Perhaps I was wrong?</p>
<p>The point is that there is a need and an incentive for different parties who use and distribute an open source product to convene in a central space for development, to avoid fragmentation, to keep quality up, to make sure that improvements are broadly available to all end-users. Imagine a KDE world where every distribution kept to themselves rather than contribute to kde.org: The more fragmentation, the harder it gets to support end-users, the harder it gets for application developers to target the platform, the harder it gets to make any forward progress because of the lack of pooled manpower.</p>
<p>I have attended Kubuntu development meetings in the past for various reasons, and have encountered a worrying amount of project members who do not understand that dynamic, who treat upstream projects not as the shared spaces they are, but as wall-socket code supply that occassionally drops some more code into their lap via some mysterious process, and then the distribution gets to do all the important work. Who actively jump at including half-baked patches as differenciation factor from other distributions, and have no interest in bringing those modifications up to speed and actively sharing them with the wider community of the component they apply to.</p>
<p>If I seem unseemingly critical of you right now, it&#8217;s because I&#8217;m concerned that as a new open source contributor who is loyal to the first project he made a connection with you might be adversely influenced by a work ethic and mindset that does not reflect the real strengths of the open source model.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonas</title>
		<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/comment-page-1/#comment-4532</link>
		<dc:creator>Jonas</dc:creator>
		<pubDate>Sun, 09 Sep 2007 13:17:04 +0000</pubDate>
		<guid isPermaLink="false">http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/#comment-4532</guid>
		<description>Regarding comment 4...

Incapable or limited is a matter of perspective. Any distro can indeed create feature-level modifications if they so choses to. The question is whether that is always appropriate given their resources. The resources may be time, the number of developers, or how well they understand the code they are adding modifications too. The upstream developers likely know the code a lot better, and may therefore produce a patch or modification of better quality. 

And no, I don&#039;t think all feature development should start from upstream. Their time is not always enough to do it, and they may suffer from blind spots that end users and/or distro makers do not suffer from. But there is no need to learn to package stuff to get a patch into the upstream source either. That is going about things the wrong way if you ask me, and this ties in into things going both up and downstream.

If you as an individual hacker modifies something, don&#039;t package a new modified version. Create a patch-file and get it to the upstream developers. If it&#039;s good enough and doesn&#039;t break things you may not see, it could be incorporated into the next release. At that point, it would trickle down downstream again to the benefit of everyone and just the Kubuntu/Fedora/whatever users. 

Packaging it would make sure that your contributions would (mostly) only be suitable for your distro of choice and its derivatives. Sending the source back upstream does not. Besides, if the patch is not incorporated in the main source you would most likely have to reapply the patch(es) whenever the next version is released upstream.

So yes, development goes both ways. At least ideally, but not always.

A while back there was a good deal of bad blood in the Debian community regarding Ubuntu, because they felt that Ubuuntu was free-loading on the Debian infrastructure and good-will while not sending their patches back upstream as much as they should have. Well, that was the Debian take on the story at least. I didn&#039;t pay enough attention to know how true that point of view is. Still, doing ones utmost to avoid such sentiments to arise in the first place is always good whether it is true or not in that specific instance.</description>
		<content:encoded><![CDATA[<p>Regarding comment 4&#8230;</p>
<p>Incapable or limited is a matter of perspective. Any distro can indeed create feature-level modifications if they so choses to. The question is whether that is always appropriate given their resources. The resources may be time, the number of developers, or how well they understand the code they are adding modifications too. The upstream developers likely know the code a lot better, and may therefore produce a patch or modification of better quality. </p>
<p>And no, I don&#8217;t think all feature development should start from upstream. Their time is not always enough to do it, and they may suffer from blind spots that end users and/or distro makers do not suffer from. But there is no need to learn to package stuff to get a patch into the upstream source either. That is going about things the wrong way if you ask me, and this ties in into things going both up and downstream.</p>
<p>If you as an individual hacker modifies something, don&#8217;t package a new modified version. Create a patch-file and get it to the upstream developers. If it&#8217;s good enough and doesn&#8217;t break things you may not see, it could be incorporated into the next release. At that point, it would trickle down downstream again to the benefit of everyone and just the Kubuntu/Fedora/whatever users. </p>
<p>Packaging it would make sure that your contributions would (mostly) only be suitable for your distro of choice and its derivatives. Sending the source back upstream does not. Besides, if the patch is not incorporated in the main source you would most likely have to reapply the patch(es) whenever the next version is released upstream.</p>
<p>So yes, development goes both ways. At least ideally, but not always.</p>
<p>A while back there was a good deal of bad blood in the Debian community regarding Ubuntu, because they felt that Ubuuntu was free-loading on the Debian infrastructure and good-will while not sending their patches back upstream as much as they should have. Well, that was the Debian take on the story at least. I didn&#8217;t pay enough attention to know how true that point of view is. Still, doing ones utmost to avoid such sentiments to arise in the first place is always good whether it is true or not in that specific instance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: nocti</title>
		<link>http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/comment-page-1/#comment-4521</link>
		<dc:creator>nocti</dc:creator>
		<pubDate>Sun, 09 Sep 2007 05:58:05 +0000</pubDate>
		<guid isPermaLink="false">http://jucato.org/blog/my-first-intense-hacking-session-learning-a-few-lessons/#comment-4521</guid>
		<description>Good work Jucato. IMHO, starting off on the wrong foot is better than not starting at all. I&#039;m happy that you got to start with coding for real and hope you can keep the energy up for those restless insanely inhuman wee hours of the morning where good code magically start to appear :)</description>
		<content:encoded><![CDATA[<p>Good work Jucato. IMHO, starting off on the wrong foot is better than not starting at all. I&#8217;m happy that you got to start with coding for real and hope you can keep the energy up for those restless insanely inhuman wee hours of the morning where good code magically start to appear <img src='http://jucato.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>
