Thursday, May 17, 2012
How to open excel files in multiple windows
One of my biggest pet peeves in Microsoft Office is that Microsoft Excel doesn't allow you to open spreadsheets in multiple windows, so you have to revert to switching back and forth between windows if you are trying to compare two documents. What a PITA!! Thankfully, I found this fix on the 'net--just a few minor registry tweaks:
Start - Run - regedit:
Navigate to:
HKEY_CLASSES_ROOT/Excel.Sheet.8/shell/Open/command:
Changes:
Double Click on (Default) and add "%1" to the end of the string - "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" /e "%1"
Right Click on "command" – choose "rename" and add something to the name - for example 2 (command2).
Navigate to:
HKEY_CLASSES_ROOT/Excel.Sheet.8/shell/Open/ddeexec:
Changes:
Right Click on the folder ddeexec and choose "rename" and add something to the name - for example 2 (ddeexec2)
Navigate to:
HKEY_CLASSES_ROOT/Excel.Sheet.12/shell/Open/command:
Changes:
Double Click on (Default) and add "%1" to the end of the string - "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" /e "%1"
Right Click on "command"– choose "rename" and add something to the name - for example 2 (command2).
No restart required for the changes to take effect. Enjoy!!
Friday, January 20, 2012
Skype Group Video Is Unreliable
As the Technology Manager for Parker Executive Search, a retained executive search firm, I am constantly looking for ways to improve our efficiency and functionality. We have been using Skype increasingly, as it saves a bundle on travel costs and you can video chat with multiple people all over the country (and the world) in a single day.
We signed up for Skype Premium, the business version, in order to use group video chat. We envisioned connecting people from multiple locations--either a board, or a search committee--on a single call where we could orchestrate a meeting. The potential opportunity was great and we were very excited.
Enter reality. Skype one-on-one has been pretty well tested and established and we had few problems. Group Video, on the other hand, is the buggiest piece of software I have used in some time. Granted, introducing multiple live streams presents obvious problems and more room for error, but I have had only one call thus far that worked flawlessly with 3 or more connections. I can't tell you how many times I have seen the message "Group video is unavailable at the moment." I just wish Skype would make sure a product is solid and flawless before putting it out on the market.
All in all, I would be very wary of signing up for Skype Premium with the intent of group video for business. It reflects poorly when the video is constantly being dropped. I think we will have to ditch Skype for a better solution or wait until the bugs are improved.
Saturday, July 23, 2011
Zingo! The Addictive Word Bingo Game
After having the server wiped out that housed my favorite game of all time, Zingo!, I have finally finished recreating the game, now using jQuery instead of Java. Overall, the game playing experience is pretty similar to the game before. The only difference is that there are 3 rounds and points are doubled and tripled, respectively.
I played the game myself for a while to test, and I have to admit, I had trouble putting up decent scores on the Medium & Hard difficulties. You have 5 guesses to guess each word, and there is a dictionary of almost 9,000 words. I'm glad to have the game back up and running, so check it out at http://apps.facebook.com/zingogame/.
Sunday, June 12, 2011
Facebook surpasses Zynga's Texas Hold'em as Most Popular Facebook Page

