Download presentation
Presentation is loading. Please wait.
1
IBM Software Group ® IBM Open Source Software Competition Mark Wallace, Software Architect, IBM Dublin Software Lab
2
IBM Software Group | WebSphere software Agenda Open Source Eclipse New Developments Summary Questions
3
IBM Software Group | WebSphere software Free Software versus Open Source Free software is a matter of liberty not price. You should think of “free” as in “free speech”, not as in “free beer”. (http://www.fsf.org/)http://www.fsf.org/ Perceived drawbacks to Free Software Confusion as to it’s definition Googling for free software returns many different things http://www.fsf.org/licensing/essays/free-sw.html Licensing “Copy left” requirement Lack of quality Unknown pedigree Scalability, serviceability, reliability, localization, … Largely unfounded Not attractive to commercial enterprises “Open source is a development methodology; free software is a social movement”
4
IBM Software Group | WebSphere software What is Open Source Open Source Initiative (OSI) maintains a formal definition of Open Source Software (OSS) recognized by the open source community. OSI has a web site at: http://www.opensource.org Open Source Definition current criteria (paraphrased): Free Redistribution Source Code Derivative Works Integrity of The Author's Source Code No Discrimination No Discrimination Against Fields of Endeavor Distribution of License License Must Not Be Specific to a Product License Must Not Restrict Other Software License Must Be Technology Neutral The basic idea behind open source is very simple: When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it, people fix bugs. And this can happen at a speed that, if one is used to the slow pace of conventional software development, seems astonishing.
5
IBM Software Group | WebSphere software Open Source Development Methodology Virtual community of programmers, leveraging the Internet for communication, who create / debug / maintain / evolve a source code base OSS projects often self-organizing: Someone determines a need and communicates that need to others on the Internet If the project generates interest, one or more programmers begin writing code Someone takes a leadership role and begins to map out a project road map Interested programmers join the project to contribute new code or fine-tune existing code A network of participants, linked via the Internet, forms Tiered participation levels emerge
6
IBM Software Group | WebSphere software IBM and Open Source IBM has contributed many projects to the open source community Eclipse Project: http://www.eclipse.orghttp://www.eclipse.org Project dedicated to providing a robust, full-featured, commercial- quality, industry platform for the development of highly integrated tools Apache Derby: http://db.apache.org/derbyhttp://db.apache.org/derby Database management system developed by the Apache Software Foundation Linux Technology Center (LTC): http://www.ibm.com/linuxhttp://www.ibm.com/linux Work towards Enterprise enablement of the Linux OS through the development and contribution of technology, utilities, tools and code Other contributions IBM Pledges 500 U.S. Patents To Open Source In Support Of Innovation And Open Standards
7
IBM Software Group | WebSphere software IBM and Open Source IBM uses open source in its products Building products on top of open source projects e.g. Rational Application Developer Apache webserver to support and bundle with its WebSphere suite IBM promotes open source development Externally AlphaWorks: http://alphaworks.ibm.comhttp://alphaworks.ibm.com DeveloperWorks: http://www- 130.ibm.com/developerworks/opensourcehttp://www- 130.ibm.com/developerworks/opensource Internally Using open source intranet site to promote software componentization and reuse
8
IBM Software Group | WebSphere software Agenda IBM and Open Source Eclipse New Developments Summary Questions
9
IBM Software Group | WebSphere software Java Tooling From www.eclipse.org...www.eclipse.org “Eclipse is an open source community whose projects are focused on providing an extensible development platform and application frameworks for building software.” Put more simply... Eclipse is an Open Source Java IDE And so much more.... Multiple languages (Java, C++, COBOL) Debugger Unit Testing Modelling with UML Visual Editing of Java UI Java Web Tools (JSP, EJB, XML....) All through an extensible plugin-based IDE
10
IBM Software Group | WebSphere software Eclipse Project Aims Provide open platform for application development tools Run on a wide range of operating systems Windows, Linux, AIX, MacOS X, etc. GUI and non-GUI components Language-neutral Able to handle different content types Java, HTML, C/C++, JSP, EJB, XML, GIF, etc. Facilitate seamless tool integration At UI and lower level Add new tools easily Attract community of tool developers Including independent software vendors (ISVs) Capitalize on popularity of Java for writing tools
11
IBM Software Group | WebSphere software Why develop plugins that extend Eclipse ? Infrastructure You get a workbench created for free – just add what you need No need to create an environment from scratch Build on Eclipse Modelling Framework (EMF) for model support Build on Graphical Editing Framework (GEF) for graphics support Interoperability Use any of the existing tools in your ‘end-product’ Java Editor, outliner... Explorer, Text editor, search... etc. Examples Java (or any language) code analysis/transformation plugins Any UML related tooling (using EMF) Any Java graphical projects (using GEF)
12
IBM Software Group | WebSphere software Java Perspective Java-centric view of files in Java projects Java elements meaningful for Java programmers Java project package class field method Java editor
13
IBM Software Group | WebSphere software Java Editor Lots of useful features such as.... Method completion in Java editor List of plausible methodsDoc for method
14
IBM Software Group | WebSphere software Top 10 Tips for Eclipse Users Use Code Assist Just press the code assist key combination (by default ctrl-space) and the IDE will either fill in where you’ve started typing or display a menu. Navigate Through Code By ctrl-Clicking You can move to a field, method, or class by holding down the ctrl key and clicking on the identifier you’re interested in. Quickly Open Classes and Resources by Name To open a Java class, press ctrl-shift-T. This will display a dialog box that allows you to type in a class name. Set the Heap Size Eclipse is a large, complex, Java-based IDE. It needs lots of memory to perform well. eclipse -vmargs –Xmx1024M
15
IBM Software Group | WebSphere software Top 10 Tips for Eclipse Users Configure Eclipse To Use a JDK, not a JRE Go to Window -> Preference -> Java -> Installed JREs Use a JDK that supports hot code replace (IBM J9 or JDK 1.4.1+) Use the Eclipse’s Refactoring Support and Code Generation Eclipse also has extensive support for code generation. Use Multiple Workspaces Effectively A workspace is a container of projects that has its own set of preferences and metadata. eclipse –data c:\myworkspace –showlocation Use Templates Open a Java class in an editor, type in “sysout” and press ctrl-space. Set Type Filters If you’re seeing classes show up at the top of your search you know you’re not interested in, filter them out for faster searching.
16
IBM Software Group | WebSphere software Top 10 Tips for Eclipse Users Know the Keyboard Shortcuts ctrl-shift-o: organize imports ctrl-shift-F4: closes all open editor windows ctrl-o: outline popup – very useful for quickly jumping to a method in a large class f4: shows the hierarchy viewer for a class (ctrl-T shows similar data in a popup version) ctrl-m: toggle maximize of the current editor or view ctrl-F11: run the last launched configuration
17
IBM Software Group | WebSphere software Agenda IBM and Open Source Eclipse New Developments Summary Questions
18
IBM Software Group | WebSphere software New Projects AJAX OpenAjax – http://www.openajax.orghttp://www.openajax.org DOJO – http://www.dojotoolkit.orghttp://www.dojotoolkit.org Apache MyFaces – http://myfaces.apache.orghttp://myfaces.apache.org Eclipse ATF (Ajax Toolkit Framework) Groovy CodeHaus – http://groovy.codehaus.orghttp://groovy.codehaus.org Grails – http://www.grails.codehaus.orghttp://www.grails.codehaus.org Project Zero – http://www.projectzero.orghttp://www.projectzero.org
19
IBM Software Group | WebSphere software New Projects Mozilla XULRunner - UI “embedded browser” used widely – http://developer.mozilla.org/en/docs/XULRunner http://developer.mozilla.org/en/docs/XULRunner Asterisk Digium - http://www.asterisk.orghttp://www.asterisk.org Asterisk Now - http://www.asterisknow.orghttp://www.asterisknow.org
20
IBM Software Group | WebSphere software Agenda IBM and Open Source Eclipse New Developments Summary Questions
21
IBM Software Group | WebSphere software IBM Open Source Software Competition The competition is based on fourth year CS projects in each university An IBM Mentor who is a senior software architect from Dublin Software Lab has been assigned to each university To be eligible for participation there must be a minimum of five qualifying projects At the end of the academic year, the mentor will evaluate the projects based on the level of Open Source content and on the overall project results and will select a short list of projects which will in turn be evaluated by a panel at the Software Lab Individual projects, not joint projects, will be evaluated The student with the best project will win a high spec IBM Think Pad
22
IBM Software Group | WebSphere software Resources Articles, tutorials, presentations on Eclipse RCP http://www.eclipse.org/rcp IBM : Web Services general information http://www-128.ibm.com/developerworks/webservices Developerworks http://www-128.ibm.com/developerworks AlphaWorks http://www.alphaworks.ibm.com/ Redbooks http://www.redbooks.ibm.com/ IBM Dublin Center for Advanced Studies http://www.ibm.com/ibm/cas/sites/dublin/ Academic Initiative: http://www.developer.ibm.com/university/scholars/
23
IBM Software Group | WebSphere software IBM Academic Initiative
24
IBM Software Group | WebSphere software Developer Works
25
IBM Software Group | WebSphere software Agenda IBM and Open Source Eclipse New Developments Summary Questions
26
IBM Software Group | WebSphere software Questions
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.