Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

Coding in Java with Joy - A Quarkus talk

Coding in Java with Joy - A Quarkus talk

You can deploy your applications to Kubernetes; that's great! You can have pipelines and a breadth of tools to do analysis, etc. But what about how you develop and what you develop, and finally, how you interact with applications deployed in Kubernetes while in the development inner loop. How can that be done easier, simpler, faster? Java has been there for a long time, and all of us have ways to develop applications and tools that we all love. So how does Quarkus do any of this differently?

Live coding, adding functionality, extensions without restarting, spinning up dev services e.g., databases, making coding and testing easier and continuous, enhancing the inner loop, etc. In this talk, I will create an application from scratch with Quarkus, add databases to it, add a front-end, stream etc. And finally, work with it while it's deployed in Kubernetes using my dev machine and effectively live code remotely. Join this talk to learn about the Java developers journey to developer Joy!

#lessslides and #morecode

https://sched.co/siJ2

Shaaf Syed

January 14, 2022
Tweet

More Decks by Shaaf Syed

Other Decks in Programming

Transcript

  1. Coding in Java with Joy - A Quarkus talk Syed

    M Shaaf, Tech. Evangelist Create Java applications, easier, simpler and faster with Quarkus
  2. Technical Evangelist at Red Hat. Java developer for 15 years

    Java AWT, Swing days CI/CD Struts, EE OpenStack/Kubernetes automation ..Vert.x/Quarkus Previously: Software Engineer at EnterpriseDB Java Consultant @syshaaf @sshaaf linkedin.com/in/shaaf/ About Me shaaf.dev
  3. What's happening to the world.. Deployment: multi-app, appserver App Lifecycle:

    Months Memory: 1GB+ RAM Startup Time: 10s of sec Deployment: Single App App Lifecycle: Days Memory: 100MBs+ RAM Startup Time: Seconds Deployment: Single App App Lifecycle: minutes/seconds Memory: 100MBs+ RAM Startup Time: Seconds
  4. The hidden truth about Java and Containers ➔ Startup overhead

    ◆ # of classes, bytecode, JIT ➔ Memory overhead ◆ # of classes, metadata, compilation
  5. A Kubernetes Native Java stack tailored for GraalVM & OpenJDK

    HotSpot, crafted from the best of breed Java libraries and standards Supersonic. Subatomic. Java.
  6. What do I want? A cohesive platform for optimized developer

    joy: • Zero config, live reload in the blink of an eye • Reverse stack trace • Dev Services • Developer UI • Continuous testing • Remote Dev anywhere including K8s • Deploy functions, microservices to k8s
  7. Unifies Imperative and Reactive • Combine both Reactive and imperative

    development in the same application • Use the technology that fits your use-case • Key for reactive systems based on event driven apps @Inject SayService say; @GET @Produces(MediaType.TEXT_PLAIN) public String hello() { return say.hello(); } @Inject @Channel(”kafka”) Publisher<String> reactiveSay; @GET @Produces(MediaType.SERVER_SENT_EVENTS) public Publisher<String> stream() { return reactiveSay; }
  8. Best of Breed Frameworks & Standards Quarkus provides a cohesive,

    fun to use, full-stack framework by leveraging a growing list of over fifty best-of-breed libraries that you love and use. All wired on a standard backbone.
  9. Resources from the presentation 19 Developer Sandbox How do I

    get started? • Quarkus.io • Dev Services (video) • Remote dev • Quarkus Insights • Continuous testing • Source code: demo app • Quarkus for Spring Developers E-Book https://developers.redhat.com/developer-sandbox IDC Red Hat Quarkus Lab Validation Quarkus.io