[devnexus 2022] batch processing in action

Speaker: Hillmer Chona & Rodrigo Graciano

Twitter @HillmerCh and @RodgrigoGraciano

Link to table of contents

———————

Anotations vs XML

  • @EnableBatchProcessing automatically provides beans for job repo, job launcher, etc
  • If use XML, need to create all beans yourself
  • Don’t mix and match XML vs annotations. Could wind up with two of a bean

Concepts

  • Steps – one reader/writer
  • Job repository – provided by framework
  • async doesnt block – JobLauncher vs AsyncJobLauncher
  • Can run at the comand line or in web container
  • Processors – transform, filter, validate
  • Chunk – collect data and sent data on when chunk complete
  • Many types of readers, and writers built in. Can also write own
  • Listeners run before/after job
  • Step listeners are more detailed
  • Fault tolerance – skip exceptions
  • Retries

Flows

  • Conditional – exit status, run different step on success/fail.
  • Decider – can have custom logic, not just exit status ex: day of week)
  • Split – run steps in paralelel

Live demo

  • Heavy use of chaining
  • Yay! Records
  • JobExecutionListener has two methdods beforeJob() and afterJob(). Alternatively, an put logic in parent job

My take

The keynote ran late and I didn’t make it in tie for the beginning. Luckily, I saw Rodrigo do a practice run so was able to jump in. Lots of information and presentation well designed for explaining concepts

[devnexus 2022] meta-modern software architecture

Speaker: Neal Ford from thoughtworks

@neal4d

Link to table of contents

———————

Were architectures come from

  • Architecture is reactive
  • Someone starts doing something, then others do
  • Once a bunch doing, named (after the fact)
  • Reflection on how doing software development at the time
  • Once in an architecture, can watch how it grows and changes

Eras

  • Victorian – 1801-1900 – science, cassifying natural world
  • Modernism – 1890-1945 – industriial revolution, explosive growth of cities, abstract art, radio.
  • Post-modernism – 1946-1990 – push back about modernism, irony, questioning everything, television, Seinfield’s ”never hug, never learn”
  • Post-post modernism or metamodernism – 1990-present – internet
  • Naming things is hard. Not just in software. Modernism is bad choice of name because what would come next

Metamodern

  • In 1989, to find out Chicago weather would need to watch Weather Channel and wait for it to cycle around or go to library. Now pull it up onlie.
  • In 1989, could read a few books and know pretty much everything about wine. Now too much info and keep generating more.
  • Holism – view various systems as whole
  • Parks and recreating is first meta-modern show
  • Breaking bad – colo driven – yellow is safe and purple is bad
  • Return to sentimentaliitiy. Can’t live on ironism alone

Software architecture

  • microservices – one of most popular pages on Martin Fowler’s website. Say what it is and more importantly, what it isn’t.
  • First law of software architecture: ”Everything in software architecture is a tradeoff”. If you haven’t encountered yet, will be in the future
  • Reuse reduces complexity but comes with high coupling
  • Metamodern software architect needs to do tradeoff analysis. Ex: things that change slowly are good for reuse such as frameworks and OS
  • service mesh and sidecar pattern – orthogonal coupling

Books

  • ”Fundamentals of Software Architecture”
  • ”Software Architecture: the Hard Parts”
  • ”Data Mesh”

Forces

  • Consistency – atoic, eventual
  • Communication – sync, asych
  • Coordination – orchestrated, choreography
  • 8 possiblities by choosing one of each. ex: one is a monolith. All 8 can exist as pattern or antipattern.
  • Named them transactional sagas. epic, fantasy fiction, fairy tale, parallel, phone tag, horror story time travel, anthology

Richard Feinman

  • Computers used to be a room full of people (usually women) calculating things
  • Feyman added specialization and paralleliation. Some people are better at some tasks than others. And recovering from problems
  • 1945 – atomic bomb blast is what shifted eras
  • reonsider why continuing to do thing. revisit when reasons change

Internet

  • Pushed us to net era
  • Volkswagon used software to cheat on emissions test. Some people knew actively working to break the law
  • Facebook keeps getting busted for doing bad thigs – data breaches, illegally tracking users, Cambridge Analytica, using two factor for marketing.
  • Last week, Facebook made up a meme that TikTok that students slapping teachers. Then it became a self fulling prophacy

Finance and ethics

  • Modernism – double enry accounting
  • Post-modern – quants
  • Metamodern humane corporation, ethics. Recognize all connected to each other
  • Don’t want to create something cool and spening rest of career on appology tour
  • Apple, Google employees pushed back

My take

Fun start to the day. I hadn’t heard of the ”saga” approach before. Googling, at least some of them see to be a real thing. (and all are from ”the hard parts” book I also increased my book reading list. The end felt rushed. Maybe because started late?

DevNexus 2022 Live Blog Table of Contents

DevNexus is back in person! This is my second in person event since COVID. ”code with soul” logo and ”welcome back to conferences” on signage

COVID handling

Vaccines (or tests) are required. In theory, masks are required in rooms but not in the hallways. Looking around they keynote, I think less than 10% are wearing masks. Had about 2400 people in person last time it was live and about half that this year. Sessions kept the doors open. Good for air. Bad for noise (some session rooms are right off the exhibit hall)

Tuesday

  • I got here right after lunch and spent two hours at the JUG Leader summit. I didn’t take notes, but I got the updates from Oracle (remember JavaOne is back in person in Vegas this year!). We also had some good unconference sessions. They used the fishbowl format where three people sat in chairs with an empty chair. To speak, you take an empty chair and someone has to get up

Wednesday

Thursday