Open Source and Java Thomas Wiradikusuma (wiradikusuma@gmail.com)‏ Java User Group Indonesia SOFTWARE FREEDOM DAY 2008 UNIVERSITY OF INDONESIA, DEPOK
Java User Group Indonesia Biggest (2900+) Java-only community in Indonesia. Members vary from students, professionals to business owners.  Founded in April 2003 by open source entrepreneur Frans Thamura. Currently coordinated by duo JUG Leaders, Thomas Wiradikusuma and Joshua Partogi. Sister communities: JUG Geulis, JUG JogloSemar and many more. Part of JUG worldwide, a group of people who share a common interest in Java technology.
Thomas Wiradikusuma Systems Architect in m-STARS, one of the biggest Content Provider in Indonesia. Founder of Open Source Dewantara Student Information System. Currently writing a book to help people pick the right technology when learning or doing development in Java.
Agenda Open source introduction Java introduction Open source Java Demo and QA session
THE SOURCE IS STRONG WITH YOU Open Source Introduction
A Journey to the Source Everything begins from the Source (code). Geek, err, programmer creates the source code. Source code gets compiled by compiler, resulting in executable (binary code).
Protecting the Source In proprietary software, typically you buy a license (the right) to use some binary code. You do not buy ownership. No access to the Source: Can’t add feature. Can’t fix bug. Can’t do security audit. Your life is in the hands of Vendors (just hope they don’t go out of business or end support).
Meet Open Source Full access to the Source. What if you can’t program? Don’t worry, lots of geeks can. Distribute (make copies) legally. Software distribution cost is virtually zero. If it's free to share, why not? “ With enough eyeballs, all bugs are shallow....” (Linus’s Law)
FSF and OSI Free Software Foundation, founded by Richard Stallman. More philosophical. Open Source Initiative, founded by Bruce Perens and Eric S. Raymond. More practical. FOSS (Free/Open Source Software) for those who don’t care about the differences.
Benefits of Open Source Cost: Zero acquisition cost. Freedom: Not restricted to modify, learn, distribute. No Lock-in means your investment is safe. Quality: Cutting edge innovation. Vendors innovate on top of a common base. Peer review. Bugs, security holes found by others. Programmers write better code/docs, knowing it'll be scrutinized, their respect on the line.
Legal Stuff The code author still own the copyright, just granting a blanket license to anybody who wants one, the license of which permits them certain rights to the code, under certain conditions. Common Open Source licenses: Apache Software License BSD License Common Development and Distribution License GPL Mozilla Public License Dual license is possible, but harder if you don’t own all the code.
WRITE ONCE, RUN ANYWHERE Java Introduction
What is Java? Three in one: Programming language Virtual Machine Platform A product of Sun Microsystems Open sourced in  November 2006 under the GNU General Public License Used in a wide variety of computing platforms
Java Programming Language C-like dialect public class Hello { public static void main(String args[]) { System.out.println(“Hello!”); } } Object oriented Interpreted and compiled Widely used to teach Programming 101 in many courses
Java Virtual Machine (JVM) Makes Java application portable Code compiled into bytecode JIT (Just In Time) native compiler Available in a wide range of computer architecture
Java Platform Java Card , applet embedded in smart card Java ME (Micro Edition) , for cellphone Java SE (Standard Edition) , desktop application and everything else  Java EE (Enterprise Edition) , Java SE with additional enterprise packages JavaFX , emerging rich client platform, Flash-like Android ,   from Google, not the “standard” one
AS FREE AS THE WIND BLOWS Open Source Java
Runtime OpenJDK is the effort by Sun Microsystems to release a fully buildable Java Development Kit based completely on free and open source code. See also: Apache Harmony, IcedTea, GNU Classpath.
Operating System JNode aims to make a Java operating system for personal use. Any java application should run on it, fast & secure. See also: Sanos, JX, Sun Java Desktop System.
IDE Eclipse was originated from IBM VisualAge. Meant for Java developers but also available for other programming languages.  See also: NetBeans, jEdit, BlueJ.
Database H2 Database is a very fast lightweight Java-based RDBMS. See also: Derby, db4o, HSQL.
CMS Alfresco is an Enterprise Content Management (ECM), providing Document Management, Collaboration, Records Management, Knowledge Management, Web Content Management and Imaging. See also: Nuxeo, Daisy, Magnolia.
ERP Compiere is an ERP and CRM business solution for the Small and Medium-sized Enterprise (SME) in distribution, retail, service and manufacturing.  See also: OFBiz, Openbravo.
Office Suite OpenOffice was originally derived from StarOffice, an office suite developed by StarDivision and acquired by Sun Microsystems in August 1999.  See also: NeoOffice.
Framework/Library Too many to mention! Covers almost everything end-to-end Major source/contributors: Apache Foundation Eclipse Foundation Sun Microsystems IBM Oracle
WHAT YOU SEE IS WHAT YOU GET Demo
Java ME and Mobile LWUIT UI library that is bundled together with applications and helps content developers in creating compelling and consistent Java ME applications. Android Created by Google.  Software stack for mobile devices that includes an operating system, middleware and key applications.
Java SE and JavaFX Filthy rich clients Created by Romain Guy. Swing “make-over”. jMonkeyEngine Created by Mark Powell. High performance game engine. JavaFX Powerful client technology for creating rich Internet applications (RIAs). Doesn’t work in my Mac, sorry :( Try one yourself at javafx.com.
Java EE AppFuse Created by Matt Raible. Helps to “kick-start” Web applications quickly and efficiently. At its core, AppFuse is a project skeleton, similar to the one that's created by IDE when you click through a wizard to create a new web project.
JUG Indonesia jug.or.id [email_address] Thomas Wiradikusuma jroller.com/wiradikusuma [email_address]

Open Source And Java

  • 1.
    Open Source andJava Thomas Wiradikusuma (wiradikusuma@gmail.com)‏ Java User Group Indonesia SOFTWARE FREEDOM DAY 2008 UNIVERSITY OF INDONESIA, DEPOK
  • 2.
    Java User GroupIndonesia Biggest (2900+) Java-only community in Indonesia. Members vary from students, professionals to business owners. Founded in April 2003 by open source entrepreneur Frans Thamura. Currently coordinated by duo JUG Leaders, Thomas Wiradikusuma and Joshua Partogi. Sister communities: JUG Geulis, JUG JogloSemar and many more. Part of JUG worldwide, a group of people who share a common interest in Java technology.
  • 3.
    Thomas Wiradikusuma SystemsArchitect in m-STARS, one of the biggest Content Provider in Indonesia. Founder of Open Source Dewantara Student Information System. Currently writing a book to help people pick the right technology when learning or doing development in Java.
  • 4.
    Agenda Open sourceintroduction Java introduction Open source Java Demo and QA session
  • 5.
    THE SOURCE ISSTRONG WITH YOU Open Source Introduction
  • 6.
    A Journey tothe Source Everything begins from the Source (code). Geek, err, programmer creates the source code. Source code gets compiled by compiler, resulting in executable (binary code).
  • 7.
    Protecting the SourceIn proprietary software, typically you buy a license (the right) to use some binary code. You do not buy ownership. No access to the Source: Can’t add feature. Can’t fix bug. Can’t do security audit. Your life is in the hands of Vendors (just hope they don’t go out of business or end support).
  • 8.
    Meet Open SourceFull access to the Source. What if you can’t program? Don’t worry, lots of geeks can. Distribute (make copies) legally. Software distribution cost is virtually zero. If it's free to share, why not? “ With enough eyeballs, all bugs are shallow....” (Linus’s Law)
  • 9.
    FSF and OSIFree Software Foundation, founded by Richard Stallman. More philosophical. Open Source Initiative, founded by Bruce Perens and Eric S. Raymond. More practical. FOSS (Free/Open Source Software) for those who don’t care about the differences.
  • 10.
    Benefits of OpenSource Cost: Zero acquisition cost. Freedom: Not restricted to modify, learn, distribute. No Lock-in means your investment is safe. Quality: Cutting edge innovation. Vendors innovate on top of a common base. Peer review. Bugs, security holes found by others. Programmers write better code/docs, knowing it'll be scrutinized, their respect on the line.
  • 11.
    Legal Stuff Thecode author still own the copyright, just granting a blanket license to anybody who wants one, the license of which permits them certain rights to the code, under certain conditions. Common Open Source licenses: Apache Software License BSD License Common Development and Distribution License GPL Mozilla Public License Dual license is possible, but harder if you don’t own all the code.
  • 12.
    WRITE ONCE, RUNANYWHERE Java Introduction
  • 13.
    What is Java?Three in one: Programming language Virtual Machine Platform A product of Sun Microsystems Open sourced in November 2006 under the GNU General Public License Used in a wide variety of computing platforms
  • 14.
    Java Programming LanguageC-like dialect public class Hello { public static void main(String args[]) { System.out.println(“Hello!”); } } Object oriented Interpreted and compiled Widely used to teach Programming 101 in many courses
  • 15.
    Java Virtual Machine(JVM) Makes Java application portable Code compiled into bytecode JIT (Just In Time) native compiler Available in a wide range of computer architecture
  • 16.
    Java Platform JavaCard , applet embedded in smart card Java ME (Micro Edition) , for cellphone Java SE (Standard Edition) , desktop application and everything else Java EE (Enterprise Edition) , Java SE with additional enterprise packages JavaFX , emerging rich client platform, Flash-like Android , from Google, not the “standard” one
  • 17.
    AS FREE ASTHE WIND BLOWS Open Source Java
  • 18.
    Runtime OpenJDK isthe effort by Sun Microsystems to release a fully buildable Java Development Kit based completely on free and open source code. See also: Apache Harmony, IcedTea, GNU Classpath.
  • 19.
    Operating System JNodeaims to make a Java operating system for personal use. Any java application should run on it, fast & secure. See also: Sanos, JX, Sun Java Desktop System.
  • 20.
    IDE Eclipse wasoriginated from IBM VisualAge. Meant for Java developers but also available for other programming languages. See also: NetBeans, jEdit, BlueJ.
  • 21.
    Database H2 Databaseis a very fast lightweight Java-based RDBMS. See also: Derby, db4o, HSQL.
  • 22.
    CMS Alfresco isan Enterprise Content Management (ECM), providing Document Management, Collaboration, Records Management, Knowledge Management, Web Content Management and Imaging. See also: Nuxeo, Daisy, Magnolia.
  • 23.
    ERP Compiere isan ERP and CRM business solution for the Small and Medium-sized Enterprise (SME) in distribution, retail, service and manufacturing. See also: OFBiz, Openbravo.
  • 24.
    Office Suite OpenOfficewas originally derived from StarOffice, an office suite developed by StarDivision and acquired by Sun Microsystems in August 1999. See also: NeoOffice.
  • 25.
    Framework/Library Too manyto mention! Covers almost everything end-to-end Major source/contributors: Apache Foundation Eclipse Foundation Sun Microsystems IBM Oracle
  • 26.
    WHAT YOU SEEIS WHAT YOU GET Demo
  • 27.
    Java ME andMobile LWUIT UI library that is bundled together with applications and helps content developers in creating compelling and consistent Java ME applications. Android Created by Google. Software stack for mobile devices that includes an operating system, middleware and key applications.
  • 28.
    Java SE andJavaFX Filthy rich clients Created by Romain Guy. Swing “make-over”. jMonkeyEngine Created by Mark Powell. High performance game engine. JavaFX Powerful client technology for creating rich Internet applications (RIAs). Doesn’t work in my Mac, sorry :( Try one yourself at javafx.com.
  • 29.
    Java EE AppFuseCreated by Matt Raible. Helps to “kick-start” Web applications quickly and efficiently. At its core, AppFuse is a project skeleton, similar to the one that's created by IDE when you click through a wizard to create a new web project.
  • 30.
    JUG Indonesia jug.or.id[email_address] Thomas Wiradikusuma jroller.com/wiradikusuma [email_address]

Editor's Notes