Category Archives: Tech Stuff

Servers Are Close

The new servers will be going into the data center this week (Monday if I can coordinate it), so we are close (finally!).

Just got some stuff fine-tuned with them today… wrote a cluster-copy and cluster-exec app for copying stuff across all blades and executing something on all blades. Made an init.d script that alters the routing table at boot (for this) and also chooses which services to run based on an environment variable. So now I can change the “job” of a blade just by setting the environment variable.

Update

New servers and equipment are going to be put in the data center tomorrow (Tuesday) morning.

I Hate Networks

“Hate” is a strong word, but in this case I think it’s appropriate…

I’m so f’ing sick of trying to screw around with network/routing problems with the new servers that I’m thinking about selling all my computers and going into construction.

Trying to fix arp routing issues is more than I ever wanted to know about networking… For example:

Jun 17 10:31:38 lb1 /kernel: arp: 192.168.1.20 is on em1 but got reply from 00:07:e9:xx:xx:xx on em0
Jun 17 10:32:13 lb1 last message repeated 63 times
Jun 17 10:34:13 lb1 last message repeated 157 times

Well that’s just super awesome… how about you just stop replying to the wrong network you little bitch of a server???!!?

The problem is that server A needs to talk to server B, but only THROUGH a local “gateway” (the gateway is a hardware load balancer). So fine… Server A goes through the gateway no problem. The gateway talks to server B no problem, but then server B tries to respond to server A directly (since it’s local) instead of going back through the gateway, and then server A doesn’t know where in the hell this incoming traffic is from because it never talked to server B (directly) to start with.

Computers are gay sometimes.

MySQL Clustering

Okay… MySQL Cluster (the storage engine) kind of sucks IMO. It’s terribly annoying that you can’t alter the DB schema of anything running it (even more annoying is that you can’t alter the schema of a database that’s NOT using ndbcluster, but just exists in the same mysqld process). So I think I’m done with it (at least until they fix that and some other annoying thing).

So now I’m back to designing a MySQL Cluster using traditional storage engines (MyISAM and InnoDB). So let’s start with 4 DB servers and circular replication. (A -> B -> C -> D -> A). Okay… no problem there, especially now that MySQL has the following two variables (since 5.0.2) to prevent AUTO_INCREMENT collisions:

auto_increment_increment
auto_increment_offset

Okay, cool… just pipe MySQL client connections through the load balancers, and let it handle the failover/load balancing if needed.

But here’s the problem… if one of the servers fail, the replication chain is broken. For example if server B fails, C and D would never see anything that happened on server A. Not good.

So what about sending the replication network traffic through the load balancers as well? Then you could setup something like so: C replicates from B normally, but if B fails, then C replicates from A (automatically happening by routing replication traffic through load balancer).

Now I’m curious is if the load balancer network routing is fast enough to handle the interconnectivity of all the DB servers. I guess I’ll know soon enough (hopefully all the new equipment will be installed tomorrow or Friday).

Update

You know what would make everything really easy? If you could have more than 1 master server.

This Is What Blade Servers Look Like

I’ve had a few people email me asking for a picture of the new blade servers that are going to be taking over as web/database servers for digitalpoint.com soon…

So uhm… here is what they look like right now sitting on the floor in my spare bedroom.

From top to bottom, we have a 48 port gigabit switch (there is also a rack-mounted redundant power supply for the switch that I haven’t unpacked yet), 2 load balancers (one is a hot spare), then the good stuff… a blade chassis with 10 loaded blades. Total weight… more than a quarter ton. πŸ™‚

I made all those stupid Ethernet cables by hand which was a pain! (okay, that’s a lie… I think Scott made one or two for me)

So what is in the blade chassis? 20 dual-core 2.8Ghz Xeon processors (112Ghz total), 120GB RAM, 20 x 146GB 15,000 rpm drives (2.9TB total). All 10 blades are running SuSE Linux Enterprise. This should be enough power to run my blog for awhile (hehe… kidding).

First Blade Is Good To Go

