eionet development tools and philosophy

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

Upload: tamber

Post on 11-Jan-2016

15 views

Category:

Documents


0 download

DESCRIPTION

EIONET Development Tools and Philosophy. ITTAG Meeting Athens 20 th September , 2000 Søren Roug. Creating a new announcement XML: alternative formats XML example: NATLAN2 Zope demonstration. Agenda. What is Open Source? EIONET ’ s Software Tools PHP Why Linux What is Zope - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: EIONET Development Tools and Philosophy

EEA

EIONET Development Tools and Philosophy

ITTAG Meeting Athens20th September, 2000

Søren Roug

Page 2: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

EEALINUX in a Wrist Watch

• 8 MB RAM

• 8 MB Flash RAM

• X-windows

• Weigth: 44 Grams

Page 11: EIONET Development Tools and Philosophy

EEALINUX on Handhelds

Left: Compaq iPaq /206 MHz

Right: YOPY /206 MHz

Page 12: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

EEAZope in EIONET Context

Zope

CIRCA

MYSQLLDAP

Directory

OtherZope

XML-RPCHTTP

Page 20: EIONET Development Tools and Philosophy

EEACreating a New Announcement

Title

Expires

Article

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

Page 21: EIONET Development Tools and Philosophy

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: EIONET Development Tools and Philosophy

EEAXML Example: NATLAN 2

Coordinatesin XML

NATLANEngine

Database

Augmentedmap

Web browser

Database

Page 23: EIONET Development Tools and Philosophy

EEAZope Demonstration

• Now We switch to a live demonstration of Zope