Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

ApacheCon Europe 2005 Tommy Skodje John Russell NKI Fjernundervisning Copyright? Noe av materiellet er kopiert fra presentasjonen som ble distribuert på.

Liknende presentasjoner


Presentasjon om: "ApacheCon Europe 2005 Tommy Skodje John Russell NKI Fjernundervisning Copyright? Noe av materiellet er kopiert fra presentasjonen som ble distribuert på."— Utskrift av presentasjonen:

1 ApacheCon Europe 2005 Tommy Skodje John Russell NKI Fjernundervisning Copyright? Noe av materiellet er kopiert fra presentasjonen som ble distribuert på CD fra konferansen. Vi forstår det slik at den er Copyrighta med Apache-lisensen, det vil si at vi er fri til å gjøre nesten hva vi vil med den. Vi legger ingen flere begrensninger til denne, så dere er fri til å bruke innholdet her etter eget ønske, men kom ikke og klag hvis det går dere ille, for vi fraskriver oss selvsagt alt ansvar for bruk og misbruk av innholdet.

2 Om oss John Russel: Prosjektleder, systemering Tommy Skodje: Lead developer / soft-arkitekt NKI: størst, best og først i fjernundervisning i Norge i dag. På internett fra 1991, på modem-basert system fra 1987. Utviklingsgruppa, 7 i tallet, leverer systemene: nki.nonki.no: online katalog med 130 studier og 450 kurs. nettskolen.comnettskolen.com: nettsider for 5.000+ studenter, lærere og administrasjon. Teknologi: Oracle xsql, xsl, jsp og java Metodikk: ”Just do it”, vi beveger oss hurtig

3 Agenda Arkitektur forprosjekt (problemer, ønsker og løsninger) Kort om Apache og Copyrights Rask gjennomgang av en del presentasjoner Mer om Cocoon, Lucene, CJDBC og Derby (Cloudscape) Oppsummering: forprosjekt overstått raskt og gæli Diskusjon eller mer detaljer Sum Overblikk over ASF og ApacheCon Rask gjennomgang av noen Apache prosjekt Motivasjon og argument for selv å dra til ApacheCon

4 Forprosjekt: Symptomer og medisin  RAD-type utvikling har hittil fungert utmerket  Noen problem hemmer oss (anti-patterns):  Copy&Paste (lik sql i 34 filer)  Mix av logikk, controller, presentasjon ofte separert  Vi har en hammer, alle problem er en spiker  Hjulet, versjon 10.4.1  Ønsker  Bedre støtte for MVC og Test-first utvikling  Standard-komponenter, dokumentasjon og kurs  CMS, skinning, co-location, clustering  Unngå java for tulleting, vi er gode på SQL, XML og XSL

5 Forprosjekt: Løsninger  Vi har allerede prøvd bygge nok på det vi har…  Vi har prøvd og avfeid forskjellig rammeverk  Cocoon dukker stadig opp, lovende  Også database skal vurderes  Vi stikker til ApacheCon for å se på alt dette  Og hvem vet, vi kanskje finner mer?

6 Apache Apache.org 4 sesjoner: •Behind the Scenes of the Apache Software Foundation •Licensing: What Every Apache Committer Should Know •Strategic Commons: Open Source in the Developing World •Software Patents in Europe - Where we are, where we are heading •We’re not safe yet, cf. www.ffii.orgwww.ffii.org

7 Apache: prosjekt HTTP Server Ant APR Cocoon DB Directory Excalibur Forrest Geronimo Gump iBATIS Incubator Jakarta James Lenya Logging Lucene Maven MyFaces Perl Portals SpamAssassin Struts TCL Tomcat Web Services XML XMLBeans XML Graphics = 28 prosjekt + En del sub-prosjekt + prosjekt i incubator 9 Directors 36 Officers 132 Members 13 Emeriti Members 1066 Committers Kildekode: 260 mirror servers i 54 land, 25 GB kildekode 270 åpne mail-lister, ca 94.000 subscribers, 2-4 meldinger per sekund Web servers tar 4.3 million hits, 125 Gbyte, per dag

8 Apache: mission The Apache Software Foundation (ASF) provides organizational, legal, and financial support for a broad range of open source software projects. The Foundation provides an established framework for intellectual property and financial contributions that simultaneously limits contributors’ potential legal exposure. Through a collaborative and meritocratic development process, Apache projects deliver enterprisegrade, freely available software products that attract large communities of users. The pragmatic Apache License makes it easy for all users, commercial and individual, to deploy Apache products.

