opalang - Rapid & Secure Web Development

Size: px
Start display at page:

Download "opalang - Rapid & Secure Web Development"

Transcription

1 opalang - Rapid & Secure Web Development

2 Syllabus Brief History of Web Development Ideas and Goals The Language itself Community Reason for Development Services and Apps written in OPA Future of OPA OPA vs (OCaml vs. Ruby) Roundup and Conclusion

3 History of Web Development 1989 HTTP by Roy Fielding and Tim Berners-Lee 1992 the HyperText Markup Language was developed by the World Wide Web-consortium 1993 the Cascading Style Sheet (CSS) was defined for styling and for separating design and content 1995 Brendan Eich released the first Version of Javascript, the first client side scripting language for the Netscape Browser 1998 XML-RPC which progression led to SOAP Between 2000 and 2015 the so called browser-wars took place. new Versions CSS/HTML and Javascript many other improvements and protocols added to browsers

4 Idea and Goals

5 solve various problems in web development What do we want? security scalability flexibility

6 If I were to say what is the biggest problem of the web development today, I would answer without much thinking: a bunch of technologies piled on top of one another ( ), that you need to harness to work together (sometimes against their will).. - Adam Koprowski a core Developer opalang

7 The Idea choose technologies which work together use only technologies with the same attributes one language for everything (for the developer) flexibility, scalability and safety as main goal

8 Components of an OPA Application OPA is a full-stack application: server (backend) programming (NodeJS) client (frontend) programming (JavaScript) database programming (MongoDB)

9 The Language Itself functional static type system type inference pattern matching message passing

10 Lexical Conventions C/C++/Java/JavaScript-style

11 Simple Datatypes

12 Defining Functions

13 Partial applications Modules

14 Typing OPA is a statically and strong typed checked language. Expression has one unique type Can only be used as this Return values can be a result or also data-types.

15 Type Inference solution has the type of [int] because 42 is an Integer (bool, int, int) -> int

16 Polymorphism well known in functional programming languages Key feature OCaml, Haskell, R even in Ruby 2 Types of Polymorphism in OPA Ad-hoc Polymorphism Parametric polymorphism

17 Example Polymorphism ( a -> a) a is an type variable if x would be a boolean the a will be instantiate with bool

18 Pattern & Patternmatching The expression expr is matched against each pattern in sequence

19 How does it work? Calm down: IT s Demo Time

20 Community and Surrounding

21 3 main communities in web development PHP Ruby on Rails Django Server and Client - Javascript (slow?) Hard to Switch old communities - old behaviours

22

23

24

25 License Problem main criticism was not technology but licensing OPA was released under the Affero GPL (AGPL) license ensures that improvements are also for community every program written in OPA, that links to the runtime, enforces developers to release the source code.

26 The Solution GPL license with the so-called ClassPath exception, like Java you can link GLP code with any code opening the door to license your application under any license

27 Alternatives

28 Reasons for Development web development was not really fun most tutorials and examples are in PHP PHP has an very sluggish development PHP doesn t have the best security history new programming paradigm added (too) late

29 Reasons for Development Ruby on Rails and Django: good for rapid and agile web development two or more languages to handle (JS, Ruby, Python, CSS, HTML) hard to setup the full-stack (database, application) have to know about MongoDB/ngnix/Apache/Unicorn secure the communication between each layer

30 after much time and outbursts of anger: Is it flexible? Does it scale? Is it secure? Have we tested it? (no)

31 Services Written in OPA Hard to detect, end product is Node.js and JavaScript A good way to find projects is Github One example: RiskyBird Online RegEx Editor

32 OPA vs. OCaml OPA OCAML FUNCTIONAL PATTERN MATCHING TYPER INFERCE POLYMORPH -ISM MODULES TAIL RECURSION AUTO GARBAGE COLLECTION

33 OPA vs. Ruby OPA RUBY FUNCTIONAL (can be used) PATTERN MATCHING TYPER INFERCE (other Typing System) POLYMORPH -ISM MODULES TAIL RECURSION (but you can do it) AUTO GARBAGE COLLECTION (coming in 2.1)

