Comparison of JavaScript Graph Libraries

Size: px
Start display at page:

Download "Comparison of JavaScript Graph Libraries"

Transcription

1 UNIVERSITY OF WATERLOO Software Engineering Comparison of JavaScript Graph Libraries University of Waterloo Waterloo, Ontario prepared by Yuguang Zhang Student ID: Userid: y279zhan 2B Software Engineering January 1, 2011

2 1828 Blackwater Rd. London, ON N5X 4J4 January 1, 2011 Charles Stross, Director Software Engineering University of Waterloo Waterloo, ON N2L 3G1 Dear Sir, I have prepared the enclosed report Comparison of JavaScript Graph Libraries as my 2B Work Report for academic credit following my work-term. This is my third work report. I have been working on a personal project to display the university s course catalog, in a form that is easy to navigate. One of the goals of the project was a tree diagram for the prerequisites of each course. My initial assumption was that each course only had one set of prerequisites. This assumption simplified the implementation to the degree that no client-side interactivity was required. However, on careful examination of the dataset for prerequisites, it was found that many courses had multiple sets of possible prerequisites. Therefore, client-side interactivity would be beneficial and could reduce program complexity in the case where alternatives are to be shown. Following this paradigm, a prerequisite diagram would be drawn using JavaScript. The nodes of the diagram are toggled to show an alternative list of prerequisites. The purpose of this self-study report is to find and justify the library to be used for rendering the visualization of data in the project. I would like to thank Thomas Dimson for developing the L A TEX class used to typeset this report. I hereby confirm that I have received no further help other than what is mentioned above in writing this report. I also confirm that this report has not been previously submitted for academic credit at this or any other academic institution. Sincerely, Yuguang Zhang

3 Executive Summary This report will help web developers who are interested in visualizing graphs in JavaScript decide on a library to use. The web developer will have a clear idea of limitations and capabilities of JavaScript graph visualization libraries. Two libraries that are able to draw graph structures are JavaScript InfoVis Toolkit (JIT) and Dracula. The recommendations in this report are specific to web applications that require interactivity and are limited to a short development time. The two graph libraries are evaluated by their support for AJAX and the quality of the graph visualization. The sections of the report are ordered by importance, and each section compares JIT with Dracula. A high level overview of the processes involved in drawing a graph with each library is given. Next, AJAX support, which is essential for interactive data driven applications, is examined. Third, the graph visualization is compared. Finally, browser compatibility, the last concern due to newer browsers always having better standards support, is briefly discussed. Both JIT and Dracula are both able to satisfy basic project requirements. Dracula requires more development time to implement the same feature set as JIT. However, Dracula is easier to get started with. JIT has a low-level graph implementation that allows switching of nodes. Dracula is expedient when it comes to drawing the graph, but not when changing it. This report recommends JIT for use on data visualization projects for the web that require interactivity. This will allow fast progress during development and ensure the requirements of the application users are met. ii

4 Table of Contents Executive Summary ii Table of Contents iii 1.0 Introduction Background Purpose Scope Audience Outline Specifying and Drawing the Graph JIT Dracula Interactivity and Dynamic Rendering AJAX Support Data Structure for Nodes Visualization Animations Graph Layout Browser Support Conclusions iii

5 12.0Recommendations References Glossary iv

6 1.0 Introduction When developing web applications, JavaScript can help make the content more interactive. JavaScript libraries can help the developer abstract implementation details and complete the project faster. JavaScript graph visualization libraries differ in implementation and suitable application, some requiring a specific data structure for input, others have simpler methods for specifying the graph. Besides the notation for transferring data, AJAX support is worth a close examination, since it determines the interactivity of the web application. The ability to redraw nodes with AJAX is one criteria of the framework. A clean notation for relationship between the nodes of a graph is complementary. This would in turn reduce server-side processing for the graph. AJAX support is essential for reducing development time. When adding or removing nodes, transitions can make the user experience smoother. Relevant animations are particularly useful for getting the users attention. After updating the graph with AJAX, the user must be notified of the change. Animations for drawing and removing nodes are cues that can help the user understand how to interact with the graph, making the interface more intuitive. Lastly, browser support is always a consideration when developing web applications. It is important to ensure that the graph works on all browsers. Popular browsers including Internet Explorer 7 and 8, Firefox 3, Chrome, and Opera need to be checked. 2.0 Background I have been working on a personal project to gather course information from the undergrad academic calendar and display it in a user-friendly way. For the client-side part of the web application, a navigable tree of nodes is required. This is one of the primary goals of 1

7 the project. There are many aspects to this problem, including displaying the information, storing it, and gathering the data. How the data is displayed is completely independent from how it is gathered, because the separate functions are modularized. At the time this report is written, the only steps left required to display the information in a tree form are functions to transform data into a form which can be used by the JavaScript library and the code written using the library to display the tree. For manipulating the data, several functions were already written. They include a recursive function that returns a recursive list of course prerequisites, as well as two other functions that return the connections between nodes and the nodes separated by levels. Since this is one small component of the entire project, I decided to devote at most an entire weekend to it to build a prototype that meets all of the specifications. There are a few design constraints limiting the qualifying JavaScript library. First, the library must be capable of rendering lines and nodes. Second, the rendered graph must allow user interaction with nodes. Third, the method for drawing the graph must be standards compliant and be supported on all five major browsers. 3.0 Purpose There are several design constraints for the library to be used for visualization. First, the graph library should support an Ajax method for updating nodes. Along with dynamically adding or removing nodes of the graph, most of the intensive processing should be done by the client. Related to the amount of processing done by the server is the notation for specifying relationship between nodes. If the notation requires specific edges between all of the nodes, more computation is required than a notation that supports recursive structures. Second, the visualization is a major part of the user experience and should have relevant 2

