Lets Encrypt on Ubuntu using Apache, Nginx, or Lighttpd Cheat Sheet

If you are using Lets Encrypt (www.letsencrypt.org) certificates on your Ubuntu servers, you may find the following information useful if you work with Apache, Nginx, or Lighttpd.

Installing Lets Encrypt on Ubuntu 14.04 (or older)

Reference: https://www.vultr.com/docs/setup-lets-encrypt-with-apache-on-ubuntu-14-04

apt-get install git
git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt
/opt/letsencrypt/letsencrypt-auto

The 3rd line sets up Lets Encrypt and installs any necessary dependencies such as Python.

Ubuntu 16.04 install instructions

Reference: https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04

apt-get install letsencrypt

Note: The remaining portion of this document uses /opt/letsencrypt/letsencrypt-auto and /opt/letsencrypt/certbot-auto command line tools as found when installing on Ubuntu 14.04 or older. If you are using Ubuntu 16.04 or newer, simply run the command letsencrypt and certbot without the full path or the additional -auto from the command line.

Setup your server so you can create certificates without having to stop your web server

I will not explain aliases in detail, but essentially you need to create an alias URI for /.well-known/. It can be shared among all of your virtual hosts. Lets Encrypt uses this folder to save folders and files that are used in the confirmation process for creating new and renewing existing certificates.

Create a working folder for Lets Encrypt:

mkdir -p /var/www/letsencrypt/.well-known/

Then setup your web server to use this working folder for the .well-known URI path on your server.

Apache .well-known Example

Create a file called letsencrypt.conf with the following.

Alias "/.well-known/" "/var/www/letsencrypt/.well-known/"
<Directory "/var/www/letsencrypt/.well-known">
 AllowOverride None
 Options None
 Require all granted
</Directory>

If you place this file in the conf-enabled folder (/etc/apache2/conf-enabled/letsencrypt.conf) then simply restart your Apache web server. Otherwise you will need to make a symbolic link in your conf-enabled folder to where you saved your letsencrypt.conf file.

Do not forget when ever making configuration changes to Apache to run the following before restarting your web server.

apache2ctl configtest

Nginx .well-known Example

Create a file called letsencrypt.conf with the following.

location ~ ^/\.well-known/(.*)$ {
 alias /var/www/letsencrypt/.well-known/$1;
 # No need to log these requests
 access_log off;
 add_header "X-Zone" "letsencrypt";
}

Then in your nginx.conf file near the top of the server { } add the following line:

 include /path/to/your/letsencrypt.conf;

Do not forget when ever making configuration changes to Nginx to run the following before restarting your web server.

nginx -t

Lighttpd .well-known Example

Add the following in your lighttpd.conf file. Note the += is for adding to an existing set of alias URLs. If you have no alias.url values, then simply remove the + but leave the equal. Learn more about Lighttpd aliasing here.

alias.url += ( "/.well-known/" => "/var/www/letsencrypt/.well-known/" )

Do not forget when ever making configuration changes to Lighttpd to run the following before restarting your web server.

lighttpd -t -f /etc/lighttpd/lighttpd.conf

Creating New Lets Encrypt SSL Certificates

You can now create Lets Encrypt certificates without your server having to be shut down temporarily.

/opt/letsencrypt/letsencrypt-auto certonly --webroot --manual-public-ip-logging-ok -d example.com --agree-tos -m you@example.com --text  -w /var/www/letsencrypt/

Replace example.com and you@example.com with your email address and your host name. Remember if your host name starts with www., leave off the www. as it is not necessary, a certificate without the www. also works with the www.

Renew certs

/opt/letsencrypt/certbot-auto renew

certbot-auto uses previous settings to renew the cert in the exact same way it was created so no extra parameters are necessary

Reference: http://letsencrypt.readthedocs.io/en/latest/using.html#renewing-certificates

You can create a file in the /etc/cron.weekly/ folder to renew Lets Encrypt certificates weekly. Even though it will run weekly, Lets Encrypt is smart enough not to renew certificates until there is 30 days or less remaining. This gives you plenty of overlap in case for some reason one week failed to renew.

Example bash file /etc/cron.weekly/letsencrypt

