Archive for November 29th, 2006

Spokeo Aggregates Social Networks And Blogs

Written by on Wednesday, November 29th, 2006 in Ajax News.

spokeologo.jpgSpokeo wants to be your home page. They want to bring you your favorite blog feeds, MySpace updates, new YouTube videos, and friends’ photo albums all in one eyeful.

Spokeo combines the top 20 social networking destinations with any RSS feeds you like into one glimpse through a multimedia RSS reader. But you can’t actually navigate within the networks. It just gives you a run-down. Sort of like My Yahoo! for Web 2.0 sites.

“The problem with start pages like My Yahoo! is the personalization part,” said Harrison Tang, founder of Spokeo, in a phone conversation on Wednesday. “People don’t really know how to add content. It takes like ten steps and a lot of people don’t know how to do it. So we’re assuming that most people are interested in reading online information on the same page that tells you where your friends are, what pictures they’re taking, and what your favorite blogs like TechCrunch are saying.” [I swear he said TechCrunch!]

This is a great idea but it needs some work. For starters, (and here is the woman in me speaking), it’s just not pretty. And it could learn from My Yahoo! and at least give me my local weather. Also, it’s not easy to import information to the site. I tried to get it to feed my MySpace info and somehow ended up with MySpace buddies and information for someone named Gnatalie instead. Shouldn’t I need a password to do that? Consequently, I had a pretty hard time figuring out how to get Gnatalie off of my page and get my own MySpace information on.

Your Spokeo home page is organized into three categories on the side bar: Me, My Friends, and Featured Users. Users can then navigate what their friends or popular Spokeos are up to based on their tags or activities.

Spokeo was started by four Stanford buddies who love MySpace and Flickr and quite obviously TechCrunch and were tired of not having all of their info in one place. The site was funded through “angel investors” so far…meaning their parents.

spokeoscreen.jpg

Crunch Network: CrunchBoard because it’s time for you to find a new Job2.0

Source: TechCrunch
Original Article: http://feeds.feedburner.com/~r/Techcrunch/~3/55703006/

Quick Embed Code to Add Comments To Any Site

Written by on Wednesday, November 29th, 2006 in Ajax News.

It may not be a multi-million dollar venture-backed startup, but Lev Walkin has an elegant solution to a common feature of the social web, commenting. JS-Kit is an entirely free little javascript embed that allows you to add threaded comments to any web page in one line:

"<script src="http://js-kit.com/comments.js"></script>"

JS-Kit works by running Lev’s javascript code, which along with the website’s referral, fetches the appropriate comment data from his server. The comments are fully customizable by CSS and multiple comment instances can be displayed on the same referring URL by changing the “path” attribute of the comment. That way you could have a photo page with unique comment threads for each picture. However, while JS-Kit allows for a lot of customization, it still lacks the administrative features of fully integrated comments, such as those of our Wordpress blog.

Lev Walkin is a Cisco Security Engineer out of Santa Clara, and originally came up with the idea as a way to help he wife, a web designer, easily add comments to her sites.

Feel free to test the script after the jump…

Crunch Network: CrunchGear drool over the sexiest new gadgets and hardware.

Source: TechCrunch
Original Article: http://feeds.feedburner.com/~r/Techcrunch/~3/55695188/

Amazon goes UnSpun with Ruby on Rails

Written by on Wednesday, November 29th, 2006 in Ajax News.

UnSpun is a new service from Amazon that puts workers from the Mechanical Turk and the UnSpun community at work finding the top, best, favorite things in any category. It’s also a Ruby on Rails application sitting on the Amazon.com domain.

To be afforded that privilege at Amazon, you have to run the gauntlet of Amazon security and scalability requirements. Certainly not a trivial thing to do, but the Amazon Web Services team did it and now their Rails application is live.

How’s that for fueling the rumor engine.

Source: Signal vs. Noise
Original Article: http://www.37signals.com/svn/posts/138-amazon-goes-unspun-with-ruby-on-rails

Yahoo! Launches Group Texting Site

Written by on Wednesday, November 29th, 2006 in Ajax News.

mixdlogo.jpgYahoo! is getting in on the group text messaging biz with the launch of their new site, Mixd. TechCrunch was tipped off to the site’s existence today but we have not been able to determine how long it has been live.

