The Java Collection Framework is a unified architecture for representing and manipulating collections, enabling them to be manipulated independently of the details of their representation.
The Collection Framework consists of three main parts: interfaces that define abstract data types, implementations of those interfaces, and algorithms that can operate on the interfaces and implementations. It includes core interfaces like Collection, List, Set, and Map as well as specialized interfaces like SortedSet and SortedMap. Implementations like ArrayList, LinkedList, HashSet, TreeSet, HashMap and TreeMap provide concrete versions of the interfaces. The Collections and Arrays classes contain predefined algorithms that support the framework.
This document discusses collections in .NET. It defines a collection as a group of objects and notes that .NET has many interfaces and classes that define and implement various types of collections. It describes the main benefits of collections and discusses the main types of collections supported in .NET - non-generic, specialized, bit-based, generic, and concurrent collections.
The document discusses Java collections framework which includes core collection interfaces like Collection, List, Set, and Map. It describes what each interface represents and common implementations of each interface like ArrayList, LinkedList, HashSet, TreeSet, HashMap and TreeMap. The key benefits of using collections framework are reducing programming effort, increasing program speed and quality, allowing interoperability between APIs and reusability of code.
This document provides an introduction and overview of the Google Guava libraries. It describes what Guava is, why developers would use it, how it compares to Apache Commons libraries, its design principles and release cycles. It provides descriptions of some key Guava packages and classes for common Java utilities, including Preconditions, Optional, Objects, Strings, Charsets, CaseFormat, CharMatcher, Joiner and Splitter. The document aims to explain the purpose and usage of important Guava functionality.
ASP.Net 5 and C# 6 bring significant changes to the .NET framework and programming language. ASP.Net 5 introduces a new, modular framework that is cross-platform and optimized for building modern web applications. It uses middleware for request handling and dependency injection for services. C# 6 includes new features like null conditional operators, string interpolation, and auto-property initializers that improve code readability and safety. While Umbraco itself may not immediately use these new technologies, .NET developers should learn them to stay current with the platform.
The Java Collections Framework provides interfaces and implementations for commonly used data structures like lists, sets, maps and queues. The core interfaces like Collection, List, Set, Queue and Map define the common operations for each type of data structure. General purpose implementations provided for these interfaces include ArrayList, LinkedList, HashSet, TreeSet, HashMap and TreeMap. Additional implementations provide functionality like synchronization or immutable collections.
The Java Collections Framework provides interfaces and implementations for commonly used data structures like lists, sets, maps and queues. The core interfaces like Collection, List, Set, Queue and Map define the common operations for each type of data structure. General purpose implementations provided for these interfaces include ArrayList, LinkedList, HashSet, TreeSet, HashMap and TreeMap. Additional wrapper and convenience implementations add functionality like synchronization or provide optimized versions for specific use cases.
Examiness hints and tips from the trenchesIsmail Mayat
This document provides an overview of tools and techniques for working with the Examine search engine in Umbraco, including:
- Tools like Luke and the Examine Dashboard for debugging indexes.
- Using the GatheringNodeData event to merge fields, add fields like node type aliases, and handle errors during indexing.
- Indexing different media types like PDFs using Tika.
- Techniques for search highlighting, boosting documents, and deploying index changes across environments.
- Faceted search capabilities and using the index as an object database.
The presenter encourages exploring the full capabilities of Examine and provides examples of how to optimize indexing and searching.
This document summarizes a Java hands-on workshop covering containers, I/O, reflection, generics and other Java concepts. The workshop included examples and exercises on topics like lists, sets, maps, iterators, object creation, garbage collection, the File class, readers/writers and more. Code examples were provided on GitHub for attendees to reference.
The document provides an overview of Java collection framework and some key classes. It discusses collection interfaces like Collection and Map. It describes commonly used collection classes like ArrayList, LinkedList, HashSet and how to add/access elements. The advantages of collection framework like consistent API and reduced programming effort are highlighted. The StringTokenizer and Date classes are also briefly explained with examples of their usage.
This document provides an overview of Java collections including:
- The various collection interfaces like List, Set, and Map.
- Concrete collection classes like ArrayList, LinkedList, HashSet, and HashMap.
- Best practices for using collections like coding to interfaces and choosing appropriate collections based on needs.
- Concepts like generics, iterators, Comparable and Comparators.
A collections framework provides a unified architecture for representing and manipulating collections of objects. It includes interfaces that define common operations on collections, implementations of those interfaces that provide reusable data structures, and algorithms that perform useful computations on collections. The main interfaces are Collection, Set, List, Queue, and Map. Collections make programming easier by reducing effort, increasing speed/quality, allowing interoperability, and fostering reuse.
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
This document provides an overview of Java data structures including arrays, collections framework, and common collection interfaces like List, Set, and Map. It discusses how to use arrays to store and access data, the key methods of common collection interfaces, and hands-on exercises to work with arrays and collections in Java.
This document discusses several design patterns: Factory, Flyweight, Singleton, Observer, Proxy, Decorator. It provides definitions and examples of when to use each pattern. The Factory pattern creates objects without specifying the exact class. Flyweight reduces memory usage by sharing instances. Singleton ensures only one instance exists. Observer notifies dependent objects of state changes. Proxy controls access to another object. Decorator adds new behaviors to an object dynamically.
The document discusses several classes from the java.util package, including ArrayDeque, ArrayList, Arrays, BitSet, Calendar, Dictionary, EnumMap, HashMap, HashSet, LinkedHashSet, and Properties. It provides descriptions of each class and highlights their key features and common uses.
The document provides an overview of writing idiomatic Objective-C code. It discusses key Objective-C concepts like classes, methods, memory management with ARC, properties, protocols, threading with GCD, blocks, and common design patterns used in Apple's frameworks like MVC, target-action, KVC, and delegation. It emphasizes adopting Apple's conventions for naming, file organization, and other practices to write code that fits with Cocoa frameworks.
The Good, the Bad and the Ugly of Java API designMiro Cupak
The document discusses Java API design patterns and antipatterns based on several Java APIs, including:
1. Collections API - Take advantage of immutable collections created with factory methods and copies to avoid issues with shared references.
2. Stack-walking API - Leverage the Stream API to lazily access call stack elements and avoid manually resolving classes.
3. Process API - Use ProcessHandle for a clean way to obtain process information with convenience methods rather than external libraries.
4. HTTP client API - Prefer the new HTTP client over HttpURLConnection for a clear, versatile and flexible design with asynchronous support.
Using JCache
This document discusses Java Caching (JCache), the Java standard for caching APIs specified in JSR-107. It introduces caching concepts and benefits, describes the key interfaces and classes in JCache like CacheManager and Cache, and demonstrates features like entry processors. It also discusses JCache implementations like Hazelcast and annotations for method-level caching. The future of JCache is outlined, with plans for JCache 1.1, 2.0 aligned with Java EE 8, and 3.0 aligned with future Java versions. The document ends with information on Hazelcast's JCache support.
WHAT ARE COLLECTIONS?
Collections store arbitrary objects in a structured manner. Types of collections available within the .NET Framework are:
ARRAYS
ADVANCED COLLECTIONS -
i) Non - Generics
ii) Generics
The document discusses Java's Collections framework. It provides an overview of Collections and their benefits, describes the core Collections interfaces like Collection, Set, List, Queue, Map, SortedSet and SortedMap. It also discusses common operations, implementations, iteration, algorithms and thread safety considerations for Collections.
This document discusses clean architecture principles and how to enforce them using ArchUnit. It provides an example of defining architectural rules that specify which layers controllers, use cases, and entities belong to, and which layers they can access. It also shows how to set up a Gradle build file to enforce dependencies between layers following the defined architecture.
This document discusses different ways to store data in Android applications, including shared preferences, files, SQLite databases, and content providers. It provides examples of how to use shared preferences to store private data for a single activity or across all app components. It also discusses how to use files, SQLite databases to store data, including creating databases, inserting, updating and querying data. Finally, it covers how to create and use custom content providers to expose app data through a content URI.
Implementing Load Balancing in COM+ ApplicationsArun Seetharaman
COM+ is an evolution of Microsoft Component Object Model (COM) and Microsoft Transaction Server (MTS). COM+ builds on and extends applications written using COM, MTS, and other COM-based technologies.
Advanced Windows DNA Scripting with Visual InterDevArun Seetharaman
"Windows Distributed interNet Applications Architecture" (DNA) was Microsoft's approach to building applications that could leverage both the Windows platform and the internet
Ad
More Related Content
Similar to Data Structures in Java and Introduction to Collection Framework (20)
Examiness hints and tips from the trenchesIsmail Mayat
This document provides an overview of tools and techniques for working with the Examine search engine in Umbraco, including:
- Tools like Luke and the Examine Dashboard for debugging indexes.
- Using the GatheringNodeData event to merge fields, add fields like node type aliases, and handle errors during indexing.
- Indexing different media types like PDFs using Tika.
- Techniques for search highlighting, boosting documents, and deploying index changes across environments.
- Faceted search capabilities and using the index as an object database.
The presenter encourages exploring the full capabilities of Examine and provides examples of how to optimize indexing and searching.
This document summarizes a Java hands-on workshop covering containers, I/O, reflection, generics and other Java concepts. The workshop included examples and exercises on topics like lists, sets, maps, iterators, object creation, garbage collection, the File class, readers/writers and more. Code examples were provided on GitHub for attendees to reference.
The document provides an overview of Java collection framework and some key classes. It discusses collection interfaces like Collection and Map. It describes commonly used collection classes like ArrayList, LinkedList, HashSet and how to add/access elements. The advantages of collection framework like consistent API and reduced programming effort are highlighted. The StringTokenizer and Date classes are also briefly explained with examples of their usage.
This document provides an overview of Java collections including:
- The various collection interfaces like List, Set, and Map.
- Concrete collection classes like ArrayList, LinkedList, HashSet, and HashMap.
- Best practices for using collections like coding to interfaces and choosing appropriate collections based on needs.
- Concepts like generics, iterators, Comparable and Comparators.
A collections framework provides a unified architecture for representing and manipulating collections of objects. It includes interfaces that define common operations on collections, implementations of those interfaces that provide reusable data structures, and algorithms that perform useful computations on collections. The main interfaces are Collection, Set, List, Queue, and Map. Collections make programming easier by reducing effort, increasing speed/quality, allowing interoperability, and fostering reuse.
This is an intermediate conversion course for C++, suitable for second year computing students who may have learned Java or another language in first year.
This document provides an overview of Java data structures including arrays, collections framework, and common collection interfaces like List, Set, and Map. It discusses how to use arrays to store and access data, the key methods of common collection interfaces, and hands-on exercises to work with arrays and collections in Java.
This document discusses several design patterns: Factory, Flyweight, Singleton, Observer, Proxy, Decorator. It provides definitions and examples of when to use each pattern. The Factory pattern creates objects without specifying the exact class. Flyweight reduces memory usage by sharing instances. Singleton ensures only one instance exists. Observer notifies dependent objects of state changes. Proxy controls access to another object. Decorator adds new behaviors to an object dynamically.
The document discusses several classes from the java.util package, including ArrayDeque, ArrayList, Arrays, BitSet, Calendar, Dictionary, EnumMap, HashMap, HashSet, LinkedHashSet, and Properties. It provides descriptions of each class and highlights their key features and common uses.
The document provides an overview of writing idiomatic Objective-C code. It discusses key Objective-C concepts like classes, methods, memory management with ARC, properties, protocols, threading with GCD, blocks, and common design patterns used in Apple's frameworks like MVC, target-action, KVC, and delegation. It emphasizes adopting Apple's conventions for naming, file organization, and other practices to write code that fits with Cocoa frameworks.
The Good, the Bad and the Ugly of Java API designMiro Cupak
The document discusses Java API design patterns and antipatterns based on several Java APIs, including:
1. Collections API - Take advantage of immutable collections created with factory methods and copies to avoid issues with shared references.
2. Stack-walking API - Leverage the Stream API to lazily access call stack elements and avoid manually resolving classes.
3. Process API - Use ProcessHandle for a clean way to obtain process information with convenience methods rather than external libraries.
4. HTTP client API - Prefer the new HTTP client over HttpURLConnection for a clear, versatile and flexible design with asynchronous support.
Using JCache
This document discusses Java Caching (JCache), the Java standard for caching APIs specified in JSR-107. It introduces caching concepts and benefits, describes the key interfaces and classes in JCache like CacheManager and Cache, and demonstrates features like entry processors. It also discusses JCache implementations like Hazelcast and annotations for method-level caching. The future of JCache is outlined, with plans for JCache 1.1, 2.0 aligned with Java EE 8, and 3.0 aligned with future Java versions. The document ends with information on Hazelcast's JCache support.
WHAT ARE COLLECTIONS?
Collections store arbitrary objects in a structured manner. Types of collections available within the .NET Framework are:
ARRAYS
ADVANCED COLLECTIONS -
i) Non - Generics
ii) Generics
The document discusses Java's Collections framework. It provides an overview of Collections and their benefits, describes the core Collections interfaces like Collection, Set, List, Queue, Map, SortedSet and SortedMap. It also discusses common operations, implementations, iteration, algorithms and thread safety considerations for Collections.
This document discusses clean architecture principles and how to enforce them using ArchUnit. It provides an example of defining architectural rules that specify which layers controllers, use cases, and entities belong to, and which layers they can access. It also shows how to set up a Gradle build file to enforce dependencies between layers following the defined architecture.
This document discusses different ways to store data in Android applications, including shared preferences, files, SQLite databases, and content providers. It provides examples of how to use shared preferences to store private data for a single activity or across all app components. It also discusses how to use files, SQLite databases to store data, including creating databases, inserting, updating and querying data. Finally, it covers how to create and use custom content providers to expose app data through a content URI.
Implementing Load Balancing in COM+ ApplicationsArun Seetharaman
COM+ is an evolution of Microsoft Component Object Model (COM) and Microsoft Transaction Server (MTS). COM+ builds on and extends applications written using COM, MTS, and other COM-based technologies.
Advanced Windows DNA Scripting with Visual InterDevArun Seetharaman
"Windows Distributed interNet Applications Architecture" (DNA) was Microsoft's approach to building applications that could leverage both the Windows platform and the internet
DHTML, or Dynamic HTML, is a combination of HTML, cascading style sheets (CSS), and JavaScript used to create dynamic and interactive web pages. With DHTML, you can make web page elements change without needing a full page reload, enhancing the user's experience.
DHTML, or Dynamic HTML, is a combination of HTML, cascading style sheets (CSS), and JavaScript used to create dynamic and interactive web pages. With DHTML, you can make web page elements change without needing a full page reload, enhancing the user's experience.
COM Events for Late-bound Delivery of InformationArun Seetharaman
COM+ is an evolution of Microsoft Component Object Model (COM) and Microsoft Transaction Server (MTS). COM+ builds on and extends applications written using COM, MTS, and other COM-based technologies.
Windows NT internals refer to the inner workings of the Windows NT operating system. It includes the system architecture, critical data, and how the system is organized.
Windows NT internals refer to the inner workings of the Windows NT operating system. It includes the system architecture, critical data, and how the system is organized.
Windows NT internals refer to the inner workings of the Windows NT operating system. It includes the system architecture, critical data, and how the system is organized.
Windows NT internals refer to the inner workings of the Windows NT operating system. It includes the system architecture, critical data, and how the system is organized.
Windows NT internals refer to the inner workings of the Windows NT operating system. It includes the system architecture, critical data, and how the system is organized.
OLE DB Provider Development - Encapsulating a Service ProviderArun Seetharaman
"OLE DB provider development" refers to the process of creating a software component, called an OLE DB provider, which enables applications to access data from a specific data source by implementing the OLE DB standard interfaces
OLE DB 2.0 Architecture - Supporting Remote Data ExchangeArun Seetharaman
Microsoft OLE DB stands for Object Linking and Embedding Database and provides a standardised way to represent and work with data from different sources, enabling applications to access and manipulate data in a consistent and efficient manner.
AWT Enhancements in V1.1 - Supporting Richer GUI DevelopmentArun Seetharaman
The AWT was modified in version 1.1 of the JDK to provide major quality improvements while introducing the beginnings of a richer infrastructure for larger-scale GUI development.
Java Foundation Classes - Building Portable GUIsArun Seetharaman
The Java Foundation Classes (JFC) are a comprehensive set of GUI components and services which dramatically simplify the development and deployment of commercial-quality desktop and Internet/Intranet applications.
Autonomous Resource Optimization: How AI is Solving the Overprovisioning Problem
In this session, Suresh Mathew will explore how autonomous AI is revolutionizing cloud resource management for DevOps, SRE, and Platform Engineering teams.
Traditional cloud infrastructure typically suffers from significant overprovisioning—a "better safe than sorry" approach that leads to wasted resources and inflated costs. This presentation will demonstrate how AI-powered autonomous systems are eliminating this problem through continuous, real-time optimization.
Key topics include:
Why manual and rule-based optimization approaches fall short in dynamic cloud environments
How machine learning predicts workload patterns to right-size resources before they're needed
Real-world implementation strategies that don't compromise reliability or performance
Featured case study: Learn how Palo Alto Networks implemented autonomous resource optimization to save $3.5M in cloud costs while maintaining strict performance SLAs across their global security infrastructure.
Bio:
Suresh Mathew is the CEO and Founder of Sedai, an autonomous cloud management platform. Previously, as Sr. MTS Architect at PayPal, he built an AI/ML platform that autonomously resolved performance and availability issues—executing over 2 million remediations annually and becoming the only system trusted to operate independently during peak holiday traffic.
AI Agents at Work: UiPath, Maestro & the Future of DocumentsUiPathCommunity
Do you find yourself whispering sweet nothings to OCR engines, praying they catch that one rogue VAT number? Well, it’s time to let automation do the heavy lifting – with brains and brawn.
Join us for a high-energy UiPath Community session where we crack open the vault of Document Understanding and introduce you to the future’s favorite buzzword with actual bite: Agentic AI.
This isn’t your average “drag-and-drop-and-hope-it-works” demo. We’re going deep into how intelligent automation can revolutionize the way you deal with invoices – turning chaos into clarity and PDFs into productivity. From real-world use cases to live demos, we’ll show you how to move from manually verifying line items to sipping your coffee while your digital coworkers do the grunt work:
📕 Agenda:
🤖 Bots with brains: how Agentic AI takes automation from reactive to proactive
🔍 How DU handles everything from pristine PDFs to coffee-stained scans (we’ve seen it all)
🧠 The magic of context-aware AI agents who actually know what they’re doing
💥 A live walkthrough that’s part tech, part magic trick (minus the smoke and mirrors)
🗣️ Honest lessons, best practices, and “don’t do this unless you enjoy crying” warnings from the field
So whether you’re an automation veteran or you still think “AI” stands for “Another Invoice,” this session will leave you laughing, learning, and ready to level up your invoice game.
Don’t miss your chance to see how UiPath, DU, and Agentic AI can team up to turn your invoice nightmares into automation dreams.
This session streamed live on May 07, 2025, 13:00 GMT.
Join us and check out all our past and upcoming UiPath Community sessions at:
👉 https://community.uipath.com/dublin-belfast/
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Markus Eisele
We keep hearing that “integration” is old news, with modern architectures and platforms promising frictionless connectivity. So, is enterprise integration really dead? Not exactly! In this session, we’ll talk about how AI-infused applications and tool-calling agents are redefining the concept of integration, especially when combined with the power of Apache Camel.
We will discuss the the role of enterprise integration in an era where Large Language Models (LLMs) and agent-driven automation can interpret business needs, handle routing, and invoke Camel endpoints with minimal developer intervention. You will see how these AI-enabled systems help weave business data, applications, and services together giving us flexibility and freeing us from hardcoding boilerplate of integration flows.
You’ll walk away with:
An updated perspective on the future of “integration” in a world driven by AI, LLMs, and intelligent agents.
Real-world examples of how tool-calling functionality can transform Camel routes into dynamic, adaptive workflows.
Code examples how to merge AI capabilities with Apache Camel to deliver flexible, event-driven architectures at scale.
Roadmap strategies for integrating LLM-powered agents into your enterprise, orchestrating services that previously demanded complex, rigid solutions.
Join us to see why rumours of integration’s relevancy have been greatly exaggerated—and see first hand how Camel, powered by AI, is quietly reinventing how we connect the enterprise.
Everything You Need to Know About Agentforce? (Put AI Agents to Work)Cyntexa
At Dreamforce this year, Agentforce stole the spotlight—over 10,000 AI agents were spun up in just three days. But what exactly is Agentforce, and how can your business harness its power? In this on‑demand webinar, Shrey and Vishwajeet Srivastava pull back the curtain on Salesforce’s newest AI agent platform, showing you step‑by‑step how to design, deploy, and manage intelligent agents that automate complex workflows across sales, service, HR, and more.
Gone are the days of one‑size‑fits‑all chatbots. Agentforce gives you a no‑code Agent Builder, a robust Atlas reasoning engine, and an enterprise‑grade trust layer—so you can create AI assistants customized to your unique processes in minutes, not months. Whether you need an agent to triage support tickets, generate quotes, or orchestrate multi‑step approvals, this session arms you with the best practices and insider tips to get started fast.
What You’ll Learn
Agentforce Fundamentals
Agent Builder: Drag‑and‑drop canvas for designing agent conversations and actions.
Atlas Reasoning: How the AI brain ingests data, makes decisions, and calls external systems.
Trust Layer: Security, compliance, and audit trails built into every agent.
Agentforce vs. Copilot
Understand the differences: Copilot as an assistant embedded in apps; Agentforce as fully autonomous, customizable agents.
When to choose Agentforce for end‑to‑end process automation.
Industry Use Cases
Sales Ops: Auto‑generate proposals, update CRM records, and notify reps in real time.
Customer Service: Intelligent ticket routing, SLA monitoring, and automated resolution suggestions.
HR & IT: Employee onboarding bots, policy lookup agents, and automated ticket escalations.
Key Features & Capabilities
Pre‑built templates vs. custom agent workflows
Multi‑modal inputs: text, voice, and structured forms
Analytics dashboard for monitoring agent performance and ROI
Myth‑Busting
“AI agents require coding expertise”—debunked with live no‑code demos.
“Security risks are too high”—see how the Trust Layer enforces data governance.
Live Demo
Watch Shrey and Vishwajeet build an Agentforce bot that handles low‑stock alerts: it monitors inventory, creates purchase orders, and notifies procurement—all inside Salesforce.
Peek at upcoming Agentforce features and roadmap highlights.
Missed the live event? Stream the recording now or download the deck to access hands‑on tutorials, configuration checklists, and deployment templates.
🔗 Watch & Download: https://www.youtube.com/live/0HiEmUKT0wY
Smart Investments Leveraging Agentic AI for Real Estate Success.pptxSeasia Infotech
Unlock real estate success with smart investments leveraging agentic AI. This presentation explores how Agentic AI drives smarter decisions, automates tasks, increases lead conversion, and enhances client retention empowering success in a fast-evolving market.
Introduction to AI
History and evolution
Types of AI (Narrow, General, Super AI)
AI in smartphones
AI in healthcare
AI in transportation (self-driving cars)
AI in personal assistants (Alexa, Siri)
AI in finance and fraud detection
Challenges and ethical concerns
Future scope
Conclusion
References
fennec fox optimization algorithm for optimal solutionshallal2
Imagine you have a group of fennec foxes searching for the best spot to find food (the optimal solution to a problem). Each fox represents a possible solution and carries a unique "strategy" (set of parameters) to find food. These strategies are organized in a table (matrix X), where each row is a fox, and each column is a parameter they adjust, like digging depth or speed.
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025João Esperancinha
This is an updated version of the original presentation I did at the LJC in 2024 at the Couchbase offices. This version, tailored for DevoxxUK 2025, explores all of what the original one did, with some extras. How do Virtual Threads can potentially affect the development of resilient services? If you are implementing services in the JVM, odds are that you are using the Spring Framework. As the development of possibilities for the JVM continues, Spring is constantly evolving with it. This presentation was created to spark that discussion and makes us reflect about out available options so that we can do our best to make the best decisions going forward. As an extra, this presentation talks about connecting to databases with JPA or JDBC, what exactly plays in when working with Java Virtual Threads and where they are still limited, what happens with reactive services when using WebFlux alone or in combination with Java Virtual Threads and finally a quick run through Thread Pinning and why it might be irrelevant for the JDK24.
RTP Over QUIC: An Interesting Opportunity Or Wasted Time?Lorenzo Miniero
Slides for my "RTP Over QUIC: An Interesting Opportunity Or Wasted Time?" presentation at the Kamailio World 2025 event.
They describe my efforts studying and prototyping QUIC and RTP Over QUIC (RoQ) in a new library called imquic, and some observations on what RoQ could be used for in the future, if anything.
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPathCommunity
Nous vous convions à une nouvelle séance de la communauté UiPath en Suisse romande.
Cette séance sera consacrée à un retour d'expérience de la part d'une organisation non gouvernementale basée à Genève. L'équipe en charge de la plateforme UiPath pour cette NGO nous présentera la variété des automatisations mis en oeuvre au fil des années : de la gestion des donations au support des équipes sur les terrains d'opération.
Au délà des cas d'usage, cette session sera aussi l'opportunité de découvrir comment cette organisation a déployé UiPath Automation Suite et Document Understanding.
Cette session a été diffusée en direct le 7 mai 2025 à 13h00 (CET).
Découvrez toutes nos sessions passées et à venir de la communauté UiPath à l’adresse suivante : https://community.uipath.com/geneva/.
Build with AI events are communityled, handson activities hosted by Google Developer Groups and Google Developer Groups on Campus across the world from February 1 to July 31 2025. These events aim to help developers acquire and apply Generative AI skills to build and integrate applications using the latest Google AI technologies, including AI Studio, the Gemini and Gemma family of models, and Vertex AI. This particular event series includes Thematic Hands on Workshop: Guided learning on specific AI tools or topics as well as a prequel to the Hackathon to foster innovation using Google AI tools.
Dark Dynamism: drones, dark factories and deurbanizationJakub Šimek
Startup villages are the next frontier on the road to network states. This book aims to serve as a practical guide to bootstrap a desired future that is both definite and optimistic, to quote Peter Thiel’s framework.
Dark Dynamism is my second book, a kind of sequel to Bespoke Balajisms I published on Kindle in 2024. The first book was about 90 ideas of Balaji Srinivasan and 10 of my own concepts, I built on top of his thinking.
In Dark Dynamism, I focus on my ideas I played with over the last 8 years, inspired by Balaji Srinivasan, Alexander Bard and many people from the Game B and IDW scenes.
Slack like a pro: strategies for 10x engineering teamsNacho Cougil
You know Slack, right? It's that tool that some of us have known for the amount of "noise" it generates per second (and that many of us mute as soon as we install it 😅).
But, do you really know it? Do you know how to use it to get the most out of it? Are you sure 🤔? Are you tired of the amount of messages you have to reply to? Are you worried about the hundred conversations you have open? Or are you unaware of changes in projects relevant to your team? Would you like to automate tasks but don't know how to do so?
In this session, I'll try to share how using Slack can help you to be more productive, not only for you but for your colleagues and how that can help you to be much more efficient... and live more relaxed 😉.
If you thought that our work was based (only) on writing code, ... I'm sorry to tell you, but the truth is that it's not 😅. What's more, in the fast-paced world we live in, where so many things change at an accelerated speed, communication is key, and if you use Slack, you should learn to make the most of it.
---
Presentation shared at JCON Europe '25
Feedback form:
http://tiny.cc/slack-like-a-pro-feedback
Viam product demo_ Deploying and scaling AI with hardware.pdfcamilalamoratta
Building AI-powered products that interact with the physical world often means navigating complex integration challenges, especially on resource-constrained devices.
You'll learn:
- How Viam's platform bridges the gap between AI, data, and physical devices
- A step-by-step walkthrough of computer vision running at the edge
- Practical approaches to common integration hurdles
- How teams are scaling hardware + software solutions together
Whether you're a developer, engineering manager, or product builder, this demo will show you a faster path to creating intelligent machines and systems.
Resources:
- Documentation: https://on.viam.com/docs
- Community: https://discord.com/invite/viam
- Hands-on: https://on.viam.com/codelabs
- Future Events: https://on.viam.com/updates-upcoming-events
- Request personalized demo: https://on.viam.com/request-demo
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
2. TOPIC OBJECTIVES
• Understand some useful data structures in the java.util
package
• The Observer-Observable pattern
• Java Collection Framework
• Iterators
3. DATA STRUCTURES
• Well designed java.util package
• A bunch of dynamic data structures
• You do not have to write linked lists and hash tables
• Could be building blocks for more complicated data
structures
4. THE “VECTOR” CLASS
• A very generic structure for storing and retrieving
objects
• A very simple structure to use
• Tries to optimize storage, resulting in some extra
capacity at times
• Removal of elements closes the holes created
5. VECTOR OPERATIONS
public void addElement(Object);
public void clear();
public Object elementAt(int);
public void insertElementAt(
Object, int);
public void removeElementAt(int);
public void setElementAt(
Object, int);
public int size();
6. THE “HASHTABLE” CLASS
• Useful for searchable data structures
• Stores key-value pairs
• Key-based search mechanism
• Better than Vector for large amount of data that need
to be searched
public Object get(Object);
public Object put(Object,Object);
protected void rehash();
7. CALENDARS
• Date: mostly deprecated as of JDK1.1
• Calendar: Convert Date objects to fields
• GregorianCalendar: Important class that cater to the
differences between Julian date and Gregorian date.
Also understands timezones
• TimeZone: represents any timezone with the GMT offset
8. THE BITSET CLASS
• Represents a collection of bits
• Grows dynamically as bits are required
• Bits accessed using 0-based index
• public void and(BitSet);
• public void andNot(BitSet);
• public void or(BitSet);
• public void xor(BitSet);
9. OBSERVER-OBSERVABLE
PATTERN
• Update multiple objects from a common source of
data
• Displaying data in multiple formats like charts,
worksheet is a common example
• More often implemented using the MVC design pattern
10. THE “OBSERVABLE”
CLASS
• Represents the data source
• Can have one or more observers
void addObserver(Observer);
void deletebserver(Observer);
void notifyObservers(Object);
void setChanged();
boolean hasChanged();
void clearChanged();
11. AN OBSERVABLE ENTITY
class MsgObservable extends Observable
implements Runnable {
public void run() {
while(true) {
msg = waitForMsg();
setChanged();
notifyObservers(msg);
}
}
}
12. THE “OBSERVER”
INTERFACE
• Implemented when changes in an “Observable”
object need to be informed
• update is invoked, when the Observable object calls
the notifyObservers method
class LogServer implements Observer {
public void update(Observable obs,
Object obj) {
logTheMsg(obj);
}
}
13. WHAT IS A COLLECTION
FRAMEWORK?
• Unified Architecture
• Interfaces : implementation-independence
• Implementations : reusable data structures
• Algorithms : reusable functionality
• Best-known examples
• C++ Standard Template Library (STL)
• Smalltalk
18. COLLECTION EXAMPLE
public static boolean removeNulls(
Collection c) {
boolean modified = false;
for (Iterator i=c.iterator();i.hasNext();){
if (i.next()==null) {
i.remove();
modified = true;
}
}
return modified;
}
19. SET INTERFACE
• Adds no methods to Collection!
• Adds stipulation: no duplicate elements
• Mandates equals and hashCode calculation
public interface Set
extends Collection {
}
20. SET IDIOMS
Set s1, s2;
boolean subset = s1.containsAll(s2);
Set union = new HashSet(s1).addAll(s2);
Set intersection = new
HashSet(s1).retainAll(s2);
Set difference = new
HashSet(s1).removeAll(s2);
21. LIST INTERFACE
• A sequence of objects
public interface List
extends Collection {
Object get(int);
int lastIndexOf(Object);
int lastIndexOf(Object, int);
ListIterator listIterator(int);
…
}
22. LIST EXAMPLE
• Reusable algorithms to swap elements and randomize
public static void swap(List a,
int i, int j) {
Object tmp = a.get(i);
a.set(i, a.get(j));
a.set(j, tmp);
}
public static void randomize(List a) {
for (int i=a.size(); i>1; i--)
swap(a, i-1,
(r.nextInt() &~ (1<<31)) % i);
}
23. MAP INTERFACE
• A key-value mapping
public interface Map {
int size();
boolean isEmpty();
boolean containsKey(Object key);
boolean containsValue(Object value);
Object get(Object key);
public Set keySet();
public Collection values();
public Set entries();
}
24. MAP IDIOMS
Map m;
for (iterator i=m.keySet().iterator();
i.hasNext(); )
System.out.println(i.next());
Map a, b;
boolean isSubMap =
a.entries().containsAll(b.entries());
Set commonKeys = new
HashSet(a.keySet()).retainAll(b.keySet);
26. COLLECTIONS
• Exclusively static methods
• Contains polymorphic algorithms
• Work on collections
• Implementers can substitute algorithms
27. SYNCHRONIZATION
WRAPPERS
• Anonymous implementations, one per core interface
• Static factories take collection of appropriate type
• Thread-safety assured if all access via wrapper
• Iteration must be synchronized manually
28. SYNCHRONIZATION
WRAPPER EXAMPLE
Set s = Collections.synchronizedSet(
newHashSet());
...s.add("wombat");
// Thread-safe ...
synchronized(s) {
Iterator i = s.iterator(); // In synch block!
while (i.hasNext())
System.out.println(i.next());
}
34. COMPARABLE AND
COMPARATOR
• Comparable: uses the natural ordering for that object
type
• int compareTo(Object);
• Comparator: can define custom ordering for object
• int compare(Object, Object);
• boolean equals(Object);
35. ALGORITHMS:
SEARCHING
• Works on sorted lists
• Uses the binary search algorithm
• int binarySearch(List, Object);
• int binarySearch(List, Object, Comparator);
36. ALGORITHMS: SHUFFLING
• Force randomness in the Collection
• A random object defines the randomness for the shuffle
operation
• void shuffle(List);
• void shuffle(List, Random);
39. TOPIC SUMMARY
• The java.util package has a good collection of data
structures
• Classes to support the Observer-Observable pattern
• Collection framework for improved data structures
• Many reusable algorithms implemented