8 animations. Animations for drawing and removing edges are the most applicable ones. Moreover, the nodes should by default be drawn as a tree, with each children of a node drawn at the same level of height. Preferably, the nodes have styling options so that it can be customized to fit the rest of the application. Third, browser support is an important consideration when developing any web application. The underlying technology used by the library should be forward compatible and standardized. All major browsers should be supported, with improvements or enhancements in the newer releases. 4.0 Scope This report includes qualitative and quantitative analyses of two JavaScript graph libraries, Dracula and JIT. Both are selected because they meet the constraints. Additionally, they represent two different approaches to drawing graphs. One has separation of the the graph model, layout algorithms, and rendering scheme layers. The other is has a specialized class to handle all graph operations. 5.0 Audience The audience is expected to have a basic understanding of tree graphs along with some understanding of HTML and JavaScript. In addition, a knowledge of how AJAX works is helpful. 3

9 6.0 Outline The different sections of this report cover the analysis of Dracula and JIT. The major sections analyze the graph specification, AJAX support, data visualization, and browser support, respectively. The final sections cover the conclusion and recommendations. 4

10 7.0 Specifying and Drawing the Graph In the simplest usage cases, JavaScript graph libraries take the graph specifications, rendering the nodes and edges of the graph. JIT and Dracula take different inputs for the graph, but have similar processes in rendering it. Because JIT provides many methods for manipulating the graph with a high level of abstraction, there is no need to modify the process for drawing a graph. However, there are areas that can be customized when creating nodes and requesting new nodes. On the contrary, Dracula is a much smaller library. Consequently, the rendering process needs some additions and modifications to suit the needs of the application. 7.1 JIT The JavaScript InfoVis Toolkit (JIT) has a specialized visualization class for drawing trees. Drawing a graph in a tree structure takes four steps. First, a new Space Tree instance is created. Second, a method is called to load JSON into the tree object. Third, the node positions and layout are computed. Finally, a click is simulated on the root node to draw the graph. The purpose of the click is to center the graph on the root node, as Space Tree has a feature that animates nodes that are clicked. [13] The graph is specified in JSON notation when using the JavaScript InfoVis Toolkit. In JSON notation, brackets act as containers, much like dictionaries in Python, which is used on the server side. Square brackets hold arrays. Properties and values are separated by colon. [5] Each graph node in the JSON has several properties. The id is a unique identifier for the node. The name is the text displayed for the node. Data stores optional information not used by JIT. The children property of a node contains an array of other nodes or can be empty. 5

11 The oncreatelabel method is called when each DOM label is created. [12] Event handlers are registered and label styles are set in this method. An HTML label element is passed. Styles are set using JavaScripts object.style.property syntax. To add more flexibility to how labels are displayed, JIT also supports SVG and Canvas labels. [3] SVG elements can be rotated so that the label text does not need to be horizontal. JIT provides an optional request method that allows nodes to be populated to a certain depth. For instance, if a node is removed and only the next level of children added, this method is called until the children are a certain depth from the root node specified. This is a method for dynamically retrieving nodes. It is asynchronous, supporting a callback function that can be registered to make the AJAX request to populate nodes. [12] 7.2 Dracula The Dracula library is divided into three layers, consisting of the graph model, layout algorithms, and rendering schemes. The graph model is an object which keeps track of nodes and edges that are added using methods in the graph class. The layout class positions nodes. The renderer class uses another JavaScript library, Raphael, to draw the graph as an SVG image. [6] This layer also supports registering events to shapes. Drawing a graph using Dracula is simple. A new graph object is created, which contains arrays for nodes, edges, and snapshots. Snapshots are saves of previous graph states. There are functions to add nodes and edges. The addnode method simply takes the name of a node as an argument and adds a node to the node array. The addedge method takes two node names and adds an edge to the array. [15] If the nodes do not exist, the nodes are created automatically when the edge is added. Each edge stores source, target, and styling information. 6

12 The layout algorithm takes the graph model as an argument and calculates the position of nodes. There are two layout modes available, spring and tree. Spring layout positions nodes randomly so that they are equally spaced. Tree layout positions nodes in a tree shape. The rendering scheme takes a graph as an argument and draws it using the Raphael library. Node and edge styles can be customized by passing extra arguments to the addnode method of a graph. The label for a node, by default the same as the name in the graph model, is rendered at the center of the node. 8.0 Interactivity and Dynamic Rendering One major benefit of using JavaScript to draw graphs rather than generating static images server-side is that the users can interact with the graph. Interactive client-side applications depend on AJAX. JIT has functions specifically designed for populating nodes with AJAX. On the contrary, Dracula simply lacks support for AJAX. However, Dracula is capable of more animations and allows more events to be registered than JIT. 8.1 AJAX Support JIT has a native function for requesting AJAX tree nodes, the request method. This is called when an empty node is clicked. The nodes sub-trees are requested and drawn. The request method is a high-level implementation for generating on-demand nodes. For the needs of the project, low-level details need to be controlled, making the request method unsuitable. JIT provides addsubtree and removesubtree specifically for adding or removing sub-trees from nodes. [13] Furthermore, onclick event handlers can be registered with each label. These functionalities, combined together, allow switching of nodes to show an alternative list of prerequisites. Overall, JIT has a well-rounded API to support AJAX. 7

13 Contrarily, Dracula has no native AJAX support and lacks methods required to execute it for the project. The method for removing nodes is not implemented. Only the rendering class uses the Raphael SVG drawing library and can remove elements from the drawing. Because the rendering class takes the graph as an argument, it is impossible to remove nodes simply by deleting them from the graph object. The separation of layers makes communication between them difficult. Changes to the graph model do not propagate to the rendering layer. Therefore, nodes cannot be added or removed dynamically with Dracula. 8.2 Data Structure for Nodes The data structure for specifying the tree is directly related to the amount of processing required for the back-end. Since a recursive query is used to generate prerequisites, it is more convenient to use a notation for specifying nodes that supports recursive structures. JIT requires the back-end to generate a JSON data structure to represent the tree. Since there is a children property in each node object, fully recursive structures are supported. The child property is of type Array and contains a nodes children. [14] Besides during the initial load, JSON is used throughout the library to specify tree or graph structures, including adding and removing nodes. With Dracula, the back-end has to provide two sets of data for the graph. The edges between nodes must be specified to draw lines between them. This is in the format of node pairs passed as arguments to a function. Specifying nodes are optional for drawing the graph, since they are added automatically. However, in order to avoid overlapping of edges, the nodes for each level must be provided in a certain order, from left to right, top to bottom. The nodes on each level are specified before moving on to the next. This is done by simply passing the nodes name in a function call. Certainly, the lack of JSON structure has a side effect. Edges in the graph model are used to keep track of relationships between nodes. 8

