Monday, September 12, 2011

More BlackBerry woes

In case you hadn't noticed, BlackBerry isn't doing so hot.  According to a comScore report, RIM has lost another 3.7% of the mobile market, giving it up mainly to Google and Apple (See the chart below).
Source: comScore - http://bit.ly/qixHpB
This leads everyone in the mobile industry wondering what will happen to BlackBerry.  Some people have said that BlackBerry still has strengths.  Oddly enough, those strengths are the same ones they have had since before Google even came to market: great keyboard and easy to understand navigation (BlackBerry's the only phone with a right click intuitively similar to Windows' right click).

So what is a washed up mobile phone maker to do when facing obviously superior competition?  Well, they can do what most technology companies do: steal.  What will it take to get Google's Android on BlackBerry hardware?  In that case, it wouldn't even be stealing.  Some people are even talking about this as an alternative for BlackBerry (BlackBerry's Support Forums) and I wouldn't be surprised to see some hacker out there loading Android on a BlackBerry (if they can jailbreak it).  

Another option is for RIM to start manufacturing a bolt on keyboard for iPhone and Droid.  Could you imagine what would happen if Otterbox or Boxwave were to partner with RIM to make a case with a flip out BB style keyboard?  It would be a killer for RIM since they would lose the entire BB-has-the-best-keyboard market.  But really, what else can RIM do?

Honestly, I see BlackBerries running Android within a few years.  It's their only viable option.  

Monday, August 15, 2011

RIM's last chance

Well, in case you didn't hear, Google bought Motorola Mobility (a split off company from Motorola that built their phones).  This is Google's second attempt at manufacturing hardware for mobile phones (the first being the very underwhelming Nexus).  This will make Google much more like Apple and RIM when it comes to mobile phones: they will now make the hardware as well as the software for their mobile phones.  While Google claims the acquisition is in response to the MSFT/APPL led coalition which won the battle over the defunct Nortel's immensely valuable set of patents, it coincidentally lines up Google to directly compete with Apple in the mobile world.

Now that Apple has proven that, given the right spark of ingenuity, it's best to produce the phone and the operating system together, it only makes sense that the largest smart phone operating system builder would follow suit.  They'd be dooming themselves to failure if they didn't.  Microsoft made a similar gamble making a huge deal with Nokia (not an acquisition but more of an agreement) to have them produce the hardware that Microsoft hopes will rocket their mobile operating system (or their unified operating system, does anyone think that will really happen?) into a level of decent competition with their old rival Apple.

All of this begs the question: what about everybody else?  What other players are out there, and will the addition of another 800 lb. gorilla into the market allow anyone else to survive without putting on the gorilla suit?  What will happen to Microsoft (who is pretty much the only other smart phone operating system maker)?  What will happen to RIM (who has had the most dismal of quarters followed by "streamlining" [read layoffs])?

Here's what i see: RIM is betting everything on their QNX operating system.  With good reason, it's supposedly revolutionary (I am not an operating system developer so i couldn't tell you whether it is or not, but the experts have said that it is).  However, RIM is dead set on releasing the next version of their BlackBerry OS for their entire line of phones before dumping that as soon as possible for QNX.

If RIM survives that self induced roller coaster, it could emerge as the next gorilla to enter the playing field.  If not, RIM will not have much choice but to show up in Redmond wearing a short skirt and high heals promising incredible experiences for not much money.  At that point Microsoft (who has never really had any success building hardware for their own operating systems, at least not compared to the success that Apple has had) will have the opportunity to gobble up a hardware maker that is already established in the enterprise market. If Microsoft doesn't screw it up (like Cisco did with the Flip), they may emerge as the next suited gorilla in the market, finally able to compete with Apple and Google.

The other players in the smart phone market don't stand much of a chance at this point.  Who in their right mind would try to build a phone and put Google's operating system on it?  Who could really compete with a Google OS/Google hardware phone using a Google OS/[Any] hardware phone?  Is Samsung up to the challenge?  Who knows.

Tuesday, August 2, 2011

Creating detour loops in powerpoint

Often when giving a presentation i use visual aids.  Since there's nothing like powerpoint out there, i've tried to learn as much as i can about it.  One tip i can give is how to create what i call detour loops.  Detour loops allow the presenter to detour onto another topic temporarily then return to the main topic without losing the flow of the presentation.
This technique essentially uses links that the presenter can use to jump to another position within the presentation and jump back.  So, let's say i'm describing the functionality of a certain piece of software.  I'll give an overview with a slide that has some explanatory text on it.  Normally, when i'm done with this slide, i'll switch over to the software itself and show the student how to do what i'm doing by using the actual software (no powerpoint slides needed for that part).  However, sometimes it can be useful to not show the software itself but rather a screenshot of the software (think large groups or buggy software).  In that case, i want to show some powerpoint slides then resume the show.
Well, on the preceding slide that has the explanatory text, i'll put a link to the slide containing the screenshot.  This slide is actually the next slide in sequential order, but i've hidden it so it normally doesn't show up.  That's the first slide of my detour.  All of the slides in the detour are hidden.  That way they don't show up unless i click the link.  The nice thing is that once you navigate to a slide that's hidden, all the slides after that will show up even if they were hidden.

Friday, July 15, 2011

Google+ and how it will change the world (or not)

This post is not much more than a place holder.  I got my G+ account already (gplus.to/sweenig), but i haven't spent enough time to figure out how or if it will change the world.  I promise it will come.

Thursday, July 14, 2011

New Job

Sadly, I'm leaving RIM after 9 months to pursue a consulting job mainly serving CA customers through installation/configuration services, training/knowledge transfer, and advanced consulting related to the CA|NetQoS suite of products.  I'm sad to leave RIM, especially when things are getting really exciting, but I'm also optimistic about my new position at Enterprise Iron.

Monday, July 11, 2011

Using auto refresh in Chrome

I belong to an online community hosted by CA.  They recently overhauled the website and added a chat feature so you can chat with other community members.  While this is great and functions much like the facebook instant message feature, the page is set to timeout (i.e. log out the user) after 15 minutes.  The timer resets whenever i navigate to another page in the community.  However, if i just open the community page and leave for 15 minutes, i'll end up getting logged off and showing offline to the other community members.  When i was at RIM, i built a simple html based page using an inline frame and some javascript to auto refresh the iframe.  This basically refreshed the page every 5 minutes.  This worked and had to be done this way since i could only use IE.

Now that i principally access the community on my own computer, i use chrome and have found this wonderful little add in that will refresh any page for you.  It's called Auto Refresh Plus. I now have a little button i can press to display a simple clean menu.  The menu has various time options; i pick 5:00 and click start.  Now the page automatically refreshes every 5 minutes.  Woohoo!

Monday, June 27, 2011

How to create a ring tone in iTunes

Turns out this feature used to be built into iTunes, but Apple got greedy so they took it out so most people would just buy ring tones.  While this is dumb, it's perfectly legal to create a ring tone for your iPhone using a song you've already purchased or an mp3 you already have in your library.  It uses the 'fair use' clause of copyright law.  Fair use is the same clause that allows you to use your DVR or make a mix tape all while 'copying' copyrighted content.  It's totally legal.

Wednesday, June 22, 2011

Efficient use of wireless bandwidth

Michael Mace recently posted his second article about the impending doom of mobile executives.  The article (and it's sequel) are very good summaries of the dire straights in which mobile execs find themselves.  They are between the signature rock and a hard place, with either decision they make resulting in the probable loss of their career. 

Monday, June 6, 2011

Best Hurricane Tracking Information

Living in the south and being involved in several hurricane clean up projects, i've acquired several useful links that i monitor during hurricane season to make sure i'm up to date on the current status of anything that may be headed our way.  I figured i'd share this information with the world.

There are usually a couple others that i use, i'm still looking for them.

Friday, May 27, 2011

SNMP Polling vs. Traps

SNMP has been around for decades.  Many manufacturers build SNMP agents into their products so NMS nodes can monitor their status.  There are two ways SNMP can be used to monitor a device: 1) active regular polling by the NMS to the device and 2) traps sent by the device to the NMS.  Unfortunately, many people seem to only know about one or the other method.  I'm approached regularly with requests to monitor a particular set of devices via SNMP.  I ask what metrics they'd like to monitor (approaching from method #1) and they usually respond with the MIB and say, "We want to monitor everything."  After a simple discussion about what they expect should happen, their requests usually come down to wanting NV to be able to receive any and all traps defined in the MIB.  Oh the humanity.

NetQoS: the Next Pure Digital?

After hearing about the announcement by Cisco to officially drop the Flip camera, I have started to wonder about the similarities between Cisco and CA and Pure Digital and NetQoS.  Read this article and then see if i've gotten anything wrong:
Cisco is a big company that has gobbled up competitors instead of beating them at a fair fight.  Just like CA.
Cisco bought a company that could have gone stratospheric but has failed to manage it well.  Just like CA.
Pure Digital customers "[felt] like [they had their] heart ripped out and replaced with a brick.  Just like CA customers.
Cisco didn't apply the right resources to their new golden egg acquisition.  Just like CA.
Pure Digital employees that came over to Cisco will soon be getting layoff notices on their desks.  Every other week, another NetQoS employee leaves CA (John Mao, David Oliver, Lindi Horton, John Catalano (et al), Joe Burbano, Steve Harriman (et al), Greg Hutton, Mark Wheat, etc. etc. etc.).  At least NetQoS guys know to jump ship before it drowns.
So, does this spell eventual doom for the NetQoS products?   I don't think so.  But nothing has come out of this acquisition unscathed, especially the relationship between the vendor and the customer.

Apple being a little underhanded?

I should disclose, i work for RIM.  Still, even if i didn't work for them, i'm a little shocked that Apple would sink this low.  Is it true?  Perhaps.
http://www.appleinsider.com/articles/11/04/07/apple_reportedly_caused_display_shortage_that_delayed_rim_playbook_1_month.html
Still, this is the tactic i take when fighting against aliens or killer robots.  Cut off their supply.  Even if it means you'll only delay them.  In the technology race, release dates are significant down to the day.

Stitching PDF documents

Every once in a while, i have to submit expense reports.  Like some other new expense report systems, when submitting receipts, you have to print off a cover sheet containing a bar code.  When you send in your receipts via fax (what is this, 1987?) you have to use that barcode sheet as a cover sheet.  Luckily, you can also email it in.  However, your scanned receipts and the barcode cover sheet have to be part of the same file with the barcode file coming first.
The problem i have with this is that essentially, i have to print out the barcode sheet and scan it in with all my receipts.  Seems a waste to print something out so i can scan it back in.  When i talked to one of the guys in the expense department, he said he'd put in a request for me to get a full copy of adobe acrobat pro so i could merge them together.
So, i did a little search and found pdfsam (PDF Split and Merge).  This little utility is free and lets you split pdfs into multiple documents and reassemble them any way you want.  Pretty cool stuff. Definitely cheaper than acrobat pro!

Finally, something that doesn't work in iOS, wait nevermind.

I got an iPad back in October.  I've been really pleased with it.  It's constantly exceeded my expectations.  With the release of iPad 2 yesterday, Apple calling 2011 'the year of the iPad 2', and RIM's own tablet coming out soon, i'm excited to see how quickly we can get to a point where we don't need desktop systems in our homes. 
Anyway, about the thing that doesn't work.  I use the remote app to remote control my iTunes on my personal computer.  That way every time i want to change songs, i don't have to switch my kvm over to my home computer.  I can just reach over and click next on my ipad.  I've had problems with this before though.  My wifi at home is A/B/G/N.  The iPad supports B/G.  Sometimes when my iPad would time out and switch itself off and i'd manually turn it back on, it would report that the wifi was connected, when really it wasn't.  This was annoyingly obvious when trying to use the remote app (since the remote app requires ethernet connectivity).  I finally figured out that i could go and disable the wifi then reenable it and everything would work fine.  Then, this afternoon, my wife sat down to watch a netflix movie on her iPhone.  We got a startling email from AT&T stating that we'd gone over our 200MB limit for the month.  Turns out this problem applies to all iOS controlled wifi devices.  I disabled her wifi and reenabled it and lo and behold, web pages started to load much faster.
So, i had to conclude that the problem is not actually with iOS but with my router.  After a little research on the internet, i found that 802.11n is the culprit.  I went onto my router and disabled A/N wifi and without doing anything to either device, they both started functioning.  My wife got a bunch of emails that had been delayed since there was no connectivity.  And a youtube video i had paused on my ipad suddenly started working.
Go figure.  I guess you could technically call this a bug with the iOS and the corresponding hardware since the presence of an N network shouldn't hose up a G network.

Discovery's Final Launch

Well, by now the shuttle Discovery is within sight of western Europe (the shuttle can see them, they won't be able to see the shuttle).  I've had the video from spaceflightnow.com playing in the background all this afternoon.  I took 20 minutes to bite my nails as there was a glitch at the range (did you know there are systems on standby during every launch to blow the shuttle out of the sky if we lose control of it and it starts kareening toward a populated area?!?!) and to watch the subsequent launch.  It was an amazing sight.  Even with the little piece of tile that came off and was plastered over with a sharpie and the BSOD that happened at the firing range, it's an amazing feat that men can launch themselves into space, orbit our planet, and meet up with other spacecraft in space.

This will be the final flight of the Discovery.  After it lands, NASA is going to mothball the whole thing and put it in a museum.  This makes me sad.  I wanted to see a time when i could take a weekend trip to the space station and, who knows, maybe run into the Doctor.  Thank you US Gov't for destroying the dreams of every Star Wars fan who dared to think that we could actually make this work.

Syndicating yourself

Thanks to Kevin Grimes for the tips on how to get this setup.
I recently configured our community to syndicate to twitter, facebook, and LinkedIn. It was actually easier than i thought. I discovered that this can be used to syndicate your own self out to twitter and facebook.  This method only allows for one way communication from the community to the social networks.
So, here's how i did it:
  1. Sign up for a bit.ly account. I used the same password for all the accounts to make it easy. Once you've got your bit.ly account created, go to settings and make a note of the API key. You'll need that later.
  2. Make sure you have a twitter account and a facebook account.
  3. Connecting to Twitter and Facebook:
    1. Now go to twitterfeed.com and sign up for an account. Twitterfeed is a service that will take multiple RSS feeds and publish them to twitter and/or facebook. So, go get any RSS feeds you want to syndicate. I went and got the feed from my blog.  Twitterfeed has two steps, one to get data from your RSS feeds, and the other to determine where you want to publish that data.
    2. On the twitterfeed site, click 'Create new feed'. Give your feed a name; this name won't show up anywhere except in twitterfeed. It'll help you keep your feeds straight (I ended up with 10 feeds, so it was important to have some intelligent naming). Paste in the URL for the RSS feed and hit 'test rss feed'.
    3. Open advanced settings on that page. I change the update frequency to add up to 5 updates at a time. Since twitterfeed checks the feed every 30 minutes, it's possible that more than 1 new item appears in the feed. If this is so, twitterfeed should go ahead and publish as many as possible (which is a maximum of 5). Also, change the 'Include' option to include 'title only'.  'Post link' should already be checked; expand bit.ly settings and put in your bit.ly user account name and the API key. This will allow URLs to be shortened so they don't take up the majority of your post in twitter.
    4. Go on ahead to step 2. This is where you'll select where to publish your feeds to. Pick twitter and you'll be brought to a page asking you to pick what account to publish to. Your twitter account will not appear in the drop down box to begin with. To get it in there, click the huge 'authenticate twitter' button and sign in with your twitter account. Once you're brought back to twitterfeed's page, your account should be available in the drop down box. Select it then click 'Create service'.
    5. Repeat the process for facebook. For facebook, you can choose to publish the feed to your account or any of the pages you manage. The nice thing is that when you add the rest of your feeds, you won't have to re-authenticate. Your twitter/facebook accounts will be available from the drop down box.
    6. Once you've created the services for facebook and twitter, click the All Done button. If your feed has items, you should see them show up in facebook and twitter within a few minutes.
*If you want two way synchronization between twitter and facebook, you can use the facebook app called 'twitter'. Then you would only use twitterfeed to get your posts to twitter.

Facebook account versus Facebook pages

In the last little while, i've received friend requests from 'people' on facebook.  Really, the requests come from an organization like my local rock climbing club.  The account was setup by a person who is an officer of the club and wanted to get the club on facebook.  So, that person created a facebook account as if the group was an actual person.  It was then that i received the friend request.

For anyone trying to do this same kind of thing, don't do it!  Actually, don't do it that way.  Actual accounts are for real people not organizations.  If you have an organization and you want a presence on facebook, create a page.  The page can contain information about the group and has a wall.  Instead of friends, the page gets followers.  The page is administered initially by the person that created it.  The creator can then add officers that have varying levels of permission to do stuff on the page. 

This is the car I'm looking for

I don't normally do this, but someone found this video and sent it to me (thanks ang).  Now I have this inexplicable need to buy this car.  It's not the color i'm looking for, but it is the right car.


View it here if your browser sucks.

I finally broke down and got twitter

In order to start syndicating myself a bit more, i've decided to finally get a twitter account.  I held out as long as i could.  Anyway, a friend of mine from the CA Endevor community sent me a how to on connecting your blog to your twitter account.  He also sent instructions on how to connect your blog to a facebook page, but i haven't tried that yet.  Anyway, here are the instructions (i've modified them slightly based on my experience):
Assumptions: You already have a twitter account.
  1. Create a bit.ly (http://bit.ly/) account.
  2. Find the bit.ly API key (found on the account settings page)
  3. Create a twitterfeed (http://twitterfeed.com/) account.
  4. Create a new feed using the RSS feed from your blog.
  5. Under advanced settings, set it to include the title only.
  6. Under advanced settings, make sure "post link" is selected.
  7. Under advanced settings, select shorten link through bit.ly and use the 'bit.ly settings' menu to enter your user account and the API key from step 2.
  8. Continue to step two of the feed creation and authenticate your twitter account.  This took a while because my IE settings were keeping things from happening.
  9. Once you authenticate, your account should be available in the drop down box.  Make sure it's selected and continue.
That should be it.  You should see a new post on twitter with the title and link to your blog entry (it might only include the first one in the beginning, but should include every one after that).

Apple and Big Money

Seems Apple is riding high lately.  Their string of successess has only been marred by the leave of absence of Steve Jobs.  However, new and exciting things are on the horizon for iOS based devices:
http://www.appleinsider.com/articles/11/01/25/apple_finalizing_wireless_e_wallet_for_iphone_5_ipad_2_report.html
http://www.appleinsider.com/articles/11/01/24/deutsche_bank_very_positive_on_iphone_trial_no_going_back_to_blackberry.html
http://osxdaily.com/2011/01/21/xbmc-for-apple-tv-2/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+osxdaily+(OS+X+Daily)
Not to mention the announcement that you can now get an iPhone on Verizon instead of being forced to drink the AT&T kool-aid.  Does all this add up to a huge change in the technology world?  For sure.  Does it mean people will eventually not get desktop computers?  Maybe.  More likely it means more homes will adopt the home server architecture having one very powerful very high capacity system instead of multiple desktops per household member.  Given that RDP and VNC both exist as apps for iOS, it wouldn't take much to turn an iPad or even an iPhone into a terminal.  With the right docking station hooked up to the network, a couple monitors, a keyboard, and maybe a mouse (probably not), any iOS device could be turned into a terminal.  However, i expect that services that would normally be accessed with direct input to a PC will be configurable using apps.

Excel and Dates

While recently working on some data, i recently stumbled across some formulas that i found useful:

Excel handles dates as numbers. Basically the number of days since 1/1/ 1900 0:00. The decimal portion of the number represents the hours and minutes within the day. For example today is 40556.64462. So, if i wanted to subtract the number of hours until quitting time, i'd need to subtract 40556.64606 from 40556.70833. This is fairly easy.

XBOX Kinect review

So, i did get a kinect around the middle of december and have liked it overall. It's really quite good for a first generation motion capture video game controller. Most of the positive feedback can be read in other reviews. I wanted to make sure i got my gripes on here, so here i go:
  1. It may be my HDMI cable, but i've had problems with the xbox turning on. If my tv is not all the way switched to the correct input when i turn on the xbox, it doesn't seem to enable the hdmi port on the xbox. Not really a problem with the kinect, but it didn't start happening until after i hooked up the kinect.
  2. I have the kinect on the same table the tv, so it's below the tv and out from the wall by about 2 feet. The 'optimal' range from the sensor is about 6 feet. I have a fairly spacious den, but i still find myself backing into the couch to get the best experience.
  3. Not all kinect games are created equal. I have three games: kinect adventures, kinect sports, and biggest loser. It's easy to tell which games were tested with normal people and which weren't. When using kinect, navigating is as easy as controlling a mouse cursor with your hand. Since there's no button to click on, you have to hold your hand over a button to click on it. When a game requires a bunch of option selections to start the game, it gets tiresome waiting for the xbox to register clicks. Biggest loser is the worst game i've played so far. The menu consists of only icons, you have to mouse over in order to get a description of what each icon does. The problem is that the hover over click time has been reduced (supposedly to speed up menu selection). By the time i've hovered over a button long enough to read half of the 5 word description (in small font btw) the game has registered a click and opened that menu. The other problem with that game is that it doesn't do a good job of recognizing the exercises you're doing. They put a trainer up on the screen and a 3d representation of you as well. You're supposed to follow the trainer. If you're not exactly in sync with the trainer, it frequently stops the game saying you need to decrease the difficulty because you clearly can't keep up. And it isn't just me; i've had two other people go through the 'pre-test' and fail out completely at the same exercise, the game stating that clearly this exercise is too much for us.
  4. Having nothing really to do with Kinect: you can't do much online with xbox unless you've paid for a gold xbox live membership. This is a clear loseout to the wii where you can play online with anybody as long as you have their information.
That's pretty much it. It's been fun playing with the kinect. I usually have to shower after playing since i usually work up a sweat. In fact, given some wrist weights, i've been able to shed a few pounds while duking it out in the boxing arena. Volleyball is really lifelike. I find myself jumping as high as i can to get those spikes.

Sorting Excel data using formulas

Sometimes, you sort data in excel. This is handy since the order provides a framework around which our mind can be wrapped. However, it's not always handy to have to select the cells you want to sort and use the menus to sort them. Sometimes, it would be handy to sort the data automatically.

Square

Wow, Thanksgiving hit me harder than I thought it would. I've been neglecting my blog. Well, i've come back from the holiday with a doosey.
Check out http://www.squareup.com/. Quite honestly the coolest thing i can do with my iPad. Read here as to why it can't be done on the blackberry.

Using VMWare to test software for bugs

I earlier posted instructions on how to create virtual machines to run other operating systems on your desktop. Another advantage of virtual machines is that they can be used to test software for bugs or virii. If you've ever downloaded beerware and wondered if it would infect your computer if you ran it, installing it on a VM can (mostly) keep your computer from getting infected. At least, the VM might get infected or hosed. If that happens, simply power off the VM and delete the files.

Another way of running software you don't necessarily trust is by running it in Wine. Wine is not an emulator, technically. It allows you to run windows programs in linux. If you have a Linux VM built, go ahead and install Wine in the software center. Then copy your executable to the linux box. Right click and select open in Wine environment. It'll run just like windows.

There are many options for Wine. One being that you can map lettered drives in the Wine environment to physical locations in the Linux file system. There's a huge learning curve in regards to permantly mapping Windows file shares to the linux file system. I'm still wrapping my head around that. Perhaps when i figure it out i can write a 'windows user's guide to mapping windows file shares in linux' article.

iOS 4.2 is bigger than the Beatles

So, the Beatles are bigger than God, right? Well, with the recent tease and supposedly huge announcement from Apple about the Beatles library finally being released on iTunes, I'm left saying, "Dang Steve, getting multitasking on my iPad is more important that your new money making scheme." I mean, not only did they miss the Beatles revival of my generation 10 years ago, but I've already bought all the Beatles music i want on CD and ripped it into my music library. Why would i want to buy it from Apple when i already bought it?

Seriously, with the playbook (better battery, no required data plan if you have a bb, flash, and multitasking) release emminent, the iPad had better get a facelift or finally face a competitor eye to eye. Contrary to Apple's promise that i'll never forget today, i probably will as soon as iOS 4.2 is released. Until then, i'll be listening to my Beatles music that i didn't purchase through iTunes and waiting for Apple to fulfil its promise to upgrade my iPad sometime this month.

Custom Formula: IP2DEC (IP address to decimal)

THIS CONTENT IS NOW HOSTED ON GITHUB: https://github.com/sweenig/ipfromdec/

Excel and IP addresses

THIS CONTENT IS NOW HOSTED ON GITHUB: https://github.com/sweenig/ipfromdec/

Removing the protection from Excel workbooks

I get frustrated from time to time when i'm forced to use a mediochre Excel spreadsheet. For example, i have a spreadsheet that i have to fill out from time to time. I put in between 3 and 10 entries and have to number them. This is the most annoying thing. The first thing i did was open the original template and insert the following formula into A2:

Windirstat

I don't give out my recommendations lightly.  If i haven't used something, i'm not going to tell you that i like it.  I might say to give it a try, but i won't tell you that it's the best thing ever without knowing.

I've used Windirstat (Windows Directory Statistics) for several years now.  It is the best tool i've found for tracking down why your hard drive is full.  You can get it at http://windirstat.info/.  The actual code is hosted on SourceForge.net, which has always met my needs. 

Download windirstat and run it.  Let it analyze your C: drive to see what you get.  Besides creating an awesome visual representation of your hard drive files (btw, go to options and turn on viewing free space), it'll list the folders on your hard drive that are consuming the most space. Ever run out of space on your hard drive and wondered what you could delete that would have the biggest impact?  That's what Windirstat can do.  It'll even look in your recycle bin to see if anything in there is taking up significant room.

How to increase your rating on My CA

Wow, this will probably change soon given the planned upgrades, but if you wanted to increase your rating, post an entry to your blog then give it a thumbs up.  Then you can delete the entry.  The positive rating will stick with your profile.

Step by Step Instructions for building a Linux VM

As a continuation of a previous post, I wanted to give some detailed instructions on how to get a VM up and running.  While i'm at it, if you haven't tried Ubuntu yet, this will be a good way to get you immersed into it.
These instructions assume you've got vmware player already installed on your computer.

First thing you need to do is get a copy of the OS installation iso file.  An iso file is simply a file like a word document or excel spreadsheet.  The difference is that an iso contains the details of an entire CD or DVD.  You could use the iso to actually burn a copy of the cd.  Or you could use something like Daemon tools to virtually insert the CD into a virtual drive (another post another time).  Go to http://www.ubuntu.com/desktop/get-ubuntu/download to get a copy of Ubuntu.  It's the easiest version of Linux, especially if you're used to Windows.

Once you've got the ISO file downloaded, go make a 'Virtual Machines' folder somewhere on your hard drive.  I put this in my user profile directory alongside my documents, music, and video folders.  Put the ISO file in that folder.

Launch VMware player and click 'Create a New Virtual Machine'.  A wizard will be launched with three options.  If you had a copy of ubuntu on disc, you could just insert it into your drive and pick the first option.  But, VMware can just use the iso file we downloaded.  So, pick the second option and browse out to the iso file in the 'virtual machines' directory.

It should say something like "VMware will use easy install".  Click Next.

You're then prompted for your name, username, and password.  VMware's going to setup your account for you, so go ahead and put in the information.

The next step will prompt you for a VM name and location.  Pick a name.  Then browse out to the 'Virtual Machines' folder.  VMware should append the vm name to the location.

You'll next be prompted for hard drive size.  This is up to you.  You can allocate as much hard drive space as your computer's hard drive has free.  Unless you're going to use this for your primary desktop, you will never need more than 20GB.

The next screen will give you a summary of what you just told VMware to build.  Click Customize Hardware.

If you want to give your VM more memory, use the slider.

You probably don't need a floppy drive so you can remove that.

Make sure the network adapter is set to bridged.  This makes networking transparent.  As far as the VM (and everything else on your network) is concerned, your VM will be plugged into the same network as your computer.

You could also remove the sound card and/or printer if you won't need them.

Hit ok then finish.  You'll see the VM powering on and Ubuntu will begin to install.  At this point you're essentially done.  Instead of you having to setup Linux, VMware is going to do that for you.  It'll setup a user account for you, install the VMware tools (under the hood stuff, but you'd notice if they weren't there).
Once easy install is done, your desktop is ready.  You can start customizing it however you want.  Just be warned, if you hit the X to close out the VMware player window, the VM will be suspended.  Obviously during the install this will probably hose everything.

Also, if you want to connect USB devices to your VM, plug them into your pc.  Then look at the status bar in VMware player.  You'll see an icon for each device.  Right click the device you want to connect and hit connect.  Just a warning, a device cannot be connected to both your computer and the VM at the same time.

How to stay logged into My CA

Don't you hate how MyCA logs you out if you leave it alone for more than 12 seconds?!  It drives me nuts.  Well, i may have discovered a bug that keeps you from having to log in even when you get the little message at the top saying your session has expired.  When you get that message, instead of clicking on the link in the message, click one of the other navigation tabs.  For example, if you're looking at your MyCA, click on your Blogs tab.  It'll log you back in without having to put in your username and password.

Honestly, I don't know how anyone expects us to use the chat feature if you can't stay logged in while doing other stuff.

VMWare for Beginners

This post is for beginners.  No hate from the peanut gallery!
My life changed when i found out about vmware.  (It also changed when i found out about 3tera, but that's for a different post.)  Getting into VMWare wasn't the easiest thing mainly because i'm a hardware guy.  If you virtualize my hardware, what am i supposed to do?  But the wonderful thing about vmware is that you can make hardware virtually; this means you can make as much hardware as you want with no cost! 

VMWare could be called a computer emulator.  An emulator is software that acts like hardware.  The easiest example of a hardware emulator i can think of is one i used back in high school and college: the TI-83.  I would open this app on my PC and i would be presented with a graphical interface that looked exactly like the TI calculator i had in my hand.  I could do everything with the emulated calculator that i could do with my physical calculator. 

That's what VMWare does, except it does it for a computer.  The simplest computer has only a couple pieces: a motherboard, processor, ram, hard drive, keyboard, mouse, and monitor.   VMWare emulates all of that (and more). 

To get started with vmware, go to vmware.com and sign up for an account (it's free).  Then look for the vmware player.  It's the simplest version of vmware.  Once you've got it installed, open it.  You'll be presented with a few options, you'll want to create a new virtual machine.  The wizard will help you create your computer.  The first thing it'll ask for is an installation CD.  Find your trusty windows xp, windows 7, ubuntu, or debian installation CD and pop it in your drive.  VMWare will inspect the cd and virtually put together the hardware for your computer.  Go through the rest of the wizard and power on your virtual machine.  You'll notice that you'll get a quick bios screen, then on to installation.  At this point, nothing is different from setting up a physical computer.  Let windows or linux install and you'll end up with a full blown computer emulated on your computer.

The really cool thing about this is that you can run a linux based computer inside your windows computer.  Or if you have programs or devices that only work in windows xp but you have windows 7, you can run xp in a vm and load the program there (this is essentially the basis behind xp mode in windows 7). 

Once you get more comfortable with VMWare, you can get the free VMWare server installed on your desktop (warning, this won't work on your computer if you're using a home/home premium version of windows).  The nice thing about vmware server is that you don't have to have a window open for each vm running.  You can run them in the background; with vmware player, if you close the window, the vm goes into standby.

I have VMs for several different things:
  • my canon scanner which isn't compatible with windows 7. I have a very trimmed down version of windows xp running in a vm.  Whenver i want to scan something i boot up the vm and plug in the scanner.
  • I play around with ubuntu and debian to try to increase my linux prowess.  The cool thing is running windows apps through wine on ubuntu in a vm running on windows.  Try saying that 10 times fast!
  • I have an old dvd ripper program on a stripped down windows xp machine.  This allows me to make an avi file from my dvd movies so i don't have to jump up and put in a dvd when i want to watch a movie.
  • I run a sharepoint website for my family.  It uses windows 2003 in vm.
  • I run a development linux box to test OTRS and other linux based open source software.
The nice thing is that last thanksgiving, i bought a desktop computer with 8GB of RAM and a 1TB hard drive.  My desktop normally only needs 2GB of ram to run, so that leaves me 6GB that i can dedicate to VMs.  Since most of my VMs are stripped down to only perform one or two tasks, they don't require much.  I can run all my VMs at once (except for sharepoint) and they all run fairly well.

Media Library Organization

I'm still not sure why, but the other day when i logged onto my home computer, all the applications that i had pinned to the taskbar were gone.  I noticed yesterday that iTunes seemed to have lost its head.  It opened up and displayed no music, no content.  Nothing.  Needless to say i was pissed.  As i'm writing this blog, i'm beginning to suspect that the recent installation of office 2010 may have happened around the same time.  I wonder...

Anybody bought an xbox Kinect yet?

I'm an early adopter.  I realized that earlier this year and it's made purchasing technology a lot less stressful (knowing who you are usually does that to you).  So, to fulfill some inner need to maximize my technological prowess, I purchased one of the new xbox 360s earlier this year.  I never had an xbox, I've never been a serious gamer.  Wait, i take that back; at one point i worked with a group of guys that were into soldier of fortune II.  I got into it and couldn't get enough of the rush you feel when you think you're about to be shot at any second.  I played on PC and that was good enough for me.  I even hosted LAN parties back in college (maybe someday i'll post the story of when i got pulled over going home at 3:30 am with a pickup truck full of computer equipment).  Eventually, i got a Wii.  My wife couldn't object because i got it for free with my frequent flier miles.  I didn't tell her how much i spent getting the 3 additional controllers and extra num chuk and balance board.  From the first tennis game, i realized that this was a different animal.  The fact that you were no longer interacting with the game through buttons, but through gestures was huge. 
Needless to say, i was floored when microsoft announced the kinect.   It was like someone had realized the difficult part of the wii (besides low resolution) and completely obsoleted controllers altogether.  So, of course, i immediately went out and bought an xbox.  I went ahead and got one of the new ones (only to discover later that the kinect would come out with a retrofit kit for earlier models).  I was disappointed to find out that the kinect wouldn't be out until later this year.  So, i picked up 3 controllers and no games.  Luckly a buddy of mine loaned me a slew of games because the console doesn't come with any.
So the kinect has come out and i'm curious to hear a real person's perspective after having used it.  I've read a few reviews, but they mostly seem like pre-release predictions than specific "i liked this feature" or "this feature doesn't work well" reviews.  I did find a good review at techradar (http://www.techradar.com/reviews/gaming/games-consoles/controllers/microsoft-kinect-905010/review).  Has anyone else had any experience with it?  Obviously, i'll be going out this weekend to get one and will post my experience here.

NetFlow without Cisco Gear

It turns out you can get NetFlow data without having a Cisco device (or with a Cisco device that doesn't support NetFlow).  I had seen and dealt with nProbe before, but wasn't aware that it also runs on Windows.

SPANs are fairly ubiquitous on most switches.  Even if you can't do a SPAN, taps are fairly cheap and add minimal amounts of latency when inserted inline.  If i'm not mistaken, you can even setup rules so that certain subnets appear as if connected through its own interface.

The funny thing is that NetQoS doesn't have an article explaining the simple steps to get it working.  I found this on SolarWinds' social networking site thwack.com:
http://thwack.com/blogs/orion-product-team-blog/archive/2009/11/10/orion-nta-and-nprobe-analyzing-bandwidth-hogs-without-flow-capable-network-equipment/
  1. Download and install nProbe on a Windows (or Linux) server: Download an evaluation version of nProbe and install it on a server.  As noted in the diagram above, you'll need a server with two NICs - one to connect to the span port of the switch and the other to export flows to the Orion NTA server. The eval version of nProbe supports 2,000 flows export, so you’ll eventually need to purchase a copy.  It’s around $100. 
  2. Enable port spanning or port mirroring on your Managed Switch: Configure port mirroring or port spanning on your managed switch to the port that the server running nProbe is connected.  This will allow nProbe to see all traffic flowing through the switch.  You’ll need to consult your switch documentation for how to configure port mirroring or port spanning. If possible, consider only spanning the ports of interest to reduce the amount of flow data collected.
  3. Add the nProbe server to Orion: Add the server running nProbe to Orion, including all interfaces
    Add the server interfaces as monitored NetFlow Sources.  Go to NTA settings and enable “Allow monitoring of flows from unmanaged interfaces”
  4. Configure nProbe to export flows to Orion NTA
Open command prompt on nProbe server and navigate to C:\Program Files\nProbe-Win32>
Run nProbe from CLI using the options listed below:
             nprobe
                 /c - output to console.  This is the easiest method, especially for a demo situation, because you can review the debug messages.
                 -n <Orion NTA server address>:<port>  - IP address and port that should receive the flow records.  Use 2055 for port.
                 -b 1 - modest level of reporting
                  -i  <interface> - generally 1 on Windows; en0/eth0 on Linux; en0 for Ethernet on OSX, en1 for wireless
                 -u <in-index> - sets the ingress interface for all flows (use 1).
                 -Q <out-index> - sets the egress interface for all flows (use 2).
          E.g. nprobe /c -i 1 -n 10.199.15.50:2055 -b 1 -u 1 -Q 65539
NOTE:  It’s important the ingress (-u) and egress (-Q) interface indexes be set to the server interfaces being managed in Orion. NTA will drop flows from interfaces that are not managed in Orion.  You can see the interface index for the server interfaces in Orion by drilling down to their respective interface details view. So, if your nProbe server had two interfaces being monitored in Orion NTA, you would just set the option –u to the index of one of them and the –Q switch to the index of the other.   See nProbe documentation for other command line options.

How to synchronize your calendar and contacts everywhere

Frankly, I'm surprised I didn't do it sooner.  But i've just started using google to synchronize all my calendars and contacts into one place.  This can be difficult since I have a BlackBerry, an iPad, and a couple PCs at home.  Luckily, both my PCs at home are running Outlook, my personal pc running Outlook 2010 on Win7 and my company laptop running Outlook 2003 on WinXP.  I figured i'd share my method with anyone else in case anyone knows of an easier way of doing this.

First, let me define my requirements:
  1. I want to sync my calendar and contacts across all four places.
  2. I want the sync to be automatic.
  3. I want the sync to be fairly regular, although it's not crucial that it synchronized every 10 seconds.  I'm ok with synchronization having a 10 minute lag.  It's just my calendar and contacts, they don't change that often.
  4. I want to do this for free.
I looked into a few options for sharing calendars.  Microsoft has an option called web calendars, but it's not the same as synchronizing to a single calendar.  I finally stumbled upon Google's calendar sync app.  It runs on your desktop and synchronizes your primary calendar in outlook with your calendar on Google's servers.  My BB already synchronizes my calendar from my work PC to my BB, so that's already taken care of.  The only problem left was getting my Google calendar on my iPad.  Turns out, since iOS supports an exchange server connection, Google stepped in and made it so you can access your mail, contacts, and calendar via and exchange connection to m.google.com.  So, that solved it.  I now had one calendar on all my PCs and both my mobile devices.

Now for the contacts.  I've already mentioned that the iPad has an exchange connection to google and automatically synchronizes contacts.

I could synchronize my iPad with iTunes on my desktop and that would synchronize the contacts to outlook on my desktop.  However, I want this to be automatic.  I could probably use MobileMe to synchronize between the iPad and my desktop, but that costs money.  So, I found gcontactsynch.  GCS is a third party app that syncs outlook contacts with gmail contacts.  At first i had problems with Outlook thinking it was an unsecured program trying to access data, which in fact it is.  After allowing it a bunch of times, it started synchonizing without any prompts.  I wonder if i could use an exchange connection using the same settings as my iPad.  That would be more seamless and wouldn't involve a third party app.  Perhaps I'll try that sometime.

Google has a BB app called google sync that synchronizes calendar and contacts with the BB calendar and contacts.  I've already got the calendar synchronizing with my desktop, which synchronizes with my BB (now I'm rethinking that though since the calendar sync app would only run when my laptop is turned on).  So, all that's left is to get the contacts on my BB sync'd.  I could probably use google contact sync just like i did with my other desktop.  That would get the contacts on the desktop which would sync automatically with the contacts on my bb (through regular bb sync).  However, i'd prefer to use a google app over a third party app.  So, i'm using Google sync to synchronize the contacts to my BB which will get sync'd back to my desktop through bb sync.

So that takes care of everything.  I've got the same set of contacts and the same calendar on my phone, my iPad, and both my work and home computers.  I'm going to try uninstalling the calendar sync from my work PC and enable calendar sync'ing on my phone (which should also get the calendar to my desktop).  I'll post the results here.

Legal Uses of the BitTorrent Protocol: Part 3

Alright, so if you've read my previous 2 posts, you should have a good understanding of how torrents work and how you could setup your own torrent.  Now i'll explain how to use HFS (explained in part 2) to turn your torrents into items in an RSS feed.

The concept is fairly simple when compared to the bittorrent protocol itself.  Essentially an RSS feed needs to have a link to the torrent file in the title, description, or enclosure of the item.  HFS allows us to do this with a little tweak.  I found this tweak on http://www.rarst.net/software/hfs-rss/ (original text below) and i got it working in less than 2 minutes.  I currently use this to send home videos to all my family members.  They all have utorrent running and subscribed to my feed.  All i do is create the torrent and dump it into my HFS folder.  They get the torrent from the rss feed and all start downloading it at the same time.

----------Original Article----------
I had previously covered HFS which is excellent software for setting up HTTP file-sharing server. Unfortunately it does not natively provide RSS feeds that would be perfect for notifications about new files available for download.
After some poking and bugging fellow HFS users and developer himself last year I had put together usable workaround.

File list
HFS has native support for file lists. It outputs nice pack of URLs that is easy to feed to download managers instead of clicking each file.
Add some XML markup to that list and we have ourselves RSS feed.
File list template
Create text file named filelist.tpl in same directory as HFS executable and paste following code in it:
<?xml version="1.0" ?>
<rss version="2.0">
<channel>
<title>%host%%folder% directory feed</title>
<description>Files in %host%%folder% directory</description>
<link>http://%host%</link>
%files%
</channel>
</rss>
[files]
%list%
[file]
<item>
<title><![CDATA[%item-name%]]></title>
<description><![CDATA[%item-name% (%item-size%)]]></description>
<guid><![CDATA[http://%host%%folder%%item-url%]]></guid>
</item>
Browser discovery
File list is replaced with RSS feed and it should be obvious as such.
Menu > Edit HTML template…
Insert following line right before </head> and press Ok.
<link rel=”alternate” type=”application/rss+xml” title=”RSS for folder” href=”http://%host%%folder%~files.lst?recursive” />
Now browsers that support feed discovery will show available RSS feed in each folder.  File list link that is shown on page can also be renamed (or removed).

Limitations
Feed is served as plain text instead of XML – should not be a problem but may limit compatibility with some readers; no timestamps on RSS items because of complex time format used, currently impossible to replicate it in HFS; some characters (square brackets for example) are not properly encoded; resulting RSS includes all files instead of few recent ones, no workaround because of way sorting in HFS works.Overall
Method is far from perfect but is easy to implement and doesn’t require additional software. Definitely beats constant explaining why I had deleted something before someone had seen it.

Legal Uses of the BitTorrent Protocol: Part 2

The other day i posted a basic introduction to the bittorrent protocol.  Now i want to write down somewhere how bittorrent can be used in a legal situation.  As i mentioned in yesterday's blog, i have many servers that all need the same file every time there is an update, which could be as frequent as once a quarter for major updates.  The status quo is to remote into every server, log into the vendor website, and download the update.  This can be very time consuming, not to mention very boring. 
That's where bittorrent has helped me.  To continue with the analogy of the ants: each server is an anthill.  The update is the sandwich.  Now all i need are ants at each anthill (a bittorrent client at each server) and an ant with a radio (a bittorrent tracker).  As my torrent client, i chose to use uTorrent.  It's a fairly small torrent client with all the features i need.  Particularly, uTorrent can listen to an RSS feed and (as long as the feed is designed correctly) automatically get the torrents in the feed.  In other words, if i can create an RSS feed which contains the torrent file (the descriptor file that tells torrent clients about the sandwich) then i can have all the anthills subscribe to that feed.  But i get ahead of myself.
So, each anthill (server) has an army of ants (uTorrent client).  Now i need a seeder, that would be someone who has the original sandwich.  So, i install utorrent on my laptop (or i could use on of the servers, it doesn't really matter).  I also need a tracker.  Turns out the uTorrent client has a small basic tracker built in but disabled by default.  So, on the client on my laptop, i go and enable it.  Now all of the pieces are there to start torrenting.
For the first few torrents, i do things manually, just to make sure I've got everything setup properly.
  1. I open the uTorrent client on my laptop and start the 'new torrent' wizard.  I point the wizard to the update file i want to share (this could also be a directory with thousands of files, no need for zipping).  I also point the wizard to my laptop's IP address as the tracker.  When i hit finish, uTorrent outputs a *.torrent file (i saved that to my desktop).  If i look in my uTorrent client, I'll see that i'm now seeding the file and the fact that I'm seeding it has been reported to the tracker portion of the uTorrent client.  Now all i need to do is get that torrent file over to the other clients.  (Remember I'm doing this manually, this part will be much less complicated after i automate it.) 
  2. I go to each one of the servers and copy the *.torrent file (2-3KB max) to each server. 
  3. Then i open the *.torrent file using the uTorrent client on each server.
On a side note, i usually configure each torrent client to use the same port number.  This makes it easy to categorize the traffic in monitoring software.  It also makes it easy for security guys to recognize that it's a legal protocol.  Once i open the torrent file in the torrent client on each of the remote servers, that torrent client contacts the tracker on my laptop and asks for who else has the file.  The tracker says the file is being seeded (the whole file is shared) by my laptop.  uTorrent then starts to request very small pieces of the file from my laptop.  As it downloads the file, it updates the tracker to let it know which parts of the file it made available to other members of the torrent.  Eventually, between the whole copy on my laptop and the partial copies on the other servers, there are 2 copies of each piece of the entire file. At that point the torrent really speeds up and fairly quickly, the file is copied to each one of the servers.
Now, to automate the process.  I'm sure there is probably some perl code to automatically create a torrent from files in a certain directory, but for now, I'm still doing this manually.  It only happens once every time there's an update.  However, i can automate steps 2 and 3, by adding one piece of software to my laptop (obviously everything running on my laptop could actually be done on one of the servers, it's not crucial where it actually happens).  The software to be added is HFS (HTTP file server).  The reason i added this software is that it easily creates an RSS feed from the files in a directory.  So, by adding HFS, all i have to do is save the *.torrent files in a particular directory, and they automatically get added to the RSS feed.  There's some tweaking necessary for the RSS feed, so I'll detail how to do that.  Once the RSS feed is setup, i can go to each of the torrent clients on the remote servers and add it to the feeds list.  The client checks the RSS feed and downloads all torrents in it (there are obviously checks to make sure a torrent isn't downloaded twice).  By adding the RSS functionality, steps 2 and 3 are taken care of automatically.  All i have to do is save the *.torrent file in the HFS directory (saving the *.torrent file to a particular location is part of the torrent creation process, step 1).
So there you have it.  I'll post instructions tomorrow on how to customize HFS to make the RSS feed compatible with uTorrent's RSS feature.

Legal Uses of the BitTorrent Protocol: Part 1

You may have heard of bittorrent and associated it with illegal movie and music downloading.  While admittedly, the bittorrent protocol is mainly used for nefarious purposes, it occurred to me a long time ago that there had to be a legal use for it.  Then it hit me, the main purpose of the bittorrent protocol is to efficiently move one file from one place to many other places.  I manage a set of servers that run a third party software package that gets updated several times a year.  These updates are difficult to distribute because 1) they are fairly large (100-750MB) and 2) I have to distribute the same file or group of files to all my servers.  In steps bittorrent. 

How does bittorrent work?
Think of bittorrent as organized ants eating your sandwich while out for a lovely picnic.   Their ultimate goal is to get the sandwich to the anthill.  So, they break the sandwich up into very small pieces and each ant takes one back to the anthill.  The more ants, the faster the job gets done.  Now, imagine there are 15 anthills that want your sandwich.  (Also imagine the ants have an advanced piece of technology that duplicates small pieces of your sandwich).  With all these anthills trying to get your sandwich and given their duplication technology, each anthill would have a copy of your sandwich within short order.  Now imagine there's a huge ant with a radio.  You let him know that you have a sandwich to share with the ants.  Each anthill asks this ant where the sandwiches are and they get started.
Torrents work the same way.  You have a big file (the sandwich) that you want to distribute to a bunch of destinations (anthills).  You create a file called a torrent file (file extension *.torrent) and announce it to a tracker (the ant with the radio).  Then you email the *.torrent file (a very small file by the way) to the various destinations (anthills) who then open the torrent with their favorite bittorrent client.  The torrent file instructs the client to go to the tracker (the big ant with the radio) and get a list of the sources (or seeders) of the file, aka you.  The ants descend on your file and begin to take back copies of very small chunks of your file.  None of this is very novel (in fact it's quite similar to napster if you remember).  The cool thing is that once an anthill begins to participate in the torrent, the tracker (the big ant with the radio) is notified who then lets all the other anthills know.  From the point of view of one of the anthills, there is a big sandwich out there.  There are also 14 other anthills with part (or soon all) of the sandwich.  The anthills begin to trade with each other.  The more anthills involved, the larger the swarm, the more quickly the file is distributed.  Cool, huh?

What I wish my phone did

This post could also apply to any smart phone.  It's about my bb since that's what i have now.  I'm curious to see what the Windows7 phone will be capable of.

Ok, I've had a BlackBerry with my last two jobs and now I have a torch.  I'm still waiting for three big features that would truly give me 'outlook in my pocket'.  I understand that not everyone wants to have all the features of their pc in their pocket, but I've always wanted to be able to do everything on my phone that I can do on my desktop.  I don't think I'm alone given the popularity and incredible demand in the tablet device market.  But, I digress.  On to the features!
  1. I wish I could categorize items from my phone: Color coding is awesome!  I categorize my emails, my task items, and my calendar items.  I sometimes do this with rules, but mostly, I do it manually.  It helps me segregate the items on my calendar as well as helping me know at a glance what my plans concern.  I color code for different projects, types of meetings, etc.  I wish I could do this from my bb and sync it back to my outlook
  2. I wish I could follow up on items from my phone: Have you ever noticed that you can mark an email to be followed up on from within outlook?  Just right click the email in Outlook and under Follow Up, there are a bunch of options.  Say you've read the email and you need to respond to it, but not until next week.  Right click >> Follow Up >> Next Week.  Outlook puts a flag on the email and also adds the email to your To-Do bar (Alt-F2 to show/hide).  Outlook pops up a reminder next week that you need to address that email.  I wish i could mark something to be followed up from within my phone.  As it is, i mark the message unread (even if I've read it) so i know i need to mark it when i get back to my desk.
  3. I wish my phone knew when i was in meetings: Wait, it does: my calendar is synchronized with my phone!  I mean, i wish my phone knew when i was in a meeting and automatically turned off the ringer.  Then turned it back on after the meeting is over.  How hard would it be to add a field to a calendar item with a drop down containing my profiles.  Let the default profile be 'silent', but maybe it's just a training class and i want it to go to vibrate during that time.  So be it.
Anyway, those are my top 3 requests for my phone.  If anyone knows how to accomplish this in the existing setup, let me know.  Otherwise, I'm waiting with baited breath.

Ultramon

Ever since i first setup a pc with multiple monitors i've been frustrated with how windows handles it.  It's like nobody put any thought into it.  That's where Ultramon steps in.  Ultramon (http://www.ultramon.com/) is built to specifically handle multiple monitors.  There are two main features I use: smart taskbar and window switching.
  • Smart Taskbar: ultramon puts an additional task bar at the bottom of each monitor.  The windows in that monitor only display on the task bar of that monitor.  This means that a window on your secondary monitor shows up in the task bar of the secondary monitor (not the first).  This feature works fine in windows7, but diminishes some of the new task bar features in windows 7.  It works wonderfully in XP.
  • Window switching: this feature is particularly handy because i have a mouse with a few extra programmable buttons.  This feature allows you to move the current window to the other monitor.  Much easier than dragging the window from one to the other.  I take this two steps further by first going into the UltraMon config and setting a keyboard shortcut that move the current window to the next monitor.  Then i go into my mouse settings and set one of my buttons to map to that keystroke.  This means that when i hit that button on my mouse, the keyboard shortcut gets virtually pressed and UltraMon moves the current window to the other monitor.
This feature isn't so useful in Windows 7 because the snap feature is a little sexier.  With snap, i can hold the windows key and press the left or right button on the keyboard.  This snaps the current window to the left or right side of the current monitor.  Repeating that keystroke sends it to the left or right side of the other monitor.  Keep repeating the process and the window gets snapped in a sequence to 3 positions on each monitor.  I map that key stroke to a button on my mouse and i get the same functionality as with UltraMon.
The full version is worth it, but you can try it out for free first.

Just in time for Halloween

If you're using IP SLA tests to measure latency across your network, you may want to keep in mind that there is a caveat to using IP SLA.  Two reasons:
  1. QoS markings. If you are doing tests of different QoS queues all tests that are generated on that router will go out the default queue, even if marked for higher  priority.  So you use a shadow router that is within its trust boundary so that it will honor the QoS markings.
  2. Load on the Router.  IPSLA can add load to the router, on both the source and target.  So you can use the shadow router to act as the source or destination to reduce load on the WAN routers.  It’s not going to be a big deal if there’s only a handful of tests but if you’re doing an NxN combination of tests to between each site I would recommend a shadow router at each.
A shadow router?  Wait, i thought my Magic: The Gathering days were over after high school?!
A shadow router would simply be any router behind the WAN router, but within the QoS trust boundary.  That way any QoS markings on the test would be set on the shadow router, sent out the shadow router's default QoS queue, but honored by the WAN router and the rest of the network (depending on the config of the rest of the network).

Usually a shadow router isn't actually used for routing, but that will depend on your resources.  If you use a spare router to do your IP SLA, then the resources taken up by the IP SLA test aren't in competition with production resources.

Shout out to Zack Belcher who reminded me of these reasons to have a shadow router.

Xobni

A few years ago, one of my buddies turned me on to Xobni (http://www.xobni.com/).  It's an add on for your outlook that works so much better than the built in search.  There are two flavors, free and pay.  I haven't used the pay version, but i've talked to a few people who have and they like the additional features.

Like i said, i use the free version and really love it.  It adds a sidebar to your outlook that lets you search through all your email.   Not only that, but if you use the reading pane (everyone should use the reading pane), Xobni (inbox spelled backwards) will automatically display the search results for the currently selected email.  So, for example, if i am currently reading an email from my boss, Xobni will automatically display the following information:
  • Contact information - xobni will glean this information from all your past emails by looking at the signatures!)
  • Usage statistics - shows how many emails you get on an average per hour from the selected person, how many emails to you from that person and vice versa.  It will also show you how that person ranks (i.e. is that person your #4 most contacted person)
  • Conversations - xobni pulls up all emails from that person and groups them by email thread.
  • Attachments from that person
  • Links in emails from that person
  • Appointments with that person
  • Other people in your communications network with that person
There are also plug ins to automatically display that person's linkedin, facebook, twitter profiles, skype account information, etc.  Anyway, it's a useful tool and you can get it for free.  It seriously speeds up the amount of time it takes me to find stuff in my email.

Easy to do business with

I finally figured out what has been missing since the NetQoS acquisition by CA.  One of NetQoS' vision points was to be 'easy to do business with'.  NetQoS has always manifested this vision with exceptionally easy processes.  However, since CA acquired NetQoS, doing business has been difficult and aggravating.

For example: i just changed jobs from one NetQoS customer to another.  It took a week and a half to get my email address updated so i could log into the portal again and get notifications from the message boards.  And i went to get my new company's site IDs added to my profile and nobody knew how to find all the site IDs for my new company.  After a while we did find two site IDs (why one company needs two site IDs is obviously the brain child of a non-engineer).  However, the support guy wasn't sure the site IDs he gave me were all the site IDs for my new company!

Ug, please CA: ask someone from NetQoS what it meant to be 'easy to do business with' and get your act together.  You are NOT easy to do business with.

Thursday, March 24, 2011

New home theater pc is on its way:

HP Pavilion s5750z PC
• SAVE $21! Genuine Windows 7 Professional 64-bit
• AMD Phenom(TM) X4 840 quad-core processor [2.9GHz, 2MB L2 + 6MB L3 shared, up to 4000MHz]
• 8GB DDR3-1333MHz SDRAM [4 DIMMs]
• 1.5TB 7200 rpm SATA 3Gb/s hard drive
• No additional office software
• No additional security software
• 1GB DDR3 AMD Radeon HD 6450 [DVI, HDMI. VGA adapter]
• LightScribe 16X max. DVD+/-R/RW SuperMulti drive
• Integrated Ethernet port, No wireless LAN
• 6-in-1 memory card reader, 2 USB, audio ports
• No TV Tuner
• Integrated sound
• HP wireless keyboard and wireless optical mouse

Thank you Uncle Sam!

Sunday, October 10, 2010

Samsung TVs

So, my samsung TV which is only 2 years old has started taking a 'long' time to turn on. While turning on, there is a clicking sound from the area of the tv where the power supply board would be.  Seems everyone who has this TV has this same problem after 6 months to a year after the warranty expires.  Turns out Samsung used capacitors rated for 10V on a board that runs 12V!  A guaranteed failure after at least a year of use.  So, i called them and they said they could give me a one time free servicing for the capacitors.  I guess if you want to avoid the bad press of a recall, offer a one time free service to replace the bad part.

Anyway, everyone stay away from Samsung TV's.

Friday, February 13, 2009

Auto playlists and music libraries

When i first got my ipod, i was disappointed a little. I had expected itunes to have some really cool syncing utility to get the best music on my ipod. Several things irked me about it though: if i tried to sync more music than would fit, nothing would get synced onto the ipod. At that point, i had to start building smart playlists that would get only 8GB of my music (actually a little less to account for games, photos, videos, etc.). I was also disappointed to find out that itunes didn't know which music i liked. I guess i've been spoiled by yahoo! music which learns the music i like based on my ratings and on how often i played or skipped the song. Out of the box, itunes did nothing to put my favorite music on my ipod. It was all manual! Being the perfectionist i am, i set out to make a set of auto playlists that would mine through my library and find my favorite music. I listen to my music on my ipod as well as on my laptop at work, so luckily those play counts sync. So, here are the playlists that i've created to do what i thought itunes would do for me. They're not perfect lists, but they get the job done.

First, i had to decide on a couple rules: If a song was rated with 4 or 5 stars, it is probably one of my favorites and should be on my ipod. If a song was unrated, that doesn't mean that i don't like the song, rather it means that i haven't gotten around to rating it. So, i needed a way to easily identify songs that i don't like (i've collected a lot of music over the years that i don't like and would like to weed out of my library). I decided that any song that has only 1 star should be considered a song that i don't like and a candidate for removal from my library. I also have to consider the fact that i have christmas music mixed into my library that i probably don't want this whole mechanism to apply to. Most of these playlists will filter out any music in the Christmas genre. I also consider global filters to exclude podcasts, movies, audio books, etc., but i haven't necessarily implemented them on all these playlists.

Playlist #1: Whitelist - this list contains any song that has been rated with 4 or 5 stars. I don't put any size limits on this playlist, this one contains my absolute favorites.

Playlist #2: Liked Songs - this list should contain any songs that i like based on play count. So, i look for any songs that aren't in the Whitelist and have a playcount of more than 10. This number is adjustable, i started with a value of 3 so that this list would have something in it. As my playcounts get higher and higher, i raise this number, but only once or twice a year. No size limits on this playlist either.

Playlist #3: New Items - this list should contain brand new items so i make sure to give them a chance at getting in my Whitelist or Liked Songs list. I look for any songs that have been added in the last month. I don't filter out items that make it into the Whitelist or Liked Songs list. The reason for this is that i often want to find some song that i recently acquired. This list contains those items whether or not it's been promoted to one of the other lists. Itunes isn't going to copy the song twice onto my ipod, so it doesn't take up any more space on the ipod. This list doesn't have any size limits either.

Playlist #4: Never been played - I needed to add this list later on because i discovered that songs that had never been played didn't get into the mix enough. I ended up having the same songs over and over. This list ensures that unexperienced music gets presented. If i like it, it will end up in the whitelist or liked songs list. If i don't, it'll end up in the blacklist (read on). No size limits on this list either.

Playlist #5: Other - This list is the catch all for all songs that don't appear anywhere else. It looks for any songs that aren't in playlists 1-4 and aren't blacklisted. This one does have a size limit. These first 5 playlists will comprise what ends up on the ipod. So i set the size limit to whatever will fit. If itunes freaks out and says it can't sync because i'm trying to put too much on my ipod, i simply reduce the size of this list.

Playlist #6: iPod List - This list simply contains all the songs that appear in any of the first five playlists. There's no need to limit the size of this playlist, but if you want, you can apply a limit that is the same as the capacity of your ipod. I don't like to do this because this is the list that i listen to when i'm listening to music on my computer.

Playlist #7: Blacklist-Auto - This is half of the blacklist. This is an attempt to identify music that i probably don't like based on skip count. It looks for any songs that have been skipped more than once, have a rating of less than 2, AND a playcount of less than 3. I had to tweak these numbers to meet my own tastes, but they work pretty well for me. The thing is, itunes doesn't increment the play count for a song until the end of the song. So if you only listen to half a song, the play count doesn't go up. Also, itunes doesn't increment the skip count until 4 or 5 seconds after the song starts playing. So if you quickly skip through a bunch of songs, none of their skip counts actually get incremented. It's actually fairly difficult for songs to get into this list because of this behavior.

Playlist #8: Blacklist - this is the other half of the blacklisting system. This playlist includes any songs that are in the auto blacklist OR have a rating of only 1 star. The idea behind this playlist is that i can look at this list and see items that i either want to save or delete. They are on the proverbial chopping block. If i want to save it, i need to give it a rating of 3 or above. If i want to delete it, just highlight it and press Delete while holding down the shift key. I only have to check this list every or every other month.

Sync all these playlists to your ipod (you have to put the blacklists on there too because the other lists depend on them). I numbered the first 5 playlists so they would show up in order of preference on my ipod. You could put a 0 at the beginning of the ipod list so that it shows up at the very top.

Anyway, i'm open to suggestions. The cool thing is that this method can be applied to an itunes library even after you've been using it for years. In fact, i'd be interested to see how well it identifies music preferences when applied to an older library.

You should be able to apply this method to a windows media library since it keeps play counts and skip counts and has a rating system. You'd just have to make sure that your portable media device synchronizes the ratings, play counts, and skip counts to your library.

Liked Songs

New Music

Whitelist

Thursday, October 30, 2008

Wireless Encryption Methods

What's the difference between the various wireless security methods, and which one should i choose?

There are three possible answers to this question: None, WEP, and WPA. Which one do you choose? It depends.

None - you don't have to use encryption. If you don't have any encryption on your wireless network, people who want to connect don't have to provide a password or key to connect. This can be acceptible, if you don't mind people next door or driving by to gain access to your network and use your internet bandwidth. However, this method can be secured farily easily.
Think of your wireless network as a night club and your router as a bouncer. By not enforcing any encryption, your bouncer speaks english and will listen to anyone's petition to get in. You can tell your bouncer to only let certain people in. The bouncer then checks everyone's drivers license and only let's the permitted people in.
This is like having no encryption but restricting access to certain MAC addresses. Look on wikipedia to find out what a MAC address is. Think of it as a unique unforgeable identification number. (Well, it could be forged, but people who could do that will break in no matter what.) The data between the router and the user is not encrypted, which means that anyone listening can understand the data going between the user and the router. This could be a problem if you're logging onto your bank's website. Not a problem, though. Ever notice how sometimes the web address starts with https:// instead of http://? That means that your data is actually scrambled before it leaves your computer and unscrambled after it's received by the server. This is actually more secure than the encryption you could put on your wireless network. Of course, if you put security on your wireless network, you'll scramble the data again when it gets transmitted into the air.

WEP - WEP is simple encryption. Remember the bouncer? Well, this bouncer will let anyone in as long as they have one of the passwords. The passwords are HEX numbers. In other words, the password consists of only numbers and the letters A-G. The advantage of WEP is that it's very simple. The passwords are restricted to characters that the router can understand very easily, so he's not going to spend any time at all trying to figure out if the passwords match. Also, when data is sent between the router and the user's computer, the data is scrambled, so that only those who have the password can understand it.

WPA - WPA is more difficult to hack than WEP. The reason for this is the complexity of the passwords. It's much like WEP just that the passwords can be much more elaborate. Again the data between the router and user is encrypted. Since things are a little more complex, the bouncer may take a little longer to verify the password, normally not noticeable.

My recommendation? Unless you have problems with it, use WPA. It has the strongest security while allowing you to use plain old passwords.

If you can't use WPA because it's giving you problems, use WEP. If not that, then go without security but remember to filter by MAC.

Wednesday, October 22, 2008

Cable vs. DSL

Recent events have prompted me to officially publicize my opinion about the different advantages of Cable and DSL "high-speed" internet access.

Both DSL and Cable will require a modem. The modem is a separate small piece of hardware that translates between you and the internet. Each requires its own special modem, they can't be interchanged. Usually your internet provider will try to sell you a modem when you sign up for the service. I've seen the best deals with DSL. DSL modems tend to come with a rebate for the whole price of the modem, so it ends up yours for free. Most cable providers will lease you a modem for a small fee every month, usually $5. This is fine as long as you don't plan to have it for more than a few months. Eventually, you'll have paid enough every month for it to have been cheaper to just buy one from Best Buy or Fry's.

The modem will have two main ports on it: one to connect to the cable or phone line. The other is an ethernet port that you will connect to something on your end. If you have only one computer, the other end will be your computer. If you will be using a wireless router, then the other end will be the Internet or WAN port on the router. The router splits the signal so that multiple computers can access the same modem.

So the main difference between DSL and cable is speed. Cable is normally faster than DSL. However, DSL has a guaranteed speed. Cable access speeds can vary depending on how many people in the neighborhood are using it at one time. Sometimes cable is faster than DSL, sometimes it is slower. If you're willing to put up with the variations, go with Cable because you'll get an average higher speed.

My vote has been with DSL because i like the guaranteed speed. Which one is better will depend on your needs.

Tuesday, October 14, 2008

Chain Mail

So, occasionally I receive chain mail from people who have my email address. Unfortunately, they don't know how much it irritates me that they've attached my name to one of these things that will get circulated around the internet.

Don't know what I mean? Ever gotten one of those emails that claims something tremendous will happen if you forward it to 10 people in the next five minutes? Or one of my favorites is the one that claims that Microsoft or aol will give you 5 cents for every person you forward the money making email to? Those. Bane of society, I tell you.

"So, how does it all work? And why is it so bad? The forward button was the best thing invented since blogs!" (I know, history proves that the reply button came first, but that's beside the point)

-Unfortunately, no it isn't. Blue LEDs were, but I’m straying from the point. Chain letters work by purporting something outrageous then promising untold benefits to the actuator. Sound familiar? Yep, that's it: infomercials. How often do those things actually work? Have you ever seen something completely useful on an infomercial? I mean, imagine if you saw an infomercial for a microwave? You'd probably think to yourself, "I need to by a new microwave to replace the perfectly good one I already have. In fact, I need THAT microwave, because it has even more features that I’ll never learn how to use!"

NO! Wrong. You won't think that because since the microwave is completely useful and is a really good thing, you would have been exposed to it in other places, like Wal-mart. I mean, if I really wanted a good microwave, I might go to GE's website and see what they have, but I can probably find the same thing at walmart.com.

Have you ever actually bought anything on an infomercial? If so, I pity you. Although, I pity myself. I've done it, so I’m a little hypocritical.

So that's how they work. It should be pretty easy to recognize that most of the information in them is bogus. There are even websites that specialize in differentiating the true urban legends from the utterly false ones (snopes.com). Some chain emails even refer to the snopes.com article describing how the email is a hoax. <"Bold" he says as he slowly shakes his lowered head>

Why are they bad? How many times have you had to scroll through 45 pages of email addresses to get to the actual message of the chain letter? Those 45 pages are the reason they are so bad. They contain the email addresses (and full names often) of the people the email was sent to. The emails are there even if the person saw the chain letter and immediately discarded it (stirring up the wrath of fate, luck, and other mystical forces bound to the promises in the letter). Since the email has the potential to circle the globe several times, it also has the potential to end up in the hands of unknown malicious persons. Those people (who aren't bound even when there is a law prohibiting it) will sell all 45 pages of email addresses to any number of people who will sell it to others, who will eventually give it to those people who will send YOU emails on how to increase your manhood, or lose weight, or find a morally challenged partner tonight.

Do you like getting those emails? I don't. Even though I have a spam filter, I still get those emails sometimes. And I attribute it to the innumerable chain letters that are circulating through the internet with my email address on it.

I mean, seriously, you wouldn't put your name, home address, and phone number on a billboard in Times Square, would you? Yet, others have no qualms about doing it for you.
I can’t gripe without a possible solution. There is a better way. Actually, there are several better ways. Blog about it. If you’re that concerned that you will lose your hair because an email says so, multiply the methods of distribution by putting it up on a web page. That web page will be searchable by Google and Yahoo! Another option, if you can’t ignore the urge to follow whatever instructions show up in your inbox, is BCC or blind carbon copy. You might be familiar with CC or carbon copy. It allows you to send an email to your friend Julie, while also sending it to Jamie for her information. BCC works the same way and allows you to send a copy to someone without revealing that fact to the original addressee. This means that you can send an email to your friend Julie and also send a secret copy to Jamie. Easy right? Also, if you’re going to forward an email in any form, please delete the 45 pages of email addresses. If you can’t do all of them, at least delete my email address from it!

Of course, the other option is to get a real life and communicate with people instead of spouting back out the same garbage that gets spouted to you. Do research to find out if the email is true.

I know I’m harsh, but I’ve been thinking about it for years and needed to get it off my chest.

Wednesday, October 1, 2008

Trying to keep up a habit

This past weekend, we painted our living room. Christy bit the bullet on her color decisions last week and invited Dad & Betty to come down for the weekend to help. That was a fiasco since Betty fell and kinda broke her thumb in the Houston airport. They landed Friday afternoon and went to the hospital directly. When i got home, Christy and Dad had already started on the walls by moving things. Christy started cutting away and Dad started rolling. When i got there, i took over for dad and we worked the rest of the evening. We painted while dad & betty watched the debate. Don't even get me started on the debate. As soon as it was over, i took the tv off the wall and we painted around it. We finished everything but a section of wall that still needed another coat, behind the tv. The next morning dad & i went to get the cars cleaned and christy and betty went shopping. Christy and I went to a baptism that afternoon, which was very good. That night we all went to Texas roadhouse to enjoy us some cinnamon butter. Dad told the waitress that it was christy's 21st birthday and they brought over a saddle for her to sit on while they sang happy birthday to her. It was hilarious. Christy vowed vengeance. Dad and betty left early sunday morning. I dont' remember much of saturday afternoon because i slept for 5 hours! It was like i was catching up on months of missed sleep. It was great. I'll have to get christy to email me some pictures of the living room so i can post them here.
Heroes was interest monday night, i'm not sure if they're heading down the same road as Lost. I hope not.