Archive for July, 2007

Where You Can Tell Your Lawyers To Go

Tuesday, July 31st, 2007

Lately, I’ve been receiving, more and more, pleas from developers looking for ways to get around their legal departments when it comes to using open source technology for their company’s app. “The suits don’t get it.”, “My lawyer is paranoid.”, “Our legal team doesn’t want the risk!”, “Do you sell IP protection?” Um no.

Quite frankly, my heart goes out to these poor developers that have to swallow their pride and ask their peers these lame questions. How do you tell a lawyer that he doesn’t know what he’s talking about?

(more…)

ajax experience recap

Tuesday, July 31st, 2007

Last week was the latest installment of the Ajax Experience in San Francisco. More low-key than last year’s conference, I left the main corridor only to give two talks, one on Dojo and one on Comet. I met a lot of people I had been wanting to meet for a while, and caught up with most of the usual suspects. Interest in Dojo 0.9 was strong, and there were a lot of good questions about Comet, as well as a great discussion at the end of the Comet talk with Greg Wilkins and Joe Walker in the crowd and participating.

If there was one point to take away from the conference, it was that everyone there has now bought into Ajax. Last year’s most frequently asked question, “What about accessibility?”, has now been answered in great detail by Dojo and Dijit. I believe this year’s theme was all about performance. Everyone has had another year to work with web apps, expectations are higher, and everyone wants to do more for less. This isn’t a great shock or surprise, but the comments from people attending the Dojo 0.9 talk tell me that the improvements we have made can’t come fast enough.

Softening polylines with DojoX Graphics

Monday, July 16th, 2007

One of the more exciting projects coming out of the Dojo Toolkit is DojoX Graphics–a cross-browser API for creating vector graphics. Over the next few months, I’ll be writing a series of tutorials showing you how you can use DojoX Graphics to accomplish a number of tasks–starting with showing you how to soften a polyline like this:

Straight polyline…to this…Eventual spline representation…using cubic bezier curve segments.

(more…)

Filling the iPhone Chat Gap

Thursday, July 12th, 2007

iphone_chat.png Many people are perplexed by the absence of instant messaging on the iPhone. Apple has done great things for SMS with their ichat styled interface. Unfortunately they stopped short of providing a seamless IM experience. Hopefully Apple will add these features in a future software update.

The iPhoneDevCamp in San Francisco last weekend saw several groups working to fill the IM gap by building iPhone compatible IM web applications. I spent part of my time there revising the existing cometd chat app to work well on the the iPhone. Comet’s long-running http connections are ideally suited for chat apps as it provides very low latency. We had already tested cometd on the iPhone, so I was encouraged about the ease of porting the existing chat demo.

(more…)

Ambassador Changes Name to Ambassador Media Group; Fred Groser Promoted to COO

Monday, July 9th, 2007

NEW YORK, NY (Marketwire) July 9, 2007 – Ambassador Publications — best known for publishing the
Ambassador Yellow Pages — has changed its name to Ambassador Media Group, the company announced today. “We are a leader
in both print and online directional advertising,” said Ambassador Media Group CEO Kathy Hipple. “As Internet usage grows,
we have established a major online presence. Our name change reflects our growing dominance in electronic media.”

Ambassador Media Group’s flagship product line has been its highly regarded Ambassador Yellow Pages, which is published
throughout metro New York. In a short seven years, the Ambassador Yellow Pages has captured a sizeable portion of the Big Apple’s
market and is the fastest growing yellow pages in the region.

Recently, Ambassador announced the launch of its custom-built Internet software application, positioning the company as a national
leader in online directional advertising. The Internet division of Ambassador Media Group works with both local and national businesses
that target ready-to-buy customers.

In recognition of this growing national reach, Ambassador has promoted its Executive Vice-President of Sales and Operations, Fred Groser,
to Chief Operating Officer. Groser’s career spans over 25 years in directional advertising. Prior to joining Ambassador in 2006, Groser
headed up Verizon’s one billion dollar Washington, D.C. to Maine directory operation.

“Ambassador is a world-class sales organization committed to providing the best solutions for local and national businesses intent on reaching
ready-to-buy customers, both in print and online,” noted Groser.