14 To find the children of a node, all edges are searched. Each edge has a source and target property. The source s id must match the node s id to find its children. In summary, there are many drawbacks compared to JIT when adding and removing nodes because the default graph structure is not recursive. 9.0 Visualization Visualizing the information contained in data is critical to communicating it. There is a huge difference in user experience between navigating through several pages to obtain a list of prerequisites and getting a glance of it as a tree structured graph. In the first case, the users flow of thought is interrupted as each page loads, and the user must keep track sequence of prerequisites. In the second case, an intuitive graph structure along with the animations allows the user to immediately find the information they are looking for. In order to realize the user interface for the second case, animations should make interacting with the graph a smooth experience. Nodes should be styled in a way that encourages user interaction. 9.1 Animations Although JIT comes with fewer animations compared to the Raphael based library Dracula, it has all of the most essentials ones. JIT has animations for adding and removing nodes. In addition, tooltips can be added for mouse hovers. The animation for adding a node simply traces the branch of the tree drawn as a line and fades in the node. Styled tooltips can be added for mouse hovers. These animations are particularly relevant for visualizing prerequisites as a tree structure. In Dracula, nodes are drawn as shapes, which can be colored and labeled by setting attributes of the SVG element.[8] These can be set directly through an attr method. Many of 9

15 the styling options and animations in the SVG specification are supported in Dracula through an optional Raphael parameter that can be passed when making a node. [16] The optional parameter, a lambda function, uses Raphael to set styles and animations. [15] It takes the SVG element Raphael draws on and the node as arguments and returns a Raphael set of objects. As a result, Dracula has all the SVG drawing capabilities of Raphael. Although the Dracula library could be customized to animate the drawing of a tree the same way as JIT, Dracula by default does not come with relevant animations. Conversely, it comes with a few animations to support dragging. When a node is clicked, the node fades in color, which is not particularly useful for the current application. 9.2 Graph Layout JIT has all the basic features for drawing tree structured graphs. JIT lays out nodes so that edges do not overlap, except for the case where the children refer to parents as children. However, this case does not occur when simply displaying prerequisites. At any rate, JIT lays out the nodes in an aesthetically pleasing way. [4] Equally important, nodes can be styled with several properties. [11] The style options include the nodes shape, color, opacity, height, and width. Dracula has support for tree mode layout [10] in which nodes are laid out from top to bottom, level by level. All of a nodes children are on the same level, however, Dracula needs nodes to be arranged level by level to avoid edges crossing. There is no attempt to prevent overlapping of edges in the layout algorithm. Fortunately, there were Python functions written to process nodes and separate them into different levels which are suitable for this task. Nodes can be styled using an object passed when creating them without directly using Raphael. [15] This is mostly a convenience and supports gradients, stroke styles, font options, rotation, and position options. 10

16 10.0 Browser Support Both libraries have support for all major browsers. JIT uses the HTML5 Canvas element, and Dracula uses SVG. For versions of IE that doesnt support Canvas, the ExCanvas library bridges the gap. Similarly, the Raphael based library Dracula uses VML in place of SVG for IE. [17] The next release of IE is expected to be on par with modern browsers, as IE9 supports both Canvas and SVG. [18] Although the underlying implementation behind Dracula supports IE, it only works in IE with a small tweak. Specifically, the foreach loop needs to be changed to a for loop. [9] This is because IEs JavaScript implementation does not have foreach. JIT has higher performance due to everything being rendered as a pixel compared to Raphael, which updates the XML document, adding complexity. On a surprising note, JIT is noticeably slower in browsers that dont have modern JavaScript engines, since all animations and drawings are calculated using JavaScript. However, the JavaScript engine is expected to improve in IE9[19], which will make the animations smoother Conclusions JIT has a specialized class for tree graphs that makes adding and removing nodes simple. Creating a tree graph only requires initializing the class, loading the graph specification, and calling methods to compute the layout. JIT comes with support for JSON, which is used to load the initial graph structure. JITs node representation is particularly suitable for recursive structures, as each node can have children. Each node has an extra data property, which can be customized to store the iteration number through prerequisites. In addition, JIT has a method for repeatedly requesting nodes until the tree has a certain depth. This feature can be used for loading the tree initially or populating the tree after nodes are removed. 11

17 The Dracula graph library has three layers for the graph model, layout algorithms, and rendering schemes. This separation of layers makes it easy to add nodes to the graph model or style nodes and edges on the drawing. However, this separation of layers also increases the complexity of implementing a method for removing nodes from the drawing. Nodes cannot be removed simply by changing the graph model. When creating the graph, Dracula allows the graph to be specified by the connections between nodes. This makes the learning curve for the library short, as there is a minimal amount of structure in the graph specification. On the other hand, it does come with drawbacks for manipulating nodes with AJAX. JIT has better AJAX support compared to Dracula. Dracula is hardly intended to be used with AJAX for changing the graph, as it does not support removing nodes. Furthermore, Dracula requires additional processing of the tree as input before it can be drawn. On the other hand, JIT has methods for adding and removing nodes and JSON for tree structure. The JSON data structure is recursive, allowing nodes to be nested. When it comes to visualizing recursive structures, JIT has more relevant animations and offers more features. The animations are geared towards displaying trees, with contraction and expansion animations for adding and removing nodes. Not only do the layout algorithms avoid overlapping of edges in the graph by default, but also several node appearance options can be styled. Dracula has a plethora of available animations and styling options for visualizing general graph structures. These are not built into Dracula or specific for drawing tree structures. Nevertheless, Dracula can be customized to include animations for drawing trees due to its support of SVG. Although the layout algorithm does not prevent overlapping of edges, a pre-written python function can order nodes to be drawn in a sequence so that they do not overlap. When styling nodes, Dracula makes it convenient to set a large number of options. Dracula and JIT use different web technologies for rendering graphics. Dracula has a 12

