Episodes

  • JDBC with Oracle Deeper Dive: From OCI to Thin Drivers and Beyond
    Nov 3 2024
    An airhacks.fm conversation with Gerald Venzl (@geraldvenzl) about: discussion about the evolution of Oracle's annual conference from OpenWorld to CloudWorld, the JavaOne conference, explanation of JDBC driver types and their evolution, Oracle's thin JDBC driver becoming the preferred option, availability of Oracle JDBC drivers on Maven Central, proprietary features of Oracle's JDBC driver including Continuous Query Notification (CQN) and Application Continuity, comparison of CQN to Change Data Capture (CDC) and CQRS patterns, Oracle's Flashback Data Archive for auditing and time travel capabilities, Oracle's Advanced Queuing and Transactional Event Queues, ORDS REST APIs, Oracle product page, Oracle JDBC client libraries, the plug-in mechanism implemented in early Java versions for JDBC drivers using Class.forName and static initializers, Gerald Venzl's online presence and recent blog post about running Oracle database on Raspberry Pi

    Gerald Venzl on twitter: @geraldvenzl

    Show more Show less
    46 mins
  • Java, LLMs, and Seamless AI Integration with langchain4j, Quarkus and MicroProfile
    Oct 26 2024
    An airhacks.fm conversation with Dmytro Liubarsky (@langchain4j) about: discussion on recent developments in Java and LLM integration, new features in langchain4j including Easy RAG for simplified setup, SQL database retrieval with LLM-generated queries, integration with graph databases like Neo4j, Neo4j and graphrag, metadata filtering for improved search capabilities, observability improvements with listeners and potential integration with opentelemetry, increased configurability for AI services enabling state machine-like behavior, the trend towards CPU inference and smaller, more focused models, langchain4j integration with quarkus and MicroProfile, parallels between AI integration and microservices architecture, the importance of decomposing complex AI tasks into smaller, more manageable pieces, potential cost optimization strategies for AI applications, the excitement around creating smooth APIs that integrate well with the Java ecosystem, the potential future of CPU inference and its parallels with the evolution of server infrastructure, the upcoming Devoxx conference,

    Dmytro Liubarsky on twitter: @langchain4j

    Show more Show less
    1 hr
  • Quarkus and LangChain4J - A Match Made in Heaven
    Oct 20 2024
    An airhacks.fm conversation with Georgios Andrianakis (@geoand86) about: discussion on integrating langchain4j with quarkus for enterprise AI applications, similarities between LLM integration and microservice architecture, benefits of using Java and MicroProfile for AI development, explanation of AI services, chat memory, and tools in LangChain4J, importance of session management and fault tolerance in LLM applications, vector databases and embeddings for efficient information retrieval, RAG (Retrieve Augmented Generation) implementation in enterprise settings, Quarkus dev mode features for LLM experimentation, native image support with GraalVM, local inference possibilities with Java 21's Vector API and quantized models, challenges in prompt engineering and model selection, upcoming features in LangChain4J including Ollama tool support and improved result streaming, future developments in Java for AI and GPU support with Project Babylon, importance of enterprise-grade features like CI/CD, testing, and cloud deployment for LLM applications

    Georgios Andrianakis on twitter: @geoand86

    Show more Show less
    1 hr and 3 mins
  • Why JVector 3 Is The Most Advanced Embedded Vector Search Engine
    Oct 13 2024
    An airhacks.fm conversation with Jonathan Ellis (@spyced) about: discussion of JVector 3 features and improvements, compression techniques for vector indexes, binary quantization vs product quantization, anisotropic product quantization for improved accuracy, indexing Wikipedia example, Cassandra integration, SIMD acceleration with Fused ADC, optimization with Chronicle Map, E5 embedding models, comparison of CPU vs GPU for vector search, implementation details and low-level optimizations in Java, use of Java Panama API and foreign function interface, JVector's performance advantages, memory footprint reduction, integration with Cassandra and Astra DB, challenges of vector search at scale, trade-offs between RAM usage and CPU performance, Eventual Consistency in distributed vector search, comparison of different embedding models and their accuracy, importance of re-ranking in vector search, advantages of JVector over other vector search implementations

    Jonathan Ellis on twitter: @spyced

    Show more Show less
    54 mins
  • The AI Revolution in Java Development and Devoxx Genie
    Oct 6 2024
    An airhacks.fm conversation with Stephan Janssen (@Stephan007) about: Stephan previously appeared on "#254 How JavaPolis and Devoxx Happened", discussion on the AI revolution in programming, development of an AI-assisted photo sharing application, creation of the Devoxx Genie IntelliJ plugin for AI-augmented programming, advantages of Claude 3.5 from Anthropic, use of local AI models in development environments, integration of AI in Java development, langchain4j and its adoption by Red Hat, development of Java-based AI tools like Lama3.java, jlama and JVector, potential for specialized AI models in software development, challenges and opportunities for junior and senior developers in AI-augmented programming, importance of understanding cloud services and cost structures when using AI, potential future of prompt-based programming and code generation, discussion on maintaining and improving AI-generated code, exciting developments in Java for AI including project valhalla and tornadovm, potential for running AI models directly on Java without external dependencies, considerations for enterprise AI adoption and integration, the need for promoting Java's capabilities in AI development, potential for Visual Studio Code port of Devoxx Genie, the challenge of maintaining AI-generated code versus keeping prompts, the concept of "prompt ops" for software development, the use of AI for code review and improvement, the potential for AI to lower the barrier to entry for new developers, and the exciting future of AI in software development

    Stephan Janssen on twitter: @Stephan007

    Show more Show less
    1 hr and 9 mins
  • From Apache Cassandra to Serverless: Exploring Cloud-Native Databases
    Oct 5 2024
    An airhacks.fm conversation with Jake Luciani (@tjake) about: from Commodore 64 to cloud databases, early programming experiences with Basic and Excel macros, studying cognitive science and its influence on his career, transition to computer science, working at Bell Labs on R language, developing open-source projects like Night Rider MP3 player, creating a NoSQL database that led to involvement with Cassandra, building search API on top of Cassandra, joining datastax as an early employee, working on various aspects of Cassandra including compaction and streaming, challenges of byte buffer implementation, development of CQL (Cassandra Query Language), transition from NoSQL to SQL-like interfaces, separation of compute and storage in cloud databases, using S3 as the source of truth for Astra DB, implementing a Java file system abstraction for S3 integration, using etcd as a transactional cache for metadata, offering multiple APIs including REST and CQL drivers for astra DB, implementing JSON document storage and querying capabilities, cross-AZ cost considerations in cloud deployments, Java as a language for database development, future plans for jlama (Java-based LLM inference engine), the importance of open-source in cloud technologies, cost-driven architectures in cloud deployments, serverless vs. traditional deployments trade-offs, integration of AstraDB with cloud marketplaces and security considerations

    Jake Luciani on twitter: @tjake

    Show more Show less
    1 hr and 16 mins
  • Revolutionizing AI with Java: From LLMs to Vector APIs
    Sep 28 2024
    An airhacks.fm conversation with Alfonso Peterssen (@TheMukel) about: Alfonso previously appeared on "#294 LLama2.java: LLM integration with A 100% Pure Java file", discussion of llama2.java and llama3.java projects for running LLMs in Java, performance comparison between Java and C implementations, use of Vector API in Java for matrix multiplication, challenges and potential improvements in Vector API implementation, integration of various LLM models like Mistral, phi, qwen or gemma, differences in model sizes and capabilities, tokenization and chat format challenges across different models, potential for Java Community Process (JCP) standardization of gguf parsing, quantization techniques and their impact on performance, plans for integrating with langchain4j, advantages of pure Java implementations for AI models, potential for GraalVM and native image optimizations, discussion on the future of specialized AI models for specific tasks, challenges in training models with language capabilities but limited world knowledge, importance of SIMD instructions and vector operations for performance optimization, potential improvements in Java's handling of different float formats like float16 and bfloat16, discussion on the role of smaller, specialized AI models in enterprise applications and development tools

    Alfonso Peterssen on twitter: @TheMukel

    Show more Show less
    1 hr and 9 mins
  • JAX-RS With- and Without Reactive Programming in Quarkus
    Sep 22 2024
    An airhacks.fm conversation with Georgios Andrianakis (@geoand86) about: discussion on JAX-RS and reactive programming in quarkus, comparison of blocking vs non-blocking approaches, performance considerations for different use cases, Quarkus underlying architecture using Vert.x, handling of HTTP requests and responses, thread management in Quarkus, reactive vs traditional programming models, integration with databases using Hibernate and Hibernate Reactive, JSON serialization options (Jackson, JSON-B), balancing act between supporting standards and providing modern features, documentation challenges for a large project like Quarkus, detecting blocked event loop threads, CPU-intensive tasks in reactive programming, non-blocking database drivers for reactive programming, historical perspective on messaging systems and their challenges, use cases for reactive programming, performance characteristics of blocking vs non-blocking systems under high load, brief mention of LangChain for Java and its similarity to JPA for LLMs

    Georgios Andrianakis on twitter: @geoand86

    Show more Show less
    1 hr and 7 mins