teleren/devto huggingface dataset:
Connecting kafka externally
Published: 2023-02-20 06:51:23

Hi Team,

I have deployed kafka using bitnami helm charts latest version and .And enabled sasl_ssl auth for the same, internally I m able to produce and consume topics from kafka client, When I trying to access it externall using my dns abcd.com its showing the below error msg.

Here I m using haproxy to route traffic and enabled nodeport kafka service. That port was mapped in haproxy config to make connection b/w them.
[2023-02-20 06:27:31,940] WARN The configuration 'consumer.ssl.endpoint.identification.algorithm' was supplied but isn't a known config. (org.apache.kafka.clients.producer.ProducerConfig)
[2023-02-20 06:27:31,940] WARN The configuration 'enable.ssl.certificate.verification' was supplied but isn't a known config. (org.apache.kafka.clients.producer.ProducerConfig)
[2023-02-20 06:27:31,941] WARN The configuration 'advertised.listeners' was supplied but isn't a known config. (org.apache.kafka.clients.producer.ProducerConfig)
[2023-02-20 06:27:31,941] WARN The configuration 'producer.ssl.endpoint.identification.algorithm' was supplied but isn't a known config. (org.apache.kafka.clients.producer.ProducerConfig)
>[2023-02-20 06:27:34,754] WARN [Producer clientId=console-producer] Connection to node -1 (abcd.com/20.160.19.65:30753) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
[2023-02-20 06:27:34,756] WARN [Producer clientId=console-producer] Bootstrap broker genix-rnd.westeurope.cloudapp.azure.com:30753 (id: -1 rack: null) disconnected (org.apache.kafka.clients.NetworkClient)
[2023-02-20 06:27:37,643] WARN [Producer clientId=console-producer] Connection to node -1 (abcd.com/20.160.19.65:30753) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
[2023-02-20 06:27:37,643] WARN [Producer clientId=console-producer] Bootstrap broker abcd.com:30753 (id: -1 rack: null) disconnected (org.apache.kafka.clients.NetworkClient)
Why snowflake does not become the de facto for cloud?
Tags: snowflake
Published: 2023-02-20 06:46:32

Snowflake is a popular cloud-based data warehousing and analytics platform, but it has not become the de facto standard for cloud-based data warehousing and analytics for several reasons, including:

Competition: There are other cloud-based data warehousing and analytics platforms such as Amazon Redshift, Google BigQuery, and Microsoft Azure Synapse that offer similar features and capabilities.

Cost: Snowflake can be expensive, especially for small to medium-sized businesses. Other platforms may be more cost-effective for their needs.

Migration: Migrating to Snowflake can be a challenging process, especially for businesses that have already invested in another data warehousing and analytics platform.

Complexity: While Snowflake is designed to be easy to use, it can still be complex to set up and maintain, which can be a barrier to adoption for some users.

Integration: Snowflake may not integrate as easily with some existing on-premises systems or other cloud-based services, which can make it less attractive for some users.

Vendor Lock-in: Lastly, there are some concerns around vendor lock-in also

Overall, even though Snowflake provides numerous benefits, not every firm will find it to be the ideal fit for their needs, and other cloud-based data warehousing and analytics solutions may be a better fit.
The years of experience deception...
Tags: career, writing, devjournal
Published: 2023-02-20 06:33:40

> Head Hunter: Hi, I'm looking for a software engineer to fill a vacancy in one of our client's teams. Can you tell me how many years of experience you have with JavaScript?
> Engineer: Hi! I have been working with JavaScript for eight years.

I just hate this type of conversation, where the number of years is the only thing that gives value to your experience, it could be eight years of mindless copy+paste from Stack overflow or two years of pure hard work and carefully reading documentation.

Using years of experience as a metric to measure a skill or domain of a language or technology is often not an accurate measure of a developer's proficiency or expertise.

Why not? You may ask, here are four reasons why:

1. The number of years of experience does not always correlate with the quality of that experience. Someone may have been working with technology for several years but not have developed a deep understanding of it or may have developed poor habits or practices that they continue to follow.

1. The rate of change in the technology landscape is such that experience in a technology five years ago may not be very relevant today. For instance, a developer who has ten years of experience with a certain programming language may be much less proficient than another developer with only two years of experience, but who has worked with the latest version of that language.