18 slight incompatibility with IE that can be fixed. IE9 is expected to natively support Canvas and SVG, the underlying technologies behind JIT and Dracula. In terms of compatibility with older versions of IE, the only issue with JIT is that there is a noticeable performance penalty. 13

19 12.0 Recommendations Because the Dracula graph library lacks essential methods required for the project, it should be avoided unless the project timeline can be extended. Even if the timeline is extended, the three layer structure of the library may result in unexpected problems during development. Due to the short development time allocated for this part of the project, it is unsuitable to use Dracula even if more animations and styles are available. They are simply too general to use for drawing tree graphs. It is recommended to use JITs specialized class for drawing trees, as this will fulfill the basic project requirements and shorten development time. In order to avoid patching future releases of Dracula for IE support, it is suggested to use JIT. Both libraries use standardized web technologies, while using JIT can save a small amount of time due to out of box support for all major browsers. 14

20 References [1] F. Potencier, Practical symfony, Doctrine/en/ (current April 2010). [2] F. Potencier, Chapter 5 - Configuring Symfony, in The Definitive Guide to symfony, (current April 2010). [3] N. G. Belmonte, HTML, SVG or Canvas Labels?, 08/30/html-svg-or-canvas-labels/ (current December 2010). [4] N. G. Belmonte, Drawing Trees, drawing-trees/ (current December 2010). [5] P. Hunlock, Mastering JSON ( JavaScript Object Notation ), in The Javascript Reference Series, Object_Notation_) (current December 2010). [6] D. Almaer, New Javascript/Canvas Graph library, new-javascriptcanvas-graph-library (current December 2010). [7] M. Sucan, SVG or Canvas? Choosing between the two, opera.com/articles/view/svg-or-canvas-choosing-between-the-two/ #comparison-of-svg-and-canvas (current December 2010). [8] D. Baranovski, RaphalJavaScript Library Documentation, reference.html#attr (current December 2010). [9] J. Philipp, Dracula Graph Library, (current December 2010). 15

21 [10] J. Philipp, Short update: new code and tree mode, /11/09/short-update-new-code-and-tree-mode/ (current December 2010). [11] N. G. Belmonte, Options.Node.js, in JavaScript InfoVis Toolkit API Documentation, (current December 2010). [12] N. G. Belmonte, Options.Controller.js, in JavaScript InfoVis Toolkit API Documentation, Options-Controller-js.html (current December 2010). [13] N. G. Belmonte, Spacetree.js, in JavaScript InfoVis Toolkit API Documentation, (current December 2010). [14] N. G. Belmonte, loadjson, in JavaScript InfoVis Toolkit API Documentation, http: //thejit.org/static/v20/docs/files/loader/loader-js.html#loader.loadjson (current December 2010). [15] J. Philipp, Documentation, (current December 2010). [16] E. Dahlstrm et al., Scalable Vector Graphics (SVG) 1.1 (Second Edition), http: // (current December 2010). [17] D. Baranovski, RaphalJavaScript Library, (current December 2010). [18] R. Bango, An Introduction to the HTML 5 Canvas Element, microsoft.com/en-us/scriptjunkie/ff aspx (current December 2010). [19] S. Niyogi, The New JavaScript Engine in Internet Explorer 9, 16

22 the-new-javascript-engine-in-internet-explorer-9.aspx (current December 2010). 17

23 Glossary AJAX A group of techniques for creating interactive web applications, in which applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page. HTML Hypertext Markup Language: a set of tags and rules (conforming to SGML) for using them in developing hypertext documents. CSS Cascading Style Sheets are declarations that describe how a document should be presented on the Web. Python A simple, high-level interpreted language invented by Guido van Rossum in JavaScript A scripting programming language most commonly used to add interactive features to webpages. 18

Advantage of Jquery: T his file is downloaded from

Advantage of Jquery: T his file is downloaded from What is JQuery JQuery is lightweight, client side JavaScript library file that supports all browsers. JQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling,

More information

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph Client: Brian Krzys June 17, 2014 Introduction Newmont Mining is a resource extraction company with a research and development

More information

Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00

Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00 Course Page - Page 1 of 12 Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00 Course Description Responsive Mobile Web Development is more

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

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

Visualizing a Neo4j Graph Database with KeyLines

Visualizing a Neo4j Graph Database with KeyLines Visualizing a Neo4j Graph Database with KeyLines Introduction 2! What is a graph database? 2! What is Neo4j? 2! Why visualize Neo4j? 3! Visualization Architecture 4! Benefits of the KeyLines/Neo4j architecture

More information

Web Design Specialist

Web Design Specialist UKWDA Training: CIW Web Design Series Web Design Specialist Course Description CIW Web Design Specialist is for those who want to develop the skills to specialise in website design and builds upon existing

More information

JavaFX Session Agenda

JavaFX Session Agenda JavaFX Session Agenda 1 Introduction RIA, JavaFX and why JavaFX 2 JavaFX Architecture and Framework 3 Getting Started with JavaFX 4 Examples for Layout, Control, FXML etc Current day users expect web user

More information

Programming in HTML5 with JavaScript and CSS3

Programming in HTML5 with JavaScript and CSS3 Course 20480B: Programming in HTML5 with JavaScript and CSS3 Course Details Course Outline Module 1: Overview of HTML and CSS This module provides an overview of HTML and CSS, and describes how to use

More information

Visualizing Data: Scalable Interactivity

Visualizing Data: Scalable Interactivity Visualizing Data: Scalable Interactivity The best data visualizations illustrate hidden information and structure contained in a data set. As access to large data sets has grown, so has the need for interactive

More information

Visualizing an OrientDB Graph Database with KeyLines

Visualizing an OrientDB Graph Database with KeyLines Visualizing an OrientDB Graph Database with KeyLines Visualizing an OrientDB Graph Database with KeyLines 1! Introduction 2! What is a graph database? 2! What is OrientDB? 2! Why visualize OrientDB? 3!

More information

Adding Panoramas to Google Maps Using Ajax

Adding Panoramas to Google Maps Using Ajax Adding Panoramas to Google Maps Using Ajax Derek Bradley Department of Computer Science University of British Columbia Abstract This project is an implementation of an Ajax web application. AJAX is a new