Okay, I think I’m relatively happy with how the first blade is configured for the new servers. So I split the RAID mirror today, and put one of the drives into the second blade and am letting them rebuild their RAID mirrors onto 2 new drives. So soon I’ll have 4 hard drives with the configuration/install, at which point I’ll have 8 blades build new mirrors. And just repeat that process until all 10 blade servers are up and running with the configuration (and then mirrored to each blade’s secondary drive for redundancy).

Either way, that means we are getting close to the blade servers being ready to go into the data center.

Update

Dude, why does it take so long for a 146GB drive to rebuild in a RAID mirror (it takes like 6-8 hours)?? This is an annoying waiting game… 6 blades are live with the configuration (all rebuilding the configuration to blank drives) at this point though. So 4 of those blanks (when done) will go into the last 4 blades, then a final rebuild so all blades have everything mirrored. I guess that’s 2 more rebuild passes to go… So maybe the blades will be ready for the data center tomorrow night.

mpt-status For SuSE Linux

mpt-status is a command line utility to check the RAID status for LSI 1030 RAID controllers. Now can someone tell me why in the hell SuSE Linux Enterprise bothers to come with a version of mpt-status that doesn’t work with the Linux kernel that SuSE Linux uses???

It’s basically like bundling some application with Windows XP, but the application only works on Windows 98 or earlier.

Really annoying man…

After an hour of screwing around with it, I finally got it to work (I intentionally broke the RAID mirror to test the rebuild)…

# mpt-status
ioc0 vol_id 0 type IM, 2 phy, 136 GB, state DEGRADED, flags ENABLED RESYNC_IN_PROGRESS
ioc0 phy 0 scsi_id 0 SEAGATE ST3146854LC D403, 136 GB, state ONLINE, flags OUT_OF_SYNC
ioc0 phy 1 scsi_id 1 SEAGATE ST3146854LC D403, 136 GB, state ONLINE, flags NONE

Now if it would just tell me what percentage of the resync is done… Oh well, can’t have EVERYTHING I guess. πŸ™‚

Update

I should have also mentioned you need to run the following command to register the RAID controller with the kernel…

/sbin/modprobe mptctl

BitTorrent.com Needs To Clean Up Their Act

So apparently the MPAA and BitTorrent, Inc. are working together to clean up piracy (specifically film piracy in this case [of course since they are the MPAA]).

From Dan Glickman (MPAA Chairman and CEO):

Ò€œWe are glad that Bram Cohen and his company are working with us to limit access to infringing files on the BitTorrent.com website,Ò€ said Glickman. Ò€œThey are leading the way for other companies by their example.Ò€

Okay, that sounds like a good first step (and hopefully down the road they will start selling movies for download). But uhm… they seem to be failing miserably at this. If you do a search for a movie using the search function right at the top of BitTorrent.com, it looks like you can download pretty much anything (and this is the company that the MPAA thinks is “leading the way for other companies by their example”?). I suppose BiTorrent, Inc. could be logging everything that people download and giving it to the MPAA so they can file lawsuits, but wouldn’t that be some sort of entrapment?

All this stuff is very bizarre, but terribly interesting at the same time. We have the MPAA promoting BitTorrent’s site, yet you can download anything illegally right from the site they are promoting. You have Warner Brothers getting ready to distribute movies legally via BitTorrent (and promoting BitTorrent as well), but then at the same time Warner Brothers own message board is full of people helping each other to download Warner Brothers material that is under copyright via BitTorrent (and WB doesn’t currently offer any legal downloads via BitTorrent that I know of).

Either way, if I was the MPAA (or any movie studio like Warner Brothers), I would tell BitTorrent, Inc. to piss off/clean up their crap and at the very LEAST I certainly would stop sending them traffic.

The underlying technology for BitTorrent is nothing short of revolutionary, and if done properly it could change the way any sort of media is distributed (legally), but for some reason they don’t seem to be leveraging what they have. If they can “fix” their issues, I hope they go public, because I would be the first in line to invest in them (the ideas/technology behind it is amazing). BitTorrent, Inc. needs me as a software developer/business consultant I think. πŸ™‚

