teleren/devto huggingface dataset:
Desenvolvedores, Carga Cognitiva e Demissões
Tags: architecture, management, burnout, productivity
Published: 2022-04-07 12:54:47

Comumente, vemos empresas de tecnologia que dão total liberdade para os desenvolvedores escolherem a melhor tecnologia, plataforma e frameworks para um projeto. Isso, na realidade, é muito positivo e sempre encorajo as empresas a oferecerem essa liberdade ao time de desenvolvedores.

No entanto, não podemos negar que isso gera um problema sério quando os desenvolvedores não consideram a magnitude do desafio que podem estar enfrentando.

Esse desafio é conhecido como carga cognitiva alta, ou seja, um único desenvolvedor precisa dominar várias tecnologias, frameworks e plataformas para trabalhar em um projeto, além de ter que dominar a regra de negócio.

Essa situação, além de ser comum, acarreta sérios problemas para o negócio da empresa, pois tende a aumentar consideravelmente a curva de aprendizado dos novos desenvolvedores, o tempo necessário para encontrar pessoas com habilidades tecnológicas adequadas e, pior ainda, aumenta o estresse das pessoas envolvidas nos projetos, devido à carga cognitiva excessiva, resultando, muitas vezes, em demissões (voluntárias ou não).

É necessário que, de alguma forma, as pessoas se organizem e tenham consciência de que uma variedade excessiva pode causar os problemas mencionados anteriormente.

Além disso, há um cenário bastante comum em que um único time precisa dominar uma quantidade muito grande de regras de negócio, o que novamente gera uma carga cognitiva elevada e torna o projeto desinteressante, desafiador e estressante.

A cereja do bolo é a criação de microserviços sem uma reflexão aprofundada sobre os contextos de negócio, necessidades reais baseadas em dados e arquitetura, o que posteriormente resulta em uma enorme demanda de trabalho e complexidade para realizar tarefas que poderiam ser simples, como CI/CD, documentação e integração de serviços.

Portanto, é fundamental ter cuidado com a quantidade de carga cognitiva adicionada a um projeto. Gestores, arquitetos, Scrum Masters e Tech Leads devem ser responsáveis por essa preocupação, mas é importante que toda a equipe seja ensinada a pensar com cautela nas soluções propostas para os problemas enfrentados.
#Windows11 – App to show / hide the Clock 🕛 in the System Tray
Tags: englishpost, clock, systemtray
Published: 2022-04-07 13:26:09

---
title: #Windows11 – App to show / hide the Clock 🕛 in the System Tray
published: true
date: 2022-04-07 12:52:14 UTC
tags: EnglishPost,Clock,EnglishPost,SystemTray
canonical_url: 
---

Hi !

Windows 11 is an amazing OS. However, there is one super important feature that I feel is missing:

## Show or hide the clock 🕛 in the system tray.

And, I’m not alone 😁. Hide the clock is mostly useful when you are streaming live, or recording a video. In those scenarios, the stamp of the current date/time doesn’t add any value.

Lucky us, my friend Jose Manuel Alarcon, has created a small open source app that allow us to hide / show the clock.

## [Win11ClockToggler](https://github.com/jmalarcon/Win11ClockToggler)

