teleren/devto huggingface dataset:
Toxic tech interviews still rampant
Tags: hiring, interviewing, tech
Published: 2022-04-05 16:48:43

---
title: Toxic tech interviews still rampant
published: true
description: A trending tweet shows that the industry still enables jerks.
tags: hiring,interviewing,tech
//cover_image: https://direct_url_to_image.jpg
---

![Man sitting in an office chair looking at a woman writing on a white board](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q9zx43nrutwojzbott68.jpg)
[Photo by Tima Miroshnichenko from Pexels](https://www.pexels.com/photo/man-sitting-on-an-office-chair-looking-at-the-woman-writing-on-a-white-board-5439484/)

A tweet that is burning up my timeline today:

{% embed https://twitter.com/annarages/status/1511061905158377476 %}

If that seems outrageous, wait until you read the avalanche of similar experiences in the thread's replies.

Why is this so common, _still,_ in 2022? The tech industry has _always_ enabled jerks and it hasn't changed despite frequent calls for reform over the years. I have collected a folder full of bookmarks about similar issues for over a decade, and, yet, it doesn't seem to end.

- [Brilliant Jerks in Engineering](https://www.brendangregg.com/blog/2017-11-13/brilliant-jerks.html)

- [Be Kind](https://boz.com/articles/be-kind)

- [The Programming Talent Myth](https://lwn.net/Articles/641779/)

- [The Myth of the Sufficiently-Smart Engineer]()

Almost as stark as the calls for our industry to do better, are the "Top 10" articles about how you might be a bad programmer, which neglect to mention any human relationship skills _at all_, such as [Signs that you're a bad programmer](http://www.yacoset.com/Home/signs-that-you-re-a-bad-programmer).

It's rare to find an essay that pushes back on technical skills in favor of "soft skills" like Austin Tindle's [You need better programmers](https://medium.com/swlh/you-need-better-senior-software-developers-4c762950fe1).

I don't know how engineering managers and directors aren't fighting this invasive problem more. People shouldn't be in senior-and-above roles in engineering orgs if they are asshats. No one should have to write an article like [Tricks for Dealing with Toxic Colleagues](https://medium.com/s/office-politics/tricks-for-dealing-with-toxic-colleagues-fc19677300d6) but, in fact, we have many of them.

About interviews: the format of the typical tech interview itself sets up a power dynamic that is not productive. Not productive at all. If hiring is the goal, why is it that we put people in the stressful, alienating position of going into a strange room with no windows, that they've never been in, and then send a series of pairs of people in to grill them with questions and problems that don't even resemble the day-to-day work for a person in that position?

Something needs to change. 

Dear tech industry: Do Better.
tsParticles 1.43.0 Released
Tags: javascript, webdev, showdev, typescript
Published: 2022-04-05 16:39:00

# tsParticles 1.43.0 Changelog

## Architecture changes

- Removed all inner index files from the engine, the exported types are unchanged
- Added CLI project

## Bug Fixes

- Improved big circles preset, the effect is now better
- Improved particles check when drawing
- Some refactoring for smaller output size

## Compatibility changes

- Updated build configurations for plugins, shapes, presets, and other pluggable projects, imports are now more compatible with CommonJS and ESM
- Updated all plugins to use the new build system, improves imports compatibility
- Updated external interaction managers, added click mode handling
- Added more external interaction managers, like v2

---

{% github matteobruni/tsparticles %}
Unable to sent image attachement to django backend. Help appricated
Published: 2022-04-05 16:19:45

```
`import React, { useState } from "react";
import axios from 'axios';
import { useNavigate } from 'react-router-dom';

function CompanyForm() {
  const [name, setName] = useState("");
  const [title, setTitle] = useState("");
  const [price, setPrice] = useState("");
  const [upload, setUpload] = useState(null);

  const navigate = useNavigate();

  const AddInfo = async () => {
    let formField = new FormData()

    formField.append('name', name)
    formField.append('title', title)
    formField.append('price', price)
    formField.append('upload', upload)

    if (upload !== null) {
      formField.append('upload', upload)
    }


    const AddInfo = () => {
      const formField = new FormData()
      formField.append('name', name)
      formField.append('title', title)
      formField.append('price', price)
      formField.append('upload', upload)

    }

    await axios({
      method: 'POST',
      url: 'http://localhost:8000/',
      data: formField,

      headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
      },

    }).then((res) => {
      console.log(res.data)
      navigate('/')
    })

  }


  return (
    <form>
      <div className="mb-3">

        <label for="Name" className="form-label">Name</label>
        <input type="text" className="form-control" name="name" value={name} onChange={(e) => setName(e.target.value)} />
      </div>

      <div className="mb-3">
        <label for="title" className="form-label">Title</label>
        <input type="text" className="form-control" name="title" value={title} onChange={(e) => setTitle(e.target.value)} />
      </div>
      <div className="mb-3">
        <label for="price" className="form-label">Price</label>
        <input type="number" className="form-control" name="price" value={price} onChange={(e) => setPrice(e.target.value)} />
      </div>
      <div class="mb-3">
        <label for="upload" class="form-label">Upload</label>

        <input class="form-control" type="file" name="upload" onChange={(e) => setUpload(e.target.files[0])} />
      </div>

      <button type="submit" className="btn btn-primary" onClick={AddInfo}>Submit</button>
    </form>
  )
}

export default CompanyForm;`
```
What is a Peer-to-Peer(P2P) Network in Blockchain?
Tags: blockchain, web3, technology, programming
Published: 2022-04-05 16:12:45

**Hello Guys,**

Hope all are doing great!

Today I'm coming up with a new concept that we must know in a blockchain network i.e. _Peer-to-Peer(P2P)_ network.

So, what is a Peer-to-Peer or P2P network?

Any idea?

Cool.

**Let's start!**

In this article, we will see, **how the Bitcoin network works as a P2P network model.**

Bitcoin is structured as a _peer-to-peer_ network architecture on top of the internet. The term peer-to-peer, or P2P, means that all the computers that participate in the network are peer to each other, that they are all equal, that there are no "_special_" or "_central_" nodes, and all nodes share the burden of providing network services.

Confusing?

**Let's try to understand with an image.**


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

As you can see in the above image, all nodes(peers) are connected with each other, and there are no central or special nodes. The network nodes are interconnected in a mesh network with a "flat" topology. There is no server, no centralized service, and no hierarchy within the network. Nodes in a P2P network both provide and consume services at the same time with reciprocity acting as the incentive for participation. P2P networks are inherently resilient, decentralized, and open.

The best example of P2P network architecture was the early internet itself, where nodes on the IP network were equal. Today's internet architecture is more hierarchical, but the Internet Protocol still retains its flat-topology model.

I hope now you got some idea about the _Peer-to-Peer(P2P)_ network.

**Great!**

Now, let's see all **types of P2P networks.**

1. Unstructured P2P network
2. Structured P2P network
3. Hybrid P2P network

**1. Unstructured P2P Network**

In this type of network, there is no specific organization of the nodes. Participants communicate randomly with one another. Also, this type of network is robust in nature.

**2. Structured P2P Network**

It allows nodes to precise search for files, even if the content is not available. This type of network is more efficient. And it requires higher maintenance.

**3. Hybrid P2P Network**

This type combines the conventional client-server model with some facts of the P2P architecture. It also improves the overall performance.

This is the basic idea of a _Peer-to-Peer_ or P2P network. I am sure, you got some idea about it.

**That's great actually!**

Hope you enjoy this reading. See you soon with a new article.
What is the best part of being a software developer?
Tags: discuss, career
Published: 2022-04-05 16:11:15

Thank you to everyone who weighed in about [the most frustrating part of software development](https://dev.to/ben/what-is-the-most-frustrating-part-of-software-development-31im) in yesterday's discussion.

Let's flip the script, what's the best part about this work?
Dịch vụ hút hầm cầu quận Bình Thạnh giá thấp, có bảo hành
Published: 2022-04-05 16:05:44

Dịch vụ hút hầm cầu quận Bình Thạnh giá thấp, có bảo hành
Môi Trường Xanh không chỉ cung cấp dịch vụ hút hầm cầu quận Bình Thạnh mà còn cung cấp dịch vụ thông cống nghẹt, thông tắc bồn cầu và xử lý rác thải.
https://dichvumoitruongxanh.com/hut-ham-cau-quan-binh-thanh/

Mọi người để xem thêm chi tiết về Dịch vụ hút hầm cầu quận Bình Thạnh giá thấp, có bảo hành. Quý khách có thể xem thêm thông liên lạc dưới đây để tiện cho bên Dịch Vụ Môi Trường Xanh dễ liên lạc, hỗ trợ nhanh chóng.
Thông tin liên lạc: Công ty Dịch Vụ Vệ Sinh Môi Trường Xanh
website: https://dichvumoitruongxanh.com/
Hotline: 0905.223.836
Top FREE Certificates in 2022
Tags: career, certificates, todayisearched
Published: 2022-04-05 16:05:20

## Table of Contents
1. [Coursera Courses](#coursera)
2. [Udemy Courses](#udemy)
3. [Google Courses](#google)
4. [HubSpot Academy](#hubspot-academy)
5. [Microsoft Learn](#microsoft-learn)
6. [MongoDB University](#mongdb-university)

### Coursera
1. [Data Structures and Algorithms](https://www.coursera.org/specializations/data-structures-algorithms)
2. [Machine Learning](https://www.coursera.org/learn/machine-learning)
3. [Successful Negotiation](https://www.coursera.org/learn/negotiation-skills)
4. [Business Statistics and Analysis](https://www.coursera.org/specializations/business-statistics-analysis)

### Udemy
1. [Deep Learning](https://www.udemy.com/course/deep-learning-prerequisites-the-numpy-stack-in-python/)
2. [Become an Android Developer from Scratch](https://www.udemy.com/course/become-an-android-developer-from-scratch/)
3. [SEO Training](https://www.udemy.com/course/whiteboard-seo/)
4. [Introduction to Project Management](https://www.udemy.com/course/project-management/)

### Google
1. [Google Ads](https://skillshop.withgoogle.com/)
2. [Google Analytics for Beginners](https://analytics.google.com/analytics/academy/)
3. [Data, ML, and AI](https://www.qwiklabs.com/course_templates/156)
4. [Cloud Computing Fundamentals](https://www.qwiklabs.com/course_templates/153)
5. [Advanced Google Analytics](https://analytics.google.com/analytics/academy/course/7)

### HubSpot Academy
1. [Content Marketing](https://academy.hubspot.com/courses/content-marketing)
2. [Digital Advertising 101](https://academy.hubspot.com/courses/digital-advertising)
3. [SEO Certification](https://academy.hubspot.com/courses/seo-training)
4. [Sales Management Training](https://academy.hubspot.com/courses/sales-manager-training-program)

### Microsoft Learn
1. [Azure SQL Fundamentals](https://docs.microsoft.com/en-us/learn/paths/azure-sql-fundamentals/)
2. [Microsoft Power Platform Fundamentals](https://docs.microsoft.com/en-us/learn/paths/power-plat-fundamentals/)
3. [Implement Information Protection](https://docs.microsoft.com/en-us/learn/paths/implement-information-protection/)

### MongoDB University
1. [MongoDB for Node.js Developers](https://www.classcentral.com/course/mongodb-university-mongodb-for-node-js-developers-1188)
2. [Diagnostics and Debugging](https://www.classcentral.com/course/mongodb-university-diagnostics-and-debugging-8832)
3. [Data Modeling](https://www.classcentral.com/course/mongodb-university-m320-data-modeling-13815)
4. [Authentication & Authorization](https://www.classcentral.com/course/mongodb-university-authentication-authorization-46750)
5. [MongoDB Security](https://www.classcentral.com/course/mongodb-university-mongodb-security-8831)
6. [Altas Security](https://www.classcentral.com/course/mongodb-university-a300-atlas-security-21018)
7. [Diagnostic Thinking](https://www.classcentral.com/course/mongodb-university-diagnostic-thinking-53389)

### Conclusion
Do you know any others to add onto the list? Leave them in the comments below

Happy coding!
How far in advance do you draft your posts?
Tags: discuss, writing, devto
Published: 2022-04-05 16:04:50

## Table of Contents
1. [Writing Days](#writing-days)
2. [Publishing Days](#publishing-days)

### Writing Days
#### Brainstorming
I personally am constantly brainstorming and starting drafts, jotting down notes for topics, and making mental notes for future articles. There is always something new I want to share whether it be something new I read about, a new project I am working on, or something amazing I discovered. My mentality is if it is useful to me, if I think it's amazing and cool, then someone else must too.

#### Sitting down and Writing
Actually writing....only happens once a week though. Maybe even once every other week. It really depends on how many articles I ended up with the week before.

### Publishing Days
I personally had started with posting articles once a day but slowly increased to an average of twice a day due to the volume of content I was creating. Easily, I could cut back on the writing and focus on my projects and studies more but I have always had a passion for writing and sharing.

What about you? How much do you write each week and how far in advance do you prepare your articles?

Happy coding!
Learn how to do network discovery in your Edge and Embedded project
Tags: opensource, network, mcu, luos
Published: 2022-04-05 16:00:11

Imagine how complicated it could be, sitting at a table without knowing anyone 🙄
⏩ https://docs.luos.io/docs/luos-technology/services/routing-table

This exact problem has always existed in edge and embedded systems development. 

Luos Engine has the solution 💪 

Each microcontroller has access to the Routing Table, which contains all the details (name, type, physical location, ...) of everyone existing in your network.
NumPy and Pandas
Published: 2022-04-05 15:53:50

Data scientists can use various tools and techniques to explore, visualize, and manipulate data. One of the most common ways in which data scientists work with data is to use the Python language and some specific packages for data processing.

**<u>NumPy</u>**
NumPy is a Python library that gives functionality comparable to mathematical tools such as MATLAB and R. While NumPy significantly simplifies the user experience, it also offers comprehensive mathematical functions.

**<u>Pandas</u>**
Pandas is an extremely popular Python library for data analysis and manipulation. Pandas is like excel for Python - providing easy-to-use functionality for data tables.

**<u>Explore data in a Jupyter notebook</u>**
Jupyter notebooks are a popular way of running basic scripts using your web browser. Typically, these notebooks are a single webpage, broken up into text sections and code sections that are executed on the server rather than your local machine. This means you can get started quickly without needing to install Python or other tools.

**<u>Testing hypotheses</u>**
Data exploration and analysis is typically an iterative process, in which the data scientist takes a sample of data and performs the following kinds of task to analyze it and test hypotheses:

Clean data to handle errors, missing values, and other issues.
Apply statistical techniques to better understand the data, and how the sample might be expected to represent the real-world population of data, allowing for random variation.
Visualize data to determine relationships between variables, and in the case of a machine learning project, identify features that are potentially predictive of the label.
Revise the hypothesis and repeat the process.
CFDump ShowUDFs Behavior
Tags: cfml, debugging, coldfusion
Published: 2022-04-05 15:48:59

I was writing some unit tests to identify the output of CFDump under different conditions and discovered that [Adobe](https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-tags/tags-d-e/cfdump.html) and [Lucee](https://docs.lucee.org/reference/tags/dump.html) treat the `showUDFs` parameter differently. I also use 3rdparty [CF_Dump](https://github.com/kwaschny/cf_dump) since it provides consistent behavior between CFML platforms. Since I've written my own internal Dumplite CFTag/CFC, I wanted to evaluate how it was already being supported before I updated how it worked.

## Adobe:
- Hides struct keys
- Shows array elements with UDF __(is this a bug?)__

## Lucee:
- Displays struct value as `<UDF>`
- Displays array element as `<UDF>`

## CF_Dump
- Displays struct key with empty value
- Displays array element with empty value

```
<cfscript>
function myUDF(){return now();}

test = [
    a: [1, myUDF, 3]
    ,b: myUDF
];

writeDump(var=test, showUDFs=false, label="showUDFs=false");
writeDump(var=test, showUDFs=true, label="showUDFs=true");

</cfscript>
```
The 2022 r/place story from the Italian view (and from bots)
Tags: opensource, reddit, python
Published: 2022-04-05 17:38:20

---
title: The 2022 r/place story from the Italian view (and from bots)
published: true
date: 2022-04-05 15:41:33 UTC
tags: OpenSource,reddit,Python
canonical_url: https://daniele.tech/2022/04/the-r-place-story-from-the-italian-view-and-from-bots/
---

The story seen by one of the team, with a stiff neck and little sleep.

The post [The 2022 r/place story from the Italian view (and from bots)](https://daniele.tech/2022/04/the-r-place-story-from-the-italian-view-and-from-bots/) appeared first on [Daniele Mte90 Scasciafratte](https://daniele.tech/eng).
Shell Scripting Basics
Tags: shellscripting, programming, beginners
Published: 2022-04-05 15:26:30

### What is a Script?
A Script is a command line program that contains a series of instructions. 
Anything that you can type in a command line, you can put in a script.

Let's greet the world with a script.
```#!/bin/bash echo "Hello World" ```

we will look into every component of this script a bit, but before that, let's first see how a script is interpreted and executed.

### Interpreting a Script. 
Any script is interpreted by an interpreter that executes the command one after the other. In the case of shell script, the shell accesses the interpreter and executes the commands. Functions that shell scripts support include loops, variables, if/then/else statements, arrays and shortcuts.

### Now the question is, why do we need scripts? 
If you find yourself doing a set of tasks over and over again, you might want to automate that task. Scripting is a great way to automate tasks.

### Components of a Script 
```
#!/bin/bash 
echo "Hello World"
``` 

A script starts with
`#!` : Shebang, which represents the beginning of the script followed by the path of the interpreter. 
`/bin/bash` : This is the path to the interpreter used to execute commands written in the script. 
Here are some more examples of shell scripts, each using a different shell program as the interpreter: 
`#!/bin/zsh` : This script uses zsh as the interpreter. `#!/bin/csh` : This script uses csh as the interpreter. `#!/usr/bin/python` : This script uses python as the interpreter.

#### Is the Shebang mandatory? 
No, the shebang is an optional command. If we do not specify shebang, then the script runs in the current shell. 

Is this a problem? 
*No, if you are lucky.*
Different shells have slightly different syntax. It's safe to be explicit and specify the exact interpreter to be used with the script. 

After, the first line of the script follows the executable instructions. In our case, it is: 
`echo "Hello World"` : Displays hello would to the console. 

Now, save the file with the .sh extension in the location that the shell can access.

### Run a shell script
1. Make the script executable with command `chmod +X <fileName>`
2. Run the script using `./<fileName>`

In order to run our HelloWorld program:
1. save the file with HelloWorld.sh
2. run the command `chmod +X HelloWorld.sh`
3. execute the script `./HelloWorld.sh`

output :
```
> ./HelloWorld.sh
Hello World
```

### What happens when we execute a script? 
When we execute a script that has a shebang, what happens it that the interpreter executes and the path used to call the script is passed as an argument to the interpreter. 
And then every command following the Shebang gets executed line by line. 

Voila! We just ran our first shell script. 

Up next is variables and tests in a shell script..

{% embed https://dev.to/twinklelahariya/variables-and-tests-in-shell-scripting-2k81 %}

Until next time, love ❤️
React Dropdown Component
Tags: react, reactnative, beginners, tutorial
Published: 2022-04-05 15:25:36

Dropdowns are toggleable, contextual overlays for displaying lists of links and more. They are made interactive with the included Bootstrap dropdown. Dropdown are toggled by clicking.

## Create React Dropdown Component

```typescript
class Dropdown extends React.Component {

  constructor(props) {
    super(props);

    this.toggleDropdown = this.toggleDropdown.bind(this);
    this.handleMouseEvent = this.handleMouseEvent.bind(this);
    this.handleBlurEvent = this.handleBlurEvent.bind(this);
    this.hasFocus = this.hasFocus.bind(this);

    this.state = {
      show: false
    };
  }

  componentDidMount() {
    document.addEventListener('mouseup', this.handleMouseEvent);
    this.dropdown.addEventListener('focusout', this.handleBlurEvent);
  }

  hasFocus(target) {
    if (!this.dropdown) {
      return false;
    }
    var dropdownHasFocus = false;
    var nodeIterator = document.createNodeIterator(this.dropdown, NodeFilter.SHOW_ELEMENT, null, false);
    var node;    
    
    while(node = nodeIterator.nextNode()) {
      if (node === target) {
        dropdownHasFocus = true;
        break;
      }
    }
    
    return dropdownHasFocus;
  }
  
  handleBlurEvent(e) {
    var dropdownHasFocus = this.hasFocus(e.relatedTarget);
    
    if (!dropdownHasFocus) {
      this.setState({
        show: false
      });
    }    
  }
  
  handleMouseEvent(e) {
    var dropdownHasFocus = this.hasFocus(e.target);
    
    if (!dropdownHasFocus) {
      this.setState({
        show: false
      });
    }
  }

  toggleDropdown() {
    this.setState({
      show: !this.state.show
    });
  }
  
  render() {
    return (
      <div className={`dropdown ${this.state.show ? 'show' : ''}`} ref={(dropdown) => this.dropdown = dropdown}>
        <button 
          className="btn btn-secondary dropdown-toggle" 
          type="button" 
          id="dropdownMenuButton" 
          data-toggle="dropdown" 
          aria-haspopup="true" 
          aria-expanded={this.state.show}
          onClick={this.toggleDropdown}>
          Dropdown button
        </button>
        <div 
          className="dropdown-menu" 
          aria-labelledby="dropdownMenuButton">
          <a className="dropdown-item" href="#nogo">Item 1</a>
          <a className="dropdown-item" href="#nogo">Item 2</a>
        </div>
      </div>
    );
  }
}
```
Now we have react **&lt;Dropdown /&gt;** component and we can use this in our functional or class components easily.

---

Please like share subscribe and give positive feedback to motivate me to write more for you.

For more tutorials please [visit my website](https://www.w3courses.org/tutorials/).

Thanks:)
Happy Coding:)