Links:

Update

It looks like I’m not the only one shares this viewpoint. Mark Cuban is pretty much saying the same thing over here. While the MPAA isn’t going to do anything to him of course, it’s funny to see him admit to copyright infringement on his blog. πŸ™‚

“Now I did have to go through some interesting chinese porn to get Scary Movie 4, but i got there.”

I’m Not Trying To Save The World

This is just more blah, blah about the whole MPAA vs. me thing.

One thing that I think people are not understanding here is that I’m not trying to change the world with this. I’m not trying to “take down the MPAA”, change any copyright or file sharing laws or anything else as grandiose as that. Hell, I have expensive billing software that I wrote that is pirated every day (I’m just too lazy to sue them… too much hassle and work IMO).

I’m still not 100% certain what the details are for the stuff the MPAA has against me (other than it was downloading “Meet The Fockers”), but I’m sure it will come out in the discovery process. I do think it will be very interesting to check out their methodology for pinpointing users for their John Doe lawsuits. Even if the world jury lost their minds and I was somehow found guilty and had to pay whatever the court sees fit, the whole process would have been a cool story to tell. And maybe I could even learn something in the whole process. I’ve learned a TON about all sorts of interesting stuff already as a result of this case – for example BitTorrent technology is actually pretty amazing from a purely technical standpoint [other companies like Apple, some Linux distributions, etc. seem to think it’s a pretty good technology too]. Even Warner Brothers is going to be distributing movies via BitTorrent (legitimately with DRM intact of course), which I think will be *awesome*. When it comes down to it, it’s all about decentralization and utilizing whatever resources are available. I’m still hoping Apple will do an iTunes Movie Store, and if the backend works with file sharing/swarming technology where users could earn credits for ultimately footing Apple’s bandwidth bills, then all the better.

Anyway, my point is that I’m not trying to save the world… I’ve received countless emails/phone calls from people who treat me like the second coming of you-know-who, and just think people are blowing everything out of proportion (obviously). I’m not interested in writing a book about it or making a movie about it (well, unless maybe someone can somehow slip in a love scene for me with someone like Rachel McAdams… haha!)

Some useful advice from me… “Don’t ever take things at face value if your gut tells you that something is fishy. Ultimately knowledge is power, and the best way to get knowledge is to figure it out on your own. Sometimes you might even come up with a better way of doing things by ‘thinking outside the box’.”

BTW – if Rachel McAdams is reading this… can you call me please, I must have lost your phone number… πŸ˜‰

Update

OMG dude, I just re-read what I just wrote and I’m an f’ing rambler. Sorry, just ignore me. (but seriously… Rachel – call me.)

No Sound With Flash

Dude, this issue has been bugging me for months on my Mac… A couple apps would never play any sound (most notably Macromedia Flash). Anyway, I finally was able to find the solution, so hopefully someone searching Google will find this post useful.

Go to Applications -> Utilities -> Apple MIDI Setup

Check the Audio Output Format (somehow mine was set to 96000.0 Hz) and set it to 48000.0 Hz (or lower).

So to celebrate that I have Flash audio again, I’m glad to present you with a newly released Denny “Blazen” Hazen video (the funny thing about this video is it’s actually 100x better than his previous ones)…

Memory Is Here

Finally got the last (physical) piece for the blade servers (120GB RAM [60 x 2GB DIMMs]). I’m a swell counter because I counted them 5 or 6 times, and each time I counted them, I came up with 40, so I thought they shorted me 20 DIMMs for a 10 minutes or so. πŸ™‚

So I was messing around with init.d, and wrote a script for it to automatically start the memcached daemon on boot. No biggie there, but this is a newer init.d than I had worked with in the past, and you can put comments in your script to easily enable/disable it for various run-levels. For example insserv -d memcached will configure init.d for the default run-levels defined within the script. Sweet, that’s pretty handy. I also got rsyncd (along with it’s init.d setup) up and running, so keeping the servers in sync should be cake.

