Download 20+ sessions

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
IBM at JavaOne 2016: The Sessions
Monday, September 19th
CDI Best Practices with Real-Life Examples [TUT3287]
Ahmad Gohar, Technical Team Lead, IBM @ansgohar
As the adoption of Contexts and Dependency Injection (CDI) for Java EE API
grows, it is important to understand how to use CDI effectively to maximize the
benefits of using a loosely coupled, type-safe, annotation-driven dependency
injection solution. This session outlines the best practices for using CDI, such as
annotations versus XML, @Named as a qualifier, qualifier type safety versus
verbosity, effective use of producers/disposers, using scopes properly, best
practices for using conversations, defining effective stereotypes, interceptors versus
decorators, static versus dynamic injection/lookup, CDI versus Java EE resource
injection, using CDI with EJB 3.1, CDI/JSF 2 integration patterns, and CDI/JPA 2
usage patterns.
8:30 a.m. – 10:30 a.m. PST
Parc 55 – Market Street
Be Whisked Away with a Raspberry PI, Java, and OpenWhisk
[CON2758]
Luc Desrosiers, IT Architect, IBM UK
Come to this session to learn how you can quickly build a Java-based microservice
architecture based on OpenWhisk. What is OpenWhisk, you ask? It is a cloud-first
distributed-event-based programming service based on the concept of serverless
deployment. What is serverless? Well, you have to come to find out! As a bonus,
you will see what IoT devices, Raspberry Pi, and the cloud can do with this new
technology.
11:00 a.m. – 12:00 p.m. PST
Parc 55 – Mission
Building Cognitive Applications with Watson APIs [CON3054]
Sandhya Kapoor, Senior Software Engineer, IBM @sandhyakapoor9
Frank Greco, Chairman, NYJavaSIG @frankgreco
The more we interact with “smart apps,” the more we hear the word cognitive being
thrown around. But what does it actually imply? What is a cognitive application?
Can you make your app cognitive? This session covers what these buzzwords
mean and how to enhance your application with Watson APIs. The presenters build
an application from scratch, using the Watson Java SDK, and discuss how to
integrate Watson into your existing application.
2:30 p.m. – 3:30 p.m. PST
Parc 55 – Magnin I
Cybercrime and the Developer: How to Start Defending Against the
Darker Side [CON3328]
Steve Poole, Lead Engineer, IBM @spoole167
In the world of DevOps and the cloud, most developers have to learn new
technologies and methodologies. The focus tends to be on adding capabilities such
as resilience and scaling to an application. One critical aspect consistently
overlooked is security. In this session, learn about a few of the simple actions you
can take (and some behaviors you must change) to create a more secure Java
application for the cloud. The world of the cybercriminal is closer than you realize.
Hear how at risk your application may be, see practical examples of how you can
inadvertently leave the doors open, and understand what you can do to make your
Java solution more secure.
2:30 p.m. – 3:30 p.m. PST
Parc 55 – Market Street
Programming Languages: For the Common Man or the Machine?
[CON3999]
Gireesh Punathil, Staff Software Engineer, IBM India Pvt. Ltd. @gireeshpunam
Programming languages are a bridge between man and machine. The more
sophisticated the language, the easier it is to program, but the compiler and
runtime level become harder as more-complex program directives need to be
transformed into discrete, simple hardware calls. Languages take extreme steps to
be humanlike and bring in disruptive constructs, but difficulties arise when it comes
to enterprise-grade scaling. This session discusses a few modern languages and
compares their programming interfaces with that of Java, with performance as the
main consideration. The intent of the session is to showcase the implications of
language constructs for the compiler and interpreter and to help you select the right
language for your workload.
2:30 p.m. – 3:30 p.m. PST
Hilton – Plaza Room B
Getting Started with Apache Spark: Use Scala, Java, Python, or All of
Them? [CON8124]
David Taieb, STSM Cloud Data Services, IBM @DTAIEB55
Apache Spark is the next-generation distributed computing framework, rapidly
becoming the de facto standard for big data analytics. It provides rich, expressive
APIs in multiple languages, including Scala, Java, Python, and R. However,
depending on the use case—a data scientist working in an Jupyter Notebook or a
data engineer implementing long-running Spark submit jobs—choosing the right
language can be a dilemma. This session uses a Spark application that performs
“sentiment analysis of Twitter data” to compare and contrast the feature differences
between the languages, API coverages, and overall productivity. With concrete
examples, it provides insight to help you decide when to use Scala, Java, Python,
or perhaps a mix of these.
4:00 p.m. – 5:00 p.m. PST
Hilton – Plaza Room B
Under the Hood of the Testarossa Just-in-Time Compiler [CON5644]
Mark Stoodley, Senior Software Developer, IBM @mstoodle
The IBM J9 virtual machine, which will soon be open source, includes the
Testarossa just-in-time (JIT) compiler. Come to this session to learn more about this
modularized, high-performance, multiplatform compiler infrastructure based on the
Eclipse OMR open source JIT compiler. Find out what it can do, how it all works,
why you should care, and how you can get involved.
5:30 p.m. – 6:30 p.m. PST
Hilton – Continental Ballroom 5
Tuesday, September 20th
Java and the Commoditization of Machine Intelligence [CON2291]
Sandhya Kapoor, Senior Software Engineer, IBM @sandhyakapoor9
Josh Gordon, Google @random_forests
John Pelak, Microsoft @jmpdatasci
Machine learning is the next step for big data. This panel session goes deep into
how Java plays a role in the construction of machine learning algorithms and details
how Java developers incorporate this type of adaptive and predictive intelligence in
their applications.
11:00 a.m. – 12:00 p.m. PST
Parc 55 – Cyril Magnin I
J9: Under the Hood of the Next Open Source JVM [CON3014]
Dan Heidinga, J9VM Interpreter Lead, IBM @DanHeidinga
This session dives into the design of the J9, IBM’s production JVM. Why might you
care about this? IBM is open-sourcing its JVM! If you want an early peek at how the
J9 operates, its data structures, GC policies, and the best way to understand its
execution, this is the session for you.
2:30 p.m. – 3:30 p.m. PST
Hilton – Continental Ballroom 4
Emerging Web App Architectures with Node.js and Java [CON1576]
Steve Wallin, Program Director, IBM @stevewallin
Java is the leader for enterprise web application development, but Node.js has
been gaining popularity for developing mobile apps, APIs, and web applications.
Although the two languages may appear to be in competition, they are actually very
complementary. This session discusses the characteristics of the two languages
and introduces emerging architectures that bring together the web scale and
integrated browser experience characteristics of Node.js with the highly optimized
and resilient transactional characteristics of Java to deliver reliable, highly
performant, and engaging web applications. Come to this session to learn more
about how Node.js and Java are being used together to build the next generation
of web applications.
4:00 p.m. – 5:00 p.m. PST
Hilton – Plaza Room A
Portlet Specification 3.0 Is Here! [CON3860]
Martin Nicklous, Software Architect, IBM Deutschland Research & Development
GmbH
Neil Griffin, Software Architect, Liferay Inc
Portlet Specification 3.0 (JSR 362) is now feature-complete. This session discusses
the new features and how easy it is for Java EE developers to write portlet
applications. Demos include configuring portlets via annotations, integrating with
microservices, integrating with client-side frameworks such as
Angular/React/jQuery, client-side IPC via the portlet hub, CDI features, server-side
async for long-running requests, and support for JSF 2.2 via the portlet bridge.
5:30 p.m. – 6:30 p.m. PST
Parc 55 – Cyril Magnin I
Fighting a Fixed Mindset to Thrive in an Agile Project [BOF4985]
Holly Cummins, Software Engineer/Developer, IBM @holly_cummins
Erin Schnabel, Senior Software Engineer, IBM @ebullientworks
Doing development in a project following agile development methodologies looks
straightforward, right? You and your team have adopted several practices and start
to benefit from them. Yet some activities, no matter how hard you try, seem to
never get easier. And now your team is walking the path toward continuous
delivery. It simply cannot be done…can it? This session’s speaker walks you
through some changes of mindset she needed to go through as she modified her
way from waterfall to agile—transforming herself from a full-time developer to a
developer with a tester’s mentality—and learned to see development differently.
8:00 p.m. – 8:45 p.m. PST
Parc 55 – Market Street
Wednesday, September 21st
Performance Tuning and How to Upscale to Analyze in a Cluster
Deployment [CON2128]
Toby Corbin, Software Engineer, IBM @TobesCorbin
Performance analysis of single applications is relatively straightforward, with a
variety of techniques and tooling options available to developers. This presentation
follows the journey of how to take the techniques used in desktop performance
analysis to monitoring clustered deployments in the cloud. It covers how to use a
combination of freely available performance tooling and open source solutions such
as Elasticsearch and Kibana to provide monitoring and analysis of a clustered
deployment.
8:30 a.m. – 9:30 p.m. PST
Hilton – Golden Gate 4/5
JVM-Assisted Clearing of Sensitive Data [CON4973]
Charlie Gracie, Advisory Software Engineer, IBM @crgracie
Does your application store any sensitive data on the Java heap? Do you rely on
finalization to clean up this data? Cleaning up the single copy of the data you
created may not be cleaning up all the copies. Garbage collectors may copy or
move objects, causing multiple copies of your sensitive data on the heap. This
session discusses the current best practices for dealing with sensitive data in the
JVM and provides a demo of how the speaker would like to see the JVM modified
to help.
10:00 a.m. – 11:00 a.m. PST
Hilton – Golden Gate 2/3
Euphoria Despite the Despair [CON6113]
Holly Cummins, Software Engineer/Developer, IBM @holly_cummins
Martijn Verburg, CEO, JClarity @karianna
In this session, the Mad Scientist (Dr. Holly Cummins) and the Diabolical Developer
(Martijn Verburg) take an in-depth look at why the highs of zero compiler warnings
are quickly canceled out by the pain of long hours, bad requirements, endless
configuration, and a litany of other issues that makes death by a thousand cuts
seem like a good idea. They answer questions such as “Why is programming an
art?” “How can I rediscover the delight I felt when I first started coding?” and “Am I
addicted to TDD?” Combining psychology, philosophy, and computer science, they
present a series of practical tips to help you rediscover the euphoria you felt the
very first time a metal box in front of you came to life and cried out “Hello World.”
10:00 a.m. – 11:00 a.m. PST
Parc 55 – Embarcadero
Liberty: The Right Fit for Micro Profile? [CON8119]
Kevin Sutter, Senior Technical Staff Member, IBM @kwsutter
Alasdair Nottingham, WebSphere Runtime Architect, IBM @notatibm
The move to microservices is well under way, but has enterprise Java adapted to
these new realities? Although some argue that enterprise Java is irrelevant, many of
its tried-and-proven APIs are highly applicable to microservice architectures. And
the need for new APIs to address challenges inherent in highly distributed
microservices is clear. The recent announcement of the Micro Profile initiative
(microprofile.io) to define new application server portable APIs means that these
needs will be addressed. This session explores what Micro Profile is, how it can
help with microservices, and how WebSphere Liberty’s à la carte approach to Java
EE can help enable microservices by using the new Micro Profile and ldemo Liberty
plus the microProfile-1.0 feature.
11:30 a.m. – 12:30 p.m. PST
Parc 55 – Cyril Magnin I
Life After Modularity: An Experience Report [CON3015]
Dan Heidinga, J9VM Interpreter Lead, IBM @DanHeidinga
“Modularity will break your code!” If you’re concerned that this might be true, come
to this session, presented by a JVM engineer, to hear the truth. Find out how to
prepare for Java 9, and see examples of the kinds of changes and workarounds
required to bring up real applications.
1:00 p.m. – 2:00 p.m. PST
Hilton – Continental Ballroom 4
Mind Control to Major Tom: Is It Time to Put Your EEG Headset On?
[CON2338]
Steve Poole, Lead Engineer, IBM @spoole167
Luc Desrosiers, IT Architect, IBM UK
Using your mind to interact with computers is a long-standing desire. Advances in
technology have made it more practical, but is it ready for prime time? This session
presents practical examples and a walkthough of how to build a Java-based endto-end system to drive a remote-controlled droid with nothing but the power of
thought. Combining off-the-shelf EEG headsets with cloud technology and IoT, the
presenters showcase what capabilities exist today. Beyond mind control (if there is
such a concept), the session shows other ways to communicate with your
computer besides the keyboard. It will help you understand the art of the possible
and decide if it’s time to leave the capsule to communicate with your computer.
3:00 p.m. – 4:00 p.m. PST
Hilton – Golden Gate 4/5
Java, the Cloud, Containers: Migrating Without the Tiers (or Tears)
[CON3601]
Steve Poole, Lead Engineer, IBM @spoole167
Daniel Bryant, Chief Scientist, OpenCredo @danielbryantuk
Everyone is talking about building “cloud native” Java applications—and taking
advantage of microservice architecture, containers, and orchestration/PaaS
platforms—but there is surprisingly little discussion of migrating existing legacy
(moneymaking) applications. This session aims to address this, and, using lessons
learned from several real-world examples, it covers topics such when to rewrite
applications (if at all), modeling/extracting business domains, applying the
“application strangler” pattern, common misconceptions with “12-factor”
application design, and the benefits/drawbacks of container technology.
4:30 p.m. – 5:30 p.m. PST
Parc 55 – Cyril Magnin I
Java EE Microservices by Example, from Raspberry Pi’s to the Cloud
[CON6245]
Holly Cummins, Software Engineer/Developer, IBM @holly_cummins
Making the move to a microservice architecture can be pretty daunting.
Microservices can solve many architectural and organizational problems, but they
come with their own challenges. Getting from monolith to microservices can be
even harder. What’s the cleanest way to refactor? How should things be tested?
What if things go wrong? Using a pile of tiny computers, cables, and code, this
session demonstrates carving a monolith into microservices and deploying—and
managing—a microservices application. Because there are limits on how much
traffic the data-center-in-a-handbag server topology can handle, the presentation
also demonstrates scaling up, out, and away to the cloud.
4:30 p.m. – 5:30 p.m. PST
Parc 55 – Embarcadero
Thursday, September 22nd
Emerging Languages Bowl 2016: The Quest for Supremacy Continues
[CON2282]
Raghavan “Rags” Srinivas, Architect, IBM @ragss
Dierk Koenig, IT Manager, Canoo Engineering AG @mittie
Hadi Hariri, Developer, JetBrains @hhariri
Charles Nutter, Principal Software Engineer, Red Hat @headius
Nick Howard, Senior Software Engineer, Twitter
The Emerging Languages Bowl has replaced the former Script Bowl. The panelists
in this session continue the quest to be the winner of the bowl, which includes the
following JVM-based languages: Frege, Golo, Kotlin, Mirah, and Red Line. They will
compete in two rounds:
• A common task round
• A community round
The audience will pick the winner and will leave the fun-filled and unique panel
session with an idea of which language might be the most relevant to their needs.
11:30 a.m. – 12:30 p.m. PST
Hilton – Plaza Room A
Game On! Exploring Microservices with a Text-Based Adventure Game
[CON1559]
Erin Schnabel, Senior Software Engineer, IBM @ebullientworks
Creating a single microservice is easy, as walkthroughs everywhere show. See?
Add a few annotations, invoke this command to build it, and you have a running
microservice! Ta-da! But what happens next? Game On! is an interactive text
adventure written as a collection of microservices to help people answer that very
question. This session covers how the speaker and her colleagues used service
composition and discovery, API definition and versioning, security (authentication,
authorization, and identity propagation), the 12 factors, and a combination of
lightweight protocols to build the game. The presentation also discusses what they
learned from building it and from others extending it.
2:30 a.m. – 3:30 p.m. PST
Parc 55 – Embarcadero