09/30/2007

Fusion Performance Tips

Several people have been emailing me wondering when I would start to post tips about my VMWare Fusion experience. They wanted to know what performance tips and tricks I have found out to make Fusion faster and/or more stable.


Here's the strange thing. I haven't written anything because, frankly, I've been too busy using Fusion with no problems at all. Not only is Fusion is faster and more stable that Parallels, but it puts less of a strain on my mac overall.


In the end, that's all I really need. My previous postings on Parallels performance were simply tips I found that made Parallels usable as a .Net development environment. With Fusion, there are no tips. It Just Works.


One of the nice things about Fusion is the ability to take advantage of both cores from within windows. Fusion allows you to select the number of processor that your VM has access to. In the case of my MacBook Pro, it's either one or two. I'm not sure if you run Fusion on a Mac Pro if you get access to more than two processors or not. The only hiccup for windows is that to take advantage of "multiple" processors, you need to have the processors set to 2 before installing windows. Apparently, the only time the multi processor files are available is during the install. I am sure I would like it more if Visual Studio.net supported background compilation on different threads. Eh, maybe in VS 2008.

08/30/2007

Surviorship Bias

I read a lot of books. I probably average a book every two weeks during the year. I tend to read almost all non-fiction, as I have found that I don't have the attention span for fiction. As a result, I tend to read a lot of technology, business and management books.

Unfortunately, I am starting to scale back the types of books that I read in these genres. What I'm finding is that since many of these books focus on showing that some idea or trait proves to be successful, they tend to all fall prey to the same basic flaw.

Survivorship Bias.

Typically used to describe the mutual fund sector, survivorship bias occurs when failed companies are excluded from studies due to the fact that they no longer exist. This is the case with most mutual fund portfolios. In terms other studies based on finding common properties of successful ideas or companies, survivorship bias simply means focusing those that are still around and hence, successful.

For example, let's say that I'm writing a book about how Aeron chairs contribute to running a successful company. Being a good researcher, I go find a dozen or so companies to see what types of chairs they use. Right there, I've made a critical flaw: by finding companies that are still in business, I'm ignoring all of those companies who are already out of business. They could have all used Aeron chairs. Because of this, it would be easy to dismiss my findings.

The latest book that i read that falls prey to this is Made To Stick by Chip & Dan Heath. In Made To Stick, the authors put forth a simply acronym, SUCCES, that represents the 6 essential qualities that an idea needs to have in order for it to stick. They prove that successful ideas exhibit these qualities, but unfortunately, they don't really make the case that ideas that don't have these qualities consistently fail. Without the latter, the former is kind of incomplete.

I guess i'll have to work hard to find books that present well researched and complete ideas.

As for how survivorship bias relates to the financial industry, that's the topic of another post.

The Essence of Language

I found this quote when reading the excellent Ambient Findability by Peter Morville:

"Narrowly circumscribed groups develop coded languages that optimize communications between insiders at the expense of transparency to outsiders."

I think that's a great way to describe what's going on with Domain Specific Langauges.

BTW, I highly recommend reading Ambient Findability. Though it was published in 2005, it's coverage of then emerging technologies like GPS, semantics and search as it relates to people seem prescient now.

It's a quick read too. Under 200 pages with lots of pictures :)

08/21/2007

CruiseControl for the Mac

This is just awesome. One less thing that I need to run in Fusion.

08/06/2007

Adios Parallels

Well, there will be no more Parallels Performance tips coming from me. I have completely moved over to VMWare's Fusion. I have been using the RC1 release of Fusion for about a month and it's rock solid and fast. Today, 1.0 came out and it's even faster.

Amen.

Ironically, the biggest reason for switching wasn't even the laughable stability of Parallels 3.0. It was their customer support. A while back, I started a thread on their forum stating that I would be moving back to 2.5 from 3.0 simply because i didn't feel 3.0 was stable enough or fast enough for my usage. I simply hoped they would improve with news builds. What happened next floored me.

They had the stones to remove my post ( as well as any replies ) from their forums. When I brought this to the attention of the administrators and the other community members, I was told that they would look into it. Nearly a month later and still nothing.

Regardless, I don't care anymore. Fusion is here, it works, and it's FAST. I don't care about fancy features such as opening documents in either os or running my windows apps alongside my mac ones. If I was that in love with windows, I'd be using a windows box.