Oh yeah… I had an interesting idea last night when doing all this stuff… why not configure all 10 blade servers identically (for example database servers have Apache and web content locally and web servers have database server processes installed). Then set an environment variable within /etc/profile.local along the lines of SYSTEM_TYPE = "database" (for database server). Then when the server boots, have it automatically configure itself as needed based on the SYSTEM_TYPE. That would make it super easy to change the job of a server on the fly. Just change the SYSTEM_TYPE variable and viola!, a database server could become a web server and added to the web cluster instantly. It would be even more interesting if the servers all monitored themselves, and if they were under heavy web load (but light on database), have one of the database servers automatically reset it’s SYSTEM_TYPE variable. Basically it would be automatic reallocation of servers/resources to whatever was needed at the time. Could be cool…

I’m an f’ing dork BTW. πŸ™‚

A Server Configuration Day

I spent most of the day getting crap installed on the first blade as well as learning about little quirks with SuSE Linux Enterprise 9.3.

MySQL 5.0.21 was an easy install (a nice little RPM for SuSE Linux comes from MySQL).

Memcached was a pretty easy compile/install… just needed to compile/install eventlib first.

The big bitch was getting PHP 5.1.4 compiled and working properly with all the options I wanted (had to install all sorts of secondary stuff that PHP had dependencies on [and then a lot of those things had their own dependencies that needed to be resolved]) and compiled a couple dynamic extensions for it (eAccelerator and Memcache). Most of the problems with the configure script not being able to find libraries it needed was solved with the –with-libdir=lib64 parameter.

I really hope that once the first blade is setup exactly how I want it, I can use the hardware RAID mirroring to just swap out one of the drives into another blade and rebuild the mirrors (and repeat for each blade)… then just set a unique IP address and hostname for each blade/server.

I still need to code some stuff to keep some of the files in sync properly (for example each web server should mirror content on each blade), but I’ll do that next week I guess.

Once the blades are all configured and ready to go, I can do some of the more fun stuff… like setting up the load balancers. I think I’m going to use the load balancers for both web and database connections for both load balancing and fault tolerance. So much good dorky fun!

Save Your Switch Info!

Yesterday I spent about 2 hours configuring all sorts of crap in the new network switch… port assignments/names, QoS, SNMP crap, etc.

I forgot that even though changes you make are applied right away, they are lost if you power cycle the equipment. Hahaha… whoops!

Don’t forget this, I know I won’t ever forget it again. πŸ™‚

Console# copy running-config startup-config

New Equipment Is Here

The blade chassis arrived on a palette today (and boy, was that an awesome time getting it upstairs), so that means all the new server equipment is here (except for additional RAM).

We got 1 blade chassis, 10 loaded blades (except for RAM right now), 2 load balancers (1 is a hot spare) and a managed 48-port gigabit switch (along with redundant power supply).

Now I need to go to Home Depot and get an extension cord and plug adapter so I can plug the chassis into a 220V outlet.

Until the equipment is ready to be installed in the data center, we have Yashi (and his camera shy brother, Wiggly) standing guard over it all.

Update

Just so I don’t forget, the chassis has an L6-30P NEMA plug and the drier has a 14-30R NEMA receptacle (for my adventure to Home Depot later).

Map Of Digg Traffic

At the beginning of last November, I had the idea to do an automatic geolocation system for blog/website owners called Geo Visitors.

This blog got quite a bit of traffic in the last 24 hours (because of a front-page digg). Anyway, check out what the maps look like for visitors to this blog in the last 24 hours… It’s crazy how much traffic digg can bring you in a short amount of time. Thankfully my quick little caching mechanism I did for WordPress last time I had something in digg, held up (last time WordPress was thrashing my servers because of the traffic).

The World

Europe

United States

New York area

If you want to check out the map in realtime (or use it for your own blog/site), click here.

Dell Blade Servers Are Here

The new blade servers were delivered this morning (10 of them). Hopefully should get the chassis tomorrow (it shipped separately), and the new switch and load balancers later in the week.

Wiggly (one of my cats) is terrified of change, and now he won’t leave my office because there are big boxes in the hallway. heh

