teleren/devto huggingface dataset:
When do you use Lambda?
Tags: serverless, cloud, lambda, aws
Published: 2022-05-11 15:58:52

● When using AWS Lambda, you are only responsible for your code.
● AWS Lambda manages the memory, CPU, Network, and other resources.
● It means you cannot log in to the compute instances or customize the
operating system.
● If you want to manage your own compute resources, you can use other
compute services such as EC2, Elastic Beanstalk.
● There will be a level of abstraction which means you cannot log in to the
server or customize the runtime.
Welcome Thread - v173
Tags: welcome
Published: 2022-05-11 15:53:15

---
title: Welcome Thread - v173
published: true
description: Welcome to DEV! A thread of hellos and intros.
tags: welcome
canonical_url: 
---

![Person jumping forward saying "Welcome!"](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/afijd0hzwzkpjnpml1hm.gif)

### Welcome to DEV!

1. Leave a comment below to introduce yourself! You can talk about what brought you here, what you're learning, or just a fun fact about yourself.

2. Reply to someone's comment, either with a question or just a hello. 👋 

**Great to have you in the community!**
How to customize your Github profile
Tags: github, beginners, markdown
Published: 2022-05-11 15:47:47

Having a cool Github README adds a unique taste to your profile, it’s like a quick resume to present yourself, what you do, your skills...

## How to do it ?

When you create a repository with your username and an add a README file GitHub shows the preview on your profile

![Github message](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6imp546vchqd45bzf2ak.png)