[![The app icon](https://github.com/jmalarcon/Win11ClockToggler/raw/main/Win11ClockToggler.png)](https://github.com/jmalarcon/Win11ClockToggler/blob/main/Win11ClockToggler.png)

_Win11ClockToggler searches and hides the full notification area, or just the clock, in the Windows 11 taskbar._

- _Get the compiled app [from the “Releases” section](https://github.com/jmalarcon/Win11ClockToggler/releases) on the right. Download the latest version ZIP, and unzip it to any folder in your computer._
- _Double-click it to **run it once** , and **the full notification area will disappear** (this is the default option, which I find more useful, but you can change it. More about it later…)_
- _ **Run it again to restore** everything to its normal state._

You can download the compiled app or the source code from [here](https://github.com/jmalarcon/Win11ClockToggler).

And hey, please also check my friend blog in Spanish [here](https://dev.to/jmalarcon/programa-open-source-y-gratuito-para-ocultar-la-fecha-y-el-reloj-en-windows-11-57io-temp-slug-6185969).

Happy coding!

Greetings

El Bruno

More posts in my blog [ElBruno.com](https://www.elbruno.com).

* * *
Umbraco 10 - ContentWithAside BlockList editor package
Tags: umbraco, dotnet, package, csharp
Published: 2022-04-07 12:40:02

I've packaged up a piece of code that was posted about in this Umbraco 24days.in article: https://24days.in/umbraco-cms/2020/grid-nouveau-block-list/ by Søren Kottal, https://github.com/skttl.

I've made a couple of tweaks to the CSS to tighten up the look and feel. However, it's basically a package that allows you to see two columns in the block list editor.

![ContentWithAside](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/glse853ym8yls5yywjep.png) 
 
You need to install the package via nuget:
https://www.nuget.org/packages/punkContentWithAside
```
Install-Package punkContentWithAside
```

Once installed, configure your block list editor as follows: 

Using the block list editor, select the component you want to use, ensuring the component has multiple block list properties for "content" and "aside".

Set the custom view of the component to be 
```
~/app_plugins/punkContentWithAside/punkcontentwithaside.html
```
![Component view](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7q6cw57kzfl3z6lzziy8.png)
 
Also set the "force hide content editor" in the advanced settings of the component.

![Force hide content editor](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s2wyczfhrq8k13kuf5hi.png)
 

{% github garpunkal/punkContentWithAside no-readme %}

Any questions, just give me a shout on https://twitter.com/garpunkal
Why Semver is Wrong?
Tags: discuss, node, webdev, javascript
Published: 2022-04-07 12:26:27


Before we discuss Semver, we should look at what is the version.

## Version

If we ask, we can get these meanings:

1. a particular form of something differing in certain respects from an earlier form or other forms of the same type of thing.
2. an account of a matter from a particular person's point of view.

For software development, meaning 1 is more fit.

So when we talk about versions in software development, it means differences.

## Kinds of versions

We now know that versions are here showing differences.

But what kind of versions do we need to be shown in software development?

There are at lease three kinds of versions we need to look at: 

1. source code versions
2. build and/or release versions
3. product versions.

Each versions differs in their frequencies. Normally, they change to meet different events,

1. Source code versions changes when every commit is made.
2. Build/release versions change when more commits are made and tested to make consistent software.
3. Product versions change when a lot of small builds and / or releases are made to make products have a upgrade.

## Why Semver is not right?

Semver in other hand mixes them together or at lease mixed bulid/release verions with product versions which makes it neither semantic nor correct.

It makes major, minor, patch version meanless.

In fact major, minor, patch perfectly make themselves the product version, which is used to indicate product version changes like upgrade, features and fixes.

It has nothing to do with api consistency. But how do we keep api consistency?

## API consistency has nothing to do with versions.

The API Consistency is another area in software development. It is a problem of software design / architecture.

We don't need to change apis even if products moved to a new level. For example, Unix posix apis haven't changed so far, even Linux/Unix is going so far with Graphic UI and more powerful hardwares supported.

If someone designed apis with big changes just means they are of low level in designing system apis, it has nothing to do with versions.

## Chaos introduced by Semver

Semver is introduced by node.js' package management. It advocates that packages should keep none breakable on minor versions and should auto update to new software versions of dependent packages to keep package updated to the newest non broken version which is called green keeping and makes it a dependency hole.

This misleading causes npm useless for desktop / server side programming which needs high stability.

Semver makes software version meaningless by upgrading them for every broken change which is the designing problem.

## Conclusion

Semver is misleading in so long time, I hope I can make versions clearer than mix them up and bearing design/architecture burden.

As we have been bombed with so many wrong ideas, we should be cautious to accept any new idea which may be proved wrong.
Tips to prepare for Apache Kafka
Published: 2022-04-07 12:20:13

If you're thinking or are preparing to take [Apache Kafka Certification](https://www.edureka.co/kafka-certification-training) This is the location for you.There are numerous Apache Kafka certifications in the marketplace, but CCDAK (Confluent Certified Developer for Apache Kafka) is the most well-known certification since Kafka is managed by Confluent.


Confluent has launched CCOAK certification in the last few days. CCOAK is mostly for DevOps engineer who focus on building and managing Kafka cluster. CCDAK is designed for Solution architects and developers with a focus on production, design and consumer. If you're uncertain, I suggest you to take CCDAK since it is a more thorough exam in comparison to CCOAK. These exam notes can be very useful to both CCDAK as well as CCOAK certifications.

From now on we will be talking about what you can do to be prepared for the CCDAK.
Planet Crust releases Corteza 2022.3! 🖥️🎉🎊
Published: 2022-04-07 12:05:39



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

2022.3 is a new major release and adds the search tool Discovery to Corteza open source low-code platform, along with Compose-Reporter integration, UI configurations, additional API endpoints, user import/export capabilities and a UI for inspecting server-side issues.

Learn more about [Corteza's new features and updates](https://www.planetcrust.com/planet-crust-releases-corteza-2022-3-corteza-discovery-compose-reporter-integration-and-more?utm_campaign=blog)!
What should your key considerations be while choosing IT monitoring solution?
Tags: monitoring, devops, serverless, cloud
Published: 2022-04-07 12:03:45

Choosing an IT monitoring solution? What should your key considerations be? 

1. Define a problem you try to solve.  
For example, you provide a software solution to your clients, but you're only aware of an issue after they’ve reported it by themselves;
You use specialized software that requires a lot of specialists to support;
You have a #monitoringsystem, but you're unhappy with the cost / quality / functionality.
After considering a problem it would be easier to move on. 

2. Consider your preferences.  
Think carefully about the monitoring solution you need.
Remember that free #monitoringtools come with limited features, so you will need to run different IT monitoring tools together to get complete functionality, which can complicate maintenance and configuration. 

3. Decide your budget. 
Different infrastructure solutions are charged on a different model – per server, per instance, etc.
Consider a Pay-as-you-go model to save your budget and avoid paying extras. You can start small by monitoring a single cluster and expand smoothly in time online. Note that even in “free systems” the training, implementation, and supporting fees end up costing between 50,000 and 100,000 $. 

4. Implementation takes time. 
Remember that choosing a monitoring solution doesn’t mean gaining proficiency tomorrow.
Adjusting #compatibility between an IT infrastructure and a monitoring solution is a complex task for your provider. In the case of a free monitoring system, pay attention to the risks like poor performance and a cumbersome user interface, as often these systems are strung together from a large number of open-source modules written by different people. 

5. Pay attention to monitoring essentials  
Out-of-the-box #automation, customizable visualization, or multi-vendor support are aspects that enhance your monitoring procedures hence allowing you to scale IT infrastructure. It's much easier to have all of the above in one monitoring solution to save time and resources for maintenance.

Need #ITmonitoring solution or just a recommendation regarding your monitoring? Contact our InsightCat team via https://insightcat.com/
We appreciate new contacts and your monitoring cases :)
Why I switched from MINT to MANJARO
Published: 2022-04-07 11:54:18

I have been a long time Linux Mint user.
It was easy to install, nice to use, cinnamon is a great desktop and the applications are very stable as based on Ubuntu LTS. So why did I switch?
With the time I discovered TILING WINDOW MANAGERS like i3 or my favorite HERBSTLUFTWM.
As I have a big 43" 4k display, a tiling window manager works very great. Herbstluftwm even goes deeper and allows to split the monitor in different "virtual" monitors, where full screen applications for example don't expand over the given virtual monitor size. I used dzen2, then lemonbar / barpyrus and in the end switched to the great polybar.
And this is where Manjaro comes in.
To get the latest and greatest version of Herbstluftwm which supports single floating windows or to get the polybar without the need to wait two years, I had to build these applications my self. This was time consuming and bad.
Then I discovered that there is Arch Linux, but it is harder to install then Manjaro and doesn't have much preinstalled applications or a desktop. But Manjaro is easy to install, has some preinstalled things and comes with three desktop to chose from: Gnome, Xfce, Kde.
I sometimes use a desktop environment when something is broken in my configs for herbstluftwm etc. I like it more than using a tty as I find it easier and better to use as fallback.
Manjaro has always the latest and greatest applications via the official repos or AUR. I can also use Snap or Flatpak without issues. Pamac is a software store ui that has flatpaks, AUR, official repos and snaps at the same place with the same install procedure. Something I searched on my Mint for months. I always had mint-install, gnome-software and synaptic.
Installing apps is just so much better to use and Debian, which Mint uses as a backend ( yes it uses Ubuntu but Ubuntu is based of Debian ), did some weird and non acceptable decisions like kicking out Norbert Preining who helped Debian a lot and did nothing wrong in my opinion. Cause that we should leave Debian as fast as possible.
Updates are also easy to make on Arch / Manjaro. Everything works fine and Firefox has some cool skinning.
Zsh also has a great preconfig. I used Zsh on Linux Mint some time ago but didn't had time to configure it so I switched back to bash. Picom is also easy to install just from the software center pamac.
Hello World 👋 in various languages
Tags: helloworld
Published: 2022-04-07 11:54:07

Python (.py)
```python
print('Hello world!')
```
Bhai Lang 
```jsx
hi bhai
 bol bhai "Hello World";
bye bhai
```

Javascript (.js)
```js
console.log('Hello world!');
```
Typescript (.ts)
```ts
console.log('Hello world!');
```

Java (.java)
```java 
class HelloWorld {
  public static void main(String[] args) {
     System.out.println("Hello World");
  }
}
```

C (.c)
```c
#include <stdio.h>
int main()
{
    printf("Hello World");
    return 0;
}
```
c++ (.cpp)
```cpp 
#include <iostream>
using namespace std;
int main()
{
    cout<<"Hello World";
    return 0;
}
```
PHP (.php)
```php
<?php
	echo 'Hello World';
?>
```
C# (.cs)
```cs
using System;
class HelloWorld {
  static void Main() {
    Console.WriteLine("Hello World");
  }
}
```
Dart (.dart) 
```dart 
void main(){
   print("Hello World");
}
```
VB (.vb)
```vb
Module VBModule
    Sub Main()
        Console.WriteLine("Hello World")
    End Sub
End Module
```
HTML (.html)
```html
<html>
  <body>
   <h1>Hello World</h1>
  </body>
</html>
```
Ruby (.rb) 
```ruby 
puts "Hello World"
```
Scala (.scala)
```scala
object HelloWorld extends App {
println("Hello World")
}
```
Perl (.pl)
```python 
print "Hello World";
```
Pascal (.pas) 
```pascal
program Hello;
begin
  writeln ('Hello World')
end.
``` 
R (.r) 
```r 
print("Hello World")
```

Fortan (.f95)
```js
Program Hello
Print *, "Hello World"
End Program Hello
```
Haskell (.hs)
``` haskell 
main = putStrLn "Hello World"
```
Objective C (.m) 
```c
#import <Foundation/Foundation.h>

int main (int argc, const char * argv[])
{
        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
        NSLog (@"Hello World");
        [pool drain];
        return 0;
}
```
Swift (.swift) 
```swift 
print("Hello World")
```

Rust (.rs) 
```rust 
fn main() {
    println!("Hello World");
}
```

Go (.go)
```go
package main
import "fmt"
func main() {
    fmt.Println("Hello World")
}
``` 
Bash (.bash) 
```bash
echo "Hello World";
```
ASP.NET (.aspx) 
```ts
Response.Write("Hello World");
```
410. Split Array Largest Sum
Tags: 100daysofcode, cpp, algorithms, programming
Published: 2022-04-07 11:53:54

# Description

Given an array `nums` which consists of non-negative integers and an integer `m`, you can split the array into `m` non-empty continuous subarrays.

Write an algorithm to minimize the largest sum among these `m` subarrays.

## Example 1:

```
Input: nums = [7,2,5,10,8], m = 2
Output: 18
Explanation:
There are four ways to split nums into two subarrays.
The best way is to split it into [7,2,5] and [10,8],
where the largest sum among the two subarrays is only 18.
```

## Example 2:

```
Input: nums = [1,2,3,4,5], m = 2
Output: 9
```

## Example 3:

```
Input: nums = [1,4,4], m = 3
Output: 4
```

## Constraints:

- `1 <= nums.length <= 1000`
- `0 <= nums[i] <= 106`
- `1 <= m <= min(50, nums.length)`

---

# Solutions

## Solution 1

### Intuition

1. Binary search
2. greedy
3. `mid` means the `largest` sum of split part
4. split the array into many parts, the maximum sum of each part is the mid/largest, and see how many parts are needed — `cnt`, make sure `cnt` ≤ `m`

### Code

```cpp
class Solution {
public:
    bool check(vector<int>& nums, int m, int largest) {
        int sum = 0, cnt = 0;
        for (int x : nums) {
            if (x > largest) return false;
            if (sum + x > largest) {
                sum = x;
                cnt++;
            } else {
                sum += x;
            }
        }
        if (sum >= 0) cnt++;
        return cnt <= m;
    }
    int splitArray(vector<int>& nums, int m) {
        int l = 0, r = INT_MAX, mid;
        while (l < r) {
            mid = l + r >> 1;
            if (check(nums, m, mid))
                r = mid;
            else
                l = mid + 1;
        }
        return l;
    }
};
```

### Complexity

- Time: O(nlogs)
- Space: O(1)
Fetching an Ethereum Contract's ABI
Tags: tutorial, python, showdev, blockchain
Published: 2022-04-07 11:51:15

## Introduction
With me being relatively new to the blockchain space and all.

I encountered an issue while trying to work on a bot recently as I was to get the smart contract ABI(**Application Binary Interface**) to interact with the contract itself and what I saw online required me to have the source code, paste it on remix, and recompile and all. And all that was a whole lot of stress since I'm still relatively new to solidity, armed with python skills and my background as a data person, I just had to find a way out.

Upon further research and with my experience working with Algorand Indexer on algorand blockchain. I decided to look up etherscan for their open API endpoints and found something helpful.

And since every information about the blockchain including all the smart contract information can be accessed by every one, I used etherscans API endpoint to interact with it.

I wrote a simple script that allows a person to fetch the contract ABI from the contract address and append it to a json file.

## What is an ABI?
ABI stands for **Application Binary Interface**, which is an interface between two program modules, of which one of the modules is at the level of machine code. The ABI serves as a medium for which data is encoded or decoded into/out of the machine code.

### It's relation to EVM(Ethereum Virtual Machine) and Smart contracts.
The major component of the Ethereum network is the EVM, which allows for smart contracts stored on the Ethereum blockchain to be executed.
This smart contracts are often written in high-level languages and need to be compiled to EVM executable bytecode, such that when a smartcontract is deployed, the high-level code is compiled into EVM executable bytecode which is them stored on the blockchain with an associated address.
The ABI helps to specify which function in the binary smart contract deployed on the EVM to call, and guarantees that the function returns data in the expected format, which is very much similar to how an API(Application Program Interface) works but on a much lower-level.

You can check out the repository on [github](https://github.com/manny-uncharted/fetch_contract_abi).

1. clone the project from github using:
```python
git clone https://github.com/manny-uncharted/fetch_contract_abi.git
```
Enter into the project directory
```
2. cd fetch_contract_abi
```
3. Run the file
```
python abi_fetch.py
```

It would require you to enter the smart contract address (`You can get the contract address from etherscan.io`) and then saves the contract ABI in json, with the name abi.json in the project directory. 


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

> **Note: This program was written to only work for ERC-721 smart contracts, I would further update the code to work for other networks and other token types.**
Make Your Twitter Profile Stand Out
Tags: twitter
Published: 2022-04-07 11:28:38

## Table of Contents
1. [Tips](#tips)
2. [Helpful Links](#helpful-links)

### Tips
##### 1. Keep your audience in mind to attract the right people
Everyone from your bio, your header image, and the tweets you share should be crafted with your audience in mind. This way, they'll come across your profile and resonate with who you want to attract.

##### 2. Have a clear bio
Does your bio do your brand justice? A great bio tells people what you do, shows your personality, and includes relevant keywords so you show up in search results.

##### 3. Use a header image to grab attention AND educate
Your image needs to do more than just look good. It has the ability to tell a story. After all, a photo is worth a thousand words. What does your brand stand for? What's your mission statement?

##### 4. Use pinned tweets
Use pinned tweets to share some of your best content. Showcase your latest blog posts, share your latest sales, attach your newsletters, etc.

##### 5. Be consistent
As always, be active! It's important that you keep your account active by posting regularly. Choose the most important things you do; state them in a clear, compelling way. Use brief sentences and links. In addition consider hashtags!

### Helpful Links
1. [How to increase Twitter Followers 101](https://business.twitter.com/en/blog/how-to-increase-twitter-followers.html)
2. [26 Twitter Tips for Beginners You'll Wish You Knew Sooner](https://sproutsocial.com/insights/twitter-tips/)
3. [Twitter Tips for Beginners](https://goinswriter.com/twitter-tips-for-beginners/)
4. [10 Quick Twitter Tips for Beginners](https://www.lifewire.com/quick-twitter-tips-for-beginners-3486580)
5. [Increase Your Twitter Reach with These 8 Simple Strategies](https://mention.com/en/blog/increasing-twitter-reach/)