Some little hints to where to continue to code after you learned basic Ruby/Rails - including links and everything. Presented at RailsGirls workshop as a lightning talk.
The document provides an overview of the speaker's approach to writing JavaScript for web applications. It discusses some of the shortcomings of Rails' approach of generating JavaScript (RJS) and embedding it directly in views. The speaker advocates for treating JavaScript as a first-class language by: writing it in standalone files organized into classes; structuring classes based on behavior and page location; and test-driving JavaScript code using the Jasmine framework. This allows JavaScript to be developed and tested independently using an object-oriented approach.
A revised version of the I love Programming talk - a talk about why I believe that Programming and Software Development is awesome. It is meant as an inspiration, especially for beginners as I think we are perceived a bit wrongly.
What do software engineers do all day long? Write code? Of course! But what about reading code, about understanding what’s happening? Aren’t we doing that even more? I believe we do. Because of that code should be as readable as possible! But what does that even mean? How do we achieve readable code? This talk will introduce you to coding principles and techniques that will help you write more readable code, be more productive and have more fun!
Web Application Intro for RailsGirls Berlin May 2013Tobias Pfeiffer
The well known web application introduction, this time without the Ruby introduction as the Ruby Monsters already did this! This time it also has a Bentobox.
The lightning talk version of my blog post about how Software Development is actually pretty different from what people think it is. http://pragtob.wordpress.com/2012/10/19/i-love-software-development-because-its-very-collaborative-and-communicative/
I gave this talk a t a local RailsGirls Berlin event
Web application intro + a bit of ruby (revised)Tobias Pfeiffer
The document is an introduction to web applications and Ruby on Rails. It defines what a web application is, its key components like front-end and back-end, and demonstrates Ruby code examples in an interactive session. It also introduces Ruby on Rails as a web application framework written in Ruby that makes building web applications easier with features like connecting to databases and generating HTML. The document encourages learning more about Ruby and provides additional learning resources.
The document provides an overview of the speaker's approach to writing JavaScript for web applications. It discusses some of the shortcomings of Rails' approach of generating JavaScript (RJS) and embedding it directly in views. The speaker advocates for treating JavaScript as a first-class language by: writing it in standalone files organized into classes; structuring classes based on behavior and page location; and test-driving JavaScript code using the Jasmine framework. This allows JavaScript to be developed and tested independently using an object-oriented approach.
A revised version of the I love Programming talk - a talk about why I believe that Programming and Software Development is awesome. It is meant as an inspiration, especially for beginners as I think we are perceived a bit wrongly.
What do software engineers do all day long? Write code? Of course! But what about reading code, about understanding what’s happening? Aren’t we doing that even more? I believe we do. Because of that code should be as readable as possible! But what does that even mean? How do we achieve readable code? This talk will introduce you to coding principles and techniques that will help you write more readable code, be more productive and have more fun!
Web Application Intro for RailsGirls Berlin May 2013Tobias Pfeiffer
The well known web application introduction, this time without the Ruby introduction as the Ruby Monsters already did this! This time it also has a Bentobox.
The lightning talk version of my blog post about how Software Development is actually pretty different from what people think it is. http://pragtob.wordpress.com/2012/10/19/i-love-software-development-because-its-very-collaborative-and-communicative/
I gave this talk a t a local RailsGirls Berlin event
Web application intro + a bit of ruby (revised)Tobias Pfeiffer
The document is an introduction to web applications and Ruby on Rails. It defines what a web application is, its key components like front-end and back-end, and demonstrates Ruby code examples in an interactive session. It also introduces Ruby on Rails as a web application framework written in Ruby that makes building web applications easier with features like connecting to databases and generating HTML. The document encourages learning more about Ruby and provides additional learning resources.
Elixir & Phoenix - fast, concurrent and explicitTobias Pfeiffer
Elixir and Phoenix are all the hype lately - what's great about them? Is there more to them than "just" fast, concurrent and reliable?
This talk will give a short intro into both Elixir and Phoenix, highlighting strengths, differences from Ruby/Rails and weaknesses.
An introduction about JavaScript web workers I gave at BerlinJS on the 18th of July 2013. It introduces the concept of web workers for simple parallel processing in client side JavaScript.
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.
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.
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.
This document provides an introduction to web applications and their components. It discusses what a web application is, how it is made up of front-end and back-end parts, and how Ruby on Rails is a framework that helps develop web applications. It then demonstrates Ruby programming concepts through interactive examples in IRB, covering basic operations, variables, methods, classes and objects. The document aims to give a high-level overview of web applications and introduce Ruby programming.
(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!
What did AlphaGo do to beat the strongest human Go player? (Strange Group Ver...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.
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.
Those are screenshots of the shoes presentation I gave at JRubyConfEU 2013. My presentation itself was written in shoes and you can grab it here: https://github.com/PragTob/shoes_presentation - but I thought providing a PDF might be nice. But I really encourage you to try the shoes version, you get way nicer effects there :-)
The document discusses the author's journey over 12 months learning to code as a new Ruby developer. It covers setting up a development environment, learning Ruby and Rails through online tutorials, books, and pairing with experienced developers. The author notes that writing code often involves frustration from things not working at first but can lead to euphoria when solved, and emphasizes the importance of never stopping to learn, not being afraid to ask for help, and having passion.
Building Modern Applications in Ruby: Fast, Efficient, Versatile, and Cost-Ef...Marylene Sawyer
Ruby is an interpreted, dynamically typed programming language designed for simplicity and productivity. It has gained widespread adoption among startups and large companies for building web applications using Ruby on Rails. Ruby on Rails is a full-stack framework that follows conventions like DRY (Don't Repeat Yourself) to make code efficient and easy to maintain. Learning Ruby and Ruby on Rails provides advantages in today's job market, and resources for learning include CodeAcademy, online forums, and collaborative programs like Microverse which provides support and community.
This document discusses Ruby, its history, benefits, and opportunities. It notes that Ruby was created by Yukihiro "Matz" Matsumoto to be an empowering and easy-to-use scripting language. Ruby is object-oriented, mimics real life, and is good for rapidly prototyping applications. The Ruby community is large and supportive. Rails is a popular framework that makes it quick to build web applications in Ruby. The document provides several resources for learning Ruby.
What would your own version of Ruby look like? (RubyKaigi)Hung Wu Lo
1) The presenter introduces Goby, their own programming language inspired by Ruby that is written in Go.
2) Some key differences from Ruby include stricter syntax rules for consistency and predictability, and treating errors as values instead of using exceptions.
3) The goals of Goby are to maximize productivity through readability and consistency while following the principle of least astonishment. The project is still early but welcoming community involvement.
This presentation introduces Clojure as a functional programming language that addresses issues with mutable state, parallel processing, extensibility, and libraries in other languages. It highlights how Clojure makes state management and parallelism easier, has powerful macro capabilities for extensibility, and benefits from Java libraries and tools while having its own vibrant community. The presenter then shares their positive experience using Clojure for web development and expectations of increased productivity. [/SUMMARY]
The document discusses how Ruby's dynamic and reflective nature allows for meta-programming techniques that Rails leverages heavily, such as enhancing classes and using code as data, to accomplish its "magic" of providing a domain-specific language for building database-backed web applications with an integrated and seamless front-to-back stack. Ruby's meta-programming capabilities like open classes and meta-classes are key to how Rails accomplishes convention over configuration and allows terse and expressive code to generate advanced web application behavior.
Adventures of java developer in ruby worldOrest Ivasiv
This document provides an overview of the speaker's experience transitioning from Java to Ruby. It includes an agenda covering the speaker's background, project issues that led to choosing Ruby, a brief history of Ruby, examples of early debates between Ruby and other languages, and a review of the Ruby ecosystem including implementations, tools, testing, debugging, and community aspects.
This document introduces Ruby as an open-source, multi-paradigm programming language created by Yukihiro Matsumoto. Ruby is interpreted, which means code is read and executed by an interpreter rather than being pre-compiled. The document provides instructions for installing Ruby on Windows, Mac OS X, and Linux. It recommends text editors for writing Ruby code and introduces the irb interactive shell for testing code. A simple "Hello, World" program is presented to demonstrate running Ruby code.
The document discusses metaprogramming in Ruby. It provides an overview of Ruby's metaprogramming capabilities and how they enable dynamically modifying classes at runtime. This allows enhancing core classes like Array as well as building powerful frameworks like Ruby on Rails. The document also describes how Trellis, an experimental web framework created by the author, leverages metaprogramming techniques to provide component-based programming.
Elixir & Phoenix - fast, concurrent and explicitTobias Pfeiffer
Elixir and Phoenix are all the hype lately - what's great about them? Is there more to them than "just" fast, concurrent and reliable?
This talk will give a short intro into both Elixir and Phoenix, highlighting strengths, differences from Ruby/Rails and weaknesses.
An introduction about JavaScript web workers I gave at BerlinJS on the 18th of July 2013. It introduces the concept of web workers for simple parallel processing in client side JavaScript.
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.
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.
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.
This document provides an introduction to web applications and their components. It discusses what a web application is, how it is made up of front-end and back-end parts, and how Ruby on Rails is a framework that helps develop web applications. It then demonstrates Ruby programming concepts through interactive examples in IRB, covering basic operations, variables, methods, classes and objects. The document aims to give a high-level overview of web applications and introduce Ruby programming.
(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!
What did AlphaGo do to beat the strongest human Go player? (Strange Group Ver...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.
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.
Those are screenshots of the shoes presentation I gave at JRubyConfEU 2013. My presentation itself was written in shoes and you can grab it here: https://github.com/PragTob/shoes_presentation - but I thought providing a PDF might be nice. But I really encourage you to try the shoes version, you get way nicer effects there :-)
The document discusses the author's journey over 12 months learning to code as a new Ruby developer. It covers setting up a development environment, learning Ruby and Rails through online tutorials, books, and pairing with experienced developers. The author notes that writing code often involves frustration from things not working at first but can lead to euphoria when solved, and emphasizes the importance of never stopping to learn, not being afraid to ask for help, and having passion.
Building Modern Applications in Ruby: Fast, Efficient, Versatile, and Cost-Ef...Marylene Sawyer
Ruby is an interpreted, dynamically typed programming language designed for simplicity and productivity. It has gained widespread adoption among startups and large companies for building web applications using Ruby on Rails. Ruby on Rails is a full-stack framework that follows conventions like DRY (Don't Repeat Yourself) to make code efficient and easy to maintain. Learning Ruby and Ruby on Rails provides advantages in today's job market, and resources for learning include CodeAcademy, online forums, and collaborative programs like Microverse which provides support and community.
This document discusses Ruby, its history, benefits, and opportunities. It notes that Ruby was created by Yukihiro "Matz" Matsumoto to be an empowering and easy-to-use scripting language. Ruby is object-oriented, mimics real life, and is good for rapidly prototyping applications. The Ruby community is large and supportive. Rails is a popular framework that makes it quick to build web applications in Ruby. The document provides several resources for learning Ruby.
What would your own version of Ruby look like? (RubyKaigi)Hung Wu Lo
1) The presenter introduces Goby, their own programming language inspired by Ruby that is written in Go.
2) Some key differences from Ruby include stricter syntax rules for consistency and predictability, and treating errors as values instead of using exceptions.
3) The goals of Goby are to maximize productivity through readability and consistency while following the principle of least astonishment. The project is still early but welcoming community involvement.
This presentation introduces Clojure as a functional programming language that addresses issues with mutable state, parallel processing, extensibility, and libraries in other languages. It highlights how Clojure makes state management and parallelism easier, has powerful macro capabilities for extensibility, and benefits from Java libraries and tools while having its own vibrant community. The presenter then shares their positive experience using Clojure for web development and expectations of increased productivity. [/SUMMARY]
The document discusses how Ruby's dynamic and reflective nature allows for meta-programming techniques that Rails leverages heavily, such as enhancing classes and using code as data, to accomplish its "magic" of providing a domain-specific language for building database-backed web applications with an integrated and seamless front-to-back stack. Ruby's meta-programming capabilities like open classes and meta-classes are key to how Rails accomplishes convention over configuration and allows terse and expressive code to generate advanced web application behavior.
Adventures of java developer in ruby worldOrest Ivasiv
This document provides an overview of the speaker's experience transitioning from Java to Ruby. It includes an agenda covering the speaker's background, project issues that led to choosing Ruby, a brief history of Ruby, examples of early debates between Ruby and other languages, and a review of the Ruby ecosystem including implementations, tools, testing, debugging, and community aspects.
This document introduces Ruby as an open-source, multi-paradigm programming language created by Yukihiro Matsumoto. Ruby is interpreted, which means code is read and executed by an interpreter rather than being pre-compiled. The document provides instructions for installing Ruby on Windows, Mac OS X, and Linux. It recommends text editors for writing Ruby code and introduces the irb interactive shell for testing code. A simple "Hello, World" program is presented to demonstrate running Ruby code.
The document discusses metaprogramming in Ruby. It provides an overview of Ruby's metaprogramming capabilities and how they enable dynamically modifying classes at runtime. This allows enhancing core classes like Array as well as building powerful frameworks like Ruby on Rails. The document also describes how Trellis, an experimental web framework created by the author, leverages metaprogramming techniques to provide component-based programming.
RoR是Ruby on Rails的缩写,是一个用于编写Web应用的框架。他基于Ruby语言,给开发人员提供了强大便利的框架支持。Ruby有很多优点,但是一直以来其流行范围仅局限于日本。2004年,当Rails框架横空出世,让人们认识到了一个更符合实际需要并且高效的web框架,在其出现不久就受到了业内的广泛关注。吕国宁将结合自己三年的Rails开发经验,给大家介绍一些Rails的优点,背后的设计文化,以及Rails的前景发展等内容。
This document discusses the benefits of using the Ruby on Rails (ROR) web framework. Some key points made include:
- ROR allows developers to build applications faster and with less code compared to other frameworks like Java.
- ROR follows conventions that reduce configuration needs and promote rapid development.
- A live demo shows how to create a basic blog application in Rails in just 15 minutes.
- ROR is well-suited for building RESTful and agile web applications.
- The Shanghai Ruby on Rails user group helps promote Rails adoption in China through meetups and conferences like RubyConfChina.
RailsBridge aims to create an inclusive Ruby on Rails community. It runs workshops to teach web development skills and connects volunteers with nonprofit projects. Its initiatives include Builders, which pairs developers with nonprofits to build websites, and teaching kids programming through curricula on topics like shoes and RGB colors. RailsBridge also organizes open source workshops around the world and works to diversify the tech community.
This is from my old Saturday session at Zillion.io (A big Thanks to dilnoor and kewal for that culture and for every zillion member out there for spreading that awesomeness).
Zack Hubert gave a presentation on the Go programming language. He discussed how Go was created by Rob Pike, Ken Thompson, and Robert Griesemer to be a fast, modern, and simplified language. Go aims for speed through compilation while feeling like an interpreted language. It also supports concurrency through lightweight processes and channels. The language is designed to be simple with features like garbage collection and a small standard library to support modern web development.
The document discusses moving away from focusing solely on Ruby and instead embracing service-oriented architecture (SOA) and diversifying programming languages. It argues that picking the best tool for each job rather than sticking with just one language like Ruby will allow for more reuse between projects and easier upgrades. Specific alternatives mentioned include using Go for backends instead of Ruby and moving away from JavaScript for frontends.
This document discusses the benefits of using the Ruby on Rails (ROR) web framework. It notes that Rails allows developers to build applications with less code and in less time compared to other technologies like Java. Specific points made include that a basic blog application can be created in Rails in just 15 minutes, and that Rails applications generally have significantly less lines of code and configuration compared to equivalent Java applications. The document also promotes upcoming Rails events in China and provides contact information for the founder of the Shanghai Rails meetup group.
My experience of Ruby Education in TaiwanMu-Fan Teng
- Mu-Fan Teng introduced himself as the founder of 5xRuby, an education company in Taiwan that teaches Ruby and Rails.
- He discussed the growing Ruby job market in Taiwan, with both local and foreign companies hiring Ruby developers at increasing salaries. However, there remains a lack of experienced senior developers.
- 5xRuby offers a variety of courses, from free introductory classes to a commercial 13-week Ruby on Rails course. They also provide customized corporate training and outsourced development services.
- Through his teaching experience, Mu-Fan highlighted challenges like inconsistent student skill levels and environment issues, and solutions like using cloud-based development environments and online communication tools. He emphasized that education
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.
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.
Ruby to Elixir - what's great and what you might missTobias Pfeiffer
The document discusses some of the key features of Elixir compared to Ruby including pattern matching, explicit preloading of associations, immutable data, and metaprogramming. It notes some things Ruby developers may miss like dirtiness, magic metaprogramming, and a smaller ecosystem. Overall it presents Elixir as having many advantages for functional programming while acknowledging some aspects of Ruby are not directly replicated.
"Code is read many more times than written." - this statement changed my view of Software Engineering. From that point on I made it my personal mission to write the best code I could possibly write.
This talk is about my very favorite coding wisdoms that I picked up on my journey so far. All of these will help you to write better code, be more productive and have more fun. And good code pays it's interest rate every day.
Also if you're a clean code junkie looking for a fix - this talk is for you.
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.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
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.
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.
Project Management Semester Long Project - Acuityjpupo2018
Acuity is an innovative learning app designed to transform the way you engage with knowledge. Powered by AI technology, Acuity takes complex topics and distills them into concise, interactive summaries that are easy to read & understand. Whether you're exploring the depths of quantum mechanics or seeking insight into historical events, Acuity provides the key information you need without the burden of lengthy texts.
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
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.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
OpenID AuthZEN Interop Read Out - AuthorizationDavid Brossard
During Identiverse 2024 and EIC 2024, members of the OpenID AuthZEN WG got together and demoed their authorization endpoints conforming to the AuthZEN API
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
3. Why's poignant guide to Ruby
Learn Ruby with cartoon foxes!
Guaranteed: Vastly different from every book
you know, but...
Sometimes a bit too much story
4. HacketyHack
Coding for beginners!
Includes GUI programming
Platform for beginner questions
5. Code School
Learning with presentations and coding
exercises!
Look for the free courses
6. Ruby Koans
Walk along the path of enlightment to learn
Ruby!
Do this with test driven development
7. Ruby on Rails Tutorial
✔
How I learned Rails
Complete walkthrough of building “mini
Twitter” - with tests!