Skype On Linux With A QuickCam 9000

September 25, 2009

With my new job I’m doing mostly Java and experimenting with Erlang and Ruby.  One of the many benefits is that I’m no longer tied to windows with .NET development.  I inherited an upgrade machine this week so I decided to try running Linux full time.  I chose Ubuntu 9.04.

One of the tools my team uses for communication is Skype.  Skype 2.1 Beta for Linux seems to work very smoothly.  Installation was easy, I just download the version for Ubuntu from the Skype website (even though it was compiled for 8.04) onto my desktop, right-clicked the .deb file and choose “Open with GDebi Package Installer.”  It had to install a few dependencies, none of which seem to conflict with anything already installed.

The only hiccup was I couldn’t get Skype to receive sound from the Logitech QuickCam 9000 usb webcam I have plugged in (my only microphone).  Taking some hints from this forum post, here is what I did to solve it:

  1. Install the Pulse Audio Manager package:  $>sudo apt-get install paman
  2. Run the Pulse Audio Dev Chooser (which puts a headphone icon in the system tray):  $>padevchooser
  3. Left-click the padevchooser icon and go to “Volume…” then select the Input Devices tab.
  4. Mute any other microphone devices and adjust the input volume for the webcam device.
  5. Close the Volume window, and go back to the Dev Chooser Icon, this time clicking “Manager…”
  6. In the Devices tab, find the input device that belongs to the Quick Cam 9000, select it, then click the Properties button.
  7. From the properties window, select the value of the Name property and copy it to the clipboard (in my case it was “alsa_input.usb_device_46d_990_9692CEE7_if2_sound_card_0_alsa_capture_0”).
  8. Finally, go back to the Dev Chooser Icon and click “Default Source” –> “Other…”.  Paste in the device name from your clipboard, say okay, and restart Skype.  Hopefully it works!

Otherwise, the sound and video quality is very good and I haven’t had any crashes.  I can receive screen sharing from other platforms, but sharing my screen is still not supported.


Developing .NET On A Mac – Performance and Productivity

November 11, 2008

I’ve had a number of questions about performance since I posted about ctrl+alt+insert and Resharper from VMWare Fusion.  Essentially, performance is totally acceptable.

I kind of have two parts to my answer – the speed of Windows when running within VMWare Fusion on a Mac, and also my overall productivity of having OS X as my main operating system.

As for the hardware, I have the slower hard drive (5400pm), 2.53gz Intel Core Duo processor and 4GB of RAM.  I’m running Windows XP on my virtual machine (not installed in Boot Camp).  So far I’ve had plenty of memory, and the processor remains pretty idle.  The slower hard drive is definitely the performance bottleneck, but really this is to be expected on any laptop, especially when it comes to compiling large projects.  I will most likely upgrade to a faster hard drive in a few months but it has certainly not caused any pain yet.

Opening a fresh copy of the Lucene.NET trunk source tree in Visual Studio, including initializing Resharper, takes 20 seconds.  Doing a full Rebuild on the solution takes 3 to 4 seconds.  How does that compare to what other people experience?  Considering how many big servers run on VMWare, I cannot imagine the performance degradation of VMWare is very high.

Frankly, I never feel like I am waiting for Visual Studio any more than I do at work, and the “Resharper break” at startup is not noticeably any longer than my other computing experiences.  Installing VMWare, Windows, Visual Studio, and Visual Studio SP1 took a whole afternoon, but I also spent that time busy learning how to use a Mac.

But aside from performance, I feel that I myself am a faster and better computer user in OS X.  I’m doing all of my normal computing (email, finances, blogging, office, music, etc.) on the Mac side, and only run the virtual machine for Visual Studio, Windows Explorer (Tortoise SVN) and Internet Explorer.  I’m almost always in the Unity view, which makes Windows apps appear in normal OS X windows and puts the Start menu up on the top OS X application menu.  VMWare has done a very nice job making the line between the two OS’es as seamless as possible.

As for stability, Windows XP doesn’t seem any more unstable when running as a virtual machine as it normally is.