#!/bin/bash
/opt/letsencrypt/certbot-auto renew
You may want to use the > /dev/null 2>&1 trick at the end of the command line to surpress errors from coming from your cron tasks via email.

Deleting SSL Certificates

When we no longer wish to maintain SSL for a host name, we need to delete the renewal config file.
rm /etc/letsencrypt/renewal/example.com.conf
This file includes information where the SSL certs are located and the options used when the SSL cert was first created.
This is not the same as revoking an SSL certificate. This simply no longer renewing the certificate every 2-3 months.
SSL Cert files are saved in the following path by folder for each host
/etc/letsencrypt/live/
Specific SSL files are located within the host name folder
/etc/letsencrypt/live/example.com/
Important reference to the pem files:
cert = /etc/letsencrypt/live/geeknewscentral.com/cert.pem
privkey = /etc/letsencrypt/live/geeknewscentral.com/privkey.pem
chain = /etc/letsencrypt/live/geeknewscentral.com/chain.pem
fullchain = /etc/letsencrypt/live/geeknewscentral.com/fullchain.pem

Note: “chain” is specifically for Apache and the SSLCertificateChainFile  setting, which is now obsolete as of 2.4.8. This is a good thing as now Nginx and Apache use the same fullchain and privkey files. Lighttpd is still not as simple, see note below.

Though all files are saved in the pem format, other systems and platforms use different file extensions rather than filenames to identify the differnet files. Here is a quick cheatsheet in case you need to map previous files to new files.

type (explanation) - letsencrypt - other examples
cert (public key) - cert.pem - example.com.crt, example.com.public.key
privkey (private key) - privkey.pem - example.com.key, example.com.private.key
chain - (chain key) chain.pem - gd_bundle.crt, alphasslroot.crt, etc...
fullchain (concatenation of cert + chain) - fullchain.pem - fullchain.crt

Pem files and their use on Apache, Nginx, and Lighttpd

Apache 2.4.8 and newer

SSLCertificateFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/fullchain.pem

Note that there is no SSLCertificateChainFile option, it now uses the fullchain.pem which combines the cert.pem with chain.pem.

Apache 2.4.7 and older

SSLCertificateFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

Note that we are not using the fullchain.pem, instead we are linking to the cert.pem and chain.pem on 2 separate configuration lines.

Nginx

ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

Lighttpd

Lighttpd Note: The cert and privkey need to be combined for Lighttpd

cd /etc/letsencrypt/live/example.com/
cat privkey.pem cert.pem > ssl.pem

Then link to the certificates in your lighttpd config settings.

ssl.pemfile = /etc/letsencrypt/live/example.com/ssl.pem
ssl.ca-file = /etc/letsencrypt/live/example.com/chain.pem

If you are automating Lighttpd renewals, you will need to add an extra step that concatenates the privkey.pem with the cert.pem before restarting/reloading Lighttpd

While searching the Internet for examples of setting up Lighttpd, I found some examples show using the ssl.ca-file using the fullchain.pem. Though this will also work, that is not technically correct as the ssl.pem already houses the cert.pem
Please feel free to leave a comment if you find an error and/or have additional notes which may be helpful for others.

GetID3 analyze() function new file size parameter

You can now read ID3 (media file headers) information from mp3 and other media files using GetID3 library without having the entire media file present. The new 2nd parameter to the analyze() member function allows you to detect play time duration with only a small portion of the file present.

Years ago I added this code to the versions of the getid3 library we packaged with the Blubrry PowerPress podcasting plugin. I’ve submitted this code to the getid3 project so everyone can benefit. As of GetID3 v1.9.10,  you can now pass a second optional parameter specifying the total file size. This parameter sets the file size value in the getid3 object, skipping the need for the library call the filesize() function.

This is the secret sauce that allows PowerPress to detect the file size and duration information from a media URL of any size in only a few seconds.

Requirements

The new parameter only works if the following are true:

  • Have enough of the beginning of the media file that includes all of the ID3 header information. For a typical mp3 the first 1MB should suffice, though if there is a large image within your ID3 tags then you may need more than 1MB.
  • Have the total file size in bytes.
  • The mp3 file is using a constant bit rate. This must be true for podcasting, and highly recommended if the media is to be played within web browsers. Please read this page for details regarding VBR and podcasting.

