Gmail provides a bunch of great ways to filter your e-mail. One of the most accurate is to append a string to the end of your user name (i.e. myaccount+slashdot@gmail.com) when signing up for a service. Gmail strips everything after the + when determining where to deliver a message, however it will still appear in the "Delivered-To" message header. You can then run a search or create a filter by searching for "deliveredto:myaccount+slashdot@gmail.com". This allows you to set up auto labeling or other behaviors based on the origin of the e-mail, without having to know where the message might be coming "From:".
This is also useful for setting up forwarding between Gmail accounts. Using this guarantees you can label forwarded e-mail because Delivered-To will always be the address you specified in the forwarding set up, even if the original e-mail was addressed To: a mailing list or you were originally BCCed.
There's one big problem with this set up. There are a lot of... misguided developers out there who set up their registration forms with bad e-mail validation. I'd say about 50% of the time I can't use this method because + is not a valid character in the form.
http://en.wikipedia.org/wiki/E-mail_address#RFC_specification
I wish people would bother to follow standards. Very annoying.
Saturday, March 7, 2009
Tuesday, February 24, 2009
Twitter Account
I haven't been posting a lot here, and it's mainly because I don't have anything that long-winded to say :)
I've started using Twitter to post the random things throughout the day that I used to bundle up into a weekly post. If you're interested, I'm at http://twitter.com/bogosian
I've started using Twitter to post the random things throughout the day that I used to bundle up into a weekly post. If you're interested, I'm at http://twitter.com/bogosian
Monday, January 5, 2009
Personal Web Hosting with App Engine
A few days ago I got a notice from my hosting company that my year long contract has expiring soon. I was using this hosting for three small websites that are 100% static and figured that there should be a cheaper way to get this done.
My first instinct was to look at Amazon S3 as their storage and bandwidth rates are pretty good. For my usage pattern I'd be looking at paying pennies per month to host all three sites. Unfortunately there's one fairly major flaw in web access to S3 that makes hosting an entire website there a non-starter. There is no way currently to set up a S3 bucket to host a file from the root of the bucket (i.e. http://www.jamesbogosian.com/ cannot be set up to serve http://www.jamesbogosian.com/index.html).
After thinking about it some more I realized that even though Google App Engine is designed to host dynamic websites that it could be easily used to suit my needs. Here are the steps that I took to get this working:
Now, there are a few limitations worth noting:
My first instinct was to look at Amazon S3 as their storage and bandwidth rates are pretty good. For my usage pattern I'd be looking at paying pennies per month to host all three sites. Unfortunately there's one fairly major flaw in web access to S3 that makes hosting an entire website there a non-starter. There is no way currently to set up a S3 bucket to host a file from the root of the bucket (i.e. http://www.jamesbogosian.com/ cannot be set up to serve http://www.jamesbogosian.com/index.html).
After thinking about it some more I realized that even though Google App Engine is designed to host dynamic websites that it could be easily used to suit my needs. Here are the steps that I took to get this working:
- Sign up for Google Apps for the domain in question (jamesbogosian.com)
- Log into App Engine and create a new application
- Download all of the content from jamesbogosian.com and place it in a directory named "static"
- Create an app.yaml file at the same level as the static directory that looks like this one (replacing your app ID from step 2 on the first line)
- Using appcfg.py from the App Engine SDK (download this if you haven't already), upload your "application" to appspot.com
- Log into Google Apps control panel and select "Add more services"
- Add your application to this domain by providing the app ID, and choose to host the "application" off of www.yourdomain.com
- Add or edit the "www" CNAME on your domain to point to ghs.google.com
- In most cases you will also want to redirect your naked domain (i.e. jamesbogosian.com) to www. This is different for each domain registar / DNS set-up. I use GoDaddy, and there was a small trick to get this working (I think)
- In the GoDaddy Domain Management tool, set up the forwarding from http://yourdomain.com to http://www.yourdomain.com, as a 301 redirect
- In the GoDaddy Total DNS Control and MX Records tool, change the A Record on your domain to point to 64.202.189.170 (this seems to be the way to get forwarding to actually work)
Now, there are a few limitations worth noting:
- There is a single file size limitation of one meg.
- There is a file count limitation of 1,000 files. You can work around this by using the zipserve module.
- Spikes in traffic may currently be greeted with quota errors, but if you're talking about doing real low-traffic hosting I'd imagine that would never happen
Wednesday, November 12, 2008
Bailout or Bankruptcy?
Robert Reich has an excellent post on his blog asking the question on my mind, why don't we just let companies go bankrupt. Chapter 11 is there for a reason.
So why, exactly, is the Treasury substituting government bailouts for chapter 11? Even if you assume Wall Street's major banks and insurance giant AIG are so important to the national and global economy that they can't be allowed to fail, that doesn't mean they have to be bailed out. They could be reorganized under bankruptcy protection. True, their creditors, shareholders, and executives would take bigger hits than they're taking now that taxpayers are bailing them out. But they're the ones who took the risk. We didn't.