teleren/devto huggingface dataset:
Follow Friday: Golang Edition (12 August 2022)
Tags: meta, writing, go
Published: 2022-08-12 15:21:59

---
title: Follow Friday: Golang Edition (12 August 2022)
published: true
description: 
series: Follow Friday
tags: meta, writing, go
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/osatlkon7rvaze488aj9.jpeg
---
_header image courtesy of [go.dev](https://go.dev/doc/gopher/modelsheet.jpg)_

_Happy Friday, friends! 🎉 Follow Friday is your weekly opportunity to shout out fellow DEV Community members doing awesome work. Check out the comments and follow someone new!_

Go (also known as Golang) is an open source programming language that was designed at Google in 2009. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language — and its users love it for its expressive, concise, clean, and efficient syntax.

Plus, the language boasts [one of the best mascots](https://go.dev/blog/gopher) out there (sorry to [Ferris the Crab](https://rustacean.net/)).

So, devs: who are your favorite DEV community members writing about Go?

_**Formatting tip**: to populate a card with a follow button, use the liquid tag syntax `{% embed https://... %}` and insert the URL of your favorite author's profile._

Join in on the #FollowFriday fun by @mentioning your favorite author to follow for Golang content (and letting us know why you love their posts!) ⤵️
6 formas para conseguir trabajo remoto sin intermediarios
Published: 2022-08-12 15:06:33

---
title: 6 formas para conseguir trabajo remoto sin intermediarios
published: true
description: 
tags: 
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
---

¿Te pasa igual que a mí? que te escriben más agencias de reclutamiento que quieren revender tus servicios, que reclutadores trabajando directamente para las empresas.

Te has preguntado ¿Cómo conseguir trabajo remoto directo con una empresa internacional sin intermediarios?

Hay varias formas de conseguirlo,

Yo te cuento las formas que a mí me han funcionado:


## 1. Te recomiendan

Empiezo por la más fácil (algunos dirán que hasta injusta)

Consigues trabajo directo gracias a un amigo, ex-jefe o ex-compañero de trabajo que te recomienda.

Esto es cosechar algo que siembras durante años, te unas a comunidades y expandas tu red.

## 2. Te encuentra la empresa y te invita a postularte

Cuando te invitan a postularte, ya llevas un paso adelante en la competencia. 

No sabías de la empresa pero ellos te encontraron en las redes sociales gracias a que tú gestionas tu presencia digital y compartes tu conocimiento.

## 3. Te postulas tú a las vacantes

Las mejores oportunidades casi nunca tocarán a tu puerta, tienes que hacer una búsqueda activa

Ya sea que viste en redes sociales la vacante, sigues tú a reclutadores o te postulas en sitios de trabajo remoto.

Esta forma es dificil, toma tiempo.

## 4. Te postulas con HeadHunters

Hay cazatalentos o agencias que se dedican a colocar profesionales altamente preparados en empresas

Te ayudan a buscar y postular con clientes y trabajar de forma directa ya que ese es su negocio.

5. Proyectos Open Source

Si contribuyes a proyectos open source de herramientas ampliamente utilizadas, eso suma a tu visibilidad ante posibles empleadores que estén usando esas herramientas, o incluso en el proyecto mismo.

Mi amigo Rajendra escribió sobre [cómo consiguió trabajo en GitLab](https://rajendraak.medium.com/how-i-got-a-job-at-gitlab-a3515214b74b) de esta forma.

6. Trabajas con intermediarios y luego te pasas a estar directo

Una opción es trabajar a través de intermediarios con la intención de luego trabajar directo con los clientes finales.

La mayoría de agencias NO lo permiten,
debes negociar desde el principio y demostrar tu valor

## Gracias

Muchas gracias por leer este post.

Te invito a seguirme en mi canal de [telegram](https://t.me/luismejiadev) y en twitter [@luismejiadev](https://twitter.com/luismejiadev/)
How to answer programming challenges
Tags: javascript, programming, beginners
Published: 2022-08-12 14:11:30

When tackling a problem, many of us like to go straight into working toward a solution. This may not be the best approach. Just like when we had to write an outline before we wrote our essays, we must also outline our solution to each coding challenge. Let's take a look at 5 steps we can take to prepare for solving a challenge.

Sample Coding Challenge:

`I need to know how long each student's name is so that I can know how much space I will need to reserve on my board for each name. Write a function that takes in a student name and returns how long each name is. I will need the result as a number.`

**Step 1:** Rewrite the problem in your own words.

For this challenge, I would write something like:
`Return the length of a string`

**Step 2:** Recognize and note whether or not there are any parameters

For this challenge, I would write something like:
`String name` 

_What I'm saying here is that the function will take in a string and the string will be a name._

**Step 3:** Recognize and note what needs to happen to the result.

For this challenge, I would write something like:
`Return an integer/number`

**Step 4**: Write some pseudocode

For this challenge, I would write something like:
`take input from function
count the characters in input
display the count`

_Writing out the pseudocode gives you a chance to work through the logic of the problem in a nontechnical way._

**Step 5:** Write out an example

For this challenge, I would write something like:

```
function findNameLength(name){
    let count //variable to hold count of characters
    name.length //string property to find length of strings
    return integer/length
}
```

_Every person's problem solving processes are different, so you might include more or less in these steps._

Before you tackle your next challenge, give these steps a try. If you have steps that aren't listed above, list them below :)

Have a great day!
Appwrite Community Report #18
Published: 2022-08-12 13:35:00

Howdy people! 👋

We are back with our weekly community report, to share with you all what Appwrite has been doing! 🤩

**TLDR;** Presenting before you some newly released videos from the Appwrite team, issues solved, work-in-progress and more Appwrite related stuff. Stay tuned till the end! 😉

---

## 📢  What’s new 

- We just announced the third project for the OSS Fund {% embed https://twitter.com/appwrite/status/1557041420724305921?s=20&t=VEmfHVMKNOIwcRypKBnu3g %}

If you are a maintainer or know a maintainer who would love some support, tell them about the [Appwrite OSS Fund](https://appwrite.io/oss-fund)


---

## ✅ Issues solved

Here’s to making Appwrite better everyday! Issues we have worked on this week:


- Removed constants from response models
🔗[Link to PR](https://github.com/appwrite/appwrite/pull/3665)

- Fixed code displays, not correctly rendering certain input
🔗[Link to PR](https://github.com/appwrite/appwrite/pull/3660)
- Fixed alert and redirect of successful password resets in Appwrite
🔗[Link to PR](https://github.com/appwrite/appwrite/pull/3654)
- Refactored usage stats to aggregate more stats from already collected lower time period stats, instead of using influx db
🔗[Link to PR](https://github.com/appwrite/appwrite/pull/3648)

---

## ⚒️ What we’re currently working on

- Refactoring permission levels
- Refactoring Appwrite’s queries
- Addition of console log capturing ability in runtimes
- Addition of fast2sms phone provider by community member [Garvitomer](https://github.com/garvitomer)

---

## 🗣 Discussions
Let’s talk about Appwrite’s queries
🔗[Join the discussion here](https://github.com/appwrite/appwrite/discussions/3545)

---

## 📘 Resources

- Tutorial on Staying Up to Date With Appwrite Upgrades
{% embed https://youtu.be/YKFfVk_nqVY %}
- Building an [Open Source Search App With Appwrite and Meilisearch]
(https://dev.to/appwrite/building-an-open-source-search-engine-with-appwrite-and-meilisearch-40kn)
- Learning Appwrite in 30 days
{% embed https://30days.appwrite.io/ %}
tsParticles 2.2.1 Released
Tags: javascript, typescript, showdev, webdev
Published: 2022-08-12 14:05:00

## tsParticles 2.2.1 Changelog

### Bug Fixes

- Fixed editor for v2.2
 
### Other Changes

- Exposed options objects for interactions

---

## Social links

- [Discord](https://discord.gg/hACwv45Hme)
- [Slack](https://join.slack.com/t/tsparticles/shared_invite/enQtOTcxNTQxNjQ4NzkxLWE2MTZhZWExMWRmOWI5MTMxNjczOGE1Yjk0MjViYjdkYTUzODM3OTc5MGQ5MjFlODc4MzE0N2Q1OWQxZDc1YzI)
- [Telegram](https://t.me/tsparticles)
- [Reddit](https://www.reddit.com/r/tsParticles/)

---

{% github matteobruni/tsparticles %}
A tool for your business: Agenсy processing
Tags: business, cryptocurrency, cryptoprocessing, bitcoin
Published: 2022-08-12 14:04:26

How to settle accounts with suppliers and buyers — here’s what’s convenient about agency processing.

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

Today the world economy is experiencing one of the greatest periods of instability of all time. Communication between countries is disrupted, and all segments of the population are suffering. Small businesses are losing customers, customers are losing the ability to meet their needs, and large companies are postponing new launches and downsizing.

Those who receive or transfer money while abroad suffer the most. They face a number of challenges:

— Some banks are disconnected from the popular SWIFT system;

— Private payment systems set their own rules, and some prohibit users in certain countries from conducting transactions;

— Contactless payment and online banking also do not work in some countries.

People have to find workarounds, but that means higher fees, higher risks and other hassles.

The way out for many is cryptocurrency, which is convenient and fast. Even in P2P-trading, the cost of commission is much lower than in banking, and the speed of transfers is much higher.

However, simple exchanges are a comfortable way out for ordinary people, but for companies and businesses it is still not a simple scheme. For them, the best way to get back to success and achieve new results is to connect an agent-based processing service. With it, a customer can create accounts for people who are responsible for accepting payments in other countries, where global banks don’t work or where Visa and MasterCard don’t work.

The agent becomes a partner and receives a commission for each deposit and withdrawal. The following functions allow you to do your job without any problems:

— Deposit of Stablecoins to the account;

— Guaranteed deposit;

— Replenishment of the balance of any user;

— Statistics of deposits, withdrawals and replenishments.

Agent-based processing is the most developed in 0Xprocessing service. It is convenient for any business. Registration is very fast, without any additional verification, and the integration is done via available API methods.

You can get more information directly here: https://t.me/OxProcessing_bot
Mobilo.design: MERN with SSR from scratch - Project Challenges
Tags: javascript, react, node, mongodb
Published: 2022-08-12 13:52:24

## Summary 
1. Introduction
2. Planing
3. Project Structure
4. Webpack & Babel configurations
5. Chalenges and Reactions
6. Deployments and Integrations
7. Maintenance

---

## Introduction
Check what I am building: [Mobilo.design](https://mobilo.design)
Making a smooth, fast web app to list screenshots of the best in class in production app for IOS and Android, some kind of UX/UI Mobile designs inspiration website, the idea is quite simple, get a database to save apps, screenshots, and other metadata, a backend language as a service provider, and a front end for humans(Just kidding).

---

## Planing
Basically, this is the important step I consider while working on a new project, because the stack you choose will go with you all the way long, from building to maintenance, so here's how I choose the MERN stack, first of all, I list my requirements:

### Data requirements, why MongoDB?
The first time, I didn't even know what is the data I should be saving for each app or screenshot, I need a flexible database structure (I don't even need a structure), so SQL databases are not a good choice at the time, I go NoSQL and I choose MongoDB, and why MongoDB? because I've never worked with NoSQL databases before, and MongoDB is well known. `(Well known === Big Community === Well documented === there is always a solution for your needs)`.

### Backend requirements, Why NodeJS?
Python with beanie, Pydantic & FastAPI, what a winning stack, I've already worked with that before, so I will not struggle a lot, but for SEO purposes, I really need to make use of renderToString from React, and NodeJS with MongoDB, they work better together, So NodeJS.

### Frontend requirements, Why React?
I need to React fast (LOL), can't tell why rather I always use React on my projects, even for mobile Apps with React-Native.

### Why not Next or Gatsby?
I know, NextJS makes it easy to create SSR web apps, but I really want to do it by myself with Webpack & Babel, should be fun (Not true).

---

## Project Structure
Here's another important decision to make, how you are gonna f**ing structure this project, considere that this decision is hard as changing the structure later will cost you a day or two (maybe more).
finnaly I came over this structure:

```
+AppFolder
--assets
+-src
---Components
---Routes
+-server
---Models
---Routes
+--Providers
----Repositories
```
 
---
 
Whats you taughts about my ways to choose stack and my project folder structure, next post will be about how i configured webpack and babel, what are the packages and plugins i used along the way, don't forget to tell me your taughts and follow me so i can keep writing about my other projects,
 `exit();` 

```
dev.to/@butalin:~$Bye
```
Seja protagonista da mudança
Tags: job, motivation
Published: 2022-08-12 13:47:23

Aprenda a lidar com insatisfação e problemas no ambiente de trabalho.

Nos últimos 20 anos eu pude trabalhar com diversas empresas, já fiz consultorias para algumas e prestei serviço de suporte e manutenção para muitas outras, foram experiencias onde precisei me adaptar a muitas culturas diferentes.

O que pude observar nessas diversas empresas que é preciso tempo para se entender uma cultura, e é preciso ter mente aberta para entender o novo.

Todas as vezes que eu conseguir assumir algum protagonismo na mudança, a insatisfação reduziu.

É preciso entrar no contexto e entender as motivações, essa é uma maneira de aprender sobre o cenário e não sofrer com ele.

Conversar com pessoas que já estão no contexto, ver quem está insatisfeito com o ambiente e se aliar com elas, ajuda um ao outro para que vocês sejam protagonistas das mudanças necessárias.

Apenas reclamar não é opção, tem que observar e ver se voce  consegue se encaixar no que não pode ser mudado, existem muitas culturas e voce pode achar uma melhor e outra não tão boa.

Procure se manter em lugares onde voce seja feliz realizando o seu trabalho, pois voce terá que realizar.
Guess Number - Simple Vue Game!
Tags: codepen, vue, gamedev, javascript
Published: 2022-08-12 13:46:00

<h1>What is this?</h1>

<p>This is a game that you will pick a number in your head, then check whether your number is between listed numbers, after checking as much as chosen step, the program will tell your number!</p>

<h1>How to play?</h1>

<h3>Choose a step:</h3>

<p>Step will be the count of questions you have to answer to let program guess your number, also the max number you can pick will be 2^step</p>

<h3>Pick a number</h3>

<p>Pick a number between 1 and 2^step in your mind</p>

<h3>Check the listed numbers</h3>

<p>Check the listed numbers and click Yes button if you see your number there, otherwise click No.</p>

<h3>Count of questions</h3>

<p>You have to do the previous item as much as chosen steps, by default step is 6 so you'll have range of 1 to 2^6 = 64 numbers and answer to 6 questions!</p>

<h2>If you liked my work please star the <a href="https://github.com/realSamy/guess-number">repository on github</a>
</h2>

{% codepen https://codepen.io/realsamy/pen/abYaRed %}
React.js - Interview Question - duplicate hashtag remover.
Tags: javascript, react, discuss, programming
Published: 2022-08-12 13:40:26

Had an Interview for React.js frontend developer for one of the MNC company. The question they asked was to build a *Duplicate Hashtag remover*

#### Question Statement:
There has to be an textarea in which user can input as many hashtags as he wants, the tags will be separated by a space and starts with `#` symbol.

Now the task is to find the duplicate hashtags entered by user and and show the listing below the textarea input. In the listing there has to be a `X` delete button by clicking on it it will remove the duplicate from the textarea as well as from the listing of duplicates.

**Sample Input:**
```javascript
#kashmir #kashmirvalley #srinagar #dallake #reels #trendingreels #reelitfeelit #viral #viralvideos #viralvideos #viralreels #feelkaroreelkaro #mountains #love #couplegoals #bucketlist #moretocome #2022   #srinagar #dallake #reels #trendingreels #srinagar #dallake #reels #trendingreels #srinagar #dallake #reels #trendingreels #love #bucketlist
```
**Sample Output:**
```javascript
#kashmir #kashmirvalley #srinagar #dallake #reels #trendingreels #reelitfeelit #viral #viralvideos #viralreels #feelkaroreelkaro #mountains #love #couplegoals #bucketlist #moretocome #2022 #bucketlistour
```

Solution CodeSandbox link - [Duplicate Hashtags Remover](https://codesandbox.io/s/duplicate-tag-remover-interview-zthfv6)

Time Duration - 1hr.
Interviewer was very nice and was helped when I was stuck at updating the state particularly. 

Thank you for reading. Let me know if this is helpful and you can also share your questions in the comment box. (only the live coding or assignment questions.)
How to learn any framework easily?
Tags: flutter, framework, programming, react
Published: 2022-08-12 13:29:00

well, every developer has tried in their life to learn a programming framework. Frameworks make programmers' lives easier by abstracting away some programming complexities that would otherwise need a lot of lines of code. With lots of frameworks in existence and many introduced frequently, programmers often need to learn new frameworks for new projects or work requirements. Here are a few tips I think could help fellow programmers learn frameworks faster and easily. 

**Frameworks are guidelines**
-Think of frameworks as guidelines to achieve a solution through the use of a programming language. I agree to unpopular opinion that learning a framework is harder than learning a new programming language. programming languages are more flexible than frameworks which are developed with strict design pattern. However, frameworks are easy to master since they provide known and fixed guidelines

**learn the programming language the framework is based on**

By learning the programming language the framework is based on rather than straightly jumping into the framework saves more time and banging heads on desks for trying to do what you don't know. It is not a prerequisite to master the underlying programming language and an intermediate understanding of the programming language is considered enough.

**learn how frameworks work under the hood**
As we stated earlier in the introduction, frameworks abstract away complexities. It is critical to understand the underlying functionalities of the framework. This is useful when debugging, debugging an error you don't understand costs you more effort and time.

**practice solving problems with the framework concepts**
The best way to learn is to practice, this builds your confidence on the understanding of the concept and affirms your ability to apply the concept to solve real world problems. It is not a must to develop full blown advanced application with the framework as you can get there with time, experience and necessity.

Frameworks are great and boost the productivity of developers.
Use sugar - NFT on solana
Tags: web3, bash, framework
Published: 2022-08-12 13:04:00

Download the collection sample. 
https://docs.metaplex.com/developer-tools/sugar/preparing-assets

create and import to the assets folder

Install solana CLI
```sh
sh -c "$(curl -sSfL https://release.solana.com/v1.11.10/install)"
```

Install sugar CLI
```sh
bash <(curl -sSf https://sugar.metaplex.com/install.sh)
```

create the `config.json`
```sh
sugar create-config
```

validate JSON metadata are OK
```sh
sugar create-config
```

Create a candy machine deployment from assets
```sh
sugar launch
```

if you chose bundlr you have to fund SOL to the upload account. you can find the pubkey in the terminal. run again
```sh
sugar launch
```

when candy mahcine successful created. run `sugar show` to check information

Now you are ready to mint
```sh
sugar mint
```
Basic Structure of Kubernetes configuration file.
Published: 2022-08-12 13:01:24

The Kubernetes applications can be configured declaratively using YAML files. These files allow us to control the Kubernetes applications with ease. All of the files in Kubernetes are often written in declarative languages like JSON or YAML. No matter what syntax you choose, the API will transform the file you provide it to at the end into JSON format, however you will typically find files written in YAML because it is simple for people to read and write.

The Kubernetes YAML files include these data structures: key-value pair, lists, maps, list of maps and map of lists.

The four fields that must be present are `apiVersion`, `kind`, `metadata`, and `spec` (specification). Let's go over each of these and understand them.

## **apiVersion:**

From this field, it is clear that it is related to the API, and indeed it is. It is the API used to create the Kubernetes object. The value of `apiVersion` is usually v1, which contains many core objects. It can also be app/v1, which has objects with some other functionality. Let's see the example with the value v1.

```
apiVersion: v1
```

> **NOTE**: For the syntax in the YAML file to be proper, a space must be added after the colon.

## **kind:**

Here we define the type of object we aim to create. The objects that we specify here are linked to the `apiVersion` that we specified above, and this `apiVersion` gives us access to use the different objects. The types of objects can be Pod, Deployment, Service, Job, or DemonSets.

```
kind: Pod
```

## **metadata:**

The object that we specified, metadata, provides unique properties of that object. This may contain name, namespace, and label fields. So, through this, we get information about the object. Here is an example.

```
metadata:
  name: nginx
```

## **spec:**

As we are building an object, we expect the object to do something, so here we define the operation of the object. The specification of the object also depends upon the `apiVersion` specified above. This includes the containers, memory requirements, storage volumes, network or other details that Kubernetes needs to know about. Here we can also specify more complex properties and give deeper information.

```
spec:
  containers:
  - name: nginx
    image: nginx:1.14.2
    ports:
    - containerPort: 80
```

> **NOTE**: To ensure that lists and maps are recognised, make sure to properly indent.

An example of a complete and simple kubernetes YAML file.

```
apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - name: nginx
    image: nginx:1.14.2
    ports:
    - containerPort: 80
```
Thank you for reading :)

**Happy Learning!**