Example Usage

// First 1MB of episode-1.mp3 that is 32,540,576 bytes
// (approximately 32MB)
$media_first1mb = '/tmp/episode-1-partial.mp3
$media_file_size = 32540576;
$getID3 = new getID3;
$FileInfo = $getID3->analyze( $media_first1mb, $media_file_size );

You can use a HTTP/1.1 byte range request to download the first 1MB of a media file, as well as a HTTP HEAD request to get the complete file length (file byte size).

Byte range requests and HEAD requests are safe to use for podcasting. If a service does not allow HEAD requests or accepts byte range requests, then they will have bigger issues to deal with as these features are required by iTunes.

Blubrry PowerPress podcasting plugin has been using this logic to detect mp3 (audio/mpeg), m4a (audio/x-m4a), mp4 (video/mp4), m4v (video/x-m4v), oga (audio/ogg) media since 2008.

Not all media formats support this option. You should test any format not mentioned above. For example, ogg Vorbis audio works, ogg Speex audio does not.

HTML5 audio / video and mp3 / H.264 is the future of new media but does not replace Flash

HTML5 is the future of new media (also known as downloadable media and podcasting). Anyone who has used an iPad or Google Chrome and watched a video knowing it was through an HTML5 video element knows what I’m talking about. Playback is instant, smoother and is much more responsive than via Flash. It is also very easy to develop in your web pages, removing a level of complexity that was previously much more involved and relied upon Adobe Flash.

The remainder of this post explains everything in detail, why use one format over another, what Flash is still good for, and where the media can end up.

Note: An update to this original post may be found at the bottom of this page.

What is HTML5 and what’s the deal with audio/video?

HTML5 is a new version of HTML (markup that creates web pages that you see in your web browser) that adds a number of new elements (special tags that do things in your HTML, e.g. <p> tag indicates a paragraph of text). HTML5 adds two new elements called audio and video. These new elements allow for web developers like myself to easily add an audio/video player in a web page. Without the HTML5 audio/video element, a web developer needs to implement more complicated HTML utilizing the “embed” tags to include a Flash developed player in the web page. In this case, the Flash player is required to be installed on the end user’s computer in order for the audio/video to playback.

What audio and video formats should I use?

Audio: mpeg3/MP3 (.mp3 file extension) is, for the most part, the most ideal audio format. As of current, all but Firefox have/will have support for mpeg3 audio. AAC audio (.m4a) may also work, but if you are looking for a format that will work in absolutely every situation, mp3 is the best bet.

Video: H.264 (.mp4 or .m4v file extensions) is the most ideal video format. As of current, all but Firefox have/will have support for H.264 video.

Why is MP3 and H.264 recommended for audio/video?

MP3 is the audio format of choice because it is the most widely playable audio format. Nearly every media player application, portable media player, and automobile/car stereo can play mp3 files.

The MP3 format became widespread in 1997 when the Windows application WinAmp was released. Created by Justin Frankel, WinAmp made it easy for music enthusiasts to exchange and listen to audio on computers. The small size of MP3 files enabled widespread distribution initially via file sharing applications such as Napster and on wide-area networks such as university dormitory networks. It was such a popular format that Apple included support for MP3 in it’s first release of the iPod in 2001.

H.264 is the video format of choice because it is the most widely playable video format. Though not as widespread as the mp3 format, H.264’s common denominator is that it can be played on the most popular portable media players, MAC OSX, Microsoft Windows, Internet connected TV’s and smart phones. You can thank Apple for making H.264 the standard in its portable hardware (iPod/iPhone), which has dominance in the portable media player market.

What can Flash do that HTML5 audio/video cannot?

Live streaming! Many sites such as Qik and UStream.tv provide live online content, their use of Flash will not change due to HTML5 audio/video.

The difference between “downloadable media” and “live streaming” is the “live” part. Downloadable media is not live, which has an advantage to providing the consumer the ability to save the media and play it back at their convenience. Live streaming on the other hand, is real time audio/video playback that cannot be paused/played without the help of a device to record the content. For this reason, Flash may not be as important but still has the purpose of providing a means to stream live content.