More information

Outline. CIW Web Design Specialist. Course Content

Outline. CIW Web Design Specialist. Course Content CIW Web Design Specialist Description The Web Design Specialist course (formerly titled Design Methodology and Technology) teaches you how to design and publish Web sites. General topics include Web Site

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

4 Understanding. Web Applications IN THIS CHAPTER. 4.1 Understand Web page development. 4.2 Understand Microsoft ASP.NET Web application development

4 Understanding. Web Applications IN THIS CHAPTER. 4.1 Understand Web page development. 4.2 Understand Microsoft ASP.NET Web application development 4 Understanding Web Applications IN THIS CHAPTER 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

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 [email protected] 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

HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013

HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013 HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013 Riley Moses Bri Fidder Jon Lewis Introduction & Product Vision BIMShift is a company that provides all

More information

Using HTML5 Pack for ADOBE ILLUSTRATOR CS5

Using HTML5 Pack for ADOBE ILLUSTRATOR CS5 Using HTML5 Pack for ADOBE ILLUSTRATOR CS5 ii Contents Chapter 1: Parameterized SVG.....................................................................................................1 Multi-screen SVG.......................................................................................................4

More information

Lesson Review Answers

Lesson Review Answers Lesson Review Answers-1 Lesson Review Answers Lesson 1 Review 1. User-friendly Web page interfaces, such as a pleasing layout and easy navigation, are considered what type of issues? Front-end issues.

More information

Developer Tutorial Version 1. 0 February 2015

Developer Tutorial Version 1. 0 February 2015 Developer Tutorial Version 1. 0 Contents Introduction... 3 What is the Mapzania SDK?... 3 Features of Mapzania SDK... 4 Mapzania Applications... 5 Architecture... 6 Front-end application components...

More information

Software Requirements Specification For Real Estate Web Site

Software Requirements Specification For Real Estate Web Site Software Requirements Specification For Real Estate Web Site Brent Cross 7 February 2011 Page 1 Table of Contents 1. Introduction...3 1.1. Purpose...3 1.2. Scope...3 1.3. Definitions, Acronyms, and Abbreviations...3

More information

Interactive Data Visualization for the Web Scott Murray

Interactive Data Visualization for the Web Scott Murray Interactive Data Visualization for the Web Scott Murray Technology Foundations Web technologies HTML CSS SVG Javascript HTML (Hypertext Markup Language) Used to mark up the content of a web page by adding

More information

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation Credit-By-Assessment (CBA) Competency List Written Assessment Competency List Introduction to the Internet

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

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

Data Visualization Frameworks: D3.js vs. Flot vs. Highcharts by Igor Zalutsky, JavaScript Developer at Altoros

Data Visualization Frameworks: D3.js vs. Flot vs. Highcharts by Igor Zalutsky, JavaScript Developer at Altoros Data Visualization Frameworks: D3.js vs. Flot vs. Highcharts by Igor Zalutsky, JavaScript Developer at Altoros 2013 Altoros, Any unauthorized republishing, rewriting or use of this material is prohibited.

More information

Why HTML5 Tests the Limits of Automated Testing Solutions

Why HTML5 Tests the Limits of Automated Testing Solutions Why HTML5 Tests the Limits of Automated Testing Solutions Why HTML5 Tests the Limits of Automated Testing Solutions Contents Chapter 1 Chapter 2 Chapter 3 Chapter 4 As Testing Complexity Increases, So

More information

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

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

More information

WEB DESIGN COURSE CONTENT

WEB DESIGN COURSE CONTENT WEB DESIGN COURSE CONTENT INTRODUCTION OF WEB TECHNOLOGIES Careers in Web Technologies How Websites are working Domain Types and Server About Static and Dynamic Websites Web 2.0 Standards PLANNING A BASIC

More information

Study on Parallax Scrolling Web Page Conversion Module

Study on Parallax Scrolling Web Page Conversion Module Study on Parallax Scrolling Web Page Conversion Module Song-Nian Wang * and Fong-Ming Shyu Department of Multimedia Design, National Taichung University of Science and Technology [email protected], [email protected]

More information

Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator

Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator Written by: Chris Jaun ([email protected]) Sudha Piddaparti ([email protected]) Objective In this

More information

Backbase Accessibility

Backbase Accessibility Whitepaper Learn about: Section 508 Accessibility requirements Backbase compliance Introduction This paper discusses the growing importance of Rich Internet Applications (RIA s) and their support for Accessibility.

More information

Dreamweaver CS5. Module 2: Website Modification

Dreamweaver CS5. Module 2: Website Modification Dreamweaver CS5 Module 2: Website Modification Dreamweaver CS5 Module 2: Website Modification Last revised: October 31, 2010 Copyrights and Trademarks 2010 Nishikai Consulting, Helen Nishikai Oakland,

More information

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o :

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o : Version: 0.1 Date: 20.07.2009 Author(s): Doddy Satyasree AJAX Person responsable: Doddy Satyasree Language: English Term Paper History Version Status Date 0.1 Draft Version created 20.07.2009 0.2 Final

More information

Apple Applications > Safari 2008-10-15

Apple Applications > Safari 2008-10-15 Safari User Guide for Web Developers Apple Applications > Safari 2008-10-15 Apple Inc. 2008 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system,

More information

separate the content technology display or delivery technology

separate the content technology display or delivery technology Good Morning. In the mobile development space, discussions are often focused on whose winning the mobile technology wars how Android has the greater share of the mobile market or how Apple is has the greatest

More information

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support General principles and architecture of Adlib and Adlib API Petra Otten Manager Customer Support Adlib Database management program, mainly for libraries, museums and archives 1600 customers in app. 30 countries

More information

Introduction to web development and JavaScript

Introduction to web development and JavaScript Objectives Chapter 1 Introduction to web development and JavaScript Applied Load a web page from the Internet or an intranet into a web browser. View the source code for a web page in a web browser. Knowledge

More information

Content Author's Reference and Cookbook

Content Author's Reference and Cookbook Sitecore CMS 6.5 Content Author's Reference and Cookbook Rev. 110621 Sitecore CMS 6.5 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents

