Northern Virginia Software Symposium

April 27 - 29, 2012 - Reston, VA


Sheraton Reston
11810 Sunrise Valley Drive
Reston, VA   20191
Map »

Douglas Hawkins

Senior Software Engineer

Douglas Hawkins has been passionately developing software for the past 10 years -- creating applications for bioinformatics, finance, and retail.

However, Doug's true interest is exploring and explaining the low-level details inside the virtual machines that we use everyday. To make byte code more accessible, he created the open-source Java Assembler Kit (JAK) which provides a fluent API for producing Java

byte code and includes a REPL to allow for interactive experimentation.

Doug also organizes the Boston Java Meetup and is a regular presenter at both the Boston Java Meetup and the New England Java User's Group.



Presentations

Understanding Garbage Collection

Most of us don't want to go back to the days of malloc and free, but the garbage collector isn't always our friend.

In this presentation, you'll learn about the different garbage collection strategies used in JVMs, how to monitor garbage collection, analyze memory dumps, and why you might want to use one collection strategy instead of another.

Inside Android's Dalvik VM

Android is gaining popularity rapidly, but why does Android use its own implementation of Java?

In this presentation, we'll dig into the details behind Android's Dalvik VM. Along the way, you'll learn about Android' s service architecture, Dalvik's byte code format, and the surprising details of how Android installs, launches, and executes your applications.

Examining Java Byte Code

Ever wondered what byte code looks like? Wondered how type erasure works? Or, wondered how other JVM languages can have all exceptions unchecked?

In this presentation, you'll learn the basics of Java byte code, see tools for viewing Java byte code, and even see how to use this knowledge to statically analyze your applications.