1. The scope of work done by developers with the same amount of experience may vary greatly. Some may have worked on large, complex projects, while others may have only worked on small, straightforward projects. This makes it difficult to compare their skill levels based solely on their years of experience.

1. Different developers learn and grow at different rates. A developer who has worked with a certain technology for five years may be less knowledgeable than someone who has only been working with it for two years but has actively pursued learning and professional development opportunities.

Ultimately, the best way to measure a developer's skill level is through objective metrics, such as code quality, efficiency, and successful project completion. Years of experience can be a useful data point if you have a portfolio generated during this period, but it should not be the sole factor considered when assessing a developer's proficiency in a particular technology or domain.


In conclusion, while the number of years of experience is one factor to consider when assessing the experience of a software engineer, it should not be the only metric. Many other factors can influence a developer's proficiency and expertise, including the quality of their experience, the types of projects they have worked on, and their commitment to ongoing learning and professional development. To truly understand a developer's experience and skill level, recruiters and hiring managers should look beyond years of experience and consider more objective metrics, such as code quality, project outcomes, and the ability to solve complex technical problems.
𝐃𝐞𝐜𝐢𝐩𝐡𝐞𝐫 𝐰𝐢𝐭𝐡 𝐙𝐚𝐫𝐲𝐚𝐛 𝐧𝐨𝐰 𝐡𝐚𝐬 𝐢𝐭𝐬 𝐨𝐰𝐧 𝐇𝐎𝐌𝐄. 🏡
Tags: web3, blockchain, programming
Published: 2023-02-20 06:30:26


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kp4m3rikroarg2y4axxe.png)_Attention Developers, Smart Contract Ninjas, and Web3 Enthusiasts._

Excited to share with you all about the launch of my independent publication, Decipher with Zaryab.
Started on 20th June 2022, with a family of 2000+ subscribers on LinkedIn, Decipher with Zaryab has now found its own home at 𝘇𝗮𝗿𝘆𝗮𝗯𝘀.𝗰𝗼𝗺

Decipher with Zaryab is aimed at helping Web3 builders become better Smart Contract Developers with strong mental models around Web3 & Smart Contract Security.
The publication provides simplified and curated technical (and sometimes not-so-technical) content for some of the most complicated but interesting topics in Web3.
Additionally, this publication is designed to help Web3 enthusiasts become valuable Web3 contributors.

---

## The Bigger Picture
With its curated and simplified technical (and sometimes non-technical) content, this publication aims to:
* Help software developers easily start out with smart contract development.
* Provide simplified content for some of the most complicated technical or non-technical topics in Web3.
* Emphasize the significance and need for Smart Contract Security while developing smart contracts
* Share well-evaluated mental models for writing better, optimized, and secure smart contracts.
* Guide Web3 enthusiasts to become valuable Web3 contributors

---
If you are someone who:
* Strives to be a better smart contract developer
* Become a valuable contributor to the Web3 space
* Understand the significance of having mental models for being productive as a Developer
* Loves simplified, curated, and well-researched content that gives you the 'AHA' moments

𝐓𝐡𝐢𝐬 𝐩𝐮𝐛𝐥𝐢𝐜𝐚𝐭𝐢𝐨𝐧 𝐢𝐬 𝐟𝐨𝐫 𝐘𝐎𝐔.

𝗔𝗹𝗽𝗵𝗮: 𝙰 𝚗𝚎𝚠 𝚊𝚛𝚝𝚒𝚌𝚕𝚎 𝚜𝚎𝚛𝚒𝚎𝚜 𝚒𝚜 𝚝𝚘 𝚋𝚎 𝚕𝚊𝚞𝚗𝚌𝚑𝚎𝚍 𝚝𝚘𝚖𝚘𝚛𝚛𝚘𝚠. 𝚂𝚝𝚊𝚢 𝚃𝚞𝚗𝚎𝚍 👀
𝐒𝐮𝐛𝐬𝐜𝐫𝐢𝐛𝐞 𝐓𝐨𝐝𝐚𝐲 to get access to the full archive of everything that's been published before and everything that's still to come. Your very own private library is at https://www.zaryabs.com/.
Weekly 0048
Tags: weeklyretro
Published: 2023-02-20 06:26:31