Add the fact that Fusion lets me still use QuickSilver from with it's VM and I'm sold.

It's sad really, though. Parallels was the quirky upstart with first mover advantage, but they messed it all up by going after the flash. A simple search through their forums revels post after post after post about how shoddy their latest builds are and how unresponsive their customer support is. In fact, people who complain are often dismissed or told "tough, parallels works for a lot of other people."

Oh well. Stay on the look out for VMWare performance tips though.

07/09/2007

Collecting Friends

With the recent explosion of social networking sites, something has always puzzled me. First, consider this excerpt from Robert Scoble's blog:

"Twitter is still ahead, but growing far slower. Just today I added another 120 friends to Pownce for a total of 839. More than 4,400 on Twitter and more than 1,200 on Facebook."

My question is this: Is there any value actually garnered from adding an obscenely large amount of random people as your friend on various social sites?

Honestly, if a social networking site it meant to enhance you life through discovery of new interests, music, recommendations, etc..., is that easily done by wading through thousands of people?

At what point does the quality of a social connection come into play and if you have thousands of social connections, how can you possibly assess the quality of those connections?

Arrogance in the W3C Thought Process

I like the idea of the W3C. They're the group responsible for managing some of most widely used standards in computing. Among the hits:

* HTML ( and XHTML )
* XML
* CSS
* SVG
* XSL

The strange thing is that all of these standards are several years old. Plus there are a slew of other standards that haven't been used or adopted. Their success rate for standards is dismal. Yet, despite this, the W3C still has the stones to act like they are doing everyone a favor by setting the beat for the semantic web.

Exhibit A:

RDF has been around for years and year, yet no one really uses it. Hell, I've even tried to understand what RDF is all about and see if it could actually be useful but to no avail. That hasn't stopped the W3C though. OWL, RDFS, SPARQL, GRDDL are just a few of the standards that have failed to take off in the semantic space that are all connected to RDF and aim to bring semantic information to the web. While W3C has been drafting, recommending, and re-versioning it's ivory tower specs, people out there have been busy actually creating the semantic web.

One only has to peruse LinkedIn, Cord'd, Upcoming and a slew of other sites to see *gasp* semantic information exposed, ready to be consumed. Using microformats, the semantic community has done what the W3C has proposed to do in about 2 years. Plus, it shows no signs of slowing down.

In fact, microformats have become so popular, they've inspired, SURPRISE, another working draft from the W3C, RDFa. From the RDFa abstract:

"Current web pages, written in HTML, contain significant inherent structured data. When publishers can express this data more completely, and when tools can read it, a new world of user functionality becomes available, letting users transfer structured data between applications and web sites. An event on a web page can be directly imported into a user's desktop calendar. A license on a document can be detected so that the user is informed of his rights automatically. A photo's creator, camera setting information, resolution, and topic can be published as easily as the original photo itself, enabling structured search and sharing."

That sounds an awful lot like the the purpose of microformats. In fact, give a look over the RDFa examples. You'll notice they look a lot like microformats.

Exhibit B:

If that's not enough arrogance, think about the whole SOAP & WS-* fiasco. It's pretty safe to say that SOAP, as a proposed standard for web service communications, has failed. Craig Andera recently wrote about "The Failure of SOAP" and echoed something that I have noticed for a while: SOAP is just too complex for almost every scenario except for the edge cases requiring extensive security. WSDL is maddening to deal with. In fact, there's even a rumor that SOAP et al... were made so complex specifically so that tool vendors could step in and supply easy to use tools to encapsulate that complexity. I know, it's a big reach of the mind seeing as though the W3C is made up of a lot of tool vendors.....

Oh, Let's not even start to dive into the plethora of WS-* "standards" that no one actually uses.

What does this have to do with Semantics? Well, let no one say that the W3C is not persistent. They've just introduced a new proposed recommendation:

Semantic Annotations for WSDL and XML Schema

From the abstract:

"This document defines a set of extension attributes for the Web Services Description Language and XML Schema definition language that allows description of additional semantics of WSDL components. The specification defines how semantic annotation is accomplished using references to semantic models, e.g. ontologies. Semantic Annotations for WSDL and XML Schema (SAWSDL) does not specify a language for representing the semantic models. Instead it provides mechanisms by which concepts from the semantic models, typically defined outside the WSDL document, can be referenced from within WSDL and XML Schema components using annotations."