As far as downloadable media is concerned, Flash is perceived as dead, but Flash will play a key role on portable devices such as Android phones in providing live streaming content over the coming years.

The Flash Video Secret

Though most know that Flash is used to play audio mp3 files, many web developers are not aware that Flash can play H.264 video. Since Flash version 9 released in the Winter of 2007, Flash has the ability to play .mp4/.m4v video. Before Flash 9, Flash could only play Flash video (.flv file extension) files.

As far as video is concerned, this solidifies the H.264 format as the most widely playable video format. It allows a web developer to alternatively allow its web visitors the ability to play H.264 video in the event the browser itself cannot play the HTML5 video format.

Google Chrome / Apple Safari

Both Google Chrome and Apple Safari web browsers support mpeg3 (.mp3) and H.264 (.mp4/.m4v). Safari has one glitch though, it will auto download the media files linked in the audio/video tags, which does bring up a challenge for web developers to deal with.

Internet Explorer

Currently, Internet Explorer (IE) does not support HTML5, but the signs back in Fall of 2009 were obvious that they were planning on supporting it in the future. With the recent blog post announcement for support for H.264 video in IE9 and past blog post announcing MP3/AAC audio support, it looks like the next version of IE is on its way of being HTML5 audio/video friendly. There is only one problem though, IE9 will only be available for Windows 7 and Vista, Windows XP will not have IE9 as an upgrade option.

Firefox and the OGG format

Firefox supports a niche audio and video format called OGG. The reason for this is simple, it doesn’t cost Firefox anything to support OGG formats. Since Firefox is essentially a free foundation and not a real company selling products/services, it does not have the money or resources to purchase licenses to include support for the H.264 video format. From the last post I read about the subject, Firefox would have to pay a 5 million dollar license fee in order to use the H.264 video format and it would still be limited to which versions of Firefox could include H.264 (source based compiled versions distributed through different versions of Linux would not be included in the license for example). It is a bit more complicated than this, but you get the idea why Firefox doesn’t support H.264. Read why Firefox does not support H.264.

The OGG format is a combination of a number of formats, two of which are supported by Firefox. The OGG audio format, also referred to as Vorbis (.ogg or .oga file extensions) is a truly open source audio format. The OGG video format, also referred to as Theora (.ogg or .ogv file extensions), is a free video format based upon a patent by On2 Technologies. As of current the patent behind Vorbis is not enforced, allowing the format to be used with out paying any royalty or fees. Example of a potential Theora problem.

I should point out that both Google Chrome and Apple Safari support the two OGG audio and video formats mentioned above. Internet Explorer, Apple iPod/iPhone/iPad/TV and most other portable media / TV hardware most likely do not support OGG, limiting this format’s reach in the market.

Firefox, H.264 and MP3

Firefox will most likely not support H.264 without help from Apple/Microsoft/Google. I predict by years end one of those companies will sponsor Firefox’s H.264 five million dollar license to include H.264 support in Firefox. There could also be a plugin for Firefox that provides H.264 functionality. More interestingly, Apple/Microsoft and Google hold patents related to H.264 so it is possible they could come together and influence MPEG LA (folks who enforce the H.264 licenses) to give the Mozilla Foundation (Firefox) a special license for using H.264. Who knows what will really happen, but it is definitely to Google’s best interest with it’s YouTube property that all web browsers can play back its video content.

I have no idea why Firefox does not support mp3. Mp3 and Ogg video are identical as far as having patents that are not enforced (no one is asking for royalties for using these formats). As far as audio is concerned, I think it is hypocritical of Firefox not to support mpeg3 but support OGG Theora.

Apple iPod/iPhone/iPad/TV

All of Apple’s products/hardware support both MP3 audio and H.264 video formats.

Android/Blackberry/Palm WebOS

The other remaining popular smart phone platforms support both mp3 audio and H.264 video formats.

Other Internet Connected TV Hardware

Other Internet Connected TV hardware (also referred to as OTT TV/Over The Top TV, Set-Top boxes, and IPTV) such as the Roku add the icing to the cake as far as picking audio/video standards are concerned. All of the Internet Connected hardware devices that are planned or that are already available support MP3 audio (.mp3) and H.264 video (.mp4/.m4v).

