background preloader

JS

Facebook Twitter

Announcing Amber.js « Katz Got Your Tongue? - Vimperator. December 8th, 2011 A little over a year ago, I got my first serious glimpse at SproutCore, the JavaScript framework Apple used to build MobileMe (now iCloud).

Announcing Amber.js « Katz Got Your Tongue? - Vimperator

At the time, I had worked extensively with jQuery and Rails on client-side projects, and I had never found the arguments for the “solutions for big apps” very compelling. At the time, most of the arguments (at least within the jQuery community) focused on bringing more object orientation to JavaScript, but I never felt that they offered the layers of abstraction you really want to manage complexity.

When I first started to play with SproutCore, I realized that the bindings and computed properties were what gave it its real power. Bindings and computed properties provide a clean mechanism for building the layers of abstractions that improve the structure of large applications. But even before I got involved in SproutCore, I had an epiphany one day when playing with Mustache.js. JavaScript : 3 fondamentaux. Eugene's Blog - Using recursion combinators in JavaScript - Vimperator.

In the previous post we explored “array extras” and how they can help us to write concise yet performant and clean code.

Eugene's Blog - Using recursion combinators in JavaScript - Vimperator

In this post we take a look at generalizing recursive algorithms with recursion combinators — high-level functions that encapsulate all boilerplate code needed to set up the recursion. These functions were added to dojox.lang.functional and will be officially released with Dojo 1.2. In general the recursion is a form of iterative problem solving in the same category as loops. There are two major natural sources of recursive algorithms: recursive data structures (lists, trees, and so on), and recursive definitions (factorial, Fibonacci numbers, the GCD algorithm, etc.). The recursion plays a prominent role in the functional programming (FP), and one of the best articles on this topic is “Recursion Theory and Joy” by Manfred von Thun, the creator of Joy (a purely functional programming language with Forth-like syntax).

OS.js (JavaScript Operating System) « Anders Evenrud Weblog - Vimperator. A Look at Popcorn. Today we’re going to take a look at Popcorn.JS, a library from Mozilla which makes it very easy to manipulate a webpage based on the current position of a video.

A Look at Popcorn

This allows you to create rich “hypermedia” experiences around your video content. With Popcorn, you could display information about actors currently on-screen, or show Google Street View maps of locations in the video. Take a look at the Demo Page to see what we’ll be achieving – a mix of images, Google Maps, Wikipedia, tagging, RSS feeds, Facebook and web content – all in a 22 second video clip. Lets Make a 3D Game: microphysics.js. This post is part of the “Lets make a 3D game” series. 3D and physics simulation always go well together evenmoresowithmarblegames.

Lets Make a 3D Game: microphysics.js

One is required for marblesoccer but i wasnt convinced by current 3d physics engines. I explain why at the end. Fortunatly, @pyalot from codeflow.org has been kind enough to write one taylor-made for us: microphysics.js!! It is bite-sized, elegant and efficient. Less than 500 lines at the moment!! Below is a screencast of me doing a short introduction of the playground. Let’s get started. Is there a better way of writing v = (v == 0 ? 1 : 0); - Stack Overflow - Vimperator. A Quick Look Into The Math Of Animations With JavaScript - Smashing Coding - Vimperator. Advertisement In school, I hated math.

A Quick Look Into The Math Of Animations With JavaScript - Smashing Coding - Vimperator

It was a dire, dry and boring thing with stuffy old books and very theoretical problems. Even worse, a lot of the tasks were repetitive, with a simple logical change in every iteration (dividing numbers by hand, differentials, etc.). It was exactly the reason why we invented computers. Suffice it to say, a lot of my math homework was actually done by my trusty Commodore 64 and some lines of Basic, with me just copying the results later on. These tools and the few geometry lessons I had gave me the time and inspiration to make math interesting for myself. There is a lot of math in the visual things we do, even if we don’t realize it. Enhancing Web Apps with AmplifyJS. There seems to be a new crop of special-purpose JavaScript libraries every week.

Enhancing Web Apps with AmplifyJS

Gone, it seems, are the days of using only one library per project. Today I’ll introduce you to a very cool component library, AmplifyJS, that offers just a few very specialized components. Devs, Meet AmplifyJS According to the website: Pimp My JS. List.js - Add search, sort and flexibility to plain HTML lists with cross-browser native JavaScript - Vimperator. EJS - JavaScript Templates - Vimperator. Stripe.js - Vimperator. Add this script tag to your page to get started with Stripe.js.

stripe.js - Vimperator

You must set your publishable key with setPublishableKey before using Stripe.js to identify your website when communicating with Stripe. Remember to replace the test key with your live key in production. You can get all your keys from your account page. This tutorial explains this flow in more detail. Stripe.setPublishableKey('YOUR_PUBLISHABLE_KEY'); card.createToken. Create a new Fiddle - jsFiddle - Online Editor for the Web (JavaScript, MooTools, jQuery, Prototype, YUI, Glow and Dojo, HTML, CSS) - Vimperator.

Why does [5,6,8,7][1,2] = 8 in Javascript - Stack Overflow - Vimperator. Jquery - Get query string values in JavaScript - Stack Overflow - Vimperator. 20 JavaScript Frameworks Worth Checking Out. The number of web applications being created and used has grown rapidly since the new millenium.

20 JavaScript Frameworks Worth Checking Out

