teleren/devto huggingface dataset:
Data Plane/Worker Node - k8s
Tags: scor32k, kubernetes, beginners
Published: 2023-09-15 09:40:34


When I started learning about the K8S architecture, the basic building blocks were the control plane, which is the master node, and the data plane, which is the worker node.

I thought, Why not share what I have learned?

  
This will be a three-part post: 1) Data Place 2) Control Place; and 3) The entire arch, which will be a combination of the data plane and the control plane.

  
So here it is:

## Data Plane/Worker Node Simplified

In Kubernetes (K8s), the smallest unit of deployment is called a pod.

Pod ?

Pod is a "wrapper" over the containers, which has advanced capabilities. Think of it as a little package that can contain your application.

When you run a pod, it's pretty much like starting a container.

In Docker, you have a thing called the "Docker engine", which runs the container, while in K8s, we have a similar thing called the "container runtime." This runtime takes care of running the actual container inside the pod.

Here's where it gets interesting. A pod can actually hold multiple containers. So, while Docker does containers, K8s does pods with containers inside them.

In Docker, we have the trusty **Dockershim** for running containers. But in K8s, we're more flexible. We can use **Dockershim**, **Container**, or **Crio**; these are all like different flavours of the same ice cream, competing to be your runtime. K8s allow you to pick the one you like.

Now, let's talk about the magic happening inside a pod on a K8s worker node. We have a little helper called Kubelet. This Kubelet is like a caretaker for your Kubernetes pod. It keeps an eye on whether your pod is running smoothly or not, and if not, it raises the alarm.

In Docker, we've got **docker0** and some network tricks to make sure containers talk to each other and to the host. In K8s, we've got something called **kube-proxy** doing similar network magic. It helps pods communicate with each other, sort of like a networking wizard.

So far, we've met three main characters in our K8s story:

1. **kube-proxy**: The networking guru. It handles IP addresses and load balancing, and it loves using something called "iptables" to work its magic on Linux machines.  
  
2. **Kubelet**: The pod creator and babysitter It gets pods up and running, and if something goes wrong, it raises a flag to the control plane.  
  
3. **Container runtime**: The workhorse It's the one that actually runs your container, making sure your application is alive and kicking.  

That's a glimpse into the world of worker nodes and pods in Kubernetes, where containers and pods work together in harmony.