Update

I just remembered the chassis runs at 220V instead of 120V. I know that’s fine for the data center, but I just realized I don’t have 220V in my place to configure them (maybe my drier or stove is 220V… I better check).

Multiple Instances Of mysqld

My primary MySQL server has been VERY overloaded lately (which is the main reason new blades are on the way), but today I decided to see what I can do about it in the meantime (the parameters have already been tuned as much as possible).

First I toyed around with a single node MySQL Cluster… it didn’t work terribly well. I think you really need 2 or 4 nodes for it to be effective.

Then I decided to run two different copies of mysqld on the same machine. Dude, this works *so* well under a high load that it’s almost unbelievable. While the memory fragmentation issues are still there, it’s 20x better (really). I should have done this a long time ago… πŸ™‚

APC Datastore Class For vBulletin

On one of my ultra-high traffic web servers, I switched from eAccelerator to APC today (an opcode/caching system for PHP). So far it seems pretty nice… Especially the ability to disable stat for each PHP request.

I ended up making a datastore class for vBulletin also so I could use it for the forum, so if anyone else is using vBulletin on a server with APC, here you go (if you know what this is for, you will know where it goes :)).

[code=php]// #############################################################################
// APC

/**
* Class for fetching and initializing the vBulletin datastore from APC
*
* @package vBulletin
* @version $Revision: 0.0.0.1 $
* @date $Date: 2006/05/08 16:51:06 $
*/
class vB_Datastore_APC extends vB_Datastore
{
/**
* Fetches the contents of the datastore from APC
*
* @param array Array of items to fetch from the datastore
*
* @return void
*/
function fetch($itemarray)
{
if (!function_exists(‘apc_fetch’))
{
trigger_error(‘APC not installed’, E_USER_ERROR);
}

foreach ($this->defaultitems AS $item)
{
$this->do_fetch($item);
}

if (is_array($itemarray))
{
foreach ($itemarray AS $item)
{
$this->do_fetch($item);
}
}

$this->check_options();

// set the version number variable
$this->registry->versionnumber =& $this->registry->options[‘templateversion’];
}

/**
* Fetches the data from shared memory and detects errors
*
* @param string title of the datastore item
*
* @return void
*/
function do_fetch($title)
{
$ptitle = $this->prefix . $title;

if (($data = apc_fetch($ptitle)) === false)
{ // appears its not there, lets grab the data and put it in memory
$data = ”;
if ($dataitem = $this->dbobject->query_first(”
SELECT title, data FROM ” . TABLE_PREFIX . “datastore
WHERE title = ‘” . $this->dbobject->escape_string($title) .”‘
“))
{
$data =& $dataitem[‘data’];
}
$this->build($title, $data);
}
$this->register($title, $data);
}

/**
* Updates the appropriate cache file
*
* @param string title of the datastore item
*
* @return void
*/
function build($title, $data)
{
$title = $this->prefix . $title;

if (!function_exists(‘apc_store’))
{
trigger_error(‘APC not installed’, E_USER_ERROR);
}
$check = apc_store($title, $data);
}
}[/code]

Update

I just found out APC datastore support was added to the yet unreleased vBulletin 3.6. Nice!

Update 2

I’ve since switched back to eAccelerator. APC was causing Apache segfaults under ultra-high loads.

Getting Around Dell’s Whacky Pricing

As I mentioned previously, I’m looking to get a bunch of Dell blade servers, but their pricing system (seemingly random pricing changes every day) is really irritating me. So I think I may have come up with a solution… Just buy stripped down blades and add the RAM, hard drives (and maybe even 2nd CPU) yourself.

As of right now, a single loaded blade configured as I would want it is $9,062 (that’s 2 dual core CPUs, 12GB RAM, 2 146GB 1k rpm drives, 3 gigabit ethernet ports, SuSE Linux Enterprise 9, etc.)

But if I strip the CPU, RAM and hard drives down to a minimum (1 dual core CPU, 1GB RAM, 1 36GB 15k rpm drive), the cost is $3,025.

