eea eionet development tools and philosophy ittag meeting athens 20 th september, 2000 søren roug

23
EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20th September, 2000 Søren Roug

Upload: ryan-roberts

Post on 27-Mar-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEA

EIONET Development Tools and Philosophy

ITTAG Meeting Athens20th September, 2000

Søren Roug

Page 2: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAAgenda

• What is Open Source?

• EIONET’s Software Tools

• PHP

• Why Linux

• What is Zope

• Zope Products

• What is Zope’s Role?

• Zope in EIONET Context

• Creating a new announcement

• XML: alternative formats

• XML example: NATLAN2

• Zope demonstration

Page 3: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAOpen Source: Why Use It?

• Code reuse

– Software created for one DEM could be used for another if we have the source

• Competition

– To make it possible for other companies to make extensions to CIRCLE (or provide 3rd level support)

• Protection of investment

– In the event that the software vendor goes out of business or loses interest in the product

Page 4: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAEIONET's Open Source Initiative

• EIONET wants to use Open Source products as much as possible

• ED, TietoEnator and others write software products for us

– Hence, from now on; the new products, we ask them to develop, are Open Source

• We have chosen Mozilla Public License

– What does that mean?

Page 5: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAMPL: Contracting Company’s Rights

• You may sell (for profit) EIONET-owned software to others or EIONET (e.g. bundled with service)

– But you must tell the customer, that the source is available for free (Sec 3.6)

• You may combine it with proprietary software as a larger works

– But if you modify the EIONET-owned software you must make it available for free in source form

Page 6: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEASome Business As Usual

• We will still ask a company to do QA testing and product support

• Will we have different incompatible versions of CIRCA?– No, CIRCA is not (yet) Open Source and if it

was, the Mozilla License will prevent it. That’s why we chose MPL

• *Much* more emphasis on design documentation

Page 7: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAEIONETS Software Tools

• Philosophy: Open Source• Webserver: Apache• Content Management: Zope• Rapid development: PHP• Operating Systems: Linux, Commercial UNIX• Groupware system: CIRCA• Data formats: XML• Database system: MySQL

Page 8: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAPHP

• PHP is a language to make HTML-documents more interactive

• You program directly in the HTML document• EEA use it for the THEMES database and

WASTEBASE• PHP is also Open Source software

Page 9: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAWhy Linux

• Linux is as stable as commercial UNIXes• Our biggest Solaris Server is 2 x 480 MHz CPUs

– Our next Linux will be Intel-based 1.100 MHz

– Much cheaper• You can install a development system on an old PC

Page 10: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEALINUX in a Wrist Watch

• 8 MB RAM

• 8 MB Flash RAM

• X-windows

• Weigth: 44 Grams

Page 11: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEALINUX on Handhelds

Left: Compaq iPaq /206 MHz

Right: YOPY /206 MHz

Page 12: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEALinux Elsewhere

• IBM Mainframes• www.google.com has 5000 Linux PCs in a cluster• SUN Sparc processors• Compaq Alpha processors• Turnkey systems

– Fileservers/Intranet servers

– Firewalls

Page 13: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAWhy Use Zope?

• We want livelier content on the webservers• We want access to small databases• We want a framework, where we can build small

applications• Support for XML• Audience: What else do we want?

Page 14: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAWhat Is ZOPE?

"Zope is the leading Open Source application server, specializing in interactive content such as

portals and content management systems"

Everything is through-the-web

Built-in programming language

Integrated object database

XML, WebDAV, XML-RPC, SQL, LDAP

Page 15: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAWhat Can We Do With Zope?

• Zope comes in building blocks called "products"

– A building block provides a feature such as a guest book or announcements or workflow

• There are more than 200 products right now

– It's just install and play

Page 16: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAZope Products

SiteSummary - retrieve announcements from another webserver in RSS format

Yihaw - Tree structure directory like in Yahoo! But extended with FAQs, announcements

MeetingManagement - Lets you collect registrations for small meetings

Zwiki - A permanent whiteboard for a webserverSquishDot - a bulletin board

... and hundreds more

Page 17: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAZope’s Role

• Zope

– Rapid content creation!

– Integrator of services

– Can be used with little experience

– Can be extended with special modules - the products• PHP

– Rapid application development

– Good for prototyping

– Needs programming experience

Page 18: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAZope’s Role

• Java Servlets

– Very flexible and low-level

– Needs professional programmers

– Impossible to customise for webmaster• CIRCLE

– Specialised for group work

– Difficult to customize

– Impossible to extend

Page 19: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAZope in EIONET Context

Zope

CIRCA

MYSQLLDAP

Directory

OtherZope

XML-RPCHTTP

Page 20: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEACreating a New Announcement

Title

Expires

Article

The result is a record, which we can then display as HTML or XML

Page 21: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAXML: Alternative Formats

• Now as we have structured many types of data we can reuse them in many formats RSS for inclusion on other webservers WML for display on WAP-phones

• It is an ongoing process, and it requires a further abandonment of HTML for storage

XML

SGML

Formatting

HTML

PDF

WMLConvert

Page 22: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAXML Example: NATLAN 2

Coordinatesin XML

NATLANEngine

Database

Augmentedmap

Web browser

Database

Page 23: EEA EIONET Development Tools and Philosophy ITTAG Meeting Athens 20 th September, 2000 Søren Roug

EEAZope Demonstration

• Now We switch to a live demonstration of Zope