Transparent Truck System Could Actually Save Lives [Concept]

By Jesus Diaz, GizmodoDecember 22, 2009 at 07:15AM

Art Lebedev calls this simple invention—a camera that takes images from the front of a truck to show it on screens in the back—Transparentius. I call it geeneeuzz.

I don’t know why this drawing shows a tank at the front of the truck, but I guess that in Russia people drive T-90s like in the US people drive Fords. I wish the technology was so cheap that this could be implemented for real, because I’m sure it would save a lot of lives on the road. [Engadget]




Art Lebedev’s Transparentius eliminates opacity, improves road safety

By Vladislav Savov, Engadget RSS FeedDecember 22, 2009 at 06:07AM

Kudos where it’s due: not many design houses use tanks in their illustrations of a new road safety concept. Transparentius, as with most good ideas, is remarkably simple — you jack a camera onto the front of a truck, or lorry as they’re known in some places, and then project that image onto the back of your hulking transporter. The effect of this is to render the truck figuratively transparent for the driver behind, who is enriched with a lot more information about what lies on the road ahead. No word on how the rear projection is achieved or how sunlight glare is overcome, but knowing Art Lebedev, you can bet both challenges are solved in the most unaffordable fashion possible. Anyhow, now that you’ve got the idea, we’re throwing this one over to you dear mod-loving friends — can you build this without remortgaging the house?

[Thanks, Dennis]

Art Lebedev’s Transparentius eliminates opacity, improves road safety originally appeared on Engadget on Tue, 22 Dec 2009 06:07:00 EST. Please see our terms for use of feeds.

Permalink   |  sourceArt Lebedev Studio  | Email this | Comments

The 57 Lamest Tech Moments of 2010

By CmdrTaco, SlashdotDecember 21, 2010 at 09:45AM

harrymcc writes “When it comes strange blunders, failed dreams, pointless legal wrangling, and other embarrassments, the technology industry had an uncommonly busy 2010. I compiled a list of the most notable examples–including the lost iPhone prototype, the short life of Microsoft’s Kin, the end of Google Wave, the McAfee security meltdown, a depressingly long list of lawsuits over mobile patents, and much more.”

Read more of this story at Slashdot.

Firefox 4 beta 8 now available for download

By Lee Mathews, Download SquadDecember 21, 2010 at 08:30AM

While the main download link hasn’t updated yet at getfirefox.com/beta, the latest beta release of Firefox 4 is ready for download from Mozilla’s FTP servers. With Beta 7 already being feature complete, Beta 8 is all about squashing bugs and shining up the browser in anticipation of its release. It was a little slow in the coming, but frankly we’re just glad to see FF4b8 surface before time ran out on 2010.

Check out the full build notes here, or click one of the following links to download:

Other languages and builds are available on the Mozilla FTP server. Full release notes can be found on the Mozilla wiki.

Firefox 4 beta 8 now available for download originally appeared on Download Squad on Tue, 21 Dec 2010 08:30:00 EST. Please see our terms for use of feeds.

Permalink | Email this | Comments

YQL: Using Web Content For Non-Programmers

By Christian Heilmann, Smashing Magazine FeedDecember 21, 2010 at 08:08AM

Advertisement in YQL: Using Web Content For Non-Programmers
 in YQL: Using Web Content For Non-Programmers  in YQL: Using Web Content For Non-Programmers  in YQL: Using Web Content For Non-Programmers

Building a beautiful design is a great experience. Seeing the design break apart when people start putting in real content, though, is painful. That’s why testing it as soon as possible with real information to see how it fares is so important. To this end, Web services provide us with a lot of information with which to fill our products. In recent years, this has been a specialist’s job, but the sheer amount of information available and the number of systems to consume it makes it easier and easier to use Web services, even for people with not much development experience.

On Programmable Web, you can find (to date) 2580 different application programming interfaces (or APIs). An API allows you to get access to an information provider’s data in a raw format and reformat it to suit your needs.

Programmable in YQL: Using Web Content For Non-Programmers

The Trouble With APIs

The problem with APIs is that access to them varies in simplicity, from just having to load data from a URL all the way up to having to authenticate with the server and give all kinds of information about the application you want to build before getting your first chunk of information.

Each API is based on a different idea of what information you need to provide, what format it should be in, what data it will give back and in what format. All this makes using third-party APIs in your products very time-consuming, and the pain multiplies with each one you use. If you want to get photos from Flickr and updates from Twitter and then show the geographical information in Twitter on a map, then you have quite a trek ahead.