Dell doesn’t offer 4GB DIMM modules, but they do say the blades support them. It’s actually cheaper to use 4GB DIMMs instead of 2GB DIMMs because you can use double ranked for the 4GB vs. single rank for the 2GB. This also means by using 4GB DIMMs you can max out at 16GB of memory instead of 12GB. 4GB DDR2 DIMMs are $581 each.

146GB 15k rpm U320 SCSI drives are $275 each (would need to find out if Dell sells blank drive carriers since they are hot swappable.. if not, I found them on eBay for $8.95).

A 2nd processor is $935 (the user’s guide for the blades actually have instructions for replacing a CPU, so maybe you can add one yourself too).

So if we add it all together we could have an identically configured blade (except we would have 4GB MORE RAM) for $6,834 instead of Dell’s $9,062 price. Also, would probably just end up adding 8GB RAM for now (9GB total) which would bring the per blade cost down to $5,672.

Now if they would just use AMD Opteron processors instead of Intel Xeon…….. πŸ™‚

Dell Pricing Fluctuations

Can I just tell everyone how annoying Dell’s price fluctuations are? I’m trying to purchase a blade chassis and 10 loaded blades. One day the blades are $66,030, then they are $105,400, then $66,030 again, now they are $88,040 (all pricing for identically configured blades of course). Finally I got pissed and called Dell, and their response was, “Well, we change our pricing every week.”

Gee, really??

What, do you have to roll the dice and try to guess when they will be a “normal” price again and buy them in that 15 second window? Really f’ing annoying…

High Tech Hooker Pumps

Nice! These shoes have built in LCD and GPS so pimps can keep track of their hoe’s. πŸ™‚

The Aphrodite platform shoes will have an alarm system, which emits a piercing noise to scare off attackers. The shoes are also outfitted with a GPS receiver and an emergency button that relays both the prostitute’s location and a silent alarm signal to public emergency services. Where there are problematic relations with law enforcement, the shoes will relay the signal to sex workers’ rights groups.

//theaphroditeproject.tv/

WordPress Is NOT Scaleable

The core of WordPress (this blog software) is pretty much a piece of crap as far as it’s “guts” are concerned (although I knew this already, I just didn’t care because my blog doesn’t get enough visitors to really make that fact matter much).

Anyway, I woke up this morning to my servers being thrashed (database server was hitting it’s max limit of 2,500 concurrent connections). Turns out it was because of a front-page Digg (the 3rd one for digitalpoint.com in the last 60 days, but the 1st one for my blog with the crappy WordPress backend). That didn’t hold up to the “digg effect” for very long.

I ended up cobbling together a caching mechanism for WordPress real quick that actually made everything okay, but what I really want to know is if anyone knows of any blog software out there that doesn’t have a crap backend? One that can hold up under load if need be. Sure would be nice if there is one out there already so I don’t have to do it myself.

This is the digg in case anyone is curious. It was dugg by the same person that got a front-page Digg for digitalpoint.com previously. Digg is powerful… a crazy amount of traffic at once. It’s also what spawned the server fundraiser going on now. I think TOPS30 needs to be stabbed.

Boeing 797

This is an interesting plane if Boeing actually decides to build it…

A 1,000 passenger plane that is faster than existing commercial jets (mach .88), and also more efficient because of the wing design.

.There are several big advantages to the blended wing design, the most important being the lift to drag ratio which is expected to increase by an amazing 50%, with overall weight reduced by 25%, making it an estimated 33% more efficient than the A380, and making AirbusÒ€ℒs $13 billion dollar investment look pretty shaky. High body rigidity is another key factor in blended wing aircraft, it reduces turbulence and creates less stress on the air frame which adds to efficiency, giving the 797 a tremendous 8800 nautical mile range with its 1000 passengers flying comfortably at mach .88 or 654 mph cruising speed (another advantage over the Airbus tube-and-wing designed A380Ò€ℒs 570 mph).

It’s looks a bit like a stealth bomber. Maybe they could further save costs by dropping smart bombs while making commercial passenger flights. πŸ™‚