34 Future of OPA No informations are given on the web Developer did not answer my ( we can only guess - hopefully it will be developed further

35 Roundup OPA - functional language, developed to make web development easy and (more) secure. Single language compiles code to NodeJS, MongoDB and JavaScript Result is a full-stack web application flexible, scalable and secure not community friendly, but functional

36 Conclusion a new and developer friendly way for web developing robust runtime and perfect cooperation between all layers powerful language (keyword: tail recursion) Focus on your application not the technology

Modern Web Development From Angle Brackets to Web Sockets

Modern Web Development From Angle Brackets to Web Sockets Modern Web Development From Angle Brackets to Web Sockets Pete Snyder Outline (or, what am i going to be going on about ) 1.What is the Web? 2.Why the web matters 3.What s unique about

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

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

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 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

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

Web Development. How the Web Works 3/3/2015. Clients / Server

Web Development. How the Web Works 3/3/2015. Clients / Server Web Development WWW part of the Internet (others: Email, FTP, Telnet) Loaded to a Server Viewed in a Browser (Client) Clients / Server Client: Request & Render Content Browsers, mobile devices, screen

More information

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

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

More information

Software development & technologies in Market Research industry

Software development & technologies in Market Research industry Software development & technologies in Market Research industry Ember.js, PHP, ConfirmIt & Dimensions October 2014 1 ROC Online 2 Who we are and what we do? Team & Skills Process Software/Frameworks/Products

More information

By : Khalid Alfalqi Department of Computer Science, Umm Al-Qura University

By : Khalid Alfalqi Department of Computer Science, Umm Al-Qura University By : Khalid Alfalqi Department of Computer Science, Umm Al-Qura University History of Web History of the Internet Basic Web System Architecture URL DNS Creating Static and Dynamic Information Security

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

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence Brief Course Overview An introduction to Web development Server-side Scripting Web Servers PHP Client-side Scripting HTML & CSS JavaScript &

More information

Web Service Testing. SOAP-based Web Services. Software Quality Assurance Telerik Software Academy http://academy.telerik.com

Web Service Testing. SOAP-based Web Services. Software Quality Assurance Telerik Software Academy http://academy.telerik.com Web Service Testing SOAP-based Web Services Software Quality Assurance Telerik Software Academy http://academy.telerik.com The Lectors Snejina Lazarova Product Manager Talent Management System Dimo Mitev

More information

4.2 Understand Microsoft ASP.NET Web Application Development

4.2 Understand Microsoft ASP.NET Web Application Development L E S S O N 4 4.1 Understand Web Page Development 4.2 Understand Microsoft ASP.NET Web Application Development 4.3 Understand Web Hosting 4.4 Understand Web Services MTA Software Fundamentals 4 Test L

More information

Trollhättan, Sweden. http://keryx.se/ http://twitter.com/itpastorn/ http://itpastorn.blogspot.com/

Trollhättan, Sweden. http://keryx.se/ http://twitter.com/itpastorn/ http://itpastorn.blogspot.com/ Trollhättan, Sweden Lars Gunther is a web developer, computer science teacher and a pastor, who lives in Trollhättan, Sweden. He is the lead editor of several courses for WaSP Interact and invited expert

More information

Avaya Inventory Management System

Avaya Inventory Management System Avaya Inventory Management System June 15, 2015 Jordan Moser Jin Oh Erik Ponder Gokul Natesan Table of Contents 1. Introduction 1 2. Requirements 2-3 3. System Architecture 4 4. Technical Design 5-6 5.

More information

Scripts. MIT s Dynamic Web Hosting Service

Scripts. MIT s Dynamic Web Hosting Service Scripts MIT s Dynamic Web Hosting Service Overview Scripts serves web apps from your home directory in AFS (/mit/your- username/web_scripts on Athena)! Autoinstaller does all the hard setting up of a web

More information

What is a stack? Do I need to know?

What is a stack? Do I need to know? What is a stack? Do I need to know? WIMP, WAMP, LAMP, LIMP A collection of software that inter-operates to complete a task. Why think about it? Standards Scale Security 61.240.144.67 - "GET / HTTP/1.0"

More information

IT3504: Web Development Techniques (Optional)

IT3504: Web Development Techniques (Optional) INTRODUCTION : Web Development Techniques (Optional) This is one of the three optional courses designed for Semester 3 of the Bachelor of Information Technology Degree program. This course on web development

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

Class and Office Hours. Course Requirements. Concepts to Learn. CMPUT 499: Introduction

Class and Office Hours. Course Requirements. Concepts to Learn. CMPUT 499: Introduction Web Technologies and Applications Winter 2001 CMPUT 499: Introduction Dr. Osmar R. Zaïane Class and Office Hours Class: Tuesdays and Thursdays from 11:00 to 12:20 Office Hours: Tuesdays and Thursdays from

More information

Lesson Overview. Getting Started. The Internet WWW

Lesson Overview. Getting Started. The Internet WWW Lesson Overview Getting Started Learning Web Design: Chapter 1 and Chapter 2 What is the Internet? History of the Internet Anatomy of a Web Page What is the Web Made Of? Careers in Web Development Web-Related

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

Tech Radar - May 2015

Tech Radar - May 2015 Tech Radar - May 2015 Or how Obecto is staying fresh and current with new technologies and tools, while maintaining its focus on the industry standards. This is our May 15 edition of the Obecto Tech Radar.

More information

THE ROAD TO CODE. ANDROID DEVELOPMENT IMMERSIVE May 31. WEB DEVELOPMENT IMMERSIVE May 31 GENERAL ASSEMBLY

THE ROAD TO CODE. ANDROID DEVELOPMENT IMMERSIVE May 31. WEB DEVELOPMENT IMMERSIVE May 31 GENERAL ASSEMBLY THE ROAD TO CODE WEB DEVELOPMENT IMMERSIVE May 31 ANDROID DEVELOPMENT IMMERSIVE May 31 GENERAL ASSEMBLY GENERAL ASSEMBLY @GA_CHICAGO WWW.FACEBOOK.COM/GENERALASSEMBLYCHI @GA_CHICAGO GENERAL ASSEMBLY GENERAL

More information

What s really under the hood? How I learned to stop worrying and love Magento

What s really under the hood? How I learned to stop worrying and love Magento What s really under the hood? How I learned to stop worrying and love Magento Who am I? Alan Storm http://alanstorm.com Got involved in The Internet/Web 1995 Work in the Agency/Startup Space 10 years php

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

Link Analysis Tool Design Description Final Version

Link Analysis Tool Design Description Final Version Link Analysis Tool Design Description Final Version Doc. No.: Revision History Date Version Description Author 2010-10-08 1.0 Initial Draft Hassan Aziz Khan 2010-11-06 1.1 2 nd Draft Hassan Aziz Khan

More information

Business & Computing Examinations (BCE) LONDON (UK)

Business & Computing Examinations (BCE) LONDON (UK) Business & Computing Examinations (BCE) LONDON (UK) Web Design Qualification Analysis & Occupational Outlook The development of BCE qualifications include extensive market research from the following sources:

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

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

Using Ruby on Rails for Web Development. Introduction Guide to Ruby on Rails: An extensive roundup of 100 Ultimate Resources

Using Ruby on Rails for Web Development. Introduction Guide to Ruby on Rails: An extensive roundup of 100 Ultimate Resources Using Ruby on Rails for Web Development Introduction Guide to Ruby on Rails: An extensive roundup of 100 Ultimate Resources Ruby on Rails 100 Success Secrets Copyright 2008 Notice of rights All rights

More information

www.expaway.com Offerte del 13 giugno 2014

www.expaway.com Offerte del 13 giugno 2014 www.expaway.com Offerte del 13 giugno 2014 TR1414A - SOFTWARE DEVELOPER/ ARCHITECT (GERLINGEN) Location: Gerlingen (9 km west of Stuttgart) Field of operation: Consumer Services Founded: 2011 and German

More information

Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

More information

Attacking MongoDB. Firstov Mihail

Attacking MongoDB. Firstov Mihail Attacking MongoDB Firstov Mihail What is it? MongoDB is an open source document-oriented database system. Features : 1. Ad hoc queries. 2. Indexing 3. Replication 4. Load balancing 5. File storage 6. Aggregation

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

IT3503 Web Development Techniques (Optional)

IT3503 Web Development Techniques (Optional) INTRODUCTION Web Development Techniques (Optional) This is one of the three optional courses designed for Semester 3 of the Bachelor of Information Technology Degree program. This course on web development

More information

Web Application Development

Web Application Development Web Application Development Seminar OHJ-1820 Tampere University of Technology Fall 2007 http://www.cs.tut.fi/~taivalsa/kurssit/wads2007 Prof. Tommi Mikkonen & Dr. Antero Taivalsaari Background and Motivation

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

Web 2.0 Technology Overview. Lecture 8 GSL Peru 2014

Web 2.0 Technology Overview. Lecture 8 GSL Peru 2014 Web 2.0 Technology Overview Lecture 8 GSL Peru 2014 Overview What is Web 2.0? Sites use technologies beyond static pages of earlier websites. Users interact and collaborate with one another Rich user experience

More information

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application First Generation HTTP request (URL or Form posting) W HTTP response (HTML Document) W Client Tier Server Tier Data Tier Web CGI-Scripts

More information

Extending Tizen Native Framework with Node.js

Extending Tizen Native Framework with Node.js Extending Tizen Native Framework with Node.js Nishant Deshpande Hyunju Shin Ph.D. Samsung Electronics Contents Native or Web? Why JavaScript, Node.js? Proposed Architecture Sample Applications Going Forward

More information

AJAX The Future of Web Development?

AJAX The Future of Web Development? AJAX The Future of Web Development? Anders Moberg (dit02amg), David Mörtsell (dit01dml) and David Södermark (dv02sdd). Assignment 2 in New Media D, Department of Computing Science, Umeå University. 2006-04-28

More information

Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 3. Internet : the vast collection of interconnected networks that all use the TCP/IP protocols

Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 3. Internet : the vast collection of interconnected networks that all use the TCP/IP protocols E-Commerce Infrastructure II: the World Wide Web The Internet and the World Wide Web are two separate but related things Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 1 Outline The Internet and

More information

MEAN/Full Stack Web Development - Training Course Package

MEAN/Full Stack Web Development - Training Course Package Brochure More information from http://www.researchandmarkets.com/reports/3301786/ MEAN/Full Stack Web Development - Training Course Package Description: This course pack features a detailed exploration

More information

Integration the Web 2.0 way. Florian Daniel (daniel@disi.unitn.it) April 28, 2009

Integration the Web 2.0 way. Florian Daniel (daniel@disi.unitn.it) April 28, 2009 Web Mashups Integration the Web 2.0 way Florian Daniel (daniel@disi.unitn.it) April 28, 2009 What are we talking about? Mashup possible defintions...a mashup is a web application that combines data from

More information

HYBRID. Course Packet

HYBRID. Course Packet HYBRID Course Packet TABLE OF CONTENTS 2 HYBRID Overview 3 Schedule 4 Prerequisites 5 Admissions Process 6 What is a Full Stack? 7 Why Become a Full Stack Developer? 8 Inside the 3 Full Stacks: LAMP 9

More information

INTERESTED IN EXPANDING YOUR TECHNICAL SKILLS?

INTERESTED IN EXPANDING YOUR TECHNICAL SKILLS? INTERESTED IN EXPANDING YOUR TECHNICAL SKILLS? The ideal learning path to expand your technical knowledge differs based on your experience, goals, and how much time you have available to devote to practicing

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

Interested in Expanding your Technical Skills?

Interested in Expanding your Technical Skills? Interested in Expanding your Technical Skills? The ideal learning path to expand your technical knowledge differs based on your experience, goals, and how much time you have available to devote to practicing

More information

After completing SI- 539, students will have a working personal portfolio website in production.

After completing SI- 539, students will have a working personal portfolio website in production. SI 539, Fall 2014 Complex Web Design Lecture: Friday: 1:00pm 3:00pm *Must leave by 3:15 Discussion Sections Varies Office Hours*: Tues: 11:35 12:35 Wed mornings *Please check my Google Calendar for updates

More information

Layers of Caching: Key to scaling your website. Lance Albertson -- lance@osuosl.org Narayan Newton nnewton@tag1consulting.com

Layers of Caching: Key to scaling your website. Lance Albertson -- lance@osuosl.org Narayan Newton nnewton@tag1consulting.com Layers of Caching: Key to scaling your website Lance Albertson -- lance@osuosl.org Narayan Newton nnewton@tag1consulting.com Importance of Caching RAM is fast! Utilize resources more efficiently Improve

More information

Web Development Frameworks

Web Development Frameworks COMS E6125 Web-enHanced Information Management (WHIM) Web Development Frameworks Swapneel Sheth swapneel@cs.columbia.edu @swapneel Spring 2012 1 Topic 1 History and Background of Web Application Development

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

Open Source Content Management System for content development: a comparative study

Open Source Content Management System for content development: a comparative study Open Source Content Management System for content development: a comparative study D. P. Tripathi Assistant Librarian Biju Patnaik Central Library NIT Rourkela dptnitrkl@gmail.com Designing dynamic and

More information

CSE341: Programming Languages Lecture 7.5 Course Motivation. Dan Grossman Fall 2011

CSE341: Programming Languages Lecture 7.5 Course Motivation. Dan Grossman Fall 2011 CSE341: Programming Languages Lecture 7.5 Course Motivation Dan Grossman Fall 2011 Course Motivation (Did you think I forgot? ) Why learn languages that are quite different from Java, C, C++? Why learn

More information

An Oracle White Paper May 2011. Oracle Tuxedo: An Enterprise Platform for Dynamic Languages

An Oracle White Paper May 2011. Oracle Tuxedo: An Enterprise Platform for Dynamic Languages An Oracle White Paper May 2011 Oracle Tuxedo: An Enterprise Platform for Dynamic Languages Introduction Dynamic languages, also sometimes known as scripting languages, have been in existence for a long

More information

What about MongoDB? can req.body.input 0; var date = new Date(); do {curdate = new Date();} while(curdate-date<10000)

What about MongoDB? can req.body.input 0; var date = new Date(); do {curdate = new Date();} while(curdate-date<10000) Security What about MongoDB? Even though MongoDB doesn t use SQL, it can be vulnerable to injection attacks db.collection.find( {active: true, $where: function() { return obj.credits - obj.debits < req.body.input;

More information

From Desktop to Browser Platform: Office Application Suite with Ajax

From Desktop to Browser Platform: Office Application Suite with Ajax From Desktop to Browser Platform: Office Application Suite with Ajax Mika Salminen Helsinki University of Technology mjsalmi2@cc.hut.fi Abstract Web applications have usually been less responsive and provided

More information

Web Programming Languages Overview

Web Programming Languages Overview Web Programming Languages Overview Thomas Powell tpowell@pint.com Web Programming in Context Web Programming Toolbox ActiveX Controls Java Applets Client Side Helper Applications Netscape Plug-ins Scripting

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

You ll need to have: It d be great if you have:

You ll need to have: It d be great if you have: DevOps We re looking for a Development Operations Developer with a passion for experimentation. If you re interested in helping us build the future of mobile healthcare, this job is for you. A strong background

More information

Enable Your Automated Web App Testing by WebDriver. Yugang Fan Intel

Enable Your Automated Web App Testing by WebDriver. Yugang Fan Intel Enable Your Automated Web App Testing by WebDriver Yugang Fan Intel Agenda Background Challenges WebDriver BDD Behavior Driven Test Architecture Example WebDriver Based Behavior Driven Test Summary Reference

More information

Web. Programming. Hans- Pe0er Halvorsen, M.Sc. h0p://home.hit.no/~hansha/?page=sojware_development

Web. Programming. Hans- Pe0er Halvorsen, M.Sc. h0p://home.hit.no/~hansha/?page=sojware_development h0p://home.hit.no/~hansha/?page=sojware_development Web O. Widder. (2013). geek&poke. Available: h0p://geek- and- poke.com Programming Hans- Pe0er Halvorsen, M.Sc. 1 Web is the Present and the Future 2

More information

CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014

CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014 CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages Nicki Dell Spring 2014 What is a Programming Language? A set of symbols and associated tools that translate (if necessary) collections

More information

Architecture Workshop

Architecture Workshop TIE-13100 / TIE-13106 Tietotekniikan projektityö / Project Work on Pervasive Systems Architecture Workshop Hadaytullah Marko Leppänen 21.10.2014 Workshop Plan Start Technologies Table (Collaboration) Workshop

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

End User Guide The guide for email/ftp account owner

End User Guide The guide for email/ftp account owner End User Guide The guide for email/ftp account owner ServerDirector Version 3.7 Table Of Contents Introduction...1 Logging In...1 Logging Out...3 Installing SSL License...3 System Requirements...4 Navigating...4

More information

Drupal CMS for marketing sites

Drupal CMS for marketing sites Drupal CMS for marketing sites Intro Sample sites: End to End flow Folder Structure Project setup Content Folder Data Store (Drupal CMS) Importing/Exporting Content Database Migrations Backend Config Unit

More information

Scalable and Efficient Web Application Architectures. Thin-clients and SQL vs. Thick-clients and NoSQL

Scalable and Efficient Web Application Architectures. Thin-clients and SQL vs. Thick-clients and NoSQL Scalable and Efficient Web Application Architectures Thin-clients and SQL vs. Thick-clients and NoSQL Michael K. Gunnulfsen Master Thesis Spring 2013 Scalable and Efficient Web Application Architectures

More information

Web Applications: Overview and Architecture

Web Applications: Overview and Architecture Web Applications: Overview and Architecture Computer Science and Engineering College of Engineering The Ohio State University Lecture 1 Road Map in Pictures: Web App Road Map in Pictures Browser Request

More information

Brief Description of project: This project will be an interactive Javascript. 1. What do you want to accomplish by doing this project?

Brief Description of project: This project will be an interactive Javascript. 1. What do you want to accomplish by doing this project? Date: 10/9/2013 Title: History of Web Development Brief Description of project: This project will be an interactive Javascript presentation detailing the history of web development from its early days

More information

CSC309 Winter 2016 Lecture 3. Larry Zhang

CSC309 Winter 2016 Lecture 3. Larry Zhang CSC309 Winter 2016 Lecture 3 Larry Zhang 1 Why Javascript Javascript is for dynamically manipulate the front-end of your web page. Add/remove/change the content/attributes of an HTML element Change the

More information

Introduction to web development

Introduction to web development Santiago Canyon College CIS-132: Introduction to JavaScript Lesson 1 Introduction to web development (Chapter 1 in Murach s JavaScript & DOM Scripting textbook) Slide 1 Objectives Applied Load a web page

More information

Information Technology Career Cluster Web Development Course Number: 11.42500. Course Standard 1

Information Technology Career Cluster Web Development Course Number: 11.42500. Course Standard 1 Information Technology Career Cluster Web Development Course Number: 11.42500 Course Description: This course, with Hypertext Markup Language (HTML) and Cascading Style Sheet (CSS) as its foundation, will

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

Next Generation Lab. A solution for remote characterization of analog integrated circuits

Next Generation Lab. A solution for remote characterization of analog integrated circuits Next Generation Lab A solution for remote characterization of analog integrated circuits Background Goals Technologies Physical architecture Software architecture Conclusion Outline Background Based on

More information

Current Order Tool Experiences Complaints

Current Order Tool Experiences Complaints Current Order Tool Experiences Complaints Log in unadvertised case sensitivity for email address that is used as login id CERES Dataset Info pages are too crowded!! On the Data Products Catalog page, remove

More information

IBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience

IBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience IBM Digital Experience Using Modern Web Development Tools and Technology with IBM Digital Experience Agenda The 2015 web development landscape and IBM Digital Experience Modern web applications and frameworks

More information

Release: 1. ICAWEB414A Design simple web page layouts

Release: 1. ICAWEB414A Design simple web page layouts Release: 1 ICAWEB414A Design simple web page layouts ICAWEB414A Design simple web page layouts Modification History Release Release 1 Comments This Unit first released with ICA11 Information and Communications

More information

Technology and Online Computer Access Requirements: Lake-Sumter State College Course Syllabus

Technology and Online Computer Access Requirements: Lake-Sumter State College Course Syllabus Lake-Sumter State College Course Syllabus Course / Prefix Number CTS1832 Course Title: Web Authoring II CRN: 10009 Credit: 3 Term: Fall 2015 This course is a continuation of skills and concepts introduced

More information

How To Write A Web Server In Javascript

How To Write A Web Server In Javascript LIBERATED: A fully in-browser client and server web application debug and test environment Derrell Lipman University of Massachusetts Lowell Overview of the Client/Server Environment Server Machine Client

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

Java in Web 2.0. Alexis Roos Principal Field Technologist, CTO Office OEM SW Sales Sun Microsystems, Inc.

Java in Web 2.0. Alexis Roos Principal Field Technologist, CTO Office OEM SW Sales Sun Microsystems, Inc. Java in Web 2.0 Alexis Roos Principal Field Technologist, CTO Office OEM SW Sales Sun Microsystems, Inc. 1 Agenda Java overview Technologies supported by Java Platform to create Web 2.0 services Future

More information

Introduction to Cloud Computing. Lecture 02 History of Enterprise Computing Kaya Oğuz

Introduction to Cloud Computing. Lecture 02 History of Enterprise Computing Kaya Oğuz Introduction to Cloud Computing Lecture 02 History of Enterprise Computing Kaya Oğuz General Course Information The textbook: Enterprise Cloud Computing by Gautam Shroff (available at bookstore). Course

More information

Web [Application] Frameworks

Web [Application] Frameworks Web [Application] Frameworks conventional approach to building a web service write ad hoc client code in HTML, CSS, Javascript,... by hand write ad hoc server code in [whatever] by hand write ad hoc access

More information

OpenShift on you own cloud. Troy Dawson OpenShift Engineer, Red Hat tdawson@redhat.com November 1, 2013

OpenShift on you own cloud. Troy Dawson OpenShift Engineer, Red Hat tdawson@redhat.com November 1, 2013 OpenShift on you own cloud Troy Dawson OpenShift Engineer, Red Hat tdawson@redhat.com November 1, 2013 2 Infrastructure-as-a-Service Servers in the Cloud You must build and manage everything (OS, App Servers,

More information

Large-Scale Web Applications

Large-Scale Web Applications Large-Scale Web Applications Mendel Rosenblum Web Application Architecture Web Browser Web Server / Application server Storage System HTTP Internet CS142 Lecture Notes - Intro LAN 2 Large-Scale: Scale-Out

More information

A REST API for Arduino & the CC3000 WiFi Chip

A REST API for Arduino & the CC3000 WiFi Chip A REST API for Arduino & the CC3000 WiFi Chip Created by Marc-Olivier Schwartz Last updated on 2014-04-22 03:01:12 PM EDT Guide Contents Guide Contents Overview Hardware configuration Installing the library

More information

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify

More information

ios Hybrid Mobile Application Development

ios Hybrid Mobile Application Development ios Hybrid Mobile Application Development Siva RamaKrishna Ravuri Oct 06, 2012 2000 West Park Drive Westborough MA 01581 USA Phone:5083897300Fax:5083669901 The entire contents of this document are subject

More information

Web Designing with UI Designing

Web Designing with UI Designing Dear Student, Based upon your enquiry we are pleased to send you the course curriculum for Web Designing Given below is the brief description for the course you are looking for: Web Designing with UI Designing

More information

RIA Technologies Comparison

RIA Technologies Comparison RIA Technologies Comparison Focus Since the subject is huge I will first present a general view and then focus on more ( hopefully ) interesting parts Also, some key points need to be established: Technologies

More information

WEB& WEBSITE DESIGN TRAINING

WEB& WEBSITE DESIGN TRAINING WEB& WEBSITE DESIGN TRAINING Introduction to Websites Course Content: Introduction to Web Technologies Protocols and Port Numbers Domain Names, DNS and Domaining Client and Server Software. Static, Dynamic

More information

1.Full-Time Positions Marketing and Project Consultant

1.Full-Time Positions Marketing and Project Consultant 1.Full-Time Positions Marketing and Project Consultant As Oursky grows from a team of 3 to 35, we have scaled up our development, design, project management and QA team. While it was impressive that we

More information

Web Development I & II*

Web Development I & II* Web Development I & II* Career Cluster Information Technology Course Code 10161 Prerequisite(s) Computer Applications Introduction to Information Technology (recommended) Computer Information Technology

More information

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved.

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved. Reference Application Architecture Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-1, February, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents

More information

Rich User Interfaces for Web-Based Corporate Applications

Rich User Interfaces for Web-Based Corporate Applications Rich User Interfaces for Web-Based Corporate Applications Ivan Zapevalov, Software Engineer 1 Outline RIA technologies AJAX technology Widgets Demo application in JavaScript Demo application in GWT Web-catalog

More information

Understanding Evolution's Architecture A Technical Overview

Understanding Evolution's Architecture A Technical Overview Understanding Evolution's Architecture A Technical Overview Contents Introduction Understanding Evolution's Design Evolution Architecture Evolution Server Transports Evolution Benefits How Does Evolution

More information

Intro to Web Programming. using PHP, HTTP, CSS, and Javascript Layton Smith CSE 4000

Intro to Web Programming. using PHP, HTTP, CSS, and Javascript Layton Smith CSE 4000 Intro to Web Programming using PHP, HTTP, CSS, and Javascript Layton Smith CSE 4000 Intro Types in PHP Advanced String Manipulation The foreach construct $_REQUEST environmental variable Correction on

More information