Web Lab
Web Lab. A series of interactive Chrome Experiments made by Google. See the magic of the web brought to life. Open to the world online. Live from the Science Museum, London. Enter the Lab.
The internet is incredible. It powers our lives everyday. It allows us to explore the world without leaving our homes. It gives us access to infinite information. But all this magic is invisible to us. Until now.
The web has evolved from simple text pages to rich, interactive applications. Google developed Chrome from the ground up as a browser for this modern web. An intelligent platform perfect for today’s complex web pages and applications. Chrome’s aim is to spur on innovation amongst all browsers allowing everybody to experience the full potential of the web.
Through 5 interactive Chrome Experiments, Web Lab explores the extraordinary workings of the internet. Each experiment explores and demonstrates a different web theme. Worldwide visitors both online and offline will be able to play live music together, launch data into cyberspace and trace where images on the web actually live, see how robots can see people, and get teleported to unexpected places all over the world.
The internet is incredible. It powers our lives everyday. It allows us to explore the world without leaving our homes. It gives us access to infinite information. But all this magic is invisible to us. Until now.
The web has evolved from simple text pages to rich, interactive applications. Google developed Chrome from the ground up as a browser for this modern web. An intelligent platform perfect for today’s complex web pages and applications. Chrome’s aim is to spur on innovation amongst all browsers allowing everybody to experience the full potential of the web.
Through 5 interactive Chrome Experiments, Web Lab explores the extraordinary workings of the internet. Each experiment explores and demonstrates a different web theme. Worldwide visitors both online and offline will be able to play live music together, launch data into cyberspace and trace where images on the web actually live, see how robots can see people, and get teleported to unexpected places all over the world.
This Exquisite Forest
This Exquisite Forest is an online collaborative art project that lets users create short animations that build off one another as they explore a specific theme. The result is a collection of branching narratives resembling trees.
The project was conceived by Chris Milk and Aaron Koblin, and produced by Google and Tate. It makes extensive use of Google Chrome’s HTML5 and JavaScript support, as well as Google App Engine and Google Cloud Storage.
A physical installation is located in the collection galleries on Level 3 at Tate Modern, and will be open for approximately 6 months beginning on July 23, 2012.
The project was conceived by Chris Milk and Aaron Koblin, and produced by Google and Tate. It makes extensive use of Google Chrome’s HTML5 and JavaScript support, as well as Google App Engine and Google Cloud Storage.
A physical installation is located in the collection galleries on Level 3 at Tate Modern, and will be open for approximately 6 months beginning on July 23, 2012.
CodePen
CodePen is all about front end code inspiration and education through sharing. In the editor, enter HTML, CSS, and JavaScript and the combined result is displayed below. Save your Pen, share it, and explore others. This is extremely useful for showing off your work, troubleshooting, demonstrating bugs, or anything else you can think of.
IconHot
IconHot is a useful site for developer of web and application. It containing 60,000+ high-quality icons, each icon has PNG, ICO and ICNS three formats available for download to used in Linux, Windows and Mac systems. Note that you should reading the license of icons before using them in your application.
The Toolbox
a directory of useful single-page sites and apps.
Animation, Bookmarklets, Colors, CSS, Date & Time, Editors, Grids, Icons, Images, Javascript, Lorem Ipsum, Markup, Math, Misc, Patterns, Photoshop, Reference, Regular Expressions, Responsive Design, Search, Sprites, Starter Kits, Typography, Unicode, Web Performance.
Animation, Bookmarklets, Colors, CSS, Date & Time, Editors, Grids, Icons, Images, Javascript, Lorem Ipsum, Markup, Math, Misc, Patterns, Photoshop, Reference, Regular Expressions, Responsive Design, Search, Sprites, Starter Kits, Typography, Unicode, Web Performance.
The Acid3 Test
Acid3 Browser Test
Acid3 is the third in a series of test pages written to help browser vendors ensure proper support for web standards in their products.
Acid3 is primarily testing specifications for “Web 2.0″ dynamic Web applications. Also there are some visual rendering tests, including webfonts. Here is the list of specifications tested:
- DOM2 Core
- DOM2 Events
- DOM2 HTML
- DOM2 Range
- DOM2 Style (getComputedStyle, …)
- DOM2 Traversal (NodeIterator, TreeWalker)
- DOM2 Views (defaultView)
- ECMAScript
- HTML4 (<object>, <iframe>, …)
- HTTP (Content-Type, 404, …)
- Media Queries
- Selectors (:lang, :nth-child(), combinators, dynamic changes, …)
- XHTML 1.0
- CSS2 (@font-face)
- CSS2.1 (‘inline-block’, ‘pre-wrap’, parsing…)
- CSS3 Color (rgba(), hsla(), …)
- CSS3 UI (‘cursor’)
- data: URIs
- SVG (SVG Animation, SVG Fonts, …)
Face Switch App
Blend, morph, and mash any two faces you want in seconds! Download Face Switch to see what you and your partner’s child might look like, check out yourself with a new haircut, or just mash together random faces into a mix of the two for hilariously entertaining results today!
Morphing unleashed
Morph WHO you want the WAY you want. No more limited morphing templates !
Face Switch gives you so much artistic freedom without any limitations!
Gallery and More
Check out our fantastic gallery or load picture from wherever you want.
Share with friends
Share with everyone - instantly!
You can share your work over Facebook, Twitter and e-mail, save it for later fun or post it in our web site gallery.
Go wild
Explore the possibilities, use your imagination and keep morphing.
Automatic face recognition
Let us handle face recognition, tedious scaling & positioning!
Get it precise
If you think that automatic recognition is not enough you can always edit the position of your eyes!
Face switch
Flip faces with just one touch!
Morphing unleashed
Morph WHO you want the WAY you want. No more limited morphing templates !
Face Switch gives you so much artistic freedom without any limitations!
Gallery and More
Check out our fantastic gallery or load picture from wherever you want.
Share with friends
Share with everyone - instantly!
You can share your work over Facebook, Twitter and e-mail, save it for later fun or post it in our web site gallery.
Go wild
Explore the possibilities, use your imagination and keep morphing.
Automatic face recognition
Let us handle face recognition, tedious scaling & positioning!
Get it precise
If you think that automatic recognition is not enough you can always edit the position of your eyes!
Face switch
Flip faces with just one touch!
twee+
As some people that have been following me for a while know, the 140 character limit on twitter bugs me a lot sometimes, and I’ve tried to find a way to overcome it previously as well. The most common ways these days seems to be either cutting down the long tweet into multiple pieces (yuck) or using a service to host the longer tweet and post a summary with a link to it.
The latter isn’t an entirely horrible option. However, I see 3 big downsides:
- I’m not very comfortable with the idea of some external service hosting my content which could close down any time due to failure to monetize their website. In that case, I’d be left with some dead links that are of no value and my content would be lost forever. Yes, they usually warn you in advance in such cases, but such news could be missed for a number of reasons.
- People (including yours truly) don’t plan those things in advance. They just seek services like that at the exact moment when they want to post a long tweet. Being greeted with a prompt to use Twitter Connect is NOT nice. For starters, it slows me down. Also, I don’t want to give permission to every website on the effing interwebs to post on my twitter timeline. I owe it to my followers to be responsible and not risk filling their timelines with crap.
- Most of these websites look like someone puked and what came out happened to be HTML and CSS. The only exception I’ve found is twtmore, but it still suffers from #1 and #2.
So, like every developer with a healthy amount of NIH syndrome, I decided to write my own
My goals were:
- It had to be entirely client-side (except initially getting downloaded from the server of course). This way, whoever is concerned can download the full website and decode their tweets with it if it ever goes down. Also, being entirely client side allows it to scale very easily, as serving files is not a very resource intensive job (compared to databases and the like).
- No Twitter Connect, the tweets would get posted through Twitter Web Intents.
- It had to look good. I’m not primarily a designer, so I can’t make something that looks jaw-droppingly amazing, but I can at least make it look very decent.
- If I was gonna go through all the hassle of making this, I may as well try to keep it under 10K, so that I could take part in the 10K apart contest. (I haven’t submitted it yet, I’ll submit a few days before the deadline, as it seems you can’t make changes to your submission and I want to polish the code a bit, especially the JS — I’m not too proud about it)
I managed to succeed in all my goals and I really liked the result. I ended up using it for stuff I never imagined, like checking if a twitter username corresponds to the account I think (as it shows the avatars). So I went ahead and came up with a name, bought a domain for it, and tweeplus.blogspot.com was born
twee+? Seriously?
Yes, I like it. The plus means “more”, which is fitting and + kinda looks like a t, so it could be read as “tweet” as well. Yes, I know that the word “twee” has some negative connotations, but oh well, I still like the name. Whoever doesn’t can just not use it, I won’t get depressed, I promise.
Geeky stuff
How it works
- A relatively new feature, Twitter automatically wraps URLs in t.co links, making them only 20 characters long.
- All the text of the tweet is stored in the URL hash (query string will also work, although the output uses a hash). Some research revealed that actually browsers can handle surprisingly long URLs. Essentially, the only limit (2083 characters) is enforced by Internet Explorer. I decided to limit tweets to 2000 characters (encoded length), not only because of the IE limit, but also because I wouldn’t like people to post whole books in t.co links. We don’t want Twitter to start taking measures against this, do we?
- A hard part was deciding which encoding to use (twitter is quite limited in the characters it parses as part of a URL).
- My first thought was base64, but I quickly realized this was not a very good idea:
- The encoding & decoding functions (
btoa()andatob()respectively) are relatively new and therefore not supported by older browsers. I’m fine with the app hardly working in old browsers, but existing links must as a minimum be readable. - It uses approximately 1.34 characters per ASCII character. Unicode characters need to be URL-encoded first, otherwise an Exception is thrown. URL-encoding them uses 6 characters, which would result in 8 characters when they’re base64 encoded.
- The encoding & decoding functions (
- Then I thought of using URL-encoding for the whole thing. The good thing with it is that for latin alphanumeric characters (which are the most) it doesn’t increase the string length at all. For non-alphanumeric characters it takes up 3 characters and 6 characters for Unicode ones. Also, it’s much more readable.
- Still, implementing it was tricky. It doesn’t encode some characters (like the dot), even though twitter doesn’t accept them as part of a URL. Also, escape() and encodeURI() behave differently and the Unicode encoding returned by the former isn’t accepted by Twitter. So I had to combine the two and do some substitutions manually.
- My first thought was base64, but I quickly realized this was not a very good idea:
- When the textarea changes, the hash does too. The whole thing is a form with action=”http://twitter.com/intent/tweet”, so submitting it does the right thing naturally. I keep a hidden input with the tweet and the textarea has no name, so it doesn’t get submitted.
- Usernames, hashtags and URLs get extracted and linkified. Usernames also get an avatar (it’s dead easy: Just use twitter.com/api/users/profile_image?screen_name={username} where {username} is the user’s username)
- Internal “pages” (like “About” or “Browser support”) are essentially long “tweets” too.
- A little easter egg is that if the browser supports radial gradients, the gradient follows the mouse, creating a spotlight effect. This looks nice on Chrome and Firefox, and really shitty on IE10, probably due to bugs in the gradient implementation (which I have to reduce & report sometime).
Buzzword compliance
This little app demonstrates quite a lot new open web technologies (HTML5, CSS3 etc), such as:- textarea maxlength
- placeholder
- autofocus (edit: I had to remove it cause it triggered a Webkit bug in Safari)
- required inputs
- New input types (url)
- History API
- oninput event (with keyup fallback)
- hashchange event
- SVG
- Common CSS3 (border-radius, shadows, transitions, rgba, media queries)
- CSS3 gradients
- CSS3 animations
- CSS3 resize
- :empty
Let me know if I forgot something.
Oh yeah, I did forget something. There it is: TWEE+Source
DropCSS
This little application will help you for the minification of CSS files. All you have to do is to drop the files one by one on the page, you can edit the content of the files if you want by clicking on their names and begin the minification by clicking "Compress". This app uses HTML5 elements, pure javascript and an offline manifest so you can use it even when you are disconnected from Internet. I hope this will be useful to some of you !! ;)
Hello Everyone!!!
Welcome To assadotcom.blogspot.com. Thanks For Your Visit. assadotcom.blogspot.com is The Ultimate All In One Homepage And Web Information, Offering an Innovative Visual Exploration Of The Internet.
Regard,
assadotcom
assadotcom Philosophy
Someone is a Doctor, Someone is a Teacher, Someone is an Engineer, Someone is a Mentor, Someone is a Cracker, Someone is a Hacker, AND I AM AN assadotcom. Just Patch It "N Enjoy!!!