And importantly, so has the sheer complexity of them -- specially on the front end. No more static pages, no sir! You have a ton of sections each interacting with each other and the server and yes, it's as complicated as it sounds and just as hard to pull off. The Best Way to Learn JavaScript.

Learning something new is scary.

The Best Way to Learn JavaScript

For me, the biggest issue with picking up a new skill is that I don’t know what I don’t know. Given that, it’s often useful to find a plan for learning whatever you’re interested in. Book Code Examples. Google & the Future of JavaScript. There’s very little public information yet about Dart (nee, Dash), and as I’m not on Lars’ team I can’t comment about it. More details will be forthcoming at the GOTO session next month. I’ll also be at GOTO, speaking on JavaScript and the state of the web platform.

Stream.js — streams in javascript. Getting started - jsOAuth Manual & Documentation. Smoke.js. A framework-agnostic styled alert system for javascript. Lightweight, flexible, css3 animation, blah blah blah easy to use something clever needs to go here. Best of all, it's really easy to use. WOW! Look at these examples: You can implement these the same way you'd use the js alert()...just put "smoke. " in front of it. The confirm() replacement, however, needs to be used just a little differently: smoke.confirm('You are about to destroy everything. Humane JS. Kraken JavaScript Benchmark (version 1.1)

Kraken JavaScript Benchmark. Harmony:harmony. The harmony namespace is intended to contain approved proposals for the ES-Harmony language.

harmony:harmony

The following requirements, goals, and means help to inform and guide development of proposed extensions and improvements to ES5 for ES-Harmony. Straw-man proposals live in strawman until approved by TC39, at which point they move into the harmony namespace, linked from the proposals page. Working drafts of the specification for the next edition of ECMAScript that incorporates Harmony proposals is on the Specification Drafts page. gRaphaël—Charting JavaScript Library.

RingoJS.

CoffeScript

Skilldrick » Closures explained with JavaScript. Last year I wrote A brief introduction to closures which was meant to help people understand exactly what a closure is and how it works. I’m going to attempt that again, but from a different angle. I think with these kinds of concept, you just need to read as many alternative explanations as you can in order to get a well rounded view. How to roll out your own Javascript API with V8 - Olivier Lalonde's blog. Update: I wrote a new tutorial on porting our V8 code as a Node.js extension: How to write your own native Node.js extension. Introduction This tutorial will teach you how to: Skilldrick » Closures explained with JavaScript. JS/CSS packaging to minimize requests and randomly evil algorithms - Ben Kamens - building things, mostly software. From Joel’s recent IAmA on reddit, w/ ellipses thrown in haphazardly: "What kind of sacrifices do you make on stackoverflow.com in order to obtain speed/efficiency? " “Heavy caching…lavish spending…a willingness to let developers spend time on optimization.”

The performance benefits of packaging up your bunches of javascript and css files into as few requests as possible are well known. We recently made a couple changes to the packaging system used for www.khanacademy.org that are worth mentioning, especially for anyone else on App Engine. JSPP – Morph C++ Into Javascript. C++ has a new standard called C++0x (Wikipedia, Bjarne Stroustrup) that includes many interesting features such as Lambda, For Each, List Initialization ... The Complete Javascript Number Reference. Filed: Mon, Apr 30 2007 under Programming|| Tags: reference javascript numbers number math Javascript is not a typed language so it should come as no surprise that there are no specific integer or floating-point types, no short, long, byte, double, or any other type other languages use to define numbers. What to Read to Get Up to Speed in JavaScript.

Chrome Developer Tools: Understanding Stack Traces. Web Inspector: Understanding Stack Traces. Posted by Yury Semikhatsky on Wednesday, April 20th, 2011 at 7:32 am Finding errors in JavaScript code both during application development and when it’s already released is an important part of web development. Get started with object-oriented JavaScript code. Essential JavaScript Design Patterns For Beginners.

For Your Script Loading Needs. Underscore.js. RequireJS. Introduction§ 1. Live.js - One script closer to Designing in the Browser. Perf impact of passing references. Info This test is attempting to show the performance impact of passing references compared to normal scope chain lookups. Weekends are for hacking. Here's some unCRUDdy inspiration - NowJS Blog. PhantomJS: The Power of WebKit but Without the Broswer. Useful JavaScript and jQuery Tools, Libraries, Plugins - Smashing Magazine. CommonJS: JavaScript Standard Library. Weekends are for hacking. Here's some unCRUDdy inspiration - NowJS Blog. Creating Animated Particles in Water Effect using JavaScript. Sophisticated Sorting in JavaScript » JavaScript & CSS » SitePoint Blogs. JavaScript, JavaScript.

Node.js

JSLint,The JavaScript Code Quality Tool. Webmaster Tools - Rich Snippets Testing Tool. An Intensive Exploration Of jQuery. The Essentials of Writing High Quality JavaScript. SyntaxHighlighter. JSON. jQuery Quicktag. Introducing Springboard › Minimal JavaScript / CSS / HTML Project Template. Unbeatable JavaScript Tools.

Modernizr. Server-side JavaScript development and hosting - Akshell. Succinct Data Structures: Cramming 80,000 words into a Javascript file. 20 Fresh JavaScript Data Visualization Libraries. Highcharts - Interactive JavaScript charts for your webpage. Awesome vim support for javascript with jsctags and taglist-plus. Simple JavaScript Inheritance with Backbone. JavaScript Guide - MDC Doc Center. JavaScript Garden.

JavaScript Trie Performance Analysis.