A Practical Comparison of Agile Web Frameworks
|
|
- Lewis Owens
- 6 years ago
- Views:
Transcription
1 A Practical Agile Frame David Díaz Clavijo University of Las Palmas de Gran Canaria School of Computer Science Tutors: Cayetano Guerra Artal Alexis Quesada Arencibia Lydia Esther Bolaños Medina 1 February, 2014 david@diazclavijo.com Frame 1 / 43
2 Table of contents david@diazclavijo.com Frame 2 / 43
3 Outline Comparison Model Raible s matrix Wähner categorization 1 A Comparison Model of Agile Frame Raible s matrix Wähner categorization of david@diazclavijo.com Frame 3 / 43
4 Comparison Model Raible s matrix A Comparison Model of Agile Frame by The Technical University of Madrid Wähner categorization Matt Raible s speeches and his matrix Wähner comparison: categorizes by classifying them into different types of applications david@diazclavijo.com Frame 4 / 43
5 A Comparison Model of Agile Frame Comparison Model Raible s matrix Wähner categorization Parameter Rails Grails Trails Roma D.1 Are data migrations built-in in the development process? (20 %) D.2 Is schema database automatically inferred from domain definition? (40 %) P.1 Is there a generator of static presentation code for CRUD operations on models? (20 %) 100 % 0 % 0 % 0 % 0 % 100 % 100 % 100 % 100 % 100 % 100 % 100 % david@diazclavijo.com Frame 5 / 43
6 A Comparison Model of Agile Frame Comparison Model Raible s matrix Wähner categorization david@diazclavijo.com Frame 6 / 43
7 Raible s matrix Comparison Model Raible s matrix Wähner categorization david@diazclavijo.com Frame 7 / 43
8 Wähner categorization of Comparison Model Raible s matrix Wähner categorization david@diazclavijo.com Frame 8 / 43
9 Outline Objectives Comparison Project plan 1 2 Objectives Methodology for dissemination of the project Methodology for the comparison Project plan david@diazclavijo.com Frame 9 / 43
10 Objectives Objectives Comparison Project plan To analyze the state of technologies, focusing on agile To compare a set of agile through a practical test of the project david@diazclavijo.com Frame 10 / 43
11 Methodology for dissemination of the project Objectives Comparison Project plan Frame 11 / 43
12 Methodology for the comparison Objectives Comparison Project plan are chosen based on the following criteria: Results in previous comparisons Results in benchmarks Statistics of usage Popularity in the community A test is defined to be executed with each of the. This test consists in the following steps: Reading the language documentation (8 hours) Making the exercises to demonstrate language knowledge (12 hours) Reading the framework documentation (30 hours) Developing a simple site: A multiblog system with an author per blog, MyBlog (45 hours) david@diazclavijo.com Frame 12 / 43
13 Project Plan Objectives Comparison Project plan Frame 13 / 43
14 Outline Chosen Chosen david@diazclavijo.com Frame 14 / 43
15 chosen A cross-language set of was decided: Chosen david@diazclavijo.com Frame 15 / 43
16 chosen A cross-language set of was decided: Chosen - Innovator - Good in comparison david@diazclavijo.com Frame 15 / 43
17 chosen A cross-language set of was decided: Chosen - Innovator - Good in comparison - Java is highly used - It is Rails in JVM - Presence in other comparisons david@diazclavijo.com Frame 15 / 43
18 chosen A cross-language set of was decided: Chosen - Innovator - Good in comparison - Java is highly used - It is Rails in JVM - Presence in other comparisons - Python usage - Python s framework - Usage of Django david@diazclavijo.com Frame 15 / 43
19 chosen A cross-language set of was decided: Chosen - Innovator - Good in comparison - Java is highly used - It is Rails in JVM - Presence in other comparisons - Python usage - Python s framework - Usage of Django - PHP is the most used server-side language - Popularity david@diazclavijo.com Frame 15 / 43
20 Outline Programming exercises Development steps of Myblog Exercises for learning each language Development steps of Myblog david@diazclavijo.com Frame 16 / 43
21 Exercises for learning each language Programming exercises Development steps of Myblog Operations over files, strings and use of regular expressions Creation of a class to support operations from a number set The composite pattern: to practice inheritance david@diazclavijo.com Frame 17 / 43
22 Development steps of Myblog Programming exercises Development steps of Myblog User system with authentication CRUD operations with Blogs, Posts, Comments Adapting views to appear similar to what was designed: only in content. Good visual design is not an objective User-friendly URLs Frame 18 / 43
23 Outline Development Readability Exercises development Readability of david@diazclavijo.com Frame 19 / 43
24 Programming comparison Hours required in the exercises development Development Readability Exercises Ruby Groovy Python PHP Strings, files and regular expressions 4, Class of number set 4 2,5 1 2 Composite Pattern 1, ,5 TOTAL 10 6,5 4 4,5 david@diazclavijo.com Frame 20 / 43
25 Readability of Development Readability Ruby Code examples Is the list of numbers empty? numbersmap.size() == 0 Python len(self.the_set) == 0 PHP count($this-»arrayset); Collect the names of each element and write them in a paper called result item result+=item.tostring } Python for element in self.listcomponents: string += element.tostring() Groovy components.each{ string += it } PHP foreach ($this->list as $element){ $string.= $element-> tostring(); } david@diazclavijo.com Frame 21 / 43
26 Development Readability Groovy is 5 times faster than PHP, Ruby and Python. It is similar to Ruby Python is the language that has more useful libraries in this comparison. It is the language which allowed to finish development earlier Ruby is the most readable language. It is the language which needed more time to finish development too and the first one to develop with PHP is the second language which allowed to develop in shorter time. It is closer to C++, less readable than others in this comparison and it is designed for development david@diazclavijo.com Frame 22 / 43
27 Outline Timings Documentation Authentication CRUD functions Lines of code Hours in development Documentation comparison Authentication implementation CRUD functions Lines of code 7 david@diazclavijo.com Frame 23 / 43
28 Hours in development Timings Documentation Authentication CRUD functions Lines of code Frame 24 / 43
29 Documentation comparison Timings Documentation Authentication CRUD functions Lines of code Rails Django Complete and easy to understand Full of examples Differentiates between beginner and advanced Great support from the community Complete and easy to understand Full of examples Differentiates between beginner and advanced Great support from the community Grails Long documentation and difficult to understand Lack of examples It is not clearly differentiated between beginner and advanced CodeIgniter Poor support from the community Concise and easy to understand There are no many examples but they are not needed Enough support from the community Frame 25 / 43
30 Authentication implementation Timings Documentation Authentication CRUD functions Lines of code Rails Django A complete how-to to implement an own authentication system It required the least amount of time to finish: 13.5 hours It has an authentication system included in the core It needed 20 hours to be adapted to the requirements of the project Grails Several plugins to choose from Plugins documentation is difficult to understand It was tried to built an own system. Finally, a plugin was used It required the biggest amount of time: 31,5 hours CodeIgniter It has a library which is well accepted The library was copied into the project and adapted It required 15 hours david@diazclavijo.com Frame 26 / 43
31 CRUD functions Timings Documentation Authentication CRUD functions Lines of code Rails Django Using a command, which defines the table and its fields, the code for the CRUD operations is created It uses the class-based views Grails The domain and its relations are defined and, afterwards, the code can be generated with a command CodeIgniter Most of the code has to be written david@diazclavijo.com Frame 27 / 43
32 CRUD functions Timings Documentation Authentication CRUD functions Lines of code Rails Django Using a command, which defines the table and its fields, the code for the CRUD operations is created It uses the class-based views Grails The domain and its relations are defined and, afterwards, the code can be generated with a command CodeIgniter Most of the code has to be written A small example will be exposed. The controllers in different for creating a post: david@diazclavijo.com Frame 27 / 43
33 Code generated for creating a post in Rails The next command is executed to generate the code: $ r a i l s g e n e r a t e s c a f f o l d Post t i t l e : s t r i n g body : t e x t s Timings Documentation Authentication CRUD functions Lines of code Code generated: d e f c r e a t = Post. new ( params [ : p o s t ] ) respond_ to do format i s a v e format. html { r e d i r e c t _ t : n o t i c e => Post was s u c c e s s f u l l y c r e a t e d. } format. j s o n { r e n d e r : j s o n : s t a t u s => : c r e a t e d, : l o c a t i o n } e l s e format. html { r e n d e r : a c t i o n => " new " } format. j s o n { r e n d e r : j s o n e r r o r s, : s t a t u s => : u n p r o c e s s a b l e _ e n t i t y } end end end david@diazclavijo.com Frame 28 / 43
34 Code generated for creating a post in Grails The domain is defined: c l a s s Post { S t r i n g t i t l e S t r i n g body } Timings Documentation Authentication CRUD functions Lines of code Based on the domain, the code generated: d e f s a v e ( ) { d e f p o s t I n s t a n c e = new Post ( params ) i f (! p o s t I n s t a n c e. s a v e ( f l u s h : t r u e ) ) { r e n d e r ( view : " c r e a t e ", model : [ p o s t I n s t a n c e : p o s t I n s t a n c e ] ) r e t u r n } } f l a s h. message = message ( code : d e f a u l t. c r e a t e d. message, a r g s : [ message ( code : p o s t. l a b e l, d e f a u l t : Post ), p o s t I n s t a n c e. i d ] ) r e d i r e c t ( a c t i o n : " show ", i d : p o s t I n s t a n c e. i d ) david@diazclavijo.com Frame 29 / 43
35 Create a post in Django using class-based views, inheritance Timings Documentation Authentication CRUD functions Lines of code In Django, it is inherited from the class CreateView: c l a s s P o s t C r e a t e ( CreateView ) : model = ( l o g i n _ r e q u i r e d ) d e f d i s p a t c h ( s e l f, args, kwargs ) : r e t u r n s u p e r ( P ostcreate, s e l f ). d i s p a t c h ( args, kwargs ) d e f f o r m _ v a l i d ( s e l f, form ) : form. i n s t a n c e. b l o g = s e l f. r e q u e s t. u s e r. b l o g r e t u r n s u p e r ( P ostcreate, s e l f ). f o r m _ v a l i d ( form ) david@diazclavijo.com Frame 30 / 43
36 Create a post in CodeIgniter Timings Documentation Authentication CRUD functions Lines of code In CodeIgniter, the following method would be written: f u n c t i o n c r e a t e ( ) { $ t h i s >tank_auth >l o g g e d _ i n _ o r _ r e d i r e c t ( ) ; $ t h i s >f o r m _ v a l i d a t i o n >s e t _ r u l e s ( $ t h i s >mpost >r u l e s ) ; // s e t r u l e s i f ( $ t h i s >f o r m _ v a l i d a t i o n >run ( ) ) { $ u s e r _ i d = $ t h i s >tank_auth >g e t _ u s e r _ i d ( ) ; // a l w a y s to t h e c r r e n t... i f ( $ t h i s >mpost >c r e a t e ( $ p o s t ) ) { $ t h i s >s e s s i o n >s e t _ f l a s h d a t a ( message, Post s u c c e s s f u l l y c r e a t e d ) ; r e d i r e c t ( /. $ t h i s >tank_auth >get_username ( ) ) ;... } $ t h i s >load >view ( t e m p l a t e s / h e a d e r, $data ) ; $ t h i s >load >view ( p o s t / c r e a t e, $data ) ; david@diazclavijo.com Frame 31 / 43
37 CRUD functions Timings Documentation Authentication CRUD functions Lines of code Rails Django Code generated by using a command defining the table Concise code and readable Great support for JSON and Javascript It uses the class-based views This produces the code which best follows the DRY principle The most concise code Grails The domain and its relations are defined. Based on this definition, the code is generated More extensive code and less readable CodeIgniter It supports internationalization Most of the code has to be written It is not necessary to learn too much to st. Hence, it is faster to begin to develop The code is larger and more repetitive david@diazclavijo.com Frame 32 / 43
38 Lines of code Timings Documentation Authentication CRUD functions Lines of code Rails Grails Django CodeIgniter Views Models Controllers Routing files Total Frame 33 / 43
39 Myblog in Django and CodeIgniter Timings Documentation Authentication CRUD functions Lines of code Frame 34 / 43
40 Rails Excellent documentation It requires too much time to learn it It has tool for database management: migrations Great support for Javascript Grails It presents the best performance It requires too much time to learn it Lack of documentation and low quality Timings Documentation Authentication CRUD functions Lines of code Django Excellent documentation It requires too much time to learn it The most concise code Class-based views CodeIgniter It is the framework which allows to develop faster for an inexperienced programmer It produces a repetitive code and is less readable than other Its documentation is short, clear and easy to understand david@diazclavijo.com Frame 35 / 43
41 Outline The blog Scope of the dissemination Referrers The blog Scope of the dissemination Referrers 8 david@diazclavijo.com Frame 36 / 43
42 The blog The blog Scope of the dissemination Referrers Frame 37 / 43
43 Scope of the dissemination A post in Raible s blog about the project Several comments which produced feedback Some s from different people and universities asking for the project The blog Scope of the dissemination Referrers david@diazclavijo.com Frame 38 / 43
44 Referrers The blog Scope of the dissemination Referrers Referrers Visits 1. t.co raibledesigns.com java.dzone.com plus.url.google.com sites.com facebook.com stackoverflow.com forum.root.cz google.com m.facebook.com 52 Frame 39 / 43
45 Outline Future Future david@diazclavijo.com Frame 40 / 43
46 Future It has been a practical approach to the problem. Although the definition of the test is strict and precise, the comparison still lacks objectivity: programmer background and the order in development influenced in the 125 hours spent in each framework does not allow to measure productivity A longer time project is useless due to the appearance of new versions A feature-rank comparison, as Villamor and Raible, would have been theoretical and made by someone who had not real experience This approach has taken the advantage of an inexperienced programmer to measure the ease of learning of these, and an overview of the main features has been made david@diazclavijo.com Frame 41 / 43
47 Future Future To complete the model of Villamor for a set of To compare less popular and more innovative ones To compare more distinct. Request-based vs component-based To compare front-end Far away from comparisons, but interesting in the development knowledge: to choose a framework and improve it david@diazclavijo.com Frame 42 / 43
48 Thank you very much for your attention, your questions or comments would be appreciated Future Frame 43 / 43
Introduction to Portal for ArcGIS. Hao LEE November 12, 2015
Introduction to Portal for ArcGIS Hao LEE November 12, 2015 Agenda Web GIS pattern Product overview Installation and deployment Security and groups Configuration options Portal for ArcGIS + ArcGIS for
More informationIntroduction to Portal for ArcGIS
Introduction to Portal for ArcGIS Derek Law Product Management March 10 th, 2015 Esri Developer Summit 2015 Agenda Web GIS pattern Product overview Installation and deployment Security and groups Configuration
More informationPortal for ArcGIS: An Introduction
Portal for ArcGIS: An Introduction Derek Law Esri Product Management Esri UC 2014 Technical Workshop Agenda Web GIS pattern Product overview Installation and deployment Security and groups Configuration
More informationMetrics for Data Uniformity of User Scenarios through User Interaction Diagrams
Metrics for Data Uniformity of User Scenarios through User Interaction Diagrams Douglas Hiura Longo and Patrícia Vilain Informatics and Statistics Department, Federal University of Santa Catarina, Florianopolis,
More informationBusiness Analytics and Data Mining Modeling Using R Prof. Gaurav Dixit Department of Management Studies Indian Institute of Technology, Roorkee
Business Analytics and Data Mining Modeling Using R Prof. Gaurav Dixit Department of Management Studies Indian Institute of Technology, Roorkee Lecture - 04 Basic Statistics Part-1 (Refer Slide Time: 00:33)
More informationData. Notes. are required reading for the week. textbook reading and a few slides on data formats and data cleaning
CS 725/825 Information Visualization Fall 2017 Data Dr. Michele C. Weigle http://www.cs.odu.edu/~mweigle/cs725-f17/ Notes } We will not cover these slides in class, but they are required reading for the
More informationScripting Languages Fast development, extensible programs
Scripting Languages Fast development, extensible programs Devert Alexandre School of Software Engineering of USTC November 30, 2012 Slide 1/60 Table of Contents 1 Introduction 2 Dynamic languages A Python
More informationOUTBREAK INVESTIGATION AND SPATIAL ANALYSIS OF SURVEILLANCE DATA: CLUSTER DATA ANALYSIS. Preliminary Programme / Draft_2. Serbia, Mai 2013
OUTBREAK INVESTIGATION AND SPATIAL ANALYSIS OF SURVEILLANCE DATA: CLUSTER DATA ANALYSIS Preliminary Programme / Draft_2 Serbia, 20-24 Mai 2013 1. Course presentation Outbreak investigation is one of the
More informationA GUI FOR EVOLVE ZAMS
A GUI FOR EVOLVE ZAMS D. R. Schlegel Computer Science Department Here the early work on a new user interface for the Evolve ZAMS stellar evolution code is presented. The initial goal of this project is
More informationFinnish Open Data Portal for Meteorological Data
18.11.2013 1 Finnish Open Data Portal for Meteorological Data 14th Workshop on meteorological operational systems Roope Tervo Finnish Meteorological Institute Example of Data Sets -- Observations Data
More informationCrypto Lab 2011: Code Challenge Website - Report (v1.0)
Crypto Lab 2011: Code Challenge Website - Report (v1.0) Marius Hansen and Daniel Quanz {hansen_m,quanz}@rbg.informatik.tu-darmstadt.de 1 Features / Use Cases First we create a list with our features. Using
More informationJointly Learning Python Programming and Analytic Geometry
Jointly Learning Python Programming and Analytic Geometry Cristina-Maria Păcurar Abstract The paper presents an original Python-based application that outlines the advantages of combining some elementary
More informationExtending a Plotting Application and Finding Hardware Injections for the LIGO Open Science Center
Extending a Plotting Application and Finding Hardware Injections for the LIGO Open Science Center Nicolas Rothbacher University of Puget Sound Mentors: Eric Fries, Jonah Kanner, Alan Weinstein LIGO Laboratory
More informationAbstract parsing: static analysis of dynamically generated string output using LR-parsing technology
Abstract parsing: static analysis of dynamically generated string output using LR-parsing technology Kyung-Goo Doh 1, Hyunha Kim 1, David A. Schmidt 2 1. Hanyang University, Ansan, South Korea 2. Kansas
More informationProject Plan for the City of Philadelphia Pole and Pole Attachment Geodatabase Design Project
Project Plan for the City of Philadelphia Pole and Pole Attachment Geodatabase Design Project Project Overview: The City of Philadelphia is experiencing data integrity problems caused by data format issues.
More informationThe LTA Data Aggregation Program
The LTA Data Aggregation Program Brian P Flaherty The Methodology Center The Pennsylvania State University August 1, 1999 I Introduction Getting data into response pattern format (grouped data) has often
More informationProject Charter. $58,000 See attached budget report. shapefile to track poles and pole attachments. Poles are defined as a support structure on
Project Charter Title: Pole and Pole Attachment Geodatabase Design Sponsor: City of Philadelphia Streets Department Date: May 10, 2006 Estimated Start Date: June 1, 2006 Projected Finish Date: October
More informationLearning Algorithms with Unified and Interactive Web-Based Visualization
Learning Algorithms with Unified and Interactive Web-Based Visualization S T E V E N H A L I M ( L E C T U R E R @ S O C ) V I C T O R L O H B O H U A I ( N O W I N F A C E B O O K ) K O H ZI C H U N (
More informationArup Nanda Starwood Hotels
Arup Nanda Starwood Hotels Why Analyze The Database is Slow! Storage, CPU, memory, runqueues all affect the performance Know what specifically is causing them to be slow To build a profile of the application
More informationM o n i t o r i n g O c e a n C o l o u r P y t h o n p r o c e d u r e f o r d o w n l o a d
M o n i t o r i n g O c e a n C o l o u r P y t h o n p r o c e d u r e f o r d o w n l o a d Copernicus User Uptake Information Sessions Copernicus EU Copernicus EU Copernicus EU www.copernicus.eu I N
More informationPython. Tutorial. Jan Pöschko. March 22, Graz University of Technology
Tutorial Graz University of Technology March 22, 2010 Why? is: very readable easy to learn interpreted & interactive like a UNIX shell, only better object-oriented but not religious about it slower than
More informationA FOSS Web Tool for Spatial Regression Techniques and its Application to Explore Bike Sharing Usage Patterns
A FOSS Web Tool for Spatial Regression Techniques and its Application to Explore Bike Sharing Usage Patterns MGIS Capstone Proposal Author: Spencer Bell Presentation Outline Background Bike Share Spatial
More informationDYNAMIC PORTRAYAL AND DIRECT LOCATION METHOD FOR
DYNAMIC PORTRAYAL AND DIRECT LOCATION METHOD FOR NEW GEOGRAPHIC INFORMATION PROCESSING WEB SERVICE Hiroyuki Ohno, Norishige Kubo, Noriyuki Takakuwa Hidenori Fujimura, Takayuki Ishizeki Geographical Survey
More informationNovaToast SmartVision Project Requirements
NovaToast SmartVision Project Requirements Jacob Anderson William Chen Christopher Kim Jonathan Simozar Brian Wan Revision History v1.0: Initial creation of the document and first draft. v1.1 (2/9): Added
More informationUse of ArcPy Library for Validating GIS Networks
Use of ArcPy Library for Validating GIS Networks Derek Sutton, Derek Elliott Citizens Energy Group Mehmet Ercan, Joel Kaatz Arcadis ESRI User Conference June 27-July 1, 2016 San Diego, CA 25 July 2016
More informationSapienza universita di Roma Dipartimento di Informatica e Sistemistica. User guide WSCE-Lite Web Service Composition Engine v 0.1.
Sapienza universita di Roma Dipartimento di Informatica e Sistemistica User guide WSCE-Lite Web Service Composition Engine v 0.1 Valerio Colaianni Contents 1 Installation 5 1.1 Installing TLV..........................
More informationTransformation of round-trip web application to use AJAX
Transformation of round-trip web application to use AJAX by Jason Chu A thesis submitted to the Department of Electrical and Computer Engineering in conformity with the requirements for the degree of Master
More informationSOFTWARE FOR WEATHER DATABASES MANAGEMENT AND CONSTRUCTION OF REFERENCE YEARS
SOFTWARE FOR WEATHER DATABASES MANAGEMENT AND CONSTRUCTION OF REFERENCE YEARS Marco Beccali 1, Ilaria Bertini 2, Giuseppina Ciulla 1, Biagio Di Pietra 2, and Valerio Lo Brano 1 1 Department of Energy,
More informationWeb georeference of historical maps
Vassilios Tsioukas Web georeference of historical maps Keywords: Historical maps, Georeference, Cartography, Cartographic Heritage Summary The creation of an application to perform the geo-referencing
More informationITI Introduction to Computing II
(with contributions from R. Holte) School of Electrical Engineering and Computer Science University of Ottawa Version of January 11, 2015 Please don t print these lecture notes unless you really need to!
More informationJournal of e-media Studies Volume 3, Issue 1, 2013 Dartmouth College
Journal of e-media Studies Volume 3, Issue 1, 2013 Dartmouth College Review of Old Maps Online Alyssa McLeod Labeled Google for old maps by its creators, the Jisc-funded Old Maps Online is an interface
More informationMore About Methods. Hsuan-Tien Lin. Deptartment of CSIE, NTU. OOP Class, March 8-9, 2010
More About Methods Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 8-9, 2010 H.-T. Lin (NTU CSIE) More About Methods OOP 03/08-09/2010 0 / 24 Methods: the Basic Method (1/2, Callee s View) 1 p
More informationOracle Spatial: Essentials
Oracle University Contact Us: 1.800.529.0165 Oracle Spatial: Essentials Duration: 5 Days What you will learn The course extensively covers the concepts and usage of the native data types, functions and
More informationInheritance and polymorphism
Linköpings Universitet Institutionen för datavetenskap (IDA) UPP-gruppen 2015-11-16 Inheritance and polymorphism Aim In this laboration you will create an object-oriented framework to build (in C++ source-code)
More informationA BASE SYSTEM FOR MICRO TRAFFIC SIMULATION USING THE GEOGRAPHICAL INFORMATION DATABASE
A BASE SYSTEM FOR MICRO TRAFFIC SIMULATION USING THE GEOGRAPHICAL INFORMATION DATABASE Yan LI Ritsumeikan Asia Pacific University E-mail: yanli@apu.ac.jp 1 INTRODUCTION In the recent years, with the rapid
More informationGeo-enabling a Transactional Real Estate Management System A case study from the Minnesota Dept. of Transportation
Geo-enabling a Transactional Real Estate Management System A case study from the Minnesota Dept. of Transportation Michael Terner Executive Vice President Co-author and Project Manager Andy Buck Overview
More informationThe Interactivity of a Virtual Museum at the Service of the Teaching of Applied Geology
3rd International Conference on Higher Education Advances, HEAd 17 Universitat Politècnica de València, València, 2017 DOI: http://dx.doi.org/10.4995/head17.2017.5366 The Interactivity of a Virtual Museum
More informationGeodatabases and ArcCatalog
Geodatabases and ArcCatalog Prepared by Francisco Olivera, Ph.D. and Srikanth Koka Department of Civil Engineering Texas A&M University February 2004 Contents Brief Overview of Geodatabases Goals of the
More informationTown of Taos Request for Proposal Historic Preservation GIS Geodatabase Project April 2007
Town of Taos Request for Proposal Historic Preservation GIS Geodatabase Project April 2007 1. Background The Town of Taos is requesting proposals from qualified firms or a team of firms who can develop
More informationSDS developer guide. Develop distributed and parallel applications in Java. Nathanaël Cottin. version
SDS developer guide Develop distributed and parallel applications in Java Nathanaël Cottin sds@ncottin.net http://sds.ncottin.net version 0.0.3 Copyright 2007 - Nathanaël Cottin Permission is granted to
More informationYour web browser (Safari 7) is out of date. For more security, comfort and. the best experience on this site: Update your browser Ignore
Your web browser (Safari 7) is out of date. For more security, comfort and Activityengage the best experience on this site: Update your browser Ignore Introduction to GIS What is a geographic information
More informationARCGIS TRAINING AT KU GIS LABS: INTRODUCTION TO GIS: EXPLORING ARCCATALOG AND ARCGIS TOOLS
PHASE 1_4 th SESSION ARCGIS TRAINING AT KU GIS LABS: INTRODUCTION TO GIS: EXPLORING ARCCATALOG AND ARCGIS TOOLS 4 th SESSION REPORT: 30 TH JUNE - 2 ND JULY SCHOOL OF ENVIRONMENTAL STUDIES COMPUTER LAB
More informationA few words on white space control
A few words on white space control General Description The control of leading and trailing white spaces is always a problem regarding XML document processing. You always have to decide where you want to
More informationMapOSMatic, free city maps for everyone!
MapOSMatic, free city maps for everyone! Thomas Petazzoni thomas.petazzoni@enix.org Libre Software Meeting 2012 http://www.maposmatic.org Thomas Petazzoni () MapOSMatic: free city maps for everyone! July
More informationCSCE 155N Fall Homework Assignment 2: Stress-Strain Curve. Assigned: September 11, 2012 Due: October 02, 2012
CSCE 155N Fall 2012 Homework Assignment 2: Stress-Strain Curve Assigned: September 11, 2012 Due: October 02, 2012 Note: This assignment is to be completed individually - collaboration is strictly prohibited.
More informationAnimating Maps: Visual Analytics meets Geoweb 2.0
Animating Maps: Visual Analytics meets Geoweb 2.0 Piyush Yadav 1, Shailesh Deshpande 1, Raja Sengupta 2 1 Tata Research Development and Design Centre, Pune (India) Email: {piyush.yadav1, shailesh.deshpande}@tcs.com
More informationSpatial Analysis in CyberGIS
Spatial Analysis in CyberGIS towards a spatial econometrics workbench Luc Anselin, Sergio Rey and Myunghwa Hwang GeoDa Center School of Geographical Sciences and Urban Planning Arizona State University
More informationLab Exercise 6 CS 2334
Lab Exercise 6 CS 2334 September 28, 2017 Introduction In this lab, you will experiment with using inheritance in Java through the use of abstract classes and interfaces. You will implement a set of classes
More informationMore on Methods and Encapsulation
More on Methods and Encapsulation Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 31, 2009 H.-T. Lin (NTU CSIE) More on Methods and Encapsulation OOP(even) 03/31/2009 0 / 38 Local Variables Local
More informationECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University
ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #4 MIPS Assembly and Simulation
More informationChem Compute Science Gateway for Undergraduates. Mark J. Perri, M.S. Reeves, R.M. Whitnell
Chem Compute Science Gateway for Undergraduates Mark J. Perri, M.S. Reeves, R.M. Whitnell Chemcompute.org Computational Chemistry GAMESS (Quantum) TINKER (MD) About Sonoma State University One of 23 California
More informationVNA Tools II S-parameter uncertainty calculation
VA Tools II S-parameter uncertainty calculation Michael Wollensack METAS 5. May 0 Michael Wollensack METAS Outline Introduction VA Measurement Model Database Uncertainty Visualization Results Michael Wollensack
More informationThe CLIMB Geoportal. A web-based dissemination and documentation platform for hydrological modelling data
European Geosciences Union GA 2015 ESSI2.13/SSS1.8: Vienna, 14 th April The CLIMB Geoportal A web-based dissemination and documentation platform for hydrological modelling data Michael Blaschek*1, Daniel
More informationArcGIS Platform For NSOs
ArcGIS Platform For NSOs Applying GIS and Spatial Thinking to Official Statistics Esri UC 2014 Demo Theater Applying GIS at the NSO Generic Statistical Business Process Model (GSBPM) 1 Specify Needs 2
More informationQGIS AND GRASS COURSE FROM BEGINNER TO ADVANCED ONLINE TRAINING. GIS Training. Course. .com
Q AND GRASS COURSE FROM BEGINNER TO ADVANCED ONLINE TRAINING Training Course.com TYC COURSE GOALS The main purpose of the course is to provide training, from beginner to advanced levels in Q, a free and
More informationfile://q:\report1\greenatlasfinalreportindex.html
Page 1 of 8 Quick Links WATER MANAGEMENT INTERNSHIP USDA HIS GRANT FUNDED FINAL PROJECT REPORT SUBMITTED BY MELISSA QUINTANA 11/07/07-03/24/08 Summary Provided is an assessment of my accomplishments for
More informationITI Introduction to Computing II
(with contributions from R. Holte) School of Electrical Engineering and Computer Science University of Ottawa Version of January 9, 2019 Please don t print these lecture notes unless you really need to!
More informationGeoíndex: a public data dissemination service from the IGC. Geoíndex IGC Team Reporter: Carme Puig
Geoíndex: a public data dissemination service from the IGC Geoíndex IGC Team Reporter: Carme Puig 2 Brief IGC introduction The IGC was created through the Law 19/2005 of the Catalan Parliament. The IGC
More informationSCAUG Community Maps Building a Living Atlas of the World
SCAUG Community Maps Building a Living Atlas of the World Mark Stewart Topics: SCAUG ArcGIS Online Overview Community Maps Overview Community Maps Workflow Update Process Utilizing Your Contribution Community
More informationSt. Kitts and Nevis Heritage and Culture
St. Kitts and Nevis Heritage and Culture Eloise Stancioff, Habiba, Departmet of Culture St. Kitts HERA workshop: March 17-20, 2015 Goals Using freely available open source platforms, we implement two different
More informationProviding Long Range Outlook Summaries to the Climate Community for Decision Support Services
Providing Long Range Outlook Summaries to the Climate Community for Decision Support Services Shawn Rossi NWS Hastings, NE Ray Wolf NWS Quad Cities, IA Barb Mayes Boustead NWS Warning Decision Training
More informationDATA 301 Introduction to Data Analytics Geographic Information Systems
DATA 301 Introduction to Data Analytics Geographic Information Systems Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca DATA 301: Data Analytics (2) Why learn Geographic
More informationWhy GIS & Why Internet GIS?
Why GIS & Why Internet GIS? The Internet bandwagon Internet mapping (e.g., MapQuest) Location-based services Real-time navigation (e.g., traffic) Real-time service dispatch Business Intelligence Spatial
More informationWhy does attention to web articles fall with time?
Why does attention to web articles fall with time? M.V. Simkin and V.P. Roychowdhury Department of Electrical Engineering, University of California, Los Angeles, CA 90095-594 We analyze access statistics
More informationModern Functional Programming and Actors With Scala and Akka
Modern Functional Programming and Actors With Scala and Akka Aaron Kosmatin Computer Science Department San Jose State University San Jose, CA 95192 707-508-9143 akosmatin@gmail.com Abstract For many years,
More informationAn Introduction to GLIF
An Introduction to GLIF Mor Peleg, Ph.D. Post-doctoral Fellow, SMI, Stanford Medical School, Stanford University, Stanford, CA Aziz A. Boxwala, M.B.B.S, Ph.D. Research Scientist and Instructor DSG, Harvard
More informationMCS 260 Exam 2 13 November In order to get full credit, you need to show your work.
MCS 260 Exam 2 13 November 2015 Name: Do not start until instructed to do so. In order to get full credit, you need to show your work. You have 50 minutes to complete the exam. Good Luck! Problem 1 /15
More informationComputation Theory Finite Automata
Computation Theory Dept. of Computing ITT Dublin October 14, 2010 Computation Theory I 1 We would like a model that captures the general nature of computation Consider two simple problems: 2 Design a program
More informationBasics HTTP. requests. Ryan E. Freckleton. PySprings. May 24, 2016
PySprings May 24, 2016 >>> import r e q u e s t s >>> r = r e q u e s t s. g e t ( h t t p s : / / a p i. g i t h u b. com/ u s e r, auth=( u s e r, p a s s ) ) >>> r. status_code 401 >>> r. h e a d e
More informationA Digital Atlas for the Byzantine and Post Byzantine Churches of Troodos Region (central Cyprus)
CAA'2010 Fusion of Cultures Francisco Contreras & Fco. Javier Melero (Editors) A Digital Atlas for the Byzantine and Post Byzantine Churches of Troodos Region (central Cyprus) Agapiou A. 1, Georgopoulos
More informationThis is a repository copy of Optimised PEI impregnation of activated carbons - Enhancement of CO2 capture under post-combustion conditions.
This is a repository copy of Optimised PEI impregnation of activated carbons - Enhancement of CO2 capture under post-combustion conditions. White Rose Research Online URL for this paper: http://eprints.whiterose.ac.uk/89498/
More informationPHP-Einführung - Lesson 4 - Object Oriented Programming. Alexander Lichter June 27, 2017
PHP-Einführung - Lesson 4 - Object Oriented Programming Alexander Lichter June 27, 2017 Content of this lesson 1. Recap 2. Why OOP? 3. Git gud - PHPStorm 4. Include and Require 5. Classes and objects 6.
More informationIntegrated Cheminformatics to Guide Drug Discovery
Integrated Cheminformatics to Guide Drug Discovery Matthew Segall, Ed Champness, Peter Hunt, Tamsin Mansley CINF Drug Discovery Cheminformatics Approaches August 23 rd 2017 Optibrium, StarDrop, Auto-Modeller,
More informationChuck Cartledge, PhD. 21 January 2018
Big Data: Data Analysis Boot Camp Non-SQL and R Chuck Cartledge, PhD 21 January 2018 1/19 Table of contents (1 of 1) 1 Intro. 2 Non-SQL DBMS Classic Non-SQL databases 3 Hands-on Airport connections as
More informationUsing OS Resources - A fieldwork activity for Key Stage 2
Using OS Resources - A fieldwork activity for Key Stage 2 Liz Spincer, Saltford CE Primary School Outline of the fieldwork project: This series of activities was designed to illustrate how Primary School
More informationWelcome to NR502 GIS Applications in Natural Resources. You can take this course for 1 or 2 credits. There is also an option for 3 credits.
Welcome to NR502 GIS Applications in Natural Resources. You can take this course for 1 or 2 credits. There is also an option for 3 credits. The 1st credit consists of a series of readings, demonstration,
More informationGENERALIZATION IN THE NEW GENERATION OF GIS. Dan Lee ESRI, Inc. 380 New York Street Redlands, CA USA Fax:
GENERALIZATION IN THE NEW GENERATION OF GIS Dan Lee ESRI, Inc. 380 New York Street Redlands, CA 92373 USA dlee@esri.com Fax: 909-793-5953 Abstract In the research and development of automated map generalization,
More informationWorking with Census 2000 Data from MassGIS
Tufts University GIS Tutorial Working with Census 2000 Data from MassGIS Revised September 26, 2007 Overview In this tutorial, you will use pre-processed census data from Massachusetts to create maps of
More informationAmong various open-source GIS programs, QGIS can be the best suitable option which can be used across partners for reasons outlined below.
Comparison of Geographic Information Systems (GIS) software As of January 2018, WHO has reached an agreement with ESRI (an international supplier of GIS software) for an unlimited use of ArcGIS Desktop
More informationSystematic Review Round 7 Application Form
Systematic Review Round 7 Application Form SR7/1063 1. BASIC PROJECT INFO (i) Title of Proposed Review * Systematic review question.download detailed SR7 questions here Title of the study if more focused
More informationPractical Data Processing With Haskell
Practical Data Processing With Haskell Ozgun Ataman November 14, 2012 Ozgun Ataman (Soostone Inc) Practical Data Processing With Haskell November 14, 2012 1 / 18 A bit about the speaker Electrical Engineering,
More informationLab 2 Worksheet. Problems. Problem 1: Geometry and Linear Equations
Lab 2 Worksheet Problems Problem : Geometry and Linear Equations Linear algebra is, first and foremost, the study of systems of linear equations. You are going to encounter linear systems frequently in
More informationMT-WAVE: PROFILING MULTI-TIER WEB APPLICATIONS
MT-WAVE: PROFILING MULTI-TIER WEB APPLICATIONS A Thesis Submitted to the College of Graduate Studies and Research in Partial Fulfillment of the Requirements for the degree of Master of Science in the Department
More informationProgramming in Japanese for Literacy Education
Programming in Japanese for Literacy Education Ken Okada, Manabu Sugiura, Yoshiaki Matsuzawa, Megumi Araki, and Hajime Ohiwa Keio University - Graduate School of Media and Governance 5322 Endo, Fujisawa-shi,
More informationPerforming Advanced Cartography with Esri Production Mapping
Esri International User Conference San Diego, California Technical Workshops July 25, 2012 Performing Advanced Cartography with Esri Production Mapping Tania Pal & Madhura Phaterpekar Agenda Outline generic
More informationIntegrating Open-Source Statistical Packages with ArcGIS
Esri International User Conference San Diego, California Technical Workshops 7-25-12 Integrating Open-Source Statistical Packages with ArcGIS Mark V. Janikas, Ph. D. Xing Kang Outline Introduction to Spatial
More informationTroubleshooting Replication and Geodata Services. Liz Parrish & Ben Lin
Troubleshooting Replication and Geodata Services Liz Parrish & Ben Lin AGENDA: Troubleshooting Replication and Geodata Services Overview Demo Troubleshooting Q & A Overview of Replication Liz Parrish What
More informationOpen Geoportal lands to Europe: use cases and improvements from
Free and Open Source Software for Geospatial (FOSS4G) Conference Proceedings Volume 17 FOSS4G 2017 Full Conference Proceedings (papers and posters), Boston, USA. Article 11 2017 : use cases and improvements
More informationHomework 2: MDPs and Search
Graduate Artificial Intelligence 15-780 Homework 2: MDPs and Search Out on February 15 Due on February 29 Problem 1: MDPs [Felipe, 20pts] Figure 1: MDP for Problem 1. States are represented by circles
More informationThe Mizar System. Quang M. Tran Course: CAS760 Logic for Practical Use Instructor: Dr. William M.
The System Quang M. Tran E-mail: tranqm@mcmaster.ca Course: CAS760 Logic for Practical Use Instructor: Dr. William M. Farmer Department of Computing and Software McMaster University, ON, Hamilton, Canada
More informationLaunch of Data Collection or Production Centre for World Weather Information Service
Launch of Data Collection or Production Centre for World Weather Information Service The Hong Kong Observatory (HKO) announces that the Data Collection or Production Centre (DCPC) for the World Weather
More informationSmart Data Collection and Real-time Digital Cartography
Smart Data Collection and Real-time Digital Cartography Yuji Murayama and Ko Ko Lwin Division of Spatial Information Science Faculty of Life and Environmental Sciences University of Tsukuba IGU 2013 1
More informationTHE STANDARD MODEL IN A NUTSHELL BY DAVE GOLDBERG DOWNLOAD EBOOK : THE STANDARD MODEL IN A NUTSHELL BY DAVE GOLDBERG PDF
Read Online and Download Ebook THE STANDARD MODEL IN A NUTSHELL BY DAVE GOLDBERG DOWNLOAD EBOOK : THE STANDARD MODEL IN A NUTSHELL BY DAVE Click link bellow and free register to download ebook: THE STANDARD
More informationGeography 281 Map Making with GIS Project Four: Comparing Classification Methods
Geography 281 Map Making with GIS Project Four: Comparing Classification Methods Thematic maps commonly deal with either of two kinds of data: Qualitative Data showing differences in kind or type (e.g.,
More information1 ListElement l e = f i r s t ; / / s t a r t i n g p o i n t 2 while ( l e. next!= n u l l ) 3 { l e = l e. next ; / / next step 4 } Removal
Präsenzstunden Today In the same room as in the first week Assignment 5 Felix Friedrich, Lars Widmer, Fabian Stutz TA lecture, Informatics II D-BAUG March 18, 2014 HIL E 15.2 15:00-18:00 Timon Gehr (arriving
More informationSpatial data interoperability and INSPIRE compliance the platform approach BAGIS
Spatial data interoperability and INSPIRE compliance the platform approach BAGIS BAGIS Voluntary, independent, public, non-profit organization; Organization with main mission to promote the growth of the
More informationDiscovery and Access of Geospatial Resources using the Geoportal Extension. Marten Hogeweg Geoportal Extension Product Manager
Discovery and Access of Geospatial Resources using the Geoportal Extension Marten Hogeweg Geoportal Extension Product Manager DISCOVERY AND ACCESS USING THE GEOPORTAL EXTENSION Geospatial Data Is Very
More informationContinuous Performance Testing Shopware Developer Conference. Kore Nordmann 08. June 2013
Continuous Performance Testing Shopware Developer Conference Kore Nordmann (@koredn) 08. June 2013 About Me Kore Nordmann @koredn Co-founder of Helping people to create high quality web applications. http://qafoo.com
More informationLED Lighting Facts: Manufacturer Guide
LED Lighting Facts: Manufacturer Guide 2018 1 P a g e L E D L i g h t i n g F a c t s : M a n u f a c t u r e r G u i d e TABLE OF CONTENTS Section 1) Accessing your account and managing your products...
More informationWeek 8 Cookbook: Review and Reflection
: Review and Reflection Week 8 Overview 8.1) Review and Reflection 8.2) Making Intelligent Maps: The map sheet as a blank canvas 8.3) Making Intelligent Maps: Base layers and analysis layers 8.4) ArcGIS
More information