There's an ever-increasing number of modules for sending mail with Perl. With all of the choices that CPAN offers, how does one choose which module best suits their needs? It can be hard to navigate this growing sea of choice, but I spent half a year working with rjbs, whom many of you know as one of Perl's premiere email hackers. I learned a lot from him, and I want to share that knowledge with you to help make your email code suck less.
In this talk, I'll provide a small collection of modules for sending email with Perl, with example code. You really only need to know a few to be productive for most tasks, and only a few more if you have unusual requirements or are an email power user.
This document discusses using a finite state automaton (FSA) model in Perl to automate tracking turns in tabletop roleplaying game (RPG) combat simulations. It describes how FSA models fit the deterministic state transitions of RPG combat and how the FSA::Engine module can be used to implement this. Undo support is added by snapshotting and rolling back the FSA's state using PadWalker. The code presented provides a basic proof-of-concept and could be expanded to support additional RPG systems, state serialization, and other combat mechanics.
This document summarizes a talk about using ZFS and FreeBSD jails. It discusses how ZFS provides features like snapshots, clones, and a copy-on-write data model that make creating and managing jails quick and efficient. It also gives examples of workflows like per-developer environments, dev/staging/production, and using ZFS snapshots to easily recover from mistakes or promote changes between environments.
- Node.js is a platform for building scalable network applications. It uses non-blocking I/O and event-driven architecture to handle many connections concurrently using a single-threaded event loop.
- Node.js uses Google's V8 JavaScript engine and provides a module system, I/O bindings, and common protocols to build network programs easily. Popular uses include real-time web applications, file uploading, and streaming.
- While Node.js is ready for many production uses, things like lost stack traces and limited ability to utilize multiple cores present challenges for some workloads. However, an active community provides support through mailing lists, IRC, and over 1,000 modules in its package manager.
The document discusses the history and evolution of Perl web development. It covers early tools like CGI.pm and mod_perl that allowed Perl to be used for web apps. It then discusses issues with these approaches and the rise of reusable code repositories like Matt's Script Archive. It outlines how Perl best practices and the maturation of CPAN helped improve code quality. Key modern frameworks like Catalyst, Plack, Moose and DBIx::Class are also summarized.
What happens when the digital tools and platforms we make and use for communication and entertainment are hijacked for terrorism, violence against the vulnerable and nefarious transactions? What role do designers and developers play? Are we complicit as creators of these technologies and products? Should we police them or fight back? As Portfolio Lead for Northern Lab, Northern Trust's internal innovation startup focused on client and partner experience, Antonio will share a mix of provocative scenarios torn from today's headlines and compelling stories where activism and technology facilitated peace—and war.
As a call-to-action for designers and developers to engage in projects capable of transformational change, he'll explore the question: How might technology foster new experiences to better accelerate social activism and make the world a smarter, safer place?
Sending Email with ASP.NET Using POP3, MIME And FTP Servers is quite straight forward. The .NET structure accompanies a whole namespace for taking care of messages, the System.Net.Mail namespace.
How I Learned to Stop Worrying and Love Email::: The 2007 PEP Talk!!Ricardo Signes
Ready? 250 OK! Everybody loves email, right? Right! What better language than Perl for handling all your email needs? None, right? Right! After all, with about nine hundred email modules on the CPAN, the only question is: which tool is right for the job?
This year, the Perl Email Project is going to tell you what's what. We'll see what modules solve what problems, how they differ, and how they (may or my not) work together.
We'll also show what problems aren't well-solved, what is in the works to make it happen, and how you can help.
This document discusses using a finite state automaton (FSA) model in Perl to automate tracking turns in tabletop roleplaying game (RPG) combat simulations. It describes how FSA models fit the deterministic state transitions of RPG combat and how the FSA::Engine module can be used to implement this. Undo support is added by snapshotting and rolling back the FSA's state using PadWalker. The code presented provides a basic proof-of-concept and could be expanded to support additional RPG systems, state serialization, and other combat mechanics.
This document summarizes a talk about using ZFS and FreeBSD jails. It discusses how ZFS provides features like snapshots, clones, and a copy-on-write data model that make creating and managing jails quick and efficient. It also gives examples of workflows like per-developer environments, dev/staging/production, and using ZFS snapshots to easily recover from mistakes or promote changes between environments.
- Node.js is a platform for building scalable network applications. It uses non-blocking I/O and event-driven architecture to handle many connections concurrently using a single-threaded event loop.
- Node.js uses Google's V8 JavaScript engine and provides a module system, I/O bindings, and common protocols to build network programs easily. Popular uses include real-time web applications, file uploading, and streaming.
- While Node.js is ready for many production uses, things like lost stack traces and limited ability to utilize multiple cores present challenges for some workloads. However, an active community provides support through mailing lists, IRC, and over 1,000 modules in its package manager.
The document discusses the history and evolution of Perl web development. It covers early tools like CGI.pm and mod_perl that allowed Perl to be used for web apps. It then discusses issues with these approaches and the rise of reusable code repositories like Matt's Script Archive. It outlines how Perl best practices and the maturation of CPAN helped improve code quality. Key modern frameworks like Catalyst, Plack, Moose and DBIx::Class are also summarized.
What happens when the digital tools and platforms we make and use for communication and entertainment are hijacked for terrorism, violence against the vulnerable and nefarious transactions? What role do designers and developers play? Are we complicit as creators of these technologies and products? Should we police them or fight back? As Portfolio Lead for Northern Lab, Northern Trust's internal innovation startup focused on client and partner experience, Antonio will share a mix of provocative scenarios torn from today's headlines and compelling stories where activism and technology facilitated peace—and war.
As a call-to-action for designers and developers to engage in projects capable of transformational change, he'll explore the question: How might technology foster new experiences to better accelerate social activism and make the world a smarter, safer place?
Sending Email with ASP.NET Using POP3, MIME And FTP Servers is quite straight forward. The .NET structure accompanies a whole namespace for taking care of messages, the System.Net.Mail namespace.
How I Learned to Stop Worrying and Love Email::: The 2007 PEP Talk!!Ricardo Signes
Ready? 250 OK! Everybody loves email, right? Right! What better language than Perl for handling all your email needs? None, right? Right! After all, with about nine hundred email modules on the CPAN, the only question is: which tool is right for the job?
This year, the Perl Email Project is going to tell you what's what. We'll see what modules solve what problems, how they differ, and how they (may or my not) work together.
We'll also show what problems aren't well-solved, what is in the works to make it happen, and how you can help.
Ruby can be used for both web development and other tasks like CGI programming and as a replacement for PHP. It allows writing web servers, FTP daemons, and more in Ruby. The document discusses how to write basic CGI scripts in Ruby, process forms, create HTML forms, handle cookies and sessions, and send emails with attachments using the Ruby Net::SMTP library. Key methods in the Ruby CGI class are also outlined.
Node mailer example how to send email using nodemailer with gmail & mailtrapKaty Slemon
This document discusses how to send emails from a Node.js application using Nodemailer. It explains that Nodemailer is a popular module for sending emails and describes how to set up Nodemailer with either a Mailtrap or Gmail account. The document provides step-by-step instructions for sending basic text emails, HTML emails, and emails with attachments from a Nodemailer application.
This document discusses different approaches to processing emails in Ruby applications. It recommends using Postfix to receive emails and buffer them, then forwarding to an EventMachine SMTP server for processing. Example code is provided for configuring Postfix and writing a simple EventMachine SMTP server class to process incoming emails by chunks, validate recipients, and handle completed messages. More information and resources are provided for implementing this email processing architecture.
The document provides guidelines for writing efficient .NET code through best practices for naming conventions, formatting, error handling, commenting code, and more. Some key recommendations include using PascalCasing for classes and methods and camelCasing for variables, adding meaningful comments, handling exceptions specifically rather than generically, and ensuring code is clean and readable to minimize the need for comments.
Email evidence can be found in email headers, server logs, and log files. Email headers contain information added at each mail server along the path of the email. This information includes IP addresses and time/date stamps. Server logs and log files also record IP addresses, times, and other details about email messages. Investigators can use this information in email headers, logs, and files to trace the origin of emails and identify potentially spoofed messages.
Here are a few things you can try to attach a file from a different directory:
1. Specify the full path to the file instead of just the filename:
```csharp
attachment = new System.Net.Mail.Attachment(@"C:\Path\To\File\Filename.ext");
```
2. Make sure the IIS user has read permissions to the directory containing the file.
3. Try using a relative path instead of absolute, e.g.
```csharp
attachment = new System.Net.Mail.Attachment(@"\Subfolder\Filename.ext");
```
4. Save the file temporarily in the web application's directory before attaching:
The document discusses best practices for sending bulk emails using PHP including using libraries like Zend_Mail and Swiftmailer, setting proper headers and authentication, managing opt-in subscriber lists, handling unsubscribes, and avoiding blacklisting. It also provides tips for identity and branding, list management, bounce handling, and delivery best practices. Sample PHP code is given to illustrate techniques for sending emails and processing bounce addresses.
Классифицируем текст в iOS без CoreML: как и зачем? EatDog
Доклад Вячеслава Володько для Съесть собаку #16: iOS 21/03/2019
Тезисы:
- Классификация текстов с помощью встроенных в iOS SDK средств.
- Ограничения NLLanguageRecognizer и MLTextClassifier.
- Построение собственного классификатора текстов.
- Техники, которые позволяют встроить классификатор в AppExtension.
- Оценка эффективности классификатора.
Action Mailer allows Rails applications to send and receive emails. It provides configuration options like specifying an SMTP server or delivery method. Email messages can be generated by creating Mailers with methods that define the recipient, subject, body, and other email fields. A controller handles calling these mailer methods to send emails. Views can contain a form to collect email content that gets passed to the controller and used to deliver emails through the mailer.
The document describes an advanced Perl techniques training course that covers new features in Perl 5.10, dates and times using the DateTime module, testing and benchmarking code, and accessing databases. The one-day course will move quickly and cover dates/times, testing, databases, profiling, object-oriented programming with Moose, templates, and MVC frameworks. Resources from the training will be available online.
This document discusses how to configure default values for the PVMail class in ProdigyView. It explains how to set default values for the sender, mailer, SMTP host, username, password, and port. These default values will be used if not overridden when calling methods like PVMail::sendMail() or PVMail::sendEmailSMTP(). The document also provides links to examples, the API reference, and more tutorials.
Setting up your own email server with hmailserverrifqirr
This document provides instructions for setting up an email server using hMailServer on Windows. It discusses configuring DNS records, installing hMailServer, and configuring the server by creating a domain, user accounts, aliases and settings. It also covers testing the email environment and preventing it from being an open relay. Setting up an email server from home requires additional considerations due to dynamic IP addresses and potential ISP restrictions.
This document discusses sending emails using Python's SMTP module. It explains that SMTP is used to send and route emails between servers. The smtplib module defines an SMTP client session object that can be used to send mail. It provides an example of using smtplib to send an email by specifying the sender, receivers, and message. It also shows how to send an HTML email by setting the MIME version, content type, and character set in the message.
This document discusses sending emails using Python's SMTP module. It explains that SMTP is used to send and route emails between servers. The smtplib module defines an SMTP client session object that can be used to send mail. It provides an example of using smtplib to send an email by specifying the sender, receivers, and message. It also describes how to send an HTML email by specifying MIME version, content type, and character set in the message.
This document provides an overview and summary of a lecture on using the Sinatra web framework.
The lecture covers:
- Announcements about assignment deadlines and office hours
- An introduction to Sinatra including what it is, how it works, and its benefits
- Explanations of routes, parameters, strings, and if statements for building web applications in Sinatra
- Examples of creating forms and handling requests
The document discusses XML::Writer::Simple, a Perl module that allows for simple generation of XML by providing functions for each XML tag and following the Perl data structure, avoiding the need to manually write XML code. It provides examples of generating XML using this module compared to traditional approaches, and describes features like declaring valid tags, using DTDs, attributes, and custom "PowerTags" to generate nested XML structures.
The document discusses various methods for hiding email addresses from page source to prevent harvesting by spam bots, including: displaying the email using plain text or obfuscated text, unicode characters, hex values, HTML comments, fake emails, HTTP redirects, Javascript, encryption, AJAX obfuscation, images, CSS techniques, Flash, and forms. Each method has advantages and disadvantages regarding usability, accessibility, and effectiveness against bots. Combining methods can produce hybrid approaches, and the best method depends on priorities like accessibility versus anti-spam protection.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Ruby can be used for both web development and other tasks like CGI programming and as a replacement for PHP. It allows writing web servers, FTP daemons, and more in Ruby. The document discusses how to write basic CGI scripts in Ruby, process forms, create HTML forms, handle cookies and sessions, and send emails with attachments using the Ruby Net::SMTP library. Key methods in the Ruby CGI class are also outlined.
Node mailer example how to send email using nodemailer with gmail & mailtrapKaty Slemon
This document discusses how to send emails from a Node.js application using Nodemailer. It explains that Nodemailer is a popular module for sending emails and describes how to set up Nodemailer with either a Mailtrap or Gmail account. The document provides step-by-step instructions for sending basic text emails, HTML emails, and emails with attachments from a Nodemailer application.
This document discusses different approaches to processing emails in Ruby applications. It recommends using Postfix to receive emails and buffer them, then forwarding to an EventMachine SMTP server for processing. Example code is provided for configuring Postfix and writing a simple EventMachine SMTP server class to process incoming emails by chunks, validate recipients, and handle completed messages. More information and resources are provided for implementing this email processing architecture.
The document provides guidelines for writing efficient .NET code through best practices for naming conventions, formatting, error handling, commenting code, and more. Some key recommendations include using PascalCasing for classes and methods and camelCasing for variables, adding meaningful comments, handling exceptions specifically rather than generically, and ensuring code is clean and readable to minimize the need for comments.
Email evidence can be found in email headers, server logs, and log files. Email headers contain information added at each mail server along the path of the email. This information includes IP addresses and time/date stamps. Server logs and log files also record IP addresses, times, and other details about email messages. Investigators can use this information in email headers, logs, and files to trace the origin of emails and identify potentially spoofed messages.
Here are a few things you can try to attach a file from a different directory:
1. Specify the full path to the file instead of just the filename:
```csharp
attachment = new System.Net.Mail.Attachment(@"C:\Path\To\File\Filename.ext");
```
2. Make sure the IIS user has read permissions to the directory containing the file.
3. Try using a relative path instead of absolute, e.g.
```csharp
attachment = new System.Net.Mail.Attachment(@"\Subfolder\Filename.ext");
```
4. Save the file temporarily in the web application's directory before attaching:
The document discusses best practices for sending bulk emails using PHP including using libraries like Zend_Mail and Swiftmailer, setting proper headers and authentication, managing opt-in subscriber lists, handling unsubscribes, and avoiding blacklisting. It also provides tips for identity and branding, list management, bounce handling, and delivery best practices. Sample PHP code is given to illustrate techniques for sending emails and processing bounce addresses.
Классифицируем текст в iOS без CoreML: как и зачем? EatDog
Доклад Вячеслава Володько для Съесть собаку #16: iOS 21/03/2019
Тезисы:
- Классификация текстов с помощью встроенных в iOS SDK средств.
- Ограничения NLLanguageRecognizer и MLTextClassifier.
- Построение собственного классификатора текстов.
- Техники, которые позволяют встроить классификатор в AppExtension.
- Оценка эффективности классификатора.
Action Mailer allows Rails applications to send and receive emails. It provides configuration options like specifying an SMTP server or delivery method. Email messages can be generated by creating Mailers with methods that define the recipient, subject, body, and other email fields. A controller handles calling these mailer methods to send emails. Views can contain a form to collect email content that gets passed to the controller and used to deliver emails through the mailer.
The document describes an advanced Perl techniques training course that covers new features in Perl 5.10, dates and times using the DateTime module, testing and benchmarking code, and accessing databases. The one-day course will move quickly and cover dates/times, testing, databases, profiling, object-oriented programming with Moose, templates, and MVC frameworks. Resources from the training will be available online.
This document discusses how to configure default values for the PVMail class in ProdigyView. It explains how to set default values for the sender, mailer, SMTP host, username, password, and port. These default values will be used if not overridden when calling methods like PVMail::sendMail() or PVMail::sendEmailSMTP(). The document also provides links to examples, the API reference, and more tutorials.
Setting up your own email server with hmailserverrifqirr
This document provides instructions for setting up an email server using hMailServer on Windows. It discusses configuring DNS records, installing hMailServer, and configuring the server by creating a domain, user accounts, aliases and settings. It also covers testing the email environment and preventing it from being an open relay. Setting up an email server from home requires additional considerations due to dynamic IP addresses and potential ISP restrictions.
This document discusses sending emails using Python's SMTP module. It explains that SMTP is used to send and route emails between servers. The smtplib module defines an SMTP client session object that can be used to send mail. It provides an example of using smtplib to send an email by specifying the sender, receivers, and message. It also shows how to send an HTML email by setting the MIME version, content type, and character set in the message.
This document discusses sending emails using Python's SMTP module. It explains that SMTP is used to send and route emails between servers. The smtplib module defines an SMTP client session object that can be used to send mail. It provides an example of using smtplib to send an email by specifying the sender, receivers, and message. It also describes how to send an HTML email by specifying MIME version, content type, and character set in the message.
This document provides an overview and summary of a lecture on using the Sinatra web framework.
The lecture covers:
- Announcements about assignment deadlines and office hours
- An introduction to Sinatra including what it is, how it works, and its benefits
- Explanations of routes, parameters, strings, and if statements for building web applications in Sinatra
- Examples of creating forms and handling requests
The document discusses XML::Writer::Simple, a Perl module that allows for simple generation of XML by providing functions for each XML tag and following the Perl data structure, avoiding the need to manually write XML code. It provides examples of generating XML using this module compared to traditional approaches, and describes features like declaring valid tags, using DTDs, attributes, and custom "PowerTags" to generate nested XML structures.
The document discusses various methods for hiding email addresses from page source to prevent harvesting by spam bots, including: displaying the email using plain text or obfuscated text, unicode characters, hex values, HTML comments, fake emails, HTTP redirects, Javascript, encryption, AJAX obfuscation, images, CSS techniques, Flash, and forms. Each method has advantages and disadvantages regarding usability, accessibility, and effectiveness against bots. Combining methods can produce hybrid approaches, and the best method depends on priorities like accessibility versus anti-spam protection.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
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
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
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.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
14. Email::Valid
✤ Simple email address validation
✤ One (class) method: address($address)
✤ Call method
✤ Receive Bacon*
Bacon may or may not be imaginary. Consult your Perl vendor for details.
15. Email::Valid
✤ Simple email address validation
✤ One (class) method: address($address)
✤ Call method
✤ Receive Bacon*
✤ Also receive true/false value depending upon whether it’s valid
Bacon may or may not be imaginary. Consult your Perl vendor for details.
16. Email::Valid
✤ Simple email address validation
✤ One (class) method: address($address)
✤ Call method
✤ Receive Bacon*
✤ Also receive true/false value depending upon whether it’s valid
✤ There are actually lots of methods for inspecting the address, but
address is the one you’re likely to use the most.
Bacon may or may not be imaginary. Consult your Perl vendor for details.
17. Usage Example
#!env perl
use 5.014;
use strictures 1;
use Email::Valid;
say Email::Valid->address('foo') ? "valid" : "not";
say Email::Valid->address('foo@bar.com') ? "valid" : "not";
say Email::Valid->address('foo+baz@bar.com') ? "valid" : "not";
# yields this:
not
valid
valid
19. Email::Address
✤ Used for accessing different parts of an address
20. Email::Address
✤ Used for accessing different parts of an address
✤ Some mutators, but primarily accessors
21. Email::Address
✤ Used for accessing different parts of an address
✤ Some mutators, but primarily accessors
✤ Two constructors: parse and new
22. Email::Address
✤ Used for accessing different parts of an address
✤ Some mutators, but primarily accessors
✤ Two constructors: parse and new
✤ parse returns a list of addresses
23. Email::Address
✤ Used for accessing different parts of an address
✤ Some mutators, but primarily accessors
✤ Two constructors: parse and new
✤ parse returns a list of addresses
✤ new accepts a phrase, address, and comment*
Actually it accepts a fourth argument, an original string. But you probably should ignore it.
26. Email::Address Methods
✤ address
✤ get/set actual address, e.g. foo@bar.com
✤ host
✤ get/set the hostname of the address, e.g. bar.com
27. Email::Address Methods
✤ address
✤ get/set actual address, e.g. foo@bar.com
✤ host
✤ get/set the hostname of the address, e.g. bar.com
✤ user
✤ get/set the local part of the address, e.g. foo
28. Usage example
#!env perl
use 5.014;
use strictures 1;
use Email::Address;
my ($one, $two, $three) = Email::Address->parse(
'foo@bar.com, baz@quux.com, "hello" <me@example.com>'
);
say $three; # stringify overload
say $three->address; # raw address, no phrase/comment.
say $three->host;
say $three->user;
# yields:
"hello" <me@example.com>
example.com
me
me@example.com
36. Methods of Email::MIME
✤ body_str_set($unicode)
✤ sets body to given Unicode characters. Warning: clears other parts!
37. Methods of Email::MIME
✤ body_str_set($unicode)
✤ sets body to given Unicode characters. Warning: clears other parts!
✤ header_str_set($header, $unicode)
✤ like body_str_set, but for headers.
38. Methods of Email::MIME
✤ body_str_set($unicode)
✤ sets body to given Unicode characters. Warning: clears other parts!
✤ header_str_set($header, $unicode)
✤ like body_str_set, but for headers.
✤ parts_set(@email_mime_objects)
✤ replaces the parts of the object with the given parts
39. Methods of Email::MIME
✤ body_str_set($unicode)
✤ sets body to given Unicode characters. Warning: clears other parts!
✤ header_str_set($header, $unicode)
✤ like body_str_set, but for headers.
✤ parts_set(@email_mime_objects)
✤ replaces the parts of the object with the given parts
✤ parts_add(@more_parts)
✤ appends, not sets
40. Methods of Email::MIME
✤ body_str_set($unicode)
✤ sets body to given Unicode characters. Warning: clears other parts!
✤ header_str_set($header, $unicode)
✤ like body_str_set, but for headers.
✤ parts_set(@email_mime_objects)
✤ replaces the parts of the object with the given parts
✤ parts_add(@more_parts)
✤ appends, not sets
✤ walk_parts($coderef)
✤ give it a callback, gets called with Email::MIME objects
41. From the new perlfaq9:
#!env perl
use strictures 1;
use Email::MIME;
my $message = Email::MIME->create(
header_str => [
From => 'you@example.com',
To => 'friend@example.com',
Subject => 'Happy birthday!',
],
body => 'Happy birthday to you!',
);
42. If we call
$message->as_string,
From: you@example.com
To: friend@example.com
Subject: Happy birthday!
Date: Sat, 8 Oct 2011 16:56:41 -0400
MIME-Version: 1.0
Happy birthday to you!
44. Email::Sender
✤ Moose-based interface to different ways of sending email messages
45. Email::Sender
✤ Moose-based interface to different ways of sending email messages
✤ Different transports for different purposes
46. Email::Sender
✤ Moose-based interface to different ways of sending email messages
✤ Different transports for different purposes
✤ Suggested interface (for now) is Email::Sender::Simple
47. Email::Sender
✤ Moose-based interface to different ways of sending email messages
✤ Different transports for different purposes
✤ Suggested interface (for now) is Email::Sender::Simple
✤ This exposes one function: sendmail().
48. Email::Sender
✤ Moose-based interface to different ways of sending email messages
✤ Different transports for different purposes
✤ Suggested interface (for now) is Email::Sender::Simple
✤ This exposes one function: sendmail().
✤ sendmail() accepts Email::MIME objects, so we’re in business.
50. Email::Sender Transport Gazetteer
✤ Email::Sender::Transport::Sendmail
✤ tries to use /usr/sbin/sendmail or the like; you probably need to
smarthost / relay
51. Email::Sender Transport Gazetteer
✤ Email::Sender::Transport::Sendmail
✤ tries to use /usr/sbin/sendmail or the like; you probably need to
smarthost / relay
✤ Email::Sender::Transport::SMTP
✤ Send mail through an SMTP server, optionally with SASL
authentication.
52. Email::Sender Transport Gazetteer
✤ Email::Sender::Transport::Sendmail
✤ tries to use /usr/sbin/sendmail or the like; you probably need to
smarthost / relay
✤ Email::Sender::Transport::SMTP
✤ Send mail through an SMTP server, optionally with SASL
authentication.
✤ Email::Sender::Transport::SMTP::TLS
✤ Like the above, but uses TLS. If you use Gmail, you’ll need this.
53. Email::Sender Transport Gazetteer
✤ Email::Sender::Transport::Sendmail
✤ tries to use /usr/sbin/sendmail or the like; you probably need to
smarthost / relay
✤ Email::Sender::Transport::SMTP
✤ Send mail through an SMTP server, optionally with SASL
authentication.
✤ Email::Sender::Transport::SMTP::TLS
✤ Like the above, but uses TLS. If you use Gmail, you’ll need this.
✤ Email::Sender::Transport::Test
✤ Delivers to an in-memory structure for analysis
54. Example Usages
sendmail($message); # default transport
sendmail(
$message,
{
transport => Email::Sender::Transport::SMTP->new(
host => ‘mx.example.com’,
port => 25,
);
}
);
55. Bonus material: pmail(1) demo
When You Run Out Of Material, Demo A Very Flexible Program You Wrote
Editor's Notes
\n
\n
There are a lot of email modules on CPAN. A lot. No, really. I could fill 20 minutes just listing them all. This talk only has time to focus on the most recommended modules.\n\nThere&#x2019;s a number of things you need to do to make sure you&#x2019;re sending email correctly, including address validation, message construction, and actually sending the message. The tools to do this have evolved over the years. Some have fallen out of favor because other tools do 80% of the work in 20% of the code. Others are just deprecated because of problems in architecture or implementation. This talk will be covering the current recommended state of the art \n\nYes, they use Moose. Deal with it.\n
There are a lot of email modules on CPAN. A lot. No, really. I could fill 20 minutes just listing them all. This talk only has time to focus on the most recommended modules.\n\nThere&#x2019;s a number of things you need to do to make sure you&#x2019;re sending email correctly, including address validation, message construction, and actually sending the message. The tools to do this have evolved over the years. Some have fallen out of favor because other tools do 80% of the work in 20% of the code. Others are just deprecated because of problems in architecture or implementation. This talk will be covering the current recommended state of the art \n\nYes, they use Moose. Deal with it.\n
There are a lot of email modules on CPAN. A lot. No, really. I could fill 20 minutes just listing them all. This talk only has time to focus on the most recommended modules.\n\nThere&#x2019;s a number of things you need to do to make sure you&#x2019;re sending email correctly, including address validation, message construction, and actually sending the message. The tools to do this have evolved over the years. Some have fallen out of favor because other tools do 80% of the work in 20% of the code. Others are just deprecated because of problems in architecture or implementation. This talk will be covering the current recommended state of the art \n\nYes, they use Moose. Deal with it.\n
There are a lot of email modules on CPAN. A lot. No, really. I could fill 20 minutes just listing them all. This talk only has time to focus on the most recommended modules.\n\nThere&#x2019;s a number of things you need to do to make sure you&#x2019;re sending email correctly, including address validation, message construction, and actually sending the message. The tools to do this have evolved over the years. Some have fallen out of favor because other tools do 80% of the work in 20% of the code. Others are just deprecated because of problems in architecture or implementation. This talk will be covering the current recommended state of the art \n\nYes, they use Moose. Deal with it.\n
There are a lot of email modules on CPAN. A lot. No, really. I could fill 20 minutes just listing them all. This talk only has time to focus on the most recommended modules.\n\nThere&#x2019;s a number of things you need to do to make sure you&#x2019;re sending email correctly, including address validation, message construction, and actually sending the message. The tools to do this have evolved over the years. Some have fallen out of favor because other tools do 80% of the work in 20% of the code. Others are just deprecated because of problems in architecture or implementation. This talk will be covering the current recommended state of the art \n\nYes, they use Moose. Deal with it.\n
There are a lot of email modules on CPAN. A lot. No, really. I could fill 20 minutes just listing them all. This talk only has time to focus on the most recommended modules.\n\nThere&#x2019;s a number of things you need to do to make sure you&#x2019;re sending email correctly, including address validation, message construction, and actually sending the message. The tools to do this have evolved over the years. Some have fallen out of favor because other tools do 80% of the work in 20% of the code. Others are just deprecated because of problems in architecture or implementation. This talk will be covering the current recommended state of the art \n\nYes, they use Moose. Deal with it.\n
Probably want to make sure our email addresses are valid before trying to send something to one, or even construct an email containing one. So we have Email::Valid for that. It&#x2019;s simple and it does one thing. It&#x2019;s got one class method and that&#x2019;s all it needs.\n
Probably want to make sure our email addresses are valid before trying to send something to one, or even construct an email containing one. So we have Email::Valid for that. It&#x2019;s simple and it does one thing. It&#x2019;s got one class method and that&#x2019;s all it needs.\n
Probably want to make sure our email addresses are valid before trying to send something to one, or even construct an email containing one. So we have Email::Valid for that. It&#x2019;s simple and it does one thing. It&#x2019;s got one class method and that&#x2019;s all it needs.\n
Probably want to make sure our email addresses are valid before trying to send something to one, or even construct an email containing one. So we have Email::Valid for that. It&#x2019;s simple and it does one thing. It&#x2019;s got one class method and that&#x2019;s all it needs.\n
Probably want to make sure our email addresses are valid before trying to send something to one, or even construct an email containing one. So we have Email::Valid for that. It&#x2019;s simple and it does one thing. It&#x2019;s got one class method and that&#x2019;s all it needs.\n
Probably want to make sure our email addresses are valid before trying to send something to one, or even construct an email containing one. So we have Email::Valid for that. It&#x2019;s simple and it does one thing. It&#x2019;s got one class method and that&#x2019;s all it needs.\n
Probably want to make sure our email addresses are valid before trying to send something to one, or even construct an email containing one. So we have Email::Valid for that. It&#x2019;s simple and it does one thing. It&#x2019;s got one class method and that&#x2019;s all it needs.\n
\n
If we want to do something with our addresses before sending them, e.g. to enforce some sort of policy or business logic, Email::Address gives us tools to inspect and reason about our addresses. It provides methods for looking at all the different parts of an email address, including things you likely won&#x2019;t care about like the phrase or the comment.\n
If we want to do something with our addresses before sending them, e.g. to enforce some sort of policy or business logic, Email::Address gives us tools to inspect and reason about our addresses. It provides methods for looking at all the different parts of an email address, including things you likely won&#x2019;t care about like the phrase or the comment.\n
If we want to do something with our addresses before sending them, e.g. to enforce some sort of policy or business logic, Email::Address gives us tools to inspect and reason about our addresses. It provides methods for looking at all the different parts of an email address, including things you likely won&#x2019;t care about like the phrase or the comment.\n
If we want to do something with our addresses before sending them, e.g. to enforce some sort of policy or business logic, Email::Address gives us tools to inspect and reason about our addresses. It provides methods for looking at all the different parts of an email address, including things you likely won&#x2019;t care about like the phrase or the comment.\n
If we want to do something with our addresses before sending them, e.g. to enforce some sort of policy or business logic, Email::Address gives us tools to inspect and reason about our addresses. It provides methods for looking at all the different parts of an email address, including things you likely won&#x2019;t care about like the phrase or the comment.\n
If we want to do something with our addresses before sending them, e.g. to enforce some sort of policy or business logic, Email::Address gives us tools to inspect and reason about our addresses. It provides methods for looking at all the different parts of an email address, including things you likely won&#x2019;t care about like the phrase or the comment.\n
Just a sampling of the methods, again. \n
Just a sampling of the methods, again. \n
Just a sampling of the methods, again. \n
\n
There&#x2019;s lots of different tools for dealing with email messages. They have varying amounts of development behind them and going into them presently. We&#x2019;re focusing on Email::MIME because it works with other tools and it&#x2019;s pretty solid overall.\n
There&#x2019;s lots of different tools for dealing with email messages. They have varying amounts of development behind them and going into them presently. We&#x2019;re focusing on Email::MIME because it works with other tools and it&#x2019;s pretty solid overall.\n
There&#x2019;s lots of different tools for dealing with email messages. They have varying amounts of development behind them and going into them presently. We&#x2019;re focusing on Email::MIME because it works with other tools and it&#x2019;s pretty solid overall.\n
There&#x2019;s lots of different tools for dealing with email messages. They have varying amounts of development behind them and going into them presently. We&#x2019;re focusing on Email::MIME because it works with other tools and it&#x2019;s pretty solid overall.\n
\n
These are some of the common methods that you&#x2019;ll see in every day use. I&#x2019;ve only got 20 minutes to cover a number of tools. RTFM.\n
These are some of the common methods that you&#x2019;ll see in every day use. I&#x2019;ve only got 20 minutes to cover a number of tools. RTFM.\n
These are some of the common methods that you&#x2019;ll see in every day use. I&#x2019;ve only got 20 minutes to cover a number of tools. RTFM.\n
These are some of the common methods that you&#x2019;ll see in every day use. I&#x2019;ve only got 20 minutes to cover a number of tools. RTFM.\n
These are some of the common methods that you&#x2019;ll see in every day use. I&#x2019;ve only got 20 minutes to cover a number of tools. RTFM.\n
So what do we have here? The boilerplate at the top is pretty obvious. We call the create method on Email::MIME and it builds us an object with the given data. We use the header_str parameter to the create constructor instead of header as we&#x2019;re specifying characters, not bytes.\n\nYou are working in characters, right?\n\nThen there&#x2019;s the body parameter. It&#x2019;s pretty simple.\n\nSo you might be wondering what strictures is. Basically it&#x2019;s strict with a bunch of other stuff added in.\n
This looks more or less like what you&#x2019;d expect. To keep the example simple we didn&#x2019;t specify a message-id. A sane MTA will append one when sending a message without one, the same for the date. \n
Okay, awesome. We&#x2019;ve made sure our email addresses are valid and deliverable. We&#x2019;ve analyzed them to do any introspection or policy enforcement on them. We&#x2019;ve created a message and filled it with a complicated DAG of attachments. But this is all academic if we can&#x2019;t actually send the message. Here&#x2019;s where Email::Sender comes into play.\n
Okay, awesome. We&#x2019;ve made sure our email addresses are valid and deliverable. We&#x2019;ve analyzed them to do any introspection or policy enforcement on them. We&#x2019;ve created a message and filled it with a complicated DAG of attachments. But this is all academic if we can&#x2019;t actually send the message. Here&#x2019;s where Email::Sender comes into play.\n
Okay, awesome. We&#x2019;ve made sure our email addresses are valid and deliverable. We&#x2019;ve analyzed them to do any introspection or policy enforcement on them. We&#x2019;ve created a message and filled it with a complicated DAG of attachments. But this is all academic if we can&#x2019;t actually send the message. Here&#x2019;s where Email::Sender comes into play.\n
Okay, awesome. We&#x2019;ve made sure our email addresses are valid and deliverable. We&#x2019;ve analyzed them to do any introspection or policy enforcement on them. We&#x2019;ve created a message and filled it with a complicated DAG of attachments. But this is all academic if we can&#x2019;t actually send the message. Here&#x2019;s where Email::Sender comes into play.\n
Okay, awesome. We&#x2019;ve made sure our email addresses are valid and deliverable. We&#x2019;ve analyzed them to do any introspection or policy enforcement on them. We&#x2019;ve created a message and filled it with a complicated DAG of attachments. But this is all academic if we can&#x2019;t actually send the message. Here&#x2019;s where Email::Sender comes into play.\n