The document discusses several topics from different speakers at Upfront 2017:
1) Involve developers early in the design process so they understand user needs. Developers at Shopify are part of UX teams.
2) When using regular expressions in JavaScript, always include the 'u' unicode flag to support unicode characters.
3) Responsive design does not need to be heavily customized with CSS - it can handle layout automatically. ARIA attributes and frameworks are often unnecessary when plain HTML and CSS can accomplish accessibility and usability goals.
Go is a board game that is more than 2,500 years old (yes, this is not about the programming language!) and it is fascinating from multiple viewpoints. For instance, go bots still can’t beat professional players, unlike in chess.
This talk will show you what is so special about Go that computers still can’t beat humans. We will take a look at the most popular underlying algorithm and show you how the Monte Carlo method, basically random simulation, plays a vital role in conquering Go's complexity and creating the strong Go bots of today.
What did AlphaGo do to beat the strongest human Go player?Tobias Pfeiffer
This year AlphaGo shocked the world by decisively beating the strongest human Go player, Lee Sedol. An accomplishment that wasn't expected for years to come. How did AlphaGo do this? What algorithms did it use? What advances in AI made it possible? This talk will answer these questions.
The slides go through the implementation details of Google Deepmind's AlphaGo, a computer Go AI that defeated the European champion. The slides are targeted for beginners in the machine learning area.
Korean version (한국어 버젼): http://www.slideshare.net/ShaneSeungwhanMoon/ss-59226902
The document discusses several topics from different speakers at Upfront 2017:
1) Involve developers early in the design process so they understand user needs. Developers at Shopify are part of UX teams.
2) When using regular expressions in JavaScript, always include the 'u' unicode flag to support unicode characters.
3) Responsive design does not need to be heavily customized with CSS - it can handle layout automatically. ARIA attributes and frameworks are often unnecessary when plain HTML and CSS can accomplish accessibility and usability goals.
Go is a board game that is more than 2,500 years old (yes, this is not about the programming language!) and it is fascinating from multiple viewpoints. For instance, go bots still can’t beat professional players, unlike in chess.
This talk will show you what is so special about Go that computers still can’t beat humans. We will take a look at the most popular underlying algorithm and show you how the Monte Carlo method, basically random simulation, plays a vital role in conquering Go's complexity and creating the strong Go bots of today.
What did AlphaGo do to beat the strongest human Go player?Tobias Pfeiffer
This year AlphaGo shocked the world by decisively beating the strongest human Go player, Lee Sedol. An accomplishment that wasn't expected for years to come. How did AlphaGo do this? What algorithms did it use? What advances in AI made it possible? This talk will answer these questions.
The slides go through the implementation details of Google Deepmind's AlphaGo, a computer Go AI that defeated the European champion. The slides are targeted for beginners in the machine learning area.
Korean version (한국어 버젼): http://www.slideshare.net/ShaneSeungwhanMoon/ss-59226902
(please download and use libreoffice, the slides look slightly messed up here)
An introduction to the Shoes GUI toolkit for Ruby. These slides are from a talk I gave at the Ruby User Group Berlin (rug-b) on the 5th of July 2012.
So what is so special about Shoes? It is simple and inspired by the web, go check it out! =)
Shoes on!
This document discusses how to create mobile apps that feel native using only web technologies. It covers supporting features in Mobile Safari like local storage, CSS3 features, and geolocation. It recommends using web technologies over native due to quicker iteration times. Specific techniques covered include detecting browser type, adding home screen icons, startup images, going full screen, and viewport settings. The document also discusses frameworks like jQuery Mobile but notes native DOM APIs may be sufficient. It covers input features, touch vs click, animations, locking orientation, and performance tips. It acknowledges limitations of Android and webOS and recommends testing on actual devices. Finally, it discusses hybrid mobile frameworks like PhoneGap and Titanium that allow developing for multiple platforms using one code
From Config Management Sucks to #cfgmgmtlove Kris Buytaert
This document summarizes Kris Buytaert's talk on the evolution of config management from the 1990s to present day. It discusses early approaches like manual installations and system imaging tools. It then covers the rise of infrastructure as code using tools like Puppet, Chef, and Docker. The talk addresses challenges like getting operations teams to adopt new methods and complexities that can arise from dependencies and modules. It promotes treating infrastructure like code with development practices for versioning, testing, and continuous integration/deployment.
This document discusses the history and vision of Pinax, an open source platform for building community websites with Django. Pinax is a collection of reusable Django apps and provides conventions for structuring reusable apps. It aims to provide common features needed for community sites like user profiles, notifications, messaging, and groups/tribes out of the box. The document outlines the structure of Pinax, including external reusable apps managed through SVN externals, local apps incubated within Pinax, and included libraries. It also discusses the tradeoff of deciding how much to fix within Pinax versus leaving configurable for individual sites.
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
Presentation about open source tools to set up continuous integration and continuous deployment. Covers Git, Gitlab, Chef, Vagrant, Jenkins, Gatling, Dashing, TYPO3 Surf and some other tools. Shows some best practices for testing with Behat and Functional Testing.
The document discusses how GitHub uses tools like branches, pull requests, and bots to facilitate asynchronous and distributed collaboration. Pull requests are highlighted as a way to have code discussions, review changes, and integrate work without meetings or deadlines. Bots like Hubot are also discussed as a way to automate common tasks and integrate GitHub with other services. The use of simple tools and resistance to unnecessary process is advocated to allow focusing on shipping work.
This document summarizes a developer's process in building a mobile-first dashboard application called Dashery over 2016. It involved standing up a Rails web app, building an Express API, creating a CLI with COA, developing a React Native mobile app, and integrating Azure Functions for serverless components. Challenges included learning new technologies like Docker, Kubernetes, React, Redux, and React Native. The developer also worked to design APIs, SDKs, and automate builds and deployments to launch the minimum viable product.
Debugging Web Apps on Real Mobile DevicesDale Lane
This document discusses debugging web apps on mobile devices. It introduces Weinre, an open-source tool that allows debugging of web content on mobile devices via a remote web interface. The document demonstrates Weinre's capabilities such as viewing and editing the DOM, using the console, and logging. It also explains how Weinre works by injecting scripts into the target web page and forwarding debugging output to its server. Alternative debugging tools for different mobile platforms are also mentioned.
During this demonstration a practical example of a web app will be developed. Its nature will be ludic (based on Sesame Street characters) but complex enough to put into spot the different features of Grails likewise as Domain Classes, Validators, GORM, Controllers, Services, Testing, etc. It will cover all the commands necessary from the beginning of the project to its end. The whole point will underline what Grails specific traits are over the other rapid development models in use at the moment. Attendants will have a wide glance of involved technologies capacities and roles and of the style of working together with GGTS 3.4 and Grails 2.3, All necessary program code to develop the application will be supplied in advance.
This document summarizes the key aspects of developing mobile applications for the iPhone using Objective-C if you are a .NET developer familiar with C#. It outlines the hardware, software, and books required, compares the Objective-C and C# languages and Xcode and Visual Studio IDEs, demonstrates sample code, and discusses both the pleasures and pains of iPhone development compared to .NET. It also notes areas still lacking on the iPhone platform like dependency injection and ORM frameworks.
Developing cross platform desktop application with RubyAnis Ahmad
A brief introduction and example of developing desktop application with Ruby programming language. JRuby and shoesrb is discussed as platform.
Prepared for and Presented on Ruby Conference Bangladesh 2003.
I talked this presentation in GopherCon 2016.
Go Mobile (golang.org/x/mobile) is a project which shows new possibilities for mobile apps development.
Especially, for mobile games which requires high performance processing, Go can be expected to be an alternative to C and C++.
This session explains how to develop game apps using some packages such as app, event and sprite provided by Go Mobile project.
Furthermore the session introduces a way to call Android API from Go codes, and solutions for some problems which occurs when we distribute apps on Google Play.
I would like to show current capabilities and future potentials of Go Mobile.
What are some of the important features we can use today on mobile web browsers?
How HTML5 can help our users to be more productive?
Some of the answers are in these slides.
The document discusses tools that can be used to create dynamic charts without Adobe Flash. It notes that Apple devices like iPhone and iPad do not support Flash, and many mobile devices do not either. It then provides solutions like generating images dynamically from data, using HTML5 Canvas, or SVG. It lists specific charting libraries and APIs that allow dynamic chart generation for various programming languages and platforms like PHP, Python, Java, .NET, and JavaScript.
PhoneGap is an open source framework that allows developers to build mobile apps using HTML, CSS, and JavaScript. It works by wrapping web applications in wrappers for each mobile operating system so they can access native device APIs and app stores. Key features include access to device capabilities like the camera, geolocation, contacts and more. It supports building apps for Android, iOS, BlackBerry and other platforms.
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basicsJamie Andrei
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basics
An introduction to 360 video / VR basics, introducting the concept, several approach & technologies, through to 2x key 360 social platforms (fish where the fish are), through to a basic workflow & some hands on Google Cardboard demos.
Next Generation Apps with Google Chrome-By Dhruv GohilHardik Upadhyay
This document summarizes a presentation about building apps using voice and motion detection with Google Chrome. It discusses improving user experience by making interactions more natural and human-like using touch screens, voice input, and motion detection. Several demos and resources are listed that use the Web Speech API, GetUserMedia API, and motion tracking algorithms to enable voice control, translation, face detection and more within browsers using only JavaScript. The goal is to move beyond only visual interactions and make computers respond to voice and movement like humans do.
iOS is a great platform to work on, and many developers have spend some time looking at the platform. This talk is aimed at programmers with prior iOS experience who want to get into iOS in more depth.
This presentation will take you from a basic level of understanding of iOS to look at advanced topics that will make you apps more polished, better designed and, ideally, more successful.
Abstract concepts are no use, so in this talk we'll take some existing successful commercial iOS applications as a case study, and see how a selection of iOS technologies and techniques combine within it.
On the way, we'll see:
* How to use Objective-C language facilities to their best advantage
* How to exploit key iOS technologies to save you time and effort
* iOS development idioms that will improve the quality of your code
* Creating "universal" iPhone/iPad/retina applications without going mad
* Successful deployment and testing strategies
What's up with becoming a Staff Engineer? What does it mean? Is it just for people who want to keep coding? How do you become a Staff Engineer and what does the work entail? What if I told you, that being a Staff engineer actually required a lot of communication and collaboration skills?
In this talk, let's answer all those questions - as it's still quite fuzzy what a Staff engineer actually is.
What’s it like to work on Open Source projects? They’re all the same aren’t they? No, they’re not - the longer I worked on Open Source the more I realize how different the experience is for each one of them. Walk with me through some stories that happened to me in Open Source and let’s see what we can take away.
(please download and use libreoffice, the slides look slightly messed up here)
An introduction to the Shoes GUI toolkit for Ruby. These slides are from a talk I gave at the Ruby User Group Berlin (rug-b) on the 5th of July 2012.
So what is so special about Shoes? It is simple and inspired by the web, go check it out! =)
Shoes on!
This document discusses how to create mobile apps that feel native using only web technologies. It covers supporting features in Mobile Safari like local storage, CSS3 features, and geolocation. It recommends using web technologies over native due to quicker iteration times. Specific techniques covered include detecting browser type, adding home screen icons, startup images, going full screen, and viewport settings. The document also discusses frameworks like jQuery Mobile but notes native DOM APIs may be sufficient. It covers input features, touch vs click, animations, locking orientation, and performance tips. It acknowledges limitations of Android and webOS and recommends testing on actual devices. Finally, it discusses hybrid mobile frameworks like PhoneGap and Titanium that allow developing for multiple platforms using one code
From Config Management Sucks to #cfgmgmtlove Kris Buytaert
This document summarizes Kris Buytaert's talk on the evolution of config management from the 1990s to present day. It discusses early approaches like manual installations and system imaging tools. It then covers the rise of infrastructure as code using tools like Puppet, Chef, and Docker. The talk addresses challenges like getting operations teams to adopt new methods and complexities that can arise from dependencies and modules. It promotes treating infrastructure like code with development practices for versioning, testing, and continuous integration/deployment.
This document discusses the history and vision of Pinax, an open source platform for building community websites with Django. Pinax is a collection of reusable Django apps and provides conventions for structuring reusable apps. It aims to provide common features needed for community sites like user profiles, notifications, messaging, and groups/tribes out of the box. The document outlines the structure of Pinax, including external reusable apps managed through SVN externals, local apps incubated within Pinax, and included libraries. It also discusses the tradeoff of deciding how much to fix within Pinax versus leaving configurable for individual sites.
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
Presentation about open source tools to set up continuous integration and continuous deployment. Covers Git, Gitlab, Chef, Vagrant, Jenkins, Gatling, Dashing, TYPO3 Surf and some other tools. Shows some best practices for testing with Behat and Functional Testing.
The document discusses how GitHub uses tools like branches, pull requests, and bots to facilitate asynchronous and distributed collaboration. Pull requests are highlighted as a way to have code discussions, review changes, and integrate work without meetings or deadlines. Bots like Hubot are also discussed as a way to automate common tasks and integrate GitHub with other services. The use of simple tools and resistance to unnecessary process is advocated to allow focusing on shipping work.
This document summarizes a developer's process in building a mobile-first dashboard application called Dashery over 2016. It involved standing up a Rails web app, building an Express API, creating a CLI with COA, developing a React Native mobile app, and integrating Azure Functions for serverless components. Challenges included learning new technologies like Docker, Kubernetes, React, Redux, and React Native. The developer also worked to design APIs, SDKs, and automate builds and deployments to launch the minimum viable product.
Debugging Web Apps on Real Mobile DevicesDale Lane
This document discusses debugging web apps on mobile devices. It introduces Weinre, an open-source tool that allows debugging of web content on mobile devices via a remote web interface. The document demonstrates Weinre's capabilities such as viewing and editing the DOM, using the console, and logging. It also explains how Weinre works by injecting scripts into the target web page and forwarding debugging output to its server. Alternative debugging tools for different mobile platforms are also mentioned.
During this demonstration a practical example of a web app will be developed. Its nature will be ludic (based on Sesame Street characters) but complex enough to put into spot the different features of Grails likewise as Domain Classes, Validators, GORM, Controllers, Services, Testing, etc. It will cover all the commands necessary from the beginning of the project to its end. The whole point will underline what Grails specific traits are over the other rapid development models in use at the moment. Attendants will have a wide glance of involved technologies capacities and roles and of the style of working together with GGTS 3.4 and Grails 2.3, All necessary program code to develop the application will be supplied in advance.
This document summarizes the key aspects of developing mobile applications for the iPhone using Objective-C if you are a .NET developer familiar with C#. It outlines the hardware, software, and books required, compares the Objective-C and C# languages and Xcode and Visual Studio IDEs, demonstrates sample code, and discusses both the pleasures and pains of iPhone development compared to .NET. It also notes areas still lacking on the iPhone platform like dependency injection and ORM frameworks.
Developing cross platform desktop application with RubyAnis Ahmad
A brief introduction and example of developing desktop application with Ruby programming language. JRuby and shoesrb is discussed as platform.
Prepared for and Presented on Ruby Conference Bangladesh 2003.
I talked this presentation in GopherCon 2016.
Go Mobile (golang.org/x/mobile) is a project which shows new possibilities for mobile apps development.
Especially, for mobile games which requires high performance processing, Go can be expected to be an alternative to C and C++.
This session explains how to develop game apps using some packages such as app, event and sprite provided by Go Mobile project.
Furthermore the session introduces a way to call Android API from Go codes, and solutions for some problems which occurs when we distribute apps on Google Play.
I would like to show current capabilities and future potentials of Go Mobile.
What are some of the important features we can use today on mobile web browsers?
How HTML5 can help our users to be more productive?
Some of the answers are in these slides.
The document discusses tools that can be used to create dynamic charts without Adobe Flash. It notes that Apple devices like iPhone and iPad do not support Flash, and many mobile devices do not either. It then provides solutions like generating images dynamically from data, using HTML5 Canvas, or SVG. It lists specific charting libraries and APIs that allow dynamic chart generation for various programming languages and platforms like PHP, Python, Java, .NET, and JavaScript.
PhoneGap is an open source framework that allows developers to build mobile apps using HTML, CSS, and JavaScript. It works by wrapping web applications in wrappers for each mobile operating system so they can access native device APIs and app stores. Key features include access to device capabilities like the camera, geolocation, contacts and more. It supports building apps for Android, iOS, BlackBerry and other platforms.
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basicsJamie Andrei
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basics
An introduction to 360 video / VR basics, introducting the concept, several approach & technologies, through to 2x key 360 social platforms (fish where the fish are), through to a basic workflow & some hands on Google Cardboard demos.
Next Generation Apps with Google Chrome-By Dhruv GohilHardik Upadhyay
This document summarizes a presentation about building apps using voice and motion detection with Google Chrome. It discusses improving user experience by making interactions more natural and human-like using touch screens, voice input, and motion detection. Several demos and resources are listed that use the Web Speech API, GetUserMedia API, and motion tracking algorithms to enable voice control, translation, face detection and more within browsers using only JavaScript. The goal is to move beyond only visual interactions and make computers respond to voice and movement like humans do.
iOS is a great platform to work on, and many developers have spend some time looking at the platform. This talk is aimed at programmers with prior iOS experience who want to get into iOS in more depth.
This presentation will take you from a basic level of understanding of iOS to look at advanced topics that will make you apps more polished, better designed and, ideally, more successful.
Abstract concepts are no use, so in this talk we'll take some existing successful commercial iOS applications as a case study, and see how a selection of iOS technologies and techniques combine within it.
On the way, we'll see:
* How to use Objective-C language facilities to their best advantage
* How to exploit key iOS technologies to save you time and effort
* iOS development idioms that will improve the quality of your code
* Creating "universal" iPhone/iPad/retina applications without going mad
* Successful deployment and testing strategies
What's up with becoming a Staff Engineer? What does it mean? Is it just for people who want to keep coding? How do you become a Staff Engineer and what does the work entail? What if I told you, that being a Staff engineer actually required a lot of communication and collaboration skills?
In this talk, let's answer all those questions - as it's still quite fuzzy what a Staff engineer actually is.
What’s it like to work on Open Source projects? They’re all the same aren’t they? No, they’re not - the longer I worked on Open Source the more I realize how different the experience is for each one of them. Walk with me through some stories that happened to me in Open Source and let’s see what we can take away.
Metaphors are everywhere: Ideas to Improve Software Development Tobias Pfeiffer
Let’s embark on a journey together - a journey in which we’ll weave together the realms of basketball, fiction writing, game development and trading card games to explore how these seemingly unrelated domains surprisingly intersect with the world of software development, offering fresh perspectives and insights.
Discover how concepts, strategies, and principles from these diverse domains can enhance your software development skills and creativity. Let’s celebrate the power of interdisciplinary thinking, revealing how diverse interests can invigorate your approach to software development.
The document discusses various topics related to open source software including welcoming and helping users, releasing software early and often, treating open source software as a hobby rather than work, using micro libraries, benchmarking code performance, learning as you go, co-maintaining projects, reporting and fixing issues, being polite, discussing ideas for improvements, considering how software may be used, making open source more diverse and sustainable, and enjoying participating in open source projects.
Elixir & Phoenix – Fast, Concurrent and ExplicitTobias Pfeiffer
Key takeaways
What are Elixir and Phoenix? What makes them standout among programming languages and frameworks?
Why would I want to use Functional Programming, what are the benefits and why does it work so well for the web?
How capable is Erlang (Whatsapp example) performance and reliability wise and why would I consider it for a project?
How does explicitness help in system design?
Elixir and Phoenix are known for their speed, but that’s far from their only benefit. Elixir isn’t just a fast Ruby and Phoenix isn’t just Rails for Elixir. Through pattern matching, immutable data structures and new idioms your programs can not only become faster but more understandable and maintainable. This talk will take a look at what’s great, what you might miss and augment it with production experience and advice.
In the development world most people are striving for technical excellence: better code, faster run times, more convenient interfaces, better databases… But is that really what helps us create better software?
In the end software development is done by groups of people creating products together. To do that communication and collaboration are essential. You can be the best programmer ever, but if you can’t efficiently work with others what good does it do you?
This talk will introduce you to relevant, easy to grasp concepts of collaboration and communication as well as give you food for thought.
In the development world most people are striving for technical excellence: better code, faster run times, more convenient interfaces, better databases… But is that really what helps us create better software?
In the end software development is done by groups of people creating products together. To do that communication and collaboration are essential. You can be the best programmer ever, but if you can’t efficiently work with others what good does it do you?
This talk will introduce you to relevant, easy to grasp concepts of collaboration and communication as well as give you food for thought.
Do You Need That Validation? Let Me Call You Back About ItTobias Pfeiffer
Rails apps start nice and cute. Fast forward a year and business logic and view logic are entangled in our validations and callbacks - getting in our way at every turn. Wasn’t this supposed to be easy?
Let’s explore different approaches to improve the situation and untangle the web.
Elixir is great, so clearly we'll all rewrite our applications in Elixir. Mostly, you can't and shouldn't do that. This presentation will show you another path. You’ll see how at Liefery, we started with small steps instead of rewriting everything. This allowed us to reap the benefits earlier and get comfortable before getting deeper into it. We’ll examine in detail the tactics we used to create two Elixir apps for new requirements, and how we integrated them with our existing Rails code base.
Join us on our tale of adopting Elixir and Phoenix and see what we learned, what we loved, and what bumps we hit along the road
Stop Guessing and Start Measuring - Benchmarking in Practice (Lambdadays)Tobias Pfeiffer
“What’s the fastest way of doing this?” - you might ask yourself during development. Sure, you can guess - but how do you know? How long would that function take with a million elements? Is that tail-recursive function always faster?
Benchmarking is here to give you the answers, but there are many pitfalls in setting up a good benchmark and analyzing the results. This talk will guide you through, introduce best practices, and surprise you with some results along the way. You didn’t think that the order of arguments could influence its performance...or did you?
Many Rubyists branch out and take a look at other languages. What are similarities between those languages and ruby? What are differences? How does Ruby influence these languages?
In the development world most people are striving for technical excellence: better code, faster run times, more convenient interfaces, better databases, faster deployments… But is that really what makes us better at developing software?
In the end software development is done by groups of people creating products together. To do that communication and collaboration between humans is essential - you can be the best programmer ever, if you can’t efficiently work with others what good does it do you?
This talk will give you a primer and food for further thought.
Stop Guessing and Start Measuring - Benchmarking Practice (Poly Version)Tobias Pfeiffer
This is the Polyconf version of the talk, including a little MJIT vs. GraalVM rebuttal, JavaScript, SQL, Ruby and Elixir to be truly Poly.
“What’s the fastest way of doing this?” - you might ask yourself during development. Sure, you can guess, your intuition might be correct - but how do you know? Benchmarking is here to give you the answers, but there are many pitfalls in setting up a good benchmark and analyzing the results. This talk will guide you through, introduce best practices, and surprise you with some unexpected benchmarking results. You didn’t think that the order of arguments could influence its performance...or did you?
How fast is it really? Benchmarking in Practice (Ruby Version)Tobias Pfeiffer
The document describes various benchmarks performed to compare the performance of different Ruby implementations and algorithms for sorting arrays. The benchmarks show that:
1) CRuby generally outperforms JRuby in sorting performance, with CRuby sorting arrays 2-3 times faster than JRuby in the benchmarks.
2) The ".sort.reverse" approach is the fastest method for reversing a sorted array, performing up to 7 times faster than using a sorting block.
3) Using "sort_by" with a transformation is generally faster than a sorting block but slower than ".sort.reverse".
How fast ist it really? Benchmarking in practiceTobias Pfeiffer
“What’s the fastest way of doing this?” - you might ask yourself during development. Sure, you can guess what’s fastest or how long something will take, but do you know? How long does it take to sort a list of 1 Million elements? Are tail-recursive functions always the fastest?
Benchmarking is here to answer these questions. However, there are many pitfalls around setting up a good benchmark and interpreting the results. This talk will guide you through, introduce best practices and show you some surprising benchmarking results along the way.
Small lightning talk with some practical advice on how we integrated a Phoenix application in our general application landscape with a rails monolith and some frontend clients.
Elixir & Phoenix – fast, concurrent and explicitTobias Pfeiffer
Elixir and Phoenix are known for their speed, but that’s far from their only benefit. Elixir isn’t just a fast Ruby and Phoenix isn’t just Rails for Elixir. Through pattern matching, immutable data structures and new idioms your programs can not only become faster but more understandable and maintainable. This talk will take a look at what’s great, what you might miss and augment it with production experience and advice.
What did AlphaGo do to beat the strongest human Go player?Tobias Pfeiffer
This year AlphaGo shocked the world by decisively beating the strongest human Go player, Lee Sedol. An accomplishment that wasn't expected for years to come. How did AlphaGo do this? What algorithms did it use? What advances in AI made it possible? This talk will briefly introduce the game of Go, followed by the techniques and algorithms used by AlphaGo to answer these questions.
Elixir & Phoenix – fast, concurrent and explicitTobias Pfeiffer
Elixir and Phoenix are known for their speed, but that’s far from their only benefit. Elixir isn’t just a fast Ruby and Phoenix isn’t just Rails for Elixir. Through pattern matching, immutable data structures and new idioms your programs can not only become faster but more understandable and maintainable. This talk will take a look at what’s great, what you might miss and augment it with production experience and advice.
Generating privacy-protected synthetic data using Secludy and MilvusZilliz
During this demo, the founders of Secludy will demonstrate how their system utilizes Milvus to store and manipulate embeddings for generating privacy-protected synthetic data. Their approach not only maintains the confidentiality of the original data but also enhances the utility and scalability of LLMs under privacy constraints. Attendees, including machine learning engineers, data scientists, and data managers, will witness first-hand how Secludy's integration with Milvus empowers organizations to harness the power of LLMs securely and efficiently.
Monitoring and Managing Anomaly Detection on OpenShift.pdfTosin Akinosho
Monitoring and Managing Anomaly Detection on OpenShift
Overview
Dive into the world of anomaly detection on edge devices with our comprehensive hands-on tutorial. This SlideShare presentation will guide you through the entire process, from data collection and model training to edge deployment and real-time monitoring. Perfect for those looking to implement robust anomaly detection systems on resource-constrained IoT/edge devices.
Key Topics Covered
1. Introduction to Anomaly Detection
- Understand the fundamentals of anomaly detection and its importance in identifying unusual behavior or failures in systems.
2. Understanding Edge (IoT)
- Learn about edge computing and IoT, and how they enable real-time data processing and decision-making at the source.
3. What is ArgoCD?
- Discover ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes, and its role in deploying applications on edge devices.
4. Deployment Using ArgoCD for Edge Devices
- Step-by-step guide on deploying anomaly detection models on edge devices using ArgoCD.
5. Introduction to Apache Kafka and S3
- Explore Apache Kafka for real-time data streaming and Amazon S3 for scalable storage solutions.
6. Viewing Kafka Messages in the Data Lake
- Learn how to view and analyze Kafka messages stored in a data lake for better insights.
7. What is Prometheus?
- Get to know Prometheus, an open-source monitoring and alerting toolkit, and its application in monitoring edge devices.
8. Monitoring Application Metrics with Prometheus
- Detailed instructions on setting up Prometheus to monitor the performance and health of your anomaly detection system.
9. What is Camel K?
- Introduction to Camel K, a lightweight integration framework built on Apache Camel, designed for Kubernetes.
10. Configuring Camel K Integrations for Data Pipelines
- Learn how to configure Camel K for seamless data pipeline integrations in your anomaly detection workflow.
11. What is a Jupyter Notebook?
- Overview of Jupyter Notebooks, an open-source web application for creating and sharing documents with live code, equations, visualizations, and narrative text.
12. Jupyter Notebooks with Code Examples
- Hands-on examples and code snippets in Jupyter Notebooks to help you implement and test anomaly detection models.
What is an RPA CoE? Session 1 – CoE VisionDianaGray10
In the first session, we will review the organization's vision and how this has an impact on the COE Structure.
Topics covered:
• The role of a steering committee
• How do the organization’s priorities determine CoE Structure?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/temporal-event-neural-networks-a-more-efficient-alternative-to-the-transformer-a-presentation-from-brainchip/
Chris Jones, Director of Product Management at BrainChip , presents the “Temporal Event Neural Networks: A More Efficient Alternative to the Transformer” tutorial at the May 2024 Embedded Vision Summit.
The expansion of AI services necessitates enhanced computational capabilities on edge devices. Temporal Event Neural Networks (TENNs), developed by BrainChip, represent a novel and highly efficient state-space network. TENNs demonstrate exceptional proficiency in handling multi-dimensional streaming data, facilitating advancements in object detection, action recognition, speech enhancement and language model/sequence generation. Through the utilization of polynomial-based continuous convolutions, TENNs streamline models, expedite training processes and significantly diminish memory requirements, achieving notable reductions of up to 50x in parameters and 5,000x in energy consumption compared to prevailing methodologies like transformers.
Integration with BrainChip’s Akida neuromorphic hardware IP further enhances TENNs’ capabilities, enabling the realization of highly capable, portable and passively cooled edge devices. This presentation delves into the technical innovations underlying TENNs, presents real-world benchmarks, and elucidates how this cutting-edge approach is positioned to revolutionize edge AI across diverse applications.
The Microsoft 365 Migration Tutorial For Beginner.pptxoperationspcvita
This presentation will help you understand the power of Microsoft 365. However, we have mentioned every productivity app included in Office 365. Additionally, we have suggested the migration situation related to Office 365 and how we can help you.
You can also read: https://www.systoolsgroup.com/updates/office-365-tenant-to-tenant-migration-step-by-step-complete-guide/
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.
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyScyllaDB
Freshworks creates AI-boosted business software that helps employees work more efficiently and effectively. Managing data across multiple RDBMS and NoSQL databases was already a challenge at their current scale. To prepare for 10X growth, they knew it was time to rethink their database strategy. Learn how they architected a solution that would simplify scaling while keeping costs under control.
Conversational agents, or chatbots, are increasingly used to access all sorts of services using natural language. While open-domain chatbots - like ChatGPT - can converse on any topic, task-oriented chatbots - the focus of this paper - are designed for specific tasks, like booking a flight, obtaining customer support, or setting an appointment. Like any other software, task-oriented chatbots need to be properly tested, usually by defining and executing test scenarios (i.e., sequences of user-chatbot interactions). However, there is currently a lack of methods to quantify the completeness and strength of such test scenarios, which can lead to low-quality tests, and hence to buggy chatbots.
To fill this gap, we propose adapting mutation testing (MuT) for task-oriented chatbots. To this end, we introduce a set of mutation operators that emulate faults in chatbot designs, an architecture that enables MuT on chatbots built using heterogeneous technologies, and a practical realisation as an Eclipse plugin. Moreover, we evaluate the applicability, effectiveness and efficiency of our approach on open-source chatbots, with promising results.
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...Jason Yip
The typical problem in product engineering is not bad strategy, so much as “no strategy”. This leads to confusion, lack of motivation, and incoherent action. The next time you look for a strategy and find an empty space, instead of waiting for it to be filled, I will show you how to fill it in yourself. If you’re wrong, it forces a correction. If you’re right, it helps create focus. I’ll share how I’ve approached this in the past, both what works and lessons for what didn’t work so well.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/how-axelera-ai-uses-digital-compute-in-memory-to-deliver-fast-and-energy-efficient-computer-vision-a-presentation-from-axelera-ai/
Bram Verhoef, Head of Machine Learning at Axelera AI, presents the “How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-efficient Computer Vision” tutorial at the May 2024 Embedded Vision Summit.
As artificial intelligence inference transitions from cloud environments to edge locations, computer vision applications achieve heightened responsiveness, reliability and privacy. This migration, however, introduces the challenge of operating within the stringent confines of resource constraints typical at the edge, including small form factors, low energy budgets and diminished memory and computational capacities. Axelera AI addresses these challenges through an innovative approach of performing digital computations within memory itself. This technique facilitates the realization of high-performance, energy-efficient and cost-effective computer vision capabilities at the thin and thick edge, extending the frontier of what is achievable with current technologies.
In this presentation, Verhoef unveils his company’s pioneering chip technology and demonstrates its capacity to deliver exceptional frames-per-second performance across a range of standard computer vision networks typical of applications in security, surveillance and the industrial sector. This shows that advanced computer vision can be accessible and efficient, even at the very edge of our technological ecosystem.
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsDianaGray10
Join us to learn how UiPath Apps can directly and easily interact with prebuilt connectors via Integration Service--including Salesforce, ServiceNow, Open GenAI, and more.
The best part is you can achieve this without building a custom workflow! Say goodbye to the hassle of using separate automations to call APIs. By seamlessly integrating within App Studio, you can now easily streamline your workflow, while gaining direct access to our Connector Catalog of popular applications.
We’ll discuss and demo the benefits of UiPath Apps and connectors including:
Creating a compelling user experience for any software, without the limitations of APIs.
Accelerating the app creation process, saving time and effort
Enjoying high-performance CRUD (create, read, update, delete) operations, for
seamless data management.
Speakers:
Russell Alfeche, Technology Leader, RPA at qBotic and UiPath MVP
Charlie Greenberg, host
Dandelion Hashtable: beyond billion requests per second on a commodity serverAntonios Katsarakis
This slide deck presents DLHT, a concurrent in-memory hashtable. Despite efforts to optimize hashtables, that go as far as sacrificing core functionality, state-of-the-art designs still incur multiple memory accesses per request and block request processing in three cases. First, most hashtables block while waiting for data to be retrieved from memory. Second, open-addressing designs, which represent the current state-of-the-art, either cannot free index slots on deletes or must block all requests to do so. Third, index resizes block every request until all objects are copied to the new index. Defying folklore wisdom, DLHT forgoes open-addressing and adopts a fully-featured and memory-aware closed-addressing design based on bounded cache-line-chaining. This design offers lock-free index operations and deletes that free slots instantly, (2) completes most requests with a single memory access, (3) utilizes software prefetching to hide memory latencies, and (4) employs a novel non-blocking and parallel resizing. In a commodity server and a memory-resident workload, DLHT surpasses 1.6B requests per second and provides 3.5x (12x) the throughput of the state-of-the-art closed-addressing (open-addressing) resizable hashtable on Gets (Deletes).
14. Further information
● http://shoesrb.com
● http://shoesrb.com/manual/Hello.html
● shoes@librelist.com
● #shoes on freenode
● @shoooesrb
● http://github.com/shoes/shoes4 ← We could use
some help!
● The Return of Shoes by Steve Klabnik
● Nobody Knows Shoes by _why