230 likes | 326 Views
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
E N D
EIONET Development Tools and Philosophy • ITTAG Meeting Athens • 20thSeptember, 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 • Zope Products • What is Zope’s Role? • Zope in EIONET Context
Open 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
EIONET'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?
MPL: 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
Some 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
EIONETS 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
PHP • 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
Why 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
LINUX in a Wrist Watch • 8 MB RAM • 8 MB Flash RAM • X-windows • Weigth: 44 Grams
LINUX on Handhelds Left: Compaq iPaq /206 MHz Right: YOPY /206 MHz
Linux 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
Why 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?
What 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
What 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
Zope 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 webserver SquishDot - a bulletin board ... and hundreds more
Zope’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
Zope’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
LDAP Directory MYSQL CIRCA Other Zope Zope Zope in EIONET Context HTTP XML-RPC
Creating a New Announcement Title Expires Article The result is a record, which we can then display as HTML or XML
XML: 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 HTML Convert Formatting WML PDF SGML
XML Example: NATLAN 2 Database Database Coordinates in XML NATLAN Engine Web browser Augmented map
Zope Demonstration • Now We switch to a live demonstration of Zope