Showing posts with label yahoo. Show all posts
Showing posts with label yahoo. Show all posts

Saturday, May 03, 2008

Twitter Me This

No Twitter running off the Rails discussion tonight. One reason I write about Twitter is because I really value the service.  It was particularly useful to me today.

I took my oldest son, Michael, Jr. to Maker Faire today. We left right after lunch. I set Twitter to deliver messages via IM, which for me means Google Talk. I have a Google Talk client on my Blackberry, so all updates went to my phone via IM. I did a "track #makerfaire". Just as I was about to hit the road I see tweet saying how bad traffic was on the 101 near San Mateo, where Maker Faire takes place. I also see a tweet saying the best way to avoid the street traffic was to take the Hillsdale Blvd. exit to Saratoga Drive, where there is free parking. These were not tweets from people I follow, but from people going to Maker Faire, and they were right on. So I took 280 to 92 instead of 101, and used the Hillsdale Blvd tip to find free parking. I got to see a parking lot on the freeway near the San Mateo fairgrounds, as well as on Delaware Avenue (where most people got off the freeway) getting onto Saratoga Drive. I did not have to deal with any of that traffic. Thank you Twitter!

Not long after I got home from Maker Faire, I checked Twitter and saw the first mention of Microsoft withdrawing their bid for Yahoo. I had turned off my Blackberry setup, but immediately change my settings back to IM and turned on iChat on my MacBook. I did this so I could track Yahoo and Microsoft on Twitter. All I can say is ... wow. It was amazing to watch the collective conscious of ... well at least Silicon Valley ... react to such surprising news. Now I'm not going to exaggerate, most of the tweets were redundant and few had any particular insight. That is not the point. Crowd sourcing may be great for traffic info, but not business and technology analysis (just ask a communist survivor!) But it is fun to see how some people were relieved, while others were disappointed because they knew that YHOO stock was doomed to plummet on Monday. 

Friday, November 09, 2007

FUD by Doug Crockford

I like some of Yahoo's Doug Crockford's ideas on JavaScript. So I watched this talk by him on the State of Ajax. It has a great buildup on the history of computing and comparing pre-Ajax web apps to the IBM 3270. He's also a clearly opinionated guy, but he really lets this influence his statements. Examples...

He claims that Java applets failed primarily because of "write once, run anywhere" was a broken promise. That's ridiculous. First off Java applets only needed to succeed on Windows, so write once, run anywhere was irrelevant for a desktop technology. He does correctly state that Java UI (AWT) was no good. He commits a lie of omission, by failing to mention Microsoft's JVM infringements. He then says that Java succeeded on the server because (wait for it) write once, run anywhere is not an issue on the server. Not only is this wrong, it's the opposite of the truth. When I first started writing Java server apps in 2000, I was writing it on Windows and deploying it to Solaris.

Next he heaps praise on JScript and says that its "bugs" were just reproductions of Netscape's bugs. There is some truth in this, but it certainly shows his bias. He states that JScript inveted XMLHttpRequest and that there no innovations for five years after that until Jesse James Garret "discovered" Ajax.

He completely ignores Flash. Earlier he states that write once, run anywhere is really difficult and anybody that can pull it off deserves credit. Well Flash pulls it off. He claims that JavaScript pulls it off, but that's just plain wrong. I don't know how somebody who knows JavaScript so well can state this. He's smart enough to know all about doing browser sniffing and conditional logic based on the results of that sniff.

Monday, July 16, 2007

Cross Site Scripting with Yahoo Local Search API

So I have a fun a little project where I was playing around with the Yahoo Local Search API. I really like Yahoo's local search. I think it is much better than Google's, though in all fairness that opinion was formed 18+ months ago. They have a great open API. Of course they place a limitation on how much you can use. What's interesting is that usage is tied to IP address. The limit is 5000 queries per day per IP address.

This of course begs for Cross Site Scripting(XSS.) If the call to their API to happen from a user's browser, then it counts against that individual user's 5000 query limit. One obvious way to accomplish is this is with Flex. That's because the Yahoo API server farm has an open policy for Flash.

Another way is via JavaScript. Of course I can't make an XMLHttpRequest directly from a user's browser to Yahoo because of browser security. Luckily Yahoo encourages Cross Site Script. You can make a request to their local search API with response output set to JSON and with a callback method. From there you just need some sneaky JavaScript:

 function search(lat,lng,cat){
var reqUrl = "http://local.yahooapis.com/LocalSearchService"+
"/V2/localSearch?appid=YahooDemo&"+
"output=json&callback=showResults";
var req = reqUrl + "&query="+cat+"&latitude="
+lat+"&longitude="+lng;
var rdiv = document.getElementById("resultlist");
var jsonp = document.createElement("script");
jsonp.setAttribute("type","text/javascript");
jsonp.setAttribute("src",req);
rdiv.appendChild(jsonp);
}

The sneaky part here is creating a "script" DOM element, setting its src attribute to the dynamic URL, and then dropping it into the main page DOM. It gets evaluated immediately. The URL response looks like:


