Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2ms4qCS.
Matt Bachmann presents a few patterns meant to inspire developers to get started with Property-based Testing. Filmed at qconsf.com.
Matt Bachmann works as a Software Engineer in the Commerce team at Fitbit Matt. The Commerce team helps maintain the order pipeline from cart to post purchase support. Prior to his work at Fitbit he worked on content analysis platforms for the identification of PII, PCI, and other potentially sensitive information.
This document provides code examples in Java, Groovy, Scala, and Jython for solving the anagram problem of finding all permutations of words that can be formed from letters in a given input. The Java code is presented first, followed by simplified versions using Groovy, Scala, and Jython that take advantage of features in those languages like closures, functional programming, and dynamic typing. The examples demonstrate building a multimap to group words by their alphagrams, filtering to find groups above a minimum size, sorting the results, and printing the output.
The Ring programming language version 1.8 book - Part 41 of 202Mahmoud Samir Fayed
This document provides summaries of key classes in the Ring programming language standard library (stdlib), including classes for strings, lists, stacks, queues, hash tables, trees, and mathematical functions. It describes the purpose and basic usage of methods in each class.
The Ring programming language version 1.9 book - Part 44 of 210Mahmoud Samir Fayed
This document provides documentation on Ring's standard library classes. It describes several commonly used classes, including String, List, Stack, Queue, HashTable, Tree, and Math. For each class, it lists parent classes, attributes, methods, and examples of how to use the class methods.
The Ring programming language version 1.5.1 book - Part 34 of 180Mahmoud Samir Fayed
The document describes various classes in the Ring standard library (stdlib) including the StdBase, String, List, Stack, Queue, HashTable, Tree, and Math classes. It provides details on their attributes and methods, and includes examples of using each class.
The document discusses various testing techniques including parameterized tests. It provides an example of using parameterized tests with JUnit 4.8.1 to test a tax calculator with sample income and expected tax data. The test class is annotated with @RunWith(Parameterized.class) and has fields for the income and expected tax. It constructs test instances with the data and includes a test that verifies the calculated tax matches the expected value.
Sometimes we want to keep or collect errors for later examination. We’ll use Cats to help us pick the story we want to tell when handling errors; accumulated errors or first error wins. Monads will be included!
This document provides an overview of Scala and compares it to Java in 3 sentences:
Scala is a multi-paradigm programming language that runs on the Java Virtual Machine and interoperates seamlessly with Java, combining object-oriented and functional programming in one concise, high-level language. Scala improves on Java with features like closures, pattern matching, traits, and immutable data while maintaining a familiar syntax; it compiles to Java bytecode and allows Java and Scala code to interoperate. Scala aims to be a better language for writing concurrent, parallel and distributed applications than Java with its support for actors, futures and software transactional memory.
This document discusses lists and dictionaries in Python. It provides definitions and examples of lists, including how to add and remove elements from lists. It also discusses sorting lists and getting the length of lists. Examples are provided for integrating lists with loops. The document then discusses dictionaries, including how to represent them and retrieve values from dictionaries using keys. Examples are provided for using loops to print keys and values from dictionaries. It also discusses modules like NumPy and Pandas that can be imported in Python.
This document provides code examples in Java, Groovy, Scala, and Jython for solving the anagram problem of finding all permutations of words that can be formed from letters in a given input. The Java code is presented first, followed by simplified versions using Groovy, Scala, and Jython that take advantage of features in those languages like closures, functional programming, and dynamic typing. The examples demonstrate building a multimap to group words by their alphagrams, filtering to find groups above a minimum size, sorting the results, and printing the output.
The Ring programming language version 1.8 book - Part 41 of 202Mahmoud Samir Fayed
This document provides summaries of key classes in the Ring programming language standard library (stdlib), including classes for strings, lists, stacks, queues, hash tables, trees, and mathematical functions. It describes the purpose and basic usage of methods in each class.
The Ring programming language version 1.9 book - Part 44 of 210Mahmoud Samir Fayed
This document provides documentation on Ring's standard library classes. It describes several commonly used classes, including String, List, Stack, Queue, HashTable, Tree, and Math. For each class, it lists parent classes, attributes, methods, and examples of how to use the class methods.
The Ring programming language version 1.5.1 book - Part 34 of 180Mahmoud Samir Fayed
The document describes various classes in the Ring standard library (stdlib) including the StdBase, String, List, Stack, Queue, HashTable, Tree, and Math classes. It provides details on their attributes and methods, and includes examples of using each class.
The document discusses various testing techniques including parameterized tests. It provides an example of using parameterized tests with JUnit 4.8.1 to test a tax calculator with sample income and expected tax data. The test class is annotated with @RunWith(Parameterized.class) and has fields for the income and expected tax. It constructs test instances with the data and includes a test that verifies the calculated tax matches the expected value.
Sometimes we want to keep or collect errors for later examination. We’ll use Cats to help us pick the story we want to tell when handling errors; accumulated errors or first error wins. Monads will be included!
This document provides an overview of Scala and compares it to Java in 3 sentences:
Scala is a multi-paradigm programming language that runs on the Java Virtual Machine and interoperates seamlessly with Java, combining object-oriented and functional programming in one concise, high-level language. Scala improves on Java with features like closures, pattern matching, traits, and immutable data while maintaining a familiar syntax; it compiles to Java bytecode and allows Java and Scala code to interoperate. Scala aims to be a better language for writing concurrent, parallel and distributed applications than Java with its support for actors, futures and software transactional memory.
This document discusses lists and dictionaries in Python. It provides definitions and examples of lists, including how to add and remove elements from lists. It also discusses sorting lists and getting the length of lists. Examples are provided for integrating lists with loops. The document then discusses dictionaries, including how to represent them and retrieve values from dictionaries using keys. Examples are provided for using loops to print keys and values from dictionaries. It also discusses modules like NumPy and Pandas that can be imported in Python.
Short (45 min) version of my 'Pragmatic Real-World Scala' talk. Discussing patterns and idioms discovered during 1.5 years of building a production system for finance; portfolio management and simulation.
Выступление в рамках спецкурса "Немейнстримовые технологии разработки", читаемого в НГУ. http://bit.ly/mainstreamless
Аудио дорожка работает, но нужно иметь некоторое терпение, так как грузится она не моментально.
This document discusses Scala features for parallelism, concurrency, and reactive programming. Some key points include:
- Scala supports parallel collections that can perform operations like map, reduce, and filter in parallel.
- Futures represent asynchronous computations whose results are not yet known. They allow non-blocking operations.
- Actors are units of concurrency that communicate asynchronously by message passing. They encapsulate state and behavior.
- Akka is a toolkit for building highly concurrent, distributed, and fault-tolerant event-driven applications using actors. It implements the actor model in Scala.
The Ring programming language version 1.10 book - Part 40 of 212Mahmoud Samir Fayed
The document provides examples and explanations of object-oriented programming concepts in Ring including:
1. Defining setter and getter methods to control access to class attributes.
2. Using the self keyword to refer to the current object instance from within methods.
3. Overloading operators like + and - to allow their use with custom class objects.
3. Demonstrating inheritance by defining a child class that inherits from a parent class.
JDD2015: Functional programing and Event Sourcing - a pair made in heaven - e...PROIDEA
Contact
FUNCTIONAL PROGRAMING AND EVENT SOURCING - A PAIR MADE IN HEAVEN - EXTENDED, 2 HOURS LONG BRAINWASH
TL;DR: This is talk is a solid introduction to two (supposedly) different topics: FP & ES. I will cover both the theory and the practice. We will emerage ES+FP application starting from ES+OO one.
While reading blogs or attending conferences, you might have heard about Event Sourcing. But didn't you get this feeling, that while there is a lot of theory out there, it is really hard to see a hands-on example? And even if you find some, those are always orbiting around Object Oriented concepts?
Greg Young once said "When we talk about Event Sourcing, current state is a left-fold of previous behaviours. Nothing new to Functional Programmers". If Functional Programming is such a natural concept for event sourced systems, shouldn't they fit together on a single codebase?
In this talk we will quickly introduce Event Sourcing (but without going into details), we will introduce some functional concepts as well (like State monad). Armoured with that knowledge we will try to transform sample ES application (OO-style, tightly coupled with framework) to frameworkless, FP-style solution).
Talk is targeted for beginner and intermediate audience. Examples will be in Scala but nothing fancy - normal syntax.
This talk is an extended version of a presentation "Event Sourcing & Functional Programming - a pair made in heaven". It is enriched with content of presentations: "Monads - asking the right question" and "It's all been done before - The Hitchhiker's Guide to Time Travel".
The Ring programming language version 1.6 book - Part 38 of 189Mahmoud Samir Fayed
This document summarizes the key classes in the Ring programming language including the String, List, Stack, Queue, HashTable, Tree, and Math classes. For each class, it provides an overview of the parent class and core methods, followed by examples of using each method on instances of the classes. It demonstrates initializing class instances, accessing and modifying values, and performing common operations like adding/removing items, sorting, and mathematical functions.
The Ring programming language version 1.5.2 book - Part 35 of 181Mahmoud Samir Fayed
This document summarizes the key classes and methods in the Ring programming language documentation. It describes classes for strings, lists, stacks, queues, hash tables, trees and math functions. For each class it lists parent classes and example methods with brief descriptions of functionality. An example usage section demonstrates the methods on various classes.
This document summarizes various Swift concepts including collection types like arrays and dictionaries, mutability, accessing and modifying collections, control flow statements like for-in loops and conditional statements, functions like defining parameters and return values, and function types.
The Ring programming language version 1.5 book - Part 3 of 31Mahmoud Samir Fayed
This document provides release notes for Ring Documentation version 1.5. It summarizes new features and changes including:
1. The ability to generate and execute Ring object files without source code for easier application distribution.
2. Increased syntax flexibility with optional styles for input/output and control structures that can mimic languages like Lua, Ruby, and C.
3. New functions added to the standard library like clockspersecond() and classes written in Ring like List, Stack, and Queue.
4. Support for additional libraries like RingLibSDL for game development using the SDL library and RingSQLite for SQLite database integration.
This document provides an overview of new features in Java 8, including lambda expressions, default methods on interfaces, bulk data operations on collections, and other library enhancements. It discusses how lambda expressions allow for closures in Java and interface evolution with default methods. It also provides code examples of using lambda expressions for event handling and animation in a JavaFX application that makes circles vanish when clicked.
The Ring programming language version 1.5.4 book - Part 36 of 185Mahmoud Samir Fayed
This document provides documentation on Ring programming language classes and methods, including List, Stack, Queue, HashTable, Tree, Math, and DateTime classes. It describes the purpose and usage of each class and its methods, and provides examples of how to use the classes and methods.
The Ring programming language version 1.4 book - Part 10 of 30Mahmoud Samir Fayed
This document provides documentation on Ring programming language classes and methods. It summarizes key data structures like List, Stack, Queue, HashTable and Tree. It also covers numeric and date/time utility classes like Math and DateTime. Example code is provided to demonstrate the usage of each class and method.
Graph Connect: Importing data quickly and easilyMark Needham
This document discusses importing data from Stack Exchange into Neo4j. It describes extracting data from the Stack Exchange API and data dump into JSON and CSV files. It then covers using Cypher and the LOAD CSV command to import the data into Neo4j, creating nodes for questions, answers, users and tags and relationships between them. It also provides tips for optimizing the import process such as indexing keys, using periodic commit, and cleaning the data. For very large datasets, it recommends using the Neo4j import tool to directly write to the database files.
The document discusses object-oriented programming in Python. It defines key OOP concepts like classes, objects, and methods. It provides examples of defining classes and methods in Python. It also covers inheritance, polymorphism, and data abstraction in OOP. Database programming in Python is also discussed, including connecting to databases and performing CRUD operations using the Python DB API.
Exploring ZIO Prelude: The game changer for typeclasses in ScalaJorge Vásquez
The document discusses ZIO Prelude, a Scala library that provides typeclasses. It motivates ZIO Prelude by explaining limitations of Scalaz in Scala compared to Haskell. It then provides an overview and tour of capabilities in ZIO Prelude, including validating data with Validation to accumulate all errors, combining nested data structures by summing stats, and executing pure computations. The document uses examples to demonstrate how ZIO Prelude provides a more Scala-centric approach to functional programming compared to porting Haskell concepts.
The Ring programming language version 1.10 book - Part 47 of 212Mahmoud Samir Fayed
This document summarizes the methods available in various Ring classes for data types, conversions, databases, security, and internet functions. It provides examples of using each class and the output. The DataType class allows checking value types and properties. The Conversion class converts between data types. Database classes like ODBC, MySQL, SQLite and PostgreSQL provide methods for connecting to databases and executing queries. The Security class implements hashing and encryption algorithms. The Internet class allows downloading files and sending emails.
The document shows examples of using lambda functions and functional programming techniques in various languages like JavaScript, Python, C#, and Java. It demonstrates how to define anonymous functions, map, filter and reduce collections, use closures, and more. Key examples include summing a list of integers with reduce, filtering even numbers from a list, mapping string transformations, and converting a list of strings to uppercase.
This document summarizes a talk given about Nokia's migration to Scala for its Places API. The key points are:
1) Nokia migrated its Places API codebase to Scala to take advantage of Scala's features like its powerful type system, immutable data structures, and functional programming capabilities.
2) The migration was done gradually over time while continuing to develop new features. They discovered many benefits of Scala along the way like improved test readability and JSON parsing capabilities.
3) Nokia uses Scala features like case classes, options, and functions to model data and add type safety to its codebase. This uncovered bugs that would have been hard to find in Java.
The document discusses property-based testing and how it can be used to test code more effectively than example-based testing. It introduces the concepts of testing properties like commutativity, associativity, and identity to specify requirements at a deeper level. QuickCheck is presented as a tool that generates random test values to check properties, finding bugs more quickly than testing by hand. JUnit Quickcheck and JSVerify are given as libraries for implementing property tests in Java and JavaScript. Potential applications of property testing like testing SDKs and data processing frameworks are outlined.
Making property-based testing easier to read for humansLaura M. Castro
Agile practices have taught us that both stakeholder involvement and early testing are key to quality software. However, it is usually the case that tools for good communication are not that good for testing, and vice-versa.
In this talk, readSpec (one of the results of the PF7 EU PROWESS project) is presented, a tool that attempts to fill in this gap.
The document discusses property-based testing and provides examples of property tests in different programming languages like Java, PHP, Go, and Rust. It explains the concept of property-based testing where tests make statements about the output of code based on different inputs. Examples include testing properties of a rectangle area function, offer calculations, mean/variance/standard deviation calculations, and quickcheck tests.
Short (45 min) version of my 'Pragmatic Real-World Scala' talk. Discussing patterns and idioms discovered during 1.5 years of building a production system for finance; portfolio management and simulation.
Выступление в рамках спецкурса "Немейнстримовые технологии разработки", читаемого в НГУ. http://bit.ly/mainstreamless
Аудио дорожка работает, но нужно иметь некоторое терпение, так как грузится она не моментально.
This document discusses Scala features for parallelism, concurrency, and reactive programming. Some key points include:
- Scala supports parallel collections that can perform operations like map, reduce, and filter in parallel.
- Futures represent asynchronous computations whose results are not yet known. They allow non-blocking operations.
- Actors are units of concurrency that communicate asynchronously by message passing. They encapsulate state and behavior.
- Akka is a toolkit for building highly concurrent, distributed, and fault-tolerant event-driven applications using actors. It implements the actor model in Scala.
The Ring programming language version 1.10 book - Part 40 of 212Mahmoud Samir Fayed
The document provides examples and explanations of object-oriented programming concepts in Ring including:
1. Defining setter and getter methods to control access to class attributes.
2. Using the self keyword to refer to the current object instance from within methods.
3. Overloading operators like + and - to allow their use with custom class objects.
3. Demonstrating inheritance by defining a child class that inherits from a parent class.
JDD2015: Functional programing and Event Sourcing - a pair made in heaven - e...PROIDEA
Contact
FUNCTIONAL PROGRAMING AND EVENT SOURCING - A PAIR MADE IN HEAVEN - EXTENDED, 2 HOURS LONG BRAINWASH
TL;DR: This is talk is a solid introduction to two (supposedly) different topics: FP & ES. I will cover both the theory and the practice. We will emerage ES+FP application starting from ES+OO one.
While reading blogs or attending conferences, you might have heard about Event Sourcing. But didn't you get this feeling, that while there is a lot of theory out there, it is really hard to see a hands-on example? And even if you find some, those are always orbiting around Object Oriented concepts?
Greg Young once said "When we talk about Event Sourcing, current state is a left-fold of previous behaviours. Nothing new to Functional Programmers". If Functional Programming is such a natural concept for event sourced systems, shouldn't they fit together on a single codebase?
In this talk we will quickly introduce Event Sourcing (but without going into details), we will introduce some functional concepts as well (like State monad). Armoured with that knowledge we will try to transform sample ES application (OO-style, tightly coupled with framework) to frameworkless, FP-style solution).
Talk is targeted for beginner and intermediate audience. Examples will be in Scala but nothing fancy - normal syntax.
This talk is an extended version of a presentation "Event Sourcing & Functional Programming - a pair made in heaven". It is enriched with content of presentations: "Monads - asking the right question" and "It's all been done before - The Hitchhiker's Guide to Time Travel".
The Ring programming language version 1.6 book - Part 38 of 189Mahmoud Samir Fayed
This document summarizes the key classes in the Ring programming language including the String, List, Stack, Queue, HashTable, Tree, and Math classes. For each class, it provides an overview of the parent class and core methods, followed by examples of using each method on instances of the classes. It demonstrates initializing class instances, accessing and modifying values, and performing common operations like adding/removing items, sorting, and mathematical functions.
The Ring programming language version 1.5.2 book - Part 35 of 181Mahmoud Samir Fayed
This document summarizes the key classes and methods in the Ring programming language documentation. It describes classes for strings, lists, stacks, queues, hash tables, trees and math functions. For each class it lists parent classes and example methods with brief descriptions of functionality. An example usage section demonstrates the methods on various classes.
This document summarizes various Swift concepts including collection types like arrays and dictionaries, mutability, accessing and modifying collections, control flow statements like for-in loops and conditional statements, functions like defining parameters and return values, and function types.
The Ring programming language version 1.5 book - Part 3 of 31Mahmoud Samir Fayed
This document provides release notes for Ring Documentation version 1.5. It summarizes new features and changes including:
1. The ability to generate and execute Ring object files without source code for easier application distribution.
2. Increased syntax flexibility with optional styles for input/output and control structures that can mimic languages like Lua, Ruby, and C.
3. New functions added to the standard library like clockspersecond() and classes written in Ring like List, Stack, and Queue.
4. Support for additional libraries like RingLibSDL for game development using the SDL library and RingSQLite for SQLite database integration.
This document provides an overview of new features in Java 8, including lambda expressions, default methods on interfaces, bulk data operations on collections, and other library enhancements. It discusses how lambda expressions allow for closures in Java and interface evolution with default methods. It also provides code examples of using lambda expressions for event handling and animation in a JavaFX application that makes circles vanish when clicked.
The Ring programming language version 1.5.4 book - Part 36 of 185Mahmoud Samir Fayed
This document provides documentation on Ring programming language classes and methods, including List, Stack, Queue, HashTable, Tree, Math, and DateTime classes. It describes the purpose and usage of each class and its methods, and provides examples of how to use the classes and methods.
The Ring programming language version 1.4 book - Part 10 of 30Mahmoud Samir Fayed
This document provides documentation on Ring programming language classes and methods. It summarizes key data structures like List, Stack, Queue, HashTable and Tree. It also covers numeric and date/time utility classes like Math and DateTime. Example code is provided to demonstrate the usage of each class and method.
Graph Connect: Importing data quickly and easilyMark Needham
This document discusses importing data from Stack Exchange into Neo4j. It describes extracting data from the Stack Exchange API and data dump into JSON and CSV files. It then covers using Cypher and the LOAD CSV command to import the data into Neo4j, creating nodes for questions, answers, users and tags and relationships between them. It also provides tips for optimizing the import process such as indexing keys, using periodic commit, and cleaning the data. For very large datasets, it recommends using the Neo4j import tool to directly write to the database files.
The document discusses object-oriented programming in Python. It defines key OOP concepts like classes, objects, and methods. It provides examples of defining classes and methods in Python. It also covers inheritance, polymorphism, and data abstraction in OOP. Database programming in Python is also discussed, including connecting to databases and performing CRUD operations using the Python DB API.
Exploring ZIO Prelude: The game changer for typeclasses in ScalaJorge Vásquez
The document discusses ZIO Prelude, a Scala library that provides typeclasses. It motivates ZIO Prelude by explaining limitations of Scalaz in Scala compared to Haskell. It then provides an overview and tour of capabilities in ZIO Prelude, including validating data with Validation to accumulate all errors, combining nested data structures by summing stats, and executing pure computations. The document uses examples to demonstrate how ZIO Prelude provides a more Scala-centric approach to functional programming compared to porting Haskell concepts.
The Ring programming language version 1.10 book - Part 47 of 212Mahmoud Samir Fayed
This document summarizes the methods available in various Ring classes for data types, conversions, databases, security, and internet functions. It provides examples of using each class and the output. The DataType class allows checking value types and properties. The Conversion class converts between data types. Database classes like ODBC, MySQL, SQLite and PostgreSQL provide methods for connecting to databases and executing queries. The Security class implements hashing and encryption algorithms. The Internet class allows downloading files and sending emails.
The document shows examples of using lambda functions and functional programming techniques in various languages like JavaScript, Python, C#, and Java. It demonstrates how to define anonymous functions, map, filter and reduce collections, use closures, and more. Key examples include summing a list of integers with reduce, filtering even numbers from a list, mapping string transformations, and converting a list of strings to uppercase.
This document summarizes a talk given about Nokia's migration to Scala for its Places API. The key points are:
1) Nokia migrated its Places API codebase to Scala to take advantage of Scala's features like its powerful type system, immutable data structures, and functional programming capabilities.
2) The migration was done gradually over time while continuing to develop new features. They discovered many benefits of Scala along the way like improved test readability and JSON parsing capabilities.
3) Nokia uses Scala features like case classes, options, and functions to model data and add type safety to its codebase. This uncovered bugs that would have been hard to find in Java.
The document discusses property-based testing and how it can be used to test code more effectively than example-based testing. It introduces the concepts of testing properties like commutativity, associativity, and identity to specify requirements at a deeper level. QuickCheck is presented as a tool that generates random test values to check properties, finding bugs more quickly than testing by hand. JUnit Quickcheck and JSVerify are given as libraries for implementing property tests in Java and JavaScript. Potential applications of property testing like testing SDKs and data processing frameworks are outlined.
Making property-based testing easier to read for humansLaura M. Castro
Agile practices have taught us that both stakeholder involvement and early testing are key to quality software. However, it is usually the case that tools for good communication are not that good for testing, and vice-versa.
In this talk, readSpec (one of the results of the PF7 EU PROWESS project) is presented, a tool that attempts to fill in this gap.
The document discusses property-based testing and provides examples of property tests in different programming languages like Java, PHP, Go, and Rust. It explains the concept of property-based testing where tests make statements about the output of code based on different inputs. Examples include testing properties of a rectangle area function, offer calculations, mean/variance/standard deviation calculations, and quickcheck tests.
Este documento describe cómo las escuelas tradicionales están siendo atravesadas por las nuevas tecnologías de la información y la comunicación (TIC), pero no las están incorporando de manera efectiva. Las escuelas mantienen una actitud defensiva y de sospecha hacia las TIC en lugar de usarlas de forma creativa en los procesos de enseñanza y aprendizaje. Los docentes no están capacitados para usar las TIC, mientras que los estudiantes son nativos digitales. Se necesita una política educativa que incluya a los docentes en el
The document discusses property-based testing for services in Scala. It introduces property-based testing as an alternative to example tests that can generate random inputs to test definitions of how a program should behave. The document provides an example of generating test data using Scalacheck, writing properties to define expected outputs, and using for-comprehensions to combine generated values into more complex types for testing.
Property-based testing (PBT) focuses on testing specifications rather than implementations. It uses random testing against properties expressed as code to generate many test cases, reducing testing effort. PBT represents a system as states, commands to transition between states, and properties relating commands to expected states. This allows effective testing of stateful systems. PBT has been used successfully for concurrency, distributed systems, and finding bugs unit tests missed. Popular PBT libraries include Scalacheck, QuickCheck, and Hypothesis.
El procesamiento por lotes permite la ejecución de programas sin interacción del usuario, requiere la gestión de recursos en un momento determinado, y permite la entrada de programas, datos y órdenes al sistema de forma conjunta. Se caracteriza por tener un mayor potencial de utilización de recursos en sistemas multiusuario y procesar datos por lotes desde 1956. Las ventajas incluyen la posibilidad de ejecutar archivos varias veces y aprovechar los recursos cuando las computadoras no están en uso; las desventajas son que los errores pueden
Este documento presenta a los 10 youtubers más famosos de América Latina. El primer lugar lo ocupa Germán Garmendia de Chile con más de 26 millones de suscriptores. Le siguen Yuya de México con 13 millones y Werevertumorro de México con casi 11 millones. Los youtubers han encontrado en esta plataforma una forma de generar ingresos significativos a través de sus videos de entretenimiento.
El documento habla sobre el Reconstruccionismo como una corriente filosófica educativa que busca "reconstruir" la sociedad resolviendo crisis culturales. Propone una educación que reinterprete valores occidentales a la luz de la ciencia. Según Brameld, el Reconstruccionismo promueve la reforma social democrática y reconstruye los fines de la educación considerando avances científicos sobre el comportamiento. La escuela debe ser puente entre la realidad y la sociedad ideal, apoyando la reconstrucción social.
Este documento describe los conceptos básicos de la investigación criminal, incluyendo hecho, víctima, criminal y los procedimientos de investigación. Explica que la investigación criminal implica actividades operativas e de inteligencia para determinar las causas y responsabilidades de un crimen. También destaca la importancia de seguir un método científico para recopilar pruebas de manera sistemática y ordenada, como huellas dactilares y testimonios. El objetivo final es hallar la verdad para presentarla ante un juez.
The document discusses using convolutional neural networks for speech activity detection from audio signals. Speech activity detection aims to distinguish between speech and noise segments to identify start and end times of speech. The approach uses spectrograms of audio signals as input to a CNN model. The CNN model was trained on a large Brazilian Portuguese dataset containing over 300 hours of speech and noise data. Evaluation on the QUT-NOISE-TIMIT dataset showed the CNN model achieved a half-total error rate of 3.2%, outperforming traditional MFCC-GMM and energy threshold baselines.
Property based Testing - generative data & executable domain rulesDebasish Ghosh
- Property based testing verifies properties and invariants of code through automated generation of random test data rather than testing with specific hard-coded test cases. This helps uncover subtle bugs and edge cases.
- Key aspects include defining properties to specify constraints that must hold, using a library like ScalaCheck to generate random data and verify properties hold, and defining custom generators for domain-specific types.
- Properties can verify things like business rules of a domain model in a more abstract way compared to traditional unit tests.
Dokumen tersebut memberikan panduan dasar tentang SEO (Search Engine Optimization) untuk pemula. Terdapat beberapa komponen utama yang perlu diperhatikan dalam mengoptimalkan halaman website agar dapat mendapatkan peringkat tinggi pada mesin pencari seperti Google, diantaranya adalah konten berkualitas, penggunaan keyword yang tepat, judul dan URL yang menarik, serta gambar dan kecepatan loading halaman.
React.js Basics document is summarized as follows:
[1] The document demonstrates how to build a React component to display speaker data grouped into rows, including conditionally displaying additional info for a selected speaker.
[2] It shows an initial proof of concept rendering static data, then fetching data asynchronously and handling the initial empty state.
[3] Child components are built to display each row and speaker, and functionality is added to track a selected speaker and display additional info.
This provides a concise overview of the key aspects covered in the React basics document, including component structure, asynchronous data handling, and adding interactivity.
(Bill Bejeck, Confluent) Kafka Summit SF 2018
Apache Kafka added a powerful stream processing library in mid-2016, Kafka Streams, which runs on top of Apache Kafka. The community has embraced Kafka Streams with many early adopters, and the adoption rate continues to grow. Large to mid-size organizations have come to rely on Kafka Streams in their production environments. Kafka Streams has many advanced features to make applications more robust.
The point of this presentation is to show users of Kafka Streams some of the latest and greatest features, as well as some that may be advanced, that can make streams applications more resilient. The target audience for this talk are those users already comfortable writing Kafka Streams applications and want to go from writing their first proof-of-concept applications to writing robust applications that can withstand the rigor that running in a production environment demands.
The talk will be a technical deep dive covering topics like:
-Best practices on configuring a Kafka Streams application
-How to meet production SLAs by minimizing failover and recovery times: configuring standby tasks and the pros and cons of having standby replicas for local state
-How to improve resiliency and 24×7 operability: the use of different configurable error handlers, callbacks and how they can be used to see what’s going on inside the application
-How to achieve efficient scalability: a thorough review of the relationship between the number of instances, threads and state stores and how they relate to each other
While this is a technical deep dive, the talk will also present sample code so that attendees can view the concepts discussed in practice. Attendees of this talk will walk away with a deeper understanding of how Kafka Streams works, and how to make their Kafka Streams applications more robust and efficient. There will be a mix of discussion.
This document provides an introduction and overview of the R programming language and statistical software environment. It discusses R's open source development, interoperability with other languages, variety of statistical and numerical methods, and high quality visualization tools. It also introduces key R concepts like vectors, matrices, lists, data frames, functions, operators, subsetting, importing/exporting data, and gives examples of frequently used statistical and graphical functions. Finally, it provides an overview of the Bioconductor project for biological data analysis using R.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1ZW7TDL.
Richard Dallaway shows an example of what Scala looks like when using pattern matching over classes, how to encode an idea into types and use advanced features of Scala without complicating the code. Filmed at qconlondon.com.
Richard Dallaway is a partner at Underscore -- a consultancy specializing in Scala, especially the type-driven and functional aspects of Scala. He works on client projects writing software and helping teams deliver software with Scala. His focus is on the web, machine learning, and code review. He's the co-author of "Essential Slick" (Underscore), and author of the "Lift Cookbook" (O'Reilly).
Easy, Scalable, Fault-tolerant stream processing with Structured Streaming in...DataWorks Summit
Last year, in Apache Spark 2.0, we introduced Structured Steaming, a new stream processing engine built on Spark SQL, which revolutionized how developers could write stream processing application. Structured Streaming enables users to express their computations the same way they would express a batch query on static data. Developers can express queries using powerful high-level APIs including DataFrames, Dataset and SQL. Then, the Spark SQL engine is capable of converting these batch-like transformations into an incremental execution plan that can process streaming data, while automatically handling late, out-of-order data, and ensuring end-to-end exactly-once fault-tolerance guarantees.
Since Spark 2.0 we've been hard at work building first class integration with Kafka. With this new connectivity, performing complex, low-latency analytics is now as easy as writing a standard SQL query. This functionality in addition to the existing connectivity of Spark SQL make it easy to analyze data using one unified framework. Users can now seamlessly extract insights from data, independent of whether it is coming from messy / unstructured files, a structured / columnar historical data warehouse or arriving in real-time from pubsub systems like Kafka and Kinesis.
We'll walk through a concrete example where in less than 10 lines, we read Kafka, parse JSON payload data into separate columns, transform it, enrich it by joining with static data and write it out as a table ready for batch and ad-hoc queries on up-to-the-last-minute data. We'll use techniques including event-time based aggregations, arbitrary stateful operations, and automatic state management using event-time watermarks.
This document provides an overview of the Scala programming language. Some key points:
- Scala runs on the Java Virtual Machine and was created by Martin Odersky at EPFL.
- It has been around since 2003 and the current stable release is 2.7.7. Release 2.8 beta 1 is due out soon.
- Scala combines object-oriented and functional programming. It has features like pattern matching, actors, XML literals, and more that differ from Java. Everything in Scala is an object.
This document discusses analyzing Twitter data from the user @a_bicky using R. It extracts over 3,200 tweets from the user's timeline using the twitteR package. The tweets are transformed into a data frame with variables like text, date, and source. The data is then summarized using the reshape2 and ggplot2 packages to calculate metrics like average text length by day of week, month, and source. Frequency tables and heat maps are generated to explore patterns in the Twitter data over time.
Rx 101 Codemotion Milan 2015 - Tamir DresherTamir Dresher
Slides from my talk about Reactive Extensions (Rx) fundamentals from Codemotion Milan 2015 conference. The demos and other samples can be found in the github repository: https://github.com/tamirdresher/Rx101
Reactive applications are designed to handle asynchronous events in a way that maximizes responsiveness, resiliency and elasticity. Reactive Extensions (Rx) is a library created by Microsoft that abstracts away the sources of events and provides tools to handle them in a reactive way. With Rx, filtering events, composing event sources, transforming events and dealing with errors all become much simpler than with traditional tools. Reactive Extensions requires a mind change, thinking about your application as a message hub that knows how to react to messages.
What's new with Apache Spark's Structured Streaming?Miklos Christine
Structured Streaming in Apache Spark allows users to write streaming applications as batch-style queries on static or streaming data sources. It treats streams as continuous unbounded tables and allows batch queries written on DataFrames/Datasets to be automatically converted into incremental execution plans to process streaming data in micro-batches. This provides a simple yet powerful API for building robust stream processing applications with end-to-end fault tolerance guarantees and integration with various data sources and sinks.
Beyond xUnit example-based testing: property-based testing with ScalaCheckFranklin Chen
Test-Driven Development has become deservedly popular in the past decade, with easy-to-use xUnit unit testing frameworks leading the way toward encouraging developers to write tests. But xUnit has limitations: how does one know one has written enough test cases for a desired behavior? And what if the behavior is conditional on other behavior? Property-based testing, first popularized for Haskell with the QuickCheck library, but available now for other languages as well, offers a powerful addition to one's testing toolkit.
I will discuss the concepts of property-based testing and illustrate them concretely using ScalaCheck for Scala, and point toward similar test frameworks in other languages.
- R is a free software environment for statistical computing and graphics. It has an active user community and supports graphical capabilities.
- R can import and export data, perform data manipulation and summaries. It provides various plotting functions and control structures to control program flow.
- Debugging tools in R include traceback, debug, browser and trace which help identify and fix issues in functions.
R is a free and open-source programming language for statistical analysis and graphics. It allows users to import, clean, transform, visualize and model data. Key features of R include its large collection of statistical and graphical techniques, ability to easily extend its functionality through user-contributed packages, and open-source nature which allows for free use and development. The document provides instructions on installing R, getting started with the R interface and commands, and an overview of common functions and operations for data analysis, visualization and statistics.
Model-Driven Software Development - Static Analysis & Error CheckingEelco Visser
The document discusses static analysis and error checking, including name resolution, type analysis, and checking for consistency. It describes analyzing syntax definitions, performing static analysis to check consistency beyond well-formedness, and reporting errors. Key aspects covered include type analysis, name resolution, reference resolution, and checking constraints.
Giving Clarity to LINQ Queries by Extending Expressions R2Ed Charbeneau
LINQ and Entity Framework are both commonly used in the .Net ecosystem, but even well-written applications can have LINQ queries that are difficult to understand. Because LINQ is so flexible, it can be written in ways that fail to communicate the developer’s intent. Well-written LINQ should be so clear as to be self-documenting. To write clear LINQ, it helps to understand the details of a few LINQ components that improve LINQ’s readability.
The document discusses models for software growth and extension. It proposes that software growth can be modeled as occurring in both a "decision space" of adding/removing features, and an "artifact space" of creating/deleting code artifacts. When growth is misaligned between these spaces, problems can occur. It explores representing concepts, behaviors, and composite behaviors in code using different approaches like classes, records of closures, and existential types to allow operating on mixed concept collections. The goal is to develop modular, extensible software models and architectures.
Http4s, Doobie and Circe: The Functional Web StackGaryCoady
Http4s, Doobie and Circe together form a nice platform for building web services. This presentations provides an introduction to using them to build your own service.
Data in Motion: Streaming Static Data EfficientlyMartin Zapletal
Distributed streaming performance, consistency, reliable delivery, durability, optimisations, event time processing and other concepts discussed and explained on Akka Persistence and other examples.
The document describes a lawyer's journey learning web development and building their first two web applications in Go. It outlines how they learned HTML, CSS, and JavaScript from May to July 2014 before learning Go in mid-July 2014. By mid-August 2014, they had deployed their first application - a CRUD app using MySQL for persistence. By the end of August 2014, they deployed their second application - an API client that retrieved photos from Flickr and weather data for a random city. The document provides details on the structure, libraries, data structures, database functions, handler functions, and main function used in developing the applications.
Structured Streaming provides a scalable and fault-tolerant stream processing framework on Spark SQL. It allows users to write streaming jobs using simple batch-like SQL queries that Spark will automatically optimize for efficient streaming execution. This includes handling out-of-order and late data, checkpointing to ensure fault-tolerance, and providing end-to-end exactly-once guarantees. The talk discusses how Structured Streaming represents streaming data as unbounded tables and executes queries incrementally to produce streaming query results.
Similar to Better Tests, Less Code: Property-based Testing (20)
Streaming a Million Likes/Second: Real-Time Interactions on Live VideoC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/39NIjLV.
Akhilesh Gupta does a technical deep-dive into how Linkedin uses the Play/Akka Framework and a scalable distributed system to enable live interactions like likes/comments at massive scale at extremely low costs across multiple data centers. Filmed at qconlondon.com.
Akhilesh Gupta is the technical lead for LinkedIn's Real-time delivery infrastructure and LinkedIn Messaging. He has been working on the revamp of LinkedIn’s offerings to instant, real-time experiences. Before this, he was the head of engineering for the Ride Experience program at Uber Technologies in San Francisco.
Next Generation Client APIs in Envoy MobileC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2x0Fav8.
Jose Nino guides the audience through the journey of Mobile APIs at Lyft. He focuses on how the team has reaped the benefits of API generation to experiment with the network transport layer. He also discusses recent developments the team has made with Envoy Mobile and the roadmap ahead. Filmed at qconlondon.com.
Jose Nino works as a Software Engineer at Lyft.
Software Teams and Teamwork Trends Report Q1 2020C4Media
The document discusses key trends in software teams and teamwork in 2020 according to a report by InfoQ. Some of the trends discussed include the sudden shift to remote work due to COVID-19, with many teams not fully prepared; the continued spread of agile practices to other areas of organizations beyond software development; and a growing focus on diversity, inclusion, and creating more humanistic and sustainable workplaces. The report aims to help technical leaders and individual contributors navigate these trends and challenges to improve team experiences and organizational success.
Understand the Trade-offs Using Compilers for Java ApplicationsC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2QCmmJ0.
Mark Stoodley examines some of the strengths and weaknesses of the different Java compilation technologies, if one was to apply them in isolation. Stoodley discusses how production JVMs are assembling a combination of these tools that work together to provide excellent performance across the large spectrum of applications written in Java and JVM based languages. Filmed at qconsf.com.
Mark Stoodley joined IBM Canada to build Java JIT compilers for production use and led the team that delivered AOT compilation in the IBM SDK for Java 6. He spent the last five years leading the effort to open source nearly 4.3 million lines of source code from the IBM J9 Java Virtual Machine to create the two open source projects Eclipse OMR and Eclipse OpenJ9, and now co-leads both projects.
Kafka is evolving to remove its dependency on Zookeeper. The Kafka Improvement Proposal 500 (KIP-500) aims to manage Kafka's metadata log with a self-managed Raft consensus algorithm and controller quorum rather than relying on Zookeeper. This will improve scalability, robustness, and make deployment easier. It will take multiple releases to fully implement KIP-500, beginning with removing Zookeeper from clients and ending with a release where Zookeeper is no longer required.
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2SXXXiD.
Katharina Probst talks about what it means to act like an owner and why teams need ownership to be high-performing. When team members, regardless of whether they have a formal leadership role or not, act like owners, magical things can happen. She shares ideas that we can apply to our own work, and talks about how to recognize when we don’t live up to our own expectations of acting like an owner. Filmed at qconsf.com.
Katharina Probst is a Senior Engineering Leader, Kubernetes & SaaS at Google. Before this, she was leading engineering teams at Netflix, being responsible for the Netflix API, which helps bring Netflix streaming to millions of people around the world. Prior to joining Netflix, she was in the cloud computing team at Google, where she saw cloud computing from the provider side.
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2T04Lw4.
Sergey Kuksenko talks about the performance benefits inline types bring to Java and how to exploit them. Inline/value types are the key part of experimental project Valhalla, which should bring new abilities to the Java language. Filmed at qconsf.com.
Sergey Kuksenko is a Java Performance Engineer at Oracle working on a variety of Java and JVM performance enhancements. He started working as Java Engineer in 1996 and as Java Performance Engineer in 2005. He has had a passion for exploring how Java works on modern hardware.
Do you need service meshes in your tech stack?
This on-line guide aims to answer pertinent questions for software architects and technical leaders, such as: what is a service mesh?, do I need a service mesh?, how do I evaluate the different service mesh offerings? In software architecture, a service mesh is a dedicated infrastructure layer for facilitating service-to-service communications between microservices, often using a sidecar proxy.
The document discusses Cloud Native CI/CD and the Tekton project. It begins with an overview of cloud native concepts like containers, Kubernetes, and microservices. It then defines characteristics of cloud native CI/CD like being serverless, using open standards, reusable components, and config as code. The document introduces Tekton as a cloud native CI/CD building block on Kubernetes that uses custom resources for tasks, pipelines, triggers and more. It highlights a demo of Tekton before concluding with the project's roadmap and how to get involved.
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2S7lDiS.
Sasha Rosenbaum shows how a CI/CD pipeline for Machine Learning can greatly improve both productivity and reliability. Filmed at qconsf.com.
Sasha Rosenbaum is a Program Manager on the Azure DevOps engineering team, focused on improving the alignment of the product with open source software. She is a co-organizer of the DevOps Days Chicago and the DeliveryConf conferences, and recently published a book on Serverless computing in Azure with .NET.
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/36epVKg.
Todd Montgomery discusses the techniques and lessons learned from implementing Aeron Cluster. His focus is on how Raft can be implemented on Aeron, minimizing the network round trip overhead, and comparing single process to a fully distributed cluster. Filmed at qconsf.com.
Todd Montgomery is a networking hacker who has researched, designed, and built numerous protocols, messaging-oriented middleware systems, and real-time data systems, done research for NASA, contributed to the IETF and IEEE, and co-founded two startups. He currently works as an independent consultant and is active in several open source projects.
Architectures That Scale Deep - Regaining Control in Deep SystemsC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2FWc5Sk.
Ben Sigelman talks about "Deep Systems", their common properties and re-introduces the fundamentals of control theory from the 1960s, including the original conceptualizations of Observability & Controllability. He uses examples from Google & other companies to illustrate how deep systems have damaged people's ability to observe software, and what needs to be done in order to regain control. Filmed at qconsf.com.
Ben Sigelman is a co-founder and the CEO at LightStep, a co-creator of Dapper (Google’s distributed tracing system), and co-creator of the OpenTracing and OpenTelemetry projects (both part of the CNCF). His work and interests gravitate towards observability, especially where microservices, high transaction volumes, and large engineering organizations are involved.
ML in the Browser: Interactive Experiences with Tensorflow.jsC4Media
This document discusses machine learning in the browser using Tensorflow.js. It begins with an introduction and overview of Tensorflow.js, including how it can be used for both authoring models and importing pre-trained models for inference. Examples are provided of using the Ops API to fit a polynomial function and the Layers API to build and train an autoencoder in the browser. Challenges of developing machine learning applications in the browser are also discussed.
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2s9T3Vl.
Colin Eberhardt looks at some of the internals of WebAssembly, explores how it works “under the hood”, and looks at how to create a (simple) compiler that targets this runtime. Filmed at qconsf.com.
Colin Eberhardt is the Technology Director at Scott Logic, a UK-based software consultancy where they create complex application for their financial services clients. He is an avid technology enthusiast, spending his evenings contributing to open source projects, writing blog posts and learning as much as he can.
User & Device Identity for Microservices @ Netflix ScaleC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2S9tOgy.
Satyajit Thadeshwar provides useful insights on how Netflix implemented a secure, token-agnostic, identity solution that works with services operating at a massive scale. He shares some of the lessons learned from this process, both from architectural diagrams and code. Filmed at qconsf.com.
Satyajit Thadeshwar is an engineer on the Product Edge Access Services team at Netflix, where he works on some of the most critical services focusing on user and device authentication. He has more than a decade of experience building fault-tolerant and highly scalable, distributed systems.
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2Ezs08q.
Justin Ryan talks about Netflix’ scalability issues and some of the ways they addressed it. He shares successes they’ve had from unintuitively partitioning computation into multiple services to get better runtime characteristics. He introduces us to useful probabilistic data structures, innovative bi-directional data passing, open-source projects available from Netflix that make this all possible. Filmed at qconsf.com.
Justin Ryan is Playback Edge Engineering at Netflix. He works on some of the most critical services at Netflix, specifically focusing on user and device authentication. Years of building developer tools has also given him a healthy set of opinions on developer productivity.
Make Your Electron App Feel at Home EverywhereC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2Z4ZJjn.
Kilian Valkhof discusses the process of making an Electron app feel at home on all three platforms: Windows, MacOS and Linux, making devs aware of the pitfalls and how to avoid them. Filmed at qconsf.com.
Kilian Valkhof is a Front-end Developer & User-experience Designer at Firstversionist. He writes about various topics, from design to machine learning, on his personal website, kilianvalkhof.com and is a frequent contributer to open source software. He is part of the Electron governance team that oversees the development of the Electron framework.
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/344PnB1.
Steve Klabnik goes over the deep details of how async/await works in Rust, covering concepts like coroutines, generators, stack-less vs stack-ful, "pinning", and more. Filmed at qconsf.com.
Steve Klabnik is on the core team of Rust, leads the documentation team, and is an author of "The Rust Programming Language." He is a frequent speaker at conferences and is a prolific open source contributor, previously working on projects such as Ruby and Ruby on Rails.
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2OUz6dt.
Chris Riccomini talks about the current state-of-the-art in data pipelines and data warehousing, and shares some of the solutions to current problems dealing with data streaming and warehousing. Filmed at qconsf.com.
Chris Riccomini works as a Software Engineer at WePay.
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreC4Media
The document discusses testing infrastructure as code using automated tests. It recommends writing unit tests to test individual components in isolation by deploying real infrastructure, validating it works through methods like HTTP requests or API calls, and then undeploying it. The document provides an example of using Terratest to write a unit test for a Terraform module that deploys a "Hello World" web app. It shows how to build and deploy the infrastructure, validate it works by making an HTTP request, and clean it up after the test.
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.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
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.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIVladimir Iglovikov, Ph.D.
Presented by Vladimir Iglovikov:
- https://www.linkedin.com/in/iglovikov/
- https://x.com/viglovikov
- https://www.instagram.com/ternaus/
This presentation delves into the journey of Albumentations.ai, a highly successful open-source library for data augmentation.
Created out of a necessity for superior performance in Kaggle competitions, Albumentations has grown to become a widely used tool among data scientists and machine learning practitioners.
This case study covers various aspects, including:
People: The contributors and community that have supported Albumentations.
Metrics: The success indicators such as downloads, daily active users, GitHub stars, and financial contributions.
Challenges: The hurdles in monetizing open-source projects and measuring user engagement.
Development Practices: Best practices for creating, maintaining, and scaling open-source libraries, including code hygiene, CI/CD, and fast iteration.
Community Building: Strategies for making adoption easy, iterating quickly, and fostering a vibrant, engaged community.
Marketing: Both online and offline marketing tactics, focusing on real, impactful interactions and collaborations.
Mental Health: Maintaining balance and not feeling pressured by user demands.
Key insights include the importance of automation, making the adoption process seamless, and leveraging offline interactions for marketing. The presentation also emphasizes the need for continuous small improvements and building a friendly, inclusive community that contributes to the project's growth.
Vladimir Iglovikov brings his extensive experience as a Kaggle Grandmaster, ex-Staff ML Engineer at Lyft, sharing valuable lessons and practical advice for anyone looking to enhance the adoption of their open-source projects.
Explore more about Albumentations and join the community at:
GitHub: https://github.com/albumentations-team/albumentations
Website: https://albumentations.ai/
LinkedIn: https://www.linkedin.com/company/100504475
Twitter: https://x.com/albumentations
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
2. InfoQ.com: News & Community Site
• Over 1,000,000 software developers, architects and CTOs read the site world-
wide every month
• 250,000 senior developers subscribe to our weekly newsletter
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• 2 dedicated podcast channels: The InfoQ Podcast, with a focus on
Architecture and The Engineering Culture Podcast, with a focus on building
• 96 deep dives on innovative topics packed as downloadable emags and
minibooks
• Over 40 new content items per week
Watch the video with slide
synchronization on InfoQ.com!
https://www.infoq.com/presentations/
test-patterns
3. Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
Presented at QCon San Francisco
www.qconsf.com
90. Stateful Tests
● Define a state
● What operations can happen in
what conditions?
● How do operations affect the
state?
● What must be true for each step?
118. More about Hypothesis
● http://hypothesis.works/
More On Property Based Testing In General
● http://www.quviq.com/
● https://fsharpforfunandprofit.com/posts/property-based-testing-2/
Testing Eventual Consistency with RIAK
● https://www.youtube.com/watch?v=x9mW54GJpG0