OS X has not crashed or been crippled on me yet, even when under an extremely heavy load of multiple Firefox windows, Garage Band, VMWare + Windows + VS, Apple Xcode, iTunes, Open Office and Chat all running at the same time.  I’ve put it in sleep mode and back eight times or so, and I have manually rebooted it only once or twice so far.  I’m not sure that I have powered it off yet.  There is no way Windows XP would have lasted even five days under the same stress.

I hadn’t really used a Mac since high school when they were all pretty much black and white, so I had a very steep learning curve with the new operating system.  It’s different, especially with the keyboard and shortcuts.  After a month of use, I’ve come to really love OS X and cannot imagine switching back.

The trackpad gestures on the new Macbook (and Macbook Air) are a joy to use.  When I first bought my laptop, I assumed that I would go right out and buy a bluetooth keyboard and mouse.  But it turns out the trackpad is so powerful that I don’t really want a mouse at all anymore.

Setting up a shared wireless network with an Airport Express and Airport Extreme is super easy and the services are really stable — I have automatic external backups with Time Machine and my Airport Express is plugged into my 1960’s phonograph.  I stream the sound from iTunes and Pandora to my home stereo from anywhere in my house.  All of that was just a matter of running a configuration wizard and installing an app called Airfoil.

All in all, I think I am more productive with my current setup than I ever was just running Windows.  The built-in Spaces and Exposé features are awesome.  When Windows is rebooting, I switch spaces and read some blogs or catch up on email and whatnot.

There’s also just something special about being able to run software written for Windows, Linux, and OS X all at once on the same machine.  It really lets you get out and expand your horizons as a programmer and a geek.

For example, one of the biggest unexpected pleasures so far has been discovering how amazing the OS X Cocoa development platform is.  The frameworks are complete with a nice API’s and their patterns enforce an MVC architecture.  The drag-n-drop UI designer rocks and the generated “codebehind” type classes are much closer to what I consider to be sane code than what VS.NET generates for WinForms.  They also have a built-in profiler that is one the nicest I have used.

After exploring the Cocoa framework, it became very clear to me how Apple has developed so many impressive and stable products in such a short amount of time – the iPod, a whole new OS, the iPhone, and the iPod Touch are all relatively young products and all of them have been ground-breaking.  I don’t know who their technology and patterns evangelists are, but I’ll wager that they’re sharp, vocal, and have apparently done a great job selling people early-on about how to create frameworks with lower technical friction.

So to conclude, yes, Visual Studio is probably a little slower here in Alt.NET Mac-land, but I’m not convinced it has anything to do with OS X or VMWare — I am running on a 5200 laptop drive, after all and it’s only highly disk-intensive operations (like installing VS.NET) that seem slower than I am used to.  But any performance loss is easily overturned by the other productivity gains I’m seeing by using OS X.

I hope this stuff helps people in making their decision.  I am very willing to talk with anyone via email or phone if they have questions.  I was pretty unsure about the whole thing myself, and the decision took about six months to process before I went ahead and jumped off the cliff.  So far, I have no regrets.  It’s embarrassing to admit, but I have totally become a Mac fanboy.


Developing .NET On A Mac – Resharper Alt+Insert

October 28, 2008

I’ve recently switched to a Macbook Pro and am doing my .NET development using VMWare Fusion.  I love it and it’s working very smoothly.

So far the biggest headache I’ve encountered is that I couldn’t figure out how to execute the Alt+Insert “Generate…” Resharper shortcut.

I found a few different posts with suggestions, neither of which worked for me for some reason.

If they don’t work for you either, then maybe you can try what I did:  Manually map the Fn+return combination to the Insert key within the VMWare Fusion preferences.

Step 1. Open the VMWare preferences panel from the “VMWare Fusion” menu,
Step 2. Navigate to the Keyboard & Mouse panel and then the Key Mappings subpanel,
Step 3. Click the + on the bottom left to add a new mapping,
Step 4. In the From: area, select input textbox and enter Fn+return  (will be displayed as “Num Pad Enter”).  Then choose “Insert” from the To: dropdown.

Now I can open the “Generate…” Resharper command with the Fn+option+return key combination.  Much better.