<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.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" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0"><id>tag:blogger.com,1999:blog-529229344940946207</id><updated>2012-04-15T19:57:45.911-04:00</updated><category term="ruby" /><category term="abnf" /><category term="design patterns" /><category term="javascript" /><category term="tool" /><category term="365" /><category term="php" /><category term="C" /><category term="sequence" /><category term="perl" /><category term="rfc" /><category term="monitoring" /><category term="networking" /><category term="validation" /><category term="array" /><category term="library" /><category term="regex" /><category term="gpl" /><category term="extension" /><category term="browser" /><category term="god" /><category term="command-line" /><category term="compliance" /><category term="pattern" /><category term="firewall" /><category term="port" /><category term="sandbenders" /><category term="uri" /><category term="open-source" /><category term="patch" /><title type="text">Dangerous Programmer</title><subtitle type="html">That's me - your everyday, dangerously awesome programmer ;)</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://dangprog.blogspot.com/" /><author><name>Rudy X. Desjardins</name><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>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/DangerousProgrammer" /><feedburner:info uri="dangerousprogrammer" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>DangerousProgrammer</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-3067287530055518626</id><published>2009-03-31T17:33:00.008-04:00</published><updated>2009-03-31T23:42:38.019-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C" /><category scheme="http://www.blogger.com/atom/ns#" term="array" /><category scheme="http://www.blogger.com/atom/ns#" term="port" /><category scheme="http://www.blogger.com/atom/ns#" term="php" /><category scheme="http://www.blogger.com/atom/ns#" term="365" /><title type="text">365 DoC - W1, D2 - C port of PHP Array functions</title><summary type="text">So today, I decided to 'port' some of the more useful/relevant PHP builtin array handling functions to what their equivalents in C might look like. Sounds kind of boring, I know, but the end result is both useful and re-usable, and is the kind of thing that people write over and over again... although C doesn't really have true arrays, pointer-pointers do the trick for string arrays (char **'s), </summary><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/3067287530055518626/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2009/03/365-doc-w1-d2-c-port-of-php-array.html#comment-form" title="13 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/3067287530055518626" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/3067287530055518626" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/wbrIdlqH27A/365-doc-w1-d2-c-port-of-php-array.html" title="365 DoC - W1, D2 - C port of PHP Array functions" /><author><name>Rudy X. Desjardins</name><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>13</thr:total><feedburner:origLink>http://dangprog.blogspot.com/2009/03/365-doc-w1-d2-c-port-of-php-array.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-1937373241670262219</id><published>2009-03-30T17:26:00.004-04:00</published><updated>2009-03-31T17:33:03.763-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="365" /><title type="text">365 DoC - Call for Topics/Disclaimer</title><summary type="text">First off, just wanted to ask any one who's reading this to please send any and all suggestions you have re. topics/excercises/etc to use as one of the 365 days... I have a pretty decent list of stuff to do, things to work on, etc., but it will be good to have as many options as possible and as much material as I can to choose from when deciding on the mission for a given day.Also, as far as the </summary><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/1937373241670262219/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2009/03/365-doc-call-for-topicsdisclaimer.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/1937373241670262219" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/1937373241670262219" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/ZlqyrI_ytfc/365-doc-call-for-topicsdisclaimer.html" title="365 DoC - Call for Topics/Disclaimer" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2009/03/365-doc-call-for-topicsdisclaimer.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-3925885618313790814</id><published>2009-03-28T23:59:00.001-04:00</published><updated>2009-03-31T17:37:00.846-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="php" /><category scheme="http://www.blogger.com/atom/ns#" term="365" /><title type="text">365 DoC - W1, D1 - Subset Permutations</title><summary type="text">Problem: based on a given finite set of elements, find every possible combination of X elements, where X indicates 1 to X.Example: in the finite set of elements (A, B, C), all possible combinations of up to three elements would be ((A), (B), (C), (A, B), (A, C), (B, C), (A, B, C)) - this assumes that we would treat (A, B) and (B, A) as the same permutation of a 2-element subset, etc.Solution: if </summary><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/3925885618313790814/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2009/03/week-1-day-1-subset-permutations.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/3925885618313790814" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/3925885618313790814" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/sA6GhizD59A/week-1-day-1-subset-permutations.html" title="365 DoC - W1, D1 - Subset Permutations" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2009/03/week-1-day-1-subset-permutations.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-453809557207661704</id><published>2009-03-28T06:01:00.006-04:00</published><updated>2009-03-30T10:35:16.871-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="sandbenders" /><category scheme="http://www.blogger.com/atom/ns#" term="365" /><title type="text">365 Days of Code</title><summary type="text">That's right... one piece of working, usable, non-trivial code (ie: it actually does something useful), every single day, for an entire year.Ambitious? Maybe. Necessary? I think so... you see, at some unknown point in recent history, I made a conscious decision to strive to be The Best at what I do. And what I do, is Code. It's my Art. I don't do this for a living because it pays big bucks or I'm</summary><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/453809557207661704/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2009/03/365-days-of-code.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/453809557207661704" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/453809557207661704" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/8Ox2XLL7IfU/365-days-of-code.html" title="365 Days of Code" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2009/03/365-days-of-code.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-1078712820771280707</id><published>2008-05-15T00:53:00.015-04:00</published><updated>2008-09-25T03:23:26.436-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="sequence" /><category scheme="http://www.blogger.com/atom/ns#" term="library" /><category scheme="http://www.blogger.com/atom/ns#" term="pattern" /><category scheme="http://www.blogger.com/atom/ns#" term="design patterns" /><title type="text">The Interruptable Sequence Pattern</title><summary type="text">The interruptable sequence is a web programming design pattern I recently identified and used in a site I'm developing. I tried to locate existing descriptions/definitions of this pattern with no success - I looked for 'interruptable sequence', 'tutorial pattern', 'sequence pattern', etc. without finding anything similar to what I'm about to describe, so I'm posting about it here in the hope that</summary><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/1078712820771280707/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2008/05/interruptable-sequence-pattern.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/1078712820771280707" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/1078712820771280707" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/AFT0R2NPlpQ/interruptable-sequence-pattern.html" title="The Interruptable Sequence Pattern" /><author><name>Rudy X. Desjardins</name><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/_6_QmRTQ6Jjo/SCvXakGbBpI/AAAAAAAAAAU/yqpeNfRNUA8/s72-c/Interruptable_Sequence_-_Structure.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dangprog.blogspot.com/2008/05/interruptable-sequence-pattern.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-3970056316978287568</id><published>2007-10-29T13:53:00.002-04:00</published><updated>2008-05-22T11:35:56.534-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ruby" /><category scheme="http://www.blogger.com/atom/ns#" term="tool" /><category scheme="http://www.blogger.com/atom/ns#" term="open-source" /><category scheme="http://www.blogger.com/atom/ns#" term="extension" /><category scheme="http://www.blogger.com/atom/ns#" term="god" /><category scheme="http://www.blogger.com/atom/ns#" term="gpl" /><category scheme="http://www.blogger.com/atom/ns#" term="monitoring" /><category scheme="http://www.blogger.com/atom/ns#" term="networking" /><title type="text">Update! New god conditions added to source repository!</title><summary type="text">Click the link to go to the god source repository - as of today, it looks like two of the three conditions I submitted for inclusion have now been added (the third being the mysql_failed condition, which may end up in some kind of auxillary gem or something, as previously mentioned...). So... look for these new conditions in god v0.6.0!complex.rbdisk_usage.rb </summary><link rel="related" href="http://repo.or.cz/w/god.git" title="Update! New god conditions added to source repository!" /><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/3970056316978287568/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/10/update-new-god-conditions-added-to.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/3970056316978287568" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/3970056316978287568" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/STqfic_ZRRE/update-new-god-conditions-added-to.html" title="Update! New god conditions added to source repository!" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/10/update-new-god-conditions-added-to.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-589114119435014629</id><published>2007-10-26T12:08:00.001-04:00</published><updated>2007-10-26T13:08:27.517-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ruby" /><category scheme="http://www.blogger.com/atom/ns#" term="open-source" /><category scheme="http://www.blogger.com/atom/ns#" term="extension" /><category scheme="http://www.blogger.com/atom/ns#" term="god" /><category scheme="http://www.blogger.com/atom/ns#" term="gpl" /><category scheme="http://www.blogger.com/atom/ns#" term="monitoring" /><title type="text">New god Conditions</title><summary type="text">If you haven't checked out god yet as an alternative to monit or other system/software-monitoring tools, do yourself a favour and head over to that link for a while and then come back... it's an awesome little monitoring tool written in ruby that has all kinds of cool features, including event-based conditions that will activate as soon as a process dies instead of needing a periodic check, etc..</summary><link rel="related" href="http://god.rubyforge.org" title="New god Conditions" /><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/589114119435014629/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/10/new-god-conditions.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/589114119435014629" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/589114119435014629" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/-Vho7JLvmlM/new-god-conditions.html" title="New god Conditions" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/10/new-god-conditions.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-9081919488006890296</id><published>2007-05-03T21:25:00.000-04:00</published><updated>2007-10-26T12:06:34.713-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="tool" /><category scheme="http://www.blogger.com/atom/ns#" term="open-source" /><category scheme="http://www.blogger.com/atom/ns#" term="command-line" /><category scheme="http://www.blogger.com/atom/ns#" term="firewall" /><category scheme="http://www.blogger.com/atom/ns#" term="gpl" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><category scheme="http://www.blogger.com/atom/ns#" term="networking" /><title type="text">IPTables Firewall Map</title><summary type="text">Filter vs. Nat? (Chicken vs. Egg, movie at 11...)A few years ago I had to setup a couple relatively complex firewalls (under Linux), and in the process managed to find some documentation on the order in which a packet traverses each table and it's rules.Sounds pretty basic, however nothing in the documentation or man pages for iptables itself explains how the tables relate to one another; for </summary><link rel="related" href="http://sourceforge.net/projects/iptables-map" title="IPTables Firewall Map" /><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/9081919488006890296/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/05/iptables-firewall-map.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/9081919488006890296" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/9081919488006890296" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/d5-5O4DyY-k/iptables-firewall-map.html" title="IPTables Firewall Map" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/05/iptables-firewall-map.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-6156492112251907821</id><published>2007-04-19T21:02:00.000-04:00</published><updated>2007-05-03T22:25:05.748-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="tool" /><category scheme="http://www.blogger.com/atom/ns#" term="open-source" /><category scheme="http://www.blogger.com/atom/ns#" term="extension" /><category scheme="http://www.blogger.com/atom/ns#" term="gpl" /><category scheme="http://www.blogger.com/atom/ns#" term="browser" /><title type="text">Gmail and GreaseMonkey</title><summary type="text">So I finally got around to playing with GreaseMonkey... and I regret not doing it sooner, there's so much I could have done already!If you're not familiar, GreaseMonkey is a Firefox plugin that lets you add your own/custom javascript code to websites. And it's dead simple - based on a handful of specially formatted comments and a file-naming convention, your javascript becomes custom code you can</summary><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/6156492112251907821/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/04/gmail-and-greasemonkey.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/6156492112251907821" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/6156492112251907821" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/1xbVkpvFyg8/gmail-and-greasemonkey.html" title="Gmail and GreaseMonkey" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/04/gmail-and-greasemonkey.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-7220596507588321731</id><published>2007-04-19T20:40:00.000-04:00</published><updated>2007-05-03T22:25:19.332-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C" /><category scheme="http://www.blogger.com/atom/ns#" term="tool" /><category scheme="http://www.blogger.com/atom/ns#" term="open-source" /><category scheme="http://www.blogger.com/atom/ns#" term="command-line" /><category scheme="http://www.blogger.com/atom/ns#" term="regex" /><category scheme="http://www.blogger.com/atom/ns#" term="perl" /><title type="text">Command-Line Highlighter</title><summary type="text">I was grepping through some logs the other day at home and I figured "wouldn't it be nice if I could pipe this through something that would highlight lines matching a regex instead of just having grep pull those lines out?" Wouldn't you know it, such a tool doesn't exist, as far as I can tell. Which is very weird, since I've already found it VERY useful...grep *will* give you context lines if you</summary><link rel="related" href="http://sourceforge.net/projects/highlite" title="Command-Line Highlighter" /><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/7220596507588321731/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/04/command-line-highlighter.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/7220596507588321731" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/7220596507588321731" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/kySii9SV0nA/command-line-highlighter.html" title="Command-Line Highlighter" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/04/command-line-highlighter.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-8541303145734083906</id><published>2007-03-28T11:21:00.000-04:00</published><updated>2007-10-26T12:03:50.409-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C" /><category scheme="http://www.blogger.com/atom/ns#" term="open-source" /><category scheme="http://www.blogger.com/atom/ns#" term="gpl" /><category scheme="http://www.blogger.com/atom/ns#" term="patch" /><title type="text">XMMS disk_writer plugin patch</title><summary type="text">This is a (very) small patch I wrote a while ago for the disk_writer plugin of xmms (an open-source X windows media player, modelled after WinAmp). The post in the link is pretty self-explanatory, it's taken from the xmms development list where I sent it... basically it simply modifies how the plugin build the filename to write to so that you get an 'auto-rotate' effect instead of overwriting </summary><link rel="related" href="http://lists.xmms.org/pipermail/xmms-devel/2005-January/002981.html" title="XMMS disk_writer plugin patch" /><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/8541303145734083906/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/03/xmms-diskwriter-plugin-patch.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/8541303145734083906" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/8541303145734083906" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/0lg90nlrFPM/xmms-diskwriter-plugin-patch.html" title="XMMS disk_writer plugin patch" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/03/xmms-diskwriter-plugin-patch.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-5548492986887641130</id><published>2007-03-25T11:11:00.000-04:00</published><updated>2007-10-26T12:05:13.314-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="rfc" /><category scheme="http://www.blogger.com/atom/ns#" term="open-source" /><category scheme="http://www.blogger.com/atom/ns#" term="compliance" /><category scheme="http://www.blogger.com/atom/ns#" term="abnf" /><category scheme="http://www.blogger.com/atom/ns#" term="uri" /><category scheme="http://www.blogger.com/atom/ns#" term="regex" /><category scheme="http://www.blogger.com/atom/ns#" term="php" /><category scheme="http://www.blogger.com/atom/ns#" term="validation" /><title type="text">RFC-Compliant URI Validation</title><summary type="text">Recently, as part of another project, I needed some code to validate a URI string based on RFC-2396. The goal here was the ability to ensure that a URI was RFC compliant. As such, I decided to use a set of regular expressions which were directly modelled from the ABNF definitions in the RFC. ABNF is by it's nature a very close match for regular expressions in terms of usage, syntax and purpose, </summary><link rel="related" href="http://sourceforge.net/projects/urivalidator" title="RFC-Compliant URI Validation" /><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/5548492986887641130/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/03/rfc-compliant-uri-validation.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/5548492986887641130" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/5548492986887641130" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/hGKmOdeXnuo/rfc-compliant-uri-validation.html" title="RFC-Compliant URI Validation" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/03/rfc-compliant-uri-validation.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-529229344940946207.post-1419252399456451081</id><published>2007-03-22T10:29:00.000-04:00</published><updated>2007-03-29T11:03:44.963-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="gpl" /><title type="text">A New Project</title><summary type="text">So today I finally decided to start writing a proper blog, after toying with the idea on and off for a little while. Among other things, I want all of the random code I write to be freely available and accessible somewhere online under the GPL and it doesn't always fit nicely into existing projects/categories/paradigms/etc. I'll still send and/or upload whatever I can where an appropriate project</summary><link rel="replies" type="application/atom+xml" href="http://dangprog.blogspot.com/feeds/1419252399456451081/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dangprog.blogspot.com/2007/03/new-project.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/1419252399456451081" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/529229344940946207/posts/default/1419252399456451081" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DangerousProgrammer/~3/rW3VQFT2xyk/new-project.html" title="A New Project" /><author><name>Rudy X. Desjardins</name><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><feedburner:origLink>http://dangprog.blogspot.com/2007/03/new-project.html</feedburner:origLink></entry></feed>