Conclusion

I am sure this post will upset some folks (Flash developers, Linux/open source enthusiasts, etc…) and I apologize. I love Linux and open source, but I’m sorry to say OGG is not going to become the standard for media. As for Flash, there is still a lot of cool stuff you can do with Flash including live streams, but Flash as far as downloadable media (new media/podcasting) is concerned, Flash is dead.

Update on March 25, 2011:

It appears my prediction may have been wrong about H.264 being sponsored by another vendor for inclusion into Firefox. Over the past year, Google has acquired On2 Technologies (OGG Video) and has launched a new project called WebM which is completely royalty free. This is a game changer both for the WebM video format, but also for OGG Vorbis audio. It also means that Flash is not dead in the short term for downloadable media and can be used to fill in the gap for when a specific audio/video format is not supported in a given browser.

WebM the Game Changer

WebM is significant for a number of reasons. First, it’s important to note one of On2’s past clients, Adobe. One of On2’s older video codex is used for Flash video (.flv). With the launch of WebM video format (.webm), Adobe has promised to include WebM support in future versions of Flash, and seeing it’s past relationship with On2, I don’t see how there would be a problem. In addition, Opera, Firefox and Google Chrome web browsers also support WebM playback. Ogg Theora is essentially replaced by WebM, though the OGG Vorbis audio format that is packaged with OGG Theora and WebM may be the other winner in this HTML5 media tug-of-war.

Also important to note that anything Google related will include WebM support, this means future versions of Android, YouTube and the new Google TV video platform.

Google removes H.264 from Chrome, adds WebM and Launches Google TV

Since the Google acquisition of On2, Google has decided to no longer include H.264 (.mp4) support with the Google Chrome browser, opting instead to include WebM as the supported HTML5 video format. Four significant changes have occurred, which warrant noting:

  • Chrome browser can no longer play H.264 video
  • Chrome browser can no longer play AAC (.m4a) audio
  • Chrome browser can now play WebM video
  • Chrome browser can now play OGG Virbis Audio

Along with Firefox and Opera, this now means that 3 of the 5 major web browsers require WebM for video and OGG Vorbis/Mpeg3 for audio. Also important to note Firefox 4 still does not support Mpeg3 (.mp3) audio, which I think is a major letdown.

With this new WebM format, we can assume that the older OGG Theora video format is no longer a player in the HTML5 video wars. OGG audio on the other hand, is another story.

What will be significant is if future versions of Google TV (also packaged in Sony high end TV’s and Blu-ray players) will be WebM exclusive. If this happens, along with adoption on Android based phones may have enough impact that WebM could quickly become an important video format.

M4a Audio growth stalled, OGG Vorbis Audio growth continues

With the HTML5 Video Wars between WebM and H.264, it means that the AAC (.m4a) Audio format growth is now stalled. Looking at AAC last year, I would have thought by now almost every device and hardware out there would support the format. Important to note video hardware vendors include AAC support mainly because it is required for  H.264. As devices come to market that do not have H.264, it is only natural for those devices will also not support AAC (.m4a). AAC almost had the capability to play almost everywhere, but now it seems the Mpeg3 (.mp3) format will continue to still have wider distribution.

Flash will continue to Bridge the Gap

Many of the TV devices like Boxee rely upon Flash for audio and video playback. These devices may be the winner as things play out since Flash can play mpeg3 (.mp3), H.264 (.mp4), AAC (.m4a via the video player) and WebM (.webm). I also suspect that once WebM support is added, it would only be natural for Flash to then also be capable of playing OGG Vorbis (.ogg/.oga) via the WebM player.

What I recommend as of March, 2011

For Video, I recommend creating H.264 (.mp4) and WebM versions of your video. This way you are able to harness HTML5 video on all five web browsers as well as support nearly every video playing device whether it includes one format or the other.

For Audio, I recommend Mpeg3 (.mp3), it still plays on devices and in applications. Though AAC (.m4a) is a close second, if your not using any of the Audiobook features found in m4a (which by the way only work on Apple hardware and software), there’s no real significant advantage to using m4a over mp3.

Firefox Extensions I Use

