The demand for parallel computing has always been on the rise when it comes to high performance computing. The innovations in hardware in the last decade have enabled developers to achieve this within a single machine which now offers multi-core, multi-processor capabilities. This is also becoming more and more popular compared to the traditional way of distributed computing which has its own constraints in terms of power and heat dissipation. Modern day developers want to leverage more on the multi-core/multi-processor architecture to achieve parallelism and Java Streams API offer them the best solution which allows the developers to break a larger task into smaller sub-tasks, process the sub-tasks in parallel and combine the results, while abstracting lower level multi-threading logic. While it sounds appealing, there are practical challenges in terms of getting the implementation right and debugging such implementations when there are issues. Essentially, the success of streams adoption largely depends on how robust the implementation is and how effectively one can do the trouble-shooting if something goes wrong. With that in mind, this session aims at addressing the best practices, common pitfalls with streams programming and provide debugging how-to for streams to make developers life easier. 

 
1 favorite thumb_down thumb_up 0 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

The demand for parallel computing has always been on the rise when it comes to high performance computing. The innovations in hardware in the last decade have enabled developers to achieve this within a single machine which now offers multi-core, multi-processor capabilities. This is also becoming more and more popular compared to the traditional way of distributed computing which has its own constraints in terms of power and heat dissipation. Modern day developers want to leverage more on the multi-core/multi-processor architecture to achieve parallelism and Java Streams API offer them the best solution which allows the developers to break a larger task into smaller sub-tasks, process the sub-tasks in parallel and combine the results, while abstracting lower level multi-threading logic. While it sounds appealing, there are practical challenges in terms of getting the implementation right and debugging such implementations when there are issues. Essentially, the success of streams adoption largely depends on how robust the implementation is and how effectively one can do the trouble-shooting if something goes wrong. With that in mind, this session aims at addressing the best practices, common pitfalls with streams programming and provide debugging how-to for streams to make developers life easier. This session would cover the following with respect to Streams API

 

- Hot section of common use-cases

- Common pitfalls

- Best practices with communication and synchronization between different subtasks

- Debugging tips and tricks

- Performance analysis and trade-offs.

Learning Outcome

- Debugging Streams API
- Learning the bottleneck of Parallel Streams and its right use-case

 

Target Audience

java developer

schedule Submitted 2 months ago

Comments Subscribe to Comments

comment Comment on this Proposal

  • Liked Rajesh Sola
    keyboard_arrow_down

    Gateway design with Eclipse Kura - Taking to new heights

    Rajesh Sola
    Rajesh Sola
    Core Faculty
    CDAC,Pune
    schedule 3 months ago
    Sold Out!
    90 mins
    Tutorial
    Intermediate

    This talk cum tutorial aims at introducing Eclipse Kura, OSGi based framework for IOT gateway design.It starts with kura architecture and key elements like bundles, services, web admin interface etc. and a tour of available APIs,services for hardware interfacing, wireless connectivity,cloud connectivity and industrial & automotive protocols.The next part proceeds with case study of building custom services,for eg:- adding client support for HTTP REST, InfluxDb in kura.Later few bridging scenarios will be covered on interfacing local networks with IOT Platforms  like ThingSpeak, OpenSensors.io etc using these services and also storing data points in a time series at edge/gateway side using InfluxDb as an example.

  • Liked Deepu Xavier
    keyboard_arrow_down

    Natural Language Processing & Java

    20 mins
    Demonstration
    Beginner

    This session will cover the basics of Natural Language Processing. We will see the basics of Named Entity Recognition, Sentiment Analysis and other basic features of NLP.

  • Liked Gurpreet Sachdeva
    keyboard_arrow_down

    Towards a More Secure JDK

    Gurpreet Sachdeva
    Gurpreet Sachdeva
    Director - Technology
    Aricent
    schedule 4 months ago
    Sold Out!
    20 mins
    Talk
    Advanced

    The last few years have seen new computing trends like increased use of mobile devices, big data and a world connected with internet. This has made Java applications vulnerable to threats and attacks. With time, holes get exposed in cryptographic algorithms and security protocols. They then need to be replaced with stronger alternatives. This session will show how safety mechanisms have been built into JDK to automatically protect applications from weak algorithms and protocols such as MD2, MD5, RC4, weak RSA/DSA keys and SSLv3. A wide variety of security controls have been made available which range from automatic defenses to user friendly APIs. Several new security controls have been introduced in Java 8 and Java 9 platforms like SHA-3 hash algorithms, OCSP stapling for TLS and DRBG SecureRandom implementation. This session will benefit Java developers by introducing them of the many defenses present and available in the Java ecosystem.

  • Liked Deepali Kishnani
    keyboard_arrow_down

    Natural Language Based Query Engine for Eclipse Modeling Framework

    20 mins
    Demonstration
    Beginner

    Searching in big databases is the need of the hour. With ever growing applications and customer base, quicker search over the data helps you survive. Modeling Frameworks sit at the core of modern software. The increasing complexity of business requirements are reflected in the increasing complexity of the modeling framework. What if you could query the complex models within seconds? This is just one use case of VIATRA Query.

    VIATRA Query is an Eclipse project. Initially conceived by the Budapest University of Technology and Economics, VIATRA is an Event-driven and Reactive Model Transformation Platform.  We have used VIATRA Query to create a small search engine for Ecore models of EMF using Natural Language Based Rule Engine and would like to share our experience with it.

    VIATRA Query enables the user to query the EMF models without having to manually traverse them. Complex queries can be converted into patterns. Parameters to models can be passed at runtime, something which is crucial to any query engine. The idea of creating a search engine using VIATRA Query opens up new and innovative ideas of working with Eclipse Modeling Framework. To know more about the algorithm behind this technology or how we made it work, please join us at the Eclipse 2017 Summit!

  • Liked Manoj NP
    keyboard_arrow_down

    JDT Embraces Java 9 - An insider's perspective

    20 mins
    Talk
    Intermediate

    Eclipse Java Development Tooling or JDT has its own Java compiler at its core, aptly called the JDT Core consisting of the Java compiler and various tools including java model, search infrastructure, content assist, Abstract Syntax Tree Tools etc.  Java 9 is the latest entry in the Java world bringing along-with it a "module" of changes - so to speak.  Any change in the language standards affects JDT directly. While some of the earlier language specification changes affected only the compiler, Java 9, in contrast, has a direct impact on user who uses Eclipse IDE for creating and managing Java Projects. Java 9  introduces the concept of "Modules" which affects JDT from the compiler level to the project dependency layer affecting a normal user. Support for this feature will be dealt with, in detail, in this talk.

    This talk would start with a brief overview of the Java 9 features especially the "module" feature that have direct impact on Eclipse users,  describe the JDT support for features, touch upon some of the design aspects, and would conclude with a demo of Eclipse JDT for Java 9.

  • Liked Gaurav Gupta
    keyboard_arrow_down

    Rapid Development Tools for Java EE

    90 mins
    Tutorial
    Advanced

    Create a fully operational Java EE application in a few minutes from scratch and select the technologies based on preferences such as Docker, REST API, MVC 1.0, Arquillian, JSP and AngularJS, Angular 2.x . The solution features a high-quality, rich web UI, business logic, security, a REST API and more. Don't miss this session if you are serious about saving time.