Simplifying API Access

Yahoo uses APIs for nearly all of its products. Instead of accessing a database and displaying the information live on the screen, the front end calls an API, which in turn gets the information from the back end, which talks to databases. This gives Yahoo the benefit of being able to scale to millions of users and being able to change either the front or back end without disrupting the other.

Because the APIs have been built over 10 years, they all vary in format and the way in which you access them. This cost Yahoo too much time, which is why it built Yahoo Pipes — to ease the process.

Pipes-500px in YQL: Using Web Content For Non-Programmers
Large view

Pipes is amazing. It is a visual way to mix and match information from the Web. However, as people used Pipes more, they ran into limitations. Versioning pipes was hard; to change the functionality of the pipe just slightly, you had to go back to the system, and it tended to slow down with very complex and large conversions. This is why Yahoo offers a new system for people’s needs that change a lot or get very complex.

YQL is both a service and a language (Yahoo Query Language). It makes consuming Web services and APIs dead simple, both in terms of access and format.

Retrieving Data With YQL

The easiest way to access YQL is to use the YQL console. This tool allows you to preview your YQL work and play with the system without having to know any programming at all. The interface is made up of several components:

Yqlcons in YQL: Using Web Content For Non-Programmers
Large view

  1. The YQL statement section is where you write your YQL query.
    YQL has a very simple syntax, and we’ll get into its details a bit later on. Now is the time to try it out. Enter your query, define the output format (XML or JSON), check whether to have diagnostics reporting, and then hit the “Test” button to see the information. There is also a permalink; click it to make sure you don’t lose your work in case you accidentally hit the “Back” button.
  2. The results section shows you the information returned from the Web service.
    You can either read it in XML or JSON format or click the “Tree view” to navigate the data in an Explorer-like interface.
  3. The REST query section gives you the URL of your YQL query.
    You can copy and paste this URL at any time to use it in a browser or program. Getting information from different sources with YQL is actually this easy.
  4. The queries section gives you access to queries that you previously entered.
    You can define query aliases for yourself (much as you would bookmark websites), get a history of the latest queries (very useful in case you mess up) and get some sample queries to get started.
  5. The data tables section lists all the Web services you can access using YQL.
    Clicking the name of a table will in most cases open a demo query in the console. If you hover over the link, you’ll get two more links — desc and src — which give you information about the parameters that the Web service allows and which show the source of the data table itself. In most cases, all you need to do is click the name. You can also filter the data table list by typing what you’re looking for.

Using YQL Data

By far the easiest way to use YQL data is to select JSON as the output format and define a callback function. If you do that, you can then copy and paste the URL from the console and write a very simple JavaScript to display the information in HTML. Let’s give that a go.

As a very simple example, let’s get some photos from Flickr for the search term “cat”:

select * from flickr.photos.search where text="cat"

Type that into the YQL console, and hit the “Test” button. You will get the results in XML — a lot of information about the photos:

Yql-statement in YQL: Using Web Content For Non-Programmers
Large view

Instead of XML, choose JSON as the output format, and enter myflickr as the callback function name. You will get the same information as a JSON object inside a call to the function myflickr.

Yql-statement2 in YQL: Using Web Content For Non-Programmers
Large view

You can then copy the URL created in the “REST query” field:

Rest-query in YQL: Using Web Content For Non-Programmers
Large view

Write a JavaScript function called myflickr with a parameter data, and copy and paste the URL as the src of another script block:

<script>
  function myflickr(data){
    alert(data);
  }
</script>
<script src="https://query.yahooapis.com/v1/public/yql?
q=select%20*%20from%20flickr.photos.search%20where%20tex
t%3D%22cat%22&format=json&env=store%3A%2F%2Fdatatables.org
%2Falltableswithkeys&callback=myflickr"></script>

If you run this inside a browser, the URL you copied will retrieve the data from the YQL server and send it to the myflickr function as the data parameter. The data parameter is an object that contains all the returned information from YQL. To make sure you have received the right information, test whether the data.query.results property exists; then you can loop over the result set:

<script>function myflickr(data){
  if(data.query.results){
    var photos = data.query.results.photo;
    for(var i=0,j=photos.length;i<j;i++){
      alert(photos[i].title);
    }
  }
}</script>
<script src="https://query.yahooapis.com/v1/public/yql?
q=select%20*%20from%20flickr.photos.search%20where%20text%3D%22cat%22
&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&
callback=myflickr"></script>