I’m often asked what Firefox extensions I use in my web browser. For those who ask, here you go.

Basic plugins that anyone may like:

  • Gmail Manager – check and manage multiple Gmail accounts
  • History block – prevent some sites from crowding your web browser history
  • Echofon – Twitter client (formally known as TwitterFox)
    • I’m looking for a better Firefox Twitter client, please comment if you know of one.
  • PDF Download – Decide whether you rather download or view PDF
  • Tabs Open Relative – Open new tabs to the right of your current tab

Plugins specific to web development:

Subscribe to RSS, Atom, Twitter, iTunes, and Google Reader links for WordPress

Subscribe SidebarI’ve created a WordPress plugin called Subscribe Sidebar!

If your familiar with my blog, you’ve seen my Subscribe sidebar before. Now it’s available as a plugin for WordPress. I got sick of copying/pasting the HTML from theme to theme and after Todd Chochrane requested the same links for the RawVoice Blogs I decided it was time to put it in an easy to install and configure plugin.

The plugin may be added to the sidebar by either utilizing the dynamic widgets sidebar feature or adding a few lines of code to your theme’s sidebar template. Configurable options include links for RSS 2.0, Atom, Podpress podcast Feed, add to Google Reader/Homepage, add to My Yahoo, add to iTunes, add to Zune and follow on Twitter. I constantly get a steady stream of people asking for my twitter name, so now it’s under my subscribe links in my blog, I can now refer folks to my blog. 🙂

So, what do you think of the plugin, is it useful for your blog and/or podcast?

Columbus Social Media Cafe – Central Ohio Bloggers, Podcasters and Social Networking

Anyone in the Central Ohio area who is a blogger, podcaster or social networking enthusiast/expert should be aware that there is a potential meetup group organizing called the Columbus Social Media Cafe. Yesterday was the 4th SMC meetup and I gathered that they are just now working on defining what the goals are of the group and plan on forming a mission statement. You can read more about the last meetup at Elephants on Bicycles and This Woman’s Work blogs.

When I arrived, I found myself briefly explaining what PodCamp and PodCamp Ohio is. I was not prepared to make any sort of presentation at the meetup but I did my best. This was a learning experience for myself, as I found myself speaking to a crowd of bloggers who are aware that podcasting should be included in their space but don’t exactly have a grasp on what exactly podcasting is. I also mentioned briefly some of the viral networking techniques that PodCamp Ohio is using in order to market the event to bloggers, podcasters and social networking enthusiasts.

I learned a lot from the meetup. What I found the most interesting was what they are envisioning; a social networking web site that pulls in feeds of blogs and podcasts and provides social networking features such as tags and comments. The group would be the perfect customer for the RawVoice Generator, which does pretty much what they want. One of the organizers mentioned someone who is in the process of developing such a tool that the group could use, so I didn’t quite feel comfortable mentioning that my company already has such a product on the market for more than 2 years now. The process they are undertaking made me feel vindicated that the past 3 years of my life that I’ve spent developing such tools is of real importance, not just globally but also for the local community. There is real potential for blogging and podcasting to connect with its local communities, and I for sure want to be involved in helping that happen here in Central Ohio.

I hope they can create a brand/logo soon and put in place a scheduled meeting time using not just meeting spaces in the public but also utilizing those social media tools that are so important such as TalkShoe/BlogTalkRadio for on-line recorded phone meetings and Google Group public mailing lists. At the moment the only way anyone can participate is by attending the public meetings, which may limit the audience size of participants. The more opportunity to let someone be herd, the more opportunities that will be used by those with the means. I’m pretty confident they will pick up on these other tools soon.

I am a little concerned that some of the founders organizing the Columbus SMC group found PodCamp Ohio somewhat threatening. I hope they did not get that impression cause it is definitely not something meant to compete with other groups with similar goals. PodCamp is a social event with the primary goal to bring bloggers and podcasters together to share knowledge and network with each other. I hope the Columbus SMC organizers don’t feel threatened by the event, that’s certainly not the events goal and I am confident that’s not what Chris Brogan or Christopher Penn intended when they created PodCamp.

A Good Keyboard is Important