Mixd allows users to set up groups and text or share photos within those groups. Texts and photos can be managed online as well as on a mobile phone.

mixdscreen.jpgText recipients can reply to all, “whisper” by replying to just one other person, or “mute” by turning off the message chain. But judging from some initial testing, all of those functionalities are not the easiest things to figure out. It’s simple enough to sign up for the service but difficult to manage contacts, groups, and the numbers assigned to groups and commands. Yahoo! tries to simplify things by asking users to text a number instead of a word, which I’m not sure makes things simpler.

It looks like Yahoo! is going for the “cool” angle on this one. The “About” page says, “Mixd is about going out. Coordinate last-minute meetups, share pictures and videos from your phone, and remember last night on a website we create for you, automatically.”

We have had our eye on several group SMS services lately such as Zemble, Dodgeball, and Twitter. It is a little surprising that Yahoo! wants in on this game but then again, why not?

So far this service is only available to US phone numbers. Regular text messaging fees apply.

Thanks to Noah Kagan to tipping us off about this new site!

Crunch Network: CrunchBoard because it’s time for you to find a new Job2.0

Source: TechCrunch
Original Article: http://feeds.feedburner.com/~r/Techcrunch/~3/55618895/

Design Decisions: Basecamp help

Written by on Wednesday, November 29th, 2006 in Ajax News.

Last week we pushed an update to the Basecamp help section. The goal was two fold: 1) Make it easier and faster for people to find answers to questions they had and 2) Make it easier on us by reducing the need for people to contact us directly for help.

The old help section looked like this. A list of common general FAQs at the top, a few other help links below those, and then a long list of common FAQs for each section below.

Based on the type of support requests we were getting it became obvious people weren’t looking below that initial list. We had to do something better.The new help section looks like this. A pulldown lets you jump to a section and the FAQs for that section load up right below. If you want to see help for file sharing, just select “File sharing” from the pulldown. We also added quick tutorial videos for key sections and increased the font size for the FAQs themselves.

We also replaced the “Help” link in the upper right corner with a graphical button. Customers were telling us they didn’t even know a help section existed in Basecamp. The link was too small and obscure. When people need help they are already frustrated — making the help section hard to find just piles on the frustration. The button solved that problem.

But what I wanted to focus on for this particular post was a smaller part of the new help section. A little detail. A design decision.

When you select a section from the pulldown, the name of the section appears below with the relevant FAQs. The change is instant. Watch this movie to see how it works.

Speed is good, but speed can also be deceiving. Sometimes things can happen too fast. Sometimes it doesn’t look like anything changed. That was the original impetus for the yellow-fade technique introduced in Basecamp.

But the yellow fade just didn’t seem to make as much sense in this case. We wanted to be a bit more subtle. Flashing a huge 500 sq/px section yellow was too much.

When I was originally designing this the section headers looked like this:


The problem was that when we started using it we realized that the headline change wasn’t enough of a visual cue to let you know something changed. Just changing some black text on a white background didn’t cut it.

So I tried this instead:


Now we’re talking. Now when you make the switch the shape of the header also changes (watch the movie again). The black bar changes length. That’s a lot more obvious than just black text on a white background.

This plays off Tufte’s “smallest effective difference” theory which basically says you should make all visual distinctions as subtle as possible, but still clear and effective.

Changing black text was too subtle and not clear enough. But changing the background to black allowed the section change to be clear and effective yet subtle enough not to startle you like a huge yellow fade might have done.

We really enjoy these details. We hope you do too.

Source: Signal vs. Noise
Original Article: http://www.37signals.com/svn/posts/137-design-decisions-basecamp-help

New Photo Sharing Site: Se Habla Español…Et Français

Written by on Wednesday, November 29th, 2006 in Ajax News.

pikeologo.jpgMaybe the world actually does need another photo sharing service. In a recent Spanish blog, one user wrote, (translated from Spanish) “If there is anything in the entire world that I refute, it is that Flickr is in English.”

A new photo sharing site called Pikeo launched in beta about three weeks ago in English, Spanish, and French. But language is not the site’s only claim to fame. The company is emphasizing mapping as the most salient feature.

