This document provides steps for developing an Android app to access files stored on a FlashAir wireless storage device. It describes how to set up an Android project, access the FlashAir over WiFi, display a list of files with thumbnails, and download images. Key steps include using the FlashAir API to get file metadata and thumbnails, displaying files in a ListView, adding the Volley library to load network images, and using DownloadManager to download files to the device.
This document discusses building Windows applications using tree view and file compare controls to copy and delete files between directories. It also discusses building a web application in ASP.NET and accessing data using ADO.NET. Key aspects covered include filling a tree view with directories and files, getting checked files, comparing files, and handling copy and delete button clicks by getting file lists and performing the operations. Building a web form and adding a data source to select from a database table are also summarized.
Kurt Harriger documents his process of creating a Clojure web application called Twitturl to search Twitter. He initializes the project using Leiningen, sets up dependencies like Ring and hiccup, defines functions for searching Twitter and formatting the results, and implements a handler to return the search results. He runs the application using the Ring server and packages it as a WAR file to deploy on services like Amazon Elastic Beanstalk. The document highlights features of Clojure like S-expressions, destructuring, and chaining that make the code more concise compared to Java.
An introduction to Go from basics to web through the lens of "Hello World", extracted from the Book "A Go Developer's Notebook" available from http://leanpub.com/GoNotebook
Мы поговорим о новых возможностях Open Source фреймворка JDI для Автоматизации UI Тестирования. Архитектор проекта расскажет «всю правду» о своем детище, а мы послушаем, сделаем выводы и, возможно, используем это решение для нашего следующего проекта.
The document contains code for 9 Java programming practical assignments. The first practical accepts coefficients for a quadratic equation, calculates the roots and outputs the results. The second accepts two matrices as input and calculates their addition. The third sorts an array of strings in ascending order. The fourth creates an Animal interface and classes that implement it to demonstrate polymorphism. The remaining practicals demonstrate inheritance, exceptions, GUI programming using Swing components, and the List interface.
Going Loopy: Adventures in Iteration with GoEleanor McHugh
The document describes iterations and loops in Go using for loops and the range keyword. It discusses iterating over slices, using closures to iterate, and asserting types. Code examples are provided to demonstrate iterating over a slice of integers using a for loop with len() and indexing, using range to iterate, passing functions as arguments to iterate generically, and ensuring the type is correct when the argument is an interface.
Go for the paranoid network programmer, 3rd editionEleanor McHugh
Draft third edition of my #golang network programming and cryptography talk given to the Belfast Gophers Meetup. Now with an introduction to websockets.
This document discusses building Windows applications using tree view and file compare controls to copy and delete files between directories. It also discusses building a web application in ASP.NET and accessing data using ADO.NET. Key aspects covered include filling a tree view with directories and files, getting checked files, comparing files, and handling copy and delete button clicks by getting file lists and performing the operations. Building a web form and adding a data source to select from a database table are also summarized.
Kurt Harriger documents his process of creating a Clojure web application called Twitturl to search Twitter. He initializes the project using Leiningen, sets up dependencies like Ring and hiccup, defines functions for searching Twitter and formatting the results, and implements a handler to return the search results. He runs the application using the Ring server and packages it as a WAR file to deploy on services like Amazon Elastic Beanstalk. The document highlights features of Clojure like S-expressions, destructuring, and chaining that make the code more concise compared to Java.
An introduction to Go from basics to web through the lens of "Hello World", extracted from the Book "A Go Developer's Notebook" available from http://leanpub.com/GoNotebook
Мы поговорим о новых возможностях Open Source фреймворка JDI для Автоматизации UI Тестирования. Архитектор проекта расскажет «всю правду» о своем детище, а мы послушаем, сделаем выводы и, возможно, используем это решение для нашего следующего проекта.
The document contains code for 9 Java programming practical assignments. The first practical accepts coefficients for a quadratic equation, calculates the roots and outputs the results. The second accepts two matrices as input and calculates their addition. The third sorts an array of strings in ascending order. The fourth creates an Animal interface and classes that implement it to demonstrate polymorphism. The remaining practicals demonstrate inheritance, exceptions, GUI programming using Swing components, and the List interface.
Going Loopy: Adventures in Iteration with GoEleanor McHugh
The document describes iterations and loops in Go using for loops and the range keyword. It discusses iterating over slices, using closures to iterate, and asserting types. Code examples are provided to demonstrate iterating over a slice of integers using a for loop with len() and indexing, using range to iterate, passing functions as arguments to iterate generically, and ensuring the type is correct when the argument is an interface.
Go for the paranoid network programmer, 3rd editionEleanor McHugh
Draft third edition of my #golang network programming and cryptography talk given to the Belfast Gophers Meetup. Now with an introduction to websockets.
This document provides an overview of the Ontopia topic maps software project. It discusses the history and architecture of the project. The core consists of an engine that provides an API for working with topic maps and supports various backends for storage such as in-memory, RDBMS, and remote. Other modules include tools for importing, navigating, classifying text, visualizing, and editing topic maps. The query language tolog is introduced as the recommended way to interact with topic map data. Common APIs, persistence options, and the event system are summarized.
The Browser Environment - A Systems Programmer's PerspectiveEleanor McHugh
The document discusses asynchronous JavaScript and XML (AJAX) techniques for making asynchronous HTTP requests from the browser. It provides code examples using XMLHttpRequest and the newer Fetch API to make requests to server-side handlers written in Go. The code sets up a simple page that displays buttons for different asynchronous actions, and uses JavaScript functions to make requests on button click, printing the responses to a log on the page. This demonstrates asynchronous interactivity between the browser and server.
The document discusses Python decorators and namespaces. It begins by asking if the reader understands what happens when a function or class is decorated using the @ symbol. It then explains that it will look at how decorators work under the hood and discuss Python namespaces and scopes. It provides examples of recursive functions and how namespaces allow the same name to be used in different contexts without conflict.
The document summarizes improvements that could be made to a BeatBox program. It suggests:
1) Adding a dialog to ask the user if they want to save the current pattern before loading a new one from another user.
2) Adding error handling for when a command line argument is not passed to specify the user name, either using a default or prompting the user to rerun the program with an argument.
3) Adding features to randomly generate patterns or load preset foundation patterns that the user can build on, like jazz, rock, or reggae patterns.
The Ring programming language version 1.5.4 book - Part 79 of 185Mahmoud Samir Fayed
The document discusses the Trace library in Ring for debugging programs. It provides examples of using the Trace library to trace all events, control flow between functions, handle errors, use an interactive debugger, execute line by line, set breakpoints, disable breakpoints, and use the interactive debugger at breakpoints. The Trace library allows tracing programs, passing errors, debugging interactively by setting and handling breakpoints.
The document contains code examples demonstrating various Scala programming concepts such as functions, pattern matching, traits, actors and more. It also includes links to online resources for learning Scala.
This document provides information about AIWolfPy, a Python library for creating agents for the AIWolf game. It includes 3 chapters:
1. An overview of AIWolfPy and how it allows Python agents to connect to the AIWolf server and parse game information using JSON and Pandas DataFrames.
2. A description of how agents can use the library to access base game information, parse difference data updates, and determine their role and phase to respond appropriately each turn.
3. Details on how to set up a simple sample Python agent using the library, package it, and run it connected to an AIWolf server.
Conférence des Geeks Anonymes sur " le langage Go ", par Thomas Hayen le 23 septembre 2020.
Cette conférence est disponible en vidéo sur Youtube : https://youtu.be/AlGGneVGTJk
This document provides an overview of Language Integrated Query (LINQ) in 3 main sections. It begins with an introduction and basics of LINQ, including the var keyword, extension methods, and lambda expressions. The second section covers LINQ to XML, showing how to query and manipulate XML documents and elements. The third section discusses LINQ to SQL for querying databases. Examples are provided throughout to demonstrate LINQ concepts and methods.
A Skeptics guide to functional style javascriptjonathanfmills
The document discusses functional programming concepts like pure functions, higher order functions, currying, and monads and how they can be applied in JavaScript. It provides examples of transforming iterative array methods like map, filter, and reduce into functional style code using pure functions. While functional programming aims to avoid side effects, the document notes that side effects cannot be fully avoided in JavaScript and functional style is more of a mindset of keeping pieces small and interactions simple.
The document contains code snippets related to data structures and pointers in C programming. It includes examples of using pointers to access array elements, dynamically allocating memory using functions like malloc(), calloc(), and realloc(). It also demonstrates writing and reading data from binary files using pointers, structs, and file I/O functions. Additional examples include concatenating files, counting words and characters in a file, and implementing employee records using file operations.
This document discusses Java collections frameworks. It covers core collection interfaces like List, Set, Queue and Map. It also discusses concrete collection classes that implement these interfaces like ArrayList, LinkedList, HashSet, TreeSet, HashMap and TreeMap. The document further explains concepts like iterators, generics in collections and differences between collections before and after generics.
The document discusses sample code for creating a Chat class with message, dateCreated, and lastUpdated properties in Groovy. It also defines a ChatController that uses scaffolding to automatically generate CRUD operations for the Chat class.
JavaFX is a software platform for creating and delivering desktop applications, as well as rich internet applications (RIAs) that can run across a wide variety of devices. Some key aspects of the JavaFX platform include its base classes like Application, Scene and Stage; the use of FXML for building the user interface with CSS styling and JavaScript capabilities; JavaFX properties and bindings for observing value changes; and support for animation. The JavaFX architecture provides objects, APIs and utilities to help developers create visually-engaging and responsive user experiences.
This document discusses Python and web frameworks. It begins with an introduction to Python and its advantages for web development. It then discusses several popular Python web frameworks including web.py, Flask, and Django. It also covers related topics like WSGI, templating with Jinja2, asynchronous programming, and deployment with virtualenv.
Legacy applications - 4Developes konferencja, Piotr PasichPiotr Pasich
This document discusses strategies for integrating legacy applications into the Symfony framework. It describes using bundles to namespace the legacy code, autoloading to include the legacy files, and controllers to proxy requests to the legacy application. It also covers testing legacy functionality, using ESI and Varnish for caching parts of pages, and mapping legacy database tables to Doctrine entities. The goal is to modernize the application over time by rewriting specific functionality into Symfony while keeping the legacy system running.
This document provides an introduction to JavaFX 2. It discusses the history of desktop applications in Java, including AWT, Swing, and issues with the old approaches. It then summarizes the announcement and initial challenges of JavaFX 1. It outlines the core concepts of JavaFX 2, including the architecture with Application, Scene, Stage, and FXML. It also briefly discusses controllers, properties, bindings, collections, charts, animation, effects, media, and tools like SceneBuilder and Scenic View.
This document discusses different approaches to implementing aspectual components in Java. It summarizes Johan's solution based on Mira's inner class approach, but represents the modification interface with an abstract class rather than a method argument. It then discusses how Mira's more complex implementation handles multiple modified methods on a single host with different expected operations for each participant. Finally, it summarizes Mira's modified inner class solution using reflection to map a modification method to the expected operation.
The document discusses several common Java anti-patterns, including:
1) Approving a task by rejecting it in a method called "approve".
2) Avoiding the use of helper libraries to simplify tasks like file name parsing.
3) Using reflection when direct method calls would suffice.
Browser extensions allow additional features to be added to browsers through code added via extension APIs, as extensions have evolved from plugins and addons used in early browsers like Firefox and now provide powerful yet easy-to-use ways to customize Chrome, Firefox, and other modern browsers while leveraging web technologies like HTML, CSS, and JavaScript. Extensions are commonly used to integrate services, implement new specs, and add customized features to browsers, though developers must take care not to overuse extensions in ways that abuse their capabilities.
This document provides an overview of the Ontopia topic maps software project. It discusses the history and architecture of the project. The core consists of an engine that provides an API for working with topic maps and supports various backends for storage such as in-memory, RDBMS, and remote. Other modules include tools for importing, navigating, classifying text, visualizing, and editing topic maps. The query language tolog is introduced as the recommended way to interact with topic map data. Common APIs, persistence options, and the event system are summarized.
The Browser Environment - A Systems Programmer's PerspectiveEleanor McHugh
The document discusses asynchronous JavaScript and XML (AJAX) techniques for making asynchronous HTTP requests from the browser. It provides code examples using XMLHttpRequest and the newer Fetch API to make requests to server-side handlers written in Go. The code sets up a simple page that displays buttons for different asynchronous actions, and uses JavaScript functions to make requests on button click, printing the responses to a log on the page. This demonstrates asynchronous interactivity between the browser and server.
The document discusses Python decorators and namespaces. It begins by asking if the reader understands what happens when a function or class is decorated using the @ symbol. It then explains that it will look at how decorators work under the hood and discuss Python namespaces and scopes. It provides examples of recursive functions and how namespaces allow the same name to be used in different contexts without conflict.
The document summarizes improvements that could be made to a BeatBox program. It suggests:
1) Adding a dialog to ask the user if they want to save the current pattern before loading a new one from another user.
2) Adding error handling for when a command line argument is not passed to specify the user name, either using a default or prompting the user to rerun the program with an argument.
3) Adding features to randomly generate patterns or load preset foundation patterns that the user can build on, like jazz, rock, or reggae patterns.
The Ring programming language version 1.5.4 book - Part 79 of 185Mahmoud Samir Fayed
The document discusses the Trace library in Ring for debugging programs. It provides examples of using the Trace library to trace all events, control flow between functions, handle errors, use an interactive debugger, execute line by line, set breakpoints, disable breakpoints, and use the interactive debugger at breakpoints. The Trace library allows tracing programs, passing errors, debugging interactively by setting and handling breakpoints.
The document contains code examples demonstrating various Scala programming concepts such as functions, pattern matching, traits, actors and more. It also includes links to online resources for learning Scala.
This document provides information about AIWolfPy, a Python library for creating agents for the AIWolf game. It includes 3 chapters:
1. An overview of AIWolfPy and how it allows Python agents to connect to the AIWolf server and parse game information using JSON and Pandas DataFrames.
2. A description of how agents can use the library to access base game information, parse difference data updates, and determine their role and phase to respond appropriately each turn.
3. Details on how to set up a simple sample Python agent using the library, package it, and run it connected to an AIWolf server.
Conférence des Geeks Anonymes sur " le langage Go ", par Thomas Hayen le 23 septembre 2020.
Cette conférence est disponible en vidéo sur Youtube : https://youtu.be/AlGGneVGTJk
This document provides an overview of Language Integrated Query (LINQ) in 3 main sections. It begins with an introduction and basics of LINQ, including the var keyword, extension methods, and lambda expressions. The second section covers LINQ to XML, showing how to query and manipulate XML documents and elements. The third section discusses LINQ to SQL for querying databases. Examples are provided throughout to demonstrate LINQ concepts and methods.
A Skeptics guide to functional style javascriptjonathanfmills
The document discusses functional programming concepts like pure functions, higher order functions, currying, and monads and how they can be applied in JavaScript. It provides examples of transforming iterative array methods like map, filter, and reduce into functional style code using pure functions. While functional programming aims to avoid side effects, the document notes that side effects cannot be fully avoided in JavaScript and functional style is more of a mindset of keeping pieces small and interactions simple.
The document contains code snippets related to data structures and pointers in C programming. It includes examples of using pointers to access array elements, dynamically allocating memory using functions like malloc(), calloc(), and realloc(). It also demonstrates writing and reading data from binary files using pointers, structs, and file I/O functions. Additional examples include concatenating files, counting words and characters in a file, and implementing employee records using file operations.
This document discusses Java collections frameworks. It covers core collection interfaces like List, Set, Queue and Map. It also discusses concrete collection classes that implement these interfaces like ArrayList, LinkedList, HashSet, TreeSet, HashMap and TreeMap. The document further explains concepts like iterators, generics in collections and differences between collections before and after generics.
The document discusses sample code for creating a Chat class with message, dateCreated, and lastUpdated properties in Groovy. It also defines a ChatController that uses scaffolding to automatically generate CRUD operations for the Chat class.
JavaFX is a software platform for creating and delivering desktop applications, as well as rich internet applications (RIAs) that can run across a wide variety of devices. Some key aspects of the JavaFX platform include its base classes like Application, Scene and Stage; the use of FXML for building the user interface with CSS styling and JavaScript capabilities; JavaFX properties and bindings for observing value changes; and support for animation. The JavaFX architecture provides objects, APIs and utilities to help developers create visually-engaging and responsive user experiences.
This document discusses Python and web frameworks. It begins with an introduction to Python and its advantages for web development. It then discusses several popular Python web frameworks including web.py, Flask, and Django. It also covers related topics like WSGI, templating with Jinja2, asynchronous programming, and deployment with virtualenv.
Legacy applications - 4Developes konferencja, Piotr PasichPiotr Pasich
This document discusses strategies for integrating legacy applications into the Symfony framework. It describes using bundles to namespace the legacy code, autoloading to include the legacy files, and controllers to proxy requests to the legacy application. It also covers testing legacy functionality, using ESI and Varnish for caching parts of pages, and mapping legacy database tables to Doctrine entities. The goal is to modernize the application over time by rewriting specific functionality into Symfony while keeping the legacy system running.
This document provides an introduction to JavaFX 2. It discusses the history of desktop applications in Java, including AWT, Swing, and issues with the old approaches. It then summarizes the announcement and initial challenges of JavaFX 1. It outlines the core concepts of JavaFX 2, including the architecture with Application, Scene, Stage, and FXML. It also briefly discusses controllers, properties, bindings, collections, charts, animation, effects, media, and tools like SceneBuilder and Scenic View.
This document discusses different approaches to implementing aspectual components in Java. It summarizes Johan's solution based on Mira's inner class approach, but represents the modification interface with an abstract class rather than a method argument. It then discusses how Mira's more complex implementation handles multiple modified methods on a single host with different expected operations for each participant. Finally, it summarizes Mira's modified inner class solution using reflection to map a modification method to the expected operation.
The document discusses several common Java anti-patterns, including:
1) Approving a task by rejecting it in a method called "approve".
2) Avoiding the use of helper libraries to simplify tasks like file name parsing.
3) Using reflection when direct method calls would suffice.
Browser extensions allow additional features to be added to browsers through code added via extension APIs, as extensions have evolved from plugins and addons used in early browsers like Firefox and now provide powerful yet easy-to-use ways to customize Chrome, Firefox, and other modern browsers while leveraging web technologies like HTML, CSS, and JavaScript. Extensions are commonly used to integrate services, implement new specs, and add customized features to browsers, though developers must take care not to overuse extensions in ways that abuse their capabilities.
Active Software Documentation using Soul and IntensiVEkim.mens
The document discusses using logic metaprogramming for active software documentation, specifically using Soul and IntensiVE. It was created on March 30, 2009 by Johan Brichau, Kim Mens, Coen De Roover, Andy Kellens, and Roel Wuyts from the Computer Science Department of the Catholic University of Louvain. The document provides an introduction to documenting software using logic metaprogramming techniques.
This document discusses .NET garbage collection and provides examples to demonstrate how it works. It explains how the garbage collector manages memory on the managed heap, including generations and optimizations. It also demonstrates potential memory leaks and how to avoid them through proper cleanup of managed and unmanaged resources. Sample code is provided to show how to optimize performance by using the 'using' statement to dispose of objects automatically.
This document discusses various techniques for working with multimedia in Android applications, including detecting device capabilities, loading images from local storage and remote URLs, playing audio files from assets and raw resources, and improving performance through caching and asynchronous loading. It provides code examples for checking if a device has a front-facing camera, loading images while avoiding out of memory errors, playing audio files from assets, and using an AsyncTask to load images asynchronously to avoid blocking the UI. It also discusses potential memory leak issues and strategies for building an image cache.
The Ring programming language version 1.8 book - Part 31 of 202Mahmoud Samir Fayed
The document describes various functions for working with files, streams, and the operating system in Ring including: Perror(), Fgetc(), Fgets(), Fputc(), Fputs(), Ungetc(), Fread(), Fwrite(), Fexists(), System(), SysGet(), functions to check the operating system like IsWindows(), and functions to get file/path information like ExeFileName(). It provides syntax and examples of using each function.
The document provides examples of code snippets in C# to demonstrate various OOP concepts like inheritance, polymorphism, delegates, constructors, exception handling, file I/O, and adding a flash item to a website. It also explains XML and DTDs. The code snippets show how to implement inheritance by defining a base Shape class and derived Rectangle class, implement polymorphism by overloading a print method, use delegates to call methods, define default and parameterized constructors, handle exceptions, perform file read/write operations, and add a flash file to an HTML document. The explanation of XML covers internal and external DTD declarations to define document structure.
Ingesting and Manipulating Data with JavaScriptLucidworks
Data in the wild isn’t always in the right format we need for search or even mere usability. Lucidworks Fusion offers powerful pipelines, parsers, and stages to wrangle your data into the right format to make it more findable and friendly. However, there are some cases where more obscure data will require the power of scripting.
Your data may need a complex transformation, a custom decryption algorithm, or you may already have existing code for handling a piece of data. Even in these more complex cases, Fusion’s JavaScript capabilities have got you covered.
The document discusses Dart, a new programming language developed by Google. It summarizes that Dart is a structured language for web programming with new tools, libraries, and features like isolates for concurrency without shared memory, optional static typing, and futures for asynchronous programming. It provides examples of how isolates, mirrors, and data binding work in Dart.
2008 - TechDays PT: WCF, JSON and AJAX for performance and manageabilityDaniel Fisher
The document profiles two software architects and CTOs at devocach, Daniel Fisher and Michael Willers. It lists their extensive experience in areas like development, architecture, consulting, and community events. It also outlines some of devocach's expertise, including service orientation, agile methods, web and data access, and security. The document emphasizes that devocach works on real projects, not just demonstrations.
This document discusses working with files in C++. It covers opening and closing files using constructors and the open() function. It describes using input and output streams to read from and write to files. It also discusses the different file stream classes like ifstream, ofstream, and fstream and their functions. Finally, it mentions the different file opening modes that can be used with the open() function.
This document appears to be a student project submission for a post graduate diploma in information technology. It contains two questions and answers involving C programming. Question 1 involves accepting integer values from the user, sorting an array in ascending order, calculating the sum of odd values and number of even values. Question 2 involves reading from a file passed as a command line argument, displaying each word on a new line, counting vowels, occurrences of "the", and copying the file contents to a new file. The code provided implements the specified tasks for each question.
From HelloWorld to Configurable and Reusable Apache Spark Applications in Sca...Databricks
We can think of an Apache Spark application as the unit of work in complex data workflows. Building a configurable and reusable Apache Spark application comes with its own challenges, especially for developers that are just starting in the domain. Configuration, parametrization, and reusability of the application code can be challenging. Solving these will allow the developer to focus on value-adding work instead of mundane tasks such as writing a lot of configuration code, initializing the SparkSession or even kicking-off a new project.
This presentation will describe using code samples a developer’s journey from the first steps into Apache Spark all the way to a simple open-source framework that can help kick-off an Apache Spark project very easy, with a minimal amount of code. The main ideas covered in this presentation are derived from the separation of concerns principle.
The first idea is to make it even easier to code and test new Apache Spark applications by separating the application logic from the configuration logic.
The second idea is to make it easy to configure the applications, providing SparkSessions out-of-the-box, easy to set-up data readers, data writers and application parameters through configuration alone.
The third idea is that taking a new project off the ground should be very easy and straightforward. These three ideas are a good start in building reusable and production-worthy Apache Spark applications.
The resulting framework, spark-utils, is already available and ready to use as an open-source project, but even more important are the ideas and principles behind it.
In this talk I demonstrated how easy Dojo is integrating into the Adobe AIR runtime. Using a performance analysis tool I demonstrated how to use charting, grids and other features of Adobe AIR and the Dojo Toolkit
This document discusses various ways of performing file input/output operations in C++ using ifstream, ofstream, and fstream. It shows how to open files for reading and writing, write data to files including strings and objects, read data from files, and check if files were opened successfully. Examples demonstrate opening files, writing hello world and lines of text to files, reading files line by line, appending data to files, and writing/reading class objects to files by serializing object data. The document provides guidance on common file I/O tasks in C++.
The Ring programming language version 1.6 book - Part 28 of 189Mahmoud Samir Fayed
The document describes various functions for working with files, streams, and system operations in Ring including: Perror(), Fgetc(), Fgets(), Fputc(), Fputs(), Ungetc(), Fread(), Fwrite(), Fexists(), Int2Bytes(), Float2Bytes(), Double2Bytes(), Bytes2Int(), Bytes2Float(), Bytes2Double(), System(), SysGet(), IsMSDOS(), IsWindows(), IsWindows64(), IsUnix(), IsMacOSX(), IsLinux(), IsFreeBSD(), IsAndroid(), Windowsnl(), getting command line arguments, getting the active source file name, PrevFileName(), CurrentDir(), ExeFileName(), ChDir(), ExeFolder(), and Version(). An example at
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
8. MainActivity.java
public class MainActivity extends Activity {
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int itemId = item.getItemId();
switch (itemId) {
case R.id.action_wifi_settings:
Intent intent = new Intent(Settings.ACTION_WIFI_SETTINGS);
startActivity(intent);
return true;
}
return super.onOptionsItemSelected(item);
}
9. Access the FlashAir #2
•
Since the FlashAir uses HTTP, your app will require
android.permission.INTERNET.
•
•
Default SSID: flashair_xxxxx
Default Password: 12345678
13. Access FlashAir #5
•
•
•
•
To get the number of files in a folder:
Use http://flashair/command.cgi?op=101&DIR=[path]
The number of files will be returned
See: https://www.flashairdevelopers.com/ja/documents/api/commandcgi/#101
18. FlashAirUtils.java
Get the number of files
public class FlashAirUtils {
public static final String BASE = "http://flashair/";
public static final String COMMAND = BASE + "command.cgi?";
public static final String FILE_COUNT = COMMAND + "op=101&DIR=";
public static int getFileCount(String dir) {
try {
String result = Utils.accessToFlashAir(FILE_COUNT + dir);
return Integer.parseInt(result);
} catch (NumberFormatException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return -1;
...
19. Utils.java
For HTTP Access
public class Utils {
public static String accessToFlashAir(String uri) throws IOException {
URL url = new URL(uri);
HttpURLConnection urlConnection
= (HttpURLConnection) url.openConnection();
String result = null;
try {
InputStream in
= new BufferedInputStream(urlConnection.getInputStream());
result = inputStreamToString(in);
in.close();
} finally {
urlConnection.disconnect();
}
}
}
return result;
...
20. Utils.java
For HTTP Access
public class Utils {
...
private static String inputStreamToString(InputStream stream)
throws IOException {
Reader reader = new InputStreamReader(stream, "UTF-8");
StringBuilder sb = new StringBuilder();
char[] buffer = new char[1024];
int num;
while (0 < (num = reader.read(buffer))) {
sb.append(buffer, 0, num);
}
return sb.toString();
}
}
...
22. Display a list of files #1
•
•
•
Get a list of the DCIM folder
•
<directory>,<file name>,<file
size>,<attribute>,<date>,and <time> are returned.
•
•
e.g. /DCIM,100__TSB,0,16,9944,129
Use: http://flashair/command.cgi?op=100&DIR=[path]
See: https://www.flashairdevelopers.com/ja/documents/api/commandcgi/#100
NOTE: A comma could be returned as part of a filename.
23. Display a list of files #2
•
•
•
•
•
•
•
•
The file's size is in bytes
Attribute is a 16-bit integer
Bit 5 : Archive
Bit 4 : Directly
Bit 3 : Volume
Bit 2 : System file
Bit 1 : Hidden file
Bit 0 : Read only
24. Display a list of files #3
•
Date is also a 16-bit integer
•
•
•
•
Bit 15-9 : A value based on 0 as a 1980
Bit 8-5 : Month from 1 to 12
Bit 4-0 : Day from 1 to 31
So is the Timestamp
•
•
•
Bit 15-11 : Hour
Bit 10-5 : Minute
Bit 4-0 : Second/2
25. FlashAirFileInfo.java
Class for a file information
public class FlashAirFileInfo {
public FlashAirFileInfo(String info, String dir) {
int start;
int end;
start = info.lastIndexOf(",");
int time = Integer.parseInt(info.substring(start + 1).trim());
end = start;
start = info.lastIndexOf(",", end - 1);
int date = Integer.parseInt(info.substring(start + 1, end).trim());
end = start;
start = info.lastIndexOf(",", end - 1);
mAttribute = Integer.parseInt(info.substring(start + 1, end).trim());
end = start;
start = info.lastIndexOf(",", end - 1);
mSize = info.substring(start + 1, end);
...
end = start;
start = info.indexOf(",", dir.length());
mFileName = info.substring(start + 1, end);
26. FlashAirFileInfo.java
...
Class for a file information
mDir = dir;
int year = ((date >> 9) & 0x0000007f) + 1980;
int month = (date >> 5) & 0x0000000f - 1;
int day = (date) & 0x0000001f;
int hourOfDay = (time >> 11) & 0x0000001f;
int minute = (time >> 5) & 0x0000003f;
int second = ((time) & 0x0000001f) * 2;
}
mCalendar = Calendar.getInstance();
mCalendar.set(year, month, day, hourOfDay, minute, second);
public
public
public
public
public
...
String mDir;
String mFileName;
String mSize;
int mAttribute;
Calendar mCalendar;
28. FlashAirUtils.java
Get a file information
public class FlashAirUtils {
...
public static List<FlashAirFileInfo> getFileList(String dir) {
try {
String result = Utils.accessToFlashAir(FILE_LIST + dir);
if (TextUtils.isEmpty(result)) {
return null;
}
...
ArrayList<FlashAirFileInfo> list = new ArrayList<FlashAirFileInfo>();
for (String line : result.split("¥n")) {
if (TextUtils.isEmpty(line)) {
continue;
}
if (line.split(",").length < 6) {
continue;
}
FlashAirFileInfo info = new FlashAirFileInfo(line, dir);
list.add(info);
}
return list;
31. MainActivity.java
public class MainActivity extends Activity {
...
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int itemId = item.getItemId();
switch (itemId) {
...
case R.id.action_reload:
String dir = "/DCIM";
getFileCount(dir);
getFileList(dir);
return true;
}
return super.onOptionsItemSelected(item);
}
...
}
Get a file list
32. MainActivity.java
Set a file list to ListView
public class MainActivity extends Activity {
...
private void getFileList(final String dir) {
new AsyncTask<Void, Void, List<FlashAirFileInfo>>() {
@Override
protected List<FlashAirFileInfo> doInBackground(Void... params) {
return FlashAirUtils.getFileList(dir);
}
}
@Override
protected void onPostExecute(List<FlashAirFileInfo> result) {
ListView lv = (ListView) findViewById(R.id.listView1);
lv.setAdapter(new FileListAdapter(MainActivity.this, result));
}
}.execute();
public class FileListAdapter extends ArrayAdapter<FlashAirFileInfo> {
}
}
public FileListAdapter(Context context, List<FlashAirFileInfo> data) {
super(context, android.R.layout.simple_list_item_1, data);
}
35. Display thumbnails #1
•
•
•
•
To get thumbnails from image files:
•
Thumbnail images are defined by EXIF standard, and are only
available in JPEG format
•
If a file is not JPEG or no thumbnails are defined, a 404 error
is returned
Use http://flashair/thumbnail.cgi?[path]
e.g. http://flashair/thumbnail.cgi?/DCIM/IMG_xxx.jpg
See: https://www.flashairdevelopers.com/ja/documents/api/thumbnailcgi/
36. Display thumbnails #2
•
•
Display the thumbnails in a ListView
Use Volley!
•
•
A network processing library for Android
•
http://y-anz-m.blogspot.jp/2013/05/google-io-2013android-volley-easy-fast.html
•
NetworkImageView is available
https://android.googlesource.com/platform/frameworks/v
olley/
•
NetworkImageView is an ImageView with
communication processing
38. Display thumbnails #4
•
Volley is a library project, so we need to add it.
•
git clone
https://android.googlesource.com/platform/frameworks/vo
lley
•
[File] - [Import] - [Android] - [Existing Android Code Into
Workspace]
•
Select root directory:
•
Set volley folder
39. Display thumbnails #5
•
•
Open Properties for FlashAirSample
[Android] - [Library] - [Add]
•
Select volley
If Volley is not appear on the list, make
sure Is Library od Volley project is
checked!
45. FlashAirUtils.java
public class FlashAirUtils {
public static final String BASE = "http://flashair/";
public static final String THUMBNAIL = BASE + "thumbnail.cgi?";
public static String getThumbnailUrl(String dir, String fileName) {
return THUMBNAIL + dir + "/" + fileName;
}
}
...
48. Download images #1
•
•
•
•
To get an image file
Use http://flashair/[path]
e.g. http://flashair/DCIM/IMG_xxx.jpg
Use DownloadManager
•
http://developer.android.com/reference/android/app/Dow
nloadManager.html
49. Download images #2
•
Using DownloadManager
•
•
Create a download request with Request request = new
DownloadManager.Request(uri)
•
•
Get an instance with
getSystemService(Context.DOWNLOAD_SERVICE)
Add the request with downloadManager.enqueue(request)
To save image to your device, you will need
android.permission.WRITE_EXTERNAL_STORAGE.
51. MainActivity.java
Set Listener in list
public class MainActivity extends Activity implements OnItemClickListener {
...
private void getFileList(final String dir) {
new AsyncTask<Void, Void, List<FlashAirFileInfo>>() {
@Override
protected List<FlashAirFileInfo> doInBackground(Void... params) {
return FlashAirUtils.getFileList(dir);
}
}
...
@Override
protected void onPostExecute(List<FlashAirFileInfo> result) {
ListView lv = (ListView) findViewById(R.id.listView1);
lv.setAdapter(new FileListAdapter(MainActivity.this, result));
lv.setOnItemClickListener(MainActivity.this);
}
}.execute();
52. MainActivity.java
Set Listener in list
public class MainActivity extends Activity implements OnItemClickListener {
...
@Override
public void onItemClick(AdapterView<?> adapter, View v, int position,
long l) {
FlashAirFileInfo info = (FlashAirFileInfo) adapter
.getItemAtPosition(position);
File path = Environment
.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);
File file = new File(path, info.mFileName);
if (!file.exists()) {
startDownload(info);
return;
}
}
...
openDownloadedFile(file.toString());
53. MainActivity.java
...
private void openDownloadedFile(String filePath) {
MediaScannerConnection.scanFile(this, new String[] { filePath }, null,
new MediaScannerConnection.OnScanCompletedListener() {
public void onScanCompleted(String path, Uri uri) {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(uri);
startActivity(intent);
}
});
}
private void startDownload(FlashAirFileInfo info) {
Uri uri = FlashAirUtils.getFileUri(info.mDir, info.mFileName);
DownloadManager manager =
(DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Request request = new DownloadManager.Request(uri);
request.allowScanningByMediaScanner();
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DCIM,
info.mFileName);
manager.enqueue(request);
}
...