Last summer, I purchased a new computer, right away I had to swap the new keyboard that came with it (HP Pavilion) with my previous worn down IBM keyboard. Well in October, the keyboard wasn’t working so well so I hunted through the house till I found a keyboard I could live with. Oddly, it’s a HP corporate keyboard from about 10 years ago. It works ok, I am typing on it as we speak, but a couple keys aren’t as reliable as they should be. So last week I went to Microcenter and purchased a $30 Microsoft Keyboard. It was the cheapest keyboard that had a normal keyboard layout with the 2 key wide backspace key. It also had the normal 6 keys between the mail keys and the numeric pad. Many keyboards are starting to re-engineer the 6 keys (insert, home, page up, delete, end and page down) in non standard ways. If you’re a programmer like me, that completely sucks. Some of the keyboards have a 2 key sized delete key and have removed the insert button completely. I don’t know what keyboard designers are thinking lately!

I used to always buy IBM brand keyboards but since they left the desktop/laptop computer market, they no longer sell keyboards. Oh how does that suck! In my opinion, IBM made the best keyboards.

So I’ve been trying out a Microsoft keyboard out for about 5 days and quickly came to hate it. I finally disconnected it and plan on returning it. It did have softer key action, which was keeping my wrists from getting tired. Now I am using this old HP keyboard, my wrists feel like someone stuffed rocks in them.

Dell USB Multimedia KeyboardSo the last keyboard I used that I really liked was the Dell Multimedia Keyboard pictured. This and its non multimedia variant were pretty well designed keyboards, the keys were where they should be and the space in front of the keyboard allowed you to add your own wrist pad.

There’s a few other little things about this keyboard I like. First, the mute button is on the right hand side. The Microsoft keyboard had the mute button on the left, which doesn’t help me at all. The volume control is an actual dial on the Dell, which doesn’t matter for me because I usually use the windows controls for that anyway. It makes a nice holder for my wedding ring when I feel the need to take the ring off while working.

So today, I ordered a new Dell USB Multimedia Keyboard. With shipping it was about $33.

What kind of keyboard are you using? Are you as picky as me as far as key placement?

Firefox Crashes because of QuickTime

Well, I’ve finally found others who are finding the same problem. I will be surfing the net, open a page and bam! Firefox crashes. More recently the computer was running slow when Firefox crashed and I swear I saw a pop up from quicktime asking me if I’d like to update. Since then, I’ve used a computer without iTunes and QuickTime with Firefox and have had no problems.

http://discussions.apple.com/thread.jspa?messageID=4630001

I want my iTunes. So to avoid this crashing in the future, I’ve taken the necessary steps below.

  1. Click Start >Â Programs > QuickTime > QuickTimePlayer
  2. Click Edit ? Preferences > Player Preferences
  3. Click the Update tab and remove the check next to “Check for updates automatically”
  4. Click the File Types tab and unselect everything except “QuickTime Movie Format” Uncheck the option at the bottom titled “Notify me if other applications modify these associations”.
  5. Pray that QuickTime doesn’t crash your Firefox again.

Hopefully this is helpful to others.

New Year Update

It’s been a while since I blogged anything. I’ve been very busy. Here is my update of what is going on in my life.

RawVoice
Been very busy working on a number of projects as usual. We are about to launch a new web site on Monday, January 14, 2008. If things go well, we’ll be launching some new service each Monday for the rest of the month. We’ll see if I can keep up.
http://www.rawvoice.com/

Spaceblue
I reprovisioned the server the day after Christmas, I am happy to report that I finally have everything on-line and running strong. I quickly got the crucial items on-line. I mainly had to get web stats and a few other little things setup after the new year. Setting up the new server took much longer that I anticipated since I switched from using Apache to Lighty web servers. It is paying off though, the server is handling the same amount of traffic without using all of the system resources.
http://www.spaceblue.com

PodCamp Ohio
I’ve been leading up the charge to organize PodCamp Ohio. Over the past month, we’ve secured a venue location and launched the web site. I am pretty happy with the core podcasters participating, they are really on the ball and have no problem taking charge of items they are good at. PodCamp Ohio will be on Saturday, June 28, 2008 from 9am to 5pm at the ITT Technical Institute in Hilliard (just west of Columbus), Ohio. More details are available on the web site.
http://www.podcampohio.com/