### Monday

I spent a few hours this morning to organize my activities for the week. It seemed like waste hours but at the end of the day I understood that it’s not.
Now I have the week with a better plan and a better organization.

I have also created a new page in my Second Brain template to visualize all the tasks and activities in a calendar view.
I think I will create the same view in the template and I will send an update to all my customers.

After that I worked for the rest of the day on the Recycle Bins Manager solution for a customer.
I solved the 90% of the bugs and tomorrow morning I will finish with the last one.
In the afternoon I will have a meeting with the customer and I want to be sure that everything works like a charm.

**Mood:** 🤖

### Tuesday
I worked all day on the Recycle Bin solution for a customer.
I did the installation on the customer's test environment but I wasted a lot of time to understand why I had issues in that environment and not from my local environment.
After a while I discovered a difference between the implementation for local business logic and the implementation for "production"!

**Mood**: 🤖

### Wednesday
I was sick today. No work at all but I had a meeting with a customer.

**Mood: 🤒**

### Thursday
My son was sick as well, so, no work for today.

**Mood: 🤒**

### Friday
Today I tried to come back to be productive at work starting from easy tasks.
In the afternoon I published a new VS Code Extension  called “PowerShell Snippets for VS Code” - [https://marketplace.visualstudio.com/items?itemName=emanuelebartolesi.powershell-snippets-vscode](https://marketplace.visualstudio.com/items?itemName=emanuelebartolesi.powershell-snippets-vscode)

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

**Mood: 😊**

---

Are you interested in learning GitHub but don't know where to start? Try my course on LinkedIn Learning: [Learning GitHub](https://bit.ly/learninggithub).

![LinkedIn Learning](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sdc2bpiftpadibi4h51c.gif)

---

Thanks for reading this post, I hope you found it interesting!

Feel free to follow me to get notified when new articles are out 🙂

{% embed https://dev.to/kasuken %}
When is a Computer Said to Have Passed A Turing Test
Tags: webdev, javascript, beginners, programming
Published: 2023-02-20 06:25:35

- 
A computer is said to have passed the Turing test **"if it is able to convince a human evaluator that it is a human, based on its responses to a series of questions or prompts."** The Turing test, which was first proposed by the mathematician and computer scientist Alan Turing in 1950, is designed to test a machine's ability to exhibit intelligent behavior equivalent to, or indistinguishable from, that of a human.

- 
In the Turing test, the computer must engage in natural language conversations with one or more human evaluators, who are unaware that they are communicating with a machine. If the evaluator(s) cannot consistently distinguish the computer's responses from those of a human, the computer is said to have passed the Turing test.

- 
It is worth noting that passing the Turing test is not equivalent to demonstrating true intelligence, consciousness, or sentience, as it only tests a machine's ability to mimic human behavior. Nevertheless, passing the Turing test has historically been considered a significant milestone in the development of artificial intelligence.
Re-Learn, Review, Recycle
Tags: career, jobhunt, webdev, ruby
Published: 2023-02-20 06:10:44

TLDR: 
Slowing down and taking my time to not only review, but to apply myself for the job hunt is helping me to not over think it and to boost my confidence.

After spending the last year studying ruby I am finally starting to feel ready for the job hunt. I am working on cleaning up my GitHub to try out the new things I have learned that I didn't know in the beginning.

The crazy thing about bootcamps is they move SO FAST. I cannot believe all the things that I have learned the past year. As I am going through all my old projects to refactor and work on improving my documentation. I am realizing not only how far I have come but how fast I have moved. Right now I am really appreciating my time to go through my older stuff as a refresher on the little things.

As for my job hunt. I think I was moving too fast. I was applying and doing little to no research on the companies that I wanted to work with (which I do NOT advise). I felt so rushed and like I had the weight of the world on my shoulders. My new strategy is to research the companies and really find companies that agree with my values and where I want to go in my new career.

It is a journey that I have really had to take a step back and not rush through. I am learning to slow down and really take my time, this whole portion of my career has been so helpful and enlightening to me.
🩹 Generating and applying git patches
Tags: git
Published: 2023-04-22 19:28:49

---
title: 🩹 Generating and applying git patches
published: true
date: 2023-02-20 00:00:00 UTC
tags: Git
canonical_url: https://bstefanski.com/generating-and-applying-git-patches
---

Git has a feature called [patches](https://git-scm.com/book/id/v2/Appendix-C%3A-Git-Commands-Patching) that is great for quickly delivering stuff to other teams when there's a fire happening.  
<!-- -->It might not be the most elegant solution, since sending the code in a form of file doesn't sound too safe, but hey, it works and does the job!

In the nice happy world you would just add another remote and cherry pick stuff from one to another.  
<!-- -->This sounds solid, but sometimes takes quite a while, especially if you want to push to some new repository, on a different git provider and you need to setup a new SSH keys just for one pull and one push.  
<!-- -->Doesn't seem pragmatic to me. In such cases, I tend to just go with the patches. There are two ways of patching that you can choose from.

<section><h3 id="multiple-patch-files">Multiple patch files</h3>
<p>The first one will generate multiple patch files. One per commit. Here's how you do this:</p>
<div data-language="bash">
<div></div>
<pre><div><span><span>$ </span><span>git</span><span> format-patch -3</span></span></div></pre>
</div>
<p>It will create a patch files from the last three commits. And then apply it with (not sure what <code>am</code> acronym means, but I always translate it to <code>apply many</code>)</p>
<div data-language="bash">
<div></div>
<pre><div><span><span>$ </span><span>git</span><span> am</span></span></div></pre>
</div>
<p>Git will automatically scan for those files and apply them in correct order.</p></section><section><h3 id="single-patch-file">Single patch file</h3>
<p>Or the second way, my favorite, is squashing everything into one patch file, like so:</p>
<div data-language="bash">
<div></div>
<pre><div><span><span>$ </span><span>git</span><span> format-patch -3 --stdout </span><span>&gt;</span><span> your-patch-name.patch</span></span></div></pre>
</div>
<p>and then applying it with</p>
<div data-language="bash">
<div></div>
<pre><div><span><span>$ </span><span>git</span><span> apply your-patch-name.patch</span></span></div></pre>
</div></section>
Conquering the Learning Curve of Bazel: My Ongoing Struggles and Hopeful Horizon 📈🌅
Published: 2023-02-20 05:57:58

---
title: Conquering the Learning Curve of Bazel: My Ongoing Struggles and Hopeful Horizon 📈🌅
published: true 
description: 
tags: 
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-02-15 01:16 +0000
---

Hey everyone! 🤗 Today, I wanted to talk about something that's been on my mind lately: 🤔 Bazel! This amazing build tool has SO much potential, but for me, there's been a bit of a learning curve 😩📈.

One particular challenge I've faced is with rules_nodejs 🚫. As a developer, one of my go-to tools is Storybook JS 📚🤓, but it seems almost IMPOSSIBLE to run it with rules_nodejs 😵. I've spent COUNTLESS hours trying to get it to work, but it's just not happening.

BUT, there's hope on the horizon! 🌅 I've been hearing great things about rules_js, and I'm optimistic that it will fix all the problems I'm facing with rules_nodejs. 🙏🤞 Fingers crossed! I'll be sure to share my experiences with rules_js soon.

Overall, I think it's important to remember that learning a new technology takes time and patience. 🕰️🧘 Even though I'm struggling with Bazel right now, I know that with persistence and a bit of help from the community, I'll get there eventually. 🤝
Introduce you myself
Tags: webdev, github, programming, fullstack
Published: 2023-02-20 05:43:16

Hey everyone!

I'm Brandon, an undergrad student studying computer science. I'm passionate about full-stack development and recently worked on a cool project blockchain web3 application.

If you like what you see, follow me and give my project a star! Also, check out my LinkedIn and portfolio website to learn more about me. Let's connect and stay in touch!
[GitHub Profile](https://github.com/bbkx226)
[Portfolio Website](https://www.bbkx.live/)
[LinkedIn](https://www.linkedin.com/in/bbkx/)
[My Recent Work](https://blockchainapp-4e293.web.app/)
What are the different Route 53 Routing Policies?
Tags: aws, cloud, devops, beginners
Published: 2023-02-20 05:43:09

1. Simple
Route traffic to a single resource. As simple as that !

2. Weighted
Specify how much % of requests a specific resource should handle.
Fun fact: if you specify the weight=0 for all the resources, traffic would be equally distributed.

3. Failover
Primarily used for the DR purpose, an active-passive setup tied up with the resource health checks. If the primary health check fails, requests are auto routed to the secondary.


4. Latency based
Redirect the users to the AWS regions with the least latency
Fun fact: need not be the region closest to the user always!

5. Geolocation
To route traffic based on the user location.
Matched users are routed to the pre-configured locations, the default location is mandatory in this policy to re-direct the users from the no-match locations.

6. Multi-Value Answer
when you want route53 to respond to DNS queries with up to 8 healthy records selected at random.
Note: multi-value by any means is not a replacement for a load balancer.


7. Geoproximity
Shifts traffic based on bias.
To allow more traffic (bias range: 1 to 99)
To shrink traffic (bias range: -1 to -99)

The diagram below shows all 7 available Route 53 Routing Policies.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/23nb6dyx15bl7n0hbrs4.PNG)

Feel freel to follow me here: https://www.linkedin.com/in/govardhana-miriyala-kannaiah/

for more cool content !
How to use a different style while reusing a component ?
Tags: webdev, css, beginners, react
Published: 2023-02-20 05:20:47

In the CSS of the reusable component, create as many styles you want using '&'. 

Note: Assuming that the **className** is component.

```
.component{
    // write the common styles here
}

.component {
    &-style1 {
        // write style 1 
    }
    &-style2 {
        // write style 2 
    }
}
```

Here the &-style1 and &-style2 are the additional styles that has be used while re-using the component. Now when you have to use &-style1, simple add the following CSS classname to the classname attribute of the component. For example

`<div classname={"component component-style1"}>` 

This may need to passed as a prop to make it dynamic. Passing style={'-style1'} as a prop in the component and inside the component we can use the following.

`<div classname={"component component"+props.style}>`

That's it!
7 Tips and Tricks for Debugging in JavaScript
Tags: javascript, webdev, productivity, testing
Published: 2023-02-20 05:06:56

Debugging is an essential part of software development, and JavaScript is no exception. Whether you're building a small application or a large-scale project, you'll inevitably run into bugs that need to be fixed. In this blog post, we'll discuss some tips and tricks for debugging in JavaScript.

## 1. Use `console.log()`

One of the simplest and most effective ways to debug JavaScript code is by using `console.log()`. This method allows you to print the value of a variable or an expression to the console. By using `console.log()` at different points in your code, you can get a better understanding of what's happening at each step.

## 2. Use Debuggers

Debuggers are tools that allow you to stop the execution of your code at a particular point and inspect the state of your application. Most modern browsers have built-in debuggers that you can use to step through your code, set breakpoints, and examine variables. Using a debugger can be very useful for complex bugs that are hard to track down.

## 3. Check for Syntax Errors

Syntax errors can cause your code to fail before it even runs. The good news is that these errors are usually easy to spot. Most text editors and IDEs will highlight syntax errors in your code, so it's important to pay attention to these warnings.

## 4. Use a Linter

A linter is a tool that analyzes your code for potential errors and style issues. By using a linter, you can catch potential bugs before they even happen. Linters can also enforce consistent code style across your team, making your code more readable and maintainable.

## 5. Break Your Code into Smaller Pieces

When you're trying to track down a bug, it's often helpful to break your code into smaller pieces. By isolating the problematic code, you can more easily determine the source of the bug. You can then gradually add back in the rest of your code, testing each step along the way.

## 6. Use Error Messages

Error messages are your friends! They can provide valuable information about what went wrong in your code. When you encounter an error, make sure to read the error message carefully. Often, the error message will give you a clue as to what caused the bug.

## 7. Get a Fresh Perspective

Sometimes, it's helpful to step away from your code for a little while and come back to it with fresh eyes. In the meantime, you can ask a colleague to take a look at your code. A fresh perspective can often help you spot issues that you might have overlooked.

## Conclusion

In conclusion, debugging is an essential part of software development, and JavaScript developers need to be proficient in debugging techniques. By following these tips and tricks, you can save yourself a lot of time and frustration when hunting down bugs in your code. Remember to use `console.log()`, debuggers, syntax checking, linters, break your code into smaller pieces, read error messages carefully, and get a fresh perspective. Happy debugging!