Ambassador Media Group has accelerated its involvement in connecting ready-to-buy consumers with its advertisers via search engines by hiring a
software firm, SitePen, in Palo Alto, to build a novel software application that allows advertisers to develop, manage and track the results of
their Internet advertising campaigns. Just as Ambassador has delivered excellent results to its advertisers in its print directories, their proprietary
Internet platform provides strong “ROI based” results from numerous search engines and Internet Yellow Pages sites (IYP) such as Google, Ask.com, Yahoo!
and MSN search.

Web Site: http://www.AmbassadorMediaGroup.com

New Dojo Offline Release

Friday, July 6th, 2007

SitePen and Dojo are proud to announce a new beta release of Dojo Offline. This release has a huge amount of exciting new functionality, including a full port to Google Gears, a port from Dojo 0.4 to 0.9, and more.

(more…)

Hacking Firebug

Thursday, July 5th, 2007

I was never a fan of the way Dojo 0.4.x handled debugging. Sans an available console, the debugger would dump text all over the page. Dojo 0.9 no longer uses dojo.debug in favor of Firebug’s world class debugger. Because Dojo 0.4.x wrapped, extended, and essentially hid Firebug’s console, some 0.9 adopters may be even wonder what console.log is. When porting to 0.9 and doing the obligatory fishing: where did that function go, what do they call it, and is it still there?… inevitably, the first function you look for is dojo.debug, and you come across the console object in firebug.js. Dojo.firebug is a port of Firebug Lite. What this means is that if you are viewing your app on a browser without Firebug, not only will you not get runtime errors, but you’ll get a debugger… actually a console! No more messy text all over my page. Just another reason why Dojo rocks.

(more…)

Messing around with the iPhone

Thursday, July 5th, 2007

Well, the plan was to go through every type of input object, button, and image in Safari on my shiny new iPhone and make notes about what functions were available, how event handling works, and any other fun little goodies that came along. I started out with the good old text input box, and after an hour or two of executing functions in all sorts of different orders and being seriously freaked out a couple of times, I’m worried about the pretty severe limitations of one of the most basic widgets of the web browser:

  • When the input does not have “virtual keyboard” focus, calling its focus function calls its onfocus function, but does not give the input “virtual keyboard” focus
  • When the input does not have “virtual keyboard” focus, but you’ve called its focus function, calling its blur function will call its onblur function. When the input does have “virtual keyboard” focus, calling its blur function does absolutely nothing (which breaks some scripts that prevent input by blurring on focus).
  • When the input does not have “virtual keyboard” focus, calling its select function does nothing, until you scroll or zoom in on the page, at which point it calls both its onfocus and onblur functions. When the input does have “virtual keyboard” focus, calling its select function does absolutely nothing.
  • Calling its click function calls its onclick function as expected.
  • Selecting an input box fires: onfocus, onmouseover, onmousedown, onmouseup, onclick, and sometimes onmousemove
  • Selecting the next item on the page fires: onblur, and (conditionally) onchange, but still no key events.
  • Clicking the “Done” button in the “virtual keyboard” fires: onblur, and (conditionally) onchange, but still no key events.
  • The only key that registers any key events is the return key.

Thinking outside the (browser) box

Wednesday, July 4th, 2007

Apple’s iPhone web application development tips are yet the latest example of blurring the lines between the power of the web and the desktop. The example that drives this point home the most is Google Maps:

Google maps links open a built-in Google client rather than making a connection through the public website.

On the desktop, we’re seeing Dojo Offline and Google Gears, as well as more proprietary offerings such as Adobe’s AIR and Microsoft’s Silverlight. One interesting thing coming from Apple that has not received much mention is WebKit and Cocoa bindings, including JavaScript bindings. Soon we’ll be able to use open web standards to create native Mac apps!

The proliferation of JavaScript, HTML, and CSS is rapidly spreading to every area of software development, because open web standards are powerful and relatively easy to comprehend.

SVG missing on the iPhone

Tuesday, July 3rd, 2007

Safari on the iPhone does not currently have support for SVG. Safari 3 beta on Mac and Windows is currently the best browser on the planet for SVG performance, so this is a somewhat disappointing omission. We are hopeful that by the end of the year, the iPhone will receive the Safari 3 upgrade, and along with that native support for SVG. For now, we’ll have to wait on dynamic charting and drawing tools due to no SVG and the lack of mousemove event handlers.