More information

^/ CS> KRIS. JAMSA, PhD, MBA. y» A- JONES & BARTLETT LEARNING

^/ CS> KRIS. JAMSA, PhD, MBA. y» A- JONES & BARTLETT LEARNING %\ ^/ CS> v% Sr KRIS JAMSA, PhD, MBA y» A- JONES & BARTLETT LEARNING Brief Contents Acknowledgments Preface Getting Started with HTML Integrating Images Using Hyperlinks to Connect Content Presenting Lists

More information

Responsive Web Design Creative License

Responsive Web Design Creative License Responsive Web Design Creative License Level: Introduction - Advanced Duration: 16 Days Time: 9:30 AM - 4:30 PM Cost: 2197 Overview Web design today is no longer just about cross-browser compatibility.

More information

COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida

COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida CREDIT HOURS 3 credits hours PREREQUISITE Completion of EME 6208 with a passing

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 [email protected] Michael J. Donahoo 2 [email protected] Abstract: One of the main goals of web application

More information

Logi Ad Hoc Reporting System Administration Guide

Logi Ad Hoc Reporting System Administration Guide Logi Ad Hoc Reporting System Administration Guide Version 11.2 Last Updated: March 2014 Page 2 Table of Contents INTRODUCTION... 4 Target Audience... 4 Application Architecture... 5 Document Overview...

More information

JISIS and Web Technologies

JISIS and Web Technologies 27 November 2012 Status: Draft Author: Jean-Claude Dauphin JISIS and Web Technologies I. Introduction This document does aspire to explain how J-ISIS is related to Web technologies and how to use J-ISIS

More information

Introduction to D3.js Interactive Data Visualization in the Web Browser

Introduction to D3.js Interactive Data Visualization in the Web Browser Datalab Seminar Introduction to D3.js Interactive Data Visualization in the Web Browser Dr. Philipp Ackermann Sample Code: http://github.engineering.zhaw.ch/visualcomputinglab/cgdemos 2016 InIT/ZHAW Visual

More information

An Introduction to KeyLines and Network Visualization

An Introduction to KeyLines and Network Visualization An Introduction to KeyLines and Network Visualization 1. What is KeyLines?... 2 2. Benefits of network visualization... 2 3. Benefits of KeyLines... 3 4. KeyLines architecture... 3 5. Uses of network visualization...

More information

CaptainCasa. CaptainCasa Enterprise Client. CaptainCasa Enterprise Client. Feature Overview

CaptainCasa. CaptainCasa Enterprise Client. CaptainCasa Enterprise Client. Feature Overview Feature Overview Page 1 Technology Client Server Client-Server Communication Client Runtime Application Deployment Java Swing based (JRE 1.6), generic rich frontend client. HTML based thin frontend client

More information

Whitepapers at Amikelive.com

Whitepapers at Amikelive.com Brief Overview view on Web Scripting Languages A. Web Scripting Languages This document will review popular web scripting languages[1,2,12] by evaluating its history and current trends. Scripting languages

More information

GCE APPLIED ICT A2 COURSEWORK TIPS

GCE APPLIED ICT A2 COURSEWORK TIPS GCE APPLIED ICT A2 COURSEWORK TIPS COURSEWORK TIPS A2 GCE APPLIED ICT If you are studying for the six-unit GCE Single Award or the twelve-unit Double Award, then you may study some of the following coursework

More information

IE Class Web Design Curriculum

IE Class Web Design Curriculum Course Outline Web Technologies 130.279 IE Class Web Design Curriculum Unit 1: Foundations s The Foundation lessons will provide students with a general understanding of computers, how the internet works,

More information

Curl Building RIA Beyond AJAX

Curl Building RIA Beyond AJAX Rich Internet Applications for the Enterprise The Web has brought about an unprecedented level of connectivity and has put more data at our fingertips than ever before, transforming how we access information

More information

Skills for Employment Investment Project (SEIP)

Skills for Employment Investment Project (SEIP) Skills for Employment Investment Project (SEIP) Standards/ Curriculum Format For Web Design Course Duration: Three Months 1 Course Structure and Requirements Course Title: Web Design Course Objectives:

More information

Bitrix Site Manager 4.1. User Guide

Bitrix Site Manager 4.1. User Guide Bitrix Site Manager 4.1 User Guide 2 Contents REGISTRATION AND AUTHORISATION...3 SITE SECTIONS...5 Creating a section...6 Changing the section properties...8 SITE PAGES...9 Creating a page...10 Editing

More information

WEB DEVELOPMENT IA & IB (893 & 894)

WEB DEVELOPMENT IA & IB (893 & 894) DESCRIPTION Web Development is a course designed to guide students in a project-based environment in the development of up-to-date concepts and skills that are used in the development of today s websites.

More information

Learning HTML5 Game Programming

Learning HTML5 Game Programming Learning HTML5 Game Programming A Hands-on Guide to Building Online Games Using Canvas, SVG, and WebGL James L. Williams AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York

More information

Ajax Development with ASP.NET 2.0

Ajax Development with ASP.NET 2.0 Ajax Development with ASP.NET 2.0 Course No. ISI-1071 3 Days Instructor-led, Hands-on Introduction This three-day intensive course introduces a fast-track path to understanding the ASP.NET implementation

More information

D3.JS: Data-Driven Documents

D3.JS: Data-Driven Documents D3.JS: Data-Driven Documents Roland van Dierendonck Leiden University [email protected] Sam van Tienhoven Leiden University [email protected] Thiago Elid Leiden University [email protected]

More information

J j enterpririse. Oracle Application Express 3. Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX

J j enterpririse. Oracle Application Express 3. Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX Oracle Application Express 3 The Essentials and More Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX Arie Geller Matthew Lyon J j enterpririse PUBLISHING BIRMINGHAM

More information

What's New in BarTender 2016

What's New in BarTender 2016 What's New in BarTender 2016 WHITE PAPER Contents Introduction 3 64-bit BarTender Installation 3 Data Entry Forms 3 BarTender Integration Builder 3 BarTender Print Portal 3 Other Upgrades 3 64-bit BarTender