9 Apache: Software Darwinism Open-Source Software må tilfredsstille brukere for å overleve User-driven development beats marketing-driven development: Faster evolution cycles Better interoperability Better platform stability Hva er din erfaring med requirements: er det kundene som har siste ord? eller den dyktigste politikeren internt? ?Hvor mange apache-prosjekt “ruler” innen sitt felt?

10 Tutorials og sessions Trekk pusten… Raskt og gæli overblikk: file:///d:/APACHECON_05%20(E)/schedule.html

11 Lenya: look, no hands! CMS med Pluggable WYSIWYG editor (greit å integrere nye). Speakers er veldig ærlige: 1.4 er veldig endra fra 1.2, selvsagt noen måneder fra release Ikke JSR-168 compliant (men skal bli). Magnolia er Ser ut til å støtte dynamiske roller, viktig for oss. Ingen vits i å lete mer etter en god online editor (tid spart). Vel, kanskje vi kan bruke det (og jeg har allerede brukt uker på å lete etter CMS som kan tilfredsstille oss)

12 Portlet Development using JSR-168 En grundig gjennomgang av API og programmeringsmodell. Vi fikk ikke bruke hendene så mye her heller… Men det var enkelt å installere Jetspeed og Pluto Og foreleser var god til å underholde (Amerikaner) Som alltid nevnes alternativ (Gridsphere, uPortal).

13 Maven og Ant Maven is Your Friend: Kjekt å vite hva ideen med dette er Dependency management Rapportering Single: source tree, jar output, source of info (POM) Meeting New Challenges with Ant 1.7 (og 1.6) Makroer, nye script-tag’er for Code Sharing (replace XML &includes;) Task-library: Maven2 handles dependencies (still) SmartFrog (SourceForge) for deployment. Ant not. Java 1.5 support Vi bruker Ant, og bytter neppe med det første

14 XSLTAL - Instant XSLT for everyone Template (layout): dummy Layout dummy Content: Title Lorem ipsum. Curabitur turpis. Ein Blindtext hat keinerlei Bedeutung. Skiller layout fra innhold Fremdeles valid xml Wysiwyg Editors takler dette file:///D:/APACHECON_05%20(E)/xsltal.txt

15 XSLTAL - Instant XSLT for everyone Resultat:... Title Title Layout Section 1 Lorem ipsum. Curabitur turpis. Section 2 Ein Blindtext hat keinerlei Bedeutung. XSLT transformasjoner: TAL til XSLT til ny XSLT Transformér Content med ny XSLT til resultat

16 Forrest (ASF’s publishing tool) Single Source Publishing with Apache Forrest

17 Geronimo JSP2.0Tomcat/Jetty Tomcat Servlet2.4Tomcat/Jetty Tomcat EJB2.1OpenEJB JACC1.0 Web Services1.1Axis JAX-RPC1.1Axis JAXR1.0ScoutjUDDIjUDDI, Scout JAXP1.2Xerces JCA1.5JORAM Connector JMS1.1ActiveMQJORAM JavaMail1.3 JTA1.0 HOWL, to add: JOTM JOTM JMX1.2MX4J Open Source App Servers Supporting Open Source Projects

18 Geronimo Web ContainerTomcat or Jetty Tomcat EJB ContainerOpenEJB DatabaseDerbyHypersonic CMPTranQLJORM, MEDORCustom/Hibernate Database PoolingTranQLC-JDBC PersistenceTranQLSpeedoHibernate MessagingActiveMQJORAM TransactionHOWLJOTM JDO Support---SPEEDO LoggingLog4jMonolog, Log4jLog4j Clustering - HTTP---mod_jk ManagementMX4J JBossMX Deployment/Tools XMLBeans, Velocity GenIC (uses Velocity), Ant, ISHMAEL Open Source App Servers Supporting Open Source Projects

19 Mirae, FOP, ESA Mirae: J2ME Web Services •Morsom demo med Hello World på mobil / server •Ikke veldig nært release Apache FOP: optimizing speed and Memory Consumption •Mange tips for å få FOP til å gå raskere •Redesign pga. Problem med store dokument, tabeller •Mangler ressurser – gruppa er ny Enhancing ESA’s Earth Observation Portal with GIS •Lite innblikk I GIS, men irrelevant for oss

20 BOFs og Lightning talks BOFs: Diskusjon med brukere, comitters og project leads i •Derby, Forrest, Licensing, Web server, Lenya… Lightning talks = Loddtrekning, vinnerne fikk 5 minutter på podiet •Hvordan involvere jenter i OpenSource (invitér dem) •The Things I Hate Most in the Web Server •Det er et par ting vi trygt kan skru av •Appell til deltakere om å involvere seg mer •SubSubVersion •…

