N2O Most Powerful Erlang Web
|
|
|
- Benedict Potter
- 10 years ago
- Views:
Transcription
1 N2O Most Powerful Erlang Web
2 How do I shot Web?
3 Micro REST Python Flask Ruby Sinatra PHP Silex Scala Scalatra
4 Concurrency in Mind Ruby Celluloid PHP React PHP phpdaemon Java+Scala Play
5 SPA Angular Meteor Ember Chaplin Brunch D3 Knockout React Backbone jquery
6 Functional DSL Scala Lift Erlang Nitrogen Haskell BlazeHtml OCaml Ocsigen F# WebSharper
7 Clojure Laser Enlive Compojure Ring Hiccup ClojureScript Om http-kit aleph noir JVM
8
9 Elixir Weber def action(_, conn) do {:render, [project: "simpletodo"], []} end def add([body: body], _conn) do {:json, [response: "ok"], [{"Content-Type", "application/json"}]} end def wrong(_, _) do {:redirect, "/"} end
10 Erlang ChicagoBoss DTL Engine Database Connectivity PubSub Ruby on Rails like
11 Nitrogen N2O ~2000 LOC One Process per Connection Binary Page Construction Zero Bridge GProc Pub/Sub WebSockets, KVS DB
12 Tuned Layers static and dynamic Routing Path cleaned Query Parser Session Cookies stored in ETS cached DTL Templates optimized Nitrogen DSL rendering HTML Elements binaries JavaScript Actions deferred
13 Layers Performance components TCP conn (K) PHP5 FCGI Simple Script <?php?> 5 Nitrogen No session, No DSL, DTL 1 N2O Sessions, DSL, DTL 7 N2O Sessions, no DSL, DTL 10 N2O No Sessions, no DSL, DTL 13 On same machine raw webserver performance measured with wrk: NGINX -- 60K Cowboy -- 30K
14 Measuring Tools requests pages/sec latency (ms) wrk 15K ab 10K httperf 10K siege 1K On same machine raw webserver performance measured with wrk: NGINX -- 60K Cowboy -- 30K
15 Decreasing Latency From 2x to Deliver HTML ASAP Deferred JavaScript delivery after WebSocket connection established <script> TransitionProcess = '< >' </script> socket.send(["n2o",transitionprocess]).
16 Dynamic HTML cow
17 Static HTML nginx
18 SPA and DTL Render both HTML and JavaScript using DSL : #button { postback = login, source = [ user, pass ] } Or render only JavaScript.. #button { render = script, id = ElementId, postback = login, source = [ user, pass ] }.. when you develop SPA
19 Render <input value="login" id= "temp563149" type="button"/> $( '#temp563149' ).bind( 'click', function anonymous(event) ws.send(bert.encodebuf({ source: Bert.binary( 'temp563149' ), pickle: Bert.binary('g2gCaINoAmgEZAA...'), linked: [ Bert.tuple(Bert.atom( 'user' ), utf8.tobytearray($( '#user' ).val())), Bert.tuple(Bert.atom( 'pass' ), utf8.tobytearray($( '#pass' ).val())) ] })); });
20 Elements Plug your JavaScript controls body() -> [ #textboxlist { }, #grid { }, #diagram { }, #histogram { }, #monitor { } ]. and talk with them using BERT through WebSockets
21 Actions Client Updates are sent as Actions which are evaluated as JavaScript strings render_action(record) -> wf:f("alert(\"~s\");", [wf:js_escape(record#alert.text)]). wf:wire(#alert{text="hello, World!"}). Element render could create Actions Action could include rendered Elements Triggered Action may send Events
22 JS Compiler 200 LOC Preserves Semantics -compile({parse_transform,shen}). M = lists:foldl(fun(x, Acc) -> Acc + X end, 0, [1,2,3,4]), $ erlc sample.erl m = [1,2,3,4].reduce( function(x,acc) { return acc + x; }, 0);
23 1. Human Readable Output 2. No Runtimes 3. Strong Dynamic Typing 4. Compact Language, Sane Syntax Synrc Shen, JScala [1,2,3,4] TypeScript [1,2,4] CoffeeScript, LiveScript [1,2,3] Ur, Fay, Roy, Elm, Haxe, F*, WebSharper [3,4] ClojureScript [4] OberonJS [1,3,4] Wisp [1,2,4]
24 Why Erlang to JS? Validation Rules Business Rules Prototyping Static Content Generation Single Environment
25 SPA React ERL User = #react{ render = fun(this) -> #h1{body=value( ,this)} end }, CommentList = #react{ props = [{data,[]}], render = fun(this) -> Users = lists:map(fun(item) -> User#react{props=Item} end, value(data,this)), Users end },
26 SPA React JS var user = React.createClass({ render: function() { return React.DOM.h1(null,value(' ',this)); }}); var commentlist = React.createClass({props: {data:[]}, render: function() { var users = value('data',this).map(function(item) { return user({props: item}); }); return users; }});
27 Erlang AST CMPTBL Brace (Joxa /w Erlang AST) Elixir, Erlang Synrc Shen JavaScript Compiler can handle each Erlang language that compiles to Erlang AST*
28 DTL Sample main () -> Body = wf : render ( body () ), [ #dtl { file = "login", bindings = [ { body, Body } ] } ]. body () -> [ #span { text = "Login: " }, #textbox { id = user }, #span { text = "Pass: " }, #password { id = pass }, #button { text = "Login", postback = login, source = [ user, pass ] } ]. event ( login ) -> wf : user ( wf : q ( user ) ), wf : redirect ( ).
29 N2O in Elixir defmodule Sample.Index do def event(:init) do :wf.reg(:room) end def event({:chat,pid}) do pid <- {: message, :wf.q(:message)} end def event(e) do :wf.info('unknown Event ~p',[e]) end def main() do :dtl.new(file: "index", bindings: [title: "Elixir N2O", body: body()]) end def body() do { :ok, pid } = : wf.async(fn() -> loop() end) [ : div.new(id: :history), : textbox.new(id: :message), : button.new(id: :send, body: "Chat", postback: {:chat,pid}, source: [:message]) ] end def loop() do receive do {: message, message} -> : wf.insert_bottom(:history, [ :span.new(body: message), :br.new() ]) : wf.flush(:room) unknown -> : wf.info('unknown Looper Message ~p',[unknown]) end loop() end end
30 N2O in Joxa (ns lispchat (require erlang joxa-core n2o wf)) (defn+ body() [(n2o/panel {:id :history}) (n2o/textbox {:id :message}) (n2o/button {:id :send} {:body "Chat"} {:postback :chat} {:source [:message]}) ]) (defn+ main() [(n2o/dtl {:app :n2o_sample} {:file "index"} {:bindings [{:title "Title"} {:body (body)}]})]) (defn+ speak(m) (wf/insert_bottom :history (n2o/span {:body m}))) (defn+ event(body) (case body (:init (speak ["Hello" (n2o/br)])) (:chat (speak [(wf/q :message) (n2o/br)])))) (defn+ test() (do (event :init) (wf/info "hello ~p~n" [(main)])))
31 JSON proplists <-> JSON 243x Library Type Enc Dec jsonx C NIF jiffy C NIF yaws2 Erlang Xen Ready jsonerl Erlang mochijson2 Erlang jsx Erlang
32 JSON PT proplists <=> #rec{} -module(users). -behaviour(n2o_rest). -compile({parse_transform, n2o_rest}). -include("users.hrl"). -rest_record(user). from_json(proplist, #user{}) -> #user{}. to_json(record) -> proplist().
33 REST Sample -compile({parse_transform, n2o_rest}). -include("users.hrl"). -rest_record(user). init() -> ets:new(users, [public, named_table, {keypos, #user.id}]). populate(users) -> ets:insert(users, Users). exists(id) -> ets:member(users, wf:to_list(id)). get() -> ets:tab2list(users). get(id) -> [User] = ets:lookup(users, wf:to_list(id)), User. delete(id) -> ets:delete(users, wf:to_list(id)). post(#user{} = User) -> ets:insert(users, User); post(data) -> post(from_json(data, #user{})).
34 KVS REST API POST/PUT kvs:add(#user{}). DELETE kvs:remove(user,2). PUT/PATCH kvs:put(#user{id=2}). GET kvs:entries(feed,user). GET kvs:get(user,2). GET kvs:all(user).
35 Events From JavaScript Everything is sent as an Event Postback event/1 Control control_event/2 API api_event/3 Handle events in Erlang...
36 Events Nature Events are enveloped by BERT as #ev{} -record ( ev, { name :: api_event control_event event atom (), payload, trigger, module :: atom () } ). You can define your own entry points
37 Postback Events Create Page Logic with Postback Events event/1 main() -> [ #button { postback = login } ]. event(login) -> wf:info("logged User: ~p", [wf:user()]).
38 Control Events Handle Data from Controls with Control Events control_event/2 render_element( E = #myelement { } ) -> do_render( E ). control_event(trigger, Data) -> wf:info("received Data ~p from JavaScript Control ~p", [ Data, Trigger ] ).... when you cteate your own Elements
39 API Events Wire Erlang and JavaScript with API Events api_event/3 main() -> wf:wire( #api { name = notify, tag = api3 } ), [ ]. api_event(event, Args, Req) -> wf:info( "Received from JavaScript: ~p", [ Args ] ). document.notify('hello from JavaScript').
40 Community Sources HTML and TeX Handbook IRC FreeNode #N2O
Clojure Web Development
Clojure Web Development Philipp Schirmacher We'll take care of it. Personally. groups.google.com/group/clojure-dus 2012 innoq Deutschland GmbH Agenda Clojure Basics Web Development Libraries Micro Framework
Modern Web Development From Angle Brackets to Web Sockets
Modern Web Development From Angle Brackets to Web Sockets Pete Snyder Outline (or, what am i going to be going on about ) 1.What is the Web? 2.Why the web matters 3.What s unique about
Drupal CMS for marketing sites
Drupal CMS for marketing sites Intro Sample sites: End to End flow Folder Structure Project setup Content Folder Data Store (Drupal CMS) Importing/Exporting Content Database Migrations Backend Config Unit
This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications.
20486B: Developing ASP.NET MVC 4 Web Applications Course Overview This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications. Course Introduction Course Introduction
CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014
CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages Nicki Dell Spring 2014 What is a Programming Language? A set of symbols and associated tools that translate (if necessary) collections
FormAPI, AJAX and Node.js
FormAPI, AJAX and Node.js Overview session for people who are new to coding in Drupal. Ryan Weal Kafei Interactive Inc. http://kafei.ca These slides posted to: http://verbosity.ca Why? New developers bring
Traitware Authentication Service Integration Document
Traitware Authentication Service Integration Document February 2015 V1.1 Secure and simplify your digital life. Integrating Traitware Authentication This document covers the steps to integrate Traitware
Clojure Web Development
Clojure Web Development Philipp Schirmacher Stefan Tilkov innoq We'll take care of it. Personally. http://www.innoq.com 2011 innoq Deutschland GmbH http://upload.wikimedia.org/wikip 2011 innoq Deutschland
What is a stack? Do I need to know?
What is a stack? Do I need to know? WIMP, WAMP, LAMP, LIMP A collection of software that inter-operates to complete a task. Why think about it? Standards Scale Security 61.240.144.67 - "GET / HTTP/1.0"
10CS73:Web Programming
10CS73:Web Programming Question Bank Fundamentals of Web: 1.What is WWW? 2. What are domain names? Explain domain name conversion with diagram 3.What are the difference between web browser and web server
Tech Radar - May 2015
Tech Radar - May 2015 Or how Obecto is staying fresh and current with new technologies and tools, while maintaining its focus on the industry standards. This is our May 15 edition of the Obecto Tech Radar.
The Decaffeinated Robot
Developing on without Java Texas Linux Fest 2 April 2011 Overview for Why? architecture Decaffeinating for Why? architecture Decaffeinating for Why choose? Why? architecture Decaffeinating for Why choose?
IBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience
IBM Digital Experience Using Modern Web Development Tools and Technology with IBM Digital Experience Agenda The 2015 web development landscape and IBM Digital Experience Modern web applications and frameworks
Fachgebiet Technische Informatik, Joachim Zumbrägel
Computer Network Lab 2015 Fachgebiet Technische Informatik, Joachim Zumbrägel Overview Internet Internet Protocols Fundamentals about HTTP Communication HTTP-Server, mode of operation Static/Dynamic Webpages
General Introduction
Managed Runtime Technology: General Introduction Xiao-Feng Li ([email protected]) 2012-10-10 Agenda Virtual machines Managed runtime systems EE and MM (JIT and GC) Summary 10/10/2012 Managed Runtime
A CMS framework in Erlang. Marc Worrell WhatWebWhat
A CMS framework in Erlang Marc Worrell WhatWebWhat Overview Yet another CMS? Why Erlang? Inside Zotonic Future directions Websites: a history First generation Static text, images. Second generation Database
Client Side Binding of Dynamic Drop Downs
International Journal of Scientific and Research Publications, Volume 5, Issue 9, September 2015 1 Client Side Binding of Dynamic Drop Downs Tanuj Joshi R&D Department, Syscom Corporation Limited Abstract-
Modern Web Development:
: HTML5, JavaScript, LESS and jquery Shawn Wildermuth One of the Minds, Wilder Minds LLC Microsoft MVP @shawnwildermuth http://wilderminds.com What it was like
Example. Represent this as XML
Example INF 221 program class INF 133 quiz Assignment Represent this as XML JSON There is not an absolutely correct answer to how to interpret this tree in the respective languages. There are multiple
CTIS 256 Web Technologies II. Week # 1 Serkan GENÇ
CTIS 256 Web Technologies II Week # 1 Serkan GENÇ Introduction Aim: to be able to develop web-based applications using PHP (programming language) and mysql(dbms). Internet is a huge network structure connecting
Design and Functional Specification
2010 Design and Functional Specification Corpus eready Solutions pvt. Ltd. 3/17/2010 1. Introduction 1.1 Purpose This document records functional specifications for Science Technology English Math (STEM)
Personal Profile. Experience. Professional Experience
Brice Bentler 2602 4 th Ave, Seattle, WA 98121, 425-890- 6287, [email protected], Website: www.bricebentler.com, GitHub: https://github.com/server4001 Personal Profile Pursuing a position in the Software
Stackato PaaS Architecture: How it works and why.
Stackato PaaS Architecture: How it works and why. White Paper Published in 2012 Stackato PaaS Architecture: How it works and why. Stackato is software for creating a private Platform-as-a-Service (PaaS).
A Model of the Operation of The Model-View- Controller Pattern in a Rails-Based Web Server
A of the Operation of The -- Pattern in a Rails-Based Web Server January 10, 2011 v 0.4 Responding to a page request 2 A -- user clicks a link to a pattern page in on a web a web application. server January
Avaya Inventory Management System
Avaya Inventory Management System June 15, 2015 Jordan Moser Jin Oh Erik Ponder Gokul Natesan Table of Contents 1. Introduction 1 2. Requirements 2-3 3. System Architecture 4 4. Technical Design 5-6 5.
GUI and Web Programming
GUI and Web Programming CSE 403 (based on a lecture by James Fogarty) Event-based programming Sequential Programs Interacting with the user 1. Program takes control 2. Program does something 3. Program
Accessing Data with ADOBE FLEX 4.6
Accessing Data with ADOBE FLEX 4.6 Legal notices Legal notices For legal notices, see http://help.adobe.com/en_us/legalnotices/index.html. iii Contents Chapter 1: Accessing data services overview Data
6.170 Tutorial 3 - Ruby Basics
6.170 Tutorial 3 - Ruby Basics Prerequisites 1. Have Ruby installed on your computer a. If you use Mac/Linux, Ruby should already be preinstalled on your machine. b. If you have a Windows Machine, you
Tutorial JavaScript: Switching panels using a radio button
Tutorial JavaScript: Switching panels using a radio button www.nintex.com [email protected] Contents About this tutorial... 3 Upload the JavaScript File... 4 Using JavaScript to hide or show a control
The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.
Content Introduction... 2 Data Access Server Control Panel... 2 Running the Sample Client Applications... 4 Sample Applications Code... 7 Server Side Objects... 8 Sample Usage of Server Side Objects...
James Singletary IV :: Front End Web Developer located in Tampa, Florida
James Singletary IV :: Front End Web Developer located in Tampa, Florida (813) 843 5176 :: [email protected] :: jamessingletaryiv.com Technical Summary HTML5, CSS3, JavaScript / jquery, Ajax, JSON,
Mobile development with Apache OFBiz. Ean Schuessler, co-founder @ Brainfood
Mobile development with Apache OFBiz Ean Schuessler, co-founder @ Brainfood Mobile development For the purposes of this talk mobile development means mobile web development The languages and APIs for native
Ruby On Rails. CSCI 5449 Submitted by: Bhaskar Vaish
Ruby On Rails CSCI 5449 Submitted by: Bhaskar Vaish What is Ruby on Rails? Ruby on Rails is a web application framework written in Ruby, a dynamic programming language. Ruby on Rails uses the Model-View-Controller
Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010
Introducing Apache Pivot Greg Brown, Todd Volkert 6/10/2010 Speaker Bios Greg Brown Senior Software Architect 15 years experience developing client and server applications in both services and R&D Apache
How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip
Load testing with WAPT: Quick Start Guide This document describes step by step how to create a simple typical test for a web application, execute it and interpret the results. A brief insight is provided
Web Development using PHP (WD_PHP) Duration 1.5 months
Duration 1.5 months Our program is a practical knowledge oriented program aimed at learning the techniques of web development using PHP, HTML, CSS & JavaScript. It has some unique features which are as
Coding for Desktop and Mobile with HTML5 and Java EE 7
Coding for Desktop and Mobile with HTML5 and Java EE 7 Coding for Desktop and Mobile with HTML5 and Java EE 7 Geertjan Wielenga - NetBeans - DukeScript - VisualVM - Jfugue Music Notepad - Java - JavaScript
4.2 Understand Microsoft ASP.NET Web Application Development
L E S S O N 4 4.1 Understand Web Page Development 4.2 Understand Microsoft ASP.NET Web Application Development 4.3 Understand Web Hosting 4.4 Understand Web Services MTA Software Fundamentals 4 Test L
opalang - Rapid & Secure Web Development
opalang - Rapid & Secure Web Development Syllabus Brief History of Web Development Ideas and Goals The Language itself Community Reason for Development Services and Apps written in OPA Future of OPA OPA
Building native mobile apps for Digital Factory
DIGITAL FACTORY 7.0 Building native mobile apps for Digital Factory Rooted in Open Source CMS, Jahia s Digital Industrialization paradigm is about streamlining Enterprise digital projects across channels
Introduction to Server-Side Programming. Charles Liu
Introduction to Server-Side Programming Charles Liu Overview 1. Basics of HTTP 2. PHP syntax 3. Server-side programming 4. Connecting to MySQL Request to a Static Site Server: 1. Homepage lookup 2. Send
Instructor: Betty O Neil
Introduction to Web Application Development, for CS437/637 Instructor: Betty O Neil 1 Introduction: Internet vs. World Wide Web Internet is an interconnected network of thousands of networks and millions
How To Use Query Console
Query Console User Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-1, February, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents Query Console User
DIPLOMA IN WEBDEVELOPMENT
DIPLOMA IN WEBDEVELOPMENT Prerequisite skills Basic programming knowledge on C Language or Core Java is must. # Module 1 Basics and introduction to HTML Basic HTML training. Different HTML elements, tags
Bug Report. Date: March 19, 2011 Reporter: Chris Jarabek ([email protected])
Bug Report Date: March 19, 2011 Reporter: Chris Jarabek ([email protected]) Software: Kimai Version: 0.9.1.1205 Website: http://www.kimai.org Description: Kimai is a web based time-tracking application.
Product: DQ Order Manager Release Notes
Product: DQ Order Manager Release Notes Subject: DQ Order Manager v7.1.25 Version: 1.0 March 27, 2015 Distribution: ODT Customers DQ OrderManager v7.1.25 Added option to Move Orders job step Update order
Business Application Development Platform
Business Application Development Platform Author Copyright Last update Version Document type Sclable Business Solutions GmbH Attribution-NonCommercial-NoDerivatives 4.0 International 01/28/2014 1.0 Technical
Getting Started Developing JavaScript Web Apps. this = that. VT Geospatial Forum 2015
Getting Started Developing JavaScript Web Apps this = that VT Geospatial Forum 2015 GCS = Geographic Communication Systems GCS specializes in location technology development, working with GIS and other
Advanced Web Development SCOPE OF WEB DEVELOPMENT INDUSTRY
Advanced Web Development Duration: 6 Months SCOPE OF WEB DEVELOPMENT INDUSTRY Web development jobs have taken thе hot seat when it comes to career opportunities and positions as a Web developer, as every
MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved.
Reference Application Architecture Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-1, February, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents
Part I: The Road to Single Page Application Development... 1
www.allitebooks.com For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to access them. www.allitebooks.com
Web development... the server side (of the force)
Web development... the server side (of the force) Fabien POULARD Document under license Creative Commons Attribution Share Alike 2.5 http://www.creativecommons.org/learnmore Web development... the server
latest Release 0.2.6
latest Release 0.2.6 August 19, 2015 Contents 1 Installation 3 2 Configuration 5 3 Django Integration 7 4 Stand-Alone Web Client 9 5 Daemon Mode 11 6 IRC Bots 13 7 Bot Events 15 8 Channel Events 17 9
Pentesting Web Frameworks (preview of next year's SEC642 update)
Pentesting Web Frameworks (preview of next year's SEC642 update) Justin Searle Managing Partner UtiliSec Certified Instructor SANS Institute [email protected] // @meeas What Are Web Frameworks Frameworks
Load testing with. WAPT Cloud. Quick Start Guide
Load testing with WAPT Cloud Quick Start Guide This document describes step by step how to create a simple typical test for a web application, execute it and interpret the results. 2007-2015 SoftLogica
Login with Amazon. Getting Started Guide for Websites. Version 1.0
Login with Amazon Getting Started Guide for Websites Version 1.0 Login with Amazon: Getting Started Guide for Websites Copyright 2016 Amazon Services, LLC or its affiliates. All rights reserved. Amazon
Power Tools for Pivotal Tracker
Power Tools for Pivotal Tracker Pivotal Labs Dezmon Fernandez Victoria Kay Eric Dattore June 16th, 2015 Power Tools for Pivotal Tracker 1 Client Description Pivotal Labs is an agile software development
White Paper On. Single Page Application. Presented by: Yatin Patel
White Paper On Single Page Application Presented by: Yatin Patel Table of Contents Executive Summary... 3 Web Application Architecture Patterns... 4 Common Aspects... 4 Model... 4 View... 4 Architecture
The Learn-Verified Full Stack Web Development Program
The Learn-Verified Full Stack Web Development Program Overview This online program will prepare you for a career in web development by providing you with the baseline skills and experience necessary to
Handling of "Dynamically-Exchanged Session Parameters"
Ingenieurbüro David Fischer AG A Company of the Apica Group http://www.proxy-sniffer.com Version 5.0 English Edition 2011 April 1, 2011 Page 1 of 28 Table of Contents 1 Overview... 3 1.1 What are "dynamically-exchanged
MASTERTAG DEVELOPER GUIDE
MASTERTAG DEVELOPER GUIDE TABLE OF CONTENTS 1 Introduction... 4 1.1 What is the zanox MasterTag?... 4 1.2 What is the zanox page type?... 4 2 Create a MasterTag application in the zanox Application Store...
Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask
Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask Devert Alexandre December 29, 2012 Slide 1/62 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates
ASP.NET. Web Programming. Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics
Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Hans- Petter Halvorsen, 2014.03.01 ASP.NET Web Programming Faculty of Technology, Postboks 203,
Web Applications: Overview and Architecture
Web Applications: Overview and Architecture Computer Science and Engineering College of Engineering The Ohio State University Lecture 1 Road Map in Pictures: Web App Road Map in Pictures Browser Request
SDN, OpenFlow and the ONF
SDN, OpenFlow and the ONF OpenFlow/Software-Defined Networking (SDN) OpenFlow/SDN is emerging as one of the most promising and disruptive networking technologies of recent years. It has the potential to
IMRG Peermap API Documentation V 5.0
IMRG Peermap API Documentation V 5.0 An Introduction to the IMRG Peermap Service... 2 Using a Tag Manager... 2 Inserting your Unique API Key within the Script... 2 The JavaScript Snippet... 3 Adding the
Cloud Elements ecommerce Hub Provisioning Guide API Version 2.0 BETA
Cloud Elements ecommerce Hub Provisioning Guide API Version 2.0 BETA Page 1 Introduction The ecommerce Hub provides a uniform API to allow applications to use various endpoints such as Shopify. The following
CSCI110 Exercise 4: Database - MySQL
CSCI110 Exercise 4: Database - MySQL The exercise This exercise is to be completed in the laboratory and your completed work is to be shown to the laboratory tutor. The work should be done in week-8 but
SwiftScale: Technical Approach Document
SwiftScale: Technical Approach Document Overview This document outlines a technology embodiment of the SwiftScale application including the technology, deployment and application architectures. Technology
Software Requirements Specification
Software Requirements Specification Version 1.1 March 7, 2013 Prepared by Group Name: The Constructors Alex Hamstra 4506291 [email protected] Jared Roesch 4826574 [email protected] Kyle Jorgensen
<Insert Picture Here> Michael Hichwa VP Database Development Tools [email protected] Stuttgart September 18, 2007 Hamburg September 20, 2007
Michael Hichwa VP Database Development Tools [email protected] Stuttgart September 18, 2007 Hamburg September 20, 2007 Oracle Application Express Introduction Architecture
CS555: Distributed Systems [Fall 2015] Dept. Of Computer Science, Colorado State University
CS 555: DISTRIBUTED SYSTEMS [SPARK] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Streaming Significance of minimum delays? Interleaving
Advanced Tornado TWENTYONE. 21.1 Advanced Tornado. 21.2 Accessing MySQL from Python LAB
21.1 Advanced Tornado Advanced Tornado One of the main reasons we might want to use a web framework like Tornado is that they hide a lot of the boilerplate stuff that we don t really care about, like escaping
MEAP Edition Manning Early Access Program Nim in Action Version 1
MEAP Edition Manning Early Access Program Nim in Action Version 1 Copyright 2016 Manning Publications For more information on this and other Manning titles go to www.manning.com Welcome Thank you for purchasing
Sitecore Dashboard User Guide
Sitecore Dashboard User Guide Contents Overview... 2 Installation... 2 Getting Started... 3 Sample Widgets... 3 Logged In... 3 Job Viewer... 3 Workflow State... 3 Publish Queue Viewer... 4 Quick Links...
E-Commerce: Designing And Creating An Online Store
E-Commerce: Designing And Creating An Online Store Introduction About Steve Green Ministries Solo Performance Artist for 19 Years. Released over 26 Records, Several Kids Movies, and Books. My History With
WEB DEVELOPMENT COURSE (PHP/ MYSQL)
WEB DEVELOPMENT COURSE (PHP/ MYSQL) COURSE COVERS: HTML 5 CSS 3 JAVASCRIPT JQUERY BOOTSTRAP 3 PHP 5.5 MYSQL SYLLABUS HTML5 Introduction to HTML Introduction to Internet HTML Basics HTML Elements HTML Attributes
X-POS GUIDE. v3.4 INSTALLATION. 2015 SmartOSC and X-POS
GUIDE INSTALLATION X-POS v3.4 2015 SmartOSC and X-POS 1. Prerequisites for Installing and Upgrading Server has Apache/PHP 5.2.x/MySQL installed. Magento Community version 1.7.x or above already installed
Cache Configuration Reference
Sitecore CMS 6.2 Cache Configuration Reference Rev: 2009-11-20 Sitecore CMS 6.2 Cache Configuration Reference Tips and Techniques for Administrators and Developers Table of Contents Chapter 1 Introduction...
WWW. World Wide Web Aka The Internet. dr. C. P. J. Koymans. Informatics Institute Universiteit van Amsterdam. November 30, 2007
WWW World Wide Web Aka The Internet dr. C. P. J. Koymans Informatics Institute Universiteit van Amsterdam November 30, 2007 dr. C. P. J. Koymans (UvA) WWW November 30, 2007 1 / 36 WWW history (1) 1968
Web Cloud Architecture
Web Cloud Architecture Introduction to Software Architecture Jay Urbain, Ph.D. [email protected] Credits: Ganesh Prasad, Rajat Taneja, Vikrant Todankar, How to Build Application Front-ends in a Service-Oriented
Welcome to EMP Monitor (Employee monitoring system):
Welcome to EMP Monitor (Employee monitoring system): Overview: Admin End. User End. 1.0 Admin End: Introduction to Admin panel. Admin panel log in. Introduction to UI. Adding an Employee. Getting and editing
Learning Web App Development
Learning Web App Development Semmy Purewal Beijing Cambridge Farnham Kbln Sebastopol Tokyo O'REILLY Table of Contents Preface xi 1. The Workflow 1 Text Editors 1 Installing Sublime Text 2 Sublime Text
Living Requirements Document: Sniffit
Living Requirements Document: Sniffit RFID locator system Andrew Pang Braulio Fonseca Enrique Gutierrez Nader Khalil Sohan Shah Victor Porter Introduction Sniffit is a handy tracking application that helps
Integrating the F5 BigIP with Blackboard
Integrating the F5 BigIP with Blackboard Nick McClure [email protected] Lead Systems Programmer University of Kentucky Created August 1, 2006 Last Updated June 17, 2008 Integrating the F5 BigIP with Blackboard
YouTrack MPS case study
YouTrack MPS case study A case study of JetBrains YouTrack use of MPS Valeria Adrianova, Maxim Mazin, Václav Pech What is YouTrack YouTrack is an innovative, web-based, keyboard-centric issue and project
A Quick Introduction to Google's Cloud Technologies
A Quick Introduction to Google's Cloud Technologies Chris Schalk Developer Advocate @cschalk Anatoli Babenia Agenda Introduction Introduction to Google's Cloud Technologies App Engine Review Google's new
Understanding Evolution's Architecture A Technical Overview
Understanding Evolution's Architecture A Technical Overview Contents Introduction Understanding Evolution's Design Evolution Architecture Evolution Server Transports Evolution Benefits How Does Evolution
Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON
Revista Informatica Economică, nr. 4 (44)/2007 45 Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON Iulian ILIE-NEMEDI, Bucharest, Romania, [email protected] Writing a custom web
Building Your First MongoDB Application
Building Your First MongoDB Application Ross Lawley Python Engineer @ 10gen Web developer since 1999 Passionate about open source Agile methodology email: [email protected] twitter: RossC0 Today's Talk Quick
Ansible. Configuration management tool and ad hoc solution. Marcel Nijenhof <[email protected]>
Ansible Configuration management tool and ad hoc solution Marcel Nijenhof Index Introduction Installing & configuration Playbooks Variables Roles Ansible galaxy Configuration management
Deploying the BIG-IP System with VMware vcenter Site Recovery Manager
Deployment Guide Version 1.0 Deploying the BIG-IP System with VMware vcenter Site Recovery Manager Contents 2 Prerequisites and configuration notes 2 Deployment overview 3 Example configuration of BIG-IP
