Thursday, May 16, 2013

Conf: Will speak at the JEEConf 2013 Java Conference in Ukraine, Kiev.

I will give two presentations at two-day conference JEEConf 2013 in Kiev, Ukraine, at the end of coming May 2013 from 24 to 25.
It’s going to be the largest event for Java developers (about 1000 attendees). This is my first participation in this conference, and will go there with pleasure. Below are the descriptions of my two talks.

Note: My talks will be in English.
  1. Title: The Power of Java7 NIO.2 essential stuff.

    Abstract:
    In this session hear how a leading financial services company uses Java 7 NIO.2. This session will covers all the important essential aspects involved in developing NIO.2-based applications. It provides clear instructions for getting the most out of NIO.2 and offers many case studies to spice up your Java 7 applications with the new I/O capabilities.

    Contents:

    1. The Path class operations.
    2. Get/set file metadata through the new java.nio.file.attribute API.
    3. Manage symbolic and hard links.
    4. Manipulating files and directories through the new java.nio.file.Files API.

    Time allocated: 50 min.

    Date/Time and Venue: From: 14:30 To:15:20 Kiev time, @ 24/5/2013 in STAGE B(150).

  2. Title: The Power of Java7 NIO.2 advanced concepts.

    Abstract:
    In this session hear how a leading financial services company uses Java 7 NIO.2. This session will covers all the important aspects involved in developing advanced NIO.2-based applications. It provides clear instructions for getting the most out of NIO.2 and offers many case studies to spice up your Java 7 applications with the new I/O capabilities.

    Contents:

    1. The Path class operations.
    2. Need to copy, move, or delete an entire directory? Use the FileVisitor API.
    3. Explore the Watch Service API and file changed notification.
    4. Develop blocking/non-blocking socket-based applications. Learn how to develop Java network-based applications in blocking and non-blocking styles. Both TCP and UDP are covered in brief.
    5. The Asynchronous Channel API. You can develop asynchronous network based Java applications with a suite of classes and options.

    Time allocated: 50 min.

    Date/Time and Venue: From:12:00 To:12:50 Kiev time, @ 25/5/2013 in STAGE B(150).

Before the first session (it is very short time for each session, but I will try) to intreduce the adopt-A-JSR program, and in the second one I will introduce the Adopt-OpenJDK program as well so I can spread these programs knowledge, to get more participants.

Monday, May 6, 2013

Tunis JUG Day 2013: I will give 2 talks about (JEE7 JSR 356 Wbsockets, 353 JSON-P & Java8 NIOs)

The first edition of ESPRIT JUG DAY will be held on May 18 2013 from 8h00 to 19h00 in ESPRIT.

I am so happy to get an invitation to Tunisian JUG day that will be held in Carthage city, Tunis coming 18/5/2013 from JUG organizer & Leader Bessem Hamidi .


This is first time for the This JUG to organize such an event, and as I know, there are around 3000+ attendees will attend this JUG day; it is very big day event and number of attendees as well.

I will give 2 talks and they are:
  1. Submission Title:
    Build.now(); TRUE, Real Time Applications with JEE7 (A hack session).

    Submission Abstract:

    Historically, creating web applications that need bidirectional communication between a client and a server (e.g., instant messaging & gaming applications) has required an abuse of HTTP to poll the server for updates while sending upstream notifications as distinct HTTP calls.

    HTML5 specification includes the WebSockets (WS) protocol, I will introduce the Websocket JSR 356 (Tyrus RI), & JSON Processing JSR 353 for data exchange which is part of JEE7.

    In addition, there is a brief comparison of traditional HTTP & WS, followed by covering of how WebSockets works. You will see how using WS removes the overhead of heavy HTTP request and response headers with real case study. Finally, we will review the code of the Web app build on GlassFish 4 app server.

    Time: 17h00 - 18h30

  2. Submission Title:
    Java 8 NIO.2 API features, a walkthrough (The essential & advanced Stuff).

    Submission Abstract:

    Most of applications nowadays depend intensively on asynchronous or non-blocking IO and file manipulation operations and some other requirements that the standard IO won’t be able to fulfill and that’s the case for most applications today, that’s why people decided to move to NIO, in this session, hear how a leading financial services company uses Java NIO.2. This session will covers all the essential aspects involved in developing NIO.2-based applications day by day. It provides clear instructions for getting the most out of NIO.2 and offers many case studies to spice up your Java applications with the new I/O capabilities.

    Time: 11h00 - 13h00

Date: 18 of May 2013
Where: Esprit School Conference room, Carthage city, Tunis.

Before the first session I will introduce the adopt-A-JSR program, and in the second one I will introduce the Adopt-OpenJDK program as well so I can spread these programs knowledge, to get more participants.

Moreover, the JUG leader asked me to help them, on the adopt-A-JSR & Adopt-OpenJDK programs process and how they can participate. And indeed I will provide the help with all steps, materials and information alongside the required support to make it easy to participate. As they are very active locally and the JUG has many participants (around 3000+), so the adoption programs can gain benefits from their experiences.

The Esprit team is the organizer of this JUG Day, and they are very active and they are running a big Esprit school that graduate students in the following Majors Media, Telecom, software engineering and others. Also they have 8 classes running Java in this school.

They had made a very cool intro media for the event:



Thanks Very much Bessem Hamidiand Esprit Organisers.

Wednesday, May 1, 2013

JDev:Enabling memory clearing and monitoring on JDeveloper

If you are familiar with Netbeans IDE and its tool that enable you to free up and monitor its memory usage (PermGen and Heap size).

Here we will enable it on any version of JDeveloper IDE and when you open your IDE, you should found this tool at the lower right corner as shown in the following figure:

How to configure it:

  1. Enable Memory Monitor On, in the JDevloper by setting the MainWindow.MemoryMonitorOn property to true in ide.properties as the following:-
  2. ide.properties file should be found under the following path {your jdeveloper system folder}\o.jdeveloper

  3. JDeveloper system folder; is the folder, which contains all JDeveloper configurations, server and properties of JDeveloper.

  4. Example: "C:\Users\mohamed_taman\AppData\Roaming\JDeveloper\system11.1.2.3.39.62.76.1\o.jdeveloper"

  5. Note: Don't add MainWindow.MemoryMonitorOn=true, as it is already exists with value of false, search on it and change its value to true.