pikeoscreen.jpg“Maps are the center of the experience,” said Celine Lacombe, project manager for Pikeo, in a phone conversation today. “We think that pictures tell stories when they are inside of maps so that you know where they’ve been taken.”

The cool thing about tagging photos on Pikeo is that users can search photos based on three separate criteria: Who, What, and Where. So if you search for “Paris,” you can find photos categorized by who took them, what they were photographing, and where they are geographically.

Pikeo also has a fast uploading function that doesn’t require users to download a pesky desktop application. You can upload an entire file directly from the site and it works in the background so that users can continue to browse photos while uploading their own.

Pikeo was built on Adobe’s new Flex 2 technology. It’s about as easy to navigate as they come.

Pikeo development was spearheaded in San Francisco but it is sponsored by France Telecom. The company will host an official launch party next Tuesday in downtown San Francisco. To land yourself an invitation, click here.

Crunch Network: MobileCrunch Mobile Gadgets and Applications, Delivered Daily.

Source: TechCrunch
Original Article: http://feeds.feedburner.com/~r/Techcrunch/~3/55609181/

symfony 1.0 beta released

Written by on Wednesday, November 29th, 2006 in Ajax News.

symfony, the popular PHP Ajax framework, has released a beta of their 1.0 framework.

New Features in 1.0

  • Easier installation and larger compatibility. Symfony is now compatible with magic_quotes_gpc set to on and PHP 5.2. Pake and phing are now bundled with the core classes, so symfony has no more external dependency. It is very easy to link a symfony application to the symfony libraries (through the config/config.php file), and PEAR is no more a prerequisite. The symfony command line now works out the box (for PEAR, SVN or .tgz).

  • Major performance improvement. Many parts of the code have been refactored, with performance in mind. The result is a performance increase of 50% to 500%, depending on your platform.

  • New plugin system. Extending symfony has never been easier. A plugin can package classes, modules, helpers, filters, web assets, fixtures, data models, unit tests, and so on. Plugins can be installed with one command. Check the Plugins page for a list of already available plugins.

  • New unit test library. Symfony is now bundled with its own unit and functional test framework, called lime, and a bunch of automated tests utilities, such as the sfTestBrowser and sfDomCssSelector classes. Symfony itself has more than 2800 unit and functional tests that guarantee its quality of code.

  • Updated default pages for error 404, error 500, insufficient credentials, unavailable page, and deactivated application (thanks justinm for the design!). These pages are both much nicer and much easier to customize than before.

  • Easier templating. Components and components slots now work perfectly on every situation, even with cache set to on. Their code was refactored to be fast and effective. The new temlate fragment tools, called slots, are faster than component slots, require no extra file or configuration to add a dynamic zone to a layout. And the icing on the cake: Ajax actions have no layout by default.

  • Better and more flexible Model layer. Symfony is now ORM independent: it is still bundled with Propel by default, but can work with others (such as Doctrine) in a snap. Database schemas can now be written in YAML instead of XML. Persistent support and specific database encoding are now supported natively.

  • New mixin feature. The sfMixin class introduces mixins in PHP, allowing core classes modification without inheritance, addition of new methods to existing classes, and multiple inheritance.

  • New behaviors for Propel classes. A behavior is a group of properties and methods that can alter the Propel generated classes. To make a Propel class sortable, to add a pessimistic lock, or to change the deletion by a is_deleted flag, you now need only one line of code with behaviors.

  • More user-friendly development tools. The symfony logs and the web debug toolbar now display more information about time and execution bottlenecks, thanks to the new sfTimer class. The symfony command line now has a color output (in *nix). The logging mechanism (via the sfLogger class) is more flexible and easier to extend. Logs rotation and cleaning are automated.

  • More flexible filter system. User filters can now be registered anywhere in the filter chain (even before the security filter).

  • New many-to-many relationships are now supported in the admin generator.

  • Easier deployment. The freeze task is implemented and fully functional. It transforms a symfony project into a self sufficient program by adding in the symfony libraries and assets.

  • Updated creole, Propel, script.aculo.us (1.6.5) and prototype (1.5.0_rc1)

  • And more than 200 bug fixes and small enhancements