More information

WEB DEVELOPMENT COURSE (PHP/ MYSQL)

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

More information

Designing The User Experience. 2010 AIGA Design Camp

Designing The User Experience. 2010 AIGA Design Camp Designing The User Experience 2010 AIGA Design Camp TABLE OF CONTENTS Designing The User Experience...1 Definitions:...3 User Experience... 3 Interaction Design... 3 Experience Design... 3 Information

More information

Using Microsoft Word. Working With Objects

Using Microsoft Word. Working With Objects Using Microsoft Word Many Word documents will require elements that were created in programs other than Word, such as the picture to the right. Nontext elements in a document are referred to as Objects

More information

Some Issues on Ajax Invocation

Some Issues on Ajax Invocation Some Issues on Ajax Invocation I. Introduction AJAX is a set of technologies that together a website to be -or appear to be- highly responsive. This is achievable due to the following natures of AJAX[1]:

More information

Best Practice in Web Design

Best Practice in Web Design Best Practice in Web Design Irrespective of whether you are intending to use a flat 'brochureware' website or an interactive e- commerce site, the overall look and feel of your website will play an important

More information

PROJECT MANAGEMENT SYSTEM

PROJECT MANAGEMENT SYSTEM Requirement Analysis Document v.2 14.12.2009 CENG-401 SOFTWARE ENGINEER PROJECT MANAGEMENT SYSTEM (Project Manager) Ahmet Edip SEÇKİN 07010555 (Developer) Erhan ŞEN 07010507 (Developer) Semih Serdar CENGİZOĞLU

More information

Facebook Twitter YouTube Google Plus Website Email. o Zooming and Panning. Panel. 3D commands. o Working with Canvas

Facebook Twitter YouTube Google Plus Website Email. o Zooming and Panning. Panel. 3D commands. o Working with Canvas WEB DESIGN COURSE COURSE COVERS: Photoshop HTML 5 CSS 3 Design Principles Usability / UI Design BOOTSTRAP 3 JAVASCRIPT JQUERY CSS Animation Optimizing of Web SYLLABUS FEATURES 2 Hours of Daily Classroom

More information

Basic tutorial for Dreamweaver CS5

Basic tutorial for Dreamweaver CS5 Basic tutorial for Dreamweaver CS5 Creating a New Website: When you first open up Dreamweaver, a welcome screen introduces the user to some basic options to start creating websites. If you re going to

More information

Chapter 10: Multimedia and the Web

Chapter 10: Multimedia and the Web Understanding Computers Today and Tomorrow 12 th Edition Chapter 10: Multimedia and the Web Learning Objectives Define Web-based multimedia and list some advantages and disadvantages of using multimedia.

More information

Title: Front-end Web Design, Back-end Development, & Graphic Design Levi Gable Web Design Seattle WA

Title: Front-end Web Design, Back-end Development, & Graphic Design Levi Gable Web Design Seattle WA Page name: Home Keywords: Web, design, development, logo, freelance, graphic design, Seattle WA, WordPress, responsive, mobile-friendly, communication, friendly, professional, frontend, back-end, PHP,

More information

Visual WebGui for ASP.NET Ajax (and other Ajax) Web Developers Learn what makes Visual WebGui not just another Ajax framework

Visual WebGui for ASP.NET Ajax (and other Ajax) Web Developers Learn what makes Visual WebGui not just another Ajax framework Visual WebGui for ASP.NET Ajax (and other Ajax) Web Developers Learn what makes Visual WebGui not just another Ajax framework Gizmox LTD. v. 1.0.0 7/2009 By: Itzik Spitzen, VP R&D 1 Table of contents Introduction...

More information

38 Essential Website Redesign Terms You Need to Know

38 Essential Website Redesign Terms You Need to Know 38 Essential Website Redesign Terms You Need to Know Every industry has its buzzwords, and web design is no different. If your head is spinning from seemingly endless jargon, or if you re getting ready

More information

Visualizing Software Projects in JavaScript

Visualizing Software Projects in JavaScript Visualizing Software Projects in JavaScript Tim Disney Abstract Visualization techniques have been used to help programmers deepen their understanding of large software projects. However the existing visualization

More information

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev International Journal "Information Technologies & Knowledge" Vol.5 / 2011 319 AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev Abstract: This paper presents a new approach

More information

AJAX: Highly Interactive Web Applications. Jason Giglio. [email protected]

AJAX: Highly Interactive Web Applications. Jason Giglio. jgiglio@netmar.com AJAX 1 Running head: AJAX AJAX: Highly Interactive Web Applications Jason Giglio [email protected] AJAX 2 Abstract AJAX stands for Asynchronous JavaScript and XML. AJAX has recently been gaining attention

More information

Overview of Microsoft Office Word 2007

Overview of Microsoft Office Word 2007 Overview of Microsoft Office What Is Word Processing? Office is a word processing software application whose purpose is to help you create any type of written communication. A word processor can be used

More information

Front-End Performance Testing and Optimization

Front-End Performance Testing and Optimization Front-End Performance Testing and Optimization Abstract Today, web user turnaround starts from more than 3 seconds of response time. This demands performance optimization on all application levels. Client

More information

Evaluation of Nagios for Real-time Cloud Virtual Machine Monitoring

Evaluation of Nagios for Real-time Cloud Virtual Machine Monitoring University of Victoria Faculty of Engineering Fall 2009 Work Term Report Evaluation of Nagios for Real-time Cloud Virtual Machine Monitoring Department of Physics University of Victoria Victoria, BC Michael

More information

International Journal of Engineering Technology, Management and Applied Sciences. www.ijetmas.com November 2014, Volume 2 Issue 6, ISSN 2349-4476

International Journal of Engineering Technology, Management and Applied Sciences. www.ijetmas.com November 2014, Volume 2 Issue 6, ISSN 2349-4476 ERP SYSYTEM Nitika Jain 1 Niriksha 2 1 Student, RKGITW 2 Student, RKGITW Uttar Pradesh Tech. University Uttar Pradesh Tech. University Ghaziabad, U.P., India Ghaziabad, U.P., India ABSTRACT Student ERP

