<?xml version="1.0" encoding="utf-8"?>
	<rss version="2.0">
		<channel>
			<title>Acoderslife.com RSS Feed</title>
			<link>http://acoderslife.com/</link>
			<description>A Coders Life RSS 2.0 Feed</description>
			<lastBuildDate>Sat, 22 Oct 2011 03:01:00 GMT</lastBuildDate>
			<language>en-us</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://acoderslife.com/rss/" />
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Bridging the UBee DDW3611 Without Permission]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Bridging-the-UBee-DDW3611-Without-Permission]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Bridging-the-UBee-DDW3611-Without-Permission]]></guid>
				<pubDate><![CDATA[ Sat, 22 Oct 2011 03:10:00 GMT]]></pubDate>
				<description><![CDATA[ <br />So if you read my previous bitching session about Time Warner and their UBEE DDW3611, you know that I have bridged the modem and disabled the wireless. And if you are reading this, it is because you want to know how to do the same. Well, tough... send money to my PayPal account and I will tell you! ...Just kidding obviously... (but feel free to give me money anyway).<br /><br />So the first thing I did was hit Google to find the default user name and password for the UBEE DDW3611. That was, of course, extremely easy to find. It is user/user by the way. Unfortunately, this account is a limited user account, there appears to be another account somewhere with escalated "privileges". In this case, "privileges" simply means they can see links that the regular user account cannot. Out of sight out of mind, right?<br /><br />The next step, since the default account didn't work, was to factory reset the modem with the button on the back. Just hold it in for about 10 seconds (until you see the lights flash). Once it boots back up, you should be able to log in with the "user" account.<br /><br />Once logged in, the first thing I did was disable the wireless; this should be self explanatory so I won't go into detail... ask if you need it. <br /><br />So you are probably looking around now and wondering where the hell the bridging option is, right? So was I! You can stop looking, it isn't there. However, like I mentioned earlier, the only difference between the user account and the admin account is apparently that the user account has some nav links hidden from view. I like to think that UBEE simply "forgot" to put them there for the average user ;-) <br /><br />So the obvious solution here is to go to the links manually by typing them in the address bar. No, i didn't type template names all night until I found it, I found a screenshot of the Bridging UI online somewhere and the URL was in the screenshot. When I went there, it worked fine. That template is directly off the root and is named 'TlModeChange.asp'.<br /><br />So, if you just reset to factory defaults as mentioned, you can open a browser and go to: http://192.168.1.1/ and log in with user/user. (be sure to change the username and password under the Tools section).<br /><br />Once logged in, change the URL to: http://192.168.1.1/TlModeChange.asp<br /><br />This should load up the "Operation Mode" section. (notice the "Operation Mode" link appears in the nav on this page... solid web development right there... heh). You will see 4 options for the operational mode; the first option will, of course, be "Bridge Mode". Change to that option and hit apply.<br /><br />Once you make this change, you will no longer be able to get back into the modem with 192.168.1.1; The IP will change to 192.168.100.1. Once bridged, all of the Gateway options are no longer available. The wireless option will be available but I believe it is only for connecting to the interface.<br /><br />So now the modem is bridged. You can plug your own router into the modem now and you should be able to get it a public Ip address and put things back to the way they should be! Note that it took a long time before I could get my router to get an IP address. I've done this twice now and both times, I ended up having to unplug the modem and the router. Then I plugged in the modem, let it boot, then plugged in the router and let it boot. I connected (wired) to my router and it finally worked. Before the reboot bonanza, I could not get an IP to the router.<br /><br />Just for the record, I am using the WRT610N with the latest version of DDWRT installed. When i said I had bridged twice, it was to prove it worked with a factory default WRT610N and then a DDWRT flashed WRT610N.<br /><br />If you have any questions, let me know. Also, if you have the default admin password for the UBEE DDW3611, I'd love to know what it is. Of course, I am only assuming it exists since there are features on the modem that aren't available to the user/user account.<br /><br />Good luck!<br /><br />================================================<br />UPDATES:<br />================================================<br /><br />Just a couple of updates for those not finding them int he comments.<br /><br /><br />An anonymous user managed to find the master account credentials for the UBEE DDW3611 and forward it my way. I have confirmed that it does indeed work:<br /><br />The username will be the last 8 characters of your modem's Mac address. For instance, if your MAC is DE:AD:BE:EF:00:01, then the username will be BEEF0001.<br /><br />The password will be c0nf1gur3m3.<br /><br />The notice of the info came with a warning... if you change your master password and your ISP discovers that they can no longer log into it, they may disconnect you until they can replace your modem.<br /><br />Unfortunately, the keyboard cowboy didn't say what ISP he/she was on.<br /><br />Other than the Operation Mode (where the bridging is done, I'm not seeing anything else of any significant importance while logged in with the master account.<br /><br />Thank you anonymous :-)<br /><br /><br />Also, note that once you bride the modem, the internal IP address will change and to get back to the login screen, you will need to use the NEW IP address: http://192.168.100.1<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Adventures in Babysitting the Babysitters]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Adventures-in-Babysitting-the-Babysitters]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Adventures-in-Babysitting-the-Babysitters]]></guid>
				<pubDate><![CDATA[ Sat, 22 Oct 2011 02:10:00 GMT]]></pubDate>
				<description><![CDATA[ <br />If you are like me, you hate the idea of your modem doubling as your gateway or access point. Of course, your ISP loves it because they can charge you more for shitty equipment than they normally do because it "has wireless built in" or "it's also a router".<br /><br />I recently upgraded from Road Runner Turbo to Extreme. Now friends... I know for a fact that the modem I've had for years can handle the speeds of extreme because I've seen the speeds with my own eyes and I know people who are still getting those speeds out of them. So when Time Warner told me I had to "upgrade" to the UBEE DDW3611 if I wanted to get Extreme tier speeds, I said, "Ok... whatever."<br /><br />Then came the kicker, "The new equipment has wireless built in and we have to charge you an installation fee for that." says the script monkey on the other end of the line. Of course, I told him I didn't want their wireless and wasn't going to use it even if it was here but that didn't matter. All I wanted was a modem, not their gateway and not their wireless AP. Oh well... $17+ "upgrade fee" (seriously...) and $40 for "Wireless installation fees"... when you are done laughing, read on. So I said, "Fine. Schedule it." (knowing damn well I wasn't going to pay the extra fees for wireless). <br /><br />Fast forward to installation day... the "tech" (which is insinuating that there was anything technical about the guy... believe me, there was not) shows up on time, believe it or not! Unfortunately, he doesn't have the new modem... nice. All he has is a digital HD box for the TV. I explained to him that the only reason he was at my house was to upgrade the Internet and that I could care less about the TV... the only reason the TV was changing at all was because it made my bill cheaper to upgrade from basic to digital (We don't watch much TV at all).<br /><br />So after the guy hanging out at my house half the day waiting on someone to bring him a modem, he pulls out the biggest blue monster modem I've ever seen... the UBEE DDW3611. Now, When this guy showed up, I explained to him (just like I explained the the customer service rep) that I didn't care about the wireless and that all he had to do was get the wired connection working. I even told him that if he turned on the wireless, I would turn it off... I didn't want them coming to my house, dumbing down my network security and then leaving! So what does the guy do when he finally gets to "installing" the new modem? He plugs in the power... he plugs in the coax... he takes out his cell phone and makes a call. He tells the guy on the other end the mac address of the modem and the guy on the other end logs in for about 20 seconds and he's done. What did the guy on the other end do? He set it to WPA and set the key to my phone number... Done... $40 please.<br /><br />The self proclaimed "tech" insists that I test the wireless so to shut him up, I connect the Macbook to it and load up Google. He says, "Ok, looks like I'm all done here."<br /><br />This is the point where I stopped being nice... no not really... this is more the point where I stopped being tolerable. I once again explained that he was not done until he got the wireless turned off and the wired connection working. That is when he finally admitted that he had no clue how to do anything with the equipment except plug it in. Nice huh?<br /><br />So... I asked for the login info. Raise your hand if you think he knew it. PUT YOUR HAND DOWN.. THE GUY WAS OBLIVIOUS! So began his crash course in hooking the damn thing up... yeah... I'm expected to pay him for me doing his job... right.<br /><br />I finally just made sure I could get an IP from the damn thing on a wired connection then sent him on his merry way. Once he was gone was when I started really getting into the modem. In the end, I finally got into the thing, disabled the wireless and bridged the connection. So now, it is just a modem and my network is back to normal... just faster.<br /><br />I started writing this with the expectation of describing the steps to bridge the UBEE DDW3611 but apparently I had a rant in me that I needed to get out... sorry.<br /><br />My next post will be how to bridge the UBEE DDW3611 WITHOUT having the permission needed to do so.<br /><br />Stay tuned.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Rcon Java Class for Call of Duty: Black Ops]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Rcon-Java-Class-for-Call-of-Duty-Black-Ops]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Rcon-Java-Class-for-Call-of-Duty-Black-Ops]]></guid>
				<pubDate><![CDATA[ Wed, 19 Oct 2011 22:10:00 GMT]]></pubDate>
				<description><![CDATA[ <br />I've been playing all of Duty Black Ops for a while now and eventually rented my own server. As you probably know, RCON is the standard these days for Call of Duty games. It's been used in all the Call of Duty games to date and Black ops is no different. <br /><br />Basically, RCON is just utilizes a specifically formatted UDP packet to send remote commands to your server. These commands give you the ability to see who is in your server, what their score is... kick people, ban people, change maps, set playlists, etc...<br /><br />Since the introduction of Rcon, people have written numerous apps to make it easy to manage your servers via remote GUI. 99.9% of the time, these apps are written in Visual Basic. I don't have anything against VB, it is a fun language, but it isn't very portable (and by "isn't very", I mean "it is not").<br /><br />My most recent Rcon app of choice was BlackTomatoMod. It has all the basics and tons more. The problem with BlackTOmatoMod, however, is that the author is inaccessible and does not help with issues in the forums. He no longer really supports it and wont release the source... so it will be gone soon enough. There are plenty of other choices (existing and future) for Rcon GUIs.<br /><br />I had the idea to create a web based Rcon tool to get rid of the platform compatibility issues as well as the need to have a machine running your app 24/7 to monitor and manage your server.<br /><br />Being a ColdFusion developer, I'm sure you know what my choice of language was for the core API... Yes, Java.<br /><br />I was VERY surprised when I searched for a Java class for sending Rcon commands and only found very old, outdated code out there! The code examples that I was able to find hadn't worked with any newer games in years.<br /><br />I started out trying to modify one just to get it into a workable state but, in the end, I was putting more time in modifying it that I would have put into writing a new one... so that's what I did.<br /><br />I pulled out Wireshark and started reviewing UDP packets that the other VB apps were sending. Eventually, I figured out the payload structure that the BlackOps server expected and then I was in business.<br /><br />So enough babbling... below is the most recent code for the core Java Rcon API (deemed NetRcon). I'd love to see some Java apps that can run on more than just Windows and hopefully this can get someone started on just that.<br /><br />I still plan on trying to get some kind of basic web based Rcon tool up and running but it would be just the basics. To monitor chat and to get constant player status updates probably wouldn't do too well as a web app. It'd probably be fine for a couple servers but the more servers, the more constant UDP traffic the server would have to send/receive.<br /><br />Anyway... like I said... here's the code.<br /><br /><div class="codeblock"><pre><br />import java.io.IOException;<br />import java.net.InetAddress;<br />import java.net.DatagramPacket;<br />import java.net.DatagramSocket;<br /><br /><br /><br />public class NetRcon<br />{<br />	private InetAddress ipAddress;<br />	<br />	private int port;<br />	private int receiveTimeout;<br />	private int	sleepTimer;<br />	<br />	private boolean returnsData;<br />	<br />	private String password;<br />	private String command;<br />	private String retStr;<br />	<br />	private DatagramPacket dataPacketOut;<br />	private DatagramPacket dataPacketIn;<br />	<br /><br />	public <span style="color:#0000ff">NetRcon</span><span style="color:#000099">(</span>String ip, int port, String password, boolean returnsData, int receiveTimeout, int sleepTimer<span style="color:#000099">)</span> throws IOException<br />	{<br />		this.port = port;<br />		this.password = password;<br />		this.returnsData = returnsData;<br />		this.receiveTimeout = receiveTimeout;<br />		this.sleepTimer = sleepTimer;<br />		<span style="color:#0000ff">parseAddress</span><span style="color:#000099">(</span>ip<span style="color:#000099">)</span>;<br />	}<br />	<br />	<br />	public void <span style="color:#0000ff">sleeper</span><span style="color:#000099">(</span><span style="color:#000099">)</span> throws InterruptedException<br />	{<br />		<span style="color:#0000ff">Thread.sleep</span><span style="color:#000099">(</span>sleepTimer<span style="color:#000099">)</span>;<br />	}<br />	<br /><br />	private void <span style="color:#0000ff">parseAddress</span><span style="color:#000099">(</span>String ip<span style="color:#000099">)</span> throws IOException<br />	{<br />			ipAddress = <span style="color:#0000ff">InetAddress.getByName</span><span style="color:#000099">(</span>ip<span style="color:#000099">)</span>;<br />			<span style="color:#0000ff">System.out.println</span><span style="color:#000099">(</span>ipAddress<span style="color:#000099">)</span>;<br />	}<br />		<br />	<br />	<br />	public DatagramPacket <span style="color:#0000ff">buildPacket</span><span style="color:#000099">(</span>String rconCommand<span style="color:#000099">)</span> throws IOException<br />	{<span style="color:#9a9a9a"><em><br />		// Build the command string to be sent</em></span><span style="color:#9a9a9a"><em><br />		// The leading Xs are place holders for out of bounds bytes that will be converted once we get the java bytes for the string</em></span><br />		command = <span style="color:#0000ee">"xxxxx"</span> + password + <span style="color:#0000ee">" "</span> + rconCommand;<span style="color:#9a9a9a"><em><br />		<br />		// Convert the command string to bytes</em></span><br />		byte[] commandBytes = <span style="color:#0000ff">command.getBytes</span><span style="color:#000099">(</span><span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br />		<br />		// Replace the first 5 bytes (those leading Xs) in the commandBytes with the correct bytes</em></span><br />		commandBytes[0] = (byte)0xff;<br />		commandBytes[1] = (byte)0xff;<br />		commandBytes[2] = (byte)0xff;<br />		commandBytes[3] = (byte)0xff;<br />		commandBytes[4] = (byte)0x00;<span style="color:#9a9a9a"><em><br /><br />		<br />		// Build the UDP packet that is to be sent</em></span><br />		dataPacketOut = new <span style="color:#0000ff">DatagramPacket</span><span style="color:#000099">(</span>commandBytes, commandBytes.length, ipAddress, port<span style="color:#000099">)</span>;<br />		<br />		return dataPacketOut;<br />	}<br />	<br />	<br /><br />	public String <span style="color:#0000ff">sendCommand</span><span style="color:#000099">(</span>String rconCommand<span style="color:#000099">)</span> throws InterruptedException<br />	{<br />		try{<span style="color:#9a9a9a"><em><br /><br />			// Create a new DatagramSocket instance</em></span><br />			DatagramSocket dataSocket = new <span style="color:#0000ff">DatagramSocket</span><span style="color:#000099">(</span>null<span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br />			<br />			// Connect the new datagramSocket instance to the provided ipAddress and port</em></span><br />			<span style="color:#0000ff">dataSocket.connect</span><span style="color:#000099">(</span>ipAddress, port<span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br />			<br />			// Set the timeout of the socket connection; TODO: parameterize the timeout value.</em></span><br />			<span style="color:#0000ff">dataSocket.setSoTimeout</span><span style="color:#000099">(</span>receiveTimeout<span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br />  		<br />			// Send the packet (rcon command) to the server.</em></span><br />			<span style="color:#0000ff">dataSocket.send</span><span style="color:#000099">(</span><span style="color:#0000ff">buildPacket</span><span style="color:#000099">(</span>rconCommand<span style="color:#000099">)</span><span style="color:#000099">)</span>;<br /><br />			if (returnsData) {<span style="color:#9a9a9a"><em><br />				// Create a new buffer to receive any response from the rcon command</em></span><br />				byte[] buffer = new byte[4000];<span style="color:#9a9a9a"><em><br />			<br />				// Create the new datagram packet to house the returned results of the command</em></span><br />				dataPacketIn = new <span style="color:#0000ff">DatagramPacket</span><span style="color:#000099">(</span>buffer,buffer.length<span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br />			<br />				// Receive the buffer using the datagram socket.</em></span><br />				<span style="color:#0000ff">dataSocket.receive</span><span style="color:#000099">(</span>dataPacketIn<span style="color:#000099">)</span>;<br />			<br />				retStr = new <span style="color:#0000ff">String</span><span style="color:#000099">(</span><span style="color:#0000ff">dataPacketIn.getData</span><span style="color:#000099">(</span><span style="color:#000099">)</span>, 0, <span style="color:#0000ff">dataPacketIn.getLength</span><span style="color:#000099">(</span><span style="color:#000099">)</span><span style="color:#000099">)</span>;<br />			}<br />			else<br />			{<br />				retStr = new <span style="color:#0000ff">String</span><span style="color:#000099">(</span><span style="color:#006600">"Command sent on source port: "</span> + <span style="color:#0000ff">dataSocket.getLocalPort</span><span style="color:#000099">(</span><span style="color:#000099">)</span><span style="color:#000099">)</span>;<br />			}<br /><br />			<span style="color:#0000ff">sleeper</span><span style="color:#000099">(</span><span style="color:#000099">)</span>;<br />			<br />		}<br />		<span style="color:#0000ff">catch</span><span style="color:#000099">(</span>IOException ex<span style="color:#000099">)</span>{<br />			retStr = new <span style="color:#0000ff">String</span><span style="color:#000099">(</span><span style="color:#0000ff">ex.getMessage</span><span style="color:#000099">(</span><span style="color:#000099">)</span><span style="color:#000099">)</span>;<br />		}<span style="color:#9a9a9a"><em><br />		<br />		// Return the results</em></span><br />		return retStr;<br /><br />	}<br />}<br /><br /></pre><!-- Coloring took 16 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 5 ms.
 quotes within quotes 1 ms.
 2 quotes within quotes 0 ms.
 lt and gt within strings 0 ms.
 numbers and operators 1 ms.
 quoted strings 2 ms.
 function names 3 ms.
 all other tags 1 ms.
 css 1 ms.
 re-added strings and comments 0 ms.
 style attributes 2 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- added to cache --></div><br /><br /><br />Here are the arguments to pass in during initialization:<br /><br /><b>ip</b> = The Ip address of your CoD server<br /><br /><b>port</b> = The port on which your server recieves Rcon commands<br /><br /><b>password</b> = Your Rcon password<br /><br /><b>returnsData</b> = This is a bit flag to tell the send command whether or not to open a receiving buffer fora return response. Of the basic commands, status is probably the only one that needs it so no need for the overhead that comes along with it where other commands are concerned.<br /><br /><b>receiveTimeout</b> = This is how long to wait for a response (in milliseconds)<br /><br /><b>sleepTimer</b> = This is how long to pause between sending more commands (in milliseconds). If you find that you are able to send a command fine, but when you try to send two back to back and only the second runs, try increasing this value to add time between the commands.<br /><br />Once you have successfully initialized NetRcon, you simply use the send() method to send your commands to the server. If the command expects results, they will be returned by this method.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Where art thou Creature from the Black Lagoon remake?]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Where-art-thou-Creature-from-the-Black-Lagoon-remake]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Where-art-thou-Creature-from-the-Black-Lagoon-remake]]></guid>
				<pubDate><![CDATA[ Sun, 15 May 2011 01:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/e302a56b71a37ff1cc70f4e77eb539b3.jpg" alt="Creature From the Black Lagoon Leaked Concept" align="left"> Another on again, off again remake that has been in talks for years now is one of my all time black and white favorites? "The Creature from the Black Lagoon". If I were to be held down and forced by pain of titty twister to choose a favorite horror classic (classics as in 40s and 50s), I'd probably have to choose the Creature.<br /><br />There were rumors a few years ago about a VERY high budget ($90 million) remake directed by Breck Eisner but nothing ever came of it and I'm really not sure where it faded to or why; most just blamed the writer strikes but I've heard it was in pre-production at least twice (2007 and 2010).<br /><br />Late last year was the last thing I heard about it so I have no clue where it's at now. At that time, the  director was rumored to be Carl Rinsch. Neither of the associated directors have impressed me so far and I'd really prefer someone else to be honest. I expect nothing but perfection from one of my favorite horror films of all time and I'm really not sure if either of the two choices so far have the experience to pull it off. Maybe the spirit of the original is just rebelling and holding out for the right cast and crew.<br /><br />I don't have any specific director in mind but, whoever it is, I hope they stick to manual effects (no CGI and real locations) and a small, no-name cast. The article image above is a leaked concept mask for the new Creature. I think it looks pretty awesome but I'd be satisfied with the Gillman from Monster Squad!<br /><br />I'll definitely continue watching for developments on this one. I sure hope it picks back up again soon.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Fingers crossed... Fright Night remake is due to hit theatres soon]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Fingers-crossed-Fright-Night-remake-is-due-to-hit-theatres-soon]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Fingers-crossed-Fright-Night-remake-is-due-to-hit-theatres-soon]]></guid>
				<pubDate><![CDATA[ Sat, 14 May 2011 14:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br />Hollywood is still out of ideas so there is yet another classic movie being remade; this time it is one of the greatest vampire flicks to ever warp my fragile little mind as a child... Fright Night! That's right kids, Peter Vincent, Jerry Dandrige and Charley Brewster are all coming back together (not really, it's an all new cast) for more night time vampire staking tomfoolery.<br /><br /><iframe class="youtube-player" type="text/html" width="613" height="385" src="http://www.youtube.com/embed/kxqtyTH5bzM" frameborder="0"></iframe><br /><br />Most self-proclaimed, hardcore movie fans start whining instantly at the mere mention of a remake but I'm always hopeful that they will be just as good, if not better, than the originals (which is rare but has definitely happened... Rob Zombie's Halloween was awesome). Fright Night is no different for me; I can't wait to see it! Just the thought of seeing the movie again for the first time (is that possible?) takes me back to that mid 80's night when a simple late night viewing kept me awake longer than usual in antici... ... ...pation of my neighbor busting through my window at any second, chomping an apple and then making me the main course (not in a weird sexual way... that would be wrong... but in a murderous, rip you apart and eat your insides kind of way... which is perfectly ok).<br /><br />However, I'd be lying if I said that I didn't get a twinge of fear that the remake may be completely ruined... not because it will simply won't compare to the original or because I just won't like it but because if it is no good, the chances of another (good) remake coming along are shot to hell. Good or bad, this remake means that there won't be another remake of Fright Night for another 20+ years (of course you could probably cut that in half with the way Hollywood is burning through the classics with remakes).<br /><br />That said, I do fear this remake a bit after watching the trailer. I am afraid that they may have gone a little overboard with their attempts to bring it into the 21st century. Let's just skip right over the scene where Charley looks up "How to pick a lock" on his Internet ready smart phone and can instantly do it; I can get past that. The scene in the trailer that has me most worried (and I hope with my hopiest of hopes that the scene was just movie trailer trickery) is where we are given the impression that Dandrige is standing on a porch watching a car go by. My problem with that scene (if it is actually Dandrige) is that it is the middle of the day! Now, you might be saying to yourself, "That doesn't sound like such a big deal to me..." but let's define what that means for the rest of the movie.<br /><br />First, I can only think of a few vampires that can survive the sunlight... one is nicknamed "Daywalker" so I will let that one slide because Blade is a bad ass... the others, however, sparkle in the sunlight and fart bubbles. If Jerry Dandrige becomes an Edward, I'll form an angry mob and hunt down Craig Gillespie... Frankenstein style.<br /><br />Next, (as if the first reason wasn't enough) letting vampires walk around in the day takes away the safety of the sun! Vampires are supposed to be creatures of the night, not daytime Hot Topic patrons. If vampires walk around in the day time, how are you going to pull off that classic vampire plotting montage? You know the one I mean... the one where the heroes spend the entire day planning the simplest of plans: go in, find the coffin, say something witty like "you suck", stake the vampire, the end... we win. The plan is so simple in-fact that the heroes always wait until just before nightfall to go in... giving themselves the most limited amount of time possible to find said coffin and stake said beastie through the heart.<br /><br />That's the rule people, "Day time... safe. Night time... watch out for monsters". Please don't break it if you intend to create a vampire book or movie!<br /><br />Seriously though, all joking aside, I think this one has a great opportunity to be very entertaining. I can tell form the trailer alone though that it wont be as good as the original, but it does look like a very fun movie to me. I will definitely be watching it.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Droid 2 - Picasa username or password incorrect.]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Droid-2-Picasa-username-or-password-incorrect]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Droid-2-Picasa-username-or-password-incorrect]]></guid>
				<pubDate><![CDATA[ Sat, 23 Apr 2011 12:04:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/a8241f3e6c55c1183489258db10f3b65.jpg" alt="Droid Picasa Password Issue." align="left">I, like many others, use Picasa for organizing and backing up all of my photos. I have my Picasa account setup on my Droid 2 so I can easily "Share" pics by sending them to my Picasa drop box. <br /><br />For the past week or so, I've been getting a random error message on my Droid in relation to my Picasa account. The message is in the image above and simply says, "Error Adding Account. Your username or password is incorrect. Please check them and try again." The message is an annoyance only since Picasa still works fine on my phone. I simply hit OK, and the message goes away for a while.<br /><br />I have no idea why I am getting a message related to ADDING an account at all; the account has been on my phone from day one.<br /><br />It would appear that others are having similar issues but people are getting different messages... <a href="https://supportforums.motorola.com/message/358099" target="_blank">Here</a> and <a href="http://androidforums.com/droid-x-all-things-root/315143-gb-picasa-invalid-password-error.html" target="_blank">here</a> for example</a>.<br /><br />I haven't figured it out yet so if anyone has any ideas, please share. I'll be sure to update if I find the cause or solution.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ OMG! We Met Teenape at the Ikea Store of all Places!]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/OMG-We-Met-Teenape-at-the-Ikea-Store-of-all-Places]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/OMG-We-Met-Teenape-at-the-Ikea-Store-of-all-Places]]></guid>
				<pubDate><![CDATA[ Tue, 19 Apr 2011 00:04:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/481780ebec2d3fc4e29afff51d009bb4.jpg" alt="Yo ho ho bitch!" align="left">It's no secret that I am a huge horror fan. However, my wife isn't. She enjoyed the classics (Dracula, Frankenstein, Creature from the Black Lagoon), but I'll never get her to sit through all (or any) of the Friday the 13th films and the mere mention of a Rob Zombie movie sends chills up her spine. Her distaste for horror is the reason that I find it very odd that she LOVES everything that Low Budget Pictures has released. I consider LBP flicks more comedy than horror, but they get quite graphic (in more ways than you can imagine).<br /><br />Our first encounter with a "Low Budget Pictures" flick (or "A Chris Seaver Rape") was Taintlight. Not long after it was on Netflix, we watched it and laughed for days. We ended up watching it MANY more times (and will watch it many more I'm sure... in fact, mentioning it here has just made me want to go watch it again once I post this). Since we loved Taintlight so much, we decided to find out what else the Low Budget Pictures gang had done. <br /><br />The next LBP movie that we found was the only other one that was available on Netflix? "Teenape Goes to Camp". It quickly became obvious that the characters in "Teenape Goes to Camp" had history that could have only been explained in earlier LBP movies, but we watched it anyway. We've since seen just about everything LBP has done. If you've seen enough LBP flicks, you'll understand why Teenape (played by Casey Bowker) is our favorite character. Teenape, by far, is the most quoted movie character in our house; "Yo ho ho bitch" never gets old!<br /><br />Casey Bowker (Teenape) and the rest of the LBP gang are all from New York, that is why we about crapped our pants when we saw him sitting across from us at the Ikea store cafeteria in Charlotte, NC! What?! We couldn't stand it so I obviously had to go over and ask him if he was Casey Bowker (aka, Teenape). I think he was as surprised to get noticed in the Ikea store 100s of miles away from home as we were to notice him there. He was a super nice guy and we talked very briefly. We wanted a picture so bad but didn't want to bug him that much while he was eating lunch with his sister and friends. We hoped that we would see him walking around the store after lunch and be able to get some pics then, but no such luck! <br /><br />We could both swear to you that if you had asked us the question earlier that day, "If you could pick anyone to randomly run into today, who would it be?"... we both would have answered, "Teenape!".<br /><br />If you don't mind some seriously graphic, low budgetness, you should definitely check out some stuff from Low Budget Pictures. Of course my recommendation is anything with Teenape in it but everything Chris Seaver puts out is ridiculously funny. I suggest you hurry though, Low Budget Pictures has, unfortunately, closed their doors.  I like to think that if their stuff gets popular enough, there will be many more Chris Seaver flicks to grace my movie collection but for now, I'll just have to settle for for the current <a href="http://lowbudgetpictures.net/index2.html" target="_blank">LBP collection</a>. I suggest you grab it while you can!<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Simple way to remove duplicate list items in ColdFusion]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Simple-way-to-remove-duplicate-list-items-in-ColdFusion]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Simple-way-to-remove-duplicate-list-items-in-ColdFusion]]></guid>
				<pubDate><![CDATA[ Sat, 26 Mar 2011 14:03:00 GMT]]></pubDate>
				<description><![CDATA[ <br />I still see examples of people going way out of their way to make sure a common list has do duplicate values.<br /><br />I have seen people loop their list into a new list with a listFind condition to make sure it wasn't already there. I have seen people put their list into an array (some with a loop and arrayAppend, others with listToArray), arraySort that array, then loop that into a new list, again, checking a listFind condition to make sure it doesnt already exist. I have even seen people loop their lists into queryNew() then use a Query of Queries to select only the unique values, then use valueList(qry.values) to get their unique list.<br /><br />ALL of those are far more complicated than they need to be. <br /><br />This is an old ColdFusion trick but still the simplest way of accomplishing this task (that I am aware of). You can simply put the list into a structure using the list items as the structKey (yes, even numbers). A structure cannot have two identical keys so the end result is a structure of unique values. Then you can simply use structKeyList() to get a list back out (if you still need a list).<br /><br />Here is a small example:<br /><br /><div class="codeblock"><pre><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> strList <span style="color:#0000ff">=</span> <span style="color:#0000ee">"9,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,0,0,1,1,2,2,3,4,5,6"</span> </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> listStruct <span style="color:#0000ff">=</span> {} </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#800000">&lt;cfloop list=<span style="color:#0000ee">"#strList#"</span> index=<span style="color:#0000ee">"i"</span>&gt;</span><br />	<span style="color:#800000">&lt;cfset</span><span style="color:#000000"> listStruct[i] <span style="color:#0000ff">=</span> i </span><span style="color:#800000">/&gt;</span><br /><span style="color:#800000">&lt;/cfloop&gt;</span><br /><br /><span style="color:#800000">&lt;cfdump var=<span style="color:#0000ee">"#structKeyList(listStruct)#"</span> /&gt;</span><br /><br /></pre><!-- Coloring took 3 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 1 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 1 ms.
 function names 0 ms.
 all other tags 0 ms.
 css 0 ms.
 re-added strings and comments 0 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- added to cache --></div><br /><br />CFScript Junkie? Don't worry, I didn't forget about you.<br /><br /><div class="codeblock"><pre><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> strList <span style="color:#0000ff">=</span> <span style="color:#0000ee">"9,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,0,0,1,1,2,2,3,4,5,6"</span> </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#800000">&lt;cfscript&gt;</span><br />function <span style="color:#0000ff">listRemoveDupes</span><span style="color:#000099">(</span>inList,delim<span style="color:#000099">)</span><br />{<br />	var listStruct = {};<br />	var i = 1;<br />	<br />	<span style="color:#0000ff">for</span><span style="color:#000099">(</span>i=1;i&lt;=<span style="color:#0000ff">listlen</span><span style="color:#000099">(</span>inList, delim<span style="color:#000099">)</span>;i++<span style="color:#000099">)</span><br />    {<br />    	listStruct[listgetat(inList,i)] = <span style="color:#0000ff">listgetat</span><span style="color:#000099">(</span>inList,i<span style="color:#000099">)</span>;<br />    }<br />    <br />    return <span style="color:#0000ff">structkeylist</span><span style="color:#000099">(</span>listStruct<span style="color:#000099">)</span>;<br />}<br /><span style="color:#800000">&lt;/cfscript&gt;</span><br /><br /><span style="color:#800000">&lt;cfdump var=<span style="color:#0000ee">"#listRemoveDupes(strList,"</span>,<span style="color:#0000ee">")#"</span> /&gt;</span><br /><br /></pre><!-- Coloring took 4 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 1 ms.
 2 quotes within quotes 0 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 1 ms.
 function names 0 ms.
 all other tags 1 ms.
 css 0 ms.
 re-added strings and comments 1 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- added to cache --></div><br /><br />Nothing to it. The important part is to remember to define your structure AS a structure. For instance, in the above example, if you removed the listStruct = {} definition, listStruct[i] will assume it is an array since our list values are all numeric.<br /><br />So there it is, old but still effective.. and far less complicated than the previously mentioned methods (especially the QoQ method... eww...<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ New versions of CF4em have been released]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/New-versions-of-CF4em-have-been-released]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/New-versions-of-CF4em-have-been-released]]></guid>
				<pubDate><![CDATA[ Sun, 20 Mar 2011 13:03:00 GMT]]></pubDate>
				<description><![CDATA[ <br />There was along gap in updates but I have finally found the time to work on it a bit. So, finally, I have released a few updates to <a href="http://cf4em.com" title="CF4em" target="_blank">CF4em</a>.<br /><br />For those of you who might not know what CF4em is yet, it is an open source (released under the Aache License verison 2.0) ColdFusion based forum/message board system that a I released a few years ago. CF4em was my ColdFusion answer to PHPBB.<br /><br />With work, it was quite difficult to find the time or energy to work on CF4em so it has been a while since there was a release... but it is here now. <br /><br />You can head over to <a href="http://cf4em.com" title="CF4em" target="_blank">CF4em.com</a> to check out the changelogs or to <a href="http://cf4em.com/cf4em" title="CF4em" target="_blank">take CF4em for a spin.</a><br /><br />Don't forget to check out all of <a href="http://cf4em.com/cf4em/index.cfm?mainaction=posts&forumid=1&threadid=1" title="CF4em Skins" target="_blank">the available skins!</a><br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Adding Command+Q shortcut to Finder in OS X]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Adding-Command-Q-shortcut-to-Finder-in-OS-X]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Adding-Command-Q-shortcut-to-Finder-in-OS-X]]></guid>
				<pubDate><![CDATA[ Sat, 19 Mar 2011 22:03:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/44f08af2f5b8266000d1ef43fac532d5.jpg" alt="Add Command+Q to Finder" align="left">I am a hotkey fanatic, especially on a laptop! That is one of the big reasons I love my Macbook; almost everything can be done with the press of a couple of magic keys. <br /><br />I'd have to say that the most used hotkey combo on my Macbook is, by far, Command+Q (which is for quitting an application for all you n00bs out there). If that is my most used shortcut, then I'd have to say that my most used application is Finder (or Firefox... it is a tossup). But... wouldn't you know it... Finder is one app that the Command+Q shortcut doesn't work with! I forget that ALL the time and find myself hitting Command+Q to quit Finder then saying to myself, "Ugh... oh yeah... no quit shortcut on Finder". <br /><br />Before you say Alt+Command+Esc is the Finder quit hotkey shortcut... slap yourself because it is not! All is not lost though; there is a very simple way to add the Command+Q functionality to Finder!<br /><br />Note that if you are a desktop icon fiend, this is not the hack for you. quitting Finder also hides all of the desktop icons until you start Finder again.<br /><br />Just open up Terminal and enter the following command:<br /><br /><div class="codeblock"><pre><br />defaults write com.apple.finder QuitMenuItem YES<br /><br /></pre><!-- Coloring took 1 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 0 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 1 ms.
 function names 0 ms.
 all other tags 0 ms.
 css 0 ms.
 re-added strings and comments 0 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- retrieved from cache --></div><br /><br />That's it. If Finder is open, relaunch it (which is where the aforementioned Alt+Command+Esc shortcut comes in), otherwise, just open it. You should now have a Quit option in the Finder menu which, as we all know, can be triggered with Command+Q!!<br /><br />If you are so uncool that you decide you want to turn this ability off, simply repeat the process but use, you guessed it, "NO" in place of "YES".<br /><br /><div class="codeblock"><pre><br />defaults write com.apple.finder QuitMenuItem NO<br /><br /></pre><!-- Coloring took 2 msecs.:
 ampersands and tabs 1 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 0 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 0 ms.
 function names 0 ms.
 all other tags 0 ms.
 css 1 ms.
 re-added strings and comments 0 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- retrieved from cache --></div><br /><br />Don't forget to relaunch Finder if it is open.<br /><br />Enjoy.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Adding XX minutes to the current time in a Windows batch file]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Adding-XX-minutes-to-the-current-time-in-a-Windows-batch-file]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Adding-XX-minutes-to-the-current-time-in-a-Windows-batch-file]]></guid>
				<pubDate><![CDATA[ Sun, 13 Mar 2011 18:03:00 GMT]]></pubDate>
				<description><![CDATA[ <br />It has been a very long time since I have written any Windows/Dos batch files... probably since my DOS class in College. That being the case, there may very well be an easier/better solution to this but I could not find it with a quick search on Google. Since I couldn't find it, I wrote this simple script.<br /><br />What I needed was a very simple requirement... add 10 minutes to the current time so it can be used to create a scheduled task that would execute 10 minutes from now.<br /><br />I searched Google but all I found were ways to add days and overly complicated dateAdd functions (that I didn't feel like deciphering just for minutes)<br /><br />So, basically, all the code does is get the current time and extract the HOUR and MINUTE values. It then adds 10 to the minute value. If minutes exceed 59, it rolls the hour up 1 and subtracts 60 from the minutes. It then checks to see if the hour is greater than 24 (if it added 1 to 24, it would be 25 of course). If it is, it simply changes it to 0.<br /><br />Once the new hour and minute values have been determined, it simply puts them together with a : and appends the seconds that were in the original time.<br /><br />So, for example, if the current time was 24:56:42.10, the result of this routine would be: 00:06:42.10.<br /><br />If the current time was 23:49:42.10, the result of this routine would be: 23:59:42.10.<br /><br />This, combined with a simple AT command gave me exactly what I needed.<br /><br /><div class="codeblock"><pre><br />::============================================<br />::GET THE CURRENT HOUR AND MINUTE + 10 MINUTES<br />::============================================<br />SET CURRENTTIME=%TIME%<br />for /F <span style="color:#0000ee">"tokens=1 delims=:"</span> %%h in (<span style="color:#0000ee">'echo %CURRENTTIME%'</span>) do (set /a HR=%%h)<br />for /F <span style="color:#0000ee">"tokens=2 delims=:"</span> %%m in (<span style="color:#0000ee">'echo %CURRENTTIME%'</span>) do (set /a MIN=%%m + 10)<br /><br /><br />::=======================================================<br />::IF THE MINUTE IS &gt;= 60, ROLL IT OVER BY SUBSTRACTING 60<br />::FROM MINUTES AND ADDING 1 TO HOURS<br />::=======================================================<br />IF %MIN% GEQ 60 (<br />	SET /a MIN=%MIN%-60 <br />	SET /a HR=%HR%+1<br />)<br /><br />::===========================================================================<br />::IF THE HOUR IS &gt; 24, THEN IT IS BECAUSE WE ADDED 1 TO 24 ABOVE. SET IT TO 0<br />::===========================================================================<br />IF %HR% GTR 24 SET HR=00<br /><br /><br />::============================================<br />::PAD SINGLE DIGIT MINUTES WITH A LEADING ZERO<br />::============================================<br />IF %MIN% LEQ 9 (<br />	SET MIN=0%MIN%<br />)<br /><br />::==========================================<br />::PAD SINGLE DIGIT HOURS WITH A LEADING ZERO<br />::==========================================<br />IF %HR% LEQ 9 (<br />	SET HR=0%HR%<br />)<br /><br />::========================================================================<br />::USE THE NEW HOUR AND MINUTE (AND EXISTING SECONDS) TO CREATE THE NEW TIME<br />::========================================================================<br />SET NEWTIME=%HR%:%MIN%:%CURRENTTIME:~6,10%<br /></pre><!-- Coloring took 3 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 1 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 0 ms.
 function names 1 ms.
 all other tags 0 ms.
 css 0 ms.
 re-added strings and comments 1 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- added to cache --></div><br /><br /><br />Note that this could be very easily altered to add hours instead of minutes. You can also replace the '10' with %1 to be able to pass in the number of minutes.<br /><br />For instance: <br /><br /><div class="codeblock"><pre><br />C:\&gt; add10minutes.bat 20<br /><br /></pre><!-- Coloring took 1 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 0 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 1 ms.
 function names 0 ms.
 all other tags 0 ms.
 css 0 ms.
 re-added strings and comments 0 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- added to cache --></div><br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Syncing files from your Mac to your Windows 7 PC with rsync]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Syncing-files-from-your-Mac-to-your-Windows-7-PC-with-rsync]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Syncing-files-from-your-Mac-to-your-Windows-7-PC-with-rsync]]></guid>
				<pubDate><![CDATA[ Fri, 04 Mar 2011 02:03:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/91438d299016671ca8bb04290406f4d5.jpg" alt="Mac OSX" align="left">If you are like me, you have your music in more than one place because you are so scared that you are going to lose it and have to "rip all those CDs" again! I have my music on my Mac, my wife's mac on my PC, on my server and on a portable hard drive that I carry to work. I know... a bit excessive on all the home machines but it helps me sleep at night knowing my precious music library is safe. I am the same way with my pictures. Mac, PC, Server, Picasa web Albums... they are everywhere!<br /><br />Having the files in all of those places locally is pretty much a guarantee that I won't lose everything all at once. But, as I'm sure you can imagine, things get pretty well out of sync very fast. I use my Mac more than most other machines so it tends to be my "master copy" of music and pics... iTunes being the gate keeper for the music. As I add more and more music to iTunes on my Mac, all of the other locations become more and more out of sync. <br /><br />In the old days, I would just copy everything over to each machine (or FTP it up to my server) and manually keep things in sync. It works but where is the fun in that? These days, I just keep everything in sync with a nifty little command called 'rsync'.<br /><br />As I said, my "master copy" of music is my Mac. My secondary location would be my PC, next my server, etc? When I add new music to my Mac, I can simply create an SMB share to my PC, for instance, and rsync my music over to the PC!<br /><br />rsync is more than just copying files form once place to another, it will not only copy files to the target that do no already exist, if I were to delete a file on my Mac, it would also delete it on the PC. This isn't happening by deleting everything on the target and doing a full copy of course; it is an actual sync of deltas. If files are the same, nothing happens; if the file is new, deleted or changed, that is synced over.<br /><br />So enough of the explaining? you can `man rsync` for all that. Here is a scenario on syncing files from a Mac to a Windows 7 Pro machine.<br /><br />First, you will need to have a share setup somewhere on the windows 7 machine that you can write to remotely. <br /><br />Next, just open Finder on the Mac and hit command + k to open the "Connect to Server" window. If you haven't done anything fancy with your windows share, a normal SMB connection should work fine. In the "Server Address" field of the "Connect to Server" dialog, enter smb://serverName where "servername" is either your PC's hostname or IP address. For instance, my PC's IP is 10.11.12.13 (yes really) so I enter: smb://10.11.12.13 in the Server Address field and hit Connect.<br /><br />If this is the first connection you are making to the PC, you may be asked to provide credentials. Once it connects, you should be presented with a list of possible shares to connect to and mount. My share was simply called "Music". Select the desired share and you should connect to it. Finder will open a window of that share's contents.<br /><br />Not only are you connected to the share now, it is mounted in /Volumes/ to make life easy. For instance, my share name was "Music" so once I am connected to smb:///10.11.12.13/Music, it is mounted locally as /Volumes/Music/<br /><br />Now that we are connected, it is time to sync my local iTUnes library to my Music share. To do that, the following command is all I have to run.<br /><br /><div class="codeblock"><pre><br /><br />rsync -avz --delete --exclude <span style="color:#0000ee">'.DS_Store'</span> /Users/bobby/Music/iTunes/iTunes\ Music/Music/ /Volumes/Music/<br /><br /></pre><!-- Coloring took 1 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 0 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 0 ms.
 function names 0 ms.
 all other tags 0 ms.
 css 0 ms.
 re-added strings and comments 0 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- retrieved from cache --></div><br /><br />So let's break that down.<br /><br />'rsync' is obviously the command name. <br /><br />The '-a' option is for archive mode. This basically tells rsync that you want to preserve everything about the files. It also tells it that you want recursion.<br /><br />The '-v' option s just to give us more detail in the output; it stands for 'verbose'. WIthout this option, you will not be able to tell where the process is since, by default, rsync works silently.<br /><br />The '-z' option enables compression. Doing this speeds up the transfer since it is obviously sending less data and then decompressing once it is on the other side.<br /><br />--delete tells rsync that you want to delete files on the target that do not exist on the source.<br /><br />--exclude does just as you would expect it to; it excludes files in the comma delimited list that follow it. In this case, we are just excluding the annoying .DS_Store files that live in so many Mac directories.<br /><br />Next is the source directory where all files should be copied from. In my case, it was my local iTunes Music directory. "/Users/bobby/Music/iTunes/iTunes\ Music/Music/". Don't let that extra \ throw you. It is just escaping the space that follows it.<br /><br />Finally, the last bit of information that rsync needs is the destination directory. In my case, it is the mounted Music directory that can be accessed through "/Volumes/Music/".<br /><br />That is it! All you have to do now is run the command and let it do what it does best... sync stuff!<br /><br />Obviously, you should test this out on some smaller test directories/files before you hose all of your precious data but the above does not change the source so you should be safe? just make sure there is nothing on the target that you don't want to lose that isn't on the source as well. If you are unsure, just remove the --delete option.<br /><br />Now go forth and sync all that crap you have scattered everywhere!<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Droid 2 Getting Extremely Hot and Draining the Battery]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Droid-2-Getting-Extremely-Hot-and-Draining-the-Battery]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Droid-2-Getting-Extremely-Hot-and-Draining-the-Battery]]></guid>
				<pubDate><![CDATA[ Sat, 26 Feb 2011 23:02:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/b5d812450d2c804416d5ebab8e95444f.jpg" alt="Android" align="left">Is your droid so hot you that you think it might melt? Is the battery dying quickly? That is exactly what happened to me recently. My phone was fully charged, as it is every morning when I take it off of the charger. Shortly after I got to the office, I grabbed my phone from the case and it was extremely hot. I also noticed that the battery was all but dead! Next, I opened my corporate sync account and all of my email was gone! Obviously something very odd was going on with my precious Droid 2.<br /><br />I plugged it up to my extra charger at work and let it charge for a while. By lunch, it still wasn't charged; it was only around 30%? ugh? While I was at to lunch, I tried the charger in my truck? it still wouldn't charge and it was still VERY hot. The phone was so hot, that it was starting to take its toll on the OS, the missing email for example? The overall interface was lagging a bit as well.<br /><br />In a final attempt to figure it out, I was going to remove the battery for a bit and put it back in. I flipped the phone over and that is when i noticed that the battery cover wasn't on 100%. It was slid down about 2 millimeters. I slid the cover back on and the phone started cooling down almost instantly! It started charging fine again and I was able to remove my corporate sync account and read it to get that working again.<br /><br />How crazy is that? The battery cover not being in place correctly on the phone just about fried it for good!<br /><br />So? if your phone gets really hot and the battery dies, be sure to check the battery cover before you melt the thing.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Droid 2 Corporate Sync Push Quit Working]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Droid-2-Corporate-Sync-Push-Quit-Working]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Droid-2-Corporate-Sync-Push-Quit-Working]]></guid>
				<pubDate><![CDATA[ Tue, 04 Jan 2011 00:01:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/b5d812450d2c804416d5ebab8e95444f.jpg" alt="Android" align="left">So I still love my Droid 2. I waited and waited for the iPhone to come to Verizon but it never did so I got the Droid 2 the day it came out. I love the Droid and not that Verizon has the iPhone4... it doesn't matter.<br /><br />On thing I have to have on my phone is exchange integration. The Droid 2 "Corporate Sync" account has worked great for that. It syncs my exchange email, calendar items and contacts. With the exception of not being able to sync the exchange contact photos, it has been pretty much perfect.<br /><br />Not long ago, I noticed that it stopped receiving email. It has been setup as "Push" from day #1 and I never had a problem. Coincidentally, we had some scheduled maintenance done to our exchange server right around the same time that push stopped working. There were some MS updates that came along with it and I just assumed it was the cause. I waited a while to see if anyone else at work complained but no one did. <br /><br />The only way I could receive email was by going into the account and hitting the sync icon. That is obviously unacceptable? not to mention, very annoying. I tried Google and all I found were a ton of people having the same problem. I also found that most people had the same issue start around the same time that mine started. <br /><br />Since no one had a reason or solution for the problem, I started playing around with my phone's settings. First, I deleted my corporate sync account and recreated. As expected, that didn't help. After digging around the settings, I finally found the issue. Apparently, an update (or maybe just a bug with battery management) had changed the battery mode to "Nighttime Saver". When the battery mode is set to "Nighttime Saver", no automatic data syncing features work. Once I changed the battery mode to "Performance Mode", the email started pouring in again!<br /><br />So, for all of you with this issue out there (who haven't solved it by now), go into your Settings ? Battery Manager ? Battery Mode and make sure your phone isn't stuck on "Nighttime Saver".<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ The new Motorola Droid is here... but will it stay?]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/The-new-Motorola-Droid-is-here-but-will-it-stay]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/The-new-Motorola-Droid-is-here-but-will-it-stay]]></guid>
				<pubDate><![CDATA[ Sat, 21 Aug 2010 15:08:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/b5d812450d2c804416d5ebab8e95444f.jpg" alt="Android" align="left">I've used a Blackberry for as long as I can remember. They are always easy to use and have always tied into my exchange account without complaint or issue. The only phone I ever wanted over my Blackberries was an iPhone but I never wanted one bad enough to switch to AT&T. It wasn't until the first Motorola Droid came out that I even considered replacing my Blackberry.<br /><br />I picked up the first Motorola Droid when it came out and tried it out. I took it back a few days later and had my Blackberry reactivated. My complaints about the first Droid were the things I was looking forward to; design, full QWERTY keyboard and a better email interface.<br /><br />The design of the phone had sharp edges and corners that left a mark across my ear every time I used it. It was pretty annoying.<br /><br />The flip out keyboard was flat and the keys had no definition. It may as well have been an onscreen keyboard!<br /><br />The email interface was fine but my assumption was that I could tie it into my Exchange account. With no native support built in, I downloaded touchdown. I was able to get my exchange account set up and working but there were still problems with that. The touchdown interface is pretty generic and not very user friendly and I had to use the touchdown app instead of the phones email and contacts.<br /><br />All of these complaints combined was enough for me to call the experiment a definite failure.<br /><br />Flash forward to almost a year later; the Droid 2 is released. Everything I read claimed that all of the issues I had with the original Motorola Droid had been resolved in the Droid 2 so I decided to give it another day in court.<br /><br />I picked up the Droid 2 the day it came out (in stores, not online). I'm happy to say, all of the complaints/issues I had with the original Droid were addressed. The keyboard is more defined, corners and edges are rounded a little better and setting up a Corporate Sync account tied my right into exchange and pulled down all emails, calendar items and contacts.<br /><br />I did have a couple of early issues with the Droid 2 but they have not returned. The first day I had it, it dropped two calls (there were no bars when the calls dropped so I had to assume it was on my end). The phone also froze up once that same day.<br /><br />Neither issue has happened again and I've been pretty happy with it. <br /><br />My only complaint now is that of many others; the signal SEEMS to be up and down (even without moving the phone). The consensus is that a software update will probably resolve that. I have 30 days to return the phone for a full refund and to have the new contract voided. If the signal issue isn't resolved before then, the Droid 2 will go back, I will reactive my Blackberry and I will wait for the CDMA iPhone to hit Verizon.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Apple is Becoming the New Microsoft of Old]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Apple-is-Becoming-the-New-Microsoft-of-Old]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Apple-is-Becoming-the-New-Microsoft-of-Old]]></guid>
				<pubDate><![CDATA[ Sun, 18 Jul 2010 19:07:00 GMT]]></pubDate>
				<description><![CDATA[ <br />As you may or may not have read (<a href="http://acoderslife.com/index.cfm/blog/Can-ColdFusion-Aid-in-the-Recovery-of-My-Stolen-Macbook" title="Can ColdFusion Aid in the Recovery of My Stolen Macbook">Can ColdFusion Aid in the Recovery of My Stolen Macbook</a>) I had a break-in a few months ago and lost a couple of Macbooks in the process.<br /><br />I called Apple to see if they kept any kind of check on serviced laptops against the NCIC database. After explaining three times that I was not trying to get them to give me my serial number but only wanted to know if they checked serial numbers, they finally said, "Absolutely not". The reasoning was that they were more concerned with the speed of the service requests and did not want to waste the time of searching a database of stolen serial numbers.<br /><br />Apple would rather service your stolen laptop under your Apple Care plan for a thief in a speedy manner than help catch the thief? After mentioning that, the new reason was that they simply "just weren't setup to do that".<br /><br />I only have one question, WTF Apple? <br /><br />I know people who have bought used laptops off of eBay and Craigslist to only end up in a local mom and pop comp shop for repairs. Instead of getting it repaired, they were told that the shop would not service it because the serial numbers came back as stolen and that the police were being called.<br /><br />If Jimbob can look it up why can't Apple? Pawn shops check serials against the NCIC database every day. I guess Apple would just rather you buy a new [insert shiny Apple product here] instead of recovering your old one. Mo money, mo money, mo money...<br /><br />Every time I deal with Apple lately, I say to myself, "My friend Damon is right! Apple IS the new Microsoft!"<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Can ColdFusion Aid in the Recovery of My Stolen Macbook??]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Can-ColdFusion-Aid-in-the-Recovery-of-My-Stolen-Macbook]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Can-ColdFusion-Aid-in-the-Recovery-of-My-Stolen-Macbook]]></guid>
				<pubDate><![CDATA[ Sun, 18 Jul 2010 18:07:00 GMT]]></pubDate>
				<description><![CDATA[ <br />Back in February, someone broke into our house while we were at work (paying for all of the stuff they were stealing!). They kicked the door in and made off with a ton of stuff. They ripped flat screen TVs off of the wall mounts, took a Playstation 3, an XBOX 360, a PSP, tons of games and accessories, and two Macbooks. <br /><br />One of the laptops was my new Macbook Pro (solid state drive and all!). The other laptop was my wife's Macbook Air. Obviously I reset all of my passwords when I realized the laptops were gone. But I left one password, the password on the AIM account for the Macbook Air. iChat was set to auto-login with the saved password so I figured, why not just leave it and see if it ever logs on. It was a long shot of course but I had nothing to lose. They'd still need to know the password to change it (or know how to pull it out of the keychain).<br /><br />Last night someone finally signed on with the stolen Macbook Air. I quickly put together a ColdFusion template to dump the CGI scope out into an email to myself and then redirect to some recent photos on my website. Once I uploaded it to the site (and tested it out), I struck up a conversation with the person on the other end of the AIM account. I said something like, "Hey, just got the new photos up, check them out". People just can't seem to resist clicking links, especially when there are pics involved, so I was able to quickly and easily get their IP address and proof that they were indeed on a Mac.<br /><br />Now, my insurance company has already replaced all of my stuff. My insurance company was absolutely great in the process (Thank you Nationwide for not making the process one of the nightmare stories that you hear from others). I am pretty sure that the person who stole the stuff is already in jail. They caught someone who admitted to breaking in to many of the houses around mine but he wouldn't admit to my house. (I have a funny theory about that which I'll save for the comments or another time) So at this point, my only motivation is that of trying to find the mother-load of stolen goods that were taken. It would all obviously belong to the Insurance company (and rightfully so since they have paid for it all) but I'm on vacation and what else do I have to do right?<br /><br />After talking to the person who logged on with the stolen laptop, I am pretty sure that they are just someone who bought it after the fact; possibly without even knowing it was stolen. Furthermore, after talking to them, I really got the impression that they were a kid.<br /><br />So as I said, I've got my stuff back already. That being the case, I'd feel pretty bad about taking a laptop away from a kid... even from a kid whose parent(s) are so cheap that they'd turn their kid into a criminal by buying them stolen goods to save money (possession of stolen property is a crime after all). <br /><br />Of course I may be completely wrong and it's not a kid at all. But regardless, I'd be perfectly willing to let whoever it is KEEP the laptop if any info they provided led to the recovery of some of the bigger items? such as the Macbook Pro or the bulk of the remaining items.<br /><br />If they sign on again, I hope that I'm able to get them to read this and that they are willing to work something out. If not, then I guess I have no choice but to turn their account information over to the detective on the case. I started to do that already last night but he was on vacation!<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ So Far, So Bad for Outer Beaches Realty]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/So-Far-So-Bad-for-Outer-Beaches-Realty]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/So-Far-So-Bad-for-Outer-Beaches-Realty]]></guid>
				<pubDate><![CDATA[ Mon, 12 Jul 2010 14:07:00 GMT]]></pubDate>
				<description><![CDATA[ <br />Angie and I finally took a vacation! Sure, we have had plenty of vacations but it has been many years since we actually went somewhere alone for more than a couple of days. We decided to rent a house in the NC Outer Banks. We found a place with a decent price for a week that LOOKED clean and was non-smoking, so that is where we are right now. We've been to the Outer Banks before and loved it so we just wanted a place to relax while we were here and not actually out doing things. We found what we thought we were looking for through Outer Beaches Realty in Avon.<br /><br />We counted the days down and inevitably reached 0, packed the car and headed out. Our official check-in time at the house was 6pm since the claim was that they took great pride in the cleanliness of the house and might not be done before then.<br /><br />What we weren't fine with was the condition of the house when we got here. Regardless of how clean it would have been, Angie would have still cleaned a little, but she would have cleaned things no one else would ever think to clean; remote controls, door handles, even the handle on the recliners. Unfortunately, those were far from the only things that needed to be cleaned.<br /><br />We've wasted a ton of air freshener trying to cover up the musty old smoke smell. The kitchen was filthy and the counters not even wiped off, there was a roach motel in every corner of the place? even on the counter. Have these people ever heard of bug bombs? If you have a bug problem, fumigate when there is no one scheduled to be in the place for a couple days, don't put those disgusting things all over! They will need to buy more because they are all in the trash now.<br /><br />I'm afraid to walk on the carpet, it looks like it might be alive. The toilets had the little paper sanitary wraps around the lids like they do in hotels, the only difference is that in most hotels, they actually CLEAN the toilets before they put those on them.<br /><br />So we spent our first night cleaning so we wouldn't be completely miserable for the rest of the week. Fine, we will move on and "bring it up" when we check out.<br /><br />You thought I was done didn't you? This morning, we woke up to a contractor right outside of the window working on things outside. Needless to say, I had to go outside and ask him in a polite way, "WTF? Finish what you are doing and leave". We didn't come on vacation and pay as much as we did to clean and deal with contractors. We specifically came to NOT do those things.<br /><br />We still love the Outer Banks and there is plenty to do outside of the house that will keep us here for the duration but as of right now, I would never rent from Outer Beaches Realty again nor recommend anyone else do so.<br /><br />There is a much larger list of issues than I've put here (and I have pictures to prove it... I'll post those eventually) but you get the idea.<br /><br />I'm signing off for now; we need to take showers so we can get out of this house for the day but, as with everything else here, we have to clean that before we use it too.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Careful not to innovate yourself a new security hole]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Careful-not-to-innovate-yourself-a-new-security-hole]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Careful-not-to-innovate-yourself-a-new-security-hole]]></guid>
				<pubDate><![CDATA[ Tue, 15 Jun 2010 22:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br />A friend sent this link today: <a href="http://aralbalkan.com/3274" title="http://aralbalkan.com/3274" target="_blank">http://aralbalkan.com/3274</a>. The author of the article describes the password reset method as the best he as ever seen. I like the fact that the developer was thinking outside of the box and trying to come up with new innovative ways of resetting passwords but I personally think this  one needs to be revisited ASAP.<br /><br />As Aral described in his post, the method requires that you click the "Forgot Password" link, enter your email address and new password then wait on a link to be emailed to you. When you click the link, your password is reset automatically. You aren't logged in, the password is just changed.<br /><br />My problem with this is that when most people see an email from a trusted site that contains links, they tend to click those links. So, in this case, if I knew your email address, I could have a reset link sent to you. If you clicked that link, your password would be changed to the password that I defined. Basically, this would lock you out of your account until you reset the password again. If I managed to log in to the account before you were able to reset the password (or before you even realized you needed to), I could change the email address. Once that has been done, you no longer have access to your account or a means of regaining that access. Essentially, all your account r belong to me :-)<br /><br />If you have ever used the forgot password feature on this site, you have seen my favorite method. I won't claim it is the best because I think each feature needs to fit it's application but I will claim it is the easiest method I've used.<br /><br />When you use the forgot password feature on Acoderslife.com, you just enter your email address. The link you receive in your email address logs you into your account and immediately takes you to your profile page. From there, you can change your password with a normal profile update. Simple, quick and easy.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ If Apple had an iMantra, It Would Be ''All or Nothing'']]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/If-Apple-had-an-iMantra-It-Would-Be-All-or-Nothing]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/If-Apple-had-an-iMantra-It-Would-Be-All-or-Nothing]]></guid>
				<pubDate><![CDATA[ Mon, 14 Jun 2010 02:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br />I recently decided that backing my photos up online was probably in my best interest. Since I use a Mac and iPhoto, I decided to give MobileMe a shot. It seemed like the obvious first choice since it allowed me to do what I wanted right from iPhoto. <br /><br />Honestly, I was unimpressed. Maybe it is because a lot of the cooler stuff in MobileMe requires an iPhone (which Verizon will apparently never get! Ok, ok, no Verizon/iPhone tangents). But not only was I unimpressed, I was quite shocked that my only option with Apple for publishing my photos online was MobileMe, which comes with a ton of other features... which all together cost $100 a year for the MINIMUM package!<br /><br />There is no scaled down version or other service for just iPhoto and publishing your photos. Sure, you could use flickr or something else but I'm not looking to share, just store for safe keeping.<br /><br />I'm starting to notice an "All or nothing" overpriced Apple trend. Sure, you can have iDisk storage or online photo album publishing but it comes with all this other stuff (most of which is for the iPhone) so you have to pay for it all. "What? Don't have an iphone? Oh well, all or nothing!"<br /><br />Isn't that what happened to Australian buyers of the iPad? Stores were refusing to sell the iPad without a myriad of unneeded and unwanted accessories. The stores claimed it was Apple policy... "all or nothing!"<br /><br />I've switched back to Picasa for obvious reasons. The 1gb free they give you is, of course, not enough space for all of my photos but $5 a year for 20gb is more than acceptable to me. Incidentally, 20gb is also what you get with the minimum MobileMe package... for $95 more!<br /><br />The switch BACK to Picasa was even easier than the switch from Picasa to iPhoto. The Mac version of Picasa even used the iPhoto Library as an initial import source.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Melvins make the pop charts... no really.]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Melvins-make-the-pop-charts-no-really]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Melvins-make-the-pop-charts-no-really]]></guid>
				<pubDate><![CDATA[ Fri, 11 Jun 2010 00:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/1f7cd17a21726b67e3ba0d3c5a5e0340.jpg" alt="King Buzzo" align="left"> For the first time since the band formed nearly 3 decades ago, Melvins have managed to find themselves on the top 200 Billboard chart (barely)! Their latest album, Bride Screamed Murder, edged its way into the 200 spot with only 2,809 record sales! That should tell you quite a bit about how the Interwebs has affected the music industry.<br /><br />I love everything these guys have done over the years and they only get better and better. How could they not now that the band includes all two members of Big Business?! If you have not heard Big Business outside of Melvins, do yourself a huge favor and check them out immediately. (Buy it, don't steal it! You should only steal music from bands that have Lica and Metal in their names.)<br /><br />Now that Melvins includes Coady and Jared, I could die happy if there was another Fantomas/Melvins Big Band! Yes... I am one of the many people that thinks adding Mike Patton to ANYTHING makes it more awesomer.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Changing the Website Identifier in IIS 6]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Changing-the-Website-Identifier-in-IIS-6]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Changing-the-Website-Identifier-in-IIS-6]]></guid>
				<pubDate><![CDATA[ Thu, 10 Jun 2010 23:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br />In the daily dev environment that I use, there are a number of websites on a single IIS 6.0 installation and more are added regularly. Since I like to script as much as possible as well as do any tasks that I can from the command line, I like for my IIS website IDs to NOT be the normal, looong numeric value. Eg: 1234567890. It is much easier to read and type when those site IDs are small, sequential numbers. <br /><br />Thankfully, the IDs are easily changed via command line. As small and simple as the command to change the ID is, I never remember it! I always have to look it up. So, I figured what better place to write myself a note than my own website.<br /><br />To change a IIS Website ID, you will need the AdminScripts installed. By default, they are usually found in C:\inetpub\AdminScripts. So just open a command line and CD to C:\inetpub\adminscripts (or to wherever your Admin Scripts are found)<br /><br />Now, to change the website ID of a site that currently has 1234567890 as the ID to an ID of 2, you would use the following command:<br /><br /><pre>cscript adsutil.vbs move w3svc/1234567890 w3svc/2</pre><br /><br />That's it. Pretty simple huh?<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ New iPhone 4 announced but still no Verizon date]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/New-iPhone-4-announced-but-still-no-Verizon-date]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/New-iPhone-4-announced-but-still-no-Verizon-date]]></guid>
				<pubDate><![CDATA[ Tue, 08 Jun 2010 02:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br />The iPhone 4 was announced at the <a href="http://www.pcworld.com/article/198219/wwdc_apple_announces_the_iphone_4.html" title="WWDC" target="_blank">Apple 2010 Worldwide Developers Conference</a> and it looks awesome. Unfortunately, there is STILL no definitive date as far as when Verizon will get it!<br /><br />While I want the new iPhone REALLY bad, nothing is good enough to make me want to switch to AT&T.<br /><br />I guess I'll just hold on to my Blackberry until the day finally comes when I can walk into Verizon and say, "One new iPhone please".<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ iPhoto Books are GREAT Mother's Day Gifts]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/iPhoto-Books-are-GREAT-Mother-s-Day-Gifts]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/iPhoto-Books-are-GREAT-Mother-s-Day-Gifts]]></guid>
				<pubDate><![CDATA[ Sun, 06 Jun 2010 16:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/0b5cd6a7746b99423b1bf098bdfecd14.jpg" alt="Back of the iPhoto Book" align="left">Since I can remember, my photo management and organization software of choice was Picasa. It wasn't long after I received my first Mac that I switched to iPhoto. I know Picasa has all the online features but those aren't things I ever used anyway.<br /><br />So I had been using iPhoto for well over a year and had never noticed the icons across the bottom of the screen (Book, Calendar, Card). Then I received the April edition of the Apple Insider. The entire email focused on creating photo books with iPhoto (just in time for Mother's Day of course).<br /><br />Considering that my mom's house had recently burned down and she lost pretty much everything, including a life's worth of photos, I thought this was the perfect Mother's Day gift; I couldn't have been more right. It was honestly the best gift I ever gave my mom. (That's according to her, not me)<br /><br />So the next time you can't think of a good Mother's Day gift, remember that iPhoto has this feature.<br /><br />I would write up a how-to but there really is no need since Apple always does a great job with their tutorials.<br /><br />This link WAS geared towards Mother's Day, but today when I clicked it, it was geared towards Father's day. Nevertheless, be sure to visit the <a href="http://www.apple.com/ilife/iphoto/print-products.html" title="iPhoto Print Products" target="_blank">iPhoto Print Products</a> page when you are ready to create the perfect gift for your parents or grandparents.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Converting Text From UTF-8 to ISO-8859-1]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Converting-Text-From-UTF-8-to-ISO-8859-1]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Converting-Text-From-UTF-8-to-ISO-8859-1]]></guid>
				<pubDate><![CDATA[ Sat, 05 Jun 2010 12:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br />Recently, I had a need to convert text from UTF-8 to iso-8859-1. Actually, the need was to come up with a more efficient way of doing so. I'll spare you the why, when and where and get right to the how.<br /><br />After digging into the java.nio.charset.Charset, I came up with the following function. (commented for your viewing pleasure)<br /><br /><div class="codeblock"><pre><br /><span style="color:#800000">&lt;cfscript&gt;</span><br />	function <span style="color:#0000ff">convertutfToIso</span><span style="color:#000099">(</span>str<span style="color:#000099">)</span><br />	{<span style="color:#9a9a9a"><em><br />		//var a struct to store all of our stuff in</em></span><br />		var local = {};<span style="color:#9a9a9a"><em><br /><br />		//Create an object of java.nio.charset.Charset</em></span><br />		local.charSetObj = <span style="color:#0000ff">createobject</span><span style="color:#000099">(</span><span style="color:#006600">"java"</span>, <span style="color:#006600">"java.nio.charset.Charset"</span><span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br /><br />		//What the text is currently</em></span><br />		local.convertFrom = <span style="color:#0000ff">local.charsetObj.forName</span><span style="color:#000099">(</span><span style="color:#006600">'iso-8859-1'</span><span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br /><br />		//What to convert the text to</em></span><br />		local.convertTo = <span style="color:#0000ff">local.charsetObj.forName</span><span style="color:#000099">(</span><span style="color:#006600">'utf-8'</span><span style="color:#000099">)</span>;<span style="color:#9a9a9a"><em><br /><br />		//return the converted text</em></span><br />		return <span style="color:#0000ff">local.convertTo.decode</span><span style="color:#000099">(</span><span style="color:#0000ff">local.convertFrom.encode</span><span style="color:#000099">(</span>str<span style="color:#000099">)</span><span style="color:#000099">)</span>.ToString();<br />	}<br /><span style="color:#800000">&lt;/cfscript&gt;</span><br /><br /></pre><!-- Coloring took 3 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 0 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 0 ms.
 function names 1 ms.
 all other tags 1 ms.
 css 0 ms.
 re-added strings and comments 0 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- retrieved from cache --></div><br /><br />Now anytime that I need to ensure some provided text is iso-8859-1, I can simply convert it like so:<br /><br /><div class="codeblock"><pre><br /><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> isoText <span style="color:#0000ff">=</span> <span style="color:#0000ff">convertUtfToIso</span><span style="color:#000099">(</span>utfText<span style="color:#000099">)</span> </span><span style="color:#800000">/&gt;</span><br /><br /></pre><!-- Coloring took 2 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 0 ms.
 quotes within quotes 0 ms.
 2 quotes within quotes 1 ms.
 lt and gt within strings 0 ms.
 numbers and operators 0 ms.
 quoted strings 0 ms.
 function names 0 ms.
 all other tags 1 ms.
 css 0 ms.
 re-added strings and comments 0 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- retrieved from cache --></div><br /><br />This worked well on some rather large chunks of text with many characters that needed to be converted.<br /><br />Of course you can change the "to" and "from" to suit your needs but that should get you started.<br /><br />Enjoy.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Connecting to Windows Shares form OS X]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Connecting-to-Windows-Shares-form-OS-X]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Connecting-to-Windows-Shares-form-OS-X]]></guid>
				<pubDate><![CDATA[ Fri, 04 Jun 2010 02:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br />I've been playing around with my new camera which has led to a lot of file moving/copying. I'm always paranoid that I'm going to lose a picture so I have quite a few places where backups of them are mirrored.<br /><br />Anyway, I, of course, have to import all of my images into iPhoto on my Macbook. So tonight when I was about to do so, it brought up something that happens to me quite often.<br /><br />I have a few PCs at home; one of which is my main file server where all of my images are primarily stored. So I opened up iPhoto and hit Import and wouldn't you know it... there were no shares listed... again!<br /><br />I opened Finder to see if they were there and, once again, there wasn't even a "SHARED" entry on the left panel when there should be about eight of them.<br /><br />So I figured if my Windows shares keep disappearing, then it must be happening to others as well. So, here is what to do when it happens to you!<br /><br />Open up Finder and either select Go > Connect to Server form the file menu, or simply hit Command + K. This will open up the "Connect to Server" window like the screen shot below.<br /><br /><img src="http://acoderslife.com/images/articles/fb8ef1053c826693ec4f2134d688364a.jpg" alt="Connect to Server (Command+K)" align="center"><br /><br />If you are connecting to a normal Windows share, as we are in this example, enter the location in the format of a URL but use smb as the protocol. For example, I wanted to connect to my file server which is 192.168.0.10. So, I entered smb://192.168.0.10 in the "Server Address:" box and hit Connect.<br /><br />Once you hit connect, OS X will attempt to connect to the server and return a list of available shares to connect to. Pick the share you want and voila! You should be connected. You should now see the share listed under "SHARED" on the left side of Finder.<br /><br />Alternatively, if you know the share you want, you can specify it in the Server Address: box and skip the selection part of the process. For instance, I knew the share I was looking for was called photoBackups. I could have just easily entered smb://192.168.0.10/photoBackups and hit connect. This would have connected directly to that share without presenting a list of shares to choose from.<br /><br />I hope is just as simple as that in your case as well. It works for me every time. Now If I could just figure out why they keep disappearing...<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ BHCaptcha 2.0 Documentation]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/BHCaptcha-2-0-Documentation]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/BHCaptcha-2-0-Documentation]]></guid>
				<pubDate><![CDATA[ Tue, 01 Jun 2010 21:06:00 GMT]]></pubDate>
				<description><![CDATA[ <br />As you can see, Acoderslife.com has undergone a complete overhaul. The launch of the new site has rendered a number of old links and images useless.<br /><br />Since I've launched the new site, to my surprise, I have had 3 requests for the old BHCaptcha documentation. So I've decided to put up a downloads section to make such things available once again. While I won't be updating BHCaptcha, I'll be putting the latest version back online for download (complete with documentation). I will also put back all of the image/letter packages.<br /><br />Until then, here is a direct <a href="http://acoderslife.com/index.cfm/downloads/588a8c6cbd43470f8979930ca3ea5c3b" title="BHCaptch 2.0 Docs">link to the BHCaptcha 2.0 documentation</a>.<br /><br />Enjoy.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Mast head image bug]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Mast-head-image-bug]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Mast-head-image-bug]]></guid>
				<pubDate><![CDATA[ Thu, 27 May 2010 02:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br />This is just about to drive me crazy. I like the random header image at the top of this site but something with the way I'm doing it is causing a weird bug. Occasionally, when you load the page, you may notice that the image doesn't change. Since the images are random, it could, of course, be that the same image just happened to come up twice. However, there are quite a few images so the odds are against that happening as often as it appears to.<br /><br />When it does happen, you can scroll down slightly so top half of the image is off the screen and the bottom half is still visible. Then, if you scroll back up, you will notice that the top half of the image is a different image all together! It's like it just isn't repainting the image correctly or something.<br /><br /><img src="http://acoderslife.com/images/articles/3ad830036f442c6163b9d06e042dcaf5.jpg" alt="Header image bug" align="center"><br /><br />Sometimes, although rarely, you can see something similar but vertailly. Meaning, when the page loads, the left side of the header is one image and the right side is another.<br /><br />I've seen this issue happen in a few different browsers (chrome, firefox and safari) from 3 different computers (a Mac and two PCs) and on two different servers (CF8 and CF9).<br /><br />Basically, the process to grab the images is like this. I have a template called mastimages.cfm (or something like that) and I have a directory of images to use in the header. Mastimages.cfm will get a directory listing of all the images and choose a random one to use. Then, with CFIMAGE, the image is read into an object and watermarked. The final image is then served up with cfcontent. The end result is a CF template that is always a random image. <br /><br />Now in the stylesheet, I can just do this to display the random image:<br /><br /><pre>.someclass {background:url(/masthead.cfm) no-repeat;}</pre><br /><br />This is working great except for this random issue.<br /><br />If you have ever seen this before and know of a solution, <a href="http://acoderslife.com/index.cfm/contact/" title="contact me">please let me know</a>. I hope to have a comment form up for these posts soon.<br /><br />If I come up with a reason or a solution (hopefully both) I'll be sure to post it.<br /><br />EDIT:<br />Now that I have code blocks setup, I figured I'd post the original code that had the issue... commented for your viewing pleasure of course.<br /><br /><div class="codeblock"><pre><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- get a directory listing of all the available images ---&gt;</span><br /><span style="color:#800000">&lt;cfdirectory name=<span style="color:#0000ee">"variables.mastImages"</span> action=<span style="color:#0000ee">"list"</span> directory=<span style="color:#0000ee">"#expandPath('/images/mastimages/')#"</span> filter=<span style="color:#0000ee">"*.jpg"</span> /&gt;</span><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- pick a random number between 1 and the number of images from the directory listing ---&gt;</span><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> variables.mastImg <span style="color:#0000ff">=</span> <span style="color:#0000ff">randRange</span><span style="color:#000099">(</span>1,variables.mastImages.recordcount<span style="color:#000099">)</span> </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- create an image object from the random image ---&gt;</span><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> variables.objImage <span style="color:#0000ff">=</span> <span style="color:#0000ff">imageRead</span><span style="color:#000099">(</span><span style="color:#0000ff">expandPath</span><span style="color:#000099">(</span><span style="color:#006600">'/images/mastimages/'</span> &amp; variables.mastImages[<span style="color:#0000ee">'name'</span>][variables.mastImg]<span style="color:#000099">)</span><span style="color:#000099">)</span> </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- create an image object from the water mark image file ---&gt;</span><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> variables.objWatermark <span style="color:#0000ff">=</span> <span style="color:#0000ff">imageNew</span><span style="color:#000099">(</span><span style="color:#0000ff">expandPath</span><span style="color:#000099">(</span><span style="color:#006600">'/images/watermark.png'</span><span style="color:#000099">)</span><span style="color:#000099">)</span> </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- turn on antialiasing for better wuality images ---&gt;</span><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> <span style="color:#0000ff">imageSetAntialiasing</span><span style="color:#000099">(</span>variables.objImage,<span style="color:#006600">"on"</span><span style="color:#000099">)</span> </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- set the transparency of the watermark so it doesnt stand out too much ---&gt;</span><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> <span style="color:#0000ff">imageSetDrawingTransparency</span><span style="color:#000099">(</span>variables.objImage,40<span style="color:#000099">)</span> </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- paste the watermark object onto the bottom right corner of the main image (offset bottom-right by 5 pixels) ---&gt;</span><br /><span style="color:#800000">&lt;cfset</span><span style="color:#000000"> imagePaste	(	variables.objImage<br />			, 	variables.objWatermark<br />			,	(<span style="color:#0000ff">variables.objImage.getWidth</span><span style="color:#000099">(</span><span style="color:#000099">)</span> - (<span style="color:#0000ff">variables.objWatermark.getWidth</span><span style="color:#000099">(</span><span style="color:#000099">)</span> + 5))<br />			,	(<span style="color:#0000ff">variables.objImage.getHeight</span><span style="color:#000099">(</span><span style="color:#000099">)</span> - (<span style="color:#0000ff">variables.objWatermark.getHeight</span><span style="color:#000099">(</span><span style="color:#000099">)</span> + 5))<br />			) </span><span style="color:#800000">/&gt;</span><br /><br /><span style="color:#333333;background-color:#ffff99">&lt;!--- finally, serve the image with cfheader/cfcontent ---&gt;</span><br /><span style="color:#800000">&lt;cfheader name=<span style="color:#0000ee">"Content-Disposition"</span> value=<span style="color:#0000ee">"inline; #variables.mastImages['name'][variables.mastImg]#"</span>&gt;</span><br /><span style="color:#800000">&lt;cfcontent type=<span style="color:#0000ee">"image/jpg"</span> reset=<span style="color:#0000ee">"true"</span> variable=<span style="color:#0000ee">"#imageGetBlob(variables.objImage)#"</span> /&gt;</span><br /><br /></pre><!-- Coloring took 41 msecs.:
 ampersands and tabs 0 ms.
 stripped all comments 2 ms.
 quotes within quotes 21 ms.
 2 quotes within quotes 11 ms.
 lt and gt within strings 1 ms.
 numbers and operators 0 ms.
 quoted strings 2 ms.
 function names 1 ms.
 all other tags 2 ms.
 css 0 ms.
 re-added strings and comments 1 ms.
 style attributes 0 ms.
 line numbering and/or some last replacements 0 ms.
variables.css_strs = --><!-- retrieved from cache --></div><br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ ColdFusion Webservices and 'non-required' parameters]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/ColdFusion-Webservices-and-non-required-parameters]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/ColdFusion-Webservices-and-non-required-parameters]]></guid>
				<pubDate><![CDATA[ Wed, 26 May 2010 23:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br />So I had this CF web service for single sign-on authentication; it had one required parameter and everything was well with the world.<br /><br />Then came the change request to add three new non-required parameters. Some of you are saying, "Oh, I know where THIS is going.". If so, then... WHY DIDN'T YOU TELL ME?!?! :-)<br /><br />So I added these three new "non-required" parameters like a good little code monkey by setting them to required="false". Then I went off to test everything to make sure it was still functioning as expected. I totally expected no change at all in the test results; after all, I didn't really change any existing functionality right? But as much as love to typo, I had to test it out.<br /><br />I cleared the web service cache and loaded the app to test the web service but I was greeted with the generic "Web service operation "blahblah" with parameters {blahblah} could not be found". So I thought, maybe I have to be explicit with the parameter name now that there are three new non-required parameters. So I changed up the method call to define the parameter name but still... the same error (or close). "Web service operation "blahblah" with parameters {blah={blahblah}} could not be found".<br /><br />After obsessing over whether or not something was cached wrong and finally determining that it was not, i decided that MAYBE if I add a default value to the non-required parameters, that would help... of course it did not.<br /><br />So, feeling like a complete failure, off to The Google I went. after a few rounds of <a href="http://google.com/pacman" title="Pacman" target="_blank">Pacman</a>, I ran a search and came up with <a href="http://www.adobe.com/livedocs/coldfusion/6/Developing_ColdFusion_MX_Applications_with_CFML/webservices5.htm" title="Livedocs" target="_blank">this little gem</a>.<br /><br /><pre>4. The attribute setting required="false" for the cfargument tag is ignored. <br />ColdFusion considers all parameters as required.</pre> <br /><br />WHAT?! Ugh!<br /><br />You cannot, NOT specific a parameter, required or not, in a CF web service call, period. At least not from ColdFusion. I'm not sure if another language would be able to call the method and not specify the non-required parameter values though.<br /><br />What I found most amusing about all of this was that after all these years of writing web services, today was the first time I tried to use a non required parameter; I've apparently always used them all! Waste not, want not right?<br /><br />Another lesson learned.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ VMWare Fusion /dev/vmnet0 bridged connection error]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/VMWare-Fusion-dev-vmnet0-bridged-connection-error]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/VMWare-Fusion-dev-vmnet0-bridged-connection-error]]></guid>
				<pubDate><![CDATA[ Sun, 23 May 2010 22:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br />Since I switched to a Mac, I've used VMWare Fusion to setup my development environments. I love the flexibility of virtual machines and I can always set up an environment to match whatever production topology that I need.<br /><br />I've always used a bridged network connection and it has always worked out great. I usually just close my Macbook when I take a break or whatever. Then when I come back, I just open it up and everything is there and ready to go. Recently however, when I open the macbook, all network connections to the my VM server no longer exist. <br /><br />Clicking on the file menu for VMware Fusion and selecting Virtual Machine > Network Adapter displays the Connect option (which means it is obviously disconnected). Clicking on Connect Network Adapter pops up the error below.<br /><br /><img src="http://acoderslife.com/images/articles/a0714eb7a34b74b13998bb7b2cc7492d.jpg" alt="VMWare bridged connection error" align="center"><br /><br />So far, I've only been able to resolve this one way and only temporarily (until the next time I put the macbook into sleep mode) That way is to restart the VMWare Fusion daemon and disable and reenable the network connection on the VM Windows server (or reboot it).<br /><br />The following command will restart the daemon:<br /> <br /><pre>sudo /Library/Application\ Support/VMware\ Fusion/boot.sh --restart</pre><br /><br />After running the boot.sh restart command, just disable and enable the network connection on the VM machine (or reboot it)<br /><br />Once I discover a permanent solution, I'll post it. I can only assume this was related to a recent apple software upgrade so who knows, maybe another will fix it soon.<br /><br />FYI, my current version of VMWare is Version 2.0.1 (128865).<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ You closed that program... right?]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/You-closed-that-program-right]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/You-closed-that-program-right]]></guid>
				<pubDate><![CDATA[ Sun, 23 May 2010 03:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/3d297a7945d92734f496eced80cb9749.jpg" alt="Dock Dock Goose" align="center"><br />If you come from the world of Windows as I did, you are used to closing an application by clicking X button found in the top right corner of of most windows.<br /><br />There is an X button at the top of most windows in OSX as well and when you click that X, the window disappears. For a while, I assumed that this was exiting the application but that apparently is not always the case.<br /><br />If you take a look at the dock menu, each application that is running has a small light under its' dock icon.<br /><br />So how do you close it for real? There are a couple of ways. I tend to use the Command + Q shortcut when I'm done working with an application. In almost all cases, this shortcut will exit the application completely. This is the shortcut for almost every applications 'Quit' option when you click the applications name in the file menu across the top of the screen.<br /><br />Another method is to simply "right click" on the applications icon in the dock menu at select Quit from the menu.<br /><br />So... keep those resources available by closing your apps!<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Macbook Trackpad Shortcuts]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Macbook-Trackpad-Shortcuts]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Macbook-Trackpad-Shortcuts]]></guid>
				<pubDate><![CDATA[ Sun, 23 May 2010 01:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/7391d2152cd4d9615952c2e03cf08818.jpg" alt="Trackpad System preferences" align="right">If you haven't realized it yet, the trackpad on your Macbook can really save you some time with its built in, multi-finger features. Of course, there are the typical one finger options such as one finger touch to click. You can even make the bottom right corner act like the right click feature of a typical mouse. All of these settings can be found under System Preferences > Hardware > Trackpad.<br /><br />So you knew all about the normal one finger click or even the two finger "right click"? Did you know about the other two finger features? How about the three or even four finger features?<br /><br />One of the cooler things about working with images on your Macbook is that you can rotate images and even zoom in and out using the trackpad and two fingers. Try it. Open an image in Preview and then touch the mouse pad with two fingers. Pull your fingers apart across the trackpad or pinch them together to zoom in and out. You can even rotate your fingers to spin images around.<br /><br />The zoom in and out method can also be used to zoom in and out on alot of other things. Try it in Firefox for example. Also, try it on your desktop to see your icons get larger or smaller.<br /><br />Two fingers up and down in scrollable windows can also scroll for you. Again, another useful tip for your browser.<br /><br />Another scrolling window tip is to use three fingers on the trackpad. Move them up to jump to the top of the window. Move them down to jump to the bottom.<br /><br />Again with three fingers, you can swipe left or right on the trackpad in a browser to navigate forward and backwards in your browser's history. That sure beats clicking the forward and back buttons!<br /><br />Last, but definitely not least, if you use Expose as often as I do, you can really appreciate these. With four fingers on the trackpad, move up, down, left or right to see what happens.<br /><br />Moving four fingers left or right brings up the same app switching method that you would see if you hit Command + Tab then you can either use the arrow keys or switch to one finger to select an application. Moving four fingers down across the trackpad will spread all of your open windows out so you can see them all. Clicking on one or using the arrows to highlight a window then hitting Enter will bring that window to the front. Just move four fingers back up to revert to where you were.<br /><br />Finally, moving four fingers up across the trackpad will part the sea of windows so you can get a clear view of your precious desktop. Just move your four nubbins back down across the trackpad to go back to where you were.<br /><br />Pretty cool huh? And that is just the trackpad!<br /><br />Be sure to check out all of the options in the system preferences to get things setup just right for you.<br /><br />Enjoy!<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ So I finally switched to a Mac]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/So-I-finally-switched-to-a-Mac]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/So-I-finally-switched-to-a-Mac]]></guid>
				<pubDate><![CDATA[ Sat, 22 May 2010 20:05:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/91438d299016671ca8bb04290406f4d5.jpg" alt="Mac OSX" align="left">This article is a bit late but about a year and a half ago I got my first Mac. I did some work for a friend and instead of paying cash, he paid me in a couple of new Macs (yes, as in more than one)<br /><br />I ended up with a 15" Macbook Pro 164gb SSD and I got my wife a 13" Macbook Air. We both loved those things. My wife even enjoyed the switch, which says a ton about how easy a Mac is to use.<br /><br />So you are probably wondering why I said "loved" as in past tense. We had a break-in and among the many things stolen were both macs... ugh! I had the serial number for nearly everyhting that was taken... but do you think a single item was recovered? NO!... but back to the point...<br /><br />I couldn't wait for the insurance to come through on most of the things that were stolen. I went ahead and replaced TVs and gaming consoles but the first two things to get replaced were the Macs.<br /><br />So I'm back in business and absolutely love it! I do all of my personal development on it. I just run a windows server with CF, IIS and SQL Server on it inside of VMWare Fusion.<br /><br />I talked my mom into getting a Macbook pro. It was her first Mac as well and she loves it just as much as I do. iChat video is her favorite thing about it I believe. Being that she lives in Florida and I in North Carolina, we spend quite a bit of time on video chat. We also do alot of desktop sharing so I can solve problems for her rather than talk her through them. The good thing about iChat desktop sharing is that, unlike Remote Desktop, the user can watch everything you are doing (like VNC).<br /><br />Now if I can just convince management at work to let me switch to a 27" iMac there, I'll be all set. :-)<br /><br />So, now that I'm an official Mac user, people ask me things about it all the time. How do i do this? How do I do that? Where are the home and end keys?? (command + arrow keys by the way... when connected to Windows via RDP, it is FN and the arrow keys) So I've decided to start logging all of the tips/tricks that I learn right here on the website (for when I forget them). So keep an eye out for the Mac logo. I'm sure I'll have a tip in here for completely hosing a Mac sooner or later :-)<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Gone Phishing]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Gone-Phishing]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Gone-Phishing]]></guid>
				<pubDate><![CDATA[ Wed, 14 Sep 2005 11:09:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/a0161b0bbe7396b8bfd7356de4aa56ce.jpg" alt="Gone Phishing. Back at noon...ish" align="left">When I woke up this morning I found a PayPal phishing scam in my email. Now, of course I get these on a daily basis just like the rest of the world but I usually don?t see them because they go straight to my junk folder. This particular email, however, had a special aura about it because it was sitting right in my precious inbox. So being the curious cat that I am, I decided to go take a look at the quality of the scam. To my surprise, this wasn?t the normal, obvious fake form that most people spot with the naked eye upon first sight? no, no, no friends and neighbors. This guy was obviously skilled in the dark side of the web development force. This scam would be the one that your grandmother fell for without a second thought; the one that your, somewhat Internet savvy, cousin wouldn?t catch until it was too late; the one that you yourself might only catch half way through populating the form with your life history.<br /><br />So, of course, I couldn?t just let this stand. I fired up my Linux box and went backdoor hunting on the machine running the mock-up form but in the end, I turned up nada. Most likely, our phisherman was not the owner of this machine. He probably found some poor, unsuspecting guys unsecured box and had his own dirty way with it. But...If our phisherman got in remotely, either I?m getting rusty or he covered the hole well. I personally like to believe the latter.<br /><br />Determined that it wasn?t over, I was trying to find another way and all of the sudden the skies opened up, a ray of light shone down on my web server and a harmonious voice called out in song, ?ahhhhhhhhhhhh?. (I think I even saw a rainbow at one point). Then out of nowhere, the voice turned to a grumbling, drunken growl and said, ?HEY STUPID! *hiccup* Just copy the form and put it to better use *hiccup*. ?Why not!?, I exclaimed. (This was about the time that I realized I was talking to myself)  I?ve done it plenty of times before but I was awake all those times. So I inhaled a bowl of Lucky Charms and got to it.<br /><br />I started digging through the guy?s code and pulled his form out of a not-so-well-hidden I-frame and saved it on my web server as a trusty ol? ColdFusion file under the brilliant name of ?getajob.cfm?. Man, I?m clever? Then I called upon one of my favorite UDF, <a href="http://cflib.org/udf/randStr" title="randStr" target="_blank">randStr</a>, to generate some useless data with which to populate the new form. I began generating random first and last names, CVV numbers, PIN numbers, expiration dates, email addresses and of course, some very believable, 16 digit credit card numbers. Thanks to a recent project I did; I have a database full of every state, county, city and zip code in the United States so I also pulled random cities, states and zips to populate that portion of the form.<br /><br />At this point, I had a form structure identical to the phisherman?s form. Only, my form was pre-populated with completely random, useless data every time the page was refreshed. Not to mention, I didn?t have to write an action page for the form to submit to. I?d like to take this opportunity to thank the considerate phisherman for taking care of the action template and allowing me to, so easily, utilize it for my own intentions. I set the action attribute of the form tag to his action template?s full URL and opened the form up in a browser. After I submitted it a couple of times to make sure the form was doing what I had anticipated, it was time for some automation.<br /><br />I fired up <a href="http://www.macros.com/" title="MacroExpress" target="_blank">MacroExpress</a> (Don?t ever leave home without it!) and created a macro to harness the processing power of my surrounding, unoccupied PC?s. Three separate computers (plus, my firend's computer was added to the mix later on), all with the same macro, have been continuously adding random data records to the phisher?s precious database. As of the time of this writing, the total number of records that the macro had added was just over 15,000. I only wish I could see the guy?s face when he opens up his honey pot to find it full of crap!!. <br /><br />There are no similarities in the data I?ve added so there will be no easy way to separate my records from any unsuspecting user?s real information. We already know the guy is lazy or he?d have a job rather than trying to rip off hard working, honest people. My bet is that he?ll just trash the database rather than sort through it. He?ll most likely setup shop again and start collecting new data but who knows; maybe he?ll be kind enough to send another email invitation my way when he gets that one setup as well.<br /><br />Now, half of you are saying, ?Cool! I?m going to go try that.? And the other half are saying, ?That?s way too much work for a retaliation to a single scam.?. Actually, it wasn?t much work at all. I invested all of 20 minutes into getting the form setup and writing the macro to take care of the rest. The best part is that it?s reusable. 95% of the forms these scammers use are forms they?ve actually copied from PayPal or EBay (or wherever it is). So the forms are the same for the most part. The next time I get a similar phishing scam in my precious inbox, the odds are that the form fields will be identical. All I?ll have to do is change the action attribute of the form tag to the new scammer?s action template, and voila! It will be adding mounds of useless information to his database too!<br /><br />There?s nothing stopping half of you from doing the same thing I?ve done with this guy?s database. PayPal makes money on every fraud claim you file so I wouldn?t expect any drastic changes in their security measures anytime soon. (I?ll save that rant for another article) Maybe the next time I do this, I?ll let the process go all the way through the final redirect to PayPal before starting the loop over. How could they avoid checking into 15,000+ failed login attempts from the same referring site every day?<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Enter the Captcha]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Enter-the-Captcha]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Enter-the-Captcha]]></guid>
				<pubDate><![CDATA[ Sun, 11 Sep 2005 19:09:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/83465028f186756da6be73aece752211.jpg" alt="I couldn't even read this if I WASN'T blind!" align="left">The dark underbelly of the Internet is increasingly becoming more and more intelligent with every day. The smarter spammers get, the bigger challenge they pose to developers such as me. Spammers are moving forward to conquer more billboard space every time you turn around. The latest craze of these scoundrels is one of turning your web sites comment forms and message boards into their own personal ad space. I, like many people, love to hear what my site visitors think and it?s not always conceivable to make them create an account just to give me their opinions. It?s much easier to simply put a form with the necessities such as name, email and comments. Not easier for me mind you; I have no problem writing a registration form but the majority of surfers aren?t going to take the time to sign up just to give you their opinions or just to say, ?Hello?. A simple form with no registration or verification emails is the best solution for feedback because it?s easy for the user to fill out and hit ?Submit?. That same form, however, is like free candy to a seemingly adolescent spammer and his pet ?bot?. They too find it easy to submit the form, only they don?t submit their suggestions or opinions on how to better your web site or simply what they thought of its content. Instead, they submit it with a barrage of useless links to online pharmaceuticals, male ?member? enlargement supplies or online casinos. Now, they aren?t doing this because they think the majority of your visitors will click those links, they?re doing it to better the status of the sites they link in search engines. For a while, there appeared to be no other solution than to ask our visitors to sign up for accounts which needed to be validated via an emailed activation link.<br /><br />Enter the ?<a href="http://www.captcha.net/" title="http://www.captcha.net/" target="_blank">captcha</a>?. I?m sure you?ve seen captchas in action at some point or another. They normally take the form of an image with a distorted string of text sprawled across them or a picture of a common noun such as cow or bird. Next to the picture will be a form field for the user to type what they see in the image. When you submit the form, your entered text is compared to what is in the image. If they match, the form is submitted successfully. If they do not match, however, the form is not submitted. Captchas were developed so that applications can differentiate between a human user and a bot attempting to use the form for its own evil purposes. For the most part, captchas protect web forms rather well and as the bots get smarter, so does the protection but it?s all at the cost of usability.<br /><br />I remember, not too long ago, a time when developers were most worried about rather or not their applications were up to par with the W3C standards and completely accessible by the hearing and visually impaired. The days of accessibility seem to be fading in the wake of bot protection. I too am guilty of putting more effort into blocking spammers from using my forms for their own personal ads than making sure my applications are completely accessible to the handicap. I even wrote a free CF capcha solution myself but if you use them, then you are just as guilty. I am not saying don?t use them, by any means (we don?t really have much choice right now). I think they are a great response to the bombardment of form submitted ads but I also think that many people suffer from our efforts; efforts that, as I said, not too long ago, were primarily focused on those same people.<br /><br /> The Internet is becoming more and more of an infomercial based billboard for products no one wants. If we don?t do something soon, we <b>will</b> start losing more and more visitors and as a result, we?ll all be out of a job. Personally, I flipped burgers when I was 16 and I don?t plan to go back to that.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Joshua Jackson kills the Coyote Project]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Joshua-Jackson-kills-the-Coyote-Project]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Joshua-Jackson-kills-the-Coyote-Project]]></guid>
				<pubDate><![CDATA[ Wed, 24 Aug 2005 20:08:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/b53c391200b308affcb29de759862103.jpg" alt="Joshua Jackson Announces the end of Coyote Linux" align="left">As a long time user and supporter of <a href="http://coyotelinux.com" target="_blank" title="Coyote Linux">Coyote Linux</a>, yesterday was a sad day. On August 23, 2005, Joshua Jackson announced his <a href="http://coyotelinux.com/news.php?article=202" title="Announcement" target="_blank">plan to discontinue the project</a> completely and will not allow anyone to continue the project under the name ?Coyote?. Claudio Roberto Cussuol, however, will continue the development of the mini, single floppy distribution under a new project name entitled, ?<a href="http://www.brazilfw.com.br/" target="_blank" title="BrazilFW">BrazilFW</a>?. Claudio has worked on the Coyote distribution for quite some time and is the person to thank for Coyote?s easy to use web interface (Not to mention that he is an extremely nice and helpful guy).<br /><br />For those of you that don?t know what Coyote is (or was), it?s a mini distribution of Linux that fits on a floppy and runs solely from RAM. Coyote has been scaled down to only include the essentials for network traffic management which makes it a perfect router/firewall for any size network. Since the distribution is loaded from a floppy disk straight to memory, there is no need for a hard drive, no need for a high end machine with tons of ram and no need for proprietary hardware such as D-link or Linksys router.<br /><br />I am personally running the latest Coyote distribution (heavily modified by yours truly of course) on a Pentium 133 and 64 megs of RAM. (a machine that I dug out of a junk pile) It controls all incoming and outgoing traffic on my network and I couldn?t be more satisfied with the scalability and performance.<br /><br />As I said before, I have supported and used Coyote for quite sometime so it was very disheartening to hear Joshua?s decision to ending the project, especially with the distant, cold manner he used to announce the decision. It is understandable that Joshua has simply lost the time or interest to continue the project but he did start it and it did gain a rather large community over the years. I may be overly sensitive (it?ll be a first) but it seems to me that Josh has not only decided to bow out but also to abandon the community he has spawned. His announcement to close the project made it clear that he was simply tired of dealing with Coyote and it also made it clear that our concerns were not his by informing everyone not to email him about the decision. I somewhat understand that he may not want hundreds or thousands of emails in his inbox begging him to continue or even hundreds of emails thanking him for the time and efforts that he contributed to us all but he also locked the forum thread so no one would be able to reply there either. Sorry Josh., but I think it could have been done with a little more Finesse.<br /><br />It is my opinion that <a href="http://www.brazilfw.com.br/" title="BrazilFW" target="_blank">BrazilFW</a> will grow to be much more than Coyote ever was with Claudio at the helm. He has always been just as heavily involved with support in the forums as he has with the development process and I expect nothing but great things from him.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ CFEclipse 1.2 Released]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/CFEclipse-1-2-Released]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/CFEclipse-1-2-Released]]></guid>
				<pubDate><![CDATA[ Mon, 15 Aug 2005 18:08:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/f1935dde39bce985665c9ba82739d5c1.jpg" alt="CFEclipse" align="left">CFEclispe 1.2 has been released! If you have not yet ventured from your sheltered life of Dreamweaver development, you obviously don?t know what you?re missing. Ok, so maybe you do know you would be missing a design view if you switched but from my extensive experience with Dreamweaver?s design view, it?s not a feature that would be missed any longer than Tom Green?s career took to vanish. I, personally, had nothing but bad experience with the shafty code that the design view generated.<br /><br />Did I mention that CFEclipse was free? Don?t think that people are switching simply because of the price. I own DreamweaverMX and as far as I?m concerned, the rest of its shelf life will be lived out as a coaster.<br /><br />Point being: I completely understand that people do not switch from DW to CFEclipse due to fear of change. I was even one of those people but once I made the switch and gave it a couple of days, there was no reason to go back. <br /><br />Do yourself a favor, and give CFEclipse its day in court! You will thank yourself for it, your wallet will thank you for it, and at $399.00 a pop for Dreamweaver 8, your company will thank you too!<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Blind Giveth and Hawthorne Taketh Away!]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Blind-Giveth-and-Hawthorne-Taketh-Away]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Blind-Giveth-and-Hawthorne-Taketh-Away]]></guid>
				<pubDate><![CDATA[ Thu, 07 Jul 2005 13:07:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/bbbdb7db4726037ac169f519fb2a2d25.jpg" alt="Visit BlindReaper.com!" align="left">On June 21st 2005, the Blind team headed out to their local skatepark in Hawthorne to have a product toss and to hang out and skate with their fans and friends. Of course, when they arrived, there were plenty of kids on deck. Over 150 kids showed up to greet and meet the team, to score some free stuff and most importantly, to skate with the Blind team.<br /><br />The kids weren't the only people who showed up though. The team pulled up in the ice cream truck loaded with free merchandise for the kids but were met by the city's finest instead. Without reason, the team was told to leave the park. No product tossing, no photo ops for the kids, and above all... NO SKATEBOARDING! Am I the only one who sees something wrong with this picture? It's a FREE PUBLIC SKATEPARK... but the team wasn't allowed to stay and SKATE? The kids were deprived of the moment they had been eagerly anticipating since it's announcement.<br /><br />The team was not only told to leave the park, but also told to leave the area all together. When they pulled up the street to park, they were so politely asked again to leave the area but this time with six more units of Hawthorne's finest.<br /><br />Of course you could take the side of the city and preach blindly that 150 kids plus the Blind team and free merchandise could potentially spark riots but then you'd be just as oblivious as the city who thought that depriving the kids of that moment would be less likely to spark something! <br /><br />COME ON HAWTHORNE!! You build a public skatepark for the kids so they'll have somewhere to skate, somewhere that keeps them off the streets, but then you run them all off and back in to the streets, rough them up and even arrest them... why!? A publicity stunt for a free park? No, I doubt it... it's free. That leaves me to believe that Hawthorne is such a safe place to live that there is no REAL crime for the cops to deal with; no REAL criminals to call out all the units for; no REAL thugs to test out all the new cop gear on!<br /><br />Don't get me wrong. I'm by no means anti-authority. I'm just anti-communist. If June 21st 2005 wasn't the busiest night the Hawthorne PD has seen in a while, then maybe Hawthorne IS the safest place in the world to live! Or maybe they just have everyone so scared with the skateboard hating, child browbeating Gestapo bull their city seems to get off on that people are too scared to stand up for themselves. Of course, I've never known a skater to take too much flack from anyone, especially from hypocrites like the ones running the Hawthorne Parks and Recreation committee. Keep pushing your kids Hawthorne, they'll make you regret it sooner or later.<br /><br />Checkout the full story from the team and the video from June 21st at <a href="http://blindreaper.com" target="_blank" title="BlindReaper.com">http://blindreaper.com</a><br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ Explaining the Unexplainable]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/Explaining-the-Unexplainable]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/Explaining-the-Unexplainable]]></guid>
				<pubDate><![CDATA[ Wed, 06 Jul 2005 23:07:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/bc2788e6981682c05d28ded3cb80b7e0.jpg" alt="Theseus slaying the Minotaur of Crete" align="right">There are many things in this existence that are unexplainable. We (as humans) must rely on what we can see, feel, hear or touch to define and explain what we can. We've come a long way in a short time in terms of technology and understanding of our different cultures. However, there will always be certain things that can't be explained. We have no definite clue as to where it is that we came from or where it is that we are headed as humans and we probably never will. All we can do is attempt to give an ?understanding? to ourselves and others through the interpretations of our own experiences. But how do we explain things like hope or conflicts and struggles of the human psyche? What does hope look like? What color is fear? We use symbols to answer these questions and add a tangible aspect to the unexplained. Humans have been using symbols within myths for a very long time. They are used to add more meaningful lessons and messages to entertaining stories. The quest of facing our own inner demons or fears is the basis of many popular hero myths. In those stories, our own fears take on the shape of something bigger than us, something that we would find extremely difficult to face and conquer as mere mortals. Normally, that 'something' takes on the form of a fierce, fire-breathing dragon such as Fafner the dragon in the tales of Siegfried, the Walsung hero. In the stories of Theseus, however, that fear or obstacle takes the shape of the Minotaur.<br /><br />Theseus is a mythological hero, Athenian king, and one of my own personal favorite characters of Greek mythology. The stories of Theseus send him on many different adventures. One story in particular finds Theseus in the half man, half bull Minotaur's labyrinth of Crete. For many years, Athenians were sacrificed to the Minotaur. Every nine years, the Cretans demanded fourteen Athenians to sacrifice to the Minotaur. The Minotaur undoubtedly became synonymous with pain, suffering and death for the people of Athens since no one who was sent to Crete to face the Minotaur ever returned. It wasn't until Theseus came to Athens that the pain and suffering of his people at the hands of the Cretans and the Minotaur was brought to an end. Theseus disguised himself as one of the unfortunate fourteen Athenians who were to be sent to Crete to face the Minotaur. Once there, Theseus used a ball of string to mark his path of choices through the labyrinth so he could easily find his way back out. Theseus found the Minotaur in the maze, killed him and made his way back out by following his marked path. The pain and suffering that the Minotaur had come to symbolize finally ended.<br /><br />The labyrinth seems perfectly suitable as a symbol of life. There are many choices in the labyrinth as there are in life. Not every choice is a good one, but they are all choices one must make throughout life. The introduction of the Minotaur into the maze adds much more to its meaning and yet another choice. If we sit still in the maze, we don't take a chance of inadvertently running straight into the Minotaur. However, he may come around the corner at anytime and seal our fates. If we move forward through the maze, we may very well be heading straight for the Minotaur and an early demise. From an optimistic perspective however, by moving forward through the maze, we may be putting more and more distance between ourselves and the Minotaur. Moving forward through the labyrinth also gives us the benefit of experience. With that experience, we may be able to help someone else understand a better path through the maze of life. We may also better understand who we are from the knowledge of where we have been. I feel as though the ball of thread is a symbol of our own observations and consciousness of our past decisions. Without knowing or remembering where it is that a past choice led us, we would undoubtedly make some of the wrong decisions again. My own interpretation of the ball of thread used by Theseus may be considered a 'reach' to some but I think that our own individual interpretations of these tales and symbols are all that matter. Only we know what drives us inside and only we know what holds us back mentally. We can choose to face our fears head on, throwing ourselves toward our own fates and destinies or we can wait for those fears to close in on us. Rest assured, those fears will be faced eventually.<br /><br /><i>?There was a sign at Jonestown behind Jim Jones' dead body and it said, ?Those who do not remember the past are condemned to repeat it. Those who do not remember the past are condemned to repeat it.?</i><br />-Jello Biafra<br /><br />The Minotaur in the labyrinth can be perceived in much the same way that dragons are in mythology. Dragons typically guard treasures that most men seek. They may guard money, magical artifacts (power) and even women. The dragon itself represents an obstacle that must be overcome before the pleasures that its guarded treasures hold can be experienced. The guarded treasures can be a physical or psychological representation of what it is that we are trying to gain. For example, a person cannot fear failure and be successful at the same time. If a person is deathly afraid of failure and the impact that it has on them emotionally, then they avoid the pursuit of success because the risk of failure is always there. In this example, the treasure is not just success; it is also the conquering of a fear (the dragon). The dragon is what stands between the person and their success and becomes their fear. In many of the myths involving dragons, the hero slays the dragon and consumes its blood. This is to gain the knowledge that the dragon holds. In this example the knowledge is experience of overcoming ones own fear of failure. It's safe to say that, in most cases, the dragon is actually guarding itself. In my opinion, it makes for a better lesson when the dragon itself is the treasure being sought after. The power of knowledge is the most valuable treasure our own personal dragons can attempt to keep from us.<br /><br /><img src="http://acoderslife.com/images/articles/097c3fcbf14deeeaf4d48b7f1047c0c3.jpg" alt="Fafnir the Dragon from Siegfried (The Walsung Hero) myths" align="left">One particular story that uses an actual image of a dragon as an obstacle in the way of destiny is the story of Siegfried (the Walsung hero). Siegfried was raised by a Dwarf named Mime. Over time, Siegfried came to realize that he, in fact, was not a Dwarf. His own physical appearance was proof enough of that. He knew there was another life for him somewhere. Through the truth of Wotan, Siegfried learned the details of his own heritage and destiny. He set out to fulfill his destiny and slay Fafner, the dragon that only he could slay. Fafner was a giant, in the guise of a dragon, who guarded a ring that held the power to rule the universe. Fafner was an obstacle that only the prophesized Walsung hero could conquer. Siegfried defeated his dragon with little effort and took the ring of power as a token of his accomplishments. Siegfried was not out to prove himself worthy of ruling the universe. He didn't even understand the full meaning behind the ring. He only took it as a token and left the mass amounts of gold and riches behind. Siegfried was more concerned with discovering himself and finding out who he really was and what he was made of. He knew there was something missing in his life and he planned to find it, regardless of the cost. In order to do that, he had to slay his personal dragons. In the eyes of most, the effort (or lack of) that Siegfried used to kill Fafner made him a hero. We would all love to have the ability to overcome our own fears (dragons) as easily as the Walsung hero. Unlike Siegfried, we aren't all born without fear.<br /><br />A more modern example of conquering mental anguish and fear can be found in Terry Gilliam's 1991 rendition of ?The Fisher King?. This story puts a modern twist on an old story about the ?Holy Grail?. Parry, portrayed by actor Robin Williams, is a man who has lost himself completely. He is deeply affected by the tragic death of his wife and becomes a totally different person. He misses her so badly that it physically hurts to think about her and the life they shared together. As an ex-professor of history and mythology, Parry recalls a tale of a king and the Holy Grail, the cup that Christ drank from at the 'Last Supper', and begins to live the life of a medieval knight on a quest for the Grail. The grail was believed to have the power to heal the hurts of man. In the film, Parry discovers what he thinks to be the ?Holy Grail? and plots to obtain it. Parry believes that once he gets the grail he will be able to heal himself and move on with his life. However, if we learn anything from hero myths, it is that there are always obstacles in the way of such a powerful item as the ?Holy Grail?. Every time Parry starts to recall his former life of happiness, a manifestation of Parry's mental anguish appears in the form of an evil red knight. This knight is the keeper of Parry's grail and must be defeated in order to obtain the healing power that the grail has to offer. With the help of a friend, Parry eventually acquires his grail and is able to move on with his life. This movie, like many mythological tales, is full of symbols. The grail that Parry seeks symbolizes the happiness that he once had and the person that he used to be (not to mention his sanity). In order to gain that peace of mind, Parry must overcome the red knight, the symbol of his own painful memories of a tragic event. <br /><br />As one can see, symbols are found all throughout mythology. They are used to show us that which cannot be seen; emotions, state of mind, and even struggles within ourselves. They can take the form of many different objects. Whether it is a dragon guarding our personal understanding of who we are, a Minotaur guarding the exit (or entrance) to a life of less suffering and fear, or even a Templar Knight guarding the relief of our own mental anguishes in the form of the Holy Grail, these symbols hold much deeper meanings under the facade of entertainment. You never know what you're going to find. You may even find yourself.<br /><br /> ]]></description>
			</item>
			
			
							
			
			
			
			
			
		
			<item>
				<title><![CDATA[ God I Love SPAM!]]></title>
				<link><![CDATA[ http://acoderslife.com/index.cfm/blog/God-I-Love-SPAM]]></link>
				<guid isPermaLink="true"><![CDATA[ http://acoderslife.com/index.cfm/blog/God-I-Love-SPAM]]></guid>
				<pubDate><![CDATA[ Tue, 15 Mar 2005 20:03:00 GMT]]></pubDate>
				<description><![CDATA[ <br /><img src="http://acoderslife.com/images/articles/c3796c58dbf2e3e36b26df110f67fce4.jpg" alt="As disgusting as it is, I'd rather have this kind of spam." align="left">God I love spam. Don't you just love spam? I don't mean the lips and peckers that come packaged in a nice little metal can. I'm talking about the ever increasing underbelly of the internet's marketing attempts to better our sex lives with promise of a larger male member or a pill that slows your heart rate by transferring it's much needed blood flow to your dong.<br /><br />I love it when they are titled something like, ?Hey you?. Then when you open it up, you find that you are pre-approved for a mortgage loan that you don't need. Those are great too.<br /><br />Was that sarcastic enough for you? What makes you think that anyone, anywhere at anytime wants to sit through the wait of their progress bar while downloading email to only find that some spamming schmuck has filled it with expired PayPal notices or deals on affordable prescription pharmaceuticals? No one signs up for it, ever. No one buys it because you sent them 4000 emails, ever. They only want to track you down perform unspeakable, medieval tortures on your most valued body parts... always.<br /><br />Why does it become worse with every new law that was meant to fight it? Because they only open more loop holes that make it easier to get away with. The law will not help spam any time soon. If you ask me, the only way to fight fire is with a blow torch!<br /><br />These emails aren't coming from the guilty parties' machines people. They are coming from machines of unsuspecting network administrators and novices who aren't experienced enough to keep their networks locked up tight. <br /><br />Some people, not me of course, but I know a guy who knows a guy who knows some people who? you get the idea, take it upon them selves to trace these emails as far as they can. Where does it lead? Straight to the credulous persons' machine whose mail server was compromised to do the dirty work of sending these emails and host the sites they point back to.<br /><br />If a numb nut spammer with no morals or ethics can get in these machines to setup his temp base of operation, why couldn't the everyday hobbyist, who would be referred to in a not-so-perfect world as a ?hacker?, find his/her way in as well and reverse the polarity of the molecular structure (or just kill the mail and web services) to bring down the base. While the hero was in there, he/she could easily make sure it's not as easy to come back the next go-round.<br /><br />Well, they do? everyday. It's becoming one of the more popular extracurricular activities among enthusiasts who are sick of spammers, are sick of waiting on a law that won't help anyway, and have the knowledge and ability to fight back.<br /> <br />Give it a shot the next time you get a plethora of spam in your precious inbox. Take a look at the headers, find out where it's coming from, trace it back and see where it leads. Chances are that it will be easy pickings. After all, the lowlife spammer got in didn't they?<br /><br /> ]]></description>
			</item>
			
		</channel>
	</rss>
 
		
 		