showResults({"ResultSet":{"totalResultsAvailable":3423,"totalResultsReturned":10,"firstResultPosition"

:1,"ResultSetMapUrl":"http:\/\/local.yahoo.com\/mapview?stx=coffee&radius=50&ed=sh5iF6131DyGMtZvcmi9jNSxMpMwUjolfcSc44DLrkDbXpY-"

,"Result":[{"Title":"City Espresso Gourmet Coffee","Address":"630 Blossom Hill Rd","City":"San Jose"

,"State":"CA","Phone":"(408) 972-4500","Latitude":"37.250463","Longitude":"-121.8436","Rating":{"AverageRating"

:"","TotalRatings":"0","TotalReviews":"0"},"Distance":"1.18","Url":"http:\/\/local.yahoo.com\/details

?id=21609154&stx=coffee&csz=San+Jose+CA&ed=WbZ4Ba160SzTaXFlbDSmVAyxneC9N59mhMtS3xZb6kL86aeI4P1iTZT5BJOOXR5qK9HSoV5KX0wL"

,"ClickUrl":"http:\/\/local.yahoo.com\/details?id=21609154&stx=coffee&csz=San+Jose+CA&ed=WbZ4Ba160SzTaXFlbDSmVAyxneC9N59mhMtS3xZb6kL86aeI4P1iTZT5BJOOXR5qK9HSoV5KX0wL"

,"MapUrl":"http:\/\/maps.yahoo.com\/maps_result?name=City+Espresso+Gourmet+Coffee&desc=4089724500&csz

=San+Jose+CA&qty=9&cs=9&ed=WbZ4Ba160SzTaXFlbDSmVAyxneC9N59mhMtS3xZb6kL86aeI4P1iTZT5BJOOXR5qK9HSoV5KX0wL

&gid1=21609154","BusinessUrl":"","BusinessClickUrl":""}]}});

The function showResults gets evaluated with the results from Yahoo. How nice of Yahoo to support JSONP. The eBay APIs also have great support for this technique.

Sunday, April 08, 2007

Fantasy Baseball: ESPN vs. Yahoo!

I've played fantasy sports for more than ten years now. A lot of that has been on ESPN. I've spent a lot of money of fantasy teams. Two years ago I started playing a little on Yahoo Sports as well. Their service is free, but it was clearly not as good as ESPN's.

What's interesting though is that this year there seemed to be some pretty fierce competition between ESPN and Yahoo. ESPN started making their fantasy baseball free for the firs time. They reduced the features and eliminated prizes. They kept around more complicated leagues with prizes, but of course they had a price.

Yahoo continued to expand their features. They how had live scoring, something you had to pay for in the past (and something ESPN has had for several years.) They've also added more bling to their interface, with drag-and-drop rosters.

But now something kind of funny has happened. Well at least it's funny to a programmer like me it's funny. ESPN clearly was unprepared for the popularity brought on by making fantasy baseball free. They had simplified the free version of things, but kept most of the features from the $20-30 version. They've had so many problems. On the first day of the season, there were frozen rosters, wrong scores, broken waivers. They've sent out some emails apologizing for the many problems:

To all of our ESPN Fantasy Baseball players,

We wanted to be sure you had the latest update on what is happening with ESPN Fantasy Baseball, and what we're in the midst of doing to get things back on track for you.

We have every resource, including our full technical team as well as additional specialized technical and quality assurance personnel, working to resolve these issues.

Based on extensive ongoing work and testing, we expect to have the problems affecting Fantasy Baseball resolved by Wednesday. It is possible that between now and then testing could reveal complications that would push the resolution to later in the week. However, we are confident in targeting Wednesday and are taking every step during that time to ensure that the solutions we provide for you will be complete and long-lasting.

While it may sound simple, the core problem lies in issues with transaction information being processed incorrectly and at incorrect times - which presents complexities as data progressively compounds.

Here's the latest on what is being done:
  • We have made significant progress finding and working towards a fix for the core problems responsible for roster irregularities and incorrect waiver, free agent and other transactions.

  • Due to the nature of software, thorough testing must be performed to ensure that the solutions we implement will fully resolve the issues and preserve the long-term integrity of the game.

  • To do that, we have created parallels of ESPN Fantasy Baseball leagues in a development and quality assurance environment -- simulating the live game activity.

  • In this environment we have been, and continue to run extensive testing of potential fixes for the core problems. There are approximately 70 different variations of our game currently in use, and we are simulating all of these.

  • In parallel, we have programmers and technicians troubleshooting problems that have created scoring and standings irregularities - isolating and testing potential solutions.
  • Please know -- it is not just rhetoric when we say we continue to work non-stop to resolve this. We owe you the fastest, most effective and stable solution - and that is our sole focus.

    We will continue to communicate with you as there are further developments, and you will hear from us again no later than Wednesday at 3 p.m. ET.

    We apologize again for the frustration you've experienced and appreciate your continued patience.

    You are our number one priority.

    John Kosner, senior vice president and general manager, ESPN.com and the entire ESPN.com Fantasy team

    Ouch! I like how they've now created "parallels of ESPN Fantasy Baseball leagues in a development and quality assurance environment" and "There are approximately 70 different variations of our game currently in use." Sounds like there are configurations that they didn't test -- at all. They didn't have unit tests for it or functional tests by QA. They've resorted to cloning live data to do their testing against. That's really not good!

    I had thought that simply weren't prepared for the scale, but it sounds like their problems are deeper. Talk about an embarrassing situation for their engineering group.

    Oh, and for what's it's worth -- I have two ESPN teams, and one Yahoo team. They're all doing crummy so far. My hitting has stunk, though my pitching has been very good. I'm not worrying though. I figure my guys will start hitting. Hopefully ESPN will have their problems worked out by then.

    Tuesday, February 27, 2007

    No More Gaim

    I've been using Gaim to access both my Yahoo Messenger and Google Talk contacts. However, the Yahoo email notification have stopped working for me. So I think I will just switch to using Yahoo's client and Google's client. Maybe I'll get rid of GMail Notifier, since Google Talk handles that too.

    technorati tags:, , , ,

    Monday, February 05, 2007

    Office 2007

    I went to a Microsoft Vista/Office launch event last week. I really wanted to hear about XAML support in Vista/Office. I got to hear a little about it, and see some very cool demos of applications that were built using XAML, but it was all in all short on XAML details. Oh well.

    As part of the event, I scored a free retail copy of Office 2007 and Groove. I haven't bothered with Groove, but I went ahead and installed Office 2007 on my laptop. I use Outlook all day at work, and now I have this staring at me:

    Notice the "Click here to enable Instant Search". That's not just for the inbox...

    Pervasive indeed. Of course the "instant search" being referenced here is Microsoft's Desktop Search. I've played with this in the past, but I liked Google's a lot better. Mostly because it handled Firefox and Thunderbird well, but MS's did not. I now also use Google's Desktop sidebar, and I have some gadgets for things like my calendar, iTunes controller, and some RSS feeds.

    So I entertained the idea of switching to the MS version of these things. I realized that the vast majority of desktop searches I do are for Outlook emails. So the MS search probably does that as well as the Google one. Most other searches I do are in code using Eclipse. I did occasionally use GDS to search through legacy code back when I worked with lots of legacy code... Also, I thought if nothing else, perhaps it would use less resources (even though Google Desktop is actually pretty darn efficient.) First problem with this idea is that MS does not offer a sidebar for Windows XP. On Vista they have one, but I've heard nothing about them porting it to Windows XP. Perhaps it is dependent on Aero, who knows.

    So I thought, well what about Yahoo's Widget Engine + Microsoft's Desktop Search? Maybe that would be a comparable combination. So I tried out YWE, and found widgets that did all the things that my Google ones were doing. They had a much larger memory footprint on my system, around 2-to-1. They also took up more real estate. I only use the Google sidebar at work, where I have a dual monitor setup, so I am very sensitive about desktop real estate.

    Anyways, I was unsatisfied with Yahoo's widgets, so I did not even give MS's search a try. Guess I will have to live with the MS Advert. Or maybe there's some option for turning it off.

    One other interesting thing about Outlook 2007. It somehow imported all my RSS feeds. I really don't understand how this happened. I suddenly had a huge RSS folder with all my Google Reader feeds, plus a few random ones from Microsoft. My Google Desktop email widget was then overwhelmed with all these RSS files that it thought were emails received via Outlook. I have no interest in a desktop based RSS reader, as I am quite happy with Google Reader. So I deleted all the RSS that Outlook had created and downloaded. I just wish I knew how it did this. Maybe it detected it from Google Reader, who knows.

    Update: One more Office 2007 issue. When I loaded Word 2007, I noticed that my PDF maker buttons were gone. These get installed when you install Adobe Acrobat. I did some searching and supposedly they should be in the "Add-Ins" tab of the ribbon. But I had no Add-Ins tab. Just for kicks, I opened up Acrobat and tried to create a new PDF from a Word document. It crashed Acrobat. I went back to Word 2007, and simply printed my document to the PDF Printer that Acrobat creates. That worked great. I also downloaded Microsoft's PDF maker that is an add-on to Office 2007. It also allowed me to easily create a PDF. So I have no problems creating PDFs, which is good since that is how I like to share documentation at work. Still, I'd like my buttons back. Maybe re-install Acrobat? That's a pain, since I have to re-activate it as well...

    Friday, February 02, 2007

    What's Wrong with Yahoo Mail?

    It seems like every time that I go to the Yahoo! home page, it says I have new email -- but I don't.


    Notice that the Mail tab says I have 4 new messages, but looking at the preview and it finds none. Now it is possible that I have 4 new messages, but for some reason the dates on the messages are screwed up and thus do not show up in the preview, since the preview is sorted by received date. Not likely, but possible. So I open up mail and lo and behold, no messages:


    This happens all the time! I've been very disappointed with Yahoo's mail. It's obviously a clone of Outlook, but anybody who has used Outlook Web Access has used a better Outlook clone. I only use my Yahoo account for things like signing up for websites that I don't quite trust, so it's no big deal that it sucks. Just annoying.