Electronics 101

Ok… I have a brand new Arduino Mega2560, a 128×64 graphic display, jumpers, headers, resistors, buzzers, LEDs, a bunch of other really cool components and how-to-books. Now I just need to figure out what I’m going to build first.

HTML5 Beta Breaks Safari

A few days ago, I learned I couldn’t play YouTube videos in Safari 6. Every YouTube page displayed a black video window with no player controls. Firefox and Chrome were working fine so it wasn’t a YouTube issue. I then learned that our iPads were having the exact same issue.

After posting a question on the Safari forum, a helpful soul gave me the solution. It turns out that Google automatically signed me up for the HTML5 beta. The fix is to go to YouTube HTML5 Video Player page and click the link at the bottom of the page to remove yourself from the beta.

Shame on Google for automatically enrolling people in a beta program for something that doesn’t work without telling the user what they’ve done.

Entourage 2008: Dealing with duplicate event notifications

Scenario: There’s only one instance of the event in my calendar, but 15 minutes before the scheduled time Entourage pops up a notification that lists the event twice.

Others seem to have been able to resolve the issue by rebuilding and repairing the Entourage database, but that didn’t work for me. Since the events I’m having trouble with are recurring events that were scheduled several months ago, I had to take a different approach.

I waited for Entourage to pop up a notification window with duplicate events. I double-clicked on one of the events to open it. When prompted, I selected “all occurrences”. After the event was displayed, I appended some recognizable text to the end of the event title (e.g., “2”) and saved it (ignoring all of the warnings). This allowed me to distinguish between the visible and phantom events by simply looking at my calendar. Return to the notification window, double-click the event that’s not appearing in my calendar, delete it and the duplicates are gone.

 

Visual Studio 2010: The type or namespace name ‘type/namespace’ could not be found

I recently converted a solution from VS2005 to VS2010. After changing all of my projects to target .NET Framework 4.0, I was plagued with the dreaded CS0246:

The type or namespace name ‘type/namespace’ could not be found (are you missing a using directive or an assembly reference?)

As suggested in the numerous blog posts I found…

  • I verified that all of my projects were targeting the same Framework version (4.0 vs. 4.0 Client Profile).
  • I relaunched Visual Studio (several times).
  • I cleaned and rebuilt (several times).
  • I removed and re-added references.
  • I disabled my one and only add-on (Resharper).

After all of that, it still wouldn’t build.

It turns out that the error was in my config files. Several months ago, we used assembly redirection to resolve some version conflicts:

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
      <bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0"/>
    </dependentAssembly>
  </assemblyBinding>
</runtime>

As soon as I removed the redirection, all of my projects built successfully.

 

Mac OS X Mountain Lion

I’ve only had it a few hours, but I’ve already discovered two things I love…

Safari: I can now navigate to a web site or start a search from a single field. Google Chrome has always been that way and it’s so much a part of how I work, I had pretty much given up on Safari. That one feature makes me more likely to make Safari my default browser again.

Notifications: Love it. Entourage’s My Day app has been banished from my dock.

Bonus: Immediately after the upgrade, I got an update that fixed the retina display glitch I’d been experiencing.

Can’t wait to find out about other improvements lurking in the shadows.

 

Has Salesforce Taken Social Media One Step Over The Edge?

From Measuring An Employee’s Worth? Consider Influence:

Salesforce.com’s Chatter system released a new feature this spring called Influencer. It purports to measure how influential you are within your company, by tabulating, for example, how your fellow workers respond to the items you post to your corporate social network.

I think a colleague summed it up pretty accurately:

This is not just weird. It’s creepy, bad, wrong-headed, counter-productive, maybe even a bit insane.

I’ll be the first to agree that how you interact with your peers is important, but my gut says this is going to backfire for a couple of reasons.

  • Unintended consequences.

     
    When social networking started to explode, it was called a disruptive technology because it affected the Internet in ways people didn’t expect. As smart as they might be, I don’t see how Salesforce can combine that sort of technology with human tendencies to produce a positive outcome, much less a meaningful one.

    I know of a well-known company who implemented a policy where if an employee recommended someone for hire and it didn’t go through, it resulted in a big fat negative tick-mark in your personnel file. Apparently there were some undesirable side-effects from having too many of those ticks: when one of my interviewers was asked for his recommendation, his response was something like “I have to vote no because I’m afraid of generating a false positive”.

  • Decreased productivity.

     
    Employees should be 110% focused on the success of the business instead of worrying about how their annual review is going to be impacted by what they said or didn’t say on the company blog.

  • One size does not fit all.

     
    When it comes to organization, core values and culture, not all companies are the same. An employee should be rewarded for the things they do well and mentored in the areas where they need to improve — both of which are highly subjective based on the environment.

  • If it’s not broken, don’t fix it.

     
    The way I see it, Influencer is a feeble attempt to improve on an old concept that doesn’t need improvement. It’s called a peer review. If you want to know how employees feel about the people they work with, ask them. Most of the time, you’ll get answers that are honest, reliable and useful.

  • I wonder how many people are already dreaming up ways to game the system!

What’s Next For The Road Warrior’s Toolkit?

Today, Apple announced they would be offering unlocked iPhone 4S models in the U.S.

Apple’s new offering is currently limited to GSM. But my idea of road warrior nirvana would be stepping off an airplane anywhere in the world, walking up to a vending machine, sticking in my credit card… out pops a local micro-SIM card and I have local cellular service by the time I reach the door.

Optimizing The Windows Defragmentation Process

When I switched to Mac, the thing I missed least of all was having to periodically defrag my hard drive. Since I’m currently doing Windows development, I’m back to running Windows in a VM and made the mistake of not defragging my Windows drive for several months. After running the built-in defragger off and on for several days with no end in sight, I decided to back up and try a different approach.

  • I used msbuild /t:clean to remove all of the build artifacts for my Visual Studio projects.
  • I used cygwin‘s rm command to destroy everything in C:\Documents and Settings\\Local Settings\Temp. You could use the delete functionality of Windows Explorer or the Windows erase command, but I find rm to be much faster when there are 1000’s of files. If you use Windows Explorer, just make sure you empty your trash bin before you start the defragger.
  • I used rm to destroy most of the files in C:\WINDOWS\Temp.
  • I installed Smart Defrag.

Not only does it look like it’ll be done by the end of the day, but Smart Defrag‘s automatic functionality should keep future fragmentation down to a minimum.

We finally have the beginnings of a media server…

We hooked up a 2TB WD MyBook to a Cisco E3000 router. After getting the it configured, the DirecTv HD20 found the media server and some of my photos I copied over. Now I just have to figure out all the supported file formats and size restrictions. The HD20 would only display my photos after I made them smaller. That’s a huge disappointment.