This is the architecture of the data plane. Simple
Check the diagram, will help you understand more.
![diagram](https://res.cloudinary.com/practicaldev/image/fetch/s--57SV6tDD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://imgur.com/MuYnXCA.png)
Trend Alert: Discover the Stylish Eyeglass Frames for Women!
Tags: eyeglasse, fashion, beauty, eyewear
Published: 2023-09-15 09:33:54

The eyewear industry has truly mastered the art of blending style and functionality! It's an exciting fusion where fashion meets vision needs. Today, women have an incredible array of options to choose from, empowering them to showcase their unique personalities and elevate their overall appearance with the help of fabulous eyeglasses. 

Zeelool, a prominent brand in the eyewear market, stands out with its exceptional range of women's frame glasses. Not only do they offer fashionable designs, but their commitment to quality and customer satisfaction has earned them a dedicated following.

Now, let's explore the darlings of the eyewear trends that are dominating the scene for women:

Retro style: Vintage frames have made a strong comeback, adding a touch of nostalgia and charm to any outfit. Think oversized cat-eye frames, round John Lennon style glasses, or quirky geometric shapes. These frames exude confidence and help you make a bold fashion statement.

Bold colors style: Don't be afraid to embrace vibrant hues! Women's eyeglasses in rich and bold colors are all the rage. Whether it's a vivid red, a vibrant blue, or a sassy pink, these frames provide an instant pop to your look, drawing attention to your eyes and reflecting your vibrant personality.

Thin and Crystal style: Minimalism lovers, rejoice! Thin and crystal transparent frame glasses are having a moment. These sleek and understated designs effortlessly blend with any style. From barely-there wire frames to translucent acetate, these glasses offer a sophisticated and elegant touch to your ensemble.

Cat-Eye Craze style: Cat-eye frames continue to be a timeless favorite for women seeking a touch of femininity. This iconic shape has witnessed refreshing updates, making it more versatile than ever. Whether you opt for a classic cat-eye or experiment with exaggerated angles, these frames add a flirty and playful element to your look.

Unique Materials style: Eyewear has transcended traditional boundaries by experimenting with unconventional materials. Wood, metal, and even eco-friendly options have come into play, offering women an opportunity to make a sustainable fashion choice without compromising style.

Remember, the beauty of [women eyeglasses](https://zeelool.com/goods-list/81) lies in their ability to reflect your personality, enhance your features, and boost your confidence. With Zeelool's diverse collection, you can easily find the perfect frames to suit your individual taste and be on-trend.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8q0gn5ne9coiqoymzxzr.jpg)

Women's eyeglasses are all about embracing different styles, colors, and materials. Whether you're into retro vibes, making bold statements, or prefer a touch of subtle elegance, Zeelool has something waiting just for you. With Zeelool as your trusted eyewear companion, not only can you express your unique style, but you can also ensure that your vision is perfectly enhanced. It's a win-win situation!
What was your win this week?
Tags: discuss, weeklyretro
Published: 2023-09-15 09:30:00

---
title: What was your win this week?
published: true
description: Looking back on this past week, what was something you were proud of accomplishing?
tags: discuss, weeklyretro
published_at: 2023-09-15 09:30
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wyck78r593005hlbngyn.jpg
---

Hey folks 👋

Hope y'all enjoy your weekends!

Looking back on this past week, what was something you were proud of accomplishing?

All wins count — big or small 🎉

Examples of 'wins' include:

- Starting a new project
- Fixing a tricky bug
- Enjoying nature 🍃

---

![A sasquatch wearing sunglasses and a beanie is chilling in the woods, leaning against a tree stump and drinking coffee, the words "relax" "read" and "chill" pop up separately on the pic](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3krtjuhn8s0b88zbtepe.gif)
PikaTorrent, a modern, open source, BitTorrent app ⚡.
Tags: news, opensource, javascript, react
Published: 2023-09-15 09:16:10

Hi dev.to readers !

I'm thrilled to share with you **[PikaTorrent](https://www.pikatorrent.com/)** ⚡, a cross-platform, open source BitTorrent client. It is currently available on Linux, Windows, and Android.

I'm developing it for a few months with the following tech stack:
- [Expo](https://expo.dev) for targeting both mobile & web.
- [Tamagui](https://tamagui.dev) for the UI kit.
- [Electron](https://www.electronjs.org/) for the desktop app.
- Custom `libtransmission` bindings for [Nodejs](https://github.com/G-Ray/transmission-native/) & [react-native](https://github.com/G-Ray/react-native-transmission).
- WebRTC for remote control feature.

Some of PikaTorrent's features are:
- A modern, simple user interface, with dark mode support.
- Label management, filtering by text or labels, and sorting options.
- Share your torrents with your contacts or the world using a direct link. This allows you to share a torrent with someone who may not even be familiar with torrent clients. When the recipients click the share link, they can either open PikaTorrent or download it.
- Fast download speeds with low CPU and memory usage, thanks to `libtransmission`, the same engine written in C++ that powers Transmission.
- Integration with search engines. You can customize your favorite torrent search engines. While it will simply open your browser, navigate to the website, and type the query, I believe it's a convenient shortcut.
- Link the Android app with the desktop app by scanning a QR code. Advanced users can even run the 'pikatorrent' command line on a headless server and control it from the Android app or app.pikatorrent.com. No need to set up a domain name, TLS certs, etc.

I'm looking for feedback, feel free to join the discord, open issues on Github, or comment below 🤗

Website: [www.pikatorrent.com](https://www.pikatorrent.com)
Github: [github.com/G-Ray/pikatorrent](https://github.com/G-Ray/pikatorrent)
"I definitely didn't spend 3 hours on this question..😢#BinaryTreeAdventures" Solving Binary Tree Right Side View Leet code
Tags: programming, career, java
Published: 2023-09-15 09:10:19

## Intuition
We aim to find the right side view of a binary tree, which is the last visible node at each level when viewed from the right.

## Approach
I initially attempted a different approach, but it turned out to be more complex and time-consuming. 😅 However, I soon discovered that using a queue-based level-order traversal made the solution much more manageable. 🚀 This approach allowed me to easily find the rightmost node at each level and add its value to the result list. It was like the binary tree itself was guiding me towards the simpler path!

## Complexity
- Time complexity: O(n) where n is the number of nodes in the tree.
- Space complexity: O(n) in the worst case when the binary tree is completely unbalanced.


## Code
```
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public List<Integer> rightSideView(TreeNode root) {
        List<Integer> result = new ArrayList<>();
        
        if(root == null){
            return result;
        }

        Queue<TreeNode> queue = new LinkedList<>();
        queue.offer(root);

         while(!queue.isEmpty()){
             int size = queue.size();
             
             for(int i = 0 ; i < size ; i++)
             {
                 TreeNode node = queue.poll();
                 
                 if(i == size - 1){
                     result.add(node.val);
                 }

                 if(node.left != null){
                     queue.offer(node.left);
                 }

                 if(node.right != null){
                     queue.offer(node.right);
                 }
             }
         }

        return result;
    }
}
```

Happy coding,
shiva
Who's looking for open source contributors? (week 59)
Tags: discuss, opensource, contributorswanted, 100daysofoss
Published: 2023-09-15 09:00:00

---
title: Who's looking for open source contributors? (week 59)
series: Looking for Contributors
published: true
description: Discover which open source projects are actively seeking contributors. Learn how you can make a meaningful contribution to the open source community and gain valuable experience. Find out who's looking for open source contributors now.
tags: discuss, opensource, contributorswanted, 100DaysOfOSS
published_at: 2023-09-15 09:00 +0000
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
---
Open Source thrives through shared efforts. Whether you're a newcomer or a veteran, we're here to encourage your contributions, motivate your endeavors, and provide valuable assistance to maintainers. Together, we are building amazing things! 

## Tell us about your project
_Promote your project by providing a link to the repo. Everyone who posted in previous weeks is welcome back this week, as always 😄_

Open Source should be a welcoming space for contributors. The README is the front door of your project. If you'd like to check out an example of a README, here's our [OpenSauced/insights README](https://github.com/open-sauced/insights).

If you submit please have the following in your repo to make it welcoming and helpful for contributors:

1. README.md
2. CONTRIBUTING.md

Feel free to drop your issues and repos in the [OpenSauced Discord](https://discord.gg/opensauced) #:eyes:-looking-for-contributors channel at any time! 

Also, let us know if you'll be participating in Hacktoberfest.

If you're new to open source, and you're not sure where to start, check out our [Intro to Open Source course](https://github.com/open-sauced/intro). 

Finally, consider reading the [Best Practices for Maintainers](https://opensource.guide/best-practices/).

Just a note to say, we've restarted this post from something Ben was doing for a while :star-struck: 

Happy contributing!
Mastering DSA in 200 days Challenge
Tags: beginners, coding, learning, cpp
Published: 2023-09-15 08:45:48

****

_Hey everyone!I will be taking a new challenge in which I will try my level best to master or become better in DSA under 200days. I will be keeping my regular track through my posts and will be posting the problems or difficulties I faced during my learnings . I will mention my mistakes and will try to rectify them day by day!
I wish I'll succeed in this challenge and will become a better developer!
THANK YOU_
Top MySQL Interview Questions and Answers For Freshers 2023
Published: 2023-09-15 08:43:14

## Some common MySQL interview questions include:

- What is MySQL?
- Why is MySQL so popular?
- What are the tables in MySQL?
- Write a query for a column addition in MySQL
- What is a foreign key?
- What is MySQL workbench?
- How does database import/export work in MySQL?
- How can we delete a column or a row in MySQL?

## Here are some answers to these questions:

- MySQL is an open-source DBMS that is supported by most popular operating systems, such as Windows and Linux. It is mainly used for developing web applications.
- Access Control List (ACL) is a list of permissions that are associated with an object. ACLs are cached in the memory which allows users to quickly check for authentication.
- A table can have only one primary key. Primary key attributes cannot have duplicate values in a table. A table can have more than one foreign key. Duplicate values are acceptable for a foreign key.

Read More = [Top MySQL Interview Questions and Answers For Freshers 2023](https://www.tutsmake.com/mysql-interview-questions-and-answers)
O level Physics Tuition
Tags: physics
Published: 2023-09-15 08:42:50

Best Physics, Chemistry, Math tuition in Singapore by award winning tutors. ... CHEMISTRY. Mathematics Tuition - O level / IP / A level ...

visit our website - [O level Physics Tuition](https://www.sgphysicstuition.com/)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/auoyjwv95ewnhkvkvuwb.jpg)

Our tutors possess high qualifications and outstanding  achievements in the education industry. We will be able to help you tackle complex questions  efficiently by simplifying difficult concepts and ideas for you.

Our tutors possess affable and approachable personalities that help to build trust and relationships with students, ensuring each of them gets maximum value in the journey of academic success.
MY DAY1 AS AN ASPIRING SOFTWARE DEVELOPER
Published: 2023-09-15 08:20:45

Hey!Myself SANJANA PANDEY,a first year computer science-AI&ML undergraduate.Its going to be a beginning in my software developer career.I have done n number of research in finding the roadmap and understanding what's better for me as a beginner in programming . I have not much ample knowledge about the development and programming as I am going to start c++ as my first language , so I won't be able to write much about the development in my blog.I always had a great interest in coding and developments , I enjoy doing this ! I am following my passion by making it my profession and I love it!
After some time ,I am going to re read this blog and relive this beautiful beginning!
Next rust validator, should be ergonomics and functional
Tags: rust
Published: 2023-09-15 08:17:15

valitron is an new validator, It has multiple features:

- Ergonomics validation
- Build-in rule, e.g. Required, StartWith ...
- Closure validate
- Related validate, e.g. password confirm
- Custom rule with other parameter
- Check / modify input data
- Custom error message
- collect validate error messages
- Support all types data on #[dervic(Serialize, Deserialize)]

https://github.com/tu6ge/valitron
DevHunt: The Launchpad Changing the Developer Game!
Published: 2023-09-15 07:58:15

Hey devs, we get it 🙌! Launching your cool tools on places like ProductHunt can feel like yelling in a crowded room—easy to get drowned out by non-geeky stuff. 😒 So we thought, "Enough!" 🛑 and cooked up [DevHunt](https://devhunt.org/) for ya! 🚀

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uv3u5emm9ccow928hddh.gif)

DevHunt is your go-to launchpad, but like, on steroids 💪. Think a voting system, discovery perks, all aimed at getting your genius in the limelight 🌟. Plus, it's open-source, so go ahead, make it your own playground 🤖.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aa6db5rq5dsashlun7x2.gif)

But wait, there's more! 🎉 Robust profiles, hand-picked collections, kick-butt project management tools, and an awesome tribe of like-minded peeps. Whether you're dropping the next big hit or tinkering on your pet project, DevHunt's got your back 🎯. Come share your work, your way! ✌️

So what's the secret sauce that makes DevHunt a total game-changer? 🤔 A buzzing open-source fam, that's what! 🐝 No big corp pulling the strings here—DevHunt is all about that community power. 🤘

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d7g7rkizg2g00vg765yf.gif)

Hundreds of you awesome coders 👩‍💻👨‍💻 have already pimped out our website with their tools! 🍻

This isn't just a platform; it's a vibe! 💃🕺 Together, we're shaping DevHunt to be the rockstar it's destined to be, now and forever. 🎸 So what are you waiting for? Jump in and make some noise! 🎉🚀


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e97tdqmg71nzeed1rj7x.gif)
Data binding: Directives 🫰
Tags: vue, javascript, webdev, frontend
Published: 2023-09-15 07:53:45

## Overview
Vue provides a special attribute called "Directive" the reactive changes to the DOM.
In this article will explains what is a Directive and how to use it.
Let's start🤙🏻

## What is a Directive?
As mentioned in the paragraph above, Directive is a special attribute for apply the reactive changes to the DOM. 
Is recognizable because is preceded by the character `v-` and Vue provides [some Directives](https://vuejs.org/api/built-in-directives.html) like `v-if` or  `v-for`.
It's possible create custom Directives, but this an advanced concept.

---

## Arguments
```js
<a v-bind:href="url">Follow me on GitHub</a>
```

In the example above, the `v-bind` directive takes `href` as an argument and is associated with a JavaScript value, in this case a `url` variable.
The structure is:
-  `v-bind`, the name of Directive
-  `:href`, the name of argument preceded from semicolon
-  `url`, the value of binding

When the `url` changes, thanks to `v-bind`, Vue will apply the relative changes to the DOM.

## Dynamic Arguments
It also possible use the power of JavaScript and use a dynamic expression as argument in this way:

```js
<a v-bind:[dynamicArgument]="url">Click here!</a>
```

the argument is wrapped by square brackets and it's a JavaScript expression.
Dynamic arguments are expected to evaluate to a string, with the exception of null. The special value null can be used to explicitly remove the binding.

You have to keep in mind that certain characters such as spaces and quotes, are invalid inside HTML attribute names.

```js
<a v-bind:["link" + dynamicArgument]="url">Click here!</a>
```

This example above **is invalid**.

## Modifiers
There are some Directives, for example `v-on`, that have another attribute: **Modifier**.
They are are special postfixes denoted by a dot which indicate that a directive should be bound in some special way.

For example, it's possible to use `.prevent` on `v-on:submit`, and it will indicate to call `event.preventDefault()` on the triggered event.

```js
<form v-on:submit.prevent="onSubmit"></form>
```
## Shorthand
There are another to declare `v-bind` and `v-on`, shorthand way:

- `v-bind`: this directive is deleted completely in this way:

```js
<a :href="url">Follow me on GitHub</a>
```

- `v-on`: this directive is replaced by `@` in this way:
```js
<form @submit.prevent="onSubmit"></form>
```
---

## Conclusion
Directives are a very important feature of Vue that allow you to manipulate data dynamically.
For this reason it is essential to know in depth.
And now...
Happy coding!✨

---

Hi👋🏻
My name is Domenico, software developer passionate of Vue.js framework, I write article about it for share my knowledge and experience.
Don't forget to visit my Linktree to discover my projects 🫰🏻

Linktree: https://linktr.ee/domenicotenace

Follow me on dev.to for other articles 👇🏻

{% embed https://dev.to/dvalin99 %}
Use of Graph Databases
Tags: apacheage, postgres, postgressql, database
Published: 2023-09-15 07:45:33

Since nodes and edges are used to record entities and their relationships in graph databases like Apache Age and Neo4j, they are ideal for describing detailed linkages between data points. In contrast, data is stored in tables with specified schemas in typical relational databases like PostgreSQL, MySQL, and Oracle.

Graph databases have a number of benefits, including:

**Flexibility:** 
Because graph databases are schema-free, updating a node's or an edge's characteristics does not require altering the database schema as a whole. Contrarily, relational databases frequently need schema adjustments when dealing with different record attribute sets.


**Agility**
Agile development approaches are crucial in situations where graph databases shine. They are an excellent option for projects that call for quick development since they are effective at handling and storing data under time restrictions.

**Size versus complexity Trade-off**
There is a trade-off between the intricacy of relationships and database size. For situations where the complexity of relationships needs to be scaled effectively, graph databases are especially well suited. Relational databases, on the other hand, are more appropriate in situations where scaling the database's total size is the main concern.

In summary, graph databases offer a compelling alternative to conventional relational databases like PostgreSQL in terms of flexibility, agility, and performance when working with complicated interrelated data.