teleren/devto huggingface dataset:
Release 0.9.0 of Ebirah
Tags: perl, docker, release, opensource
Published: 2024-06-26 13:47:00

---
title: Release 0.9.0 of Ebirah
published: true
description: long over due release update of my docker-dzil experiment
tags: perl, docker, release, opensource
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2024-06-26 13:26 +0000
---
I finally got around to making a release 0.9.0 of Ebirah. ([0.8.0 was released October 2022](https://dev.to/jonasbn/release-080-of-ebirah-596m))

The Ebirah repository has see multiple updates, primarily targetting the infrastructure and all handled by Dependabot.

- The website is handled by Jekyll, so many PRs are related to Jekyll and related components
- The repository uses several GitHub Actions, also resulting in quite a few 
- Docker based repositories are also recipients of PRs related to things changing outside the repository

However there are some humans involved and this particular release was triggered by a PR from Glasswalk3r.

The PR was proposing an improvement in the security posture, by introducing use of a non-root user, so if you are interested in this do checkout PR [#82](https://github.com/jonasbn/ebirah/pull/82).

At the same time Perl version 5.40.0 was released, so the base image of the Docker image, was updated accordingly. I am looking into updated to the latest Debian release "Bookworm", which is the base image of the Perl Docker image. Currently the images are based on "Bullseye", the Debian release prior to "Bookworm". Actually the "Bookworm" based image can be used as "latest".

I did a brief check using Snyk and by updating from "Bullseye" to "Bookwork" the number of critical security issues dropped from 2 to 3. Changing to a _slim_ image would improve these numbers even further, so this is being considered, see [#34](https://github.com/jonasbn/ebirah/issues/34).

With the release also Dist::Zilla was updated to the latest release, I am working on how to manifest this in the repository, I believe that I might need to rely on `cpanfile.snapshot` and at the same time be able to update this file using Docker, I know how to do this manually, but would love an automated process.

The change log is not long, reflecting somewhat what was mentioned above, the blog post only services to add some more context, but if you want the full blown description, do check out the [auto-generated change log](https://github.com/jonasbn/ebirah/releases/tag/0.9.0).

## Change log

### 0.9.0 2024-06-24 Feature release, update recommended

- Via PR [#82](https://github.com/jonasbn/ebirah/pull/82) from @glasswalk3r, the Docker image has been updated to use a non-root user, this is a most welcome security enhancement

- The Docker base image has been updated from Perl 5.38.2 to Perl 5.40.0 via PR [#89](https://github.com/jonasbn/ebirah/pull/89) from @dependabot

- This release updates the dependency: [Dist::Zilla](https://metacpan.org/pod/Dist::Zilla) from version `6.025` to `6.032`, please see the [change log](https://metacpan.org/dist/Dist-Zilla/changes) of [Dist::Zilla](https://metacpan.org/pod/Dist::Zilla)
How Learning Programming is Similar to Learning a New Language
Tags: englishspeaking, interview, education, programming
Published: 2024-06-26 13:46:07


As someone who has been deeply involved in teaching English and helping people master the language through my website, English Fear, I've noticed fascinating parallels between learning a programming language and learning a natural language. Understanding vocabulary is crucial in both areas, as learning programming syntax is like building your vocabulary with new terms, functions, and commands. Similarly, grammar provides rules for structuring sentences in natural languages and code in programming languages. 

Immersing yourself in the environment, whether it be an English-speaking one or a coding community, can greatly enhance learning. Daily practice, whether it’s writing code or speaking English, is key to improvement. Making mistakes is a natural part of the learning process in both fields, offering valuable opportunities for growth. By recognizing these similarities and applying effective learning strategies, you can make the process of learning both English and programming more enjoyable and effective. If you’re looking for **[ways to improve your English](https://englishfear.in/grammar-interview-questions-for-english-teachers/)**, check out my website **[English Fear](https://englishfear.in/blog/)** for resources and tips. Happy coding and happy learning!
New Journey
Tags: cloudcomputing, aws, beginners
Published: 2024-06-26 13:44:33

Hi everyone, I'm new here and I am a computer engineering graduate from Ghana Communications Technology University, Accra-Ghana in West Africa. I have always been curious abut the cloud and networking. The path has been a bit hazy for me for the past two years. I got completely confused. Finally a have a guide and a mentor to help out with my journey. I am restarting now hopefully I become a cloud engineer in the next six months. I'll be posting what i learn and share a few concerns and project I am undertaking. Your feedback is welcomed.
Exploring the Role of CaptchaAI in Automating and Bypassing Captcha Challenges
Published: 2024-06-26 13:44:00

In the digital era, CAPTCHAs serve as a critical barrier against automated attacks, ensuring that users on websites are indeed human. However, these CAPTCHAs can often disrupt user experience and slow down digital interactions. CaptchaAI, a leading **captcha solving service**, aims to bridge the gap between maintaining security and enhancing user experience by automating the process of solving these CAPTCHAs.

**The Evolution of CAPTCHA Solving**

Captcha challenges have evolved from simple text-based puzzles to complex image and interactive puzzles like reCAPTCHA, designed to outsmart automated bots. While effective at deterring malicious activities, these CAPTCHAs can be a significant hurdle for users, particularly those with accessibility issues. Here, CaptchaAI’s **image captcha solving** technology and **reCaptcha solving service** come into play, simplifying the process for all users.

**How CaptchaAI Works**

CaptchaAI uses advanced algorithms and machine learning techniques to decode CAPTCHAs with high precision. This **captcha solving** technology can interpret various captcha types—from traditional image captchas to the more complex reCAPTCHAs—ensuring seamless access across digital platforms. By integrating CaptchaAI’s API, websites and online services can offer a more streamlined user experience, significantly reducing the interruption caused by CAPTCHAs.

**Benefits of Automating Captcha Challenges**

**Automating captcha solving processes offers numerous advantages:**

**Enhanced User Experience:** Users encounter less frustration as they no longer need to decode challenging CAPTCHAs, leading to higher satisfaction and reduced bounce rates on websites.

**Increased Accessibility:** Automated captcha solving, particularly in image captcha solving, makes digital platforms more accessible to people with visual impairments or other disabilities.

**Improved Efficiency:** Automation speeds up the captcha solving process, which is crucial for environments that require quick verification, such as during high-traffic periods on commercial websites.

**Security Implications**

While automating captcha solving enhances user experience, it is crucial to balance this with the security implications of potentially opening avenues for bots. CaptchaAI addresses this by continually updating its algorithms to handle new and more complex captcha types without compromising the security they are meant to provide.

**Conclusion**

CaptchaAI has revolutionized the way businesses and end-users interact with CAPTCHAs, making it a cornerstone in the modern internet experience. By automating captcha solving, CaptchaAI not only improves accessibility and efficiency but also maintains the necessary security measures.

**Simplify your experience and focus on what truly matters without being slowed down by CAPTCHAs With CaptchaAI**
Norfolk County Emergency Towing
Tags: towing, towingservices, roadsideservices
Published: 2024-06-26 13:36:16

Norfolk County Emergency Towing provides emergency towing for vehicles that have been in an accident. We will safely transport your vehicle to our repair shop and do our best to restore the damages. [Towing Services Simcoe ON](https://www.emergencytowingnorfolk.ca/) also provide regular 24/7 towing services and roadside assistance.

Contact us at +1 (647) 956-3995 or info@emergencytowingnorfolk.ca

Services

24/7 Towing Services
Car Accident Recovery Services
Roadside Services

Monday - Sunday Open 24 Hours
Pattern Matching | Uzbek | C#
Tags: dotnet, csharp, uzbek, patternmatching
Published: 2024-06-26 13:29:03

**Bugun biza C# dasturlash tilidagi legenda xususiyatlardan biri bo'lmish Pattern Matchinglarni ko'rib o'tamiz!**

Bu postni ham ma'lum bir sabablarga ko'ra savol javob orqali yoritib boraman. 

**1 savol** - Pattern Matching nima ? 

> _C# dasturlash tilida `Pattern Matching` - bu kod ichida turli ma'lumot turlarini aniqlash va ular ustida ishlash ustida turli xil amallar bajarish uchun ishlatiladi. C# dasturlash tilida bu xususiyat odatda swtich case, if else operatorlari yordamida ishlatiladi._

**2 savol:** Pattern Matching C# da qachon paydo bo'lgan ?

> _`Pattern Matching` C# dasturlash tilida ilk bor C# 7.0 versionda paydo bo'lgan. Undan keyin esa **C# (8.0, 9.0, 10.0, 11.0, 12.0 ∞)** larda ancha kengaytilishni boshlagan, hozirgacha C# kuchayishdan to'xtamayapdi 🔥_

**3 savol:** Pattern Matching yordamida turli ma'lumot turlarini qanday qilib tekshiramiz ?

> _Pattern Matching orqali ma'lumot turlarini tekshirib olish uchun `is` kalit so'zidan foydalaniladi._

Misol uchun:
```
object obj = "Ozodbek";
if (obj is string)
    Console.WriteLine(true);
else 
    Console.WriteLine(false);
```
> _ushbu kodda `is` yordamida biz "Ozodbek"ni string ekanligini aniqlashimiz mumkin. Hozir bu yerda natija `true` qaytadi. Sababini tushuntirib o'tirmayman._

**4 savol:** Switch case da Patterns qanday ishlaydi ? 

> _Switch case orqali C# 7.0 dan beri ishlab kelmoqda, biz esa hozirgi kundagi holatini ko'rib o'tamiz 👇_ 
```
object obj = 17;
switch (obj)
{
    case int i: Console.WriteLine("Butun son. Ya'ni integer"); break;
    case double d: Console.WriteLine("O'nlik. Ya'ni double"); break;
    case string s: Console.WriteLine("String matn. Ya'ni harf, son aralash belgilar"); break;
    default: Console.WriteLine("Boshqa tip"); break;
}
```
Bu yerda qaysi tipga mas'ul ekanini korishimiz mumkin bo'ladi. 

**5 savol: ** Tuple Pattern nima va u qanday ishlaydi ?

> _Tuple Pattern yordamida bir nechta qiymatlarni tekshirishimiz mumkin. Ming marta nazariya o'qigandan bir mart ko'rib review qilgan yaxshi deganlaridek👇 _

```
Console.WriteLine("Sonlarni birma bir kiriting! Har bir sonni kiritgandan keyin enter tugmasini bosishni unutmang! Ogohlik Tashkent talabi!");
(int, int) raqam = (int.Parse(Console.ReadLine() ?? ":)"), int.Parse(Console.ReadLine() ?? ":)"));
switch (raqam)
{
    case (0, 0): Console.WriteLine("Xato son kiritdingiz!"); break; 
    case (23, 17): Console.WriteLine("Xato son kiritdingiz, Lekin sal yaqinlashtingiz!"); break;  
    case (17, 23): Console.WriteLine("Tog'ri son kiritdingiz!"); break;
    default: Console.WriteLine("Boshqa son kiritdingiz!"); break;
}
```

**6 savol:** Property Pattern nima ? 

_Property pattern yordamida obyektning xususiyatlarini tekshirishimiz mumkin!_

```
public class Circle 
{
     public int Radius { get; set; } 
}
var shakl = new Circle { Radius = 5 };
if (shakl is Circle { Radius: 5 })
{
    Console.WriteLine("Bu doirani radiusi 5 ga teng!");
}
```
_Bu yerda property pattern yordamida shaklning Radiusi aniqlanadi_

Davomi bor 

https://chatgpt.com/share/12ee29aa-2b10-41e9-b577-540e6b35620a
Pattern Matching | Uzbek | C#
Tags: dotnet, csharp, uzbek, patternmatching
Published: 2024-06-26 13:29:03

**Bugun biza C# dasturlash tilidagi legenda xususiyatlardan biri bo'lmish Pattern Matchinglarni ko'rib o'tamiz!**

Bu postni ham ma'lum bir sabablarga ko'ra savol javob orqali yoritib boraman. 

**1 savol** - Pattern Matching nima ? 

> _C# dasturlash tilida `Pattern Matching` - bu kod ichida turli ma'lumot turlarini aniqlash va ular ustida ishlash ustida turli xil amallar bajarish uchun ishlatiladi. C# dasturlash tilida bu xususiyat odatda swtich case, if else operatorlari yordamida ishlatiladi. _

**2 savol:** Pattern Matching C# da qachon paydo bo'lgan ?

> _`Pattern Matching` C# dasturlash tilida ilk bor C# 7.0 versionda paydo bo'lgan. Undan keyin esa **C# (8.0, 9.0, 10.0, 11.0, 12.0 ∞)** larda ancha kengaytilishni boshlagan, hozirgacha C# kuchayishdan to'xtamayapdi 🔥_

**3 savol:** Pattern Matching yordamida turli ma'lumot turlarini qanday qilib tekshiramiz ?

> _Pattern Matching orqali ma'lumot turlarini tekshirib olish uchun `is` kalit so'zidan foydalaniladi. _

Misol uchun:
```
object obj = "Ozodbek";
if (obj is string)
    Console.WriteLine(true);
else 
    Console.WriteLine(false);
```
> _ushbu kodda `is` yordamida biz "Ozodbek"ni string ekanligini aniqlashimiz mumkin. Hozir bu yerda natija `true` qaytadi. Sababini tushuntirib o'tirmayman. _

**4 savol:** Switch case da Patterns qanday ishlaydi ? 

> _Switch case orqali C# 7.0 dan beri ishlab kelmoqda, biz esa hozirgi kundagi holatini ko'rib o'tamiz 👇_ 
```
object obj = 17;
switch (obj)
{
    case int i: Console.WriteLine("Butun son. Ya'ni integer"); break;
    case double d: Console.WriteLine("O'nlik. Ya'ni double"); break;
    case string s: Console.WriteLine("String matn. Ya'ni harf, son aralash belgilar"); break;
    default: Console.WriteLine("Boshqa tip"); break;
}
```
Bu yerda qaysi tipga mas'ul ekanini korishimiz mumkin bo'ladi. 

**5 savol: ** Tuple Pattern nima va u qanday ishlaydi ?

> _Tuple Pattern yordamida bir nechta qiymatlarni tekshirishimiz mumkin. Ming marta nazariya o'qigandan bir mart ko'rib review qilgan yaxshi deganlaridek👇 _

```
Console.WriteLine("Sonlarni birma bir kiriting! Har bir sonni kiritgandan keyin enter tugmasini bosishni unutmang! Ogohlik Tashkent talabi!");
(int, int) raqam = (int.Parse(Console.ReadLine() ?? ":)"), int.Parse(Console.ReadLine() ?? ":)"));
switch (raqam)
{
    case (0, 0): Console.WriteLine("Xato son kiritdingiz!"); break; 
    case (23, 17): Console.WriteLine("Xato son kiritdingiz, Lekin sal yaqinlashtingiz!"); break;  
    case (17, 23): Console.WriteLine("Tog'ri son kiritdingiz!"); break;
    default: Console.WriteLine("Boshqa son kiritdingiz!"); break;
}
```

**6 savol:** Property Pattern nima ? 

Property pattern yordamida obyektning xususiyatlarini tekshirishimiz mumkin!

```
public class Circle 
{
     public int Radius { get; set; } 
}
var shakl = new Circle { Radius = 5 };
if (shakl is Circle { Radius: 5 })
{
    Console.WriteLine("Bu doirani radiusi 5 ga teng!");
}
```
Bu yerda property pattern yordamida shaklning Radiusi aniqlanadi

Davomi bor 

https://chatgpt.com/share/12ee29aa-2b10-41e9-b577-540e6b35620a
Free Tool: Mesher
Tags: gradients, css, animatedgradients, nextjs
Published: 2024-06-26 13:23:02

Hi, i've recently developed _(yet another)_ small tool to [generate vanilla CSS animated gradients](https://mshr.app). It's still in it's early stages but i would love to get some feedback from all of the community, wishing this tool can help someone generate some cool gradients.

Link: [mshr.app](https://mshr.app)

![Mshr.app](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xwe5k05wevfld6b99ldt.png "Mesher")
Power of Real DOM in JavaScript
Published: 2024-06-26 13:21:15

 

JavaScript developers, ready to transform your coding game? Dive deep into the world of Real DOM manipulation and discover how mastering this essential skill can revolutionize your web development journey. Let’s break it down with the Pareto Principle, ensuring you focus on the vital 20% that delivers 80% of the results.

📌 **Key Takeaways:**

1. **Understand the Basics**: Grasp the core concepts of DOM (Document Object Model) to manipulate web pages dynamically.
2. **Select with Precision**: Learn how to efficiently select DOM elements using methods like `getElementById`, `querySelector`, and more.
3. **Manipulate with Ease**: Add, remove, and modify elements with JavaScript to create interactive and dynamic user experiences.
4. **Event Handling**: Master event listeners to respond to user actions and enhance interactivity.
5. **Optimize Performance**: Ensure your DOM manipulations are smooth and efficient to maintain a seamless user experience.

🌟 **Why Focus on Real DOM?**
- **Interactivity**: Bring your web pages to life with dynamic content and user interactions.
- **Customization**: Tailor the user experience with real-time updates and changes.
- **Control**: Gain full control over your HTML and CSS through JavaScript.

🚀 **Pro Tips:**
- Use **sticker annotations** within your code for quick reminders and tips.
- Regularly practice DOM manipulation tasks to reinforce your understanding and skills.
- Keep performance in mind; minimize reflows and repaints to ensure a smooth user experience.

✨ **Get Started Today!**
Harness the power of Real DOM in JavaScript and take your web development skills to new heights. Focus on the essential techniques and watch your productivity soar!
Microsoft Entra External ID & Cerbos ✨
Tags: authz, tutorial, cerbos, javascript
Published: 2024-06-26 13:18:37

👋 Looking to level up your authentication (authn) and authorization (authz) game? Here's a great tutorial that dives into integrating Microsoft Entra External ID for seamless external authentication and Cerbos for top-notch, fine-grained authorization. You’ll learn about adding authentication to your external-facing apps, how to write policies, and what a policy decision point is. With clear steps, sample code, and just enough YAML to meet your daily quota, you'll learn to create secure and scalable solutions that are actually usable in the real world. Check out the [full guide here](https://bit.ly/45FdSGu)!

As an added bonus, this is actually part two of a three-part series. If you’re not entirely sure what authentication and authorization are (or just want a refresher before diving into the tutorial), you should definitely check out the [first part](https://devblogs.microsoft.com/identity/extneral-id-and-cerbos/), too. 😄

Questions? Comments? Hit us up in our [Community Slack](https://go.cerbos.io/slack)—let's get that conversation going!
How-to fix Git com GPG Lock
Published: 2024-06-26 13:13:25

Um dia, sem mais nem menos, você não consegue mergear uma branch em outra ou sequer fazer um commit manual, porque ao tentar recebe a mensagem de erro:

```
gpg: waiting for lock (held by 4242) ...
```

E agora, o que aconteceu?
_Será que a chave GPG expirou e eu devo renovar?
Seria um lock no processo e matar o processo resolveria?
Devo apelar para o desinstala/instala?_

Esse problema vem de um congelamento durante o processo de commit que apesar de raramente acontecer, quando ocorre é geralmente causado por problemas de bloqueio GPG. 

A boa notícia é que é super simples resolver esse problema!

**Começamos procurando e removendo o(s) arquivo(s) de lock**

```
❯ ls -l ~/.gnupg/*.lock
❯ rm ~/.gnupg/[lock-file-name].lock
```

**E finalizamos reiniciando o GPG**

```
❯ gconf --reload gpg-agent
```

Uma vez removido o arquivo e reiniciado o GPG, você consegue outra vez commitar e realizar outras operações do GIT =)

Ah, e caso queira consultar o 'status' do GPG, você pode imprimí-lo no seu terminal:
```
❯ echo "test" | gpg --clearsign
```
DumpsBoss AWS Practitioner Exam Dumps Your Study Plan
Published: 2024-06-26 13:04:35

Unveiling the Secrets of AWS Practitioner Exam Dumps 
Introduction
In the fast-paced world of cloud computing, obtaining certifications can significantly boost one's career prospects. Among these certifications, the AWS Certified Cloud Practitioner stands out as an entry-level credential that validates essential knowledge of the <a href="https://dumpsboss.com/certification-provider/amazon/">AWS Practitioner Exam Dumps</a>. However, the journey to becoming certified can be daunting, especially when it comes to preparing for the exam. This article delves into the realm of AWS Practitioner Exam Dumps , exploring their utility, ethical considerations, and the most effective strategies for leveraging them.
Understanding AWS Practitioner Exam Dumps Certification
What is AWS Practitioner Exam Dumps Certification?
AWS Practitioner Exam Dumps Certification serves as an entry point into the world of AWS, validating foundational knowledge of the AWS Cloud and its basic architectural principles.
Importance of AWS Practitioner Exam Dumps Certification
•	Career Advancement: It opens doors to various job opportunities in cloud computing, including roles such as cloud architect, cloud consultant, and cloud developer.
•	Skill Validation: <a href="https://dumpsboss.com/certification-provider/amazon/">AWS Practitioner Exam Dumps</a> demonstrates proficiency in fundamental AWS services, enhancing credibility in the eyes of employers and clients.
Exploring AWS Practitioner Exam Dumps 
What are AWS Practitioner Exam Dumps ?
AWS Practitioner Exam Dumps  refer to collections of exam questions and answers purportedly obtained from previous test takers. These dumps are often shared online through forums, websites, and social media platforms.

For More Free Updates >>>>>: https://dumpsboss.com/certification-provider/amazon/
Unified Software Solutions for Business Efficiency
Tags: webdev, beginners
Published: 2024-06-26 13:04:01

The [Software solutions integrated ](https://engageexperts.ae/software-solutions-integrated/)seamlessly combine various applications and systems to function as a cohesive unit, enhancing efficiency and productivity. These solutions enable different software components to communicate and work together, facilitating data sharing and process automation. Integration can be achieved through APIs, middleware, or custom coding, ensuring that disparate systems operate harmoniously. This approach helps businesses streamline operations, reduce manual tasks, and improve decision-making by providing a unified view of information. Integrated software solutions are essential in today's digital landscape, driving innovation and enabling organizations to adapt quickly to changing market demands and technological advancements.
Creating A Radio Software
Tags: webdev, javascript, programming, react
Published: 2024-06-26 13:02:49

## Day 1: Starting My Radio Software Project

Hello, World! 👋 

My name is Preston Arnold, a 14-year-old developer from the UK with 4 years of experience in Website Development. 

Anyways, enough about me.

## Inspirations

For this project, I've drawn inspiration from some fantastic radio automation software:
- **[RadioDJ](https://www.radiodj.ro/)**
- **[PlayIt Live](https://www.playitsoftware.com/Products/Live/)**
- **[AzuraCast](https://www.azuracast.com/)**

## Technology Stack

Here's the technology stack I'm planning to use:

- **React TS + Vite**
- **Tauri or Electron**
- **PostgreSQL**

I'll add more technologies as the project evolves.

## My Audio Library

If we decide to use Electron, I've already created an audio library that could be very useful. You can check it out here:
- **[GitHub](https://github.com/prestonarnold0/audio)**
- **[NPM](https://www.npmjs.com/package/@prestonarnold/audio)**

Stay tuned for more updates as I progress with this exciting project!

---

*This is my first blog post on [dev.to](https://dev.to), so I hope you enjoy it!*

Feel free to reach out with any feedback or suggestions.

Happy hacking! 🚀