<?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: Programming Ideas</title>
	<atom:link href="http://blog.joeb454.com/2009/06/programming-ideas/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.joeb454.com/2009/06/programming-ideas/</link>
	<description>A Day In The Life Of Your Average Joe</description>
	<lastBuildDate>Fri, 07 Oct 2011 18:12:14 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
	<item>
		<title>By: Rocio Solteros</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-935</link>
		<dc:creator>Rocio Solteros</dc:creator>
		<pubDate>Mon, 13 Jul 2009 15:01:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-935</guid>
		<description>I won¬¥t give any advice/idea, i think all of them are already gave. I just wanted to say that sometimes we have good ideas, but in fact really bad, because our brains work sometimes in a false rhythm. We have to work making our ideas more productive for a real world</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://0.gravatar.com/avatar/e5f97eac2095f0ed91f0ec15268a8749?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>I won¬¥t give any advice/idea, i think all of them are already gave. I just wanted to say that sometimes we have good ideas, but in fact really bad, because our brains work sometimes in a false rhythm. We have to work making our ideas more productive for a real world
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: Queequeg</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-873</link>
		<dc:creator>Queequeg</dc:creator>
		<pubDate>Mon, 15 Jun 2009 08:42:31 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-873</guid>
		<description>Some four years ago I was committed to do the IT for my union. I was the only one with any chance of doing it (it&#039;s a little union) but I had no idea of building web pages, although I had been programming in C and C++ in remote times. So I had to learn PHP and MySQL and fast. First thing I did was telling my historian friend &quot;¬øwould you like a web page on History? I&#039;ll do it for you&quot;, and had him drafting &#039;specifications&#039; for it. That was my first project and it posed all the basic problems I was going to face with the real thing: menu systems, access permissions, etc. With the applications I had to build after that I noticed that I was evolving my own ways of doing things, and that the most interesting problems that I had to handle related not to the application itself, but to some of its parts that I had to reuse afterwards for the next. What I&#039;m trying to say is that what the idea for the application is, is not really important, as long as it has enough complexity. You could do with a system for sharing recipes online with your friends or an online movie database. The interest will be in solving problems like ¬øhow do I make the application menus dependent on the user level of access? and things like that. You will end up with pieces of software that will be using once and again while you perfect them. It doesn&#039;t matter if someone solved the same problem before: it will be your code and you will be developing your own manners with it.
I hope this helps and that my English is not too obscure (me Spanish).</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/725b7a239d0868cc1f29064ef7bbccbe?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>Some four years ago I was committed to do the IT for my union. I was the only one with any chance of doing it (it&#8217;s a little union) but I had no idea of building web pages, although I had been programming in C and C++ in remote times. So I had to learn PHP and MySQL and fast. First thing I did was telling my historian friend &#8220;¬øwould you like a web page on History? I&#8217;ll do it for you&#8221;, and had him drafting &#8216;specifications&#8217; for it. That was my first project and it posed all the basic problems I was going to face with the real thing: menu systems, access permissions, etc. With the applications I had to build after that I noticed that I was evolving my own ways of doing things, and that the most interesting problems that I had to handle related not to the application itself, but to some of its parts that I had to reuse afterwards for the next. What I&#8217;m trying to say is that what the idea for the application is, is not really important, as long as it has enough complexity. You could do with a system for sharing recipes online with your friends or an online movie database. The interest will be in solving problems like ¬øhow do I make the application menus dependent on the user level of access? and things like that. You will end up with pieces of software that will be using once and again while you perfect them. It doesn&#8217;t matter if someone solved the same problem before: it will be your code and you will be developing your own manners with it.<br />
I hope this helps and that my English is not too obscure (me Spanish).
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: drubin</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-872</link>
		<dc:creator>drubin</dc:creator>
		<pubDate>Mon, 15 Jun 2009 07:06:20 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-872</guid>
		<description>&lt;blockquote cite=&quot;#commentbody-868&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-868&quot; rel=&quot;nofollow&quot;&gt;Jacob Peddicord&lt;/a&gt; :&lt;/strong&gt;(PHP is my pet peeve, but if you need any help, you know where to find me. 
&lt;/blockquote&gt;

:evilgrin:</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://0.gravatar.com/avatar/4f5bd2de957e694d15bfe834975da019?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<blockquote cite="#commentbody-868"><p>
<strong><a href="#comment-868" rel="nofollow">Jacob Peddicord</a> :</strong>(PHP is my pet peeve, but if you need any help, you know where to find me.
</p></blockquote>
<p>:evilgrin:
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-870</link>
		<dc:creator>Joe</dc:creator>
		<pubDate>Mon, 15 Jun 2009 00:23:10 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-870</guid>
		<description>Wow thanks all. They&#039;re all good responses (that doesn&#039;t mean I don&#039;t want any more ;)).

I&#039;ll definitely give some of the options here a think, I have to agree, when I&#039;m coding, even if it works I&#039;ll sit there thinking &quot;I&#039;m sure there&#039;s a better way I could code this&quot;. I.e. more efficient or something.</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://0.gravatar.com/avatar/e7aa45e093c2aff1b43981ff341d6fa5?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>Wow thanks all. They&#8217;re all good responses (that doesn&#8217;t mean I don&#8217;t want any more <img src='http://blog.joeb454.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ).</p>
<p>I&#8217;ll definitely give some of the options here a think, I have to agree, when I&#8217;m coding, even if it works I&#8217;ll sit there thinking &#8220;I&#8217;m sure there&#8217;s a better way I could code this&#8221;. I.e. more efficient or something.
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: Martin Bohm</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-869</link>
		<dc:creator>Martin Bohm</dc:creator>
		<pubDate>Sun, 14 Jun 2009 23:54:49 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-869</guid>
		<description>Hi Joe,

I&#039;ve learned a great deal about programming in the last 2 years, and even before that I was doing Summer of Code. I can imagine you stand at around the point where I was a couple of years ago, knowing some C and C++, done some PHP sites and feeling like a real programmer.

The truth is, the more you learn, the more you understand that there&#039;s no such thing. I know, the last sentence was a bit melodramatic, but still, it&#039;s true. Unfortunately, not only Wordpress is a bad piece of code. Basically everything is a piece of slow, bug-ridden, not-well-thought-out code. And truth is - once you get from the kernel up, it gets worse. X, KDE, GNOME, HAL, every major web browser.

The sad truth is, most of that stuff never gets fixed because there&#039;s little need for that - after all, slow apps get faster thanks to the Moore&#039;s law, we don&#039;t have to care, right? Wrong (well, for me at least).

What every good programmer needs is a good theoretical background. I&#039;m not saying calculus, just make sure you understand what a Big-O notation is, what&#039;s the best sorting algorithm on a RAM machine and on a pointer machine, some basic graph theory (up to say flow networks).

If you know that already, try fiddling with some non-imperative programming languages. I recommend Haskell - it really opened my eyes on functional languages, and by learning it you learn a lot about programming in general.

What I&#039;d avoid is plunging into a bad code (bad as in badly designed, slow, full of hacks) and trying to understand what&#039;s wrong with it. You need to understand what makes programs slow (theory I mentioned earlier) and you need sufficient experience with good program design to get that. Try reading good source code first, or perhaps try doing something on your own - making simple mistakes, creating a badly-designed application and understanding why it is bad - such experience is invaluable, even though it may look useless at first sight.

As a way to end this rant-reply, I offer my humble observation - a lot of software that I consider high-quality (TeX, for example, Glasgow Haskell compiler, Google search engine core) comes from people with a substantial academic backgrounds. And the converse is usually true as well - badly designed software is built by committees or &quot;engineers&quot; - people who rather concentrate on coding than on thinking.

And last, but not least: Good luck!</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/f8409d88e5cb39287e38ef4bd651e75e?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>Hi Joe,</p>
<p>I&#8217;ve learned a great deal about programming in the last 2 years, and even before that I was doing Summer of Code. I can imagine you stand at around the point where I was a couple of years ago, knowing some C and C++, done some PHP sites and feeling like a real programmer.</p>
<p>The truth is, the more you learn, the more you understand that there&#8217;s no such thing. I know, the last sentence was a bit melodramatic, but still, it&#8217;s true. Unfortunately, not only WordPress is a bad piece of code. Basically everything is a piece of slow, bug-ridden, not-well-thought-out code. And truth is &#8211; once you get from the kernel up, it gets worse. X, KDE, GNOME, HAL, every major web browser.</p>
<p>The sad truth is, most of that stuff never gets fixed because there&#8217;s little need for that &#8211; after all, slow apps get faster thanks to the Moore&#8217;s law, we don&#8217;t have to care, right? Wrong (well, for me at least).</p>
<p>What every good programmer needs is a good theoretical background. I&#8217;m not saying calculus, just make sure you understand what a Big-O notation is, what&#8217;s the best sorting algorithm on a RAM machine and on a pointer machine, some basic graph theory (up to say flow networks).</p>
<p>If you know that already, try fiddling with some non-imperative programming languages. I recommend Haskell &#8211; it really opened my eyes on functional languages, and by learning it you learn a lot about programming in general.</p>
<p>What I&#8217;d avoid is plunging into a bad code (bad as in badly designed, slow, full of hacks) and trying to understand what&#8217;s wrong with it. You need to understand what makes programs slow (theory I mentioned earlier) and you need sufficient experience with good program design to get that. Try reading good source code first, or perhaps try doing something on your own &#8211; making simple mistakes, creating a badly-designed application and understanding why it is bad &#8211; such experience is invaluable, even though it may look useless at first sight.</p>
<p>As a way to end this rant-reply, I offer my humble observation &#8211; a lot of software that I consider high-quality (TeX, for example, Glasgow Haskell compiler, Google search engine core) comes from people with a substantial academic backgrounds. And the converse is usually true as well &#8211; badly designed software is built by committees or &#8220;engineers&#8221; &#8211; people who rather concentrate on coding than on thinking.</p>
<p>And last, but not least: Good luck!
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jacob Peddicord</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-868</link>
		<dc:creator>Jacob Peddicord</dc:creator>
		<pubDate>Sun, 14 Jun 2009 23:43:45 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-868</guid>
		<description>I don&#039;t go looking for ideas of things to program. Because if I do, then I quickly lose interest. What you need to do is don&#039;t worry about something to program, but the moment you catch yourself thinking &quot;wouldn&#039;t it be cool if -- &quot; then write it down and you have an idea.

If you want to contribute to other projects, it&#039;s similar. Take a look at a project you like, poke in their code a bit. Then when you get the wild idea that you think that the software should have feature X, go search for it to see what others have done. Ask around on how to contribute. Then dive right in.

(PHP is my pet peeve, but if you need any help, you know where to find me. :P)</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/f8bb8fc3f4923a6bd426a3032b440199?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>I don&#8217;t go looking for ideas of things to program. Because if I do, then I quickly lose interest. What you need to do is don&#8217;t worry about something to program, but the moment you catch yourself thinking &#8220;wouldn&#8217;t it be cool if &#8212; &#8221; then write it down and you have an idea.</p>
<p>If you want to contribute to other projects, it&#8217;s similar. Take a look at a project you like, poke in their code a bit. Then when you get the wild idea that you think that the software should have feature X, go search for it to see what others have done. Ask around on how to contribute. Then dive right in.</p>
<p>(PHP is my pet peeve, but if you need any help, you know where to find me. <img src='http://blog.joeb454.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> )
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aigars Mahinovs</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-867</link>
		<dc:creator>Aigars Mahinovs</dc:creator>
		<pubDate>Sun, 14 Jun 2009 23:39:36 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-867</guid>
		<description>Learning from your own mistakes is much more educational.

What I would recommend is taking a look outside - think of a group of people that could benefit greatly from using free software, but do not know that yet, for example because they are not tech minded. An example would be - community organisers. Then think of what could be one piece of software that you could write with the tools of you choosing that could bring the most benefit. Talk to a few of them if you do not know yourself.

Make a specification, write the software, get a few &#039;close users&#039; that you can see using your software and try to build a community so tha people can point to your mistakes. And that is how you learn a new programming language or a toolkit the open source way :D</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/314111a177db33116a7bcfb3c1cb003b?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>Learning from your own mistakes is much more educational.</p>
<p>What I would recommend is taking a look outside &#8211; think of a group of people that could benefit greatly from using free software, but do not know that yet, for example because they are not tech minded. An example would be &#8211; community organisers. Then think of what could be one piece of software that you could write with the tools of you choosing that could bring the most benefit. Talk to a few of them if you do not know yourself.</p>
<p>Make a specification, write the software, get a few &#8216;close users&#8217; that you can see using your software and try to build a community so tha people can point to your mistakes. And that is how you learn a new programming language or a toolkit the open source way <img src='http://blog.joeb454.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-866</link>
		<dc:creator>Joe</dc:creator>
		<pubDate>Sun, 14 Jun 2009 23:13:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-866</guid>
		<description>Alexander: I think you&#039;ve hit the nail on the head there!

I may take a look into some various open-source projects, I think it could have the benefit of teaching me to read other people&#039;s code a bit easier (along with the comments), as well as give me something to do ;)</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://0.gravatar.com/avatar/e7aa45e093c2aff1b43981ff341d6fa5?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>Alexander: I think you&#8217;ve hit the nail on the head there!</p>
<p>I may take a look into some various open-source projects, I think it could have the benefit of teaching me to read other people&#8217;s code a bit easier (along with the comments), as well as give me something to do <img src='http://blog.joeb454.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexander</title>
		<link>http://blog.joeb454.com/2009/06/programming-ideas/comment-page-1/#comment-865</link>
		<dc:creator>Alexander</dc:creator>
		<pubDate>Sun, 14 Jun 2009 23:03:25 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joeb454.com/?p=323#comment-865</guid>
		<description>While there is no shortage of ideas in the world, or even good ideas, what is sorely lacking is a) great ideas, and b) great programming.


Great programing &lt;i&gt;can&lt;/i&gt; come over time, so let&#039;s not worry about that one right now. The hard one is to come up with truly great ideas. Test it by searching for your new idea on Google; chances are, there is such a thing already.


For me, a great idea is something that takes some old ideas and put them together in a new interesting way. But all of this is &lt;b&gt;highly&lt;/b&gt; subjective; one&#039;s great idea is another&#039;s rubbish idea.


For example, JQuery was not the first JS library of its kind, but it&#039;s the one I think propagated the Web2.0 world (with a pat on the back to Prototype for the same). XSLT wasn&#039;t the first XML transformation language, but the one that did it all right. PHP isn&#039;t the most elegant and full-featured language, but it has just the right amount of everything to make it useful. Java in itself wasn&#039;t all that, but the concept of the JVM was. Simular was a fantastic idea, even if it didn&#039;t become popular. And on and on it goes.


As to your preference for PHP and MySQL, dig into WordPress and clean it up. It&#039;s a &lt;a href=&quot;http://shelter.nu/blog/2009/06/successful-crap.html&quot; rel=&quot;nofollow&quot;&gt;successful piece of crap code&lt;/a&gt; that needs some great ideas to make it future proof. That would be awsome!</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://0.gravatar.com/avatar/c54cc039e6eb3019df2c1848c490baed?s=90&amp;d=wavatar&amp;r=PG' class='avatar avatar-90 photo' height='90' width='90' /></div>
<p>While there is no shortage of ideas in the world, or even good ideas, what is sorely lacking is a) great ideas, and b) great programming.</p>
<p>Great programing <i>can</i> come over time, so let&#8217;s not worry about that one right now. The hard one is to come up with truly great ideas. Test it by searching for your new idea on Google; chances are, there is such a thing already.</p>
<p>For me, a great idea is something that takes some old ideas and put them together in a new interesting way. But all of this is <b>highly</b> subjective; one&#8217;s great idea is another&#8217;s rubbish idea.</p>
<p>For example, JQuery was not the first JS library of its kind, but it&#8217;s the one I think propagated the Web2.0 world (with a pat on the back to Prototype for the same). XSLT wasn&#8217;t the first XML transformation language, but the one that did it all right. PHP isn&#8217;t the most elegant and full-featured language, but it has just the right amount of everything to make it useful. Java in itself wasn&#8217;t all that, but the concept of the JVM was. Simular was a fantastic idea, even if it didn&#8217;t become popular. And on and on it goes.</p>
<p>As to your preference for PHP and MySQL, dig into WordPress and clean it up. It&#8217;s a <a href="http://shelter.nu/blog/2009/06/successful-crap.html" rel="nofollow">successful piece of crap code</a> that needs some great ideas to make it future proof. That would be awsome!
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
</channel>
</rss>

