teleren/devto huggingface dataset:
Top 7 Best Freelancing Skills in 2023
Published: 2023-03-24 16:32:22

Freelancing skills refer to the abilities and expertise that individuals possess, which allow them to work independently as self-employed professionals, offering their services to clients on a project-by-project basis. Freelancers typically work in a variety of fields, including writing, graphic design, web development, programming, digital marketing, and more.

To be a successful freelancer, one needs to possess a variety of skills, including:

Technical skills related to their particular field of expertise
Communication and interpersonal skills to effectively interact with clients
Time management skills to ensure that projects are completed on time
Marketing skills to promote their services and find new clients
Financial management skills to manage their income and expenses as a self-employed professional
Problem-solving skills to address challenges and troubleshoot issues that may arise during projects.
Freelancing skills are essential for those who want to succeed in the competitive world of freelancing, and individuals can develop and improve these skills through training, practice, and experience.

Freelancing has become increasingly popular in recent years due to its flexibility and potential for earning a good income. With the rise of remote work and the gig economy, freelancing is expected to become even more prevalent in 2023. In this article, we’ll discuss the top 7 best freelancing skills to have in 2023.
Read More Article [Click ](https://techzpad.com/best-freelancing-skills)Here
how to kill multiple cargo instances
Tags: rust, cargo, webdev, programming
Published: 2023-03-24 16:13:38

If ps -ef | grep cargo shows four instances of Cargo running, you can kill them by following these steps:

Identify the process IDs (PIDs): The output of ps -ef | grep cargo should show you the process IDs (PIDs) of the four instances of Cargo running on your system. These PIDs are typically located in the second column of the output.

Kill the processes: Once you have identified the PIDs of the Cargo processes, you can use the kill command to terminate them. For example, you can run kill PID for each of the four PIDs to terminate the corresponding Cargo processes. Alternatively, you can use the pkill command to kill all processes that match a certain pattern. For example, you can run pkill cargo to kill all Cargo processes running on your system.

Verify that the processes are terminated: After killing the Cargo processes, you can use ps -ef | grep cargo again to verify that they are no longer running on your system. If there are no more Cargo processes running, you should see no output from the grep command.

Note that killing running processes can have unintended consequences and may result in data loss or system instability. Make sure to save any unsaved work and backup any important data before proceeding with the above steps.
🪐Created Planets with pure CSS 🌍 - rohitcodes
Tags: codepen, css
Published: 2023-03-24 16:13:28

##Click on the Results button for source code, enjoy!!


Earth 🌍
{% codepen https://codepen.io/rohitcodesgit/pen/xxampmv %}

Moon 🌑
{% codepen https://codepen.io/rohitcodesgit/pen/PodXQMx %}

Saturn 🪐
{% codepen https://codepen.io/rohitcodesgit/pen/qBMLYeE %}
Fix cargo build stuck at Blocking waiting for file lock on package cache
Tags: rust, webdev, cargo, programming
Published: 2023-03-24 16:12:23

f cargo build is stuck at "Blocking waiting for file lock on package cache", it may indicate that another instance of Cargo is currently using the package cache.

Here are some steps you can take to resolve this issue:

Check for other instances of Cargo: First, make sure that there are no other instances of Cargo currently running on your system. You can check this by running ps -ef | grep cargo on Unix-based systems, or by using the Task Manager on Windows.

Delete the lock file: If there are no other instances of Cargo running, you can try deleting the lock file for the package cache. The lock file is located at $HOME/.cargo/.package-cache.lock. Deleting this file should allow Cargo to acquire the lock and continue with the build process.

Clear the package cache: If deleting the lock file doesn't work, you can try clearing the entire package cache. You can do this by running cargo clean followed by cargo build.

Use a different package cache: If the above steps don't work, you can try using a different package cache. You can do this by setting the CARGO_HOME environment variable to a different directory. For example, you can run export CARGO_HOME=/path/to/new/package/cache on Unix-based systems.

If none of these steps work, there may be an issue with your system configuration or with Cargo itself. You may want to try updating to the latest version of Cargo or reinstalling it from scratch.
How chaincode works in hyperledger fabric?
Published: 2023-03-24 16:11:32

Chaincode is a program, written in Go, node. js, or Java that implements a prescribed interface. Chaincode runs in a secured Docker container isolated from the endorsing peer process. Chaincode initializes and manages ledger state through transactions submitted by applications.

A chaincode typically handles business logic agreed to by members of the network, so it may be considered as a “smart contract”. State created by a chaincode is scoped exclusively to that chaincode and can’t be accessed directly by another chaincode. However, within the same network, given the appropriate permission a chaincode may invoke another chaincode to access its state.
how to fix cargo build taking lot of time to install dependencies
Tags: rust, cargo, webdev, programming
Published: 2023-03-24 16:11:20

There are several ways you can speed up the cargo build process and reduce the time it takes to install dependencies. Here are a few suggestions:

Use a Package Cache: One of the easiest ways to speed up the build process is to use a package cache. This will allow Cargo to reuse packages that have already been downloaded, rather than downloading them again for every build. You can enable the package cache by adding the --offline flag to your cargo build command.

Use a Dependency Manager: Another option is to use a dependency manager such as sccache or cargo vendor. These tools can help speed up the build process by caching and reusing compiled dependencies. sccache is a distributed cache that can be used to share compiled code between multiple machines, while cargo vendor allows you to bundle your dependencies with your project.

Optimize Build Settings: You can also optimize your build settings to reduce the amount of time it takes to compile your code. For example, you can use the --release flag to enable optimizations and generate smaller, faster binaries. You can also use the --jobs flag to specify the number of threads that Cargo should use when building your code.

Use a Faster Build System: Finally, you may want to consider using a faster build system such as Bazel or Ninja. These build systems can help speed up the build process by parallelizing the compilation of your code and optimizing the build process.

By following these tips, you should be able to significantly reduce the time it takes to install dependencies and build your code with Cargo.
Computer games for children
Published: 2023-03-24 15:57:38

Computer games are an integral part of modern childhood. This is a great way to entertain and interest children and give them the opportunity to learn and develop their skills. With the right computer games, children can have fun while developing their cognitive, problem-solving, and social skills.

Computer games are a great way to introduce children to the world of technology. They can help children learn to use computers and develop their computer skills. Computer games can also help children develop their creativity and imagination. They can also help children learn logical thinking and develop their problem-solving skills.

When choosing computer games for children, it is important to consider the age of the child. Small children should be given games that are age-appropriate and not too difficult. Older children can be offered more challenging games to help develop their skills. It is also important to consider the type of game. Some games are educational in nature, while others are more entertainment-oriented.

When choosing computer games for kids, it's important to look for games that are fun and entertaining. Games that are too easy or too difficult can be boring and frustrating. It is also important to look for educational games that can help children learn and develop their skills.

It is also important to consider the content of the game. Some games may contain inappropriate content or language not suitable for children. It is important to read the game description and reviews to ensure the game is age appropriate.

When playing computer games it is important to set limits. Children should be encouraged to take breaks and limit their playtime. It is also important to ensure that the child is playing in a safe environment.

Computer games can be a great way to keep kids entertained and interested. With the right games, kids can have fun while developing their cognitive, problem-solving, and social skills. When choosing computer games for children, it is important to consider the age of the child, the type of game and the content of the game. It is also important to set boundaries and ensure the child is playing in a safe environment.
Why Engineers Need to Write
Tags: writing, beginners, programming, codenewbie
Published: 2023-03-24 15:52:10

I hated writing in high school. It wasn’t objective like my favorite subjects, math and science. It also didn’t help that we had to write about old, hard-to-understand literature like Shakespeare. But my perspective on writing changed once I started working full-time as a software engineer.

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

## Writing Is the Job
The way I worked started to change around when I became a mid-level engineer. I led a small workstream of a few engineers and to get my work done, I was writing more and more without realizing it. Soon writing became a significant part of my work outside of coding. This became even more true when COVID hit since most conversations moved to async chats and word docs.

Almost everything software engineers do requires writing. We need to write when we ask technical questions, comment on code reviews, or create design docs. This is because writing software is collaborative. **The better you are at writing, the more effective you will be at building software.**

## Scaling Yourself
Aside from being a necessity, writing is the most efficient way for you to scale yourself. As a concrete example, I have a friend who takes incredible notes at work. His notes become a wiki of common terminal commands, code pointers, and diagrams for the team he works on. The best part is that his writing helps others move faster without any work on his part after sharing it.

At the end of the day, you can only ship so much code by yourself. You can have much more impact by influencing others to ship what matters most. **Writing is the most scalable way to influence others.**

## What About ChatGPT?
Some worry that ChatGPT may make writing obsolete. Even if AI tools write for us, I still think writing is valuable.

Writing your thoughts down forces them into a coherent, logical narrative. Condensing your writing gives you a deeper understanding. This process improves your thinking.

**Also, writing doesn’t just clarify your existing ideas; it generates more of them.** When I write design docs, I often discover optimizations or edge cases I didn’t think of at first. So long as critical thinking is necessary, writing will not be obsolete.

{% twitter 1618747829975130115 %}
---
It is no coincidence that the strongest engineers I know are all excellent technical writers. It is one of the key skills engineers need to be effective at work. This is one of the main reasons I’ve committed to writing once a week for this Substack.

**Over to you: Do you think writing is important for engineers? If so, what’s helped you improve most?**

If you learned something helpful, [subscribe to my Substack for free](https://www.developing.dev/) to receive new posts!

Thanks for reading,
Ryan Peterman
Decomposition can be excessive
Tags: management, planning, projects, task
Published: 2023-03-24 15:37:11

It is commonly believed that decomposition is a good thing. It is indeed useful: it allows us to eliminate uncertainty by breaking down a large, unclear problem into smaller, manageable parts. During the decomposition process, we can better understand the scope of work and even design along the way.

However, excessive decomposition can be dangerous. It creates the illusion that a feature consists solely of the technical tasks we have broken it down into.

1. Decomposition incurs overhead costs, not only for creating and working on individual tasks but also for maintaining separate lifecycles and implementing and rolling out each task separately.

2. The requirement for decomposition can lead to premature design and planning. In order to decompose, design decisions are made without all the necessary information. And when new information appears, it may not be corrected. We may feel compelled to implement the previously decomposed plan.

3. Decomposition creates an illusion of control. Doing half of the subtasks means you’ve completed half of the feature. Completing all the subtasks means you’ve completed the entire feature. This is not the case. To complete a feature, it is not enough to complete all of its subtasks. The feature is usually more than just the sum of its parts. There is emergent behavior, a value that is given by the combination of the results of the subtasks and which is not present in the simple sum of these results. To complete the feature, this value must also be implemented.

4. Often, decomposition simply doesn’t make sense. For example, if a feature is simple enough and can be completed in one go.

Feature decomposition is relevant when we break it down by delivery: into pieces that are themselves the end result in terms of product or a use case.
There is no need to decompose a feature into works (for example, “develop a frontend”, “develop a backend”, or “write a migration”). It is better to decompose it into separate “pieces of value”.

Decomposition should not be a substitute for documentation or a task description. The description should make it clear what should be the result and what should not be forgotten. But not necessarily each of these items should be a separate subtask.

Another case is when the task is formulated not in terms of value, but in terms of work to be done. In this case, it may be appropriate to decompose it into independent sub-works.

With the seemingly obvious benefits of decomposition, it can easily become a “fifth wheel”. Like any other management tool, it should be used consciously.
JavaScript 🐲 challenges_2 ⚔️
Tags: javascript, beginners, tutorial, challenges
Published: 2023-03-24 15:14:24

## Isograms

- An isogram is a word that has no repeating letters consecutive or non-consecutive. 
- Implement a function that determines whether a string that contains only letters is an isogram. 
- Assume the empty string is an isogram.
- Ignore letter case.

#### Examples:

- "Dermatoglyphics" --> true
- "aba" --> false
- "moOse" --> false (ignore letter case)

[Task URL](https://www.codewars.com/kata/isograms/train/javascript)

### My solution:

```
function isIsogramOne(str) {

    let strLower = str.toLowerCase(); // convert to lowercase
    let charArr = strLower.split(''); // split into array 
    let result = []; // create empty array to store unique characters

    for (let i = 0; i < charArr.length; i++) { // loop through array
        if (result.indexOf(charArr[i]) === -1) { // if chraacter is not in array
            result.push(charArr[i]); // push character to array 
        }
    }
    return result.length === charArr.length;
}
```

### Another solution:

```
function isIsogramTow(str) {
    return str.toLowerCase().split('').filter((item, index, array) =>
        array.indexOf(item) === index).length === str.length;
}
```

###### 10 JavaScript Games to learn-Totally Cool & Fun 🚀✨🔥

🎥 {% youtube 9EZ0TpuHYvI%}


### Connect with Me 😊

#### 🔗 Links

[![linkedin](https://img.shields.io/badge/linkedin-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/mahmoud-el-kariouny-822719149/)

[![twitter](https://img.shields.io/badge/twitter-1DA1F2?style=for-the-badge&logo=twitter&logoColor=white)](https://twitter.com/Mahmoud42275)
I built a ChatGPT Clone with React and Django, and GPT-4 model wrote most of the code! 🤖
Tags: chatgpt, ai, gpt3, webdev
Published: 2023-03-24 15:12:18

Twitter Thread: 
{% embed https://twitter.com/fatihbaltaci_/status/1639278279197614083 %}

{% embed https://github.com/fatihbaltaci/chatgpt-clone %}
Paracetamol.js💊| #209: Explica este código JavaScript
Tags: javascript, webdev, spanish, programming
Published: 2023-03-24 15:08:02

## **<center>Explica este código JavaScript</center>**
#### <center>**Dificultad:** <mark>Intermedio</mark></center>

```js
const getName = (name) => {
  return new Promise ((resolve, reject) => {
    setTimeout(() => {
      resolve(name)
    },3000)
  })
}

const getAge = (age) => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      if (age < 18) reject(new Error(`${age} no es edad valida`))
    }, 2000)
  })
}

const counterFriends = (friends) => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve(friends.length)
    }, 5000)
  })
}

const getPromises = () => {
  const arr = [
        getName("Pepe"), 
        getAge(15), 
        counterFriends(["Ana", "Roberto", "Juan"])];
  return Promise.any(arr)
    .then((response) => {
      console.log(response)
    })
    .catch(err => console.log(err))
}

getPromises() 
```

- A. `15 no es edad valida`
- B. `3`
- C. `Pepe`
- D. `Promise { <pending> }`  
- E. `["Pepe", "15 no es edad valida", 3]`

Respuesta en el primer comentario.

---
OSDC-2023-assignment3
Tags: osdc, git, github
Published: 2023-03-24 14:57:46

---
title: OSDC-2023-assignment3
published: true
description: 
tags: osdc, git, github
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-03-24 18:00 +0000
---

##Today in class at the course [OSDC](https://osdc.code-maven.com/)
we download and install the git client from [git-scm](https://git-scm.com/). We set up local git configure, clone, add, commit, etc. In Windows, we start the git-bash application, Create a Github page locally, and on Github create the USERNAME.github.io repository.

###Second assignment###
Our assignment was to create a website using GitHub pages, with a cv, projects, and more Informative information. Adding a link to our course site, and a link to my blog.
I am very happy with the result look [here](https://ranms25.github.io/)

###During the task, these are some of the steps I took:
* Within [GitHub](https://github.com/) create a new repository the name must be: github_username.github.io.
* Install Git CLI from [git-scm](https://git-scm.com/)
* Clone the repository locally via [ssh](https://en.wikipedia.org/wiki/Secure_Shell).
In the git-bash application, I wrote:
ssh-keygen.exe
and search in .ssh/ for the public key.
Copy it to [my profile](https://github.com/ranms25): setting-> SSH and GPG keys-> new SSH key. Give it a title, paste the key, and press 'Add SSH key'.
* Create a new file named index.md with [vim] (https://en.wikipedia.org/wiki/Vim_(text_editor))  add, commit, and push to my new repo.
* Create a new file named _config.yml, I used this [guide](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll)-to configure my web pages theme. 
[supported themes for GitHub pages](https://pages.github.com/themes/)
* Adding [CV](https://ranms25.github.io/CV) and writing more information about myself, GitHub automatically generates HTML from my markdown files using [Jekyll](https://jekyllrb.com/)

From lesson to lesson, I am learning a lot and hope to continue :)
Creating a Roblox Game
Published: 2023-03-24 14:54:39

I'm planning on building/ devleoping a Roblox game I have no prior knowledge and experience would I learn coding lua from youtube videos, I'm willing to pay anyone who has prior knowledge of around £50 in game development who would help me in a project of building a game named Outscape on RBX. Outscape is a multiplier shooter game that I'm working on creating and it is going to be hosted on RBX.
Allocation Budget, você sabe o que é?
Tags: dotnet, dotnetcore, gc, aspnetcore
Published: 2023-03-24 14:52:10

É comum ouvirmos que não compreendemos exatamente como o GC é ativado. Neste artigo, buscaremos desmistificar esse assunto, explorando como o GC é acionado e gerencia as alocações.

Em linhas gerais, o GC é responsável por gerenciar as alocações de memória, então é natural que seja ativado com base nessas alocações. Nesse contexto, surge o conceito de Allocation Budget, que desempenha um papel importante no acionamento do GC.

Além do Allocation Budget existem outros fatores que podem desencadear a ativação do GC, como a alta pressão da memória física da máquina ou a chamada explícita do método GC.Collect() pelo usuário. 

O Allocation Budget é um valor calculado por Geração do GC que ao ser alcançado/ultrapassado, pode "condenar" a geração a coleta.

Para Gen0 esse valor é verificado a cada nova alocação e para a Gen1 e Gen2 onde não existem objetos novos alocados direto nestas gerações então nestes casos serão utilizados os objetos promovidos.

O valor do Allocation Budget é calculado principalmente utilizando a taxa de sobrevivência da geração, onde maior a quantidade de objetos sobreviventes maior será o valor do Allocation Budget a ideia é não executar GCs prematuros. Mas se observarmos uma baixa taxa de sobrevivência teremos gerações com tamanhos pequenos.

A Gen0 é a que recebe a maioria das alocações e possui um valor de Allocation Budget extremamente dinâmico. No entanto, o processo de execução do GC é complexo e leva em consideração outros pontos antes de proceder com a coleta.

Resumidamente, o processo é o seguinte:

1. Uma nova alocação é feita na Gen0 para objetos com tamanho inferior a 85.000 bytes.
2. O GC é acionado na Gen0 e verifica o Allocation Budget das outras gerações para determinar se a geração deve ser condenada.
3. O GC avalia se é possível executar o GC de forma concorrente e se a compactação deve ser realizada. Nesse momento, as informações de fragmentação são inseridas no contexto.
4. Se a execução concorrente for possível, a marcação e a limpeza são realizadas, não vai ocorre a compactação.
5. Se a execução concorrente não for possível, a marcação é feita e é avaliado se a compactação é necessária. Se for, ela é realizada, caso contrário, a limpeza é realizada.

O processo acima está bem simplificado, pois não leva em conta o LOH (Large Object Heap) e o POH (Pinned Object Heap). Falaremos sobre eles em breve.

Compreender como o GC é ativado é fundamental para o desenvolvimento de aplicações eficientes e escaláveis. Saber como o Allocation Budget é calculado e como os diferentes fatores podem afetar a ativação do GC pode ajudar os desenvolvedores a otimizar o desempenho de suas aplicações e evitar problemas relacionados a gerenciamento de memória. Com esse conhecimento, é possível tomar decisões mais acertadas sobre como alocar e desalocar memória, melhorando assim a eficiência e a estabilidade de suas aplicações.