~/talks

Venkat Subramaniam

what they talk about

all 34 in the filters

where they keep going back

all 45 in the filters

on a stage with

all 32 in the filters

who talks about the same things

titleconferencedate
Test Driving Code with the Help of AINDC Copenhagen 20262026-06-01
Demonstrates using AI (VS Code/Copilot style) to write TDD for Conway’s Game of Life: starts with a canary test, has AI generate tests and methods like…
Talk on
AI: It AI-n't What You Think!NDC Copenhagen 20262026-06-01
Argues that modern AI is accelerated inference not true intelligence, trained on human code so it often invents facts and produces arbitrarily inconsistent…
Talk on
Intros his workshopDevnexus 20262026-03-04
Workshop covers Java 9–25 features with concrete examples and actionable guidance on applying recent language changes to real codebases. It claims to show…
Talk on
It AI-n't What You Think!Porto Tech Hub Conference 20252025-10-07
Claims that large models are accelerated inference not reasoning are backed by examples: asking for a Java stream to count occurrences produces usable code…
Talk on
OOP vs. DOP: Which One to Choose?IntelliJ IDEA Conf 20252025-06-03
Argues that for a concrete order/trade example the Java features replace clumsy visitor/factory plumbing: a processTrade that audits buys when quantity > 5,000…
Talk on
Day 2IntelliJ IDEA Conf 20252025-06-03
Live demos focus on what actually changed and whether it worked: Juny agent edits code and runs tests (cloned Spring PetClinic, added logging, extracted…
Talk on
Identifying and fixing Issues in Code using AI based toolsDevoxx UK 20252025-05-07
Compares ChatGPT and Claude on real snippets and a 100-person exercise and concludes AI reliably finds bugs faster than humans, but still produces drafty code…
Talk on
Patterns for Software ArchitectureGreat International Developer Summit 20252025-04-22
Argues that architecture choices follow from prioritized system characteristics not from fashionable patterns; instructs teams to list and rank requirements…
Talk on
It AI n't What You Think!Great International Developer Summit 20252025-04-22
Argues that modern AI behaves as AI as accelerated inference: it repeatedly proposes plausible solutions but hallucinates facts and is arbitrarily inconsistent…
Talk on
Structured Concurrency in JavaGreat International Developer Summit 20252025-04-22
Java 21’s structured concurrency is shown as a concrete replacement for raw executors using StructuredTaskScope and virtual threads, with a live demo that…
Talk on
Scaling Servers with Virtual ThreadsGreat International Developer Summit 20252025-04-22
Shows Java 21 virtual threads as a practical replacement for OS threads: swapping new Thread(...) for Thread.startVirtualThread and running IO-bound tasks…
Talk on
Designing MicroservicesGreat International Developer Summit 20252025-04-22
Claims that most teams claiming microservices aren’t really doing them (about 80%), and that micro means a domain/bounded context not small code. Recommends…
Talk on
Communication Patterns for Distributed ArchitecturesGreat International Developer Summit 20252025-04-22
Explains why the unit of deployment—not the label—drives distributed design, compares concrete integration options like function calls vs database as…
Talk on
OOP vs Data Oriented Programming: Which One to Choose?Great International Developer Summit 20252025-04-22
Compares an order-processor example where extensibility comes from an interface (PaymentMethod using dependency inversion) to a third-party trade example where…
Talk on
Rediscovering JavaScriptGreat International Developer Summit 20252025-04-22
Covers concrete, actionable JavaScript updates: replace var with use const as much as possible and let, enforce via eslint; replace arguments with rest and…
Talk on
Know Your Java?Great International Developer Summit 20252025-04-22
Shows concrete failure modes and fixes: changing a List to a Collection makes remove(1) call remove(int) vs remove(Object) so the element at index 1 gets…
Talk on
The Three Amigos: Intermixing Pattern Matching, Records, and Sealed ClassesGreat International Developer Summit 20252025-04-22
Java now gives records give ctor/getters/toString/equals/hashCode so simple data holders are immutable and final; sealed permits clause enforces closed…
Talk on
Will AI Replace My Job? A Town Hall for Software DevelopersGreat International Developer Summit 20252025-04-22
Panel conversation about immediate, practical impacts: coders use LLM assistants for day-to-day coding, infra-as-code, and incident debugging; consultants…
Talk on
Continuous Integration: I Invite You to Break My BuildGreat International Developer Summit 20252025-04-22
Argues that breaking the build is acceptable when the team fixes it quickly and uses CI to surface environment mismatches; recommends okay to break the build…
Talk on
Learning from FailuresGreat International Developer Summit 20252025-04-22
A team spends about $20M over ten years and never ships the product because customers call it too complex and it only does a small part of what they need, so…
Talk on
Qualities of a Highly Effective ManagerGreat International Developer Summit 20252025-04-22
Lists 12 practices for technical managers, including be adaptive not reactive (favor continuous adaptive planning over fixed dates), use carrots instead of…
Talk on
Testing for AccessibilityGreat International Developer Summit 20252025-04-22
Measures a site with several free checkers and finds roughly 110 violations and scores in the low 40–60% range, then uses Sally (s a11y) to highlight exact…
Talk on
Tools and Techniques for Infrastructure as CodeGreat International Developer Summit 20252025-04-22
Argues that fully automating the last 5% of deployments yields real agility and fewer outages, showing a practical pipeline where a git commit → CI/CD runs…
Talk on
Tools and Techniques for Infrastructure as CodeGreat International Developer Summit 20252025-04-22
Automates deploys so a git commit runs tests, provisions cloud resources and pushes a new release without human steps; replaces a seven‑year weekly spreadsheet…
Talk on
Keynote: It AI-n't What You Think!Voxxed Days Bucharest 20252025-03-27
Argues AI often hallucinates—calling factual profiles wrong—and labels that behavior alternative information, not truth; shows a chatbot-caused Air Canada…
Talk on
Know Your Java?JavaOne 20252025-03-18
Concrete surprises and concrete fixes: using remove(int) vs remove(Object) with Integer autoboxing makes the same call remove by index on a List but remove by…
Talk on
#OOP vs Data Oriented Programming Which One to ChooseDevnexus 20252025-03-04
Argues that choose OOP when you need runtime polymorphism and extensibility but prefer data-oriented code when third‑party types force parallel hierarchies…
Talk on
Refactoring to Modernize Java ApplicationsDevnexus 20252025-03-04
Demonstrates automated refactors that upgrade a Maven project from Java 11 to Java 21, changing pom.xml and source—examples replace list.get(0)/get(size-1)…
Talk on
Asynchronous Programming in Java using Virtual ThreadsJDD 20242024-10-22
Java now runs blocking IO without blocking OS threads by using virtual threads mount and unmount as continuations ride courier threads, so a blocked task…
Talk on
Decision DialsGOTO Chicago 20242024-10-21
Argues that choices are decision dials not binary flips, and shows concrete tradeoffs: a builder reworks foundation to deliver zero entry access and the house…
Talk on
Design Patterns Revisited in Modern JavaDevoxx Belgium 20242024-10-07
Explains concrete rules and code examples: Optional prevents many NPEs when used as a return type but adds overhead and causes confusion as fields or…
Talk on
Cruising Along with Java: Benefiting from the Modern FeaturesDevoxx Belgium 20242024-10-07
Covers concrete Java changes since 10: local variable type inference (var) and its pitfalls (don’t use with diamond, needs context), text blocks for multi-line…
Talk on
Designing with Sealed ClassesGreat International Developer Summit 20242024-04-23
Sealed classes in modern Java close inheritance for plugin-style APIs so core abstractions can be public but not extensible, replacing brittle hacks like…
Talk on
Observing Applications in ProductionGreat International Developer Summit 20242024-04-23
Claim: production systems need end-to-end observability, not just topic-level monitoring. Concrete practices: use cloud vendor tooling (AWS/GCP/Azure) or New…
Talk on
Hypeless TypeScriptGreat International Developer Summit 20242024-04-23
Argues TypeScript is a JavaScript superset that compiles with tsc to plain JS so static checks exist at compile time but runtime behavior remains JavaScript…
Talk on
Multithreading vs Asynchronous Programming: The Architectural ShiftGreat International Developer Summit 20242024-04-23
Compares Java threading evolution with concrete failures and fixes: a two-thread pool example shows a pool-induced deadlock when parent tasks spawn children…
Talk on
Hire Like a BossGreat International Developer Summit 20242024-04-23
Claims hiring mistakes cost 30% of an employee’s first‑year earnings and that 75% of companies report hiring the wrong person; examples include single openings…
Talk on
Worth a Million ArgumentsGreat International Developer Summit 20242024-04-23
Argues that arguments lose to evidence and shows concrete examples: a 2,000-train purchase discovers 1,300 stations are too small; the Vasa warship and Tacoma…
Talk on
Habits of a Highly Effective Technical ManagerGreat International Developer Summit 20242024-04-23
Lists 12 concrete manager practices and gives real examples: bring a coach to teach TDD (borrow Raju), reassign people to fit strengths (developer moved and…
Talk on
Creating Asynchronous Applications with Virtual ThreadsGreat International Developer Summit 20242024-04-23
Recent Java releases add virtual threads and the claim is concrete: by swapping Executors.newFixedThreadPool to Executors.newVirtualThreadPerTaskExecutor code…
Talk on
Twelve Essential Practices to be Effective in Continuous DeliveryGreat International Developer Summit 20242024-04-23
Claims twelve specific habits for reliable CI/CD and argues CI is a prerequisite and CD the goal, lists concrete steps: write automated unit/acceptance tests…
Talk on
Design Trade-offs in Modern ArchitecturesGreat International Developer Summit 20242024-04-23
Argues that architecture is choosing tradeoffs not following mantras: you cannot get unlimited performance and scale cheaply, CAP means pick two, and most…
Talk on
Design Principles for Better FrontEnd CodeGreat International Developer Summit 20242024-04-23
Argues frontend JavaScript becomes maintainable by applying concrete rules: use === not ==, avoid var and prefer const/let with "use strict" or modules, and…
Talk on
Pattern Matching in JavaGreat International Developer Summit 20242024-04-23
Shows how Java replaces long conditional chains — recalled 169 if-else — with actual value-returning switch expression syntax using arrows and yield, and…
Talk on
Effecting Change—The Art of Leading TeamsVoxxed Days Bucharest 20242024-03-27
Convincing others starts with rigor: verify the problem before selling a fix, generate three solutions and list tradeoffs, and test changes on a small team…
Talk on
Let’s Set the Records StraightIntelliJ IDEA Conf 20242024-03-06
Records generate constructor, getters, equals, hashCode and toString automatically, are final by default and make components final (so avoid mutable members…
Talk on
Code Review, you said?Voxxed Days Ticino 20242024-01-19
Argues code review is feedback-driven engineering and gives concrete rules: never review uncompiled code or code without passing automated tests, review the…
Talk on
Don't Walk Away From Complexity, RunVoxxed Days Thessaloniki 20232023-11-24
Argues that software has inherent complexity from the domain but teams add costly accidental complexity through choices like too many moving parts…
Talk on
The Future of ProgrammingBuild Stuff 20232023-11-15
Argues that real change is generational — core ideas like objects (introduced 1967) take 23 years to mainstream — so focus on paradigms not languages…
Talk on
Keynote: Where Promises Fall ShortVoxxed Days Iași 20232023-05-23
Java’s CompletableFuture behaves like JavaScript promises and works fine for happy paths but becomes awkward for error handling: the demo shows a simple…
Talk on
Decision DialsGreat International Developer Summit 20232023-04-25
Argues that choices are decision dials not switches, so tune trade-offs (reuse vs coupling, performance vs maintainability) instead of picking absolutes; shows…
Talk on
Understanding Performance of React ApplicationsGreat International Developer Summit 20232023-04-25
A demo React grid initially takes 5–8 seconds initial load because a huge virtual DOM is pushed into an empty real DOM; profiling with window.performance…
Talk on
Code Review, you said?Great International Developer Summit 20232023-04-25
Argues code review is one feedback loop among many and gives concrete rules: run linters and CI and compile before asking for review, review tests first (use…
Talk on
Let's Have Some Fun with Game Of Life:& Learn to Think Functionally Along the WayGreat International Developer Summit 20232023-04-25
Implements Conway’s Game of Life in Java with immutable transformations and live coding, not mutation. Uses an enum for cell states, Java records for…
Talk on
Imperative vs Functional: Which one to Choose?Great International Developer Summit 20232023-04-25
Argues that imperative code (familiar, verbose, mutable) adds accidental complexity while functional code is declarative + higher-order functions and reads…
Talk on
Designing Applications with Functional Programming ConstructsGreat International Developer Summit 20232023-04-25
Compares imperative loops to Java Streams and shows the same result can cost eight operations vs 24 naive operations unless streams fuse intermediate ops and…
Talk on
Transforming Data using the Functional APIGreat International Developer Summit 20232023-04-25
Shows concrete Java code patterns using the Streams and Collectors APIs (Java 8+), demonstrating filter map reduce as the core model and using Collectors like…
Talk on
Test Driving React ApplicationsGreat International Developer Summit 20232023-04-25
Shows step‑by‑step TDD for React using Create React App, Jest and React Testing Library: starts with a canary test to verify environment, uses jest.mock to…
Talk on
Developing React Applications with Functional ComponentsGreat International Developer Summit 20232023-04-25
Advocates moving from class-based components to functional components and shows a small React app that renders an App → Greet hierarchy, passes props, and…
Talk on
How to Approach RefactoringGreat International Developer Summit 20232023-04-25
Refactoring is a disciplined, incremental process that improves internal design without changing behavior: write tests or other feedback first, rely on…
Talk on
Programming with ServiceLoader API in JavaGreat International Developer Summit 20232023-04-25
Demonstrates using ServiceLoader with Java modules to build a plugin-style soft‑drink example (softdrink interface, Coke/DietCoke and Pepsi/DietPepsi modules…
Talk on
Improving the Quality of JavaScript CodeGreat International Developer Summit 20232023-04-25
Shows how to fix real JavaScript mistakes: prefer use const/let not var, prefer === over ==, enable "use strict" to catch undeclared variables, copy objects…
Talk on
Creating and Maintaining Architectural Fitness FunctionsGreat International Developer Summit 20232023-04-25
Defines architectural fitness functions as measurable rules (a formula) that show how close code is to an architectural goal and gives concrete examples: treat…
Talk on
The Amazing Features of Modern JavaGreat International Developer Summit 20232023-04-25
Recent Java work moves from Java 8 and modules to a six‑month release train, letting big items finish (type inference took ~5 years, Project Loom ~12 years)…
Talk on
Know Your JavaDevnexus 20232023-04-04
Shows precise gotchas and fixes: passing an int to a variable-typed list can call List.remove(int) vs Collection.remove(Object) so elements vanish…
Talk on
Asynchronous Programming in Java using Virtual ThreadsDevnexus 20232023-04-04
Demonstrates that Project Loom virtual threads (Java 19 preview / Java 20 work) let the JVM create Thread.startVirtualThread instead of OS threads, turning…
Talk on
Decision DialsJfokus 20232023-02-06
Argues decisions are decision dials not binary switches, and designing software is constant trade‑off optimization: choose where to be robust versus malleable…
Talk on
JavaScript: The Fascinating PartsJfokus 20232023-02-06
Argues modern JavaScript is now respectable and gives concrete rules: use const over var (and prefer let to var), run eslint to enforce it, replace arguments…
Talk on
Reasons and Ways to Improve Code QualityDevTernity 20222022-12-08
Claims code quality equals lower effort to understand and that slowing down to refactor speeds future work; argues for minimal design, avoiding premature…
Talk on
Design Patterns in the Light of Lambda ExpressionsJ-Fall 20222022-11-03
Shows how common OO patterns shrink into a few lambdas: the Strategy becomes a simple method taking a Predicate (example totals 1–10 → 55 then filters…
Talk on
Keynote ‘The Art of Simplicity’J-Fall 20222022-11-03
Argues that simplicity needs courage and asks engineers to ask “what can we remove” rather than add clutter, claims functional style removes accidental…
Talk on
Slowdown to Grain Speed: Technical practices that take time but save time.Devoxx Ukraine 2022: Secure our Future2022-09-02
Argues that intentionally slowing to do design, refactoring and tests saves time later, backed by concrete practices: run short prototypes (spike to learn)…
Talk on
The New ExcitementAround Good Old JavaDevnexus 20222022-04-12
Java now ships every six months (release cadence starts March 2018) while individual features take years to design — Java 8’s lambdas plus streams (lazy…
Talk on
What's Looming in Java The Why and What of Project LoomDevnexus 20222022-04-12
Project Loom adds JVM-managed virtual threads built on continuations that detach task state from OS threads so blocking IO no longer pins a thread. A demo…
Talk on
A Dozen Cool Things We Can Do With Popular JVM LanguagesDevoxx Ukraine 20212021-11-19
Twelve concrete tricks across Java, Scala, Groovy and Kotlin: quick file reads via Groovy .text and Kotlin readText or Scala Source.fromFile.mkString…
Talk on
Qualities of a Highly Effective ArchitectDevelopers Summit 20212021-02-18
Lists 12 qualities that make an effective architect and names concrete practices: mentor, criticize ideas not people, guide don’t dictate, practice collective…
Talk on
Javascript Promises vs async-awaitDevelopers Summit 20212021-02-18
Explains concrete tradeoffs: a promise has three states (pending/resolved/rejected), chaining then/catch creates a functional pipeline (example: 2 → 4 → +1 →…
Talk on
Javascript The Fascinating PartsDevelopers Summit 20212021-02-18
Argues to stop using var and use const where possible, falling back to let; shows const prevents rebinding but not internal mutation (objects remain mutable)…
Talk on
Learning To Code In Functional Style with JavaDevelopers Summit 20212021-02-18
Argues functional style cuts accidental complexity by using filter map reduce and Java streams; shows concrete code (list 1–10, filter evens, map x2, reduce…
Talk on
A Few New Cool Features in Modern JavaDevelopers Summit 20212021-02-18
Covers Java 12–16 concrete features with live code: smart casting (pattern matching for instanceof) that gives a typed temporary variable and scope rules…
Talk on
Designing in the World of MicroservicesDevelopers Summit 20212021-02-18
Focuses on design rules that matter for microservices: favor autonomy of development and isolated deployment, partition by domain not tech, and enforce…
Talk on
Towards an Evolutionary ArchitectureAzConf 20202020-11-24
Argues that architecture must evolve across early sprints rather than be fixed up front, recommending vertical slices and prioritizing backlog items by…
Talk on
Types and Type Safety in KotlinDeveloper Summit 20202020-11-21
Kotlin’s type system: local variables and single-expression function returns use type inference so you rarely annotate, while function parameters still require…
Talk on
The Magic of Delegates in KotlinDeveloper Summit 20202020-11-21
Kotlin provides first‑class delegation so the compiler generates routing methods at bytecode level, avoiding manual duplication and fixing DRY and OCP…
Talk on
Principles for Building MicroServicesDeveloper Summit 20202020-11-21
Microservices require domain-driven, cohesive bounded contexts and true autonomy: each service runs as a standalone process with process-level isolation, owns…
Talk on
Java Functional Programming IdiomsDeveloper Summit 20202020-11-21
Shows concrete Java 8 idioms: express a prime check with IntStream.range + noneMatch instead of loops, build readable pipelines by aligning stream operations…
Talk on
Exploring Collectors: A Powerful Utility Class in the JDKDeveloper Summit 20202020-11-21
Shows how java.util.stream.Collectors solves reduce problems: use toList and toUnmodifiableList to avoid shared-mutable accumulation, use…
Talk on
Continuations and Fibers: The New Frontier for JavaDeveloper Summit 20202020-11-21
Project Loom introduces continuations as a data structure (Continuation/ContinuationScope and yield/run) and virtual threads/fibers so IO waits suspend a task…
Talk on
Architectural Principles and Practices to Build MicroServicesDeveloper Summit 20202020-11-21
Argues that microservices succeed only with domain partitioning, isolation and automation: every service owns its data so never share a database, services run…
Talk on
A Dozen Cool Things We Can Do With Popular JVM LanguagesDeveloper Summit 20202020-11-21
Shows a dozen concrete tricks across Java, Scala, Groovy and Kotlin: file reads using Groovy’s new File(...).text and Kotlin’s readText, running shells with…
Talk on
Technical Practices that Take Time but Save TimeDeveloper Summit 20202020-11-21
Argues that slowing down for practices like red green refactor, continuous refactoring, disciplined code reviews and automating deployments pays off with…
Talk on
Effecting Change—The Art Of Leading TeamsDeveloper Summit 20202020-11-21
Change succeeds when you first convince yourself first, then listen to diagnose the real problem, solicit at least three solutions, prototype and amplify what…
Talk on
14 Identifying And Removing ImpedimentsDeveloper Summit 20202020-11-21
Shows concrete fixes and measured practices: a $3 tether solved a recurring projector-remote problem; use ask why five times to reach root causes; prefer…
Talk on
MetaProgramming with JavaScriptDeveloper Summit 20202020-11-21
Modern JavaScript provides a practical metaprogramming API: Reflect and Proxy are used to inject and synthesize behavior. Examples show using…
Talk on
JavaScript Essentials for Programming with ReactDeveloper Summit 20202020-11-21
Modern JavaScript for React emphasizes concrete edits: replace var with use const not var and prefer let only when mutation is necessary; drop arguments and…
Talk on
Developing Mobile Friendly Web Apps with React and BootstrapDeveloper Summit 20202020-11-21
Builds a small React app (created with create-react-app) that displays three sample books from a simulated service, adds Bootstrap via the Bootstrap CDN for…
Talk on
Towards an Evolutionary ArchitectureDeveloper Summit 20202020-11-21
Argues for evolving architecture by doing enough upfront design then iterating: prioritize stories by business value and architectural impact, build…
Talk on
Qualities of a Highly Effective ArchitectDeveloper Summit 20202020-11-21
Lists 12 qualities that define effective architects and argues the most important behaviors are concrete: mentor rather than scold, criticize ideas not people…
Talk on
Core Software Design Principles for ProgrammersDeveloper Summit 20202020-11-21
Argues concrete rules: every piece of knowledge needs a single authoritative source (DRY) — illustrates a shipping app that duplicated validation in Java and…
Talk on
Spearheading The Future of ProgrammingBuild Stuff 20202020-11-11
Argues that mainstream languages will adopt continuations within five years and that continuations plus coroutines make web and microservice conversations…
Talk on
The New Excitement Around the Good Old JavaJ-Fall Virtual 20202020-11-03
Java moves to a six‑month release cadence and that accelerates real features: switch as expression and instanceof pattern matching remove boilerplate and…
Talk on
This Ain’t Your Parents’ JavaOracle Developer Live—Java 20202020-09-15
Java moves from slow evolution to six‑month releases while keeping quality; recent specifics: modules shrink the runtime (the old rt.jar 68 MB), Java 8’s…
Talk on
Let's Get LazyJetBrains Technology Day for Java 20202020-07-10
Explains lazy evaluation with live demos in GHCi/Haskell, Scala lazy vals and Java lambdas using Supplier, shows Streams fuse intermediate ops and defer work…
Talk on
JetBrains Technology Day for Java 2020JetBrains Technology Day for Java 20202020-07-10
Nine short sessions show concrete tools, code and outcomes: Bootiful Testing demos Spring Boot test slices and Mockito based examples; Good Old Stream API…
Talk on
Opening KeynoteDevDotNext 2020 Digital Edition2020-03-24
Welcome message explaining the in-person conference becomes a digital edition, organized on short notice and preserved as a series of timed talks: 60-minute…
Talk on
Exploring CollectorsDevnexus 20202020-02-19
Argument: the JDK Collectors API replaces error-prone manual mutation with composable, parallel-safe reductions. Live-coded specifics show filter/map/reduce…
Talk on
Improving Quality of JavaScript CodeJS Fest 2019 Autumn2019-11-08
Claims that long functions kill agility backed by an example of a 7000-line function and a concrete refactor path: rewrite imperative loops into functional…
Talk on
Qualities of a Highly Effective Architect KeynoteDevoxx Belgium 20192019-11-04
Lists twelve concrete habits: mentor others, prefer prototype beats argument (one-hour prototype example changes decisions), evaluate trade-offs with the…
Talk on
Exploring CollectorsDevoxx Belgium 20192019-11-04
Walks through concrete Java Stream code showing where Collectors replace error-prone reduce/for-each patterns, demonstrates Collectors utility class methods…
Talk on
Java 9 and BeyondDevoxx Belgium 20192019-11-04
Covers concrete Java 9–13 changes: module system replaces bloated rt.jar (~68MB) with modules vs classpath and enforces requires/exports so apps fail fast…
Talk on
Automated Testing JavaScriptAll Things Open 20192019-10-13
Explains exactly how to get fast, reliable feedback: set up mocha and chai with karma to run tests in a browser, use a tiny canary test to verify tooling, stub…
Talk on
Spearheading the future of programmingRiga Dev Days 20192019-05-29
Argues that paradigm shifts take decades and makes a concrete case that Java is about to move from heavy multithreading to asynchronous programming, showing…
Talk on
From Functional to Reactive ProgrammingRiga Dev Days 20192019-05-29
Argues that reactive = functional++: start with functional composition and lazy streams, then add back pressure and three channels (data, error, complete)…
Talk on
A Dozen Cool Things You can Do with JVM LanguagesVoxxed Days CERN 20192019-05-01
Shows 12 concrete JVM-language tricks with code hits: file reading via Groovy's file.text and Scala's Source.mkString, running processes with Groovy…
Talk on
Don't Walk Away From Complexity, RunVoxxed Days Zurich 20192019-03-19
Argues that complexity blocks agility and gives concrete failures and fixes: XML-heavy configuration forces XML configuration took 4–6 months to set up for…
Talk on
Refactor your language knowledge portfolio - we are what we can code inVoxxed Days Cluj-Napoca 20182018-11-21
Argues that learning a very different language reshapes thinking and shows concrete JVM-era benefits: bridge languages (Kotlin, Scala, Groovy, Clojure, JRuby)…
Talk on
Java Functional Programming IdiomsJ-Fall 20182018-11-08
Focuses on concrete habits: prefer a collection pipeline (Stream → filter people older than 25 → map to name → map to uppercase → collect(joining(",")))…
Talk on
Kotlin for Java ProgrammersJ-Fall 20182018-11-08
Shows Kotlin running on multiple targets and demos actual commands like kotlinc -jvm and running .kts scripts to compile and script quickly; walks through…
Talk on
Twelve Ways to Make Code Suck LessOracle Code One 20182018-10-22
Twelve concrete practices: schedule regular time to pay technical debt, prefer high cohesion and remove or relocate coupling, replace custom code with JDK…
Talk on
Reactive APIs of Java 9Oracle Code One 20182018-10-22
Venkat Subramaniam, President, Agile Developer, Inc. Reactive programming is no longer an esoteric idea. Many libraries and tools have started providing…
Talk on
Benefiting from Java 9 ImprovementsOracle Code One 20182018-10-22
Java 9 deprecates finalize and adds private methods in interfaces to factor shared code, makes try-with-resources accept outside (effectively final) variables…
Talk on
Type Inference: Friend or FoeOracle Code One 20182018-10-22
Survey of Java type inference traces its history from generics and the diamond operator to Java 10’s introduction of var for local variables and Java 11’s…
Talk on
CompletableFuture: The Promises of JavaOracle Code One 20182018-10-22
CompletableFuture is Java’s equivalent of JavaScript promises: use supplyAsync to run compute in the ForkJoin common pool or pass a custom pool, chain…
Talk on
Exploring Coroutines in KotlinKotlinConf 20182018-10-03
Kotlin coroutines let code stay sequential while becoming nonblocking: the demo turns blocking URL reads for a localhost stock-price service (port 8085) into…
Talk on
Creating Internal DSLs in KotlinKotlinConf 20182018-10-03
Kotlin features shown as concrete tools for internal DSLs: infix functions, extension functions, and lambdas with receiver (implicit receiver) are used to drop…
Talk on
Refactoring to Functional StyleNDC Oslo 20182018-06-11
Starts from noisy imperative examples and shows concrete refactorings in Java using the Java Stream API: replace mutable loops with filter map noneMatch to…
Talk on
JavaScript the Cute PartsNDC Oslo 20182018-06-11
Concrete ES6 fixes and patterns that change day-to-day code: avoid var and use const over var (const prevents mutation errors shown), prefer let only when you…
Talk on
Twelve Ways to Make Code Suck LessVoxxed Days Minsk 20182018-05-26
Gives twelve concrete prescriptions: schedule time to pay technical debt, track cohesion (cyclomatic complexity example rising from 5 to 864), and eliminate…
Talk on
Let's Get Lazy: Exploring the Real Power of StreamsVoxxed Days Minsk 20182018-05-26
Efficiency is achieved not just by running things faster, but by avoiding things that shouldn't be done in the first place. Lazy evaluations are a core feature…
Talk on
Parallel and Asynchronous Programming with Streams and CompletableFutureDevoxx Belgium 20172017-11-06
Covers concrete rules and demos for Java 8 parallel streams and CompletableFuture: shows a real timing example (17s → 4s with parallel), warns that adding more…
Talk on
Exploring Java 9: The Key PartsDevoxx Belgium 20172017-11-06
Covers concrete Java 9 changes and how to use them: private and static helpers inside interfaces, try‑with‑resources accepting existing variables…
Talk on
Kotlin for Java ProgrammersDevoxx Belgium 20172017-11-06
Kotlin compiles to Java bytecode and JavaScript and is shown running via the kotlinc compiler REPL and as scripts (.kts scripts). Examples demonstrate type…
Talk on
Keynote: The Art of SimplicityNDC TechTown 20172017-10-17
Argues that most complexity is accidental and shows concrete fixes: replaces an error-prone imperative name loop with filter/map/join in JavaScript…
Talk on
Concurrent Programming in C++NDC TechTown 20172017-10-17
C++11 concurrency features get practical coverage: std::thread plus hardware_concurrency=8 (hyperthreading can mislead), join vs detach (detached threads…
Talk on
Refactoring to Functional StyleOracle OpenWorld 20172017-10-01
Argues that refactoring Java imperative code to Java 8 functional style produces clearer, shorter code and enables lazy infinite streams and better reuse…
Talk on
Designing Functional ProgramsOracle OpenWorld 20172017-10-01
Argues that the payoff from functional style is function composition and lazy evaluation, not just immutability or lambdas, and shows Java 8’s limits: checked…
Talk on
The Power and Perils of Parallel StreamsOracle OpenWorld 20172017-10-01
Explains when parallel streams actually help (many elements and heavy per-item work) and when they hurt (too few items, too many threads), shows that the…
Talk on
Let’s Get Lazy: Explore the Real Power of StreamsDevoxx US 20172017-03-21
Demonstrates that laziness yields efficiency by avoiding unnecessary work, showing Haskell’s normal-order laziness, Scala’s lazy vals, and how Java achieves it…
Talk on
Functional Programming with Java 8Devoxx US 20172017-03-21
Java 8 demonstrates concrete functional tools: lambda expressions (parameters + body, inferred return), single‑abstract‑method functional interfaces, method…
Talk on
Reactive Programming in JavaDevoxx US 20172017-03-21
Shows reactive concepts by wiring a live stock feed example that emits values, handles errors, and lets clients unsubscribe when a target price is reached…
Talk on
WelcomeVoxxed Days CERN 20172017-02-25
Event organizers recount how local teams rode trains and pooled ideas to launch Voxxed Days at CERN and confirm two parallel tracks plus a digital panel…
Organiser on
Reactive Programming in JavaVoxxed Days CERN 20172017-02-25
Argues reactive programming groups four needs — message-driven architecture, elasticity, responsiveness, resilience — and demonstrates a runnable Java RxJava…
Talk on
Let’s Get Lazy—The Real Power of Functional ProgrammingNDC London 20172017-01-16
Demonstrates that lazy evaluation cancels unnecessary work: Haskell’s normal-order evaluation skips computing add when the result is never needed (shown via…
Talk on
Get Reactive with RxJSNDC London 20172017-01-16
Explains practical RxJS use with live demos: an observable that emits primes up to 10,000 (subscriber calls next, complete and error terminate the data…
Talk on
Reactive Programming: creating highly responsive applicationsJavaDay Kyiv 20152015-11-06
Venkat Subramaniam Founder of Agile Developer, Inc. JavaDay Kyiv (http://javaday.org.ua) - the community-driven conference for Java developers. Stay geeky!
Talk on
Get Past the Syntax, the Real Scare's in the SemanticsJavaDay Kyiv 20152015-11-06
Argues that semantics beat syntax with concrete examples: Ruby’s polymorphic new and dynamic object fields, Clojure’s immutability model using doSync/ref…
Talk
Programming with Streams in Java 8JavaDay Kyiv 20152015-11-06
Programming with Streams in Java 8 Venkat Subramaniam Founder of Agile Developer, Inc. JavaDay Kyiv (http://javaday.org.ua) - the community-driven conference…
Talk on
Functional Programming: Technical Reasons to AdaptJavaDay Kyiv 20152015-11-06
Argues that immutability + pure functions make code easier to reason about, safer for concurrency, and enable optimizations like lazy evaluation, memoization…
Talk on
Transforming Your C# Code to Functional StyleGreat Indian Developer Summit 20152015-04-21
Shows concrete refactorings from imperative loops and classes to concise functional patterns: replaces index loops with LINQ Where/Select/ForEach, turns…
Talk on
Let's Get LazyGreat Indian Developer Summit 20152015-04-21
Argues that laziness — doing work only when needed — yields scalability gains and lower work counts: demonstrates Haskell normal order skips unnecessary calls…
Talk on
Get Past the Syntax, the Real Scare's in the SemanticsGreat Indian Developer Summit 20152015-04-21
Argues that the hard part is semantics not syntax and gives concrete examples: Ruby: class objects make new polymorphic and instances can gain fields at…
Talk
A Practical Introduction to AngularJSGreat Indian Developer Summit 20152015-04-21
Live-coding builds a small task manager: a Node.js + Express service that returns JSON and an AngularJS front end that uses ng-app with controller-as, $http…
Talk on
If I had a Time MachineGreat Indian Developer Summit 20152015-04-21
Proposes using a time machine to undo concrete mistakes: stop creating Program Files with a space, reverse the forward slash vs backslash mess, ban modal…
Talk on
The Power and Practicalities of ImmutabilityGreat Indian Developer Summit 20152015-04-21
Argues that programming with immutability in F# and C# noticeably reduces bugs, enables safe concurrency and compiler optimizations, and makes testing trivial…
Talk on
jQuery for Grails DevelopersGreat Indian Developer Summit 20152015-04-21
Builds a small Grails "tasks" app and shows concrete code: uses formRemote + jQuery to post a create, controller renders a JSON payload containing the…
Talk on
Transforming Your Code to Java 8Great Indian Developer Summit 20152015-04-21
Shows concrete Java 8 rewrites: replace indexed Thread creation with lambdas and IntStream.range to remove mutable i and final hacks, find 100 primes with an…
Talk on
Haskell for Java ProgrammersGreat Indian Developer Summit 20152015-04-21
Shows concrete Haskell features Java programmers can use: interactive REPL type queries to inspect inferred polymorphic types, concise currying and partial…
Talk on
Programming with Streams in Java 8Great Indian Developer Summit 20152015-04-21
Shows how Java 8 Stream API transforms a List<Person> into results: using filter→map→collect to produce uppercase names of females over 18 (transcript example…
Talk on
Patterns for Programming in JavaScriptGreat Indian Developer Summit 20152015-04-21
Shows concrete patterns and gotchas: enable use strict to avoid accidental globals, prefer === over ==, and use closures to encapsulate private state rather…
Talk on
Exploring TypeScriptGreat Indian Developer Summit 20152015-04-21
TypeScript compiles to JavaScript and adds static typing with inference, a tsc option to noEmitOnError, and ambient declarations so browser globals or jQuery…
Talk on
Asynchronous Programming on the .NET PlatformGreat Indian Developer Summit 20152015-04-21
Speaker: Venkat Subramaniam With multicore processors, the demand to create highly responsive applications has increased. Programming with threads can be an…
Talk on
The Joy of Functional ProgrammingFunctional Conf 20142014-10-09
Argues that functional programming gives concrete benefits: referential transparency and pure functions let compilers reorder work and run independent tasks…
Talk on
Transforming your C# code to Functional StyleFunctional Conf 20142014-10-09
Shows concrete C# rewrites: replace for/foreach and mutable accumulators with LINQ Where/Select and passing lambdas, turning imperative loops into internal…
Talk on
Haskell for Everyday ProgrammersFunctional Conf 20142014-10-09
Shows Haskell’s concrete benefits: a REPL demo proves the compiler infers types so developers write fewer annotations while keeping static strong typing, lazy…
Talk on
Java 8 Language Capabilities, What's in it for you?SpringOne2GX 20142014-09-08
Covers concrete Java 8 changes: lambda expressions and method references replace anonymous inner classes for concise callbacks; new functional interfaces…
Talk on
How To Approach RefactoringAgile India 20122012-02-17
Argues that refactoring is essential for agility and gives concrete, repeatable practices: write tests before changing (unit, integration, performance)…
Talk on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.