We had a complete outage at our office today of Internet connectivity and business phone service (8 lines). The outage lasted for about 3 hours and 40 minutes.
We are with Comast Business Services. Way to go guys. Hey, it’s Comcastic!.
We had a complete outage at our office today of Internet connectivity and business phone service (8 lines). The outage lasted for about 3 hours and 40 minutes.
We are with Comast Business Services. Way to go guys. Hey, it’s Comcastic!.
For anyone who is interested in Python programming, there is a monthly Houston Python Meet-up tomorrow evening. Here are the details:
Date/Time: Tuesday, December 9, 2008 at 7:00 PM Location: The Sauté Bistro, 2303 Richmond Avenue, Houston, TX 77098 (713-522-2106)
I will be giving a presentation about using Python with Amazon Web Services.
Here are various URLs from the presentation:
Check out this new page in my wiki that gives and example of the use of the setdefault method of Python dictionaries.
Thich Nhat Hanh is 82 years young today!
![]()
There is a Houston Python Meetup tonight at 19:00 at the Stag’s Head Pub.
Anyone interested in learning more about Python programming is welcome to join us!
The WebKit folks have been busy. I just read this fascinating post on the Surfin’ Safari blog.
SquirrelFish Extreme (SFX) is the newest Javascript Engine from the WebKit folks. And it is fast. I downloaded version r36685 on my MacBook Pro and ran the SunSpider JavaScript Benchmark. The SFX engine was 3.69 times faster than the engine in Safari 3.1.2!
TEST COMPARISON FROM TO DETAILS
=============================================================================
** TOTAL **: 3.69x as fast 3527.6ms +/- 1.6% 956.6ms +/- 1.8% significant
=============================================================================
3d: 2.92x as fast 451.8ms +/- 5.0% 154.6ms +/- 4.5% significant
cube: 3.11x as fast 164.8ms +/- 11.9% 53.0ms +/- 7.0% significant
morph: 2.57x as fast 149.2ms +/- 6.2% 58.0ms +/- 5.0% significant
raytrace: 3.16x as fast 137.8ms +/- 4.7% 43.6ms +/- 12.5% significant
access: 4.90x as fast 546.4ms +/- 2.1% 111.4ms +/- 8.6% significant
binary-trees: 4.20x as fast 76.4ms +/- 7.4% 18.2ms +/- 28.3% significant
fannkuch: 10.5x as fast 235.4ms +/- 2.8% 22.4ms +/- 14.5% significant
nbody: 2.97x as fast 174.4ms +/- 2.6% 58.8ms +/- 5.7% significant
nsieve: 5.02x as fast 60.2ms +/- 10.5% 12.0ms +/- 12.7% significant
bitops: 7.01x as fast 457.0ms +/- 3.3% 65.2ms +/- 5.9% significant
3bit-bits-in-byte: 5.10x as fast 68.4ms +/- 6.5% 13.4ms +/- 14.1% significant
bits-in-byte: 6.02x as fast 98.8ms +/- 4.4% 16.4ms +/- 15.7% significant
bitwise-and: 17.2x as fast 171.6ms +/- 5.6% 10.0ms +/- 24.9% significant
nsieve-bits: 4.65x as fast 118.2ms +/- 0.9% 25.4ms +/- 8.2% significant
controlflow: 5.68x as fast 86.4ms +/- 4.4% 15.2ms +/- 24.8% significant
recursive: 5.68x as fast 86.4ms +/- 4.4% 15.2ms +/- 24.8% significant
crypto: 4.29x as fast 249.4ms +/- 3.6% 58.2ms +/- 6.7% significant
aes: 4.78x as fast 79.4ms +/- 2.6% 16.6ms +/- 29.8% significant
md5: 4.18x as fast 85.2ms +/- 9.8% 20.4ms +/- 11.1% significant
sha1: 4.00x as fast 84.8ms +/- 3.9% 21.2ms +/- 15.2% significant
date: 3.47x as fast 309.8ms +/- 1.0% 89.4ms +/- 5.3% significant
format-tofte: 3.52x as fast 142.8ms +/- 3.2% 40.6ms +/- 6.0% significant
format-xparb: 3.42x as fast 167.0ms +/- 1.7% 48.8ms +/- 6.8% significant
math: 3.76x as fast 499.8ms +/- 0.6% 133.0ms +/- 5.8% significant
cordic: 4.59x as fast 191.0ms +/- 1.0% 41.6ms +/- 13.8% significant
partial-sums: 3.34x as fast 212.8ms +/- 1.5% 63.8ms +/- 5.6% significant
spectral-norm: 3.48x as fast 96.0ms +/- 3.3% 27.6ms +/- 17.6% significant
regexp: 5.07x as fast 211.8ms +/- 1.6% 41.8ms +/- 5.7% significant
dna: 5.07x as fast 211.8ms +/- 1.6% 41.8ms +/- 5.7% significant
string: 2.49x as fast 715.2ms +/- 2.6% 287.8ms +/- 2.1% significant
base64: 4.99x as fast 109.8ms +/- 5.9% 22.0ms +/- 12.6% significant
fasta: 3.16x as fast 183.4ms +/- 1.7% 58.0ms +/- 7.4% significant
tagcloud: 1.54x as fast 143.6ms +/- 1.8% 93.4ms +/- 3.1% significant
unpack-code: 2.23x as fast 140.8ms +/- 1.5% 63.2ms +/- 2.6% significant
validate-input: 2.69x as fast 137.6ms +/- 11.2% 51.2ms +/- 7.2% significant
The great TextMate text editor has a bundle called “TextMate” that lets you install an “Edit in TextMate…” item to the Edit menu of all Mac applications that support alternate input managers. This is really handy.
For applications like Safari and Mail, etc., this works perfectly. However Firefox (my favorite browser) doesn’t recognize these extra input managers (yet). So what do you do?
Not to worry! There is a free FireFox extension called It’s all Text!. Just install it and, in the preferences, set it up as follows:
Notice the Hot Key setting? This is Command-CTRL-E, which is the ”same” hot key used to invoke the ”Edit in TextMate” function for applications that support the alternate input managers.
This gives identical functionality to Firefox as to what you would get in Safari, et al.
As I write this it is 19:50 on Friday, 2008-09-12.
We are already getting very prominent gusts of wind. The eye of hurricane Ike hasn’t even made landfall yet. I think we are in for a very interesting evening. During the last 20 minutes before writing this post, I was sitting on the front porch of the house (facing South). During that period of time I heard three transformers blow. I would not be surprised to lose power any time now.
–g
Just posted a complete implementation here.
This is the basic help output:
$ ./bulk_email -h
Usage: bulk_email [options] 'Subject line of the email message in quotes'
Reads a list of email address from standard input.
Sends emails to all of them.
NOTE: If you use this program to send SPAM you will be generating
much negative Karma for yourself, so please DO NOT SPAM!!!
These are the configuration values that are required in the config
file:
FROM='from-email-address'
SMTP_ACCT='smtp-account'
SMTP_PASS='smtp-password'
Here are some optional configuration parameters. They may be overridden
in the config file. Note that by default we are using gmail!
SMTP_HOST='smtp-host' # default = smtp.gmail.com
SMTP_PORT=smtp-port # default = 587
SMTP_USE_TLS=True|False # default = True
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-x, --extra-help If specified, print out EXTRA help and exit
-v, --verbose If specified, print out information while processing.
--config=CONFIG The file that contains configuration info for the program.
By default, the program will look for a configuration file
in /home/gordy/.bulk_email.rc
--html=HTML The file that contains the HTML-formatted message
(required)
--plain=PLAIN The file that contains the plain-text message (optional,
but recommended)
-e, --embed If specified, scan the html copy for any <img /> tags.
Fetch the referenced image. Encode and embed it and
replace the src attribute of the <img /> with a cid:imagex
reference.
You can get extended output (which I won’t post here due to length) by using the -x option like bulk_email -x.
For the love of all that is holy and good, please DON’T SPAM!!!