Association for Downloadable Media
Last fall I was elected Chair of the Measurement Committee of the Association for Downloadable Media. The entire process is exciting. I purchased a copy of Roberts Rules and have been slowly coordinating all of the members of the committee. After 12 people joined the committee, I was looking for the board members to set a limit to the size of the committee so it would not become too large to manage. The consensus of the board is to allow as many ADM members to join the committees as possible. I understand the motives, as the podcasting community is oriented in a way that encourages participation, it just makes managing the committee that much harder. I am up for the challenge and started devising ideas how to manage the situation. My position as Chair of the Measurement Committee could not be more perfect for the Association since I have both a technical background with Internet Engineering and vast experience with measuring podcast downloads.
http://www.downloadablemedia.org/

The House
Dad was in town two weeks ago when I was about to fix a shower leak. The work started with Dad reminding me to buy the tool recommended to remove the faucet cartridge in the documentation I printed out. A couple of minutes later, I broke the cartridge trying to remove it with pliers. Lesson learned, still listen to your parents! At this point I think Dad was convinced we would have to call a plumber, but my plan was to buy the removal tool and a screw tap. My plan worked luckily, with the help with an extra long screw replaced in the recommended tool. The rest of the process of installing the new cartridge went smoothly. I am happy to report the shower no longer leaks! If any family or friends need to fix a Moen shower/bath leak, let me know cause I have the recommended tool to remove the cartridge. Definitely don’t try to remove it with pliers!

San Giorgio Pasta Choo Choo Wheels
I told Heather a long time ago about Choo Choo Wheels Pasta and she looked at me rather strange. Two weeks ago I came across a package of San Giorgio brand Choo Choo Wheels and snagged a box. Sam Giorgio is my preferred pasta brand. The back of the box has a recipe for spaghetti meat sauce, so I thought I’d give it a try. I don’t have all of the details here, but the main ingredient are 2 large cans of whole pealed tomatoes, 2 small cans of tomato paste, 2 teaspoons of sugar, 1/2 cup of Parmesan cheese, graded and 1 pound of ground beef or sausage. I used a 1 pound roll of Bob Evans Italian Sausage. Cook the sausage, then mix everything except the Parmesan, bring to a boil then cook on a medium/low heat for 30+ minutes. When you are ready to serve, add the Parmesan, which will thicken the sauce. I like thick sauce, so stumbling upon this tip has revolutionized my spaghetti sauce making abilities! 🙂

Anyway, the sauce on the back of the Choo Choo Wheels box was awesome and so far is the closest thing I’ve been able to get to taste like real home made spaghetti sauce the way Grandma would make. She would cook the sauce for hours and have 3 different types of meats in the sauce. It is the standard which I use to judge all other sauces. Funny how that works.

What’s Next
I’m going to restart my Compiled Weekly podcast. The recent work I’ve been doing moving blogs around for RawVoice and reconfiguring the Spaceblue server with Lighty has given me a lot of content ideas for the show. I got a lot of knowledge to share about Lighty and tips with server management. I got just about everything automated so I don’t have to manage anything now. 🙂

Fundamental issues with Windows Vista

I just recently purchased a new computer. It’s very powerful. It has a 320GB hard drive, Intel core 2 Duo 4400 running at 2Ghz and 2GB of memory. There is one problem though, Windows Explorer in Vista. I can’t explain how unstable Windows Explorer is in Vista. The operating system itself does not crash, but Windows Explorer crashes randomly. Whether it be Explorer itself or anytime an application uses the file open/save dialog, I have to cross my fingers that the application doesn’t crash. Vista removed some navigation features for going down and up a folder, and in its place are folder names that are separated with drop downs. in addition, the files are automatically sorted in the current view. The end result is a dynamically changing view of your files. It seems like a great idea, but it has some major stability issues. All I want to do is safe, open and copy files, I don’t need a complex unstable system to do this. Microsoft really went too far with Windows Explorer. They should have been spending this time making other tools that would be much more useful.

If you have the ability to buy a new computer with Windows XP, do it without hesitation. I have not come across a functionliaty in Windows Vista that would make it necessary for anyone to upgrade.