Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask

Size: px
Start display at page:

Download "Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask"

Transcription

1 Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask Devert Alexandre December 29, 2012 Slide 1/62

2 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates Basic template rendering Using ressources Template inheritance Template macros Template language 6 Requests Devert Alexandre Modern Web Application Framework Slide 2/62

3 Model-View-Controller Most of the modern web development frameworks follow the Model-View-Controller model (MVC model) The model : representation of data. Usually, have a strong relation with the database The views : what is shown to the user. Can be any kind of user interface, usually HTML pages with Javascript. The controls : what operation are done on the data. It s a rather convenient way to design software projects involving user interfaces presenting and manipulating data. Devert Alexandre Modern Web Application Framework Slide 3/62

4 Model-View-Controller Application Controller manipulates Model updates View uses shows User Devert Alexandre Modern Web Application Framework Slide 4/62

5 Model-View-Controller Example for Model-View-Controller : an online management game The rule of the game, updating the state of each player the model The HTML pages, showing the various screen of the game the views The methods called when a user click on the screen the controllers Devert Alexandre Modern Web Application Framework Slide 5/62

6 Model-View-Controller Example for Model-View-Controller : an online shop The list of products, the payment rules, delivery orders the model The HTML pages, showing the various screen of the shop the views The methods for payment, order, shopping cart the controllers Devert Alexandre Modern Web Application Framework Slide 6/62

7 Model-View-Controller Model-View-Controller also helps to organize the work Some work on the views graphic designers, HTML, javascript Some work on the model database, software architecture Some work on the controls rather low-level and/or specialized code Some work on writing unit tests for at least the model and the views Devert Alexandre Modern Web Application Framework Slide 7/62

8 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates Basic template rendering Using ressources Template inheritance Template macros Template language 6 Requests Devert Alexandre Modern Web Application Framework Slide 8/62

9 Web application with script language Why using a scripting language for a web application? More adapted language to paste together various components (database, rendering, routing,... ) Make its easier to release early & often Easier to maintain & modify Speed far enough for many use case Devert Alexandre Modern Web Application Framework Slide 9/62

10 Web application with script language Why not PHP, or PHP framework? Designed to make simple web pages, not large web applications Awfully designed programming language very inconsistent libraries very little help for debugging many security issues many better alternatives Detailed explanation here Devert Alexandre Modern Web Application Framework Slide 10/62

11 Web application with script language Why not using Java/JSP/JBoss/Apache/Hibernate/Spring? Even simple changes requires lots of coding Big changes takes a lot of planning Edit/Compile/Run takes more ressource General speed of development much reduced Working without a big fat IDE is tedious But you can use those all this with a script-like language : Grails and Groovy Devert Alexandre Modern Web Application Framework Slide 11/62

12 Flask I am going to introduce the framework Flask It is small : quick to learn and master It is complete : you can use to do serious apps It is lean : a shell and a text editor are enough, no need for an IDE to be efficient with it It is very well documented The same ideas can be found in most web development frameworks. Devert Alexandre Modern Web Application Framework Slide 12/62

13 Flask Flask is a nice glue around existing tools Python programming language SQL Alchemy database Jinja2 HTML template system Werkzeug WSCGI handling (CGI, but better) Devert Alexandre Modern Web Application Framework Slide 13/62

14 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates Basic template rendering Using ressources Template inheritance Template macros Template language 6 Requests Devert Alexandre Modern Web Application Framework Slide 14/62