Source: Ajaxian
Original Article: http://ajaxian.com/archives/symfony-10-beta-released

Google Has No Answers

Written by on Wednesday, November 29th, 2006 in Ajax News.


Yesterday we compared a new service called BitWine to Google Answers. Apparently that was the last day we could make that comparison because at 10 p.m. last night, Google announced that they would be closing the service by the end of the week.

So if you’ve got a pressing question, ask now or forever hold your peace.

“Google is a company fueled by innovation, which to us means trying lots of new things all the time — and sometimes it means reconsidering our goals for a product,” wrote Andrew Fikes and Lexi Baugher, software engineers for Google, on their blog. “Later this week, we will stop accepting new questions in Google Answers, the very first project we worked on here. The project started with a rough idea from Larry Page, and a small 4-person team turned it into reality in less than 4 months. For two new grads, it was a crash course in building a scalable product, responding to customer requests, and discovering what questions are on people’s minds.”

So far no word on how Yahoo Answers is doing in comparison but isn’t it possible that community asking services such as these will become extinct as people learn to better navigate the Web themselves?

Crunch Network: CrunchGear drool over the sexiest new gadgets and hardware.

Source: TechCrunch
Original Article: http://feeds.feedburner.com/~r/Techcrunch/~3/55582156/

TDD and Javascript with JsMock

Written by on Wednesday, November 29th, 2006 in Ajax News.

I’ve been using JsUnit for a while now to do Test Driven Development with OO Javascript. I’ve been implementing mock objects simply by stubbing out methods and adding in a limited amount of logic, but it’s just not the same. So, this past weekend was the time to come up with a port of jMock to Javascript. But before reinventing the wheel, I thought I’d take a look around one more time to see if anyone had beaten me to the punch. Enter JsMock, a Javascript mock objects library that supports Firefox 1.0+, IE6+ and Safari 1.5+.

You can add JsMock into JsUnit tests simply by including the jsmock.js file into your unit test HTML page and adding some mock object code to your tests. An example:

var mockControl = null;
var div = null;
function setUp()
{
 mockControl = new MockControl();
 div = document.createElement(”div”);
}

/* Interface we will mock */
function DocWrapper() {};
DocWrapper.prototype = {
 byId:function(){},
 create:function(){},
 appendToBody:function(){}
};

/* Object we will test */
function Hello(docWrapper) { this.docWrapper = docWrapper; };
Hello.prototype = {
 displayHello:function(id) {
  var elem = this.docWrapper.byId(id);
  if (elem == null) {
   elem = this.docWrapper.create(”div”);
   elem.id = id;
   this.docWrapper.appendToBody(elem);
  }
  elem.style.fontWeight = ‘bold’;
 }
};

/* tests we will run */
function test_NewElem() {
 var mock = mockControl.createMock(DocWrapper);
 mock.expect().byId(”helloContent”).andReturn(null);
 mock.expect().create(”div”).andReturn(div);
 mock.expect().appendToBody(div);

 var hello = new Hello(mock);
 hello.displayHello(”helloContent”);

 try {
  mockControl.verify();
 }
 catch(e)
 {
  fail(”Verify should have passed: ” + e);
 }
}

function test_ExistingElem() {
 var mock = mockControl.createMock(DocWrapper);
 mock.expect().byId(”helloContent”).andReturn(div);

 var hello = new Hello(mock);
 hello.displayHello(”helloContent”);

 try {
  mockControl.verify();
 }
 catch(e)
 {
  fail(”Verify should have passed: ” + e);
 }
}

function test_BadOrder() {
 var mock = mockControl.createMock(DocWrapper);
 mock.expect().create(”div”).andReturn(div);
 mock.expect().byId(”helloContent”).andReturn(null);
 mock.expect().appendToBody(div);

 var hello = new Hello(mock);
 hello.displayHello(”helloContent”);

 try {
  mockControl.verify();
 }
 catch(e)
 {
  fail(”This will fail: \n” + e);
 }
}
 

In the above example, we stub out an interface for a wrapper for the document object (in Firefox and Safari you can actually mock the document object, but not in IE), mock it out for different scenarios, then put the Hello class through its paces, first when there is no DOM node with id “helloContent” and next when there is one. We don’t actually modify the DOM in this case, we just reuse a scratch DIV node that we create in the setup. The last test fails on purpose, just to illustrate how the order of calls matters in JsMock.