You can easily get the structure of the information and know what is loop-able by checking the tree view of the results field in the console:

Datatree in YQL: Using Web Content For Non-Programmers

Right now, all this does is display the titles of the retrieved photos as alerts, which is nothing but annoying. To display the photos in the right format, we need a bit more — but no magic either:

<div id="flickr"></div>
<script>function myflickr(data){
  if(data.query.results){
    var out = '<ul>';
    var photos = data.query.results.photo;
    for(var i=0,j=photos.length;i<j;i++){
      out += '<li><img src="https://farm' + photos[i].farm +
             '.static.flickr.com/' + photos[i].server + '/' + photos[i].id +
             '_' + photos[i].secret + '_s.jpg" alt="' + photos[i].title +
             '"></li>';
    }
    out += '</ul>';
  }
  document.getElementById('flickr').innerHTML = out;
}</script>
<script src="https://query.yahooapis.com/v1/public/yql?
q=select%20*%20from%20flickr.photos.search%20where%20text%3D%22cat%22&
format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&
callback=myflickr"></script>

Flickrphotos in YQL: Using Web Content For Non-Programmers

Put this into action and you’ll get photos of cats, live from Flickr and without having to go through any painful authentication process.

The complexity of the resulting HTML for display differs from data set to data set, but in essence the main trick remains the same: define a callback function, write it, copy and paste the URL you created in the console, test that data has been returned, and then go nuts.

Using YQL To Reuse HTML Content

One other very powerful use of YQL is to access HTML content on the Web and filter it for reuse. This is usually called “scraping” and is a pretty painful process. YQL makes it easier because of two things: it cleans up the HTML retrieved from a website by running it through HTML Tidy, and it allows you to filter the result with XPATH. As an example, let’s retrieve the list of my upcoming conferences and display it.

Go to https://icant.co.uk/ to see my upcoming speaking engagements:

Upcoming in YQL: Using Web Content For Non-Programmers

You can then use Firebug in Firefox to inspect this section of the page. Simply open Firebug, click the box with the arrow icon next to the bug, and move the cursor around the page until the blue border is around the element you want to inspect:

Fb in YQL: Using Web Content For Non-Programmers
Large view

Right-click the selection, and select “Copy XPath” from the menu:

Xpath in YQL: Using Web Content For Non-Programmers
Large view

Go to the YQL console, and type in the following:

select * from html where url="https://icant.co.uk" and xpath=''

Copy the XPath from Firebug into the query, and hit the “Test” button.

select * from html where url="https://icant.co.uk" and
xpath='//*[@id="travels"]'

Select-statement in YQL: Using Web Content For Non-Programmers
Large view

As you can see, this gets the HTML of the section that we want inside some XML. The easiest way to reuse this in HTML is by requesting a format that YQL calls JSON-P-X. This will return a simple JSON object with the HTML as a string. To use this, do the following:

  1. Copy the URL from the REST field in the console.
  2. Add &format=xml&callback=travels to the end of the URL.
  3. Add this as the src to a script block, and write this terribly simple JavaScript function:
<div id="travels"></div>
<script>function travels(data){
  if(data.results){
    var travels = document.getElementById('travels');
    travels.innerHTML = data.results[0];
  }
}</script>
<script src="https://query.yahooapis.com/v1/public/yql?
q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Ficant.co.uk%22%20
and%20xpath%3D'%2F%2F*%5B%40id%3D%22travels%22%5D'&
diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&
format=xml&callback=travels"></script>

The result is an unordered list of my events on your website:

Yql-demo in YQL: Using Web Content For Non-Programmers

Debugging YQL Queries

Things will go wrong, and having no idea why is terribly frustrating. The good news with YQL is that you will get error messages that are actually human-readable. If something fails in the console, you will see a big box under the query telling you what the problem was:

Select-statement2 in YQL: Using Web Content For Non-Programmers
Large view

Furthermore, you will see a diagnostics block in the data returned from YQL that tells you in detail what happened “under the hood.” If there are any problems accessing a certain service, it will show up there.

Select-statement3 in YQL: Using Web Content For Non-Programmers
Large view

YQL Syntax

The basic syntax of YQL is very easy:

select {what} from {source} where {conditions}

You can filter your results, cut the information down only to the bits you want, paginate the results and nest queries in others. For all the details of the syntax and its nuances, check the extensive YQL documentation.