15 Hello, world! A minimal Flask application from f l a s k i m p o r t F l a s k app = F l a s k ( n a m e r o u t e ( / ) d e f h e l l o ( ) : r e t u r n H e l l o World! i f n a m e == m a i n : app. run ( ) Run this, and open your web browser at Devert Alexandre Modern Web Application Framework Slide 15/62

16 Hello, world! You will see this Devert Alexandre Modern Web Application Framework Slide 16/62

17 Hello, world! This creates an application instance and run it from f l a s k i m p o r t F l a s k app = F l a s k ( n a m e ) i f n a m e == m a i n : app. run ( ) Devert Alexandre Modern Web Application Framework Slide 17/62

18 Hello, world! This adds the hello method to the application r o u t e ( / ) d e f h e l l o ( ) : r e t u r n H e l l o World! hello() will be called every time the address / is requested hello() returns the text data for the web browser Devert Alexandre Modern Web Application Framework Slide 18/62

19 Debugging Triggering the debug mode is easy from f l a s k i m p o r t F l a s k app = F l a s k ( n a m e r o u t e ( / ) d e f h e l l o ( ) : r e t u r n H e l l o World! i f n a m e == m a i n : app. run ( debug = True ) In debug mode, you can edit the code while the server runs : it will restart! Devert Alexandre Modern Web Application Framework Slide 19/62

20 Debugging The debug mode will also helps a lot to point where the problem is Devert Alexandre Modern Web Application Framework Slide 20/62

21 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates Basic template rendering Using ressources Template inheritance Template macros Template language 6 Requests Devert Alexandre Modern Web Application Framework Slide 21/62

22 Function / URL mapping When an URL is requested, Flask will look for its corresponding function. from f l a s k i m p o r t F l a s k app = F l a s k ( n a m e r o u t e ( / ) d e f i n d e x ( ) : r e t u r n I n d e x r o u t e ( / welcome ) d e f h e l l o ( ) : r e t u r n He ll o World i f n a m e == m a i n : app. run ( ) One function return text data. It can be HTM, XML, JSON, etc. Devert Alexandre Modern Web Application Framework Slide 22/62

23 Function / URL mapping You can defines URL with route ( /show name/<name> ) def print name ( name ) : r e t u r n H e l l o, %s! % name It gives a nice way, intuitive way to define ressources on a website. Devert Alexandre Modern Web Application Framework Slide 23/62

24 Function / URL mapping You can make URL parameters r o u t e ( / h e l l o / r o u t e ( / h e l l o /<name> ) d e f h e l l o ( name = None ) : i f name i s None : r e t u r n A h o r s e with no name e l s e : return A horse named %s % name Devert Alexandre Modern Web Application Framework Slide 24/62

25 Function / URL mapping You can enforce the type of a r o u t e ( /team/< i n t : team id> ) def show team ( team id ) : r e t u r n team #%d % team id Flask will check the type for you Devert Alexandre Modern Web Application Framework Slide 25/62

26 Function / URL mapping You can translate function names to URL with url r o u t e ( / ) d e f welcome ( ) : r e t u r n H e l l o r o u t e ( / t e s t ) d e f t e s t ( ) : name = welcome r e t u r n u r l f o r %s = %s % ( name, u r l f o r ( name ) ) Especially convenient when you might have to change the URL naming scheme Devert Alexandre Modern Web Application Framework Slide 26/62

27 Function / URL mapping url for() also works for URL with route ( /show name/<name> ) def print name ( name ) : r e t u r n H e l l o, %s! % r o u t e ( / t e s t ) d e f t e s t ( ) : func name, user name = print name, Alex r e t u r n u r l f o r %s = %s % ( func name, u r l f o r ( func name, name = user name ) ) Devert Alexandre Modern Web Application Framework Slide 27/62

28 Catching HTTP errors The HTTP protocol defines several status codes. status code meaning 400 Bad Request 401 Unauthorized 402 Payment Required 403 Forbidden 404 Not Found 500 Internal Server Error 501 Not Implemented 503 Service Unavailable Devert Alexandre Modern Web Application Framework Slide 28/62

29 Catching HTTP errors you can catch such e r r o r h a n d l e r ( ) d e f p a g e f o r b i d d e n ( e r r o r ) : p r i n t Hey! You a r e not a l l o w e d to a c c e s s t h i e r r o r h a n d l e r ( ) d e f p a g e n o t f o u n d ( e r r o r ) : p r i n t Ho no! The r e s s o u r c e you want to a c c e s s does not e x i s t : ( Devert Alexandre Modern Web Application Framework Slide 29/62

30 Throwing HTTP errors It is also possible to throw HTTP errors with r o u t e ( / s h o w a c c o u n t i n f o s ) def show account infos ( ) : i f not u s e r. l o g g e d i n : a b o r t ( 401) # Do t h i n g s... For instance, an error 401 to deny access to ressources Devert Alexandre Modern Web Application Framework Slide 30/62

31 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates Basic template rendering Using ressources Template inheritance Template macros Template language 6 Requests Devert Alexandre Modern Web Application Framework Slide 31/62

32 The need for templates Generating HTML directly with code Easy to make very hard to read code Mix-up the control code with the view code Text template system is a convenient and common way to separade the view code from the remaining code Devert Alexandre Modern Web Application Framework Slide 32/62

33 The need for templates Flask uses Jinja2 as template system. There are many others template system Mako, for Python (if you ask me, it s better than Jinja2) JSP, for Java, THE standard for Java. Allow to mix Java & HTML. ASP, for Microsoft products. Allow to mix VBScript & HTML. XSLT is a template system based on XML. Plateform indepedent but not very convenient in practice. Maybe 10 different for every language you can think of Devert Alexandre Modern Web Application Framework Slide 33/62

34 Basic template rendering The function render template takes a path to an HTML file, and arbitrary parameters from f l a s k import Flask, render template app = F l a s k ( n a m e r o u t e ( / h e l l o / r o u t e ( / h e l l o /<name> ) d e f h e l l o ( name = None ) : r e t u r n r e n d e r t e m p l a t e ( h e l l o. html, name = name ) i f n a m e == m a i n : app. run ( ) What will be returned will the content of hello.html Devert Alexandre Modern Web Application Framework Slide 34/62

35 Basic template rendering The HTML file hello.html <! d o c t y p e html> <html> <head> < t i t l e>the w e b s i t e t h a t s a y s H e l l o to you</ t i t l e> </ head> <body> {% i f name %} <h1>h e l l o, {{ name }}!</h1> {% e l s e %} <h1>hello, thing with no name!</h1> {% e n d i f %} </ body> </ html> It s no ordinary HTML there are instruction mixed in! Devert Alexandre Modern Web Application Framework Slide 35/62

36 Basic template rendering The HTML file hello.html <! d o c t y p e html> <html> <head> < t i t l e>the w e b s i t e t h a t s a y s H e l l o to you</ t i t l e> </ head> <body> {% i f name %} <h1>h e l l o, {{ name }}!</h1> {% e l s e %} <h1>hello, thing with no name!</h1> {% e n d i f %} </ body> </ html> hello.html is processed to generate the HTML to send to a user. Here, we use the name variable, passed as a parameter of render template Devert Alexandre Modern Web Application Framework Slide 35/62

37 Basic template rendering The HTML file hello.html <! d o c t y p e html> <html> <head> < t i t l e>the w e b s i t e t h a t s a y s H e l l o to you</ t i t l e> </ head> <body> {% i f name %} <h1>h e l l o, {{ name }}!</h1> {% e l s e %} <h1>hello, thing with no name!</h1> {% e n d i f %} </ body> </ html> Variables values can be rendered to text with {{ }} Devert Alexandre Modern Web Application Framework Slide 35/62

38 Basic template rendering The HTML file hello.html <! d o c t y p e html> <html> <head> < t i t l e>the w e b s i t e t h a t s a y s H e l l o to you</ t i t l e> </ head> <body> {% i f name %} <h1>h e l l o, {{ name }}!</h1> {% e l s e %} <h1>hello, thing with no name!</h1> {% e n d i f %} </ body> </ html> Blocks of code are put between {% %} Devert Alexandre Modern Web Application Framework Slide 35/62

39 Basic template rendering Flask assumes that all your templates will be in a template directory, relative to your script t e m p l a t e s h e l l o. html t e s t. py Devert Alexandre Modern Web Application Framework Slide 36/62

40 Using ressources If you wish to use other file ressources, like pictures or CSS files, you can put them in directory named static t e m p l a t e s h e l l o. html s t a t i c s t y l e. c s s t e s t. py Those resource are not dynamic, not generated on the fly like the HTML code, hence the name static Devert Alexandre Modern Web Application Framework Slide 37/62

41 Using ressources Then, to use those ressources, you can again use url for <! d o c t y p e html> <html> <head> < t i t l e>the w e b s i t e t h a t s a y s H e l l o to you</ t i t l e> <l i n k r e l=s t y l e s h e e t t y p e=t e x t / c s s h r e f= {{ u r l f o r ( s t a t i c, f i l e n a m e = s t y l e. css ) }} > </ head> <body> {% i f name %} <h1>h e l l o, {{ name }}!</h1> {% e l s e %} <h1>hello, thing with no name!</h1> {% e n d i f %} </ body> </ html> Devert Alexandre Modern Web Application Framework Slide 38/62

42 Template inheritance On a typical website, different views follow a similar design Devert Alexandre Modern Web Application Framework Slide 39/62

43 Template inheritance On a typical website, different views follow a similar design Devert Alexandre Modern Web Application Framework Slide 39/62

44 Template inheritance On a typical website, different views follow a similar design Devert Alexandre Modern Web Application Framework Slide 39/62

45 Template inheritance On a typical website, different views follow a similar design Devert Alexandre Modern Web Application Framework Slide 39/62

46 Template inheritance Jinja2 provides a simple way to share a common template and specialize it : template inheritance {% e x t e n d s base. html %} {% b l o c k c o n t e n t %} {% i f name %} <h2>h e l l o, {{ name }}!</h2> {% e l s e %} <h2>hello, thing with no name!</h2> {% e n d i f %} {% e n d b l o c k %} hello.html extends base.html Devert Alexandre Modern Web Application Framework Slide 40/62

47 Template inheritance Jinja2 provides a simple way to share a common template and specialize it : template inheritance {% e x t e n d s base. html %} {% b l o c k c o n t e n t %} {% i f name %} <h2>goodbye, {{ name }}!</h2> {% e l s e %} <h2>goodbye, thing with no name!</h2> {% e n d i f %} {% e n d b l o c k %} goodbye.html extends base.html Devert Alexandre Modern Web Application Framework Slide 40/62

48 Template inheritance And base.html look like this <!DOCTYPE HTML PUBLIC //W3C//DTD HTML 4.01//EN > <html l a n g= en > <head> < t i t l e>s a l u t e. com, t h e w e b s i t e t h a t s a l u t e s you</ t i t l e> <l i n k r e l=s t y l e s h e e t t y p e=t e x t / c s s h r e f= {{ u r l f o r ( s t a t i c, f i l e n a m e = s t y l e. c s s </ head> <body> <div id= container > <div id= header > <h1>salute. com</h1> <p>the w e b s i t e t h a t s a l u t e s you</p> </ d i v> <div id= content > {% b l o c k c o n t e n t %}{% e n d b l o c k %} </ d i v> </ d i v> <d i v i d= f o o t e r > <h2>salute. com</h2> <p>s i t e design &amp ; copyright &copy ; Alexandre Devert</p> </ d i v> </ body> </ html> Devert Alexandre Modern Web Application Framework Slide 41/62

49 Template inheritance On the Python side, hello.html and goodbye.html are just normal HTML pages, nothing special to r o u t e ( / h e l l o / r o u t e ( / h e l l o /<name> ) d e f h e l l o ( name = None ) : r e t u r n r e n d e r t e m p l a t e ( h e l l o. html, name = name r o u t e ( / goodbye / r o u t e ( / goodbye/<name> ) def goodbye ( name = None ) : r e t u r n r e n d e r t e m p l a t e ( goodbye. html, name = name ) Devert Alexandre Modern Web Application Framework Slide 42/62

50 Template inheritance In this exemple, extending base.html provides A common title Includes common ressources (css, javascript, etc.) A common header A common footer The specialized part goes in the content block. Coherent look, code reusage, and clean separation! Devert Alexandre Modern Web Application Framework Slide 43/62

51 Template macros On a website, the same user interface elements are often re-used Devert Alexandre Modern Web Application Framework Slide 44/62

52 Template macros On a website, the same user interface elements are often re-used Devert Alexandre Modern Web Application Framework Slide 44/62

53 Template macros We can define reusable HTML bits of codes. {% macro r e n d e r p a n e l ( t i t l e, s t y l e= l e f t ) %} <d i v c l a s s= p a n e l > <h1 c l a s s= {{ s t y l e }} >{{ t i t l e }}</h1> <d i v c l a s s= panel c o n t e n t > <d i v c l a s s= {{ s t y l e }} > {{ c a l l e r ( ) }} </ d i v> </ d i v> </ d i v> {% endmacro %} This define a box, containing whatever caller() will put in it, and with a title. We put this in ui.html Devert Alexandre Modern Web Application Framework Slide 45/62

54 Template macros Now, we can create lots of boxes. {% e x t e n d s base. html %} {% i m p o r t u i. html as u i %} {% b l o c k c o n t e n t %} <div c l a s s= three columns layout > <d i v c l a s s= l e f t column > {% c a l l u i. r e n d e r p a n e l ( Lorem ipsum, l e f t ) %}... b l a b l a... {% e n d c a l l %} {% c a l l u i. r e n d e r p a n e l ( Lorem ipsum, l e f t ) %}... b l a b l a... {% e n d c a l l %} </ d i v> <d i v c l a s s= r i g h t column > {% c a l l u i. r e n d e r p a n e l ( H i s t o r y, l e f t ) %}... b l a b l a... {% e n d c a l l %} {% c a l l u i. r e n d e r p a n e l ( Now i s t h e time f o r a l l good men, l e f t ) %}... b l a b l a... {% e n d c a l l %} </ d i v> </ d i v> {% e n d b l o c k %} No need to copy paste the same HTML code around! Devert Alexandre Modern Web Application Framework Slide 46/62

55 Template macros To use a macro, first import the file that contains that macro {% i m p o r t u i. html as u i %} Then you can call the macro {% c a l l u i. r e n d e r p a n e l ( My T i t l e Here, l e f t ) %}... b l a b l a... {% e n d c a l l %} What is between call and endcall could be any valid HTML code. It will be placed in place of caller in the macro definition. Devert Alexandre Modern Web Application Framework Slide 47/62

56 Template language Jinja templates use their own language, more or less Python-like. It tries to imitate Python But it is not Python Why not having full power of Python in a template? Devert Alexandre Modern Web Application Framework Slide 48/62

57 Template language Jinja provides a limited language because It s a view. No business code here. Just HTML generation. It s a page that might be served for many different users. Should be fast. Devert Alexandre Modern Web Application Framework Slide 49/62

58 Template language The if block works like Python {% i f show advertisement %} <h1>buy Drunk Panda, the b e s t beer i n Suzhou!</h1> {% e n d i f %} Devert Alexandre Modern Web Application Framework Slide 50/62

59 Template language An optional else block works can be used {% i f show advertisement %} <h1>buy Drunk Panda, the b e s t beer i n Suzhou!</h1> {% e l s e %} Do not buy a n y t h i n g {% e n d i f %} Devert Alexandre Modern Web Application Framework Slide 51/62

60 Template language An even elif blocks are available {% i f show beer advertisement %} <h1>buy Drunk Panda, the b e s t beer i n Suzhou!</h1> {% e l i f s h o w p i z z a a d v e r t i s e m e n t %} <h1>buy Pizza Hut, the worst p i z z a s ever!</h1> {% e l s e %} Do not buy a n y t h i n g {% e n d i f %} Devert Alexandre Modern Web Application Framework Slide 52/62

61 Template language The Jinja for loop works like the Python one {% f o r item i n n a v i g a t i o n %} < l i> <a h r e f= {{ item. h r e f }} >{{ item. c a p t i o n }}</a> </ l i> {% e n d f o r %} Note that navigation is a sequence, passed to the template item is one item of the sequence loop code is between {% for %} and {% endfor %} Devert Alexandre Modern Web Application Framework Slide 53/62

62 Template language Jinja provides a loop object that can be called inside a for loop {% f o r item i n n a v i g a t i o n %} < l i> <a h r e f= {{ item. h r e f }} >{{ l o o p. i n d e x }} {{ item. c a p t i o n }}</a> </ l i> {% e n d f o r %} Devert Alexandre Modern Web Application Framework Slide 54/62

63 Template language This loop object provides some useful informations about the current item of the loop loop variable loop.index loop.index0 loop.revindex loop.revindex0 loop.last loop.first meaning Current index (1-indexed) Current index (0-indexed) Current index, reversed order (1-indexed) Current index, reversed order (0-indexed) True if last item True if first item Devert Alexandre Modern Web Application Framework Slide 55/62

64 Template language You can filter the for loop, as in Python {% f o r u s e r i n u s e r l i s t i f not u s e r. i s h i d d e n %} < l i> {{ u s e r. name }} </ l i> {% e n d f o r %} Devert Alexandre Modern Web Application Framework Slide 56/62

65 Template language If the sequence you iterate turns out to be empty, you can catch this case with an else block {% f o r u s e r i n u s e r l i s t i f not u s e r. i s h i d d e n %} < l i> {{ u s e r. name }} </ l i> {% e l s e %} No u s e r s found! {% e n d f o r %} Devert Alexandre Modern Web Application Framework Slide 57/62

66 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates Basic template rendering Using ressources Template inheritance Template macros Template language 6 Requests Devert Alexandre Modern Web Application Framework Slide 58/62

67 Requests We can send data (HTML, JSON, XML, any kind of text), but we also need to receive data passwords checkboxes values... Devert Alexandre Modern Web Application Framework Slide 59/62

68 Requests The HTTP protocol defines different kind of requests GET request to send data POST request to accept data So far, we only handled GET requests : sending HTML data. Devert Alexandre Modern Web Application Framework Slide 60/62

69 Requests We can also handle POST requests, like this from f l a s k i m p o r t r e q u e s r o u t e ( / l o g i n, methods = [ GET, POST ] ) d e f l o g i n ( ) : # GET r e q u e s t i f request. method == GET : r e t u r n r e n d e r t e m p l a t e ( l o g i n. html ) # POST REQUEST e l s e : e m a i l = r e q u e s t. form [ e m a i l ] password = r e q u e s t. form [ password ] # Check e m a i l & password # TODO r e t u r n r e n d e r t e m p l a t e ( welcome. html ) Devert Alexandre Modern Web Application Framework Slide 61/62

70 Requests The request object hold the information sent to the server <form name= l o g i n method= p o s t a c t i o n= {{ u r l f o r ( l o g i n ) }} > <l a b e l> </ l a b e l> <input type= text name= maxlength= 254 /> <l a b e l>password</ l a b e l> <input type= password name= password /> <button </ form> type= submit >Enter</ button> Devert Alexandre Modern Web Application Framework Slide 62/62

Web Development with Flask and the Raspberry Pi Leading by Example CUAUHTEMOC CARBAJAL ITESM CEM 22/04/2014

Web Development with Flask and the Raspberry Pi Leading by Example CUAUHTEMOC CARBAJAL ITESM CEM 22/04/2014 Web Development with Flask and the Raspberry Pi Leading by Example CUAUHTEMOC CARBAJAL ITESM CEM 22/04/2014 Introduction Flask: lightweight web application framework written in Python and based on the

More information

Developing ASP.NET MVC 4 Web Applications MOC 20486

Developing ASP.NET MVC 4 Web Applications MOC 20486 Developing ASP.NET MVC 4 Web Applications MOC 20486 Course Outline Module 1: Exploring ASP.NET MVC 4 The goal of this module is to outline to the students the components of the Microsoft Web Technologies

More information

Developing ASP.NET MVC 4 Web Applications

Developing ASP.NET MVC 4 Web Applications Course M20486 5 Day(s) 30:00 Hours Developing ASP.NET MVC 4 Web Applications Introduction In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5 tools

More information

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led Course Description In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5

More information

Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf

Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf 1 The Web, revisited WEB 2.0 marco.ronchetti@unitn.it Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf 2 The old web: 1994 HTML pages (hyperlinks)

More information

ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT

ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT Dr. Mike Morrison, University of Wisconsin-Eau Claire, morriscm@uwec.edu Dr. Joline Morrison, University of Wisconsin-Eau Claire, morrisjp@uwec.edu

More information

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency 1. 420-PA3-AB Introduction to Computers, the Internet, and the Web This course is an introduction to the computer,

More information

Outline. Lecture 18: Ruby on Rails MVC. Introduction to Rails

Outline. Lecture 18: Ruby on Rails MVC. Introduction to Rails Outline Lecture 18: Ruby on Rails Wendy Liu CSC309F Fall 2007 Introduction to Rails Rails Principles Inside Rails Hello World Rails with Ajax Other Framework 1 2 MVC Introduction to Rails Agile Web Development

More information

Slides from INF3331 lectures - web programming in Python

Slides from INF3331 lectures - web programming in Python Slides from INF3331 lectures - web programming in Python Joakim Sundnes & Hans Petter Langtangen Dept. of Informatics, Univ. of Oslo & Simula Research Laboratory October 2013 Programming web applications

More information

Developing Web Views for VMware vcenter Orchestrator

Developing Web Views for VMware vcenter Orchestrator Developing Web Views for VMware vcenter Orchestrator vcenter Orchestrator 5.1 This document supports the version of each product listed and supports all subsequent versions until the document is replaced

More information

Esigate Module Documentation

Esigate Module Documentation PORTAL FACTORY 1.0 Esigate Module Documentation Rooted in Open Source CMS, Jahia s Digital Industrialization paradigm is about streamlining Enterprise digital projects across channels to truly control

More information

HTML Form Widgets. Review: HTML Forms. Review: CGI Programs

HTML Form Widgets. Review: HTML Forms. Review: CGI Programs HTML Form Widgets Review: HTML Forms HTML forms are used to create web pages that accept user input Forms allow the user to communicate information back to the web server Forms allow web servers to generate

More information

Course Name: Course in JSP Course Code: P5

Course Name: Course in JSP Course Code: P5 Course Name: Course in JSP Course Code: P5 Address: Sh No BSH 1,2,3 Almedia residency, Xetia Waddo Duler Mapusa Goa E-mail Id: ITKP@3i-infotech.com Tel: (0832) 2465556 (0832) 6454066 Course Code: P5 3i

More information

Getting Started with SharePoint Three projects. Legislative Service Center (LSC) Homepage Employee Bulletin Board CMS to SharePoint Migration

Getting Started with SharePoint Three projects. Legislative Service Center (LSC) Homepage Employee Bulletin Board CMS to SharePoint Migration Tom A. Puleo Legislative Service Center State of Washington NALIT 2008 Getting Started with SharePoint Three projects Legislative Service Center (LSC) Homepage Employee Bulletin Board CMS to SharePoint

More information

Portals and Hosted Files

Portals and Hosted Files 12 Portals and Hosted Files This chapter introduces Progress Rollbase Portals, portal pages, portal visitors setup and management, portal access control and login/authentication and recommended guidelines

More information

ADMINISTRATOR GUIDE VERSION

ADMINISTRATOR GUIDE VERSION ADMINISTRATOR GUIDE VERSION 4.0 2014 Copyright 2008 2014. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means electronic or mechanical, for any purpose

More information

Developers Guide. Designs and Layouts HOW TO IMPLEMENT WEBSITE DESIGNS IN DYNAMICWEB. Version: 1.3 2013.10.04 English

Developers Guide. Designs and Layouts HOW TO IMPLEMENT WEBSITE DESIGNS IN DYNAMICWEB. Version: 1.3 2013.10.04 English Developers Guide Designs and Layouts HOW TO IMPLEMENT WEBSITE DESIGNS IN DYNAMICWEB Version: 1.3 2013.10.04 English Designs and Layouts, How to implement website designs in Dynamicweb LEGAL INFORMATION

More information

Software Development Kit

Software Development Kit Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice

More information

How to Re-Direct Mobile Visitors to Your Library s Mobile App

How to Re-Direct Mobile Visitors to Your Library s Mobile App One of the easiest ways to get your Library s App in the hands of your patrons is to set up a redirect on your website which will sense when a user is on a mobile device and prompt them to select between

More information

GUI and Web Programming

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

More information

Internet Technologies_1. Doc. Ing. František Huňka, CSc.

Internet Technologies_1. Doc. Ing. František Huňka, CSc. 1 Internet Technologies_1 Doc. Ing. František Huňka, CSc. Outline of the Course 2 Internet and www history. Markup languages. Software tools. HTTP protocol. Basic architecture of the web systems. XHTML

More information

Web Applications Testing

Web Applications Testing Web Applications Testing Automated testing and verification JP Galeotti, Alessandra Gorla Why are Web applications different Web 1.0: Static content Client and Server side execution Different components

More information

SysPatrol - Server Security Monitor

SysPatrol - Server Security Monitor SysPatrol Server Security Monitor User Manual Version 2.2 Sep 2013 www.flexense.com www.syspatrol.com 1 Product Overview SysPatrol is a server security monitoring solution allowing one to monitor one or

More information

10CS73:Web Programming

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

More information

Example. Represent this as XML

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

More information

HP WebInspect Tutorial

HP WebInspect Tutorial HP WebInspect Tutorial Introduction: With the exponential increase in internet usage, companies around the world are now obsessed about having a web application of their own which would provide all the

More information

WebObjects Web Applications Programming Guide. (Legacy)

WebObjects Web Applications Programming Guide. (Legacy) WebObjects Web Applications Programming Guide (Legacy) Contents Introduction to WebObjects Web Applications Programming Guide 6 Who Should Read This Document? 6 Organization of This Document 6 See Also

More information

CEFNS Web Hosting a Guide for CS212

CEFNS Web Hosting a Guide for CS212 CEFNS Web Hosting a Guide for CS212 INTRODUCTION: TOOLS: In CS212, you will be learning the basics of web development. Therefore, you want to keep your tools to a minimum so that you understand how things

More information

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence Introduction Client-Side scripting involves using programming technologies to build web pages and applications that are run on the client (i.e.

More information

Example for Using the PrestaShop Web Service : CRUD

Example for Using the PrestaShop Web Service : CRUD Example for Using the PrestaShop Web Service : CRUD This tutorial shows you how to use the PrestaShop web service with PHP library by creating a "CRUD". Prerequisites: - PrestaShop 1.4 installed on a server

More information

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications.

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

More information

Power Tools for Pivotal Tracker

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

More information

CrownPeak Java Web Hosting. Version 0.20

CrownPeak Java Web Hosting. Version 0.20 CrownPeak Java Web Hosting Version 0.20 2014 CrownPeak Technology, Inc. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical,

More information

Migrating helpdesk to a new server

Migrating helpdesk to a new server Migrating helpdesk to a new server Table of Contents 1. Helpdesk Migration... 2 Configure Virtual Web on IIS 6 Windows 2003 Server:... 2 Role Services required on IIS 7 Windows 2008 / 2012 Server:... 2

More information

CIS 192: Lecture 10 Web Development with Flask

CIS 192: Lecture 10 Web Development with Flask CIS 192: Lecture 10 Web Development with Flask Lili Dworkin University of Pennsylvania Web Frameworks We ve been talking about making HTTP requests What about serving them? Flask is a microframework small

More information

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 September 2010 Copyright IBM Corporation 2010. 1 Overview Rational Application Developer, Version 8.0, contains

More information

A Comparative Study of Web Development Technologies Using Open Source and Proprietary Software

A Comparative Study of Web Development Technologies Using Open Source and Proprietary Software Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 4, Issue. 2, February 2015,

More information

Web development... the server side (of the force)

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

More information

SOFTWARE TESTING TRAINING COURSES CONTENTS

SOFTWARE TESTING TRAINING COURSES CONTENTS SOFTWARE TESTING TRAINING COURSES CONTENTS 1 Unit I Description Objectves Duration Contents Software Testing Fundamentals and Best Practices This training course will give basic understanding on software

More information

Ruby on Rails is a web application framework written in Ruby, a dynamically typed programming language The amazing productivity claims of Rails is

Ruby on Rails is a web application framework written in Ruby, a dynamically typed programming language The amazing productivity claims of Rails is Chris Panayiotou Ruby on Rails is a web application framework written in Ruby, a dynamically typed programming language The amazing productivity claims of Rails is the current buzz in the web development

More information

Web Pages. Static Web Pages SHTML

Web Pages. Static Web Pages SHTML 1 Web Pages Htm and Html pages are static Static Web Pages 2 Pages tagged with "shtml" reveal that "Server Side Includes" are being used on the server With SSI a page can contain tags that indicate that

More information

Web+Center Version 7.x Windows Quick Install Guide 2 Tech Free Version Rev March 7, 2012

Web+Center Version 7.x Windows Quick Install Guide 2 Tech Free Version Rev March 7, 2012 Web+Center Version 7.x Windows Quick Install Guide 2 Tech Free Version Rev March 7, 2012 1996-2012 Internet Software Sciences Welcome to the Web+Center Installation and Configuration guide. This document

More information

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof. Web Frameworks web development done right Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.ssa Anna Corazza Outline 2 Web technologies evolution Web frameworks Design Principles

More information

Xtreeme Search Engine Studio Help. 2007 Xtreeme

Xtreeme Search Engine Studio Help. 2007 Xtreeme Xtreeme Search Engine Studio Help 2007 Xtreeme I Search Engine Studio Help Table of Contents Part I Introduction 2 Part II Requirements 4 Part III Features 7 Part IV Quick Start Tutorials 9 1 Steps to

More information

Lesson 7 - Website Administration

Lesson 7 - Website Administration Lesson 7 - Website Administration If you are hired as a web designer, your client will most likely expect you do more than just create their website. They will expect you to also know how to get their

More information

Embedded BI made easy

Embedded BI made easy June, 2015 1 Embedded BI made easy DashXML makes it easy for developers to embed highly customized reports and analytics into applications. DashXML is a fast and flexible framework that exposes Yellowfin

More information

How To Use Query Console

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

More information

SelectSurvey.NET Developers Manual

SelectSurvey.NET Developers Manual Developers Manual (Last updated: 6/24/2012) SelectSurvey.NET Developers Manual Table of Contents: SelectSurvey.NET Developers Manual... 1 Overview... 2 General Design... 2 Debugging Source Code with Visual

More information

http://alice.teaparty.wonderland.com:23054/dormouse/bio.htm

http://alice.teaparty.wonderland.com:23054/dormouse/bio.htm Client/Server paradigm As we know, the World Wide Web is accessed thru the use of a Web Browser, more technically known as a Web Client. 1 A Web Client makes requests of a Web Server 2, which is software

More information

Creating a Restaurant Website

Creating a Restaurant Website 11 Creating a Restaurant Website In This Lesson This lesson looks at the process of creating a small business website, in this case for a restaurant. Starting from a needs analysis, this lesson shows you

More information

CIS 192: Lecture 10 Web Development with Flask

CIS 192: Lecture 10 Web Development with Flask CIS 192: Lecture 10 Web Development with Flask Lili Dworkin University of Pennsylvania Last Week s Quiz req = requests.get("http://httpbin.org/get") 1. type(req.text) 2. type(req.json) 3. type(req.json())

More information

15 minutes is not much so I will try to give some crucial guidelines and basic knowledge.

15 minutes is not much so I will try to give some crucial guidelines and basic knowledge. 1 Presentation. Good morning ladies and gentlemen, dear colleagues. First of all I would like to thank the committee for this invitation and letting me speak about one of my favourite topics: the internet.

More information

DreamFactory & Modus Create Case Study

DreamFactory & Modus Create Case Study DreamFactory & Modus Create Case Study By Michael Schwartz Modus Create April 1, 2013 Introduction DreamFactory partnered with Modus Create to port and enhance an existing address book application created

More information

1. Tutorial - Developing websites with Kentico 8... 3 1.1 Using the Kentico interface... 3 1.2 Managing content - The basics... 4 1.2.

1. Tutorial - Developing websites with Kentico 8... 3 1.1 Using the Kentico interface... 3 1.2 Managing content - The basics... 4 1.2. Kentico 8 Tutorial Tutorial - Developing websites with Kentico 8.................................................................. 3 1 Using the Kentico interface............................................................................

More information

Server-Side Scripting and Web Development. By Susan L. Miertschin

Server-Side Scripting and Web Development. By Susan L. Miertschin Server-Side Scripting and Web Development By Susan L. Miertschin The OOP Development Approach OOP = Object Oriented Programming Large production projects are created by teams Each team works on a part

More information

Web Development: Techniques for Handling Content. Shelley Slaey June 2, 2014

Web Development: Techniques for Handling Content. Shelley Slaey June 2, 2014 Web Development: Techniques for Handling Content Shelley Slaey June 2, 2014 Web Background Author User (Client) Web Server (Server) Web Background Request Response Web Server Request Web Browser Response

More information

New Features Overview

New Features Overview Master Web Site Development AceHTML 6 Pro is a highly effective tool that allows you to build and manage professional Web sites with ease, control, and efficiency. By balancing power and flexibility, AceHTML

More information

Windows Services Manager

Windows Services Manager July 2012 Windows Services Manager User Guide Welcome to AT&T Website Solutions SM We are focused on providing you the very best web hosting service including all the tools necessary to establish and maintain

More information

Fig (1) (a) Server-side scripting with PHP. (b) Client-side scripting with JavaScript.

Fig (1) (a) Server-side scripting with PHP. (b) Client-side scripting with JavaScript. Client-Side Dynamic Web Page Generation CGI, PHP, JSP, and ASP scripts solve the problem of handling forms and interactions with databases on the server. They can all accept incoming information from forms,

More information

Chapter 4. Learning Objectives. Learning Objectives. Building an E-commerce Web Site. Building an E-commerce Web Site: A Systematic Approach

Chapter 4. Learning Objectives. Learning Objectives. Building an E-commerce Web Site. Building an E-commerce Web Site: A Systematic Approach Chapter 4 Building an E-commerce Web Site Created by, David Zolzer, Northwestern State University Louisiana Copyright 2002 Pearson Education, Inc. Slide 4-1 Copyright 2002 Pearson Education, Inc. Slide

More information

CSC9B2 Spring 2015 Web Design Practical 1: Introduction to HTML 5

CSC9B2 Spring 2015 Web Design Practical 1: Introduction to HTML 5 CSC9B2 Spring 2015 Web Design Practical 1: Introduction to HTML 5 AIM To learn the basics of creating web pages with HTML5. Remember to register your practical attendance. This sheet contains one checkpoint.

More information

Shoppingcart page type overview

Shoppingcart page type overview Shoppingcart page type overview Here is a quick overview of it: You can create specially formatted links (see below) anywhere in your app which when tapped by user will ADD an item to shopping cart or

More information

DiskPulse DISK CHANGE MONITOR

DiskPulse DISK CHANGE MONITOR DiskPulse DISK CHANGE MONITOR User Manual Version 7.9 Oct 2015 www.diskpulse.com info@flexense.com 1 1 DiskPulse Overview...3 2 DiskPulse Product Versions...5 3 Using Desktop Product Version...6 3.1 Product

More information

Google AdWords TM Conversion Tracking Guide

Google AdWords TM Conversion Tracking Guide Google AdWords TM Conversion Tracking Guide CONTENTS INTRODUCTION TO CONVERSION TRACKING...2 PRODUCT DESCRIPTION...2 OVERVIEW...2 DEFINITION OF TERMS...3 ADDING THE CODE SNIPPET...4 CONVERSION TRACKING

More information

Elgg 1.8 Social Networking

Elgg 1.8 Social Networking Elgg 1.8 Social Networking Create, customize, and deploy your very networking site with Elgg own social Cash Costello PACKT PUBLISHING open source* community experience distilled - BIRMINGHAM MUMBAI Preface

More information

Working With Virtual Hosts on Pramati Server

Working With Virtual Hosts on Pramati Server Working With Virtual Hosts on Pramati Server 13 Overview Virtual hosting allows a single machine to be addressed by different names. There are two ways for configuring Virtual Hosts. They are: Domain Name

More information

JBoss Portlet Container. User Guide. Release 2.0

JBoss Portlet Container. User Guide. Release 2.0 JBoss Portlet Container User Guide Release 2.0 1. Introduction.. 1 1.1. Motivation.. 1 1.2. Audience 1 1.3. Simple Portal: showcasing JBoss Portlet Container.. 1 1.4. Resources. 1 2. Installation. 3 2.1.

More information

Blueball Design Dynamic Content 2 Stack Readme Manual v1.0

Blueball Design Dynamic Content 2 Stack Readme Manual v1.0 Blueball Design Dynamic Content 2 Stack Readme Manual v1.0 A unique responsive stack that dynamically populates and updates a content area within the stack using a warehoused external XML flat text file

More information

GLEN RIDGE PUBLIC SCHOOLS MATHEMATICS MISSION STATEMENT AND GOALS

GLEN RIDGE PUBLIC SCHOOLS MATHEMATICS MISSION STATEMENT AND GOALS Course Title: Advanced Web Design Subject: Mathematics / Computer Science Grade Level: 9-12 Duration: 0.5 year Number of Credits: 2.5 Prerequisite: Grade of A or higher in Web Design Elective or Required:

More information

Syllabus INFO-UB-3322. Design and Development of Web and Mobile Applications (Especially for Start Ups)

Syllabus INFO-UB-3322. Design and Development of Web and Mobile Applications (Especially for Start Ups) Syllabus INFO-UB-3322 Design and Development of Web and Mobile Applications (Especially for Start Ups) Fall 2014 Stern School of Business Norman White, KMEC 8-88 Email: nwhite@stern.nyu.edu Phone: 212-998

More information

Release 1. ICAPRG604A Create cloud computing services

Release 1. ICAPRG604A Create cloud computing services Release 1 ICAPRG604A Create cloud computing services ICAPRG604A Create cloud computing services Modification History Release Release 1 Comments This version first released with ICA11 Information and Communications

More information

Tutorial: Building a Web Application with Struts

Tutorial: Building a Web Application with Struts Tutorial: Building a Web Application with Struts Tutorial: Building a Web Application with Struts This tutorial describes how OTN developers built a Web application for shop owners and customers of the

More information

Design and Functional Specification

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)

More information

MAGENTO TRAINING PROGRAM

MAGENTO TRAINING PROGRAM Design Integration Guideline MAGENTO TRAINING PROGRAM Contents 1 Standard development workflow 32 Prepare working environment 3 Layout comprehension 34 Introduce Block 5 Understand header and footer elements

More information

Fundamentals of Web Design (One Semester)

Fundamentals of Web Design (One Semester) Fundamentals of Web Design (One Semester) In this course students are introduced to the basics of web page design. Topics include information about the World Wide Web, copyright and e Commerce as well

More information

Module Google Rich Snippets + Product Ratings and Reviews

Module Google Rich Snippets + Product Ratings and Reviews Module Google Rich Snippets + Product Ratings and Reviews Date : May 13 th, 2013 Business Tech Installation Service If you need help installing and configuring your module, we can offer you an installation

More information

CLC Server Command Line Tools USER MANUAL

CLC Server Command Line Tools USER MANUAL CLC Server Command Line Tools USER MANUAL Manual for CLC Server Command Line Tools 2.5 Windows, Mac OS X and Linux September 4, 2015 This software is for research purposes only. QIAGEN Aarhus A/S Silkeborgvej

More information

App Building Guidelines

App Building Guidelines App Building Guidelines App Building Guidelines Table of Contents Definition of Apps... 2 Most Recent Vintage Dataset... 2 Meta Info tab... 2 Extension yxwz not yxmd... 3 Map Input... 3 Report Output...

More information

Building and Using Web Services With JDeveloper 11g

Building and Using Web Services With JDeveloper 11g Building and Using Web Services With JDeveloper 11g Purpose In this tutorial, you create a series of simple web service scenarios in JDeveloper. This is intended as a light introduction to some of the

More information

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME System Analysis and Design S.Mohammad Taheri S.Hamed Moghimi Fall 92 1 CHOOSE A PROGRAMMING LANGUAGE FOR THE PROJECT 2 CHOOSE A PROGRAMMING LANGUAGE

More information

JD Edwards EnterpriseOne Tools. 1 Understanding JD Edwards EnterpriseOne Business Intelligence Integration. 1.1 Oracle Business Intelligence

JD Edwards EnterpriseOne Tools. 1 Understanding JD Edwards EnterpriseOne Business Intelligence Integration. 1.1 Oracle Business Intelligence JD Edwards EnterpriseOne Tools Embedded Business Intelligence for JD Edwards EnterpriseOne Release 8.98 Update 4 E21426-02 March 2011 This document provides instructions for using Form Design Aid to create

More information

JTouch Mobile Extension for Joomla! User Guide

JTouch Mobile Extension for Joomla! User Guide JTouch Mobile Extension for Joomla! User Guide A Mobilization Plugin & Touch Friendly Template for Joomla! 2.5 Author: Huy Nguyen Co- Author: John Nguyen ABSTRACT The JTouch Mobile extension was developed

More information

Advanced Tornado TWENTYONE. 21.1 Advanced Tornado. 21.2 Accessing MySQL from Python LAB

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

More information

How To Test The Bandwidth Meter For Hyperv On Windows V2.4.2.2 (Windows) On A Hyperv Server (Windows V2) On An Uniden V2 (Amd64) Or V2A (Windows 2

How To Test The Bandwidth Meter For Hyperv On Windows V2.4.2.2 (Windows) On A Hyperv Server (Windows V2) On An Uniden V2 (Amd64) Or V2A (Windows 2 BANDWIDTH METER FOR HYPER-V NEW FEATURES OF 2.0 The Bandwidth Meter is an active application now, not just a passive observer. It can send email notifications if some bandwidth threshold reached, run scripts

More information

CSE 510 Web Data Engineering

CSE 510 Web Data Engineering CSE 510 Web Data Engineering Introduction UB CSE 510 Web Data Engineering Staff Instructor: Dr. Michalis Petropoulos Office Hours: Location: TA: Demian Lessa Office Hours: Location: Mon & Wed @ 1-2pm 210

More information

Web Cloud Architecture

Web Cloud Architecture Web Cloud Architecture Introduction to Software Architecture Jay Urbain, Ph.D. urbain@msoe.edu Credits: Ganesh Prasad, Rajat Taneja, Vikrant Todankar, How to Build Application Front-ends in a Service-Oriented

More information

Programming Fundamentals of Web Applications Course 10958A; 5 Days

Programming Fundamentals of Web Applications Course 10958A; 5 Days Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc Programming Fundamentals of Web Applications Course 10958A; 5 Days Course

More information

Generate Android App

Generate Android App Generate Android App This paper describes how someone with no programming experience can generate an Android application in minutes without writing any code. The application, also called an APK file can

More information

Office 888-707-3030. Fax 888-300-3002

Office 888-707-3030. Fax 888-300-3002 Office 888-707-3030 Fax 888-300-3002 1 Reseller Quick-Start Guide Table of Contents Reseller Account Setup Checklist 2 Domain & Name Servers 3 Payment Gateway(s) 4 Dedicated Email Servers 5 Landing Page

More information

A Tool for Evaluation and Optimization of Web Application Performance

A Tool for Evaluation and Optimization of Web Application Performance A Tool for Evaluation and Optimization of Web Application Performance Tomáš Černý 1 cernyto3@fel.cvut.cz Michael J. Donahoo 2 jeff_donahoo@baylor.edu Abstract: One of the main goals of web application

More information

Creating Online Surveys with Qualtrics Survey Tool

Creating Online Surveys with Qualtrics Survey Tool Creating Online Surveys with Qualtrics Survey Tool Copyright 2015, Faculty and Staff Training, West Chester University. A member of the Pennsylvania State System of Higher Education. No portion of this

More information

TIBCO Spotfire Web Player 6.0. Installation and Configuration Manual

TIBCO Spotfire Web Player 6.0. Installation and Configuration Manual TIBCO Spotfire Web Player 6.0 Installation and Configuration Manual Revision date: 12 November 2013 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED

More information

MVC pattern in java web programming

MVC pattern in java web programming MVC pattern in java web programming Aleksandar Kartelj, Faculty of Mathematics Belgrade DAAD workshop Ivanjica 6. -11.9.2010 Serbia September 2010 Outline 1 2 3 4 5 6 History Simple information portals

More information

Macromedia Dreamweaver 8 Developer Certification Examination Specification

Macromedia Dreamweaver 8 Developer Certification Examination Specification Macromedia Dreamweaver 8 Developer Certification Examination Specification Introduction This is an exam specification for Macromedia Dreamweaver 8 Developer. The skills and knowledge certified by this

More information

Dreamweaver CS3 THE MISSING MANUAL. David Sawyer McFarland. POGUE PRESS" O'REILLY 8 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo

Dreamweaver CS3 THE MISSING MANUAL. David Sawyer McFarland. POGUE PRESS O'REILLY 8 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Dreamweaver CS3 THE MISSING MANUAL David Sawyer McFarland POGUE PRESS" O'REILLY 8 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents The Missing Credits Introduction 1 Part

More information

Microsoft Dynamics GP. Extender User s Guide

Microsoft Dynamics GP. Extender User s Guide Microsoft Dynamics GP Extender User s Guide Copyright Copyright 2010 Microsoft. All rights reserved. Limitation of liability This document is provided as-is. Information and views expressed in this document,

More information

Intruduction to Groovy & Grails programming languages beyond Java

Intruduction to Groovy & Grails programming languages beyond Java Intruduction to Groovy & Grails programming languages beyond Java 1 Groovy, what is it? Groovy is a relatively new agile dynamic language for the Java platform exists since 2004 belongs to the family of

More information

How To Use Titanium Studio

How To Use Titanium Studio Crossplatform Programming Lecture 3 Introduction to Titanium http://dsg.ce.unipr.it/ http://dsg.ce.unipr.it/?q=node/37 alessandro.grazioli81@gmail.com 2015 Parma Outline Introduction Installation and Configuration

More information

Web Security. Mahalingam Ramkumar

Web Security. Mahalingam Ramkumar Web Security Mahalingam Ramkumar Issues Phishing Spreading misinformation Cookies! Authentication Domain name DNS Security Transport layer security Dynamic HTML Java applets, ActiveX, JavaScript Exploiting

More information

INSTALLATION GUIDE VERSION

INSTALLATION GUIDE VERSION INSTALLATION GUIDE VERSION 4.1 2014 Copyright 2008 2014. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means electronic or mechanical, for any purpose

More information