More information

CSE 203 Web Programming 1. Prepared by: Asst. Prof. Dr. Maryam Eskandari

CSE 203 Web Programming 1. Prepared by: Asst. Prof. Dr. Maryam Eskandari CSE 203 Web Programming 1 Prepared by: Asst. Prof. Dr. Maryam Eskandari Outline Basic concepts related to design and implement a website. HTML/XHTML Dynamic HTML Cascading Style Sheets (CSS) Basic JavaScript

More information

Up and Running with LabVIEW Web Services

Up and Running with LabVIEW Web Services Up and Running with LabVIEW Web Services July 7, 2014 Jon McBee Bloomy Controls, Inc. LabVIEW Web Services were introduced in LabVIEW 8.6 and provide a standard way to interact with an application over

More information

Administrator s Guide

Administrator s Guide SEO Toolkit 1.3.0 for Sitecore CMS 6.5 Administrator s Guide Rev: 2011-06-07 SEO Toolkit 1.3.0 for Sitecore CMS 6.5 Administrator s Guide How to use the Search Engine Optimization Toolkit to optimize your

More information

Abstract. Description

Abstract. Description Project title: Bloodhound: Dynamic client-side autocompletion features for the Apache Bloodhound ticket system Name: Sifa Sensay Student e-mail: [email protected] Student Major: Software Engineering

More information

JavaScript and jquery for Data Analysis and Visualization

JavaScript and jquery for Data Analysis and Visualization Brochure More information from http://www.researchandmarkets.com/reports/2766360/ JavaScript and jquery for Data Analysis and Visualization Description: Go beyond design concepts build dynamic data visualizations

More information

A Web- based Approach to Music Library Management. Jason Young California Polytechnic State University, San Luis Obispo June 3, 2012

A Web- based Approach to Music Library Management. Jason Young California Polytechnic State University, San Luis Obispo June 3, 2012 A Web- based Approach to Music Library Management Jason Young California Polytechnic State University, San Luis Obispo June 3, 2012 Abstract This application utilizes modern standards developing in web

More information

Research on HTML5 in Web Development

Research on HTML5 in Web Development Research on HTML5 in Web Development 1 Ch Rajesh, 2 K S V Krishna Srikanth 1 Department of IT, ANITS, Visakhapatnam 2 Department of IT, ANITS, Visakhapatnam Abstract HTML5 is everywhere these days. HTML5

More information

LAMBDA CONSULTING GROUP Legendary Academy of Management & Business Development Advisories

LAMBDA CONSULTING GROUP Legendary Academy of Management & Business Development Advisories Curriculum # 05 Four Months Certification Program WEB DESIGNING & DEVELOPMENT LAMBDA CONSULTING GROUP Legendary Academy of Management & Business Development Advisories The duration of The Course is Four

More information

01/42. Lecture notes. html and css

01/42. Lecture notes. html and css web design and applications Web Design and Applications involve the standards for building and Rendering Web pages, including HTML, CSS, SVG, Ajax, and other technologies for Web Applications ( WebApps

More information

COURSE OUTLINE FACULTY OF INFORMATION AND COMMUNICATION TECHNOLOGY UNIVERSITI TEKNIKAL MALAYSIA MELAKA

COURSE OUTLINE FACULTY OF INFORMATION AND COMMUNICATION TECHNOLOGY UNIVERSITI TEKNIKAL MALAYSIA MELAKA COURSE OUTLINE FACULTY OF INFORMATION AND COMMUNICATION TECHNOLOGY UNIVERSITI TEKNIKAL MALAYSIA MELAKA ADOBE DREAMWEAVER AUTHORING TOOL DTM 3612 SEMESTER 1 SESI 2010/2011 DTM 3612 ADOBE DREAMWEAVER AUTHORING

More information

Portal Connector Fields and Widgets Technical Documentation

Portal Connector Fields and Widgets Technical Documentation Portal Connector Fields and Widgets Technical Documentation 1 Form Fields 1.1 Content 1.1.1 CRM Form Configuration The CRM Form Configuration manages all the fields on the form and defines how the fields

More information

LabVIEW Internet Toolkit User Guide

LabVIEW Internet Toolkit User Guide LabVIEW Internet Toolkit User Guide Version 6.0 Contents The LabVIEW Internet Toolkit provides you with the ability to incorporate Internet capabilities into VIs. You can use LabVIEW to work with XML documents,

More information

Rich-Internet Anwendungen auf Basis von ColdFusion und Ajax

Rich-Internet Anwendungen auf Basis von ColdFusion und Ajax Rich-Internet Anwendungen auf Basis von ColdFusion und Ajax Sven Ramuschkat [email protected] München & Zürich, März 2009 A bit of AJAX history XMLHttpRequest introduced in IE5 used in

More information

TUTORIAL 4 Building a Navigation Bar with Fireworks

TUTORIAL 4 Building a Navigation Bar with Fireworks TUTORIAL 4 Building a Navigation Bar with Fireworks This tutorial shows you how to build a Macromedia Fireworks MX 2004 navigation bar that you can use on multiple pages of your website. A navigation bar

More information

Short notes on webpage programming languages

Short notes on webpage programming languages Short notes on webpage programming languages What is HTML? HTML is a language for describing web pages. HTML stands for Hyper Text Markup Language HTML is a markup language A markup language is a set of

More information

WEB, HYBRID, NATIVE EXPLAINED CRAIG ISAKSON. June 2013 MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER

WEB, HYBRID, NATIVE EXPLAINED CRAIG ISAKSON. June 2013 MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER WEB, HYBRID, NATIVE EXPLAINED June 2013 CRAIG ISAKSON MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER 701.235.5525 888.sundog fax: 701.235.8941 2000 44th St. S Floor 6 Fargo, ND 58103 www.sundoginteractive.com

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

Chapter 12: Advanced topic Web 2.0

Chapter 12: Advanced topic Web 2.0 Chapter 12: Advanced topic Web 2.0 Contents Web 2.0 DOM AJAX RIA Web 2.0 "Web 2.0" refers to the second generation of web development and web design that facilities information sharing, interoperability,

More information