:jsmock.JPG

The documentation is a little sparse, so you have to work your way through the examples to get the gist of JsMock. Prior knowledge of jMock or EasyMock is definitely helpful. If you never do any OO Javascript or TDD, you won’t understand why you need something like JsMock. If you do TDD, have at it. It’s just another step in the professionalization of Javascript development.

BTW, this tool was just released in August and updated in the last few days, so the paint is still wet on it. Please consider making bug reports to the authors.

Source: Ajaxian
Original Article: http://ajaxian.com/archives/tdd-and-javascript-with-jsmock

On Writing: Warren Buffett, London Review of Books personals, kGTD

Written by on Wednesday, November 29th, 2006 in Ajax News.

Warren Buffett: Clear thinking leads to clear words
U.S.News & World Report has a special feature on America’s Best Leaders. In it, Warren Buffett gives good quote [via GE]:

“Be a nice person…It’s so simple that it’s almost too obvious to notice. Look around at the people you like. Isn’t it a logical assumption that if you like traits in other people, then other people would like you if you developed those same traits?”

“You’re thinking that the investors, bankers, and regulators are the people you need to survive. Put them all aside, and give priority to talking to your people and your customers about what is wrong and what you have to do.”

“Our favorite holding period is forever.”

“Berkshire is my painting so it should look the way I want it to when it’s done.”

“You don’t need to play outside the lines. You can make a lot of money hitting the ball down the middle.”

Personals that poke fun
Taking the piss of yourself is a good way to disarm your audience, show you’re confident, and prove you can take a joke. Book Lovers Seek Lovers, Buttered or Plain talks about the personals column in the London Review of Books and how people there intentionally present themselves in a negative light.

The magazine’s lonely hearts have described themselves over the years as shallow, flatulent, obsessive, incontinent, hypertensive, hostile, older than 100, paranoid, pasty, plaid-festooned, sinister-looking, advantage-taking, amphetamine-fueled, and as residents of mental institutions.
They have announced that they are suffering from liver disease, from drug addiction, from asthma, from compulsive gambling, from unclassified skin complaints and from reduced sperm counts. They have insulted prospective partners. As one ad starts, “I’ve divorced better men than you.”

Kate Fox, a cultural anthropologist and author of “Watching the English,” compared the London Review personals to an advertising campaign several years ago that showed people recoiling in revulsion from Marmite, the curiously popular gloppy-as-molasses yeast byproduct that functions as a sandwich spread, a snack or a base for soup (just add boiling water).

“An advertising campaign focusing exclusively on the disgust people feel for your product strikes a lot of people as perverse,” [Kate Fox, a cultural anthropologist] said in an interview. But when Britons exaggerate their faults, she said, they are really telegraphing their attributes. “It does speak of a certain arrogance, that you have the confidence and the sense of humor to say these things,” she said.

What kGTD did for summer vacation
It’s a common plight: Emails sit. Blog posts go unwritten. Audiences wonder what happened: “Anyone there?” Ethan at kGTD decided to spin a lengthy absence in a humorous way. His technique was a lot more friendly than, say, “Working on a new business, can’t talk now.”

I missed you. Honest. I meant to write, but, you know: one leaves for summer camp, young love blossoms on the pine tree lined shores of lake Menominee and I forget to write my hometown sweetie (that’d be you). Except in this case “summer camp” is code for “kick starting a new business” and “love blossoms” is code for “immediate need to generate cash flow to cover all those new expenses like insurance, beer, a fridge in the studio for the beer”. Despite this subtext, it’s still a timeless story of learning about life, love, getting to first base, stealing second, being tagged out and spending the rest of the summer alone on the archery range…

So this is mostly just a “hello again”. If you’ve dropped me an email and I owe you one, drop me another. My inbox is empty, but my backlog of kGTD emails is long and I may be declaring email bankruptcy on that folder.

Source: Signal vs. Noise
Original Article: http://www.37signals.com/svn/posts/135-on-writing-warren-buffett-london-review-of-books-personals-kgtd



Site Navigation