(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| RewriteEngine on | |
| RewriteCond %{REQUEST_URI} !^/statis.*$ | |
| RewriteRule .* rute.php [L,QSA] |
| <html> | |
| <head> | |
| <title>chat</title> | |
| <style> | |
| iframe{display:none} | |
| #komen{display:none} | |
| </style> | |
| </head> | |
| <body> | |
| <h3>chat</h3> |
| <html> | |
| <head> | |
| <title>A</title> | |
| </head> | |
| <body> | |
| <form method="POST" action="/validasiA"> | |
| angka:<input name="angka"><br> | |
| <input type="submit" value="kirim"> | |
| </form> | |
| <script> |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <title></title> | |
| <meta charset="utf-8" /> | |
| <script src="templating.js" type="text/javascript" charset="utf-8"></script> | |
| </head> | |
| <body> | |
| <template id=t> |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| function template(template){ | |
| var tmplt=template.split(/<!--([^-]+)-->/g),len=tmplt.length; | |
| return function(respon,obyek){ | |
| for(var idx=0;idx<len;idx++){ | |
| respon.write(idx&1?''+obyek[tmplt[idx]]:tmplt[idx]) | |
| } | |
| respon.end() | |
| } | |
| } |
| /*jslint indent: 2 */ | |
| (function (FunctionPrototype) { | |
| 'use strict'; | |
| var originalBind = FunctionPrototype.bind; | |
| if (!originalBind.patched) { | |
| Object.defineProperty( | |
| FunctionPrototype, | |
| 'bind', | |
| { | |
| configurable: true, |
| (function(window, document, JSON){ | |
| "use strict"; | |
| var SEP = '|', ua, opera, ie; | |
| /* | |
| * Collect Browser & Device Data | |
| */ | |
| var Collector = { | |
| /* | |
| * MD5 Checksum calculation | |
| */ |
Re: http://blog.chromium.org/2015/03/new-javascript-techniques-for-rapid.html
As mentioned in our Chromium blog post, Chrome 41 introduces support for streaming parsing of JavaScript files using the async or deferred attributes. This is where the V8 parser will parse any incoming JavaScript piece-by-piece so the compiler can immediately begin compiling the AST when script loading has completed. This lets us do something useful while waiting for the page to load. Compare:
This means parsing can be removed from the critical path when loading up the page. In these cases such scripts are parsed on a separate thread as soon as the download begins, allowing parsing to complete very soon after the download has completed (milliseconds), leading to pages (potentially) loading much faster.
Setting up Dokku with DigitalOcean and Namecheap
..or how I made my own heroku in a few hours for $3.98.
This write-up owes a great deal to dscape's Node.js Deployments with Docker, Dokku, & Digital Ocean, the dokku project itself, and the fine folks working on dokku's issues. I took dscape's article as a starting point when trying this out but found some details lacking so I documented my own process for getting dokku up and running.