ElixirConf 2017 - Writing an Editor in Elixir - Ian Dugganijcd
Writing An Editor In Elixir -- Elixir for GUIs? Yes, it’s possible. I’m working on a modern editor in Elixir, and I’ll show you how I’m doing it. Topics will include GUI libraries for Elixir, ports, NIFs, interfacing Elixir with other languages (especially Rust), and general design principles for a modern, programmable editor.
https://elixirforum.com/t/14-elixirconf-2017-writing-an-editor-in-elixir-ian-duggan/8950
https://www.youtube.com/watch?v=6lIVWVmuPao
Github: https://github.com/ijcd
Twitter: @ijcd
San Francisco, California
SPEAKER NOTES:
-------------
Why Design UI Tips
I’ve always had an off fascination with editors.
The answer, I believe, as to what makes a good editor, is when it makes us more productive. When it allows us to get into a flow. When it gets out of the way and just lets us create. I have a theory that, for some, it’s what makes you most productive quickly (TextMate, Sublime, Atom) For others, it is what you can control deeply (Emacs, Vi, Atom?). But if they are so hard to learn, why do they persist? Power... the power to control your environment (a true hacker wants to control everything... quote? reference?). But... why don’t people just add to Sublime/Atom/TextMate, etc... because of friction.
My hypothesis is that the reason Emacs is so powerful, is that you can write emacs in emacs without leaving it it can grow as you use it. Others can too, to some extent, but not to the deep level of customizability you can get from Emacs... Not even vim can do this (which is why Spacemacs exsists... some people want the keys of vi with the features of emacs)...
This editor had lisp embedded. It could read email and netnews before your cellphone could make phone calls without being attached to a car.
You could customize it, from the very beginning. DECADES AGO. New editors are adding most of its features, except for the ability to CODE ITSELF WHILE RUNNING.
Why is this a good idea?
1. Emacs <-> Vixen
2. C core, Elisp control <-> Rust core, Elixir control
3. Elisp <-> Elixir
4. Dynamic <-> Dynamic
5. Runtime eval <-> Runtime compile (hot code reload) 6. Macros <-> Macros
7. DSLs <-> DSLs
8. concurre-what? <-> concurrency
9. immuta-maybe? <-> immutable
10. beachballs <-> no beachballs (if designed well)
Rust stuff might mess up your schedulers, Elixir string manipulations might cause GC issues — you need to profile and make a choice. That said, this is an editor and we are using Elixir more for the flexibility than the performance...
Some issues around signals, detecting window size (in escripts) Use tty like iex (have user_drv open it), anoint self as shell
Very much like unix. A process has a process group. IO is sent to the process group session leader. erlang:display goes around this.
editor in control Rust/Termion ruby rust can launch w/out shell and insert ourselves as one can multiplex the shell in our own buffer pty/port-driver combo Telnet Port Driver
Railsconf Europe 2008 Talk about the Workling Rails Plugin, which solves the issue of deciding on a rails background work solution by providing a single interface over various solutions.
ElixirConf 2017 - Writing an Editor in Elixir - Ian Dugganijcd
Writing An Editor In Elixir -- Elixir for GUIs? Yes, it’s possible. I’m working on a modern editor in Elixir, and I’ll show you how I’m doing it. Topics will include GUI libraries for Elixir, ports, NIFs, interfacing Elixir with other languages (especially Rust), and general design principles for a modern, programmable editor.
https://elixirforum.com/t/14-elixirconf-2017-writing-an-editor-in-elixir-ian-duggan/8950
https://www.youtube.com/watch?v=6lIVWVmuPao
Github: https://github.com/ijcd
Twitter: @ijcd
San Francisco, California
SPEAKER NOTES:
-------------
Why Design UI Tips
I’ve always had an off fascination with editors.
The answer, I believe, as to what makes a good editor, is when it makes us more productive. When it allows us to get into a flow. When it gets out of the way and just lets us create. I have a theory that, for some, it’s what makes you most productive quickly (TextMate, Sublime, Atom) For others, it is what you can control deeply (Emacs, Vi, Atom?). But if they are so hard to learn, why do they persist? Power... the power to control your environment (a true hacker wants to control everything... quote? reference?). But... why don’t people just add to Sublime/Atom/TextMate, etc... because of friction.
My hypothesis is that the reason Emacs is so powerful, is that you can write emacs in emacs without leaving it it can grow as you use it. Others can too, to some extent, but not to the deep level of customizability you can get from Emacs... Not even vim can do this (which is why Spacemacs exsists... some people want the keys of vi with the features of emacs)...
This editor had lisp embedded. It could read email and netnews before your cellphone could make phone calls without being attached to a car.
You could customize it, from the very beginning. DECADES AGO. New editors are adding most of its features, except for the ability to CODE ITSELF WHILE RUNNING.
Why is this a good idea?
1. Emacs <-> Vixen
2. C core, Elisp control <-> Rust core, Elixir control
3. Elisp <-> Elixir
4. Dynamic <-> Dynamic
5. Runtime eval <-> Runtime compile (hot code reload) 6. Macros <-> Macros
7. DSLs <-> DSLs
8. concurre-what? <-> concurrency
9. immuta-maybe? <-> immutable
10. beachballs <-> no beachballs (if designed well)
Rust stuff might mess up your schedulers, Elixir string manipulations might cause GC issues — you need to profile and make a choice. That said, this is an editor and we are using Elixir more for the flexibility than the performance...
Some issues around signals, detecting window size (in escripts) Use tty like iex (have user_drv open it), anoint self as shell
Very much like unix. A process has a process group. IO is sent to the process group session leader. erlang:display goes around this.
editor in control Rust/Termion ruby rust can launch w/out shell and insert ourselves as one can multiplex the shell in our own buffer pty/port-driver combo Telnet Port Driver
Railsconf Europe 2008 Talk about the Workling Rails Plugin, which solves the issue of deciding on a rails background work solution by providing a single interface over various solutions.
Educational Background
Dr. William Allan Kritsonis earned his BA in 1969 from Central Washington University, Ellensburg, Washington. In 1971, he earned his M.Ed. from Seattle Pacific University. In 1976, he earned his PhD from the University of Iowa. In 1981, he was a Visiting Scholar at Teachers College, Columbia University, New York, and in 1987 was a Visiting Scholar at Stanford University, Palo Alto, California.
Monica G. Williams, PhD Proposal Defense, Dr. William Allan Kritsonis, Disser...William Kritsonis
Dr. William Allan Kritsonis, PhD Dissertation Chair for Monica G. Williams, PhD Program in Educational Leadership, PVAMU, Member of the Texas A&M University System.
Educational Background
Dr. William Allan Kritsonis earned his BA in 1969 from Central Washington University, Ellensburg, Washington. In 1971, he earned his M.Ed. from Seattle Pacific University. In 1976, he earned his PhD from the University of Iowa. In 1981, he was a Visiting Scholar at Teachers College, Columbia University, New York, and in 1987 was a Visiting Scholar at Stanford University, Palo Alto, California.
Monica G. Williams, PhD Proposal Defense, Dr. William Allan Kritsonis, Disser...William Kritsonis
Dr. William Allan Kritsonis, PhD Dissertation Chair for Monica G. Williams, PhD Program in Educational Leadership, PVAMU, Member of the Texas A&M University System.
DevSecOps: The End of the Beginning - AustinAndrew Shafer
Andrew Clay Shafer musing about the evolution of devsecops. Where are we now? Where could things go? Building a global community of practice learning and sharing.
deep devops - learning to learn dotScale 2017Andrew Shafer
dotsScale talk about devops as an exercise in evolution of behavioral change based on organizational learning. Learning has only happened when behaviors have changed.
Little talk about using software to visualize software development. We are surrounded by information, but we don't always have actionable insights. Strategic visualizations can makes all the difference.
Presented at devopsdays Nashville. Tdeas to simplify conversations about systems thinking and transformation. Touches on devops history, systems thinking, double loop learning and the overwhelming opportunity to solve problems with software.
transforming how the world operates softwareAndrew Shafer
Quick run through of some ideas about continuously devopsing microservices for Velocity NY keynote. A bit about Pivotal, a bit about me, the industry, and you. Yes you...
Everyone seems to have an intuitive understanding of ‘architecture’ as the process and product of planning, designing, and constructing. The problem is most people don’t have the same understanding which leads to disagreements about what the process and product entails. The transition from software shipped on physical media to software delivered as services further complicated the conversation as operating services introduces other factors that must be considered on an ongoing basis. These misunderstandings have only been exacerbated as greater speed and scale create new problems necessitating novel emergent solutions. This presentation will attempt to highlight the need for new language with dense semantics about the emerging architectures (because just saying ‘microservices’ is causing more problems than it solves) while also pointing out that many of the struggles people have delivering software are rooted in architecture.
slides for VMworld presentation
Devops, Continuous Delivery, Microservices, Platforms, what does it all mean?
TL;DR
Automation is a function of what is being automated. Ad hoc automation will not solve deployment and operational problems as much as being thoughtful about the architectures being deployed. The technology and the people mirror each other's communication.
Slides given at Agile 2015 to support talk with Josh Long
Walks through basic ideas of Cloud Foundry BOSH, Cloud Foundry Elastic Runtime and Spring Boot/Spring Cloud.
Covered these slides in ~20 minutes, then did 50 minutes of Lattice demos and Spring live coding.
High level introduction to Linux Containers. Presented at Interop Las Vegas 2015. Frames the discussion with an introduction to intermodal shipping containers, the innovation around logistics and purpose built infrastructure and the impact. Walk through features of the Linux kernel which provide isolation and limitation and packaging applications as filesystem images. Finish talking about the emerging purpose built infrastructure for managing container deployments.
devops, microservices, and platforms, oh my!Andrew Shafer
A story about a boy and his quest to build great software delivered at the Cloud Foundry Summit in Santa Clara May 2015. (https://www.youtube.com/watch?v=rX4mQHPWuUY) Walk through the history of my personal career, and the evolution of the industry highlighting themes like devops, microservices and platforms.
Configuration Management Camp presentation on the why and what of BOSH. Highlights the 'why' of deploying Cloud Foundry Elastic Runtime and the design decisions to do that.
devops, cultivation and the cycle of creation and disruption framed with the history of the samurai adaptation to the Mongol invasion and the book of 5 rings
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Enhancing Performance with Globus and the Science DMZGlobus
ESnet has led the way in helping national facilities—and many other institutions in the research community—configure Science DMZs and troubleshoot network issues to maximize data transfer performance. In this talk we will present a summary of approaches and tips for getting the most out of your network infrastructure using Globus Connect Server.
Welcome to the first live UiPath Community Day Dubai! Join us for this unique occasion to meet our local and global UiPath Community and leaders. You will get a full view of the MEA region's automation landscape and the AI Powered automation technology capabilities of UiPath. Also, hosted by our local partners Marc Ellis, you will enjoy a half-day packed with industry insights and automation peers networking.
📕 Curious on our agenda? Wait no more!
10:00 Welcome note - UiPath Community in Dubai
Lovely Sinha, UiPath Community Chapter Leader, UiPath MVPx3, Hyper-automation Consultant, First Abu Dhabi Bank
10:20 A UiPath cross-region MEA overview
Ashraf El Zarka, VP and Managing Director MEA, UiPath
10:35: Customer Success Journey
Deepthi Deepak, Head of Intelligent Automation CoE, First Abu Dhabi Bank
11:15 The UiPath approach to GenAI with our three principles: improve accuracy, supercharge productivity, and automate more
Boris Krumrey, Global VP, Automation Innovation, UiPath
12:15 To discover how Marc Ellis leverages tech-driven solutions in recruitment and managed services.
Brendan Lingam, Director of Sales and Business Development, Marc Ellis
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
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.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.