21 Derby, CJDBC, Lucene With special guest star

22 Cocoon!

23 Cocoon: sesjoner Vi deltok på 1 tutorial (3 timer) og 3 sessions: •Cocoon - One Hour Portal •Developing Web Applications with Apache Cocoon and the Spring Framework •implementasjon av 6 lags arkitektur •Fowlers “Patterns of Enterprise Application Architecture” som bibel. •Building Print-on-Demand Solutions with Cocoon, Lucene and FOP … Mye for pengene…

24 Cocoon tutorial Gianugo Rabellinos tutorial, 190 siders ppt: •Introduction •Installing •Dissecting •Management and configuration •Sitemap •Components and blocks •Continuations and flow •Forms •Patterns, best practices, pitfalls Egentlig et 3-dagers kurs… så det ble praktiske detaljer, tips og triks, men lite hands-on.

25 10.000ft overview

26 Cocoon Key concepts URI space decoupling Sitemap (dekobler uri fra fysisk lagringssted) Componentized resource assembling Pipelines (dekobler resultat fra sammensetning) Datasource connections and decoupling Source interface dekobla fra fysisk lokasjon / implementasjon (file, URL, database, WebDAV, XMLDB...) Sexies: Stateful applications Web continuations / Flowscript og Forms framework

27 var cart; var user; function checkout() { while(user == null) { cocoon.sendPageAndWait("login.html"); user = UserRegistry.getUser(cocoon.request.get("name")); } cocoon.sendPageAndWait("shippingAddress.html", {who: user}); var address = cocoon.request.get("address"); cocoon.sendPageAndWait("creditCard.html"); var creditCard = cocoon.request.get("creditCard"); cocoon.sendPageAndWait("confirmOrder.html"); EnterpriseSystem.placeOrder(user, cart, address, creditCard); cocoon.sendPage("orderPlaced.html"); } Back button – where is thy sting? Cocoon: Flowscript Continuation: lagret eksekveringspunkt

28 Cocoon: Forms MVC based form framework Provides: Strongly-typed data: a date field is a java.util.Date. Automatically. Validation: declarative. Handled for you. Automatically. Binding: to objects (EJB, POJOs...) or to XML, your choice. Automatically.

29 Cocoon: Preparing Last ned fra http://cocoon.apache.org/http://cocoon.apache.org/ Unzip C:\java\cocoon-2.1.7> build.bat (Windows) Ta en røyk eller 2 C:\java\cocoon-2.1.7>cocoon.bat servlet http://localhost:8888/ Det virker! …Jeg brukte 5 timer på å flytte utviklingssiten vår til cocoon…

30 Konklusjon Hva tjente vi på å ofre ca. 45.000,- og 2 ukeverk?

31 Utbytte Tid: Rask innføring i mange prosjekt Minst 1 måned på å samle halvparten av informasjonen selv Den andre halvparten ville vi aldri funnet. Perfekt teknologi-briefing (og hvor ofte trenger vi det?) Innsider tips Ærlig informasjon: her selges ingenting Nok informasjon til å forkaste eller gå videre Tips om alternativer Nye ideer, fann flere interressante ting Inspirasjon, motivasjon, kontakter Mat og drikke (gratis øl til 23:00) Penger: bytte ut Oracle? “Gratis” clustering?

32 Takk! Var det noe mere?

33 Diskusjoner •Bør jeg dra på ApacheCon selv? •Hvilke er de gode Open Source prosjektene? Hvordan finner jeg ut av det og vurderer det for å kunne inkludere det i egne system? •Hvordan kan jeg bidra best? Bør vi gjøre det - det blir kanskje bare støy, og koden / dokumentasjonen min er helt sikkert for råtten til å legge ut der... Hvordan får jeg det inn i arbeidstiden? •Hvordan gjøre et arkitektur forprosjekt, som det vi er inne i nå hos oss? Er det interressant med flere slike presentasjoner? Tung kontra livlig prosess. •Forretningsverdien og -muligheter ved bruk av open source i "ekte" forretnings applikasjoner. Hva er fordelene (og ulempene) i en forretningsmodell som bygger på bruk av, og bidrag til, open source prosjekter? Hvordan argumentere overfor de som insisterer på å kjøpe fra komersielle leverandører som tar "ansvar" for det de leverer?


Laste ned ppt "ApacheCon Europe 2005 Tommy Skodje John Russell NKI Fjernundervisning Copyright? Noe av materiellet er kopiert fra presentasjonen som ble distribuert på."

Liknende presentasjoner


Annonser fra Google