Posted in scalability
Tue, 24 Oct 2006 16:56:00 GMT
Recently eWeek ran an article on eHarmony's storage scaling solution choice which discussed how they chose to go with proprietary solutions from 3PAR and ONStor. I was hoping to learn something interesting about their deployment architecture but the most interesting things I learned was that eHarmony has 8+ million users, 9+ million photos and their proprietary solution vendor choice. Some interesting quotes from Mark Douglas, eHarmony's VP of Technology:
Read more...
no comments
Posted in apple
Thu, 19 Oct 2006 04:03:00 GMT
I've been a happy iPod user for some time now, however I've only ever used my single iPod with a single iTunes install. I recently reinstalled my OS after wiping the hard drive for a clean start. To my surprise a fresh install of iTunes with the same iPod serial number would not import songs from my iPod into the iTunes library. iTunes had the gall to ask me if I wanted it to erase all the music on my iPod and replace it with the (empty) contents in its library. Essentially my iPod was orphaned. I've never thought about Apple DRM issues before but I'm no longer as excited about the iPod and iTunes as I was before.
Read more...
6 comments
Posted in mysql, scalability
Fri, 06 Oct 2006 03:07:00 GMT
I just ran across the MySQL Web 2.0 page which lists a number of their users including the following:
The most interesting thing from that page, however, is links to various presentations given by those sites on how they architected their sites to scale with MySQL, some of them scaling up to hundreds of MySQL servers.
Read more...
2 comments
Posted in mysql, perl, orm, unicode
Mon, 02 Oct 2006 15:35:00 GMT
One of the mysteries of Perl to me is that why, as of yet, is there no UTF-8 support in DBD::mysql although this issue has been discussed on the msql-mysql-modules list since at least 2003 (using the MARC archives). This is also given that MySQL does have UTF-8 support itself.
Read more...
6 comments
Posted in mysql, perl, xapian
Mon, 02 Oct 2006 08:08:00 GMT
I recently looked at using various encodings for hashed UIDs, e.g. UIDs generated by a crytographic hash algorithm such as SHA-1 or MD5. These are often useful when the UID does not need to have human meaning but should exhibit some uniformity, such as character set and length. I considered Base64 and hexadecimal first because they are commonly used by crypto libraries and then decided on Base64 and Base32 where appropriate. Base36 is actually the most compact case insensitive encoding (using Arabic numbers and Roman letters) but is not an option for me at the moment because there's no Perl module for it that will take arbitrary text and binary input at the moment. Math::Base36 exists but only handles numbers.
Read more...
no comments
Posted in perl, unicode, postgresql
Fri, 29 Sep 2006 18:21:00 GMT
Perl has two UTF-8 encodings, utf8 which is Perl's liberal version and UTF-8 which is a strict interpretation, aka utf-8-strict. The liberal version allows for encoded characters outside the UTF-8 character set, however you can run into problems when interoperating with applications that expect utf-8-strict, such as PostgreSQL. Here's a function I wrote to strictify utf8 to UTF-8 using the Encode core module:
use Encode;
sub strictify_utf8 {
my $data = shift;
if (Encode::is_utf8($data) && !Encode::is_utf8($data,1)) {
Encode::_utf8_off($data);
Encode::from_to($data, 'utf8', 'UTF-8');
Encode::_utf8_on($data);
}
return $data;
}
no comments
Posted in perl, unicode
Fri, 29 Sep 2006 18:00:00 GMT
I recently responded to someone asking how to get a Unicode hex codepoint from a Unicode literal on DevShed Forums. Since I think it may be more generally useful, here's my solution. The following function takes a unicode literal, converts it to a decimal representation using unpack and then converts it to hex usning sprintf:
sub codepoint_hex {
if (my $char = shift) {
return sprintf '%2.2x', unpack('U0U*', $char);
}
}
my $cp = codepoint_hex('カ'); # eq '30ab'
Read more...
2 comments
Posted in apple
Sun, 17 Sep 2006 07:04:00 GMT
The other day I went to a store to check out the 13", 15.4" and 17" MacBook/Pros and especially their keyboards and touchpad placement. One of my pet peeves regarding laptops is manufacturers that position the touchpad in the center of the area below the keyboard vs. centering it under the G and H keys where hands are normally positioned. While centering the touchpad against the laptop is an aesthetic (appearances) win, it loses out on ergonomics (actual human usage) because it requires hand/palm movement to effectively use the touchpad. Laptops that center the touchpad typically have your thumbs end up in the upper left corner of the touchpad rather than centered unless you move your hands. This is compared to centering the touchpad under the G and H keys the palms typically don't have to move to use the touchpad.
Read more...
6 comments
Posted in catalyst, perl
Tue, 05 Sep 2006 15:07:00 GMT
Whenever popular Perl sites are discussed, a number of large websites are mentioned with the usual suspects being Amazon, IMDB, LiveJournal, Slashdot and others. While this is a good list, what often doesn't get mentioned is the new Web 2.0 sites that Perl 5 is powering. Perl 5 web frameworks (such as Catalyst and Jifty), OO models (Moose) and other techniques (PAR) dramatically improve Perl for web development and large-scale projects making many complaints about the language irrelevant. These, when combined with CPAN, continue to make Perl 5 a very attractive language for new web apps.
Examples of Perl-powered Web 2.0 sites include del.icio.us, (which uses the Mason templating system / mini-framework), EditGrid (an AJAX-enhanced online spreadsheet running on the Catalyst framework) and Vox (a multi-user blogging site by Six Apart, maker of LiveJournal, MovableType and TypePad). Other sites include HiveMinder, IUseThis, and MighTyV. Of these six sites, four are running on the Catalyst framework. HiveMinder is built on the Jifty framework. Yahoo is even interested in developers with Perl/Catalyst skills along with C and Java for this Senior Software Engineering position (screenshot from jobs.perl.org). Screenshots and links of active sites are provided below.
 |
del.icio.us
Description: Social Bookmarking
Perl Framework: Mason
|
 |
EditGrid
Description: Online Spreadsheets
Perl Framework: Catalyst
|
Read more...
4 comments
Posted in hacks, typo
Sat, 02 Sep 2006 17:20:00 GMT
Benjamin Gorlick asked for WP-Notable-style social bookmarking/networking links on the #typo IRC channel so I put one together in the form of a single view (template file). WP-Notable, by Cal Evans, displays a row of icons with links to social bookmarking/networking sites under your blog article allowing for easy posting tovarious social bookmarking sites.
Read more...
7 comments