Sony Qualia 006 (KDS-70CQ006) Discontinued

Sony discontinued their entire Qualia line of high-end products. Okay… no biggie, but maybe they should come out with something to replace the products that are now gone. For example the Qualia 006 (KDS-70CQ006) was a 70″ rear projection TV with SXRD technology and it was freaking AWESOME. No seriously… AWESOME!

Sony now has 50″ and a 60″ SXRD rear projection TVs with the same picture quality (and true 1920×1080 1080p resolution), but I still think they should come out with a 70″ replacement.

Oh well… I guess I’ll look at maybe getting the 60″ (KDS-R60XBR1) for my new HDTV…

Regents Court (No HDTV)

I really want to upgrade to a high definition TV, but get this…

I live in the middle of one of the most technologically advanced cities in the United States (like I can get a T1 on a fiber connection to my place for around $100 including local loop charges) and I have 6Mbit DSL for around $30/month. But guess what? I can’t get any sort of HDTV signal for any price (except HD over the air).

My apartment building (Regents Court in San Diego) has an exclusive deal with SBC Home Entertainment so all apartments are wired for DirecTV (without the need for a dish for each unit). That means you don’t even have the option to get cable. Okay… whatever DirecTV isn’t so bad. But the DirecTV signal used for this building is not high definition.

OMG Sweet!!! (not)

I’ll probably still get a high definition TV, pick up local stations over the air (does anyone know if HDTV over the air is digital or is it still an analog signal subject to degradation?), and maybe get an Xbox 360 or PlayStation 3 so I can actually watch something (a game in this case) in high def.

So dumb…

Gefen HDMI Extreme Cables (Fiber Optic HDMI)

Looks like Gefen just expanded their fiber optic line of cables (all fiber optic components are built right into the cable) to also include HDMI cabling (they had them for DVI before), which means I don’t need the external HDMI extender units (7 of them from this post).

//www.gefen.com/kvm/cables/fiberextreme.jsp#hdmiextreme

Now if they would just come out with a similar solution for dual link DVI, we would be all set… πŸ™‚

Intel Virtualization

Okay… this is f’ing COOL. I knew Apple was going to include the technology in a future version of their operating system, but a third-party has done it and it making it available now as a beta. For those that don’t know what Intel Virtualization is, it allows a CPU, memory, etc. to be split up into different isolated environments (running multiple operating systems natively [no emulation] at the same time on a single machine). Some more reading over here.

So guess what? Now you can run Mac OS X, Windows, Linux, FreeBSD, etc. all natively (WITHOUT EMULATION) at the same time on a single Intel Macintosh computer. Bad ASS!

ItÒ€ℒs here! Parallels is proud to launch the Beta program the first virtualization solution specifically designed to work with Intel-powered Apple computers! Parallels Workstation 2.1 Beta for Mac OS X is NOT simply a “dual-boot” solution; rather, it empowers users the ability to use Windows, Linux and any other operating system at the same time as Mac OS X, enabling users to enjoy the comfort of their Mac OS X desktop while still being able to use critical applications from other OSes.

//www.parallels.com/en/products/workstation/mac/

Boot Camp – Run Windows On Mac (Without Hacking)

Apple made a excellent move today and announced the beta for a new Boot Camp utility. This lets you run Windows natively on the new Intel Macs without needing to come up with special hacks to trick old school OSes that need BIOS instead of EFI (and also includes all necessary Windows drivers in one place).

Another really handy thing is the utility it comes with to create/resize partitions without loosing any data from the existing ones (no format needed).

Apple is a hardware company primarily, so they still get to sell the hardware… and in the course of doing so, plenty of people will switch to OS X because it might be their first (incidental) exposure to it (if they bought the machine to run Windows).

Windows running on a Mac is like Windows running on a PC. That means itÒ€ℒll be subject to the same attacks that plague the Windows world.

//www.apple.com/macosx/bootcamp/

Update

Even if it didn’t make more people buy Macs (which certainly won’t be the case), Apple’s just gained more than $5.1B in market cap after the announcement. That should cover their development costs. πŸ™‚