I'm quietly shaking my head.

07/03/2007

Parallels 3.0 Thoughts

When Parallels announced that version 3.0 of their Desktop for Mac product, I was eager to hear what new features would be included. When I got an email offering me an additional discount to upgrade before June 6th ( $39.99 pre June 6th vs. $49.99 post June 6th ), I was torn. On the one hand, I am married to running Windows on my MacBook Pro. I develop day in and day out in .NET, so i need to run Visual Studio 2005. On the other hand, I haven't been impressed with the more recent builds and with VMWare Fusion development proceeding at a rapid pace, I wasn't sure I wanted to dump another chunk of money into Parallels.

In the end, I decided to give 3.0 a shot and see if Parallels can blow me away with their new features.

After running 3.0 for almost a month, my verdict is decidedly "meh".

I don't play 3D games, so that support didn't matter to me at all. I could only hope that those enhancements would also fix the excessive graphic driver flushes that I talked about before. Doesn't seem like it did.

The new SmartSelect functionality also didn't appeal to me because i already did everything in OS X and had no desire to use more windows functionality.

I'm only interested in one thing: speed. Unfortunately, parallels is quickly losing me on that front by adding in all sorts of features that I won't use.

In fact, overall, 3.0 seems slower and more buggy than the previous 2.5 builds. I'm not the only one who thinks so. A cursory glance at parallels forums are revels a lot of people having similar complaints.

I have to say, without a significantly upgraded build, I'm not going to pay for another Parallels release. In fact, as soon as VMWare fusion goes gold, I'm going to give it a serious look.

Get your act together Parallels.

06/12/2007

Anyone want a MacBook Pro ?

I've decided to upgrade my laptop to one of the new MacBook Pros just released. That means my existing MacBook Pro is up for sale:

* 2.0 Ghz Intel Core Duo
* 15.4 inch LCD screen ( 1440 x 900 max )
* 80 GB HD
* 2 GB PC-5300 RAM
* DVD RW

Right about a year old. No dents, scratches or damage to the unit.

Ping me if you're interested: griffin at 1530technologies dot com

06/07/2007

Airport WDS

I recently made the leap and replaced my existing 802.11g D-Link wireless router with a new Apple Airport Extreme 802.11n base station. Despite not having a single 802.11n device on my network, I was eager to use some of the other advertised features. Of course, everyone knows about the USB Disk Drive sharing, USB Printer sharing and increased wireless 802.11n speeds, but I was intrigued with a new feature that I have not heard anything about before.

Wireless Distribution System, also known as WDS, enables you to chain together multiple access points to extend the range of your network. WDS is not an Apple specific technology and a lot of other base stations support it. I'll be discussing my WDS experiences with my two Apple Airports, the new extreme and my old express.

A quick note about WDS and how it's different from simply extending the range of your wireless network. While most access points can already extend the range of your wireless network, WDS allows you to extend your wireless network range and enables you to create a bridge using your second router / access point.

So, for example, let's say you have several consumer electronics devices in your living room, but your router is in your office. With WDS, you could use a second access point to connect to your wifi network then connect a hub to your second access point. That would allow you to hook up any number of wired devices to your network.

The boost in signal strength is also very nice. I've had some devices go from 60% signal strength to almost 95% signal strength. The difference in performance is noticeable.

Overall, if you have more than access point, WDS gives you flexibility and performance that simply extending your wireless network range doesn't. Remember, this isn't a Apple specific thing. So if you have a recent router from DLink, Linksys or NetGear, check out your admin pages to see if it supports WDS.

Pros:
1 ) Extends your wireless network range, providing better performance and faster speeds.
2 ) Allows you to connect remote islands of networked devices to your wireless network.
3 ) Allows you to create more than one relay for your wireless network. So you could chain together three or more access points to REALLY extend your network range.

Cons:
1 ) Must set your routers to use a specific channel. This disables your routers ability to automatically adjust your channel based on signal noise.
2 ) Manually setting up WDS involves knowing the MAC address for the access points you want to use beforehand. You must setup each access point to either be a WDS main, WDS relay, or WDS remote. Normally changing theses settings involve a router restart.