now if you already know markdown languages you can start editing it by yourself.
If not, don’t worry I have across an amazing tool to do that for you.
[**ProfileMe.dev**](https://www.profileme.dev)
Really fast and easy way to customize your profile.  you just need to fill out the inputs and in the end, you copy the code. That's it!

![live preview](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f2ymc1ur7l192px1qq88.gif)

- I would like to share also this tool [readme.so](https://readme.so/editor) for readme-files in general. it's come with multiple templates if you want to make documentation for your projects.


- For inspiration, I found this cool repository containing lists of GitHub profile readme 
[awesome-github-profile-readme](https://github.com/abhisheknaiidu/awesome-github-profile-readme).

- If you want to dive more there is a free course for that
[HOW TO CUSTOMISE YOUR GITHUB PROFILE](https://www.eddiejaoude.io/course-github-profile-landing).

Thank you for reading.
Convert Luos information into JSON objects
Tags: opensource, programming, microservices, luos
Published: 2022-05-11 15:38:13

The JSON formatted data is common and widely used by many programming languages. 

⏩ https://www.luos.io/docs/api/api-json

Luos allows you to convert low-level Luos information into JSON objects, enabling conventional programming languages to interact with your device easily.

However, new APIs will complete the list in the future.
Terraform module to create an ECS Fargate cluster
Published: 2022-05-11 15:14:06

This module is used to set up an AWS ECS fargate cluster. It sets up an ECS cluster with 1 service.

[Terraform registry](https://registry.terraform.io/modules/leroykayanda/ecsModule/aws/latest?tab=resources)

```
module "ecsModule" {
  source  = "leroykayanda/ecsModule/aws"
  version = "1.0.2"
  # insert the 21 required variables here
}
```

To set up an ECS service within an existing cluster, use this module instead.

[Terraform registry](https://registry.terraform.io/modules/leroykayanda/ecsService/aws/latest)

```
module "ecsService" {
  source  = "leroykayanda/ecsService/aws"
  version = "1.0.0"
  # insert the 21 required variables here
}
```
Introducing Audium - A "Micro-Podcast" social web app
Tags: appwritehack
Published: 2022-05-11 15:02:30

[Instructions]: # (To submit to the Appwrite Hackathon on DEV, please fill out all sections.)


### Overview of My Submission

<img src="https://github.com/Dhravya/audium-app/blob/8f413d5fe579f35260a162c66c3c8ba6fcb73b6a/assets/logo.png?raw=true" alt="Audium Logo" style="float: left; margin: 0 10px 0 0;" align="left" height="130" width="130">

## auDium

A simple, barebones "Micro-Podcast" web app
> This was made as a submission for the [Appwrite x Dev](https://dev.to/devteam/announcing-the-appwrite-hackathon-on-dev-1oc0) Hackathon

***
<br><br>

## 👀 Inspiration

Short content is blowing up nowadays, with the rise of social media that provide short-form content and popular websites making a shift from long to short, it's time to make short podcasts.

This was inspired by Twitter - which is considered a "micro-blogging" platform. It's a simple way to share your thoughts, ideas, and stories.

auDium is a simple web app that does exactly that, but with audio. It's like spotify + twitter.

### Submission Category: Web2 Wizards


### Link to Code

{% embed https://github.com/dhravya/audium-app %}

### Additional Resources / Info

For the purpose of this hackathon, the app is very barebones. It's not meant to be used as a full-fledged social media yet, but I'll be constantly working on new features and improvements.

So, for now, you can consider it as a proof of concept that works

Also, the app is not hosted because I don't have the funds to host Appwrite on my own, and this projects needs quite a bit of storage too, which I don't have. So, for now, you can only use it in the development environment, on your local machine.

## 📱 Screenshots
<img src="https://us-east-1.tixte.net/uploads/img.dhravya.dev/l31o2idrf0a.png" alt="Main page" style="float: left; margin: 0 10px 0 0;" align="left" height="200">
<img src="https://us-east-1.tixte.net/uploads/img.dhravya.dev/1M84.png" alt="Main page" style="float: left; margin: 0 10px 0 0;" height="200">
Paracetamol.js💊| #114: Explica este código JavaScript
Tags: javascript, beginners, spanish, webdev
Published: 2022-05-11 14:45:45

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

```js
const randomNumber = () => {
  return new Promise((resolve, reject) => {
    let random = Math.floor(Math.random() * 10) + 1;
    if(random >= 5){
      resolve(`Bien... ${random}`)
    }else{
      reject(`Mal... ${random}`)
    }
  })
}

randomNumber()
  .then(x => console.log(x))
  .catch((error) => console.log(error))
```

A. Dependiendo del valor de `random` imprimirá `Bien` o `Mal`
B. `Promise { <pending> }`
C. `Promise { <fulfill> }`
D. Ninguna de la anteriores

Respuesta en el primer comentario.

---
AWS Fundamentals
Tags: aws, certifications, architecture, tutorial
Published: 2022-05-11 14:45:38

This is the first article in a series of article which help prepares for the AWS Solution Architecture certification. In this article we are going to cover the AWS Fundamentals part of AWS Solution Architecture Certification, we are going to cover the fundamentals and 

You can watch the full video on YouTube 
{% embed https://youtu.be/kQKwrNUr3mI %}

# Global Infrastructure

AWS global infrastructure is formed from

1. Region: Locations around the world, each region has 2+ Availability Zone
2. Availability Zone: 2 or more data centers with redundant power/network/connection. Data centers are less then 100KM apart
3. Edge Locations:  endpoints for AWS used for caching content like cloudfront. Edge locations are always more then Availability zones

# Who Owns What On The Cloud

Shared responsibility model, we always need to ask ourself can we do this ourself or not?

1. AWS: 
    1. Physical security of the cloud
    2. security of the cloud
    3. hardware maintenance
    4. data center os upgrades
2. US: security in the cloud
    1. customers data
    2. access to services
    3. OS configuration
    4. Network configuration
    5. IAM
    6. protecting traffic
3. Shared: Encryption
    1. We have to request to encrypt our data
    2. AWS would need to do the actual encryption and decryption

# Services Needed For the Certifications

### Compute: We need something to process our code

1. EC2: VM
2. Lambda: Serverless 
3. Elastic Beamstalk: provision automated deployment process

### Storage: We need a safe place to put our data

1. S3: Simple Storage Service
2. EBS: Elastic BeamStall, utilised with VMs
3. EFS: Elastic file Server
4. FSX
5. Storage Gateway

### Database: Store/Request information

1. RDS
2. Dynamo Db
3. Redshift

### Networking: utilised to make our services communicate

1. VPC: Virtual data center on the cloud 
2. Direct Connect: connect local data center with the cloud
3. Roud 53: DBS
4. API Gateway
5. AWS Global Accelerator

Please feel free to share any questions.
What is the Python programming language?
Published: 2022-05-11 14:44:11

Python is one of the most popular and fastest-growing programming languages. It is interpreted, high-level, general-purpose, and object-oriented scripting language, which means the following:

**Interpreted** - An interpreter processes the foundation file at runtime, it reads the lines of passcode one by one and performs what is said. Significantly like Perl and PHP, Python does indeed not require that you compile your program before running it. Therefore, you do not have to invoke a compiler. As opposed to jogging the compiler that helps turn source files into created class files, simply run a. py file. Python byte code compilation is automatic and totally implicit.

**High-level** - Python relies on easy-to-read structures that are later translated into a low-level language, the original code that is run on a computer’s central processing unit (CPU). A high-level language is intended to be used by a programmer and the written code is further interpreted into a low-level language. Like C++ or Java, before running, Python has to be processed. This enables Python’s portability — it can run on different kinds of computers with nearly no modifications.

**General-purpose** - Python can be used for nearly everything. It is applicable to almost every field for a variety of tasks. Be it the execution of such short-term tasks as software testing or long-term product development that involves roadmap planning, Python works well for them all, it is applicable all over the map. Its roles are unlimited. [Python course](https://www.igmguru.com/data-science-bi/python-training/) popular not only among software engineers, but also among specialists in other fields: mathematics, data analysis, science, accounting, and network engineering. Likewise, Python cliques with young people because it’s a very beginner-friendly scripting language.

**Object-oriented** - This programming paradigm gives an overall orientation towards scripting and powerful code structuring. This object-oriented approach allows thinking of problems in terms of classes and objects. Then, objects are composed in such a way to make up complex computer programs. Beside the object-oriented programming, Python also supports a procedural paradigm. With OOP being only one of the options, you can make Python programming more advanced by going for an object-oriented programming approach. Developers can create reusable patterns of code thus curtailing redundancy in development projects.

Know more : https://youtu.be/slSDox6mzIE
It ain't much, but it's honest work - marcin.dev
Tags: programming, webcomic, developer
Published: 2022-05-11 14:43:55

CRUD dev: It ain't much, but it's honest work


![CRUD dev: It ain't much, but it's honest work](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4vncw0zf9njok9s34zn2.jpeg)
Flux on AWS (EKS)
Tags: aws, devops, programming, tutorial
Published: 2022-05-11 14:27:25

In the world of K8s, there is a very strong trending topic: Gitops. Which involves the use of Git + Fluxcd operator. Most people think that GitOps is something that belongs to Github, which is wrong. It can be used with any service that offers the use of git for code versioning, for example: CodeCommit.

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

> Taken from https://fluxcd.io/docs/ 

##Cluster creation

```
eksctl create cb-cluster
```

##Flux Installation for AWS CodeCommit

Clone the Git repository locally:

```
git clone ssh://git-codecommit.<region>.amazonaws.com/v1/repos/<my-cb-repository>
cd my-cb-repository
```

Create a directory inside the repository:

```
mkdir -p ./clusters/my-cb-cluster/flux-system
```

Download the Flux CLI and generate the manifests with:

```
flux install \
  --export > ./clusters/my-cb-cluster/flux-system/gotk-components.yaml
```

Commit and push the manifest to the master branch:

```
git add -A && git commit -m "add flux components" && git push
```

Apply the manifests on your cluster:

```
kubectl apply -f ./clusters/my-cb-cluster/flux-system/gotk-components.yaml
```

Verify that the controllers have started:

```
flux check
```

Create a GitRepository object on your cluster by specifying the SSH address (my recommendation) of your repo:

```
flux create source git flux-system \
  --git-implementation=libgit2 \
  --url=ssh://git-codecommit.<region>.amazonaws.com/v1/repos/<my-repository> \
  --branch=<branch> \
  --ssh-key-algorithm=rsa \
  --ssh-rsa-bits=4096 \
  --interval=1m
```

If you prefer to use Git over HTTPS, then generate git credentials for HTTPS connections to codecommit and use these details as the username/password:

```
flux create source git flux-system \
  --git-implementation=libgit2 \
  --url=https://git-codecommit.<region>.amazonaws.com/v1/repos/<my-repository> \
  --branch=main \
  --username=${AWS_IAM_GC_USER} \
  --password=${AWS_IAM_GC_PASS} \
  --interval=1m
```

Create a Kustomization object on your cluster:

```
flux create kustomization flux-system \
  --source=flux-system \
  --path="./clusters/my-cb-cluster" \
  --prune=true \
  --interval=10m
```

Export both objects, generate a kustomization.yaml, commit and push the manifests to Git:

```
flux export source git flux-system \
  > ./clusters/my-cb-cluster/flux-system/gotk-sync.yaml

flux export kustomization flux-system \
  >> ./clusters/my-cb-cluster/flux-system/gotk-sync.yaml

cd ./clusters/my-cb-cluster/flux-system && kustomize create --autodetect

git add -A && git commit -m "add sync manifests files" && git push
```

Wait for Flux to get your previous commit with:

```
flux get kustomizations --watch
```

##Conclusions
No more manual deploys, you can delegate it to Flux. Try and move to the new ways to work on K8s on AWS.
How to implement github login in laravel
Tags: laravel, github, webdev, tutorial
Published: 2022-05-11 14:24:29


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fpeqwegs7uq8n29gzeij.png)
Nowadays, Users session is fewer on the website. You want to register a user on your platform. You should simplify the process of registration and login for your application. Laravel provides a socialite package to reduce the process, i.e., In the minimum steps, they connect the user to your application. In this article, we implement GitHub login in laravel.

##Step by step guide on GitHub login in the laravel application

- install package in your application
Install Socialite package on laravel application. Run the following command.
```
composer require laravel/socialite
```

- Get Credentials and Configure it
For credentials, you need to GitHub account. Click to Setting >> Developer Setting. Click OAuth Apps >> Register a New Application >> Add Details of the application. Generate credentials for your app.

[Read More](https://www.devrohit.com/github-login-in-laravel/)
Introduction to deep learning in Python - Basics
Tags: deeplearning, neuralnetwork, beginners
Published: 2022-05-11 14:10:33

Deep learning teaches computers to do what comes naturally to humans: <u>learn by examples.</u> It captures complex patterns in the given examples;  finds interactions between them, which lead to predicting the desired output. 

## Capturing interactions

Suppose you have to predict a number of transactions using factors like Age, bank balance, Retirement status, etc.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9r6covp7ru47w94fdhks.png)
You can use linear regression here. Linear regression is when you fit Data on the straight line to find the prediction.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hptumxb58a3fjfiq338i.png)
But something is missing! It seems unrealistic to think that all data variables are independent of others. See the parallel line? There is no interaction between them.
This is where Neurons come into the picture. Multiple Neurons stack on each other to find interactions in given input data(Neural Network). Something like these.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vonsmtmtj18mtqkqk4z0.png)
Neurons are like a black box with some magic inside it. When data is sent through it the first time, It uses its magic to predict something. 
First-time, the magic fails. But as neuron predicts more things, they get good at this witchcraft. And the dystopia is here; they can and will replace you in the Job market.

With complex enough neural network and correct resources of data and time, you can literally capture any intricate interaction between any data points. 

Any neural network starts with the input layer and ends on the output layer. And the magic happens in the hidden layers. And they are hidden for now; as you go deep into deep learning, you will find them. 

The most complex neural network is [GPT-3](https://en.wikipedia.org/wiki/GPT-3). It captures 175 billion interactions. Let's start with a single one.

## Forward Propagation

Now let's understand magic!

Now let's understand magic!
The forward-propagation algorithm will pass this information through the network to predict the output. 
Each neuron has a real value linked to it which tells the importance of that neuron feature in predicting the output. These are weights. Weights will  predict output for next layer.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3ric7x32bg12w9lx218n.png)
 
Output calculation algorithms:

```
for all connections to the node: 
     Node_value += input * weights
```

Python code for doing same calculation for neural network in given image

```
import numpy as np
input_data = np.array([2,3])
weights = {'node_0':np.array([1,1]),
'node_1':np.array([-1,1]), 
'output':np.array([2,-1]) 
}
node_0_value = (input_data* weights['node_0']).sum()
node_0_output = np.tanh(node_0_value)
node_1_value = (input_data* weights['node_1']).sum()
node_1_output = np.tanh(node_1_value)

hidden_layer_value = np.array([node_0_output,node_1_output])
output = (hidden_layer_value*weights['output']).sum()
```
O que aprendi sobre...
Tags: html, beginners, webdev
Published: 2022-05-11 14:07:55

> **O que aprendi sobre** se propõe a ser uma série para ajudar aspirantes a programadores a entenderem conceitos que talvez sejam deixados de lado inicialmente mas podem ajudar alguém que, como eu, se apega a detalhes e está entrando agora no mundo da programação e tem sentido falta de um pouco do "óbvio".De forma alguma se propõe a encerrar o assunto sobre o tema e sim ajudar a clarear um pouco e, com sorte, motivar mais alguém a continuar nos estudos. Boa leitura! 


![HTML 1](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/igiq333ma0xgyxmxk8gz.png)
DDD Factories
Tags: braziliandevs, beginners, todayilearned, ddd
Published: 2022-05-10 23:27:52

### Today I Learned 10/05/2022

[Factories](#factories)
[Dinâmica](#dinâmica)
[Implementação](#implementação)

## Factories
> Desloque a responsabilidade de criar instâncias de objetos complexos e agregados para um objeto separado, que pode não ter responsabilidade no modelo de domínio, mas ainda faz parte do design do domínio. Forneça uma interface que encapsule toda a criação complexa e que não exija que o cliente faça referência às classes concretas dos objetos que estão sendo instanciados. Crie agregados inteiros de uma única vez, reforçando suas invariáveis.
EVANS, Eric. Domain Drive Design

Ou seja, no exemplo usado no meu post sobre [services em DDD](https://dev.to/yanpiing/ddd-services-1cm7#value-objects) eu comento sobre como funcionam aggregates e dou exemplo do `address `em um `customer`, quando usamos esse exemplo fica bem claro que o aggregate de `customer `precisa de um um endereço, o Eric Evans fala que a Factory deve ser a responsavel por criar esse `customer `já com o endereço, sendo assim a Factory fica responsável por criar um aggregate por completo, e não os objects e value objects de forma separada

## Dinâmica
![Exemplo do livro domain drive design](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jlqvp7lr4sq7ta505iaf.png)

Nesse exemplo podemos ver qual a logica de funcionamento. O cliente vai especificar para a Factory o que ele quer em formato de parâmetros, a Factory vai criar o agregado de acordo com o que o cliente pediu e vai retornar para ele.
 
## Implementação

seguindo o exemplo do customer a implementação da Factory fica muito simples 

```js
export class CustomerFactory{
  
  static create(name: string): Customer{
    return new Customer(uuid(), name)
  }

  static createWithAddress(name: string, address: Address): Customer{
    const customer = new Customer(uuid(), name);
    customer.changeAddress(address);
    
    return customer
  }
}
```

onde o `client` que chamar a `factory` vai falar se quer um `customer` normal ou um `customer` com `address` já associado, esse exemplo poderia ser expandido pra um `customer` já ativo, etc...

e para usar a `factory` seria da seguinte forma

```js
    const address = new Address("Rua 123", 123, "any zip", "salvador" );
    let customer = CustomerFactory.createWithAddress("John", address )
```

observe que o `address` não tem uma Factory  própria, isso se deve ao fato de que a Factory  é para o agregado como um todo e não para cada `object` e `value object` contido em um agregado pois isso não faria sentido

> Ainda estou aprendendo sobre DDD e se quiser ver melhor o código pode dar uma olhada nesse [Repositório](https://github.com/Yansb/full-cycle-course/tree/master/domain-driven-design)
Helpware
Tags: bpo, outsourcing, helpware, digitalcx
Published: 2022-05-11 13:46:05

Founded in 2015, Helpware is a company taking a modern approach to the outsourcing industry. We created the company to change perceptions of what outsourcing is and can be, and we did that by building amazing cultures in each of our locations, and by simply treating our employees better. With Helpware, we are all a team and family, and you’ll see that true difference when partnering with us.
Helpware builds customized teams in Customer Service and Back Office for industry-leading startups and modern companies. With offices in California, Virginia, Kentucky, Ukraine, Philippines, Germany, Poland, Albania, Puerto Rico, and Mexico, we have the global scale to tailor custom teams and processes for success to our many powerhouse clients.
Helpware has grown over the years, initially catering to startup client partners, and has now evolved into creating client partnerships with large enterprises as well.
[](http://www.helpware.com)