In the last few years I gave a bunch of presentations. This is a collection of those, in reverse chronological order.

  1. Just-in-time compilation in JVM. A look at workings of JIT and few optimizations it makes, aided by JITwatch and JVM flags. Link to View

  2. Demystifying async programming - The intent was to explain how event drive programming, reactive programming, futures in java, streaming and async programming in gRPC, nio libraries like netty, etc work. Uses rpc as an example to demonstrate, hence a small intro to RPC and REST. Link to view

  3. Practical introduction to deep learning. Learn a model to differentiate between cats and dogs. Based on Lec 1 and 2 of the fast-ai course. Github Link (October 2017)

  4. Rust presentation with focus on differentiating features of rust ie. owenership, borrowing and lifetimes. Github Link (August 2017)

  5. Graph Databases : Neo4j. Google slides link.

  6. Vuejs : A progressive javascript framework. Google Slides Link

  7. Java concurrency in practice : Overview of JcStress, a stress testing tool. Google Slides Link

  8. Refactoring to patterns : Collection of a few not so known patterns from the book ‘Refactoring to patterns’. Google Slides Link

  9. JUnit5: I gave this talk when Junit5 was few months away, hopefully all things mentioned here made it in. Google Slides Link

  10. Protocol Buffers : We heavily use protocol buffers at Dstillery for storing data and communication. Google Slides Link