<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7177553</id><updated>2011-12-14T18:57:27.256-08:00</updated><category term='proflowers'/><category term='encore marketing international'/><title type='text'>Foo Bar Bin Baz</title><subtitle type='html'>I do not read over or edit the content on this blog.  There will be spelling errors, grammatical errors, and run-on sentences that make no sense.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>61</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7177553.post-3093609084993301613</id><published>2008-11-02T17:43:00.000-08:00</published><updated>2008-11-02T17:53:39.488-08:00</updated><title type='text'>FFI for ruby</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_KgHcvV33wpk/SQ5ZQXJNR8I/AAAAAAAAANA/_hAdecliRv4/s1600-h/matz_2i0w1806.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_KgHcvV33wpk/SQ5ZQXJNR8I/AAAAAAAAANA/_hAdecliRv4/s320/matz_2i0w1806.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5264243152068102082" /&gt;&lt;/a&gt;&lt;small&gt;Matz - he is the guy that created Ruby.  In case you thought that this is some sort of fetish blog&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blog.headius.com/2008/10/ffi-for-ruby-now-available.html"&gt;ruby-ffi&lt;/a&gt; is now available. I am not sure how it works yet (haven't looked at the code) but it works as advertised.  I have already wrapped up some C libraries and there are more to come.  I am thinking about trying out the Sybase/SQL server freetds libraries next.  Using ODBC/freetds sucks for ruby - it takes too long to configure.&lt;br /&gt;&lt;br /&gt;I used to program a lot in Lisp, and the FFI libraries were pretty nice (FFI, UFFI, etc.......), but I think that Ruby has started to replace a lot of what I liked in Lisp.  It has plists (well, simple to use hashes) and metaprogramming.  Plus, I don't have to deal with parens all the time.  I don't care what all of the cool people say, parens can get pretty hard to read.  Python is really cool, and it is supposed to be fast (well, not on my OLPC, which is a piece), but I have grown eyes for Ruby.  Thank you Matz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-3093609084993301613?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/3093609084993301613/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=3093609084993301613' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/3093609084993301613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/3093609084993301613'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2008/11/ffi-for-ruby.html' title='FFI for ruby'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_KgHcvV33wpk/SQ5ZQXJNR8I/AAAAAAAAANA/_hAdecliRv4/s72-c/matz_2i0w1806.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-5498082305902422253</id><published>2008-08-18T16:11:00.000-07:00</published><updated>2008-11-02T17:57:53.863-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proflowers'/><category scheme='http://www.blogger.com/atom/ns#' term='encore marketing international'/><title type='text'>Encore Marketing International and ProFlowers</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_KgHcvV33wpk/SQ5aU2bxq6I/AAAAAAAAANI/_f8XsKu0amA/s1600-h/proflowers.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 145px; height: 218px;" src="http://1.bp.blogspot.com/_KgHcvV33wpk/SQ5aU2bxq6I/AAAAAAAAANI/_f8XsKu0amA/s320/proflowers.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5264244328698588066" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;small&gt;I wish my flowers looked half this good&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;If you have to order from ProFlowers.com.  If someone points a gun to your head and tells you that you have to order shitty flowers and get bad service from that dreck of a company.  If you are about to be dipped in acid unless you waste your money on ProFlowers.com and their wretched service&lt;br /&gt;&lt;br /&gt;watch out&lt;br /&gt;&lt;br /&gt;The pictures are pretty and the service looks great, and what was supposed to be a nice set of flowers for my wife was pretty embarrassing.  My wife was embarrassed by the flowers I sent her.  She didn't want to say who sent them.  Yes, they were that bad.  Bad flowers in a cheap pot - looked nothing like the pictures.&lt;br /&gt;&lt;br /&gt;Thank god I had time to call a real florist.&lt;br /&gt;&lt;br /&gt;So, no more ProFlowers.com.  Ever.  Really.  Well.  Maybe if you are holding me over a pot of boiling oil.&lt;br /&gt;&lt;br /&gt;But, the real story.  2 months later I notice that there is a charge on my credit card for $14.95 from a company named 'Encore Marketing International'.  Strange, I think, I have never heard of that company.&lt;br /&gt;&lt;br /&gt;So, I do a search on the internet and I find that there are people popping up all over the place with the same charges on their credit cards.  It is tied to ProFlowers.com.  Apparently, when you fill out the order form on the website there is something there that says you agree to pay $14.95 for a few months when you buy flowers.  I never saw that, but apparently it is there.&lt;br /&gt;&lt;br /&gt;So, 2 months later I call American Express and the Better Business Bureau and I get some of my money back from Encore Marketing International.  I get a letter from the BBB with an attachment from Encore Marketing International stating that I was signed up for something called EasySaver Rewards.  The people from Encore Marketing International (who only sign the letter as 'Customer Service') give me a really snarky answer on how they are going to refund some of the money for a service I never signed up for and never used.&lt;br /&gt;&lt;br /&gt;Just watch out.  Really.  There are sleazy companies that will just attach themselves to your credit card bill.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_KgHcvV33wpk/SQ5afke3p7I/AAAAAAAAANQ/yts0nPcMj4w/s1600-h/wilted+flowers.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 170px; height: 123px;" src="http://2.bp.blogspot.com/_KgHcvV33wpk/SQ5afke3p7I/AAAAAAAAANQ/yts0nPcMj4w/s320/wilted+flowers.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5264244512858286002" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;small&gt;Thanks, ProFlowers&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-5498082305902422253?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/5498082305902422253/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=5498082305902422253' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/5498082305902422253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/5498082305902422253'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2008/08/encore-marketing-international-and.html' title='Encore Marketing International and ProFlowers'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_KgHcvV33wpk/SQ5aU2bxq6I/AAAAAAAAANI/_f8XsKu0amA/s72-c/proflowers.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-116632362508977782</id><published>2006-12-16T18:39:00.000-08:00</published><updated>2006-12-16T18:47:05.090-08:00</updated><title type='text'>WebDav File Sharing</title><content type='html'>Samba, Novell NCPFS, FTP, etc.  They all are solutions people use to share files, and each has its own shortcomings.  Either the protocol is proprietary or insecure.  Do you want to base your company's file sharing solution on something proprietary or insecure?&lt;br /&gt;&lt;br /&gt;The solution?  Use webdav.  Great protocol.  Use http, or you can use https for secure transfer.  Windows, Linux, Mac OSX all understand it, and - best of all - you can use any authentication back-end you want.  ldap, /etc/passwd, plain text file, sql database, crazy xml file format that you Java and C# people LOVE.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-116632362508977782?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/116632362508977782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=116632362508977782' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/116632362508977782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/116632362508977782'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/12/webdav-file-sharing.html' title='WebDav File Sharing'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-116345202576128031</id><published>2006-11-13T13:04:00.000-08:00</published><updated>2006-11-13T13:07:05.790-08:00</updated><title type='text'>Java is now GPL</title><content type='html'>and I have just become a Java developer.  Sure, I have worked on Java projects (some very large Java projects) but it always made me feel dirty.&lt;br /&gt;&lt;br /&gt;Great language, great virtual machine.  Way to go Sun!  I can't wait to start hacking on some new Java projects!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-116345202576128031?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/116345202576128031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=116345202576128031' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/116345202576128031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/116345202576128031'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/11/java-is-now-gpl.html' title='Java is now GPL'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115953894235917480</id><published>2006-09-29T07:05:00.000-07:00</published><updated>2006-09-29T07:09:02.373-07:00</updated><title type='text'>GPLv3 carries the spirit of the GPLv2</title><content type='html'>I just read a comment on slashdot that pointed out something important.  From the GPLv2:&lt;br /&gt;&lt;br /&gt;"For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. "&lt;br /&gt;&lt;br /&gt;(http://developers.slashdot.org/comments.pl?sid=197256&amp;cid=16162805)&lt;br /&gt;&lt;br /&gt;DRM takes away that freedom.  Why don't the kernel developers seem to understand that?  It is not just about the top developers and the companies that they represent - it is about all of us and the freedom to modify and distribute the code.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115953894235917480?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115953894235917480/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115953894235917480' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115953894235917480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115953894235917480'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/09/gplv3-carries-spirit-of-gplv2.html' title='GPLv3 carries the spirit of the GPLv2'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115680030894363304</id><published>2006-08-28T14:20:00.000-07:00</published><updated>2006-08-28T14:25:08.963-07:00</updated><title type='text'>Mulholland Dr. in a sentence</title><content type='html'>Big dream sequence.  The part in the middle, where the girl is caught masturbating in her jeans, is where she moves out of her dream and into reality.  The rest takes place in her head.  Too many people have told me that there  is "so much more to the film" and there really isn't.  Now, I am not saying that it is a bad film.  I enjoyed it - I enjoyed the underlying story about regret.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115680030894363304?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115680030894363304/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115680030894363304' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115680030894363304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115680030894363304'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/mulholland-dr-in-sentence.html' title='Mulholland Dr. in a sentence'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115678510320622965</id><published>2006-08-28T10:06:00.000-07:00</published><updated>2006-08-28T10:11:43.220-07:00</updated><title type='text'>What a Pussy</title><content type='html'>Read this planet GNOME:&lt;br /&gt;&lt;br /&gt; &lt;p style="color: rgb(0, 51, 0);"&gt;&lt;span style="font-size:85%;"&gt;After waiting a year and a half for the paper work to go through, it’s official:&lt;/span&gt;&lt;/p&gt; &lt;div style="color: rgb(0, 51, 0);" align="center"&gt; &lt;span style="font-size:85%;"&gt;&lt;a href="http://www.tenslashsix.com/images/canadian-citizen-certificate.jpg"&gt;&lt;br /&gt;&lt;img src="http://www.tenslashsix.com/images/canadian-citizen-certificate-tn.jpg" /&gt;&lt;br /&gt;&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; &lt;p style="color: rgb(0, 51, 0);"&gt;&lt;span style="font-size:85%;"&gt;Thanks to my mother being a Canadian citizen, I have now successfully claimed my dual citizenship. Next up I can get a Candian passport, and travel as a Canadian, instead of as an American, something that is more in more important in light of how well… loved the US is right now by the rest of the world.&lt;/span&gt;&lt;/p&gt;&lt;p style="color: rgb(0, 51, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: rgb(0, 51, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;I guess that there is something wrong with me, but I go out of my way to &lt;span style="font-weight: bold;"&gt;NOT&lt;/span&gt; be identified as Canadian or European.  Sure it might be uncool to be an American (USAian or whatever they call us nowdays) but if you go through life really caring what people think about you, you will miss so much of what life has to offer.  Part of who I am in an American, and to deny that would be to deny a part of myself.  I am also an atheist, a father, and a big fan of Chinese food.  If I went around claiming that I didn't like Chinese very much because it offended other people then I would be lying to myself.  Remember folks, when you lie to others you really are lying to yourselves.  If you are a US citizen and are worried that other people may not like you because of it, chances are that you probably do not like yourself.  And you can't run away from yourself.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115678510320622965?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115678510320622965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115678510320622965' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115678510320622965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115678510320622965'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/what-pussy.html' title='What a Pussy'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115661462227240969</id><published>2006-08-26T10:45:00.000-07:00</published><updated>2006-08-26T10:50:22.286-07:00</updated><title type='text'>You can now call me Dr. Parker</title><content type='html'>I am planning on writing a book on a concept that I have been working on called "Future Focused Manifestation", which is a totally new concept that will show you how to attain all of your goals and make your dreams a reality.&lt;br /&gt;&lt;br /&gt;Dr. Parker has his doctorate in applied metaphysics and automated autonomous healing.  He is an accredited healer and mao shang du expert.  His first book, "Future Focused Manifestation: Getting What You Really Want" is set to be published next year.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115661462227240969?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115661462227240969/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115661462227240969' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115661462227240969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115661462227240969'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/you-can-now-call-me-dr-parker.html' title='You can now call me Dr. Parker'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115656462012199916</id><published>2006-08-25T20:43:00.000-07:00</published><updated>2006-08-25T20:57:00.156-07:00</updated><title type='text'>What I love about asp.net / java and rails (oh, and php!)</title><content type='html'>I love Ruby on Rails.  The whole thing.  Awesome.  I can write really cool applications really quickly. Really well thought out with a great design.  Looking at Rails, it is almost like the developers had no clue how any other web framework worked and just made up something that, while MVC (Model-View-Controller) based, was their own.&lt;br /&gt;&lt;br /&gt;Java.  Well, I love you too - as long as you really become Free, Open Source software that I can distribute and easily integrate into my Linux desktop.  JSP and JavaBeans are really cool and blew my mind at one time, but I remember all of hype and the bad documentation.  I really wish that Sun would have taken their excellent framework and documented it as well as the PHP (http://www.php.net) folks.&lt;br /&gt;&lt;br /&gt;ASP.net.  Server controls are awesome.  I wrote a google maps server control today and it was easy.  I love the idea of creating my own tags.  JSP has this, but Microsoft has made this much easier.  I so wish that it was even easier, meaning that I wish there was better documentation.  I will write a small document on building ASP.net server controls in C#, and it will be simple.  ASP.net server controls are easy to build and really should be used all over the place.  They let programmers easily reuse code.  I love this.&lt;br /&gt;&lt;br /&gt;Oh - I almost forgot.  PHP!  PHP is great because you can drop code in a directory on a PHP-enabled Apache server and it JUST WORKS.  This makes it easy to build frameworks.  A interpreted language that is object oriented and just loads files that I drop on a server is a great thing.  Having to compile everything or restart the server for my changes to take effect is a dated idea that should have gone away 10 years ago.  With a good foundation, PHP applications can scale like crazy and should never have to be restarted.&lt;br /&gt;&lt;br /&gt;Right now I am combining everything that I like in a Lisp application.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115656462012199916?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115656462012199916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115656462012199916' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115656462012199916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115656462012199916'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/what-i-love-about-aspnet-java-and.html' title='What I love about asp.net / java and rails (oh, and php!)'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115634567519468282</id><published>2006-08-23T08:06:00.000-07:00</published><updated>2006-08-23T08:07:55.206-07:00</updated><title type='text'>sbcl / tbnl Performance Issues Fix</title><content type='html'>Got this from &lt;a href="http://common-lisp.net/pipermail/tbnl-devel/2006-August/000633.html"&gt;http://common-lisp.net/pipermail/tbnl-devel/2006-August/000633.html :&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;After i did the change you say :&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;span style="font-family: courier new; color: rgb(102, 51, 51);"&gt;On:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new; color: rgb(102, 51, 51);"&gt;cl-kmrcl: /usr/share/common-lisp/source/kmrcl/sockets.lisp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new; color: rgb(102, 51, 51);"&gt;I did:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new; color: rgb(102, 51, 51);"&gt;(defun close-active-socket (socket)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new; color: rgb(102, 51, 51);"&gt;;;#+sbcl (sb-bsd-sockets:socket-close socket)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new; color: rgb(102, 51, 51);"&gt;#+sbcl  (close socket))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new; color: rgb(102, 51, 51);"&gt;#-sbcl (close socket))&lt;/span&gt;&lt;/pre&gt;---&lt;br /&gt;&lt;br /&gt;tbnl and sbcl are working fine now!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115634567519468282?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115634567519468282/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115634567519468282' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115634567519468282'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115634567519468282'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/sbcl-tbnl-performance-issues-fix.html' title='sbcl / tbnl Performance Issues Fix'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115628026621196713</id><published>2006-08-22T13:55:00.000-07:00</published><updated>2006-08-22T13:57:46.223-07:00</updated><title type='text'>Parades</title><content type='html'>...big groups of people, especially doing outrageous things, like getting naked, are boring.  Like noserings, they get boring when a lot of people get involved.  Now, having a parade on your own is exciting.  Getting a drum, a big banner, and walking down the street naked is where the real excitement is.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115628026621196713?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115628026621196713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115628026621196713' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115628026621196713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115628026621196713'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/parades.html' title='Parades'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115627299957635379</id><published>2006-08-22T11:55:00.000-07:00</published><updated>2006-08-22T11:56:39.610-07:00</updated><title type='text'>Turn off those AA fonts</title><content type='html'>Try it for a few days.  Trust me.  Anti-aliased fonts might be sexy, but your eyes have to deal with trying to adjust to fuzzy-looking text.  I turned off AA fonts on my desktop (GNOME) about a week ago and I never plan on going back.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115627299957635379?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115627299957635379/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115627299957635379' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115627299957635379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115627299957635379'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/turn-off-those-aa-fonts.html' title='Turn off those AA fonts'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115594011695325481</id><published>2006-08-18T15:22:00.000-07:00</published><updated>2006-08-18T15:28:36.963-07:00</updated><title type='text'>Cynisism and the Web</title><content type='html'>I admit to being cynical sometimes in my writing.  I think that it stems from my occasional wanting to be accepted by complete strangers on the internet.  It is much easier to criticize strangers and fall in with the cool, cynical crowd than to actually admit that I might not understand something or admit that I am floored by someone else's achievements.  I don't really like people in my real life who are cynical, so why do I get cynical on the internet sometimes?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115594011695325481?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115594011695325481/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115594011695325481' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115594011695325481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115594011695325481'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/cynisism-and-web.html' title='Cynisism and the Web'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115590230361294070</id><published>2006-08-18T04:56:00.000-07:00</published><updated>2006-08-18T13:50:52.236-07:00</updated><title type='text'>LISP printm</title><content type='html'>If you are reading "The Elements of Artificial Intelligence" by Steven L. Tanimoto here is a "printm" macro:&lt;br /&gt;&lt;br /&gt;(defmacro printm (&amp;body body)&lt;br /&gt;    `'(,@body))&lt;br /&gt;&lt;br /&gt;CL-USER&gt; (printm this is a test)&lt;br /&gt;(THIS IS A TEST)&lt;br /&gt;&lt;br /&gt;or if you want the data &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt; to print out as a list:&lt;br /&gt;&lt;br /&gt;(defmacro printm (&amp;body body)&lt;br /&gt;    `(format nil "~{~D ~}" '(,@body)))&lt;br /&gt;&lt;br /&gt;CL-USER&gt; (printm this is a test)&lt;br /&gt;"THIS IS A TEST"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115590230361294070?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115590230361294070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115590230361294070' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115590230361294070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115590230361294070'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/lisp-printm.html' title='LISP printm'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115585068758877627</id><published>2006-08-17T14:24:00.000-07:00</published><updated>2006-08-17T14:38:07.603-07:00</updated><title type='text'>Michael Moore Tries to Deceive All Of Us</title><content type='html'>&lt;span style="font-size:100%;"&gt;This is an old issue, but I really want to bring it up.  It concerns Michael Moore's film &lt;span style="font-style: italic;"&gt;Bowling for Columbine&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;It has been well-documented that Michael Moore spliced the "from my cold dead hands" speech and the speech given after the Columbine massacre (google it) and tried to make it seem like Heston stood in front of a Columbine audience right after the massacre with his gun yelling "from my cold dead hands".  I just read Michael Moore's site where he justifies his actions:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 102, 51);font-size:100%;" &gt;As for the clip preceding the Denver speech, when Heston proclaims "from my cold dead hands," this appears as Heston is being introduced in narration. It is Heston's most well-recognized NRA image – hoisting the rifle overhead as he makes his proclamation, as he has done at virtually every political appearance on behalf of the NRA (before and since Columbine). I have merely re-broadcast an image supplied to us by a Denver TV station, an image which the NRA has itself crafted &lt;i&gt;for&lt;/i&gt; the media, or, as one article put it, "the mantra of dedicated gun owners" which they &lt;a href="http://michaelmoore.com/words/wackoattacko/latimes.php"&gt;"wear on T-shirts, stamp it on the outside of envelopes, e-mail it on the Internet and sometimes shout it over the phone."&lt;/a&gt;. Are they now embarrassed by this sick, repulsive image and the words that accompany it?&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;The question I have is: how does Michael Moore have people that still believe what he shows in his films?  If he had made a mistake, or if someone in his office had maliciously edited the speech without Moore's knowledge I would understand it would make more sense to me.  The scene in question is a major part of the movie - and would have been really effective if not for this dishonest error.  Charlton Heston waving a gun in the air like a madman would have been a very dramatic way to show the NRA in a bad light.&lt;br /&gt;&lt;br /&gt;Another question: does Moore really believe his own explanation?  He has to know that the scene is a big lie, which just makes it bad propaganda.  The guy  &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;deliverately tried to mislead his audience.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115585068758877627?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115585068758877627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115585068758877627' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115585068758877627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115585068758877627'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/michael-moore-tries-to-deceive-all-of.html' title='Michael Moore Tries to Deceive All Of Us'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115561780000045054</id><published>2006-08-14T21:34:00.000-07:00</published><updated>2006-08-14T21:56:40.013-07:00</updated><title type='text'>Mike Wallace and Ahmadinejad - The Whole Interview Was Better</title><content type='html'>I have been hearing all day how horrible the Mike Wallace / Ahmadinejad interview was, and how Wallace basically was a spokesman for the Iranian President.  There have been reports all day on how Wallace is washed up and a leftist and an apologist for the Iranian government.  I watched the 60 Minutes interview and felt that he was a bit soft on Ahmadinejad and that, yes, maybe Wallace was washed up.&lt;br /&gt;&lt;br /&gt;Well, I was wrong.  And so were all of the other ready to have Wallace throw in the towel.  I just saw the entire interview on C-SPAN - the one that was not heavily edited by 60 Minutes.  Wallace really did a damn good job, asking tough questions and challenging Ahmadinejad on the Holocaust, martyrism, and the United States.  In the whole interview Ahmadinejad condones using children as suicide bombers, tries his best to duck questions about the Holocaust and Israels right to exist, and hints all over the place about an Islamic holy war.  There are also all sorts of strange little  places in the interview where both Wallace and Ahmadinejad are basically telling eachother "go fuck yourself" with body language and dodgy questions/answers.&lt;br /&gt;&lt;br /&gt;There are people all over the web calling Mike Wallace a traitor, a leftist, and an Iranian apologist.  Watch the whole interview.  The 60 Minutes edit was terrible, and once you see the whole interview, Wallace's comments really make sense.  Taken out of context, Wallace looks really, really bad.&lt;br /&gt;&lt;br /&gt;Don't read the interview.  You will miss the body language and the angry silences.  Watch it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115561780000045054?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115561780000045054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115561780000045054' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115561780000045054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115561780000045054'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/mike-wallace-and-ahmadinejad-whole.html' title='Mike Wallace and Ahmadinejad - The Whole Interview Was Better'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115556949226776388</id><published>2006-08-14T08:18:00.000-07:00</published><updated>2006-08-14T08:31:32.433-07:00</updated><title type='text'>Anyone interested: Common Lisp for PHP Developers?</title><content type='html'>&lt;p&gt;&lt;br /&gt;I am thinking of putting together a tutorial for PHP developers to help them learn Common Lisp.  If you read yesterday's post, you will see that I contrasted a Common Lisp "loop" with a PHP "for" loop.  I think that I could put together a series of articles that shows PHP and simple Common Lisp (referred to as "CL" from here on out) code bits.  &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;In most of the CL tutorials that I have read, the people writing seem to show too much of what CL can do and not how to write basic programs.  Macros and advanced CLOS are great, but in languages like PHP, Java, and C# the most complex stuff is usually not taught except in advanced articles.  Most seasoned programmers probably are very used to one type of object oriented programming style, and it might be easier for the average user to give examples in a very familiar way rather than showing how powerful CL can actually be.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;So, if I start to put together a tutorial, I assume that it will center around web programming.  I was thinking of using SBCL, tbnl, html-template or cl-emb, and cl-who.  I use slime (which is really the only time I use emacs) and I think that it is great but pretty complicated.  slime may be the only hurdle, so I won't require it for my tutorial.  PHP programmers are used to editing in one file and running scripts from the webserver or in another file.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;I would love any suggestions.  There really need to be more Lisp documents for people just starting out.  I know that starting with Lisp a year ago I was not sure where I should look for good tutorials.  I was used to the Ruby/Python/PHP/Java world, where  it was simple to put together a simple, working application. &lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115556949226776388?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115556949226776388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115556949226776388' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115556949226776388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115556949226776388'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/anyone-interested-common-lisp-for-php.html' title='Anyone interested: Common Lisp for PHP Developers?'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115543772868627225</id><published>2006-08-12T19:46:00.000-07:00</published><updated>2006-08-13T10:57:39.043-07:00</updated><title type='text'>Common Lisp Loops are Easier Than You Think</title><content type='html'>Okay - the Common Lisp loop macro is insane.  It gives you a crazy amount of flexibility that, as a new Lisp programmer, you really don't care about.  In this short article I am going to show you how to write a really simple Lisp loop and show you how much nicer it is than a C-style "for" loop.&lt;br /&gt;&lt;br /&gt;So, here is a C-style "for" loop:&lt;br /&gt;&lt;br /&gt;in C:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;int i;&lt;br /&gt;&lt;br /&gt;for (i = 0; i &lt; 10; i++) {&lt;br /&gt;   printf("%d\n", i);&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;in PHP:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;for ($i = 0; $i &lt; 10; $i++) {&lt;br /&gt;   echo $i . "\n";&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Pretty simple, eh?  If you are a C/C++/C#/PHP/Java programmer you probably have written thousands of them.  I remember learning the C "for" loop for the first time.  I was reading a C book and I saw the loop and it made very little sense.  Look at a Common Lisp loop that does the same thing:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;(loop for i from 0 to 9&lt;br /&gt;   do (format t "~d~%" i))&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;If you have never seen a C-style "for" loop, what would be easier - a "for" loop or actually telling the program to loop, as does the Lisp program?  Some of you might say the C program, but I really think that Lisp is a lot more clear than the C-style loop.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115543772868627225?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115543772868627225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115543772868627225' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115543772868627225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115543772868627225'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/common-lisp-loops-are-easier-than-you.html' title='Common Lisp Loops are Easier Than You Think'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115455714643991190</id><published>2006-08-02T15:16:00.000-07:00</published><updated>2006-08-02T15:20:04.593-07:00</updated><title type='text'>Tens of Thousands of Free Music Downloads</title><content type='html'>I have set up a blog to list all of the free music websites on the internet that I can find:&lt;br /&gt;&lt;a href="http://free-music-blog.blogspot.com/"&gt;&lt;br /&gt;http://free-music-blog.blogspot.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So far, there are tens of thousands of songs linked.  I don't link to songs, I link to places where music can be found.  Some sites have links to thousands of songs arranged by genre.  There is a lot of free music on the net.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115455714643991190?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115455714643991190/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115455714643991190' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115455714643991190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115455714643991190'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/08/tens-of-thousands-of-free-music.html' title='Tens of Thousands of Free Music Downloads'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115430769860681378</id><published>2006-07-30T17:53:00.000-07:00</published><updated>2006-07-30T18:01:38.646-07:00</updated><title type='text'>Commission Junction</title><content type='html'>Just checked my CJ account and I have made no money this month.  I have been creating Lisp-based affiliate websites for about a month and making a bit of money here and there. I will write a post sometime in the future why affiliate websites are good if done in the right way, but right now I want to talk about T-Mobile.&lt;br /&gt;&lt;br /&gt;First of all, I have to say that Lisp is a great language for creating websites.  Lisp  with a bit of TBNL, cl-emb, and clsql could be a killer product if really done right.  Heck, it could go head-to-head with Ruby-on-Rails if done correctly.  Too bad I have only been programming in Lisp for about 6 months, so I am not the programmer to do it.&lt;br /&gt;&lt;br /&gt;So, I sent 300+ people to the T-Mobile website over a weekend and no sales.  Each person was targetted as an interested person in the new Sidekick 3.  I offered a great deal on the new Sidekick, and T-Mobile says that no one bought.&lt;br /&gt;&lt;br /&gt;I think that T-Mobile is full of it.&lt;br /&gt;&lt;br /&gt;Affiliate marketing is really based on how honest the affiliate is.  If T-Mobile says that I got a sale, then I got a sale.  If not, well - I just don't got a sale.  So, I can send 300+ plus people to the T-Mobile site - 300+ unique people interested in the product - and T-Mobile can say that I have no sales.&lt;br /&gt;&lt;br /&gt;I have no sales.  Watch out for T-Mobile.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115430769860681378?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115430769860681378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115430769860681378' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115430769860681378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115430769860681378'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/07/commission-junction.html' title='Commission Junction'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115371525629359524</id><published>2006-07-23T21:16:00.000-07:00</published><updated>2006-07-23T21:27:36.313-07:00</updated><title type='text'>Hezbollah</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://upload.wikimedia.org/wikipedia/commons/thumb/0/08/Flag_of_Hezbollah.svg/250px-Flag_of_Hezbollah.svg.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/0/08/Flag_of_Hezbollah.svg/250px-Flag_of_Hezbollah.svg.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Hezbollah 23 seats in the Lebanese parliament.   23 out of 128, which is 18%.   18% is significant, and represents a large set of the population.  The Hezbollah flag is shown above.  It is a small indicator of how fucking insane these people are.  Their flag has a gun on it.  The US flag has stars and stripes.  The French flag has three stripes.    The UK flag has the popular Union Jack symbol.&lt;br /&gt;&lt;br /&gt;Anyways - if you want to scare the crap out of yourself, please check out the following site:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://memritv.org/"&gt;http://memritv.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is a small glimpse into the mind of people who want a good deal of us dead.  Good day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115371525629359524?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115371525629359524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115371525629359524' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115371525629359524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115371525629359524'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/07/hezbollah.html' title='Hezbollah'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115284977678376556</id><published>2006-07-13T21:00:00.000-07:00</published><updated>2006-07-13T21:07:06.160-07:00</updated><title type='text'>Fast Company Pisses Me Off</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://images.fastcompany.com/hi/0705/feature_revengenerds.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px;" src="http://images.fastcompany.com/hi/0705/feature_revengenerds.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Reminds me of every other crap business magazine out there, except they love the webtwodotoh and flashyceoassholes.&lt;br /&gt;&lt;br /&gt;What do you really gain by reading FastCompany?  Does it really give you any insight into the business world?  By having a subscription does it make your company a fast company?  What the fuck is a fast company?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115284977678376556?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115284977678376556/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115284977678376556' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115284977678376556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115284977678376556'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/07/fast-company-pisses-me-off.html' title='Fast Company Pisses Me Off'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115256042882908596</id><published>2006-07-10T12:33:00.000-07:00</published><updated>2006-07-10T12:40:28.863-07:00</updated><title type='text'>Good Caffeine Withdrawal Music / LISP</title><content type='html'>If this helps, Radiohead seems to be doing the trick.  Right now I am listening to "Street Spirit".&lt;br /&gt;&lt;br /&gt;PHP sites in LISP.  Was a great trick, but (as my friend Mark predicted) I switched to Ruby.  It is not a LISP problem, but a library problem.  &lt;a href="http://groups.google.com/group/comp.lang.lisp/msg/87d31e59b8a647f2?dmode=source"&gt;This is the greatest post I have ever read that oulines the issues when using LISP.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am still using LISP every day, just not for any system that has to talk much with the outside world.  I really wish that I had more time to work on libraries, but I am not an expert LISP programmer, and there seems to be a whole lot of religious debate on how LISP libraries should look (OOP or not?  Loop or not?)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115256042882908596?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115256042882908596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115256042882908596' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115256042882908596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115256042882908596'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/07/good-caffeine-withdrawal-music-lisp.html' title='Good Caffeine Withdrawal Music / LISP'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115255635114230426</id><published>2006-07-10T11:29:00.000-07:00</published><updated>2006-07-10T11:32:31.163-07:00</updated><title type='text'>Caffeine Withdrawal : Day 4</title><content type='html'>It has been 4 days without coffee.  This from a guy who has lived on caffeine for a few years.&lt;br /&gt;&lt;br /&gt;It took 3 days for the serious headache to go away.  Now I am just tired.&lt;br /&gt;&lt;br /&gt;Tired.&lt;br /&gt;&lt;br /&gt;Tired.&lt;br /&gt;&lt;br /&gt;I am sitting here at work and I WISH that I could lay flat across my desk and sleep.&lt;br /&gt;&lt;br /&gt;I have spent a lot of time reading other blogs and trying to learn about withdrawal and how to make the process easier, but I really don't see any good options other than waiting for my energy levels to return.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115255635114230426?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115255635114230426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115255635114230426' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115255635114230426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115255635114230426'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/07/caffeine-withdrawal-day-4.html' title='Caffeine Withdrawal : Day 4'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115230945678586722</id><published>2006-07-07T14:49:00.000-07:00</published><updated>2006-07-07T14:57:36.806-07:00</updated><title type='text'>The Debian Problem</title><content type='html'>If you have time, read this: &lt;a href="http://blog.madduck.net/debian/2006.05.24-ubuntu-and-debian"&gt;http://blog.madduck.net/debian/2006.05.24-ubuntu-and-debian&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Great little article on what is wrong with Debian and Ubuntu.  Too bad the author of that article just doesn't get it.&lt;br /&gt;&lt;br /&gt;Is a committee going to really help the problem?  Are more meeting and less work really going to help Debian be the best that it is going to be.  So much of Debian is still great, but so much of it has become a big joke.&lt;br /&gt;&lt;br /&gt;This part is my favorite:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;If I may add a thought that has come up lately (it's not only mine): a derivative like Ubuntu, namely one pushing Debian to the desktop, is an important asset for Debian. However, the only way this is going to work from the Debian perspective is as a mutual effort. If Canonical/Ubuntu do not realise this, maybe another derivative has to step in to fill the void?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;Wow.  Yet another derivative distro.  The stupidity and arrogance is way beyond me. Why not create more work for the Debian project?  Hey guys - let's reinvent the wheel &lt;span style="font-style: italic;"&gt;one more time&lt;/span&gt;.&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115230945678586722?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115230945678586722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115230945678586722' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115230945678586722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115230945678586722'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/07/debian-problem.html' title='The Debian Problem'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115195310742323461</id><published>2006-07-03T11:56:00.000-07:00</published><updated>2006-07-03T11:58:27.443-07:00</updated><title type='text'>Factoid</title><content type='html'>&lt;b&gt;fac·toid&lt;/b&gt;   &lt;a href="https://secure.reference.com/premium/login.html?rd=2&amp;u=http%3A%2F%2Fdictionary.reference.com%2Fbrowse%2Ffactoid"&gt;&lt;img src="http://cache.lexico.com/dictionary/graphics/AHD4/JPG/pron.jpg" alt="Audio pronunciation of &amp;quot;factoid&amp;quot;" border="0" /&gt;&lt;/a&gt;  &lt;span style="display: none;"&gt;(&lt;/span&gt;&lt;span style="border-style: solid; border-width: 1px; font-family: verdana,sans-serif; font-size: 7pt; color: red; background-color: rgb(255, 255, 204);"&gt; P &lt;/span&gt;&lt;span style="display: none;"&gt;)&lt;/span&gt;  &lt;a title="Click for guide to symbols." onclick="ahdpop();return false;" href="http://dictionary.reference.com/help/ahd4/pronkey.html" class="linksrc"&gt;&lt;b&gt;Pronunciation Key&lt;/b&gt;&lt;/a&gt;  (f&lt;img alt="" src="http://cache.lexico.com/dictionary/graphics/AHD4/GIF/abreve.gif" align="bottom" height="15" width="7" /&gt;k&lt;img alt="" src="http://cache.lexico.com/dictionary/graphics/AHD4/GIF/prime.gif" align="bottom" height="22" width="4" /&gt;toid)&lt;br /&gt; &lt;i&gt;n.&lt;/i&gt; &lt;ol&gt;&lt;li&gt;A piece of &lt;span style="font-weight: bold;"&gt;unverified or inaccurate information&lt;/span&gt; that is &lt;span style="font-weight: bold;"&gt;presented in the press as factual&lt;/span&gt;, often as part of a publicity effort, and that is then accepted as true because of frequent repetition: “What one misses finally is what might have emerged beyond both facts and factoids&lt;img alt="" src="http://cache.lexico.com/dictionary/graphics/AHD4/GIF/mdash.gif" align="bottom" height="22" width="17" /&gt;a profound definition of the Marilyn Monroe phenomenon” (Christopher Lehmann-Haupt)&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115195310742323461?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115195310742323461/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115195310742323461' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115195310742323461'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115195310742323461'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/07/factoid.html' title='Factoid'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115168489799374128</id><published>2006-06-30T09:26:00.000-07:00</published><updated>2006-06-30T09:30:13.203-07:00</updated><title type='text'>C# Code for Business Days After A Certain Date</title><content type='html'>If you want to find how many business days are after a certain date, look here:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;using System;&lt;br /&gt;&lt;br /&gt;namespace Utilities&lt;br /&gt;{&lt;br /&gt; class MainClass&lt;br /&gt; {&lt;br /&gt;  &lt;br /&gt;  public DateTime BusinessDaysAfter(DateTime dt, int days)&lt;br /&gt;  {&lt;br /&gt;   &lt;br /&gt;   for (int i = 1; i &lt; days; i++) &lt;br /&gt;   {&lt;br /&gt;    dt = dt.AddDays(1.0);&lt;br /&gt;    if (dt.DayOfWeek == DayOfWeek.Saturday || dt.DayOfWeek == DayOfWeek.Sunday) &lt;br /&gt;     days++;&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   return dt;&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  public static void Main(string[] args)&lt;br /&gt;  {&lt;br /&gt;   Utilities.MainClass mc = new Utilities.MainClass();&lt;br /&gt;   DateTime dt = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);&lt;br /&gt;   Console.WriteLine(mc.BusinessDaysAfter(dt, 11).ToString());&lt;br /&gt;   &lt;br /&gt;   Console.WriteLine(dt);&lt;br /&gt;  }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115168489799374128?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115168489799374128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115168489799374128' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115168489799374128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115168489799374128'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/c-code-for-business-days-after-certain.html' title='C# Code for Business Days After A Certain Date'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115146225984468487</id><published>2006-06-27T19:36:00.000-07:00</published><updated>2006-06-27T19:37:39.856-07:00</updated><title type='text'>SUSE Linux 10 ISOs</title><content type='html'>Here is a list of SUSE Linux (SLES 10) mirrors:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.novell.com/products/suselinux/downloads/ftp/mirrors_isos.html"&gt;http://www.novell.com/products/suselinux/downloads/ftp/mirrors_isos.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Have fun.  I am downloading it myself.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115146225984468487?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115146225984468487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115146225984468487' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115146225984468487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115146225984468487'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/suse-linux-10-isos.html' title='SUSE Linux 10 ISOs'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115107488891271685</id><published>2006-06-23T07:51:00.000-07:00</published><updated>2006-06-23T08:01:28.926-07:00</updated><title type='text'>GNOME Apps</title><content type='html'>&lt;p&gt;&lt;br /&gt;I have been using &lt;a href="http://www.gnome.org"&gt;GNOME&lt;/a&gt; for about a week and I really like it.  It is a lot more integrated that I remember it being a few years ago.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;I am a bad example for a user, though.  I dont use Nautilus much, and most of my email is in gmail.  My coding is in vim &lt;i&gt;and&lt;/i&gt; emacs, and I have a GNOME terminal open most of the time.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;I &lt;b&gt;do&lt;/b&gt; use GAIM for chatting, Liferea for RSS feeds, Epiphany for my web browser, Banshee for my music needs, and Totem for watching movies.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;From what I have seen, gnome-vfs and Nautilus are not really that good for working with remote files.  KDE has a &lt;b&gt;much&lt;/b&gt; better solution.  I have been using sshfs and lufs, which are excellent.  It would be great if there was a nice lufs frontend so that I could easily mount/unmount shares that I define (yea, I guess I should write this myself).  Since I started using KDE, I got really used to using fish:// to browse remote *nix servers and it was great managing files on a remote system by clicking around.  I love myself a terminal, but for some tasks being able to see the files in a file manager make life a whole lot easier.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;So far, though, I really like GNOME on ubunutu.  It is obvious that a whole lot of work has gone into it to make it a polished desktop.  I will continue using it for another week at least.  Since I am developing applications in C#, I want to try out monodevelop.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115107488891271685?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115107488891271685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115107488891271685' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115107488891271685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115107488891271685'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/gnome-apps.html' title='GNOME Apps'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115091261829974546</id><published>2006-06-21T10:49:00.000-07:00</published><updated>2006-06-21T10:56:58.316-07:00</updated><title type='text'>The Future is XGL</title><content type='html'>It is just too slow scrolling and resizing windows for me to use every day.  I used it for about 2 days, and while I loved it, slow  scrolling and resizing make the desktop seem so sluggish.  I am on a Thinkpad T40 with an R250 Ati card using the fglrx driver.&lt;br /&gt;&lt;br /&gt;Really cool stuff, though.&lt;br /&gt;&lt;br /&gt;-&lt;br /&gt;&lt;br /&gt;Doing this:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;(in-package :cl-user)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;(eval-when (:compile-toplevel :load-toplevel :execute)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;  (require :clsql)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;  (require :clsql-mysql))&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;and hitting &lt;span style="font-style: italic;"&gt;C-c C-k&lt;/span&gt; (in emacs/slime) produces this:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;A package named #:ASDF6 already exists&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I have looked all over the web for this.  When I type in &lt;span style="font-style: italic;"&gt;C-c C-c&lt;/span&gt; everything is fine, though.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 51, 0);"&gt;CL-USER&gt; (format nil "Bye")&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115091261829974546?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115091261829974546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115091261829974546' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115091261829974546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115091261829974546'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/future-is-xgl.html' title='The Future is XGL'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115084337658026818</id><published>2006-06-20T15:34:00.000-07:00</published><updated>2006-06-20T15:42:56.596-07:00</updated><title type='text'>rails</title><content type='html'>Trying to grab rails.el but rubyforge.net is closed.&lt;br /&gt;&lt;br /&gt;I am currently working on the following projects:&lt;br /&gt;&lt;br /&gt;- Lisp based parser for some really large documents.  I would have used C a year ago, but Lisp gives me the same advantages (fast) with cl-ppcre (regular expression parser)&lt;br /&gt;&lt;br /&gt;- Ruby on Rails web app.  I am moving some of my sites to Rails.  Lisp is great but ActiveRecord is miles ahead of anything else out there.  CLSQL is cool, but it does not give me the magic that ActiveRecord does.&lt;br /&gt;&lt;br /&gt;- ASP.NET web application for a healthcare company.  This has to be in ASP.NET.  ASP.NET has actually been really good for me - it sets the low bar of where a development environment has to be for me to work with.  Really, ASP.NET sets a high bar.  Higher than 99% of the frameworks out there.  I know that I complain about it, but it does make writing applications pleasurable.  I just wish that it took less time to compile.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115084337658026818?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115084337658026818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115084337658026818' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115084337658026818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115084337658026818'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/rails.html' title='rails'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115081486442274090</id><published>2006-06-20T07:36:00.000-07:00</published><updated>2006-06-20T07:48:21.636-07:00</updated><title type='text'>asp.net kind of sucks</title><content type='html'>I don't get it.  I just don't get it.  What is the big deal?  I have been writing asp.net applications for the last few months, and I don't see where it is so much better than any other platform out there.&lt;br /&gt;&lt;br /&gt;Partial classes are cool.  I will give asp.net this much.&lt;br /&gt;&lt;br /&gt;Having callbacks is a hack.  Hack hack hack.  This seems so wrong.  This IS so wrong.  Might make programming easier, but the web was not designed this way.  Somewhere down the line, all of this code is going to break.&lt;br /&gt;&lt;br /&gt;Datasets are nasty.  Code generation?  Come on - we are in 2006 and we are still generating code?&lt;br /&gt;&lt;br /&gt;Most of the thing that are pretty cool in asp.net are done so much better in Ruby on Rails.  ActiveRecord is years ahead of DataSets.&lt;br /&gt;&lt;br /&gt;And the code that developers write.  Holy crap.  I thought that Java code could get complicated.&lt;br /&gt;&lt;br /&gt;Put down that Patterns book.  Burn that Patterns book.  Not every project needs 8 patterns.  Stop hiding behind your patterns.  Java developers used to do this by wrapping their code in layers and layers of OOPy sludgy abstraction, and now Java AND asp.net developers are hiding behind (or I should say under) mounds of needless infrastructure.&lt;br /&gt;&lt;br /&gt;I could go on... XML for everything, code compilation, ints and chars (in C#), piles of configuration, SOAP everywhere, ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115081486442274090?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115081486442274090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115081486442274090' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115081486442274090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115081486442274090'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/aspnet-kind-of-sucks.html' title='asp.net kind of sucks'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115075410373777367</id><published>2006-06-19T14:55:00.000-07:00</published><updated>2006-06-19T14:55:03.746-07:00</updated><title type='text'></title><content type='html'>Sometime, it seems, that Drivel likes me.  Sometimes it spits back an error.  Probably my side.  I will send in a bug report if it happens at home.&lt;br /&gt;&lt;br /&gt;Compiz is COOL.&lt;br /&gt;&lt;br /&gt;cool cool cool.&lt;br /&gt;&lt;br /&gt;GNU / Linux / GNOME / KDE / etc are going to be so cool this next year.  Have you ever used a Mac?  Do you love the cool effects and wish that you had them on the desktop of your choice?  Well, compiz pretty much delivers that and more.  Compiz is a pluggable window manager, which means that people can add all sorts of cool effects and load and unload the effects at runtime.&lt;br /&gt;&lt;br /&gt;I am running it under my T40 with an Ati card using fglrx (r200) and it flies.  I am waiting for the non-proprietary "ati" driver to support it before I really consider it working and ready..&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115075410373777367?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115075410373777367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115075410373777367' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115075410373777367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115075410373777367'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/sometime-it-seems-that-drivel-likes-me.html' title=''/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115073373310371455</id><published>2006-06-19T09:15:00.000-07:00</published><updated>2006-06-19T09:20:50.646-07:00</updated><title type='text'></title><content type='html'>This is a test from Drivel.&lt;br /&gt;&lt;br /&gt;I am trying out &lt;a href="http://www.gnome.org"&gt;GNOME&lt;/a&gt; for a week instead of KDE.  I used GNOME as my primary desktop a few years ago, but left it for &lt;a href="http://www..kde.org"&gt;KDE&lt;/a&gt; when I got sick of the lack of real integration.  Things like gnome-vfs never seemed to work quite right. I actually sent in a patch to help correct some problems I was having with gnome-vfs, but the issues were more application-level than with gnome-vfs itself - GNOME applications were not really using gnome-vfs at all.  KDE just seemed to "&lt;i&gt;work&lt;/i&gt;" unlike GNOME.  I will report my findings as the week progresses.&lt;br /&gt;&lt;br /&gt;I am using GNOME under &lt;a href="http://www.ubuntulinux.org"&gt;Ubuntu&lt;/a&gt;, which is also my &lt;a href="http://www.kubunutu.org"&gt;Kubuntu&lt;/a&gt; installation.  One thing that I really like off the bat is the volume control that shows up on the screen when I hit the volume buttons on my IBM Thinkpad T40.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115073373310371455?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115073373310371455/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115073373310371455' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115073373310371455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115073373310371455'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/this-is-test-from-drivel.html' title=''/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115040686091774692</id><published>2006-06-15T14:27:00.000-07:00</published><updated>2006-06-15T14:28:05.476-07:00</updated><title type='text'>Just enabled comments</title><content type='html'>I can take it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115040686091774692?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115040686091774692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115040686091774692' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115040686091774692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115040686091774692'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/just-enabled-comments.html' title='Just enabled comments'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115040661167248551</id><published>2006-06-15T14:09:00.000-07:00</published><updated>2006-06-15T14:23:31.696-07:00</updated><title type='text'>Making tools</title><content type='html'>In my spare time, I have been writing SEO (search engine optimization) tools in Lisp.  Actually, I have been writing a whole lot of code in Lisp, but that is besides the point. &lt;br /&gt;&lt;br /&gt;To learn about how SEO works, I have spent a good deal of time in forums (not listing them here, google for it) on SEO trying to pick up any information on what sort of words I should pull into AdWords and what tools everyone uses.  I haven't been posting at all, though, just trying to figure out what other people are doing and how to automate much of the work.  For some reason, this feels really, really dirty.  I am not sure if it is the types of people who are involved in SEO or if I am uncomfortable dropping in on other people's conversations and not participating at all.&lt;br /&gt;&lt;br /&gt;One thing that I have learned is that there are a whole lot of search engine tools out there that people sell to SEO experts.  The scripts that I have seen all look pretty bad, and most of the people involved in the SEO script-selling world don't seem to have much formal training in Computer Science or even basic software development methodologies.  It is fascinating to watch how this little world works, where someone claims that he or she has a new tool that will make everyone thousands of dollars and everybody goes out and buys a copy.  Many of these tools don't really integrate with eachother, and the websites show it.&lt;br /&gt;&lt;br /&gt;So, I have been writing some tools in Lisp.  I am not selling them or giving them away (maybe, if you know Lisp) but I am willing to share some of the information I have found.  My site is not doing well, but I have found keywords that would work for existing websites which seem to have a lot of interest and few people are advertising on Adwords.  Once the application matures a bit, I will start posting a few keywords that I am not going to use.  Right now, it is a pretty good text parser, and it has a nice little rules engine that I am still developing.  Really, it is a reason for me to code in Common Lisp.&lt;br /&gt;&lt;br /&gt;I just wish that CL had better SOAP support.  Right now, I am parsing XML, which is nasty.  That is another post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115040661167248551?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115040661167248551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115040661167248551' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115040661167248551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115040661167248551'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/making-tools.html' title='Making tools'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115034297662894851</id><published>2006-06-14T20:37:00.000-07:00</published><updated>2006-06-14T20:42:56.640-07:00</updated><title type='text'>My blog looks like crap</title><content type='html'>I am looking for a nice template.&lt;br /&gt;&lt;br /&gt;Right now I am writing a cool little adwords app in Lisp.  I have written a lot of these lately, with the intention of opening up the source to them (under the GPL) but I doubt that there would be much interest.  While they are pretty cool, I don't think that Lisp is burning up the language highway.&lt;br /&gt;&lt;br /&gt;I have been playing with UnCommonWeb and boy is it hard!  Lots of boiler-plate code, but I like the idea of a continuations-based web server.  Hopefully Lisp on Lines matures.  UCW looks like it makes a great controller.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115034297662894851?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115034297662894851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115034297662894851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115034297662894851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115034297662894851'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/my-blog-looks-like-crap.html' title='My blog looks like crap'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-115032431300994837</id><published>2006-06-14T15:23:00.000-07:00</published><updated>2006-06-14T15:31:53.010-07:00</updated><title type='text'>Creating PHP Sites In Common Lisp</title><content type='html'>I am leaning more and more towards Common Lisp as my language of choice for programming.  The only problem is that Common Lisp is not really supported on many servers, and languages like PHP are.  This sucks, because I am not really a huge fan of PHP.  I find PHP inconsitant and it feels thrown together, but it has EXCELLENT community support in the amount of modules and extensions that have been written for it.&lt;br /&gt;&lt;br /&gt;I am currently working on creating PHP sites in Common Lisp, which may mean the end to me.&lt;br /&gt;&lt;br /&gt;The result:  &lt;a href="http://www.help-me-get-a-mortgage.com"&gt;http://www.help-me-get-a-mortgage.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is not perfect, but I am using a combination of sbcl and emb.&lt;br /&gt;&lt;br /&gt;I will update as I make changes with hints on how things are done.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-115032431300994837?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/115032431300994837/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=115032431300994837' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115032431300994837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/115032431300994837'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/06/creating-php-sites-in-common-lisp.html' title='Creating PHP Sites In Common Lisp'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114628498151928514</id><published>2006-04-28T21:23:00.000-07:00</published><updated>2006-04-28T21:29:41.530-07:00</updated><title type='text'>I am done with this</title><content type='html'>I don't like blogs.&lt;br /&gt;&lt;br /&gt;I don't like reading them, I don't really like writing them.  I think that many of them are a waste of time.&lt;br /&gt;&lt;br /&gt;I get my news from the mainstream media.  Something about jounalists with backgrounds in actual journalism really appeals to me.  I do browse blogs that have code, but, to me, most of the blogs out there are a step below Rush Limbaugh in content and bias.&lt;br /&gt;&lt;br /&gt;Anyways,  posting to this blog (the few times I did) was a pain.  I am going to ignore this form of marketing and spend my time coding.&lt;br /&gt;&lt;br /&gt;Current toolset:&lt;br /&gt;&lt;br /&gt;- sbcl&lt;br /&gt;- tbnl&lt;br /&gt;- cl-who&lt;br /&gt;- cl-emb&lt;br /&gt;- clsql&lt;br /&gt;&lt;br /&gt;This stack really makes for a great development environment.  It gives you most everything that I want from a development environment.  I now have about 30 websites, each which will be sitting behind apache running on a single threaded sbcl image.  For what I plan to accomplish, this will be the easiest method.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114628498151928514?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114628498151928514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114628498151928514' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114628498151928514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114628498151928514'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/04/i-am-done-with-this.html' title='I am done with this'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114411724324814215</id><published>2006-04-03T19:03:00.000-07:00</published><updated>2006-04-03T19:20:43.280-07:00</updated><title type='text'>We are backwards in our thinking, I think</title><content type='html'>So many companies seem to standardize on the wrong things:  use one programming environment and don't worry about where the data is stored.  This is backwards, and a sign that an IT director or VP in really in over his or her head.&lt;br /&gt;&lt;br /&gt;You have data.  Every company has data.  Lots and lots of it all over the place, oozing out from every open spot, like a constantly bleeding wound.  Data is in databases, on filesystems, on your hard drive, in your Word and Excel documents, etc.  This is bad.&lt;br /&gt;&lt;br /&gt;You have ways to extract that data:  database queries, full text indexes, grep,  custom applications, etc.&lt;br /&gt;&lt;br /&gt;The thing is, many companies create a standard way of extracting data but no standard way of storing the data itself.  This is silly.  Who cares how you grab the data, just as long as you have real-time access to it?&lt;br /&gt;&lt;br /&gt;Your data should be in one place, ready for whatever tool you create or use to pull it out.  Data should be easy to get to by the people who need it - no matter how they want to get to this data (within bounds).  Who cares whether you use Python, or Access, or C#, or Java, or even Lisp, as long as the data you access is current and accurate?&lt;br /&gt;&lt;br /&gt;So many IT Directors and VPs seem to standardize on the extraction mechanism.  This is the wrong thing to do.  The reason that it is done is that creating a standard toolset is a whole lot less painful than forcing everyone in the company to put their data into one location.  An IT Director can look a whole lot better and rustle fewer feathers by switching every developer to C# than by actually doing the right thing and creating a standard data repository.&lt;br /&gt;&lt;br /&gt;I was working with a company who stored its data in three different types of databases, and had critical data stored all over the company in Excel spreadsheets.  The Senior VP, seeing a problem, moved all of the application developers to C#, and patted himeself on the back.  Meanwhile, the data was still in three databases and in Excel spreadsheets spread all over the company.  Last time I checked, they were still trying to figure out a way to quickly map data from Oracle to SQL Server and Access, while juggling custom reports in Excel and Word.  Meanwhile, they have an expensive toolset and no way to look up vital company information when they need it.&lt;br /&gt;&lt;br /&gt;If you are looking to really help out your company, don't worry about the data extraction tools.  You should really look at getting all of your data into a sane location so that you when you need it you can grab it in real time.  Make sure that you stick your data in a database where you can pull it out easily and share it with the people who need it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114411724324814215?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114411724324814215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114411724324814215' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114411724324814215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114411724324814215'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/04/we-are-backwards-in-our-thinking-i.html' title='We are backwards in our thinking, I think'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114374167544273029</id><published>2006-03-30T09:56:00.000-08:00</published><updated>2006-03-30T10:01:15.460-08:00</updated><title type='text'>Corny Like Iowa</title><content type='html'>I love bad amazon reviews.  I read a great one, where a guy said that a Westide Connection album was "  just corny all around like iowa".  Somebody wrote that and probably uses that phrase all of the time in general conversation.  What if everyone just spent one day saying every stupid cliche phrase they could come up with.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114374167544273029?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114374167544273029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114374167544273029' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114374167544273029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114374167544273029'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/corny-like-iowa.html' title='Corny Like Iowa'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114364447099498729</id><published>2006-03-29T06:57:00.000-08:00</published><updated>2006-03-29T07:01:10.996-08:00</updated><title type='text'>Controversial Issues</title><content type='html'>Next time you want some safe dinner conversation, pop over to&lt;span style="font-weight: bold;"&gt; &lt;a href="http://www.accd.edu/PAC/LRC/issues.htm"&gt;Controversial Issues&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Everything from abortion of welfare reform.  It is a good way to irritate the in-laws.&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://www.accd.edu/PAC/LRC/issues.htm"&gt;&lt;/a&gt;&lt;a href="http://www.accd.edu/PAC/LRC/issues.htm"&gt;&lt;span class="down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114364447099498729?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114364447099498729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114364447099498729' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114364447099498729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114364447099498729'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/controversial-issues.html' title='Controversial Issues'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114364396701684475</id><published>2006-03-29T06:52:00.000-08:00</published><updated>2006-03-29T06:55:33.640-08:00</updated><title type='text'>McEs, A Hacker Life: Weird Spam</title><content type='html'>&lt;a href="http://mces.blogspot.com/2006/03/weird-spam.html"&gt;McEs, A Hacker Life: Weird Spam&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I have been getting these little spam emails like the one in the post above.  They had all sorts of random garbage like:&lt;br /&gt;&lt;br /&gt;"foo is a bar in a suit.  That is what they say in the way that I am"&lt;br /&gt;&lt;br /&gt;I wondered - what the hell?  Then, I checked my email via Outlook and when I selected the email (a bit of a risk in Outlook) I was asked if I wanted to notify the sender that the email had been read.  Pretty sharp, if not sleazy, way of harvesting email addresses.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114364396701684475?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114364396701684475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114364396701684475' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114364396701684475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114364396701684475'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/mces-hacker-life-weird-spam.html' title='McEs, A Hacker Life: Weird Spam'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114326347915029156</id><published>2006-03-24T21:02:00.000-08:00</published><updated>2006-03-24T21:13:31.740-08:00</updated><title type='text'>In other news</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Courtesy Chevrolet in Houston sucks on so many levels&lt;/span&gt;.  From the sleazy salespeople to the pressure selling, the are a living, festering cesspool.  &lt;span style="font-weight: bold;"&gt;Mac Haik is not much better&lt;/span&gt;.  Chevy wonders why they are not selling more cars and their stock is in the tank - they should really look at the dealerships that sell their cars and trucks.&lt;br /&gt;&lt;br /&gt;You know that you are getting a screwjob if you hear the following:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"There are a few people interested in this car"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"I can only make this deal.  If you leave I can not assure that it stil will be around"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"We only have one on the lot"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"I need to speak to my manager"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I went in, letting them know that I had to leave at &lt;span style="font-weight: bold;"&gt;2:45&lt;/span&gt; &lt;span style="font-style: italic;"&gt;to pick up my daughter&lt;/span&gt;.  The salesguy and the manager tried to tell me that if I left that I would miss the deal on the car.  What sort of father is going to let his daughter wait so that he can buy a car?  What sort of salesperson is going to try to make a deal like that?  Fuck them, I pray that they go out of business and that they end up on the streets.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114326347915029156?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114326347915029156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114326347915029156' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114326347915029156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114326347915029156'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/in-other-news.html' title='In other news'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114314774292499441</id><published>2006-03-23T12:54:00.000-08:00</published><updated>2006-03-23T13:03:14.566-08:00</updated><title type='text'>I am not going down for this</title><content type='html'>I am the guy who authored George Clooney's fake blog.  I am NOT getting screwed over for this - it was not my idea, I needed the money. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--&lt;br /&gt;Okay, I am not - but, I want to see how many hits that phrase gets.  Is there a way to see how many hits you get a day on blogger.com?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114314774292499441?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114314774292499441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114314774292499441' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114314774292499441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114314774292499441'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/i-am-not-going-down-for-this.html' title='I am not going down for this'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114304736117315719</id><published>2006-03-22T08:58:00.000-08:00</published><updated>2006-03-22T09:09:21.200-08:00</updated><title type='text'>PeopleSoft</title><content type='html'>I have made PeopleSoft work with:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;Kronos - not using Connector, but with a Java library I wrote that communicates with Kronos using their non-SOAP (though they claim SOAP) API.&lt;/li&gt;   &lt;li&gt;Remote SQL Server, MySQL, Postgresql, and Oracle.  I wrote this because we had data on a remote SQL Server database that we needed to be available in real time on a PeopleSoft install running on a Unix machine with Oracle.  I turned it into a general database communication library for PeopleSoft.&lt;/li&gt;   &lt;li&gt;Various SOAP-Enabled applications.  The PeopleSoft SOAP Libraries are a pain, so I wrote a SOAP library that allows developers to make SOAP calls without setting up the Business Interlink.&lt;/li&gt; &lt;/ol&gt; Why am I mentioning this?  Well, each of the libraries was written in Java.  Oracle, with their move to Fusion, has a chance to mix up PeopleSoft quite a bit and make Java a much more prominent language.  PeopleCode has gotten a whole lot better over the years, but Java is in a different league when it comes to application development.  With the amazing number of libraries, the fact that Java is becoming a mature language, and the fact that so many developers are comfortable with Java, PeopleSoft Fusion could kick the crap out of SAP if Oracle added tighter Java integration.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114304736117315719?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114304736117315719/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114304736117315719' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114304736117315719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114304736117315719'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/peoplesoft.html' title='PeopleSoft'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114288066474607381</id><published>2006-03-20T10:48:00.000-08:00</published><updated>2006-03-20T10:51:04.756-08:00</updated><title type='text'>I am</title><content type='html'>still running a server running Red Hat 8.0.  Behind a firewall, but still in production.  Uptime: 456 days.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114288066474607381?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114288066474607381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114288066474607381' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114288066474607381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114288066474607381'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/i-am.html' title='I am'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114287708411519718</id><published>2006-03-20T09:23:00.000-08:00</published><updated>2006-03-20T09:52:24.520-08:00</updated><title type='text'>Using Sessions With ASP.NET</title><content type='html'>If you have the fortune of using the vastly over-hyped Microsoft ASP.NET environment, and you want to know how to deal with sessions in a few lines, LOOK NO FURTHER!!!!&lt;br /&gt;&lt;br /&gt;An asp.net session saves information for about 20 minutes.  If you want to verify that this is the case in your environment, type in:&lt;br /&gt;&lt;span class="smallblack"&gt;&lt;span style="font-family:monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;% Response.Write(Session.Timeout.ToString()); %&gt;&lt;br /&gt;&lt;br /&gt;You can change this by changing the Timeout propery like so:&lt;br /&gt;&lt;br /&gt;Session.Timeout = 21;&lt;br /&gt;&lt;br /&gt;Lets say that the value that you want to store in the session variable "foo" is "bar":&lt;br /&gt;&lt;br /&gt;if (Session["foo"] != null)&lt;br /&gt;{&lt;br /&gt;        Session["foo"] = "bar";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;To pull the data out (this is a bit gross):&lt;br /&gt;&lt;br /&gt;String bin = (String) Session["foo"];&lt;br /&gt;&lt;br /&gt;Have fun!&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114287708411519718?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114287708411519718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114287708411519718' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114287708411519718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114287708411519718'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/using-sessions-with-aspnet.html' title='Using Sessions With ASP.NET'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114287530275300881</id><published>2006-03-20T09:15:00.000-08:00</published><updated>2006-03-20T09:21:42.763-08:00</updated><title type='text'>I don't do comments</title><content type='html'>I think that if people actually were able to post comments, I would delete all of the articles.  I write some really inane shit, and if I was more self-conscious than I already am I would not be tempted at all to write anything.  I think that I am not the only one out there like this.  I know that if I am overly-critical and insecure about what I write, there must be a million others out there like me.&lt;br /&gt;&lt;br /&gt;This also was an issue for me when I wrote my first bits of open-source/free software code.  I just felt so naked sending in a patch that I had written, and was afraid that people who were better than me would tear me down and criticize me.   The internet can be a terrible place, full of huge assholes.  My advice is to ignore them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114287530275300881?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114287530275300881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114287530275300881' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114287530275300881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114287530275300881'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/i-dont-do-comments.html' title='I don&apos;t do comments'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114261582367551328</id><published>2006-03-17T09:09:00.000-08:00</published><updated>2006-03-17T09:17:03.690-08:00</updated><title type='text'>Really Simple and Good Recipe</title><content type='html'>This is a really simple little dish.  I have made it many times, and I really like it.&lt;br /&gt;&lt;br /&gt;The ingredients:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;Beef.  Little strips of beef that you can easily fry in a wok.&lt;/li&gt;   &lt;li&gt;Cooking wine.&lt;/li&gt;   &lt;li&gt;Corn starch.&lt;/li&gt;   &lt;li&gt;Rice noodles.&lt;/li&gt;   &lt;li&gt;Onions&lt;/li&gt;   &lt;li&gt;Mixed vegtables&lt;/li&gt;   &lt;li&gt;Soy sauce&lt;/li&gt;   &lt;li&gt;Olive oil&lt;/li&gt; &lt;/ol&gt; Throw the rice noodles in some boiling water - but just for a few moments.&lt;br /&gt;&lt;br /&gt;Mix the meat with a little cooking wine, a tablespoon or so of corn starch, and a bit of soy sauce.&lt;br /&gt;&lt;br /&gt;Take the wok, and out in a little bit of olive oil and heat it.  A lot of people like vegtable oil, but I think that you will like olive oil.  It is better for you than vegtable oil.&lt;br /&gt;&lt;br /&gt;Throw the onions in the wok.  Add some mushrooms if you want.&lt;br /&gt;&lt;br /&gt;Now, throw in the meat and let it cook.  This is going to smell really good.&lt;br /&gt;&lt;br /&gt;Once the meat starts getting a nice brown look (I even like it when the corn starch makes the meat a bit crunchy), throw in more vegtables.  I like red and green peppers.&lt;br /&gt;&lt;br /&gt;Now, throw in the rice noodles and mix them around for a bit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114261582367551328?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114261582367551328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114261582367551328' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114261582367551328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114261582367551328'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/really-simple-and-good-recipe.html' title='Really Simple and Good Recipe'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114261528342028340</id><published>2006-03-17T09:05:00.000-08:00</published><updated>2006-03-17T09:08:03.430-08:00</updated><title type='text'>You are too sexy</title><content type='html'>Really.&lt;br /&gt;&lt;br /&gt;I am not saying this because I want you win your friendship.&lt;br /&gt;&lt;br /&gt;You are really too sexy.&lt;br /&gt;&lt;br /&gt;Because you are so sexy, I will now give you the world's funniest joke of 2002:&lt;br /&gt;&lt;i&gt;&lt;br /&gt;Two hunters are out in the woods when one of them collapses. He doesn't seem to be breathing and his eyes are glazed. The other guy takes out his phone and calls the emergency services.&lt;/i&gt; &lt;p&gt; &lt;/p&gt;    &lt;p&gt; &lt;i&gt;He gasps: "My friend is dead! What can I do?" The operator says: "Calm down, I can help. First, let's make sure he's dead." There is a silence, then a gunshot is heard. Back on the phone, the guy says: "OK, now what?"&lt;/i&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114261528342028340?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114261528342028340/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114261528342028340' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114261528342028340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114261528342028340'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/you-are-too-sexy.html' title='You are too sexy'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114261276090473147</id><published>2006-03-17T08:15:00.000-08:00</published><updated>2006-03-17T08:26:00.940-08:00</updated><title type='text'>Type Safety</title><content type='html'>Good, right.  I mean - it has the word &lt;span style="font-style: italic;"&gt;safe&lt;/span&gt; in it - so it has to be good&lt;br /&gt;Nope.&lt;br /&gt;&lt;br /&gt;Maybe 20-30 years ago, back when memory was scarce.&lt;br /&gt;&lt;br /&gt;If you are a Java programmer who has not tried out Python or Ruby you are really missing out.  Having to declare ints and Strings and chars is sooooooooo 1998.&lt;br /&gt;&lt;br /&gt;The problem with type safety is that it makes you thing about the underlying operating system rather than the actual problem/solution.  Who cares that "2" is an "int"?  Shouldn't my interpreter/compiler be able to figure this out based on context?  Why should I give it a hint?  If I write "a = 2 + 2"  the interpreter/compiler should be able to figure out that "a" is a number and not a string.  If I want to write "print a" it should just print out "4" and not give me an error that "a is of the wrong type".  That is lazy compiler speak (yes, I know Java doesn't do this, but it still sucks having to make anything an "int").&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;As I write this I have a Java program creating and combining 5000 PDF documents in a terminal.  Off topic, but iText is a great library for doing this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114261276090473147?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114261276090473147/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114261276090473147' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114261276090473147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114261276090473147'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/type-safety.html' title='Type Safety'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114255018486056916</id><published>2006-03-16T14:53:00.000-08:00</published><updated>2006-03-16T15:03:04.870-08:00</updated><title type='text'>I want high page rank</title><content type='html'>or whatever google uses now days, so I am going to start populating my blog with "hot" new topics out there in the media.&lt;br /&gt;&lt;br /&gt;Based on the &lt;a href="http://www.google.com/press/zeitgeist.html"&gt;google zeitgeist&lt;/a&gt;, Dana Reeve is hot news this week.  She was married to superman, and has just passed away.  Heard her on Howard Stern, and she seemed really nice.  Too bad.&lt;br /&gt;&lt;br /&gt;You know, zeitgeist has to be bullshit.  No way people really care too much about &lt;span style="font-style: italic;"&gt;spacecraft&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;pi&lt;/span&gt; when you can spend all day looking for &lt;span style="font-style: italic;"&gt;boobies&lt;/span&gt; and naked &lt;span style="font-style: italic;"&gt;chicks&lt;/span&gt;.  See how I worked in two more words?&lt;br /&gt;&lt;br /&gt;In other news, everyone on the internet seems way too cool now days.  I keep reading all of these blogs (I hate that word) that talk about web 2.0 and entrepreneurship in a 37signals-ish way.  All of these blogs, spending their time talking about other blogs.  blah blah blah podcast blog blah&lt;br /&gt;&lt;br /&gt;Also, I contacted a "consulting firm" today to look at subcontracting.  I asked him specifically not to call me on the phone today and - guess what - he called me on the phone.  &lt;span style="font-style: italic;"&gt;Barry Bonds&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;Teri Hatcher&lt;/span&gt; would never do that.&lt;br /&gt;&lt;br /&gt;See, got in two more words.  Pagerank in no time, baby!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114255018486056916?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114255018486056916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114255018486056916' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114255018486056916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114255018486056916'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/i-want-high-page-rank.html' title='I want high page rank'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114226731755380694</id><published>2006-03-13T08:27:00.000-08:00</published><updated>2006-03-13T08:28:37.563-08:00</updated><title type='text'>The problem with most OSS calendaring systems</title><content type='html'>Integration with the proprietary systems.  We need CalDAV everywhere.&lt;br /&gt;&lt;br /&gt;Oh - and setting up postfix is not easy (but easier than sendmail).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114226731755380694?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114226731755380694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114226731755380694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114226731755380694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114226731755380694'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/problem-with-most-oss-calendaring.html' title='The problem with most OSS calendaring systems'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114226527209304041</id><published>2006-03-13T07:43:00.000-08:00</published><updated>2006-03-13T07:54:32.123-08:00</updated><title type='text'>Things I want to try</title><content type='html'>I read &lt;a href="http://www.stevepavlina.com"&gt;Steve Pavlina's blog&lt;/a&gt; quite a bit, and I am constantly trying out new things that he suggests on his site.  If you have not read his blog, he is a self-help guru that calls his blog "Personal Development For Smart People".  His blog is just that - he makes no promises and even states on the front page that personal development is hard and requires work. &lt;br /&gt;&lt;br /&gt;So, for a list of things that I am going to try this week:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.stevepavlina.com/blog/2005/12/stevepavlinacom-podcast-008-overcoming-fear/"&gt;Eliminate fear by looking at life as an abstract experience&lt;/a&gt;.&lt;/li&gt;   &lt;li&gt;&lt;a href="http://www.stevepavlina.com/blog/2006/03/stevepavlinacom-podcast-012-building-confidence/"&gt;Self confidence by changing my beliefs&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; From the blog, I learned how to become an early riser (5 AM every morning), to make my food work for me and actually give me crazy amounts of energy (75% raw foods), and really commit to excercise for a persiod of time.  Of course, committing to change is a personal decision.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114226527209304041?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114226527209304041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114226527209304041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114226527209304041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114226527209304041'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/things-i-want-to-try.html' title='Things I want to try'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114219102015685038</id><published>2006-03-12T11:02:00.000-08:00</published><updated>2006-03-12T11:17:00.176-08:00</updated><title type='text'>Okay</title><content type='html'>I started to write an entry on "Abstraction" writing about the line between abstraction and getting work done.  Deleted it.  I am not sure who the audience is, and I doubt that I would read it myself.  If you are a pattern monkey and you are writing hundreds (or thousands of lines) of BS boilerplate code without actually getting any work done - shame on you.&lt;br /&gt;&lt;br /&gt;I don't actually like blogs too much.  I can't really be honest, because I am overly self-consious about strangers (you) reading things I consider private.  All of the interesting things I have to say about myself are reserved for my friends.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;People that blog for their business are boring.&lt;/span&gt;  I could care less about what product you are selling, and pretending that you really have something to say just to sell your goods is dishonest.  I admit to doing this myself.  The link on the right (the one about Mortgage Loans) is a business that I am starting.  I want to make this clear - if I mention anything about home loans it is because I want your business.  I promise that anything that I say will be honest and true and I will at least try to make it interesting.  I read Seth Godin's work, and I think that his ideas about viral marketing are a bit dishonest.  Reading his book made me feel a bit quesy, which was a sign that I shouldn't follow his methodology.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114219102015685038?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114219102015685038/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114219102015685038' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114219102015685038'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114219102015685038'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/okay.html' title='Okay'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114192100836873011</id><published>2006-03-09T08:05:00.000-08:00</published><updated>2006-03-09T08:16:48.416-08:00</updated><title type='text'>It pays the bills, but it is not fun</title><content type='html'>I am not sure why anyone would ever choose C# and VS 2K5.&lt;br /&gt;&lt;br /&gt;Let me rephrase that:&lt;br /&gt;&lt;br /&gt;I am not sure why anyone &lt;span style="font-style: italic;"&gt;who knew better &lt;/span&gt;would choose C# and VS 2K5.&lt;br /&gt;&lt;br /&gt;As a language, C# has all of the things that you learn about in schoool:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;classes&lt;/li&gt;&lt;li&gt;generics&lt;/li&gt;&lt;li&gt;anonymous methods&lt;/li&gt;&lt;li&gt;etc....&lt;/li&gt;&lt;/ul&gt;But it is missing the one element that is most important to me as a hacker:  It is not fun.  This is the same thing that Java and C++ are missing, and that languages like ruby, perl, C, lisp, and python all seem to have in bundles.  What makes a language fun?  Well, one thing is that is does not feel like a safe evolution of the 20 years of programming ideas.  I feel like, when programming in C# or Java, that I am working with a language that was designed with a checklist created by a PHB.&lt;br /&gt;&lt;br /&gt;More on this later.  I promise not to complain in my next post.  Really.  I am actually a very happy person 99% of the time.&lt;br /&gt;&lt;br /&gt;Oh, one more thing:  Patterns can be great for languages like C#.  I personally think that if your pattern framework code is 2x larger than the rest of the project, you might want to rethink using patterns.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114192100836873011?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114192100836873011/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114192100836873011' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114192100836873011'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114192100836873011'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/it-pays-bills-but-it-is-not-fun.html' title='It pays the bills, but it is not fun'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114179612886207353</id><published>2006-03-07T21:23:00.000-08:00</published><updated>2006-03-07T21:35:28.876-08:00</updated><title type='text'>Visual Studio 2005</title><content type='html'>I seem to see the same pattern each time a Microsoft product comes out:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;Start using the product and I &lt;span style="font-weight: bold;"&gt;love it&lt;/span&gt;.  Eveything seems to "just work" and I start to think that - hey - this time these guys have started getting things right.&lt;/li&gt;   &lt;li&gt;Some warts appear, but I ignore the internal voice that tells me to watch out.  "Don't worry", I say to my internal voice, "things are going to be just fine.  Look at how great this product has been so far."&lt;/li&gt;   &lt;li&gt;Things start to break.  Little things crash here and there, and I start to worry.&lt;/li&gt;   &lt;li&gt;Okay - something just broke.  And it isn't the first time.  I start to realize that, like many products this company puts out, under the spit shine of a beautiful product is something large and possibly ugly.&lt;/li&gt;   &lt;li&gt;I release the product to my users, and - as things get updated, DLLs get over-written - I spend more time fixing things that should not have broken had I just picked another environment.&lt;/li&gt; &lt;/ol&gt; I really, really want to like VS 2005 (I like C#).  I am currently between stage 3 and 4, but I see the cracks and I am trying like the dickens to avoid 5.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114179612886207353?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114179612886207353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114179612886207353' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114179612886207353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114179612886207353'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/visual-studio-2005.html' title='Visual Studio 2005'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114170922775388918</id><published>2006-03-06T21:01:00.000-08:00</published><updated>2006-03-06T21:30:11.820-08:00</updated><title type='text'>apt-get install sbcl</title><content type='html'>Downloaded ubuntu from dapper to breezy, which I really did not want to do, but I had to use sbcl.&lt;br /&gt;&lt;br /&gt;I actually use kubuntu, which is a KDE version of ubuntu (which is based on GNOME).  I actually started out with GNOME, and used it as my primary desktop for years.  I thought that KDE was too busy and I was a bit of a C snob.  You see, GNOME is coded in C, and KDE is coded in C++ - and I never really liked C++ much.  Well, until I met Qt, which turns C++ into more of a neat Qt programming language and not the mess that I think C++ is.&lt;br /&gt;&lt;br /&gt;I really like parts of C++.  In school, it was the primary language, and I liked how I could take otherwise confusing C applications and get instant OOP.  But, I never really felt like I got used to C++ as a programing language.  It has waaaay too many things going on in the guts of the language.  Whenever I used C++, I felt like Bjarne was trying to create a sort of idealistic teaching language out of a bit of a toad.  Do not get me wrong, I love C - but I know that it is a bit of an ugly toad.  A lovable ugly toad.&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;We have been mailing out $2 bills to people filling out out the form at &lt;a href="http://www.helpmegetahomeloan.com"&gt;http://www.helpmegetahomeloan.com&lt;/a&gt;.  We haven't been advertising this at all, just putting money in envelopes and sending it on.  I think that it is a pretty neat idea, though it was not mine.  I wanted to advertise it a bit, but my partner thinks that it is a nice little surprise.  Plus, the site is still being worked on.  It works, but I have a huge chunk of code being tested.&lt;br /&gt;&lt;br /&gt;Right now, my partner is working on a really great document on how to get a home loan.  It is a comprehensive view that lists exaclty what you need to look for in a new home and a new home loan.  And it is honest.  The whole idea is to put together a document that, when read, will give the http://www.blogger.com/img/gl.link.gifbuyer a really clear view of where to start and what steps to take for a smooth purchase.  So many web sites outline the basics of buying a home, but very few of them really tell you how the entire process really works.  I think that a lot of people will be surprised.&lt;br /&gt;&lt;br /&gt;When I bought a new car, I used  &lt;a href="http://www.leaseguide.com/"&gt;http://www.leaseguide.com/&lt;/a&gt; and &lt;a href="http://www.carbuyingtips.com/"&gt;http://www.carbuyingtips.com/&lt;/a&gt;.  I wish that more people were honest about what they were selling.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114170922775388918?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114170922775388918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114170922775388918' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114170922775388918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114170922775388918'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/apt-get-install-sbcl.html' title='apt-get install sbcl'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114168173608410494</id><published>2006-03-06T13:15:00.000-08:00</published><updated>2006-03-06T13:48:56.100-08:00</updated><title type='text'>McClim Screencast</title><content type='html'>I came across a McClim screencast today: &lt;a href="http://clemens.endorphin.org/weblog/archives/2006-02.shtml#e2006-02-21T17_21_05.txt"&gt;http://clemens.endorphin.org/weblog/archives/2006-02.shtml#e2006-02-21T17_21_05.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is an Open Source (Free Software) implementation of the Common Lisp Interface Manager.  If you like Lisp and want to create GUI apps, it might be of interest to you.  I you do not like Lisp, I feel sorry for you:)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114168173608410494?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114168173608410494/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114168173608410494' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114168173608410494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114168173608410494'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/mcclim-screencast.html' title='McClim Screencast'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7177553.post-114162816397524183</id><published>2006-03-05T22:49:00.000-08:00</published><updated>2006-03-05T23:10:08.213-08:00</updated><title type='text'>Lisp on the web</title><content type='html'>I want to make a list of web sites that are developed in Lisp.  Right now, I am working on a framework for a very specific type of web-based application that seems very much like a lispy challenge and I wonder what other sorts of lispy challenges people have overcome.&lt;br /&gt;&lt;br /&gt;I know right off the top of my head that Orbitz is Lisp-powered, and that the &lt;a href="http://www.helpmefindahomeloan.com"&gt;first part of one of my sites&lt;/a&gt; is lisp-powered.  Oh - and &lt;a href="http://www.cliki.net"&gt;cliki&lt;/a&gt; is lisp.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In related news, sbcl seems borked on ubuntu dapper.  Every time I run it, it seg faults.  It seems to be a kernel issue, and there is a &lt;a href="https://launchpad.net/distros/ubuntu/+source/cmucl/+bug/33180"&gt; bug in the dapper launchpad&lt;/a&gt;, which sucks as I have updated my notebook to dapper.  I learned my lesson: don't run an unstable distro on my development machine.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7177553-114162816397524183?l=mrcsparker.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mrcsparker.blogspot.com/feeds/114162816397524183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7177553&amp;postID=114162816397524183' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114162816397524183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7177553/posts/default/114162816397524183'/><link rel='alternate' type='text/html' href='http://mrcsparker.blogspot.com/2006/03/lisp-on-web.html' title='Lisp on the web'/><author><name>Christopher Parker</name><uri>http://www.blogger.com/profile/07916027985463625919</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
