-
keyboard_arrow_down
Pradeep Balachandran / Benjamin Cabé / Daniel Megert / Mike Milinkovich / Stephan Herrmann - Q & A with the Eclipse Committee
Pradeep BalachandranProgram DirectorIBMBenjamin CabéIoT EvangelistEclipse FoundationDaniel MegertEclipse Platform and JDT Lead, Eclipse PMCIBMMike MilinkovichExecutive DirectorEclipse FoundationStephan HerrmannMember FutureLabGK Softwareschedule 7 years ago
45 Mins
Keynote
Intermediate
Q & A with the Eclipse Committee
-
keyboard_arrow_down
Viral B. Shah - Building an Open Source Community
20 Mins
Keynote
Beginner
Julia is a modern language that combines the productivity of Python, R, Matlab, and SAS with the performance of C, Fortran and Java. In doing so, it solves the two language problem, where specialists write algorithms in a scripting language and then programmers deploy it in a systems language.
In this talk, I will share our experience about the evolution of the Julia community - how it grew from 3 contributors to 500, and from 0 to 1000 packages in the last 3 years. -
keyboard_arrow_down
Sumit Rao - Tech Driven Innovation in Indian Context
20 Mins
Keynote
Intermediate
What are the challenges and opportunities for creating IP in India in the area of software development? With a changing demographic in a connected world, there are several avenues for entrepreneurship both in startups and in the corporate world for India to forge ahead. What should we do in order to become the best in this business?
-
keyboard_arrow_down
Mike Milinkovich - Open IoT
45 Mins
Keynote
Executive
The opportunities for the Internet of Things are staggering, with estimates in the order of millions of developers, billions of devices, and trillions of dollars over the next decade or less. With numbers like those it is to be expected that the investment levels from industry and venture capital will be staggering. But much of this investment is ignoring one fundamental truth: the basic building blocks of the Internet of Things are going to be built on top of free and open source software. Business models that expect to achieve market dominance based on proprietary business models are going to fail. My talk will discuss some of the underlying trends that will drive this outcome.
-
keyboard_arrow_down
Vidyasagar Machupalli - Build, run and manage MobileFirst apps using Eclipse
45 Mins
Talk
Beginner
IBM MobileFirst Platform enables developers/enterprises to build, enhance and continuously deliver mobile apps more efficiently. It can be used on premises environment or as a cloud offering.
IBM MobileFirst Platform Studio (previously Worklight Studio), for eclipse is an award-winning, open standard mobile application platform for smartphones and tablets that helps you efficiently build, run, and manage mobile applications.In this talk, we will demo MobileFirst Studio, which is an Eclipse plug-in that supports the development of rich, mobile web, native, and hybrid apps. It contains an embedded version of MobileFirst Server.
-
keyboard_arrow_down
Naresh Jain - Unleashing the Power of Automated Refactoring with JDT
45 Mins
Demonstration
Intermediate
Refactoring is a series of small steps, each of which changes the program’s internal structure without changing its external behaviour. Refactoring, as a tool, to automate behaviour-preserving transformations to source code are not only very popular in agile development environments, but have been widely established as a cornerstone of the daily software development process, regardless of the methodology being used. Most major development environments such as Eclipse offer a set of powerful refactoring to substantially increase development productivity.
In this live demo, I’ll show
- the real value of refactoring,
- how we practice it safely,
- when and why we refactor,
- the power of refactoring tools and
- when we avoid refactoring.
I’ll be using two real-world examples of refactoring and sharing what I’ve learned about this important practice of the last 15 years.
-
keyboard_arrow_down
Praveen / Pradeepto Bhattacharya - Atomic Developer Bundle: Putting Development Front and Center
PraveenSoftware EngineerRed HatPradeepto BhattacharyaPrincipal EngineerRed Hatschedule 7 years ago
20 Mins
Talk
Beginner
-
keyboard_arrow_down
Stephan Herrmann - Runtime Specialization - Java has never been so dynamic before
45 Mins
Talk
Advanced
Much of software development is about creating variants of things that have been done in similar ways before. Typical means to create such variants include inheritance / subtyping, extension points and dependency injection. Unfortunately, all of these approaches require that the original author anticipated the required variation points in his/her module, to enable you to create whatever variant comes to your mind. This means, modules intended for reuse tend to be bloated with indirections just in case someone needs to modify something, and still many interesting adaptations are simply not possible due to lack of pre-planning.
Object Teams reverses this situation. Creating unanticipated variants is at the core of this approach. Starting with the Neon release, even a running application can be morphed into a new variant of itself.
-
keyboard_arrow_down
Olivier Prouvost - Eclipse 4 migration overview
45 Mins
Talk
Beginner
You probably have an Eclipse 3.X application and you have a lot of questions about your migration…to Eclipse 4.
This talk is proposed for those who can not attend the migration workshop. It will summarize the main ideas and will help you to define your migration strategy.
It will explain the confusion about the current status and future of the Eclipse Platform in its various guises. Is Eclipse 3.x dead? Should new development always use Eclipse 4? Should companies rewrite existing Eclipse 3.x applications on Eclipse 4? Is it possible to migrate my application? What are the prerequisites? And if not, then why did we bother with Eclipse 4?
If your choice is to migrate all or pieces or your application, it will answer to some questions : How should I proceed? Which components can be migrated? is there some tooling that could help me? Should I keep the compatibility layer or can I remove it definitively? Should I migrate my plugin totally or can I do it step by step? Could I develop new Eclipse 4 plugins and mix them with my old legacy code? What are the limits ? Where can I find ressources to help me?
-
keyboard_arrow_down
Allahbaksh Asadullah / Avitash Purohit - Java 9 a boon to Enterprises
Allahbaksh AsadullahPrincipal Product ArchitectCorp Tech, InfosysAvitash PurohitTeam LeadLitmus World Marketing Technologies Pvt. Ltd.schedule 7 years ago
45 Mins
Talk
Intermediate
Java is the language of choice in enterprises. Many of the large software systems are built using Java. The key reason for Java being language of choice was the tool support, robust JVM, statically typed language and modularity. Modularity is one of the key aspects of the design. Eclipse (built on Java) is the wonderful example of a modular software system based on OSGi specification (Equinox). Project Jigsaw which is umbrella project is aimed to design and develop a standard module system which is compatible with OSGi. Brining modularity within the platform will add many improvement and will also provide the ability to run it down to small devices. Jigsaw has been one of the major features of JDK 9.0. The talk will cover details of project Jigsaw.
Java is mostly used presently at server side. Improvement in the server side processing and ability to evolve with the new specification and protocol would boost the performance. HTTP/2 which is the latest specification makes use of streams. Java 9 brings native support of HTTP/2.
Java has been a programming language of choice for many years in academia, till the less verbosity, better interpreters and tools for JavaScript, Python evolved. The language evolved a bit 2014 with the introduction of Lambda in Java 8, which provided less verbosity. Still the absence of Read-Eva-Print Loop (REPL) moved the academia to embrace python as the language of choice for teaching problem solving to the students. Java 9 is bringing jShell which provides REPL functionality in Java 9.
-
keyboard_arrow_down
Vaibhav Choudhary - Welcoming G1 Garbage Collector With Eclipse
45 Mins
Talk
Intermediate
Java Platforms team is all set for JDK9 release. I am associated with G1 from last 6 years. Finally G1 is a default collector in JDK9. From 2009, G1 has improved a lot and the bench-marking says its the best we can offer :). Eclipse gives a very beautiful view of G1 in working.
-
keyboard_arrow_down
Manoj NP / Jay / Sasikanth Bharadwaj - Eclipse JDT & Java 9 - The Story so far.
Manoj NPCommitterEclipse JDT CoreJayCommitter and Co-Lead for Eclipse JDT CoreEclipse JDT Core (IBM)Sasikanth BharadwajSoftware EngineerCommitter, Eclipse JDT Core (IBM)schedule 7 years ago
20 Mins
Talk
Beginner
Java 9 introduces a major enhancement for modularity that helps define modules - The modular structure brings out a new paradigm shift in the way the programmer would program. From the perspective of JDT and its friends, this change means a relook at the existing concepts - starting from Java Model, through other core pillars of JDT. With the inputs from the EclipseConNA 2016, the JDT core is undergoing a change to incorporate these change both conceptually and at the core implementation level. In this talk, we will provide a brief introduction to the Java 9, especially to those parts which affect JDT, we would also "redefine" some of the concepts in the Java Model, and then we will talk about the challenges faced and the solutions provided in JDT as a whole for Java 9.
-
keyboard_arrow_down
Nadeesh TV - Invokedynamic under the hood
45 Mins
Talk
Intermediate
To exploit the cross platform nature and powerfulness of the JVM, most of the nonJava programming languages (python, ruby, clojure etc) had ported themselves to run on JVM. But performance of these nonJava languages were poor compared to their nonJVM version. Java 7 introduced a new byte code instruction invokedynamic (indy) to support dynamic languages running on the JVM. The
invokedynamic
instruction simplifies and potentially improves implementations of compilers and runtime systems for dynamic languages on the JVM. Later in Java 8, indy became the backbone of the Java 8's most popular feature lambda expression. -
keyboard_arrow_down
G Bhanu Prakash - JDK-9 - Modules and Java Linker (JLink)
45 Mins
Talk
Intermediate
Java 9 is going to provide several developer tools which complement the modular system and enhance developer productivity.
I plan to give overview of new Java Linker tool that would assist in creating a modular Java runtime. "jlink" assembles and optimizes a set of modules and their dependencies and "jmod" for creating modular packages with class files and resources. "jimage" which is 5x more performant than zip or jar formats.
I plan to give interactive session in how to create a modular JDK image with specified root modules using jlink. Describe the plugin api for extension using custom modules.
I shall give insights on tools usage and internals which would help developers in decision making along with benchmark results.
-
keyboard_arrow_down
Sravan Kumar Lakkimsetti - Release Engineering at Eclipse
Sravan Kumar LakkimsettiAdvisory Software EngineerCommitter, Eclipse SWT and Releng (IBM)schedule 7 years ago
20 Mins
Talk
Intermediate
Have you ever wondered how the results automatically appear in the website? This talk will take you through this journey from the code to the results –the multi-stage, multi-tech release engineering process internals.
There two different streams producing three different regular builds ( not taking into account the special P and Y) with the final bits running four different platforms making it a gruesome 32 hour journey optimized by parallelization. This process has four pipelined stages, with each stage driven by separate owners – one of them being Maven-Tycho configuration and the rest being a combination of shell Scripts, Ant, Junit in sync with multiple Hudson servers (HIPP).
To give a peek into the stages : The first stage has private as well as publicly visible parts, using two stage cloning with bare bones and normal git repos owned by Scripts. Second Stage, owned by Maven-Tycho, is responsible for three maven-tycho builds. This output feeds into the next phase, owned by shell-scripts, which does a few things resulting in a transient pseudo-private download zone which again feeds into the last stage owned by Hudson-Ant-Junit Config and is responsible for actual firing of the tests in multiple platforms. Finally you have the publicly viewable html based downloads and results.
-
keyboard_arrow_down
Pradeep Balachandran - Cloud development using Eclipse
20 Mins
Demonstration
Intermediate
Eclipse IDE is ubiquitous and the IDE of choice for application development no matter whether you are developing in Java/JEE or Python or Ruby or PHP - Eclipse IDE has a flavour that suits your taste. In recent times, the landscape of applications have undergone a significant change. More and more applications are developed by composing services and are deployed on specialized "Cloud" environments known as "Platform as a Service" - PaaS for short.
In this talk, we take a look at the various tools available in Eclipse Open Source ecosystem for developing applications for the cloud environment. We will traverse the journey of an app from conception to deployment. We will cover an online store application as an example. This talk will cover the tools that are best suited for each phase of the application development life-cycle - planning, work break down, coding, building and deployment. The tools include Eclipse Orion, Eclipse Tools for Cloud Foundry, Eclipse Tools for Bluemix, GitHub. We will also look at enabling continuous deployment using this tool set - practicing DevOps in true sense.
-
keyboard_arrow_down
Stephan Herrmann - The Road to NullPointerException-free Software - with Eclipse JDT
240 Mins
Workshop
Intermediate
NullPointerException (NPE) is a dominating, omnipresent risk in each and every Java application, and at it's root it is an embarrassingly trivial problem.
Over the years, Eclipse JDT has developed several levels of tool support for statically detecting NPEs at compile time. This tutorial will introduce flow analysis, annotation-based contracts and a null-aware type system as the main tools against NPE.
Additional focus lies on organizational issues facilitating the migration from the risky Java era into an NPE-free software world.
-
keyboard_arrow_down
Sergey Prigogin - Faster index for Java, from crazy idea to reality
45 Mins
Talk
Beginner
Did you ever have to cancel Open Type dialog because you didn't have time to wait for the search indices to initialize? Does slowness of populating the Call Hierarchy view annoy you? We suspect that for the majority of Eclipse Java users the answer to these questions is yes.
The proposed solution to these and many other JDT sluggishness problems is a new index containing an order of magnitude more information about Java code than the old JDT indexes and caches. The technology chosen for the new, faster JDT index is heavily influenced by the CDT index that has been in use for almost a decade and proved to be very efficient and flexible. CDT borrowed a lot of code and ideas from JDT. Now it's time to pay back.
Come to this talk to learn about the design of the new index and to see how it makes JDT blazingly fast.
-
keyboard_arrow_down
Subramanyam C / Annamalai Chockalingam - Sleep Peacefully as Maven Tycho Build your Product !
Subramanyam CEngineering LeadEverteamAnnamalai ChockalingamFounder, CEOANCIT CONSULTINGschedule 7 years ago
45 Mins
Demonstration
Beginner
We Demonstrate how to build Eclipse Plugins, Features, Repository and Products using Maven-Tycho. Integrate with Jenkins continuous integration tool.
-
keyboard_arrow_down
Neeraj Bhusare - Eclipse Xtend - a better Java with less "noise"
45 Mins
Talk
Intermediate
Xtend is a fully-featured Java like language that is tightly integrated with Java. It has a more concise, readable and expressive syntax than Java, and provides additional features such as Type inference, Extension methods and Lambda expressions. It comes with state of the art IDE support for Eclipse and IntelliJ IDEA. It also provides interface for integration of text editors for your language in Web applications.
Xtend itself is implemented in Xtext and it is a proof of concept of how involved a language implemented in Xtext can be.
The objective is to introduce the audience to Xtend language and how it can be used to write cleaner code against any Java APIs and solve day-to-day challenges in much better ways.