According to the Facebook page ranking site SocialPages.me, Facebook has recently surpassed Zynga's Texas Hold'em Poker as the page with the most fans on the popular social network. Facebook currently has upwards of 45 million "likes", while Zynga's Texas Hold'em page has around 44 million. Other popular pages on Facebook include that of rapper Eminem, video streaming service YouTube, and performer Lady Gaga.
SocialPages.me is a new social web site whose mission is to rank all the pages on Facebook. You can only view the site results by logging in through Facebook Connect, but after you login it is pretty cool. The site imports the pages you like and shows you how many people like them and how popular they are compared to the rest of Facebook and the pages' categories.
Thursday, June 2, 2011
Funny Phishing Email
Mailbox Shutdown Notification
Webmaster [Webmaster@uwsuper.edu]
Wednesday, June 01, 2011 8:43 PM
You are expected to verify your email account to avoid mailbox shutdown :
Login Username:
Login password: **************
To avoid shutting down of your mailbox which could lead to loss of your important files on our server,you must send these details on receipt of
this message.
Thank you very much.
Webmaster
Thursday, May 19, 2011
Why I Didn't Buy the LinkedIn IPO
When I heard the expected share price of $LNKD rose from $30-35 to $40-$45 the other day, I began to grow a little skeptical of the upside potential of getting in early. Obviously, LinkedIn is a company with a great foundation and room for growth, but given the fact their market is ultra-competitive and they have yet-unestablished revenue streams, I found it harder to justify the price. Then again, it is a great company with great future potential.
Fast forward to today, the stock opens at $83/share. Wow. I didn't expect such a huge surge, even given LinkedIn's brand value and future potential. I guess $LNKD is the "hot" tech stock to get, and people have to put their money somewhere. But do the numbers justify this surge in price?
Currently, the stock is trading around ~$105!!! WTF?!? This is gross speculation at its finest, people. I am now holding for a dip.
Sunday, May 15, 2011
The Big Money of Search Engine Fraud
There has been a reported rise in the amount of click fraud of Australian advertisers, at an estimated 10 percent of total clicks. That equates to about $100 million per year. Google settled a class action lawsuit back in 2006 to the tune of $90 million to advertisers who were victims of click fraud through their service.
Click fraud is well-known among search engine industry experts, yet it doesn’t get too much attention in the press. Strange, given the potentially huge numbers that are being thrown around. This study, by Click Forensics, Inc., in 2008 found that 16.6% of all pay-per-clicks in the Q4 2007 on the internet were fraudulent. Paid search advertising dollars spent in 2011 are estimated to be around $29.8 billion.
Google claims that "undetected" click fraud constitutes only 0.02% of all clicks. Even given this estimate, consider the huge sum of money involved in this little-publicized industry. Click fraud could constitute upwards of $4 billion per year of paid advertising dollars if click fraud is actually closer to the 16% range. Keep in mind that Google’s estimate only refers to "undetected" clicks, so the number is definitely higher than 0.02%.
Microsoft actually filed a civil complaint against a couple that had devised a click fraud scheme that depleted competitors' ad budgets in order to promote their own ads to the top of pages for certain keywords, such as "auto insurance quote". This first-ever lawsuit involving click fraud had Microsoft seeking $750,000 in damages. Microsoft estimates he made $250,000 from the practice, and the company says it refunded $1.5m to advertisers for Lam's alleged fake clicks.
Given the explosive growth of the internet, especially in the mobile arena, and with it the expansion and competition of paid online advertising, I would hope that Google, Bing, and Yahoo! are committed to preventing click fraud as much as possible, and compensating their defrauded advertisers when they do detect fraud. The real problem is that while current fraud detection methods are advanced, bot creators and search experts are continuing to create ways to game these advertising systems and extract large sums of money without being detected.
Saturday, May 14, 2011
Comcast Outage in Atlanta - 5/14
UPDATE 8:31 PM EST -- It seems that Comcast is finally back up and running. Still no details as to why they went down--I'll try to follow up on Monday and see if I can get an explanation.
UPDATE 6:49 PM EST -- Business-class internet still down (Perimeter area)
I just got off the phone with Comcast and there is a confirmed internet outage in parts of Atlanta. I will post an update when the problem is fixed.
Of course, right after I was telling people that surprisingly, our Comcast internet has been great. Super-fast speeds at a steal of a price. Hopefully it won't be down long! We've got a business to run...
Friday, May 13, 2011
Why I'm Buying the LinkedIn IPO
I have been doing some research about LinkedIn in regards to their upcoming IPO on the NYSE, and the more I see the more I want to buy in...
100+ Million Network
Say what you will about Facebook, but LinkedIn's network is really its most valuable asset. Over 100 Million professionals with searchable resumes...
Advertising
Not much to say here, other than they will continue to generate solid revenues through advertising and job postings.
Corporate Recruiting Solutions
LinkedIn's Corporate Recruiting Solutions are the secret weapon behind my heightened interest in their IPO--something I've been suspecting, but LinkedIn has been slow to roll out. They basically partner with recruiters and search firms to provide them with search & candidate management tools for the tune of $5k per seat / year. It may not be a huge market, but it is a valuable revenue stream that I am excited to see them engage in.
Summary
Some critics disagree with my opinion as to the growth potential of the stock, but I think they have a solid lock on a very valuable market sector--the social network of business professionals.
Sunday, February 13, 2011
J.C. Penny Games Their Way to the Top
Tuesday, December 14, 2010
Worst Customer Service Ever : Comcast
Over the past several weeks, I have gained a complete and utter hatred for the Customer Service department of Comcast. Not by any fault of their own, the company is clearly run by a bunch of monkeys. I have Comcast (unfortunately) both at home and at the office, and I have gotten the complete run-around from both ends. I thought at least their Business Class services would be better, but no--same old story.
I will start with the home. After getting back from traveling on Thanksgiving, I noticed we weren't getting all of the channels (some had an error message "channel will display shortly). After trying numerous things over the phone, the reps determined they would need to have someone come out to fix the problem. Ok, things happen. We set the appointment for after work on Thursday. Towards the end of the installation window they gave me, I called to make sure someone was coming out. "Oh, we're sorry, the appointment has been canceled via the automated system." Strike 1. Dammit-ok, so let's reschedule. They rescheduled the appointment, and the tech actually made it out on Saturday! He determined they needed to rewire the line running to the apartment, which they only do during business hours during the work week. Not good for me, since I work, like most people, a 9-5. We set the appointment for 11-2 on Tuesday, hoping I would be able to make it off to wait for them. After pulling a few strings, I got back to my apartment on Tuesday and waited. And waited. Around 1:30, I called, and the rep told me "Oh, sorry, the tech is running late and can't make it until 2:30-3:30. Well, I can't really afford to miss work waiting on Comcast, so I head back to work, defeated. After numerous calls trying to even get a supervisor on the phone resulted in no luck. Hey, if you're looking for an office environment with no accountability, then being a rep here must be the job for you. Still unresolved--
I am getting to pissed off just writing this, so I will have to divulge our experience with Comcast at work at a later date.
Needless to say, I am completely fed up with all that is Comcast. If I had any other options for cable television, I would drop them in a heartbeat: unfortunately, they have franchise agreements with the city of Atlanta and they are the only cable operator in town--what a sick, sick monopolistic machine. I can't believe they can operate the way they do and stay in business. Surely there are others who have been as pissed off as I am!
Wednesday, November 17, 2010
Print without URL in Google Chrome
If Google Chrome wants to be seriously considered as a major browser, then the Google development team needs to listen more to feature requests that are standard in Firefox and Internet Explorer, but somehow missing from Chrome. Specifically, I am talking about the ability to print web pages without header/footer content. When I print pages in chrome, I get something like:
| http://www.somewebsite.com... | 1/1 |
at the top and bottom of the page. In Firefox, you can go to File->Page Setup and configure each section of the header and footer (or hide it). In Internet Explorer, you also go to Page Setup, and there are two text boxes that let you customize the header and footer.
Google Chrome--Get with the program! My business has a custom web application that looks great in Chrome compared to FF/IE, but we utilize printing from the application and it is extremely unprofessional to have a URL and page numbers on business documents. CHROME, PLEASE FIX THIS IMMEDIATELY!!
</rant>
Saturday, November 13, 2010
Top 10 Web Design Companies
View the Top 10 Web Design Companies at The Web Company Directory. You rate the companies. Add your web design company to the directory for free!
Tuesday, October 5, 2010
The Future of SEO
What will be the future of SEO? It really largely depends on the future of advertising mediums. If search engines rely less on keyword search in the future, the landscape of SEO will change. Given current trends, there is no reason to suspect a movement away from keyword search in the near future, but you never know with technology...
Until Google invents a robot that analyzes your thoughts and presents relevant content, you might consider giving more thought to optimizing your site for search engines. There are several really easy steps you can take (try Analyze My SEO), and then there are more complex overall marketing strategies that you should formulate if you are trying to seriously market a product or service.
Monday, September 6, 2010
Analyze My SEO
I have just launched my new web site: Analyze My SEO. This is a great site for beginners new to Search Engine Optimization (SEO), but also provides useful information for all developers. You enter the URL of your web site, and the site provides a detailed step-by-step report of ways you can increase your page rank and CTR. Check it out!
Michael
Thursday, September 2, 2010
SORBS Headache
So, this week we had an e-mail issue at my company. For one of our clients' domains, any e-mail they tried to send to us was returned marked "undeliverable". After several conversations with our IT company and our clients' IT department, it was discovered that the e-mails were being blocked because our client's IP address was on the SORBS blacklist.
The SORBS blacklist was created by an individual (possibly with help from a few others) who appears to have repeated patterns of adding non-infected or secured machines to their blacklist in an effort to extort money out of them. Our client got their IP removed without a donation.
I am unsure whether our IT company set up our mail server to use the SORBS blacklist (as our client claims) or if it is on some server on the mail hop route (as our IT company claims).
Our IT company did install a tool which apparently showed all e-mails that were hitting the server and none of the e-mails from the client showed up, which leads me to believe that it is not on our server but somewhere else.
Any thoughts?
Tuesday, August 10, 2010
How do I get clients?
In today's economy, it seems that more and more developers are becoming independent consultants/contractors developing their own business and creating projects by themselves. While this lifestyle has both pros and cons, one of the most difficult tasks of working on your own is developing a client base. Here are a few tried-and-true pointers to help you build long-lasting relationships with your clients and expand your base.
The most important asset of any company is its image. If you project an unprofessional or scatterbrained view of yourself to potential clients, you are never going to get business. Especially in today's economy, it is important to fine-tune your business image and tailor it to your clients' expectations.
Network, network, network! One of the simplest ways to grow your client base is sometimes the easiest overlooked. The second you stop making new connections and getting referrals is when your business stalls or turns downward.
Perhaps a reason that you are not generating a sufficient amount of business is because you are advertising in the wrong places. Knowing the market for the type of services you offer will help you better develop a good advertising strategy and eliminate the waste of getting the word out to the wrong people.
Monday, February 15, 2010
How to use XFBML fb:request-form
This article explains how to render an XFBML request-form if you are using iFrames or Connect.
First, it is extremely important to have the proper connect settings.
1. Connect URL
Click the Connect tab in your application's settings, and set the Connect URL to your site's address with no ending / (i.e. http://www.ugadevelopers.com/frmatch).
(iFrame apps: Also ensure that you have set your Bookmark URL equal to your Canvas URL: http://apps.facebook.com/<yourapp>)
2. Cross-Domain Communication Channel
Next, you need to set up a cross-domain communcation channel so your Connect calls can send/receive info to FB. Enter this into a file and save it as xd_receiver.htm:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Cross-Domain Receiver Page</title>
</head>
<body>
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/XdCommReceiver.js?2" type="text/javascript"></script>
</body>
</html>
Save this file into the same directory as your application. I saved it in the /frmatch/ directory.
3. Set up your page to make Connect calls.
In the file you are trying to make Connect calls in, you need the following code segments in the correct place:
3a. <html> tag
First, you have to include some special parameters in your <html> tag to let the browser know how to render the XML:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
3b. FeatureLoader Javascript
Next, you need to include the FeatureLoader Javascript, which is responsible for loading the features necessary to make certain calls. (Note: You must place this line directly below the <body> tag!)
<body>
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript"></script>
4. XFBML Loader Javascript
Add this Javascript to make sure your fbml is completely loaded before it is displayed. Place this code below the FeatureLoader script.
5. XFBML
<script type="text/javascript">
window.onload = function() {
FB_RequireFeatures(["XFBML"], function() {
FB.init('xxxxxxxxxxxxx', 'xd_receiver.htm');
FB.XFBML.Host.get_areElementsReady().waitUnitlReady(function()
{
document.getElementById("container").style.visibility = "visible";
});
});
};
</script>
Now you are ready to render XFBML in your iFrame or Connect application. To render an fb:request-form, place the following code block after the previous script:
<fb:serverFbml style="width: 755px;">
<script type="text/fbml">
<fb:fbml>
<fb:request-form
action="http://apps.facebook.com/frmatch/postadd.php"
method="POST"
invite="true"
type="XFBML"
content="FriendMatch Invite Form!">
<fb:multi-friend-selector
showborder="false"
actiontext="Invite your friends to play FriendMatch!">
</fb:request-form>
</fb:fbml>
</script>
</fb:serverFbml>
Share
Friday, February 12, 2010
How to use FB.Connect.streamPublish()
Please note: This guide is dated and I would recommend using the new Facebook Javascript API for this functionality. Check out this guide on the Facebook Developer site.
I have spent countless hours searching the Developer forums and reading over the wiki and haven't found a single, all-encompassing source that describes how to properly use FB.Connect.streamPublish(). This article is geared towards iFrame applications, but the same methods are used for external web sites using Facebook Connect. Also, if you own a web design company, please take a minute and add it to The Web Company Directory for free!
First, it is extremely important to have the proper connect settings.
1. Connect URL
Click the Connect tab in your application's settings, and set the Connect URL to your site's address with no ending / (i.e. http://www.ugadevelopers.com/frmatch).
(iFrame apps: Also ensure that you have set your Bookmark URL equal to your Canvas URL: http://apps.facebook.com/<yourapp>)
2. Cross-Domain Communication Channel
Next, you need to set up a cross-domain communcation channel so your Connect calls can send/receive info to FB. Enter this into a file and save it as xd_receiver.htm:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Cross-Domain Receiver Page</title>
</head>
<body>
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/XdCommReceiver.js?2" type="text/javascript"></script>
</body>
</html>
Save this file into the same directory as your application. I saved it in the /frmatch/ directory.
3. Set up your page to make Connect calls.
In the file you are trying to make Connect calls in, you need the following code segments in the correct place:
3a. <html> tag
First, you have to include some special parameters in your <html> tag to let the browser know how to render the XML:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
3b. FeatureLoader Javascript
Next, you need to include the FeatureLoader Javascript, which is responsible for loading the features necessary to make certain calls. (Note: You must place this line directly below the <body> tag!)
<body>
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript"></script>
3c. streamPublish() call
Finally, we are ready to make the streamPublish() call. Here is a barebones script to test and make sure that everything is working correctly (don't forget to change to your api key):
<script type="text/javascript">
function publish() {
FB_RequireFeatures(["Connect"], function() {
FB.init('xxxxxxxxxx', 'xd_receiver.htm');
FB.ensureInit(function() {
FB.Connect.streamPublish();
});
});
}
</script>
<p>Stream Publish Test</p>
<a href="#" onclick="publish(); return false;">Post a story</a>
3d. Pop up dialog on window load
To pop up the feed dialog when the page loads (i.e. user lands on a high scores page and you present them a dialog to publish their high score), simply add the following script after the one above:
<script type="text/javascript">
window.onload = publish;
</script>
3e. streamPublish() with additional content
I assume most people want to display some content that is relevant to their app. Here is an example of attaching an image and a message to the post:
<script type="text/javascript">
function publish() {
var attachment = {
'name':'FriendMatch',
'href':'http://apps.facebook.com/frmatch',
'caption':'{*actor*} is playing FriendMatch!',
'media':[{
'type':'image',
'src':'http://www.ugadevelopers.com/frmatch/tile.png',
'href':'http://apps.facebook.com/frmatch/'
}]};
var action_links = [{'text':'Match Friends','href':'http://apps.facebook.com/frmatch'}];
FB_RequireFeatures(["Connect"], function() {
FB.init('xxxxxxxxxx', 'xd_receiver.htm');
FB.ensureInit(function() {
FB.Connect.streamPublish('', attachment, action_links);
});
});
}
</script>
I hope this helps some people. FB's documentation of setting up this process is spotty at best!
Share