Bindings, Platforms, and Innovation
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
Tracking change and innovation in the enterprise software development community
Posted by Scott Delap on Jun 29, 2007 08:00 AM
The Eclipse Foundation has released its annual coordinated project release (named Europa for 2007). Europa features 21 Eclipse projects for software developers. Putting the size of Europa in perspective:
Among the highlights of the Europa release:
- Eclipse Equinox has added new services and capabilities to ease the development and deployment of server applications running on the Equinox runtime.
- Eclipse Business Intelligence and Reporting Tools (BIRT) has added support for dynamic crosstabs, output to Microsoft Word and Excel formats and now allows for web services to act as a data source. These new features allow for more sophisticated reporting functionality to be integrated into Java applications.
- The Eclipse SOA Tools Project (STP) has made available their first release. The release provides SOA developers tool support for SCA and JAX-WS standards, as well as a BPMN Modeler tool.
- The Eclipse Modeling project has updated the Eclipse Modeling Framework (EMF) to support Java 5 generics, allowing for creation and management of more complex and flexible data models.
- Eclipse Mylyn (formerly named Mylar) has added new collaboration features to enable task-centric collaboration for development teams. For developers working on large applications Mylyn’s task Task-Focused UI reduces information overload and simplifies multi-tasking.
- Eclipse Dynamic Language Toolkit (DLTK) has introduced IDE support for Ruby and provides a framework to reduce complexity of developing IDEs for other dynamic languages, such as TCL and Python.
- Eclipse CDT release has made significant improvements for easier tool chain integration, specifically tighter integration with the MinGW gnu tool chain thus making it easier to develop C/C++ applications on the Windows platform.
- The Java development tools (JDT) project has introduced a number of features to increase the productivity of Java developers using Eclipse, including an enhanced debugger via hyperlinking and a new Quick Access feature to provide easier IDE navigation.
- Eclipse Web Tools Project (WTP) has introduced a number of features to increase the productivity of Web developers including a new visual editor for HTML, JSP and JSF, as well as support for new standards, such as Axis2 and basic JEE 5 support.
Industry analysts have also been covering Europa leading up to its release. Joe Niski of Burton Group recently comment on Europa as a platform for tools developers:
...it's clearly targeted toward tool-builders and ISVs. As the Europa home page states, "We are doing this simultaneous release to support the needs of the ecosystem members who integrate Eclipse frameworks into their own software and products."If you're interested in model driven architecture and domain-specific languages, if your company's use of dynamic scripting languages such as Ruby and PHP is increasing, if you're looking for ways to improve developer collaboration across multiple locations, or if you're evaluating your development tool strategy, you should familiarize yourself with the projects in Eclipse Europa bundle...
RedMonk's Michael Coté has also provided a detailed analysis. He notes three main themes:
Platform for Platforms...The primary Eclipse mission is to provide the raw tools for building other software. Those tools can be in the form of IDEs (like the Java Development Toolkit, the C/C++ Development Toolkit, and the Dynamic Languages Toolkit) or in the form of frameworks that are used to produce other software rather than “finished tools” themselves ... As the Eclipse platform is largely focused on providing tools for creating tools ... Cases like NASA’s use of Eclipse as a platform point towards success as well...
Tools for Programmers
...Mylyn will be incredibly helpful for developers, and the Europa bundled release looks even more so. Even if you don’t immediately “get it” with the task focusing features of Mylyn, the bug/task-tracking system integration is enough to warrant a look-see ... the Data Tools Project (DTP) looks like it will deliver an out-of-box, free database browser and query tool in Eclipse ... Another subtle shift in Europa comes in the form of packaging. Where-as Callisto included documentation for how to cobble together the Eclipse and the relevant plugins for different roles (Java, C/C++, “Enterprise Development,” mobile, etc.), Europa will include the actual downloads there-in. As one developer mentioned to me, NetBeans had always been good at that and it’s good for Eclipse to catch-up ...
The Broader Context of OSGi
For me, the OSGi tooling and thinking is the most interesting aspect to watch. There’s a big, important standard discussion/battle looming over the horizon in the Java world ... On the Sun devotee side we have in-development superpackages and JSR 277. On the other side, which includes Eclipse and several other Java leaders I’ve spoken with, we have OSGi. While OSGi was developed as a standard, it wasn’t developed in the standards church of Java, the JCP. So, the question of which technology Java on a diet with is up for grabs ... So, there’s the context. Europa’s Equinox is a good line in the sand from Eclipse: it’s running code, for a long-used way to provide modules/components in Java. Running code can be hard to beat, but so can accepted standards that are eventually shipped with the platform...
EclipseZone has coverage on the SWT enhancement in Europa. SWT provides the UI widget toolkit foundation for the Eclipse Platform and plugins build on top of it:
...work has gone to support WPF on Windows Vista, including accellerated rendering of double-buffered canvases and drag and drop with the desktop. Although 3.3 will be treated as early access for Windows Vista/WPF, early feedback suggests that it's good enough for day-to-day developer use ... Finally, there's also some supported and new widgets. One of my favourites is that the 'search' field now has the appearance of the OS's search field ... There's also a new Date/Time widget, that can be used to display (or prompt for) dates in a calendar-like fashion ...
The complete list of Eclipse projects available in the Europa release includes:
A list of reviews of the Europa release can be found on the eclipse.org website.
Download the Free Adobe® Flex® Builder 3 Trial
Adobe® Rich Internet Application Project Portal
Effective Management of Static Analysis Vulnerabilities and Defects
now if only they would fix the download: "Eclipse downloads - file unavailable The selected file is invalid, or it is no longer available for download."
Did anyone work on making it more usable? The fact that you need profiles to minimize the amount of stuff on the screen at once should tell you it's just too cluttered. How about the FUBAR'd project structure and setup? Coming from the IDEA world, I found the first stuff you always do (setting up projects) to be horribly awkward and painful. Moving to something like the project / modules setup IDEA uses would be a big step forward.
Yes, usability is a key focus for many Eclipse projects, including Mylyn. Note that what Mylyn does is focus the resources you're working on by showing you tje files and methods that are relevant to your task. While Mylyn does provide a lot of UI automation, such as working set management and editor restore when you multitask, it does not take the problematic approach of automatically or adaptively filtering the UI. For that we instead rely on good UI design and discussions between the projects on how to keep the UI minimal and streamline the user experience. While we will always strive to provide good defaults, the key thing is that user has full control over what they see in the UI thanks to the customizable Perspective mechanisms. Regarding project structure, there are definitely tradeoffs between the various approaches that IDEs have to this. Personally I really like Eclipse's because it makes it very easy to map projects to components, whatever your definition of component is. But the bottom line is that as long as the IDE allows you to specify the structure of all your source code in version control and check that out with a couple of clicks you're in good shape. Out of the box Eclipse does that via it's Team Project Set import/export as well as Ant buildfile import. You can also get the Maven Eclispe plug-in if you specify your projects via POMs. After that you get considerable benefit of having the project abstraction because they make it easy to define things like search scopes and launch/deployment configurations. -- Mik Kersten President & CTO, http://tasktop.com Project Lead, http://eclipse.org/mylyn
+1 Mylyn. The JIRA integration is excellent. Still expects you to log-in to view attachments though...fixing this would be a good to have. Eli.
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.
This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.
This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.
This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.
After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.
IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.
Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.
4 comments
Watch Thread Reply