YQL Examples

You can do quite amazing things with YQL. By nesting statements in parentheses and filtering the results, you can reach far and wide across the Web of data. Simply click the following examples to see the results as XML documents. Copy and paste them into the console to play with them.

This is just a taste of the power of YQL. Check out some of my presentations on the subject.

YQL’s Limits

YQL has a few (sensible) limits:

  • You can access the URL 10,000 times an hour; after that you will be blocked. It doesn’t matter in our case because the blocking occurs per user, and since we are using JavaScript, this affects our end users individually and not our website. If you use YQL on the back end, you should cache the results and also authenticate to the service via oAuth to be allowed more requests.
  • The language allows you to retrieve information; insert, update and delete from data sets; and limit the amount of data you get back. You can get paginated data (0 to 20, 20 to 40 and so on), and you can sort and find unique entries. What you can’t do in the YQL syntax is more complex queries, like “Get me all data sets in which the third character in the title attribute is x,” or something like that. You could, however, write a JavaScript that does this kind of transformation before YQL returns the data..
  • You can access all open data on the Web, but if a website chooses to block YQL using the robots.txt directive, you won’t be allowed to access it. The same applies to data sources that require authentication or are hosted behind a firewall.

There Is More To YQL

This article covers how to use YQL to access information. If you have an interesting data set and want it to become part of the YQL infrastructure, you can easily do that, too. We’ll cover that in the next article.

Documentation and Related Links

(al)(vf)


© Christian Heilmann for Smashing Magazine, 2010. | Permalink | Post a comment | Add to del.icio.us | Digg this | Stumble on StumbleUpon! | Tweet it! | Submit to Reddit | Forum Smashing Magazine
Post tags: , ,

Getting Paid to Tell Lies: Mystery Shopping as a Frugal Hack

By Donna Freedman, Get Rich Slowly – Personal Finance That Makes Sense.December 21, 2010 at 06:00AM

This post is from new GRS staff writer Donna Freedman. Donna writes the Living With Less personal finance column for MSN Money, and writes about frugality and intentional living at Surviving And Thriving.

Two persistent rumors about mystery shopping:

  • It’s a scam.
  • It’s not a scam — and you can get rich doing it!

Allow me to set these rumors to rest:

  • Mystery shopping is not a scam. (Well, sometimes it is. More on that later.)
  • You won’t get rich, but you can make a little extra — plus get free stuff.
  • You should never pay for mystery shopping info.

My daughter Abby has been doing “shops” for a decade, and I’ve done them off and on for six years. We’ve gotten free steaks, hotel rooms, oil changes, booze, pet food, lodging, nights at a casino, rental cars, and molten chocolate cake.

Not that it’s all frou-frou stuff: Shops exist for things like vision exams, oil changes, vitamins, pet checkups, bone-density testing. You could get paid to drink microbrews, test-drive a sports car, visit an amusement park, or shop for groceries.

As a mystery shopper, you’re paid to be the eyes and ears of a restaurant, a specialty store, a hotel. That means legwork. You have to fill out multi-page reports (and if you do it wrong, they won’t pay you).

But the more shops you do, the better you get at it — and the more likely that shop providers will call and offer you first pick.

Don’t ever pay for it
Recently I received e-mails from two different companies asking me to mystery-shop. Both told me to “register” with my bank-account, credit-card and Social Security numbers. Riiiight.

Two legitimate sources for mystery shopping are Volition.com and an industry group called the Mystery Shopping Providers Association. Both have lists of companies that offer jobs by region.

Don’t expect to be sent to a pricey steakhouse right off the bat. You’ll have to take lower-end gigs (fast food, coffee shop) to prove yourself. In fact, you may even have to do a make-believe “sample shop” to prove you can write in the style they request.

About that style: “The waiter was really good” doesn’t mean much. What made him good? Did he offer to start you off with something to drink? Did he check back during your meal to make sure everything was OK? Did he tell you the tofu is made in-house?

A specific list of things to watch for will be provided to you. Very specific, as in “Did your glass ever become less than half-full?” or “Did the rental car agent offer you the satellite radio option?”

You may be asked to follow a script, i.e., become a good liar. For example, my daughter was told to go to a pet-food store and say she had two dogs. At the time, she didn’t own so much as a goldfish.

At times you’ll be sent to places normally out of your league. Once, Abby was sent to a pricey-chic clothing store and allowed up to $30 worth of purchases in addition to the shop payment. The only two things she could get were a keychain or a pair of $27 bikini underpants (honest!).

10 reasons that mystery shopping is a frugal hack

  1. Unemployed or underemployed? Sign up for as many restaurant shops as you can.
  2. Seeking new specs? I’ve seen vision-care shops that reimburse $100.
  3. Got kids? Take them to the water park or a pizza joint on someone else’s dime.
  4. Hotel shops are a mini-staycation. The pool, the room service (you will probably be required to order it), the novelty of having a telephone in the bathroom…OK, so I’m easily amused. You might be, too.
  5. Parents aging? Look for shops of retirement homes/assisted living facilities. If nothing else, this might give you an idea of where not to put Mom and Dad.
  6. Too broke to date? Invite that special someone to a night at the casino.
  7. Living the car-free life? Use auto-rental shops to visit a friend who lives two towns over. Go to the pet-food warehouse and buy giant sacks of kibble. Hit the warehouse club for six months’ worth of toilet paper.
  8. Want to treat a friend? Take him out for a glass of wine.
  9. Need to send money to a relative, either as a gift or repayment of a loan? Watch for shops that pay you to get money orders.
  10. Want to go downtown? Find one or two parking-garage shops. This means not just parking reimbursement but an extra $10 or $20 toward whatever you want to do. (A frugal culture hack, maybe?)

What’s in it for you?
For most restaurant shops, the fee is small or even nonexistent — you’re generally in it for the free lunch. For others, the pay range is generally $10 to $35 plus product reimbursement.

However, I’ve earned as much as $95 for a banking assignment that took several visits. Some shops have bonuses because they’re due immediately (another shopper flaked out, leaving the provider in the lurch).

Three things you’ll need:

  • A separate e-mail account. The notifications can pile up pretty quickly. Check it regularly because the popular shops go fast.
  • A watch that times in minutes and seconds.
  • A PayPal account. Some companies reimburse only electronically.

Does all this sound like a lot of work? It is and it isn’t. How many times have you raved to your pals about a great restaurant or groused about a crummy one? This time you’ll be doing it in writing. It’s like Yelp, except that you get paid (or at least fed) to do it.

If you’re strapped for cash but still love the mall, then mystery shopping gives you a little money to feed your hobby. The temptation to keep spending might be strong, however, so consider choosing assignments that don’t have anything to do with your weaknesses (sports cars, nickel slots, really cute shoes).

Nobody gets rich doing this. But it’s a way a little cash to do things you might want to do anyway, such as having lunch out or wandering through a nice store. Or marveling at $27 underpants.


Related Articles at Get Rich Slowly – Personal Finance That Makes Sense.:

Law Professor Explains How Even When A Site Copies An Entire Article, It May Still Be Fair Use

By Mike Masnick, Techdirt.December 21, 2010 at 01:35AM

Berkeley law professor Jason Schultz has filed an excellent amicus brief in one of the many Righthaven lawsuits, pointing out that using an entire article does not preclude fair use (pdf), and then going on to explain why the use of an entire article in this particular case (which Righthaven brought against the Center for Intercultural Organizing) was almost certainly fair use. Basically, Righthaven has taken the approach that if an entire article is being used, then there can be no fair use. However, as Schultz points out, that’s not at all what copyright law says:


A fair-use inquiry balances four statutory factors…. Righthaven,
however, asks this Court to ignore those traditional factors and embrace an inflexible, one-factor
test that prohibits a fair-use finding whenever an entire copyrighted work is used. That approach
finds no support in the text and purposes of the Copyright Act and the cases interpreting it.
Indeed, the Supreme Court, the Ninth Circuit, and this Court have all found the use of entire
copyrighted works to be consistent with the fair-use doctrine. Those rulings recognize that
copyright law balances two important public interests: promoting creative expression and
encouraging the use of copyrighted works for socially beneficial purposes.

It is a common misconception that using an entire work means there’s no fair use defense. We’ve repeatedly pointed out cases where courts have found fair use, even if an “entire” work was being used. But, still, we get commenters all the time who argue that there’s no such thing as fair use if you use an entire work. Schultz, in his brief, highlights many more examples, including the explanations of why each case was still deemed as fair use. From there, he goes on and runs through the four factors in this particular case, and explains why it should be considered fair use as well. It will be interesting to see how the judge rules, because that could impact many other Righthaven cases as well.

Permalink | Comments | Email This Story