teleren/devto huggingface dataset:
How to get AWS Official Practice Exam for Free
Published: 2022-05-08 20:50:48

Getting certified in AWS requires preparation and practice. Taking the practice exam usually serve as a confidence test before writing the actual exam. AWS in early 2022 announced the end of payment for her official practice exam which was 20 dollars per practice exam. 

To access the AWS official practice exam, follow along to get it done.

**Step 1:**
Login to https://explore.skillbuilder.aws/



![AWS Skill builder page ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/08jhuy4fa6ish0gnlb90.png)

**Step 2:**

Click on Sign in. 


![Sign in page for AWS skill builder](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/13ccymkhzl0htrxj36zd.png)

For most of us, we will want to use our AWS credentials, so choose Login with Amazon. 


Then, Sign in with your AWS account details using your email and password. 

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

**Step 3:**
After successful login. 

On the search bar, search for `

**AWS Certification Official Practice Question Sets**
`

Choose the language you want. There are eleven languages supported by AWS the last time I checked. 

Click on the course then **enroll**. I choose the English version 

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


**Step 4:**
Click on AWS Certification Official Practice Question Sets (English)

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

Then you will see your private code  which should be used to access the practice exam on 


Note that this will give you access to all the practice exam for AWS exams. 

I hope this helps someone.
L'interface Comparable en Java bDarija
Tags: darija, comparable, interface, java
Published: 2022-05-08 20:46:21

L'interface Comparable kaykon f java.lang. Comparable lghaya mno howa moqaranat les objets dial chi classe bl'instance dial nefs dik lclasse, wadifa dialha katsehel tertib lma3loumat dial les objets li tabein la classe. lmefrod ela la classe li bagha dir comparaison les instances lowl dir l'implementation dial `Comparable<T>`. Had l'interface kay3tik methode smitha compareTo () li katakhod flparametre l'objet dial la classe


la methode `compareTo()` kadir lmoqarana mabin 2 strings mo3jamian bima3na ana :`{"az", "ad"}` katrjee `{"ab", 'az"}`.

lmoqarana katbasa ela Unicode dial kolla caractere fstring.

Btali kat-retourner 0 ila string lqah kaytsawa mea string l akher.

kat-retourner qel men 0 ila string endo 3adad a7rof qel men string l akher.

O kber men 0 ila string endo 3adad ahrof kber mn string l akher.






Example dial programme:


```
public class Etudiant implements Comparable<Etudiant> {

private String nom, cin;

 @Override
   public int compareTo(Etudiant e) {
      return this.cin.compareTo(e.cin);
   }

}
```
React dot notation component with TS
Tags: react, typescript, functional, dotnotation
Published: 2022-05-08 19:48:58

Yes I know, dot notation components are not very much used (libraries aside) in your projects, I've found out that is hard to check some legacy or green-field code containing some dot notation approach in it. Nevertheless is not an out-of-date pattern and overall is very useful. Let's jump in

#When to do-notate components

There is not a most here, but from my personal point of view the right use of it is for components that "compose" themself all the time using necessary parts (other components)

The classic example would be a Table, think about it, your table will have thead, tbody, th, tr, and td, but you want to separate those parts into its own components, to add styles, or maybe to handle some logic and made it easy to test, but your table will always use it.

#Import less and do more

For such components avoiding using dot notation causes imports to be long lines even if you use naming and try to do it from a single file
it would be cool if you simple import Table instead of Table plus all the small parts 

```javascript
import {Table, Thead, Tbody, Col, Row} from './table'
```

vs

```javascript
import {Table} from './table'
```

#Typescript autocomplete

By using typescript (do it if you don't), also it's easy to autocomplete your Table component, since by typing now by typing "Table." will suggest you all the possible notations added to Table

#Let's do it quickly

```javascript
import React from "react";
import "./styles.css";

type TableCmp = React.FunctionComponent & {
  Thead: React.FC;
  Tbody: React.FC;
  Row: React.FC;
  Col: React.FC;
};

const Table: TableCmp = ({ children }): JSX.Element => <>{children}</>;
const Thead: React.FC = ({ children }): JSX.Element => (
  <thead>{children}</thead>
);
const Tbody: React.FC = ({ children }): JSX.Element => (
  <tbody>{children}</tbody>
);
const Row: React.FC = ({ children }): JSX.Element => <tr>{children}</tr>;
const Col: React.FC = ({ children }): JSX.Element => <td>{children}</td>;

Table.Thead = Thead;
Table.Tbody = Tbody;
Table.Row = Row;
Table.Col = Col;
```

You can extrapolate this to any composition you need and extend the types for any components easily. Happy coding!
Borderhunt - my new portfolio case
Tags: interface, gamedev, portfolio
Published: 2022-05-08 19:46:08

Hey there! I just finished the course "Create your own project" and here is a result - the bunch of assets and characters. Just want to show them - it was a huge work to design and paint them.

As a theme, I chose Russian fairy tales. The plot of the game is typical for fairy tales - the main character Alesya goes to the other world to save her stolen younger brother. Her path lies through a forest filled with dangers and secrets. One of the powerful enemies is Baba Yaga Bone Leg, who lives in a house on chicken legs and flies in a mortar.

So there is a fakescreen of the battle
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ibcxbvcb2gjb5n9gyzfe.png)

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

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

Location assets
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nkbs009xb67v8r1gyz1u.png)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b5fms22hotmozza5u4pz.png)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b9jjj7s6mrfaj92zg8j3.png)

Thank you for watching!
#43 - If you can read this... - Codewars Kata (6 kyu)
Tags: javascript, programming, 100daysofcode, computerscience
Published: 2022-05-08 19:45:07

##Instructions
**Task**
You'll have to translate a string to Pilot's alphabet (NATO phonetic alphabet).

**Note:**
> There are preloaded dictionary you can use, named NATO
> The set of used punctuation is ,.!?.
> Punctuation should be kept in your return string, but spaces should not.
> Xray should not have a dash within.
> Every word and punctuation mark should be seperated by a space ' '.
> There should be no trailing whitespace

**Example**

<u>Input:</u>

> If, you can read?

<u>Output:</u>

> India Foxtrot , Yankee Oscar Uniform Charlie Alfa November Romeo Echo Alfa Delta ?

---

##My solution:


```javascript
function to_nato(words) {
  let arr = words.split('').filter(x=> x!== ' ')
  let r = ''
  arr.map((x,i)=>{
    let letter = x.toLowerCase()
    let coded = NATO[letter]
    if(i !== arr.length - 1 && coded) r+=coded + ' '
    else if(i == arr.length- 1 && coded) r += coded
    else if(i !== arr.length - 1 && !coded) r += letter + ' '
    else r+=letter
  })
  return r
}
```


---

##Explanation
First I created a variable with the string splitted into an array, and another variable "r" with an empty string, where I'll save the last result.

```javascript
  let arr = words.split('').filter(x=> x!== ' ')
  let r = ''
```

---

Then I mapped that array with 2 parameters, <u>x:</u> the letter being mapped and <u>i: </u>the index of it.
First in the loop I converted to lower case the letter and after that I made the variable "coded" to save the letter in pilots alphabet with the NATO object.

```javascript
  arr.map((x,i)=>{
    let letter = x.toLowerCase()
    let coded = NATO[letter]
```

---

Then I used 4 conditionals:
1- If the index of the letter isn't equal to the array length - 1, it means that it isn't the last one, and coded isn't undefined it means it exist, so I'll add to the result string the coded plus a space

```javascript
    if(i !== arr.length - 1 && coded) r+=coded + ' '
    else r+=letter
```

---

2- Else if the letter is the last one in the array and coded exist I'll just add coded to the result without the sapce because is the last letter

```javascript
    else if(i == arr.length- 1 && coded) r += coded
```

---

3- Else if it isn't the last letter and there's no coded string it means that it is one of the symbols like <u>.?!,</u> so I just add the letter with an space 

```javascript
    else if(i !== arr.length - 1 && !coded) r += letter + ' '
    else r+=letter
```

---

4- If any condition is true it means that it is a symbol and it's the last element of the array, so It doesn't need a space, so I just add the letter

```javascript
    else r += letter
```

---

At the end I just returned <u>r</u>

```javascript
    return r
```

---

**What do you think about this solution? 👇🤔**

[My Github](https://github.com/Cesardlr)
[My twitter](https://twitter.com/cesar__dlr)
[Solve this Kata]
(https://www.codewars.com/kata/586538146b56991861000293)
Static vs Dynamic Typing
Tags: umkc, cs441
Published: 2022-05-08 19:33:58

*Photo by [israel palacio](https://unsplash.com/photos/ImcUkZ72oUs?utm_source=unsplash&utm_medium=referral&utm_content=creditShareLink) on Unsplash*

---

There are 2 separate concepts to understand:

1. **Strong vs Weak** - Can variables change type?
  - Strong says no.
  - Weak says yes.
2. **Static vs Dynamic** - When do we check variable type?
  - Static checks at compile time.
  - Dynamic checks at runtime.

## Examples

|           | 💪 Strong              | 😖 Weak           |
|-----------|-----------------------|------------------|
| 🥶 Static  | Java, C++ | ? |
| 👟 Dynamic | Python, Ruby   | JavaScript, PHP |
Why In Memory storage faster than Disk Storage
Tags: cache, ram, redis
Published: 2022-05-08 18:48:19

**The easy version:**

HDD is relatively far away from the CPU, connected to system logic board via a somewhat slow SATA connection. SATA 6GB/s is the current standard. HDD's can only read or write but not both at the same time.​

RAM sits very close to the CPU and has a very high bandwidth connection. DDR4 has a throughput of ~40GB/s some graphs RAM's can read/read, read/write and write/write at the same time (dual channel). RAM's can also send very large data at once (double data).

**The technical version:**

HDD's have spinning platters, and a magnetic read/write head needs to reposition every time you want to read/write something. It needs to find the correct places on each platter. HDD's platters are spinning at 5400 rpm, 7200 rpm or 10000 rpm. The magnetic read/write head sits on each side of a platter. Typically an HDD has three platter and six read/write heads. But those heads are fixed to the movement of just one torque engine. Depending on the layout of a filesystem the read/write head can't constantly read from near positions.

RAM memory typically modules consists 4 or 8 memory modules. Each module is connected via dual-channel and read/read, read/write or write/write at the same time. At best a RAM memory with eight modules can 16 times read data at the same time or write 16 times at the same time. Each memory module has its layout manager; that knows exactly where the data is. Reading data is only affected by something called CAS timing. For example a DDR4 RAM clocks at 1800 Mhz (1,800 billion clock cycles / second ) and has a CAS timing of 34; means that the RAM module just needs 34 clock cycles to be ready.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cuk87kp3359yq8a9c1in.png)
Normal vs Applicative Evaluation
Tags: umkc, cs441
Published: 2022-05-08 18:38:33

These are 2 types of parameter evaluation. In a nutshell:

- Normal = left-to-right
- Applicative = inside-out

So for a lambda operation, `(double (average 2 4))`:

![equation](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bxidjv7lq092rki6i2mf.png)

## Further Reading

- https://sookocheff.com/post/fp/evaluating-lambda-expressions/
send form data to an email using javascript
Published: 2022-05-08 18:32:32

`<form id="Body">
    <h1 id="body">I am writing an email....</h1>
    <input type="file" id="myFile" name="filename">
    <input type="submit">
    <submit type="submit" onclick="sendMail()"></submit>
  </form>`

`<script>
    function sendMail() {
        var link = "mailto:morteza.pouresmaeeli@nak-mci.ir"
        + "&subject=" + escape("This is my subject")
        + "&body=" +                 scape(document.getElementById('body').value);
        location.href = link;
    }
</script>`

I am going to send form data to an email using above code, but it does not work
Programmatically creating video clips and animated GIFs in Python
Tags: python
Published: 2022-05-08 18:12:34

Video editing is an art of it own but sometimes you may have to generate a short video programmatically - like a marketing or manual type of content that uses data from your application at the time of creation. This can be done in Python although it won't be that easy.

**MoviePy** and **Gizeh** can be used to create animated GIFs or video clips with text, images, animated vector graphics and alike. Let see what they can do.

[Gizeh](https://github.com/Zulko/gizeh) is a wrapper around Cairo library and tries to make working with it easier. This library can be used to create vector drawings. To use it you have to have Cairo installed on your system.

[MoviePy](https://pypi.org/project/moviepy/) is a video editing library that has a similar function set as a desktop video editor application and thus allows creating video editing flows programmatically.


![Animated Hello World](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pkkmkgjmrpspt7968s7y.gif)

**Code commentary and examples on:**

> **https://rk.edu.pl/en/programmatically-creating-video-clips-and-animated-gifs-in-python/**
10 Best JavaScript Video Courses – with Samples 2022
Tags: javascript, webdev, beginners, course
Published: 2022-05-08 17:57:04

[<img src="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aneu22rqaeq40qt22ais.jpg">](https://www.youtube.com/watch?v=loM7vcWoAlU)
Feeling lost is not only for beginners
Published: 2022-05-08 17:35:00

Below are my current thoughts and feelings regarding development as a career. I wanted to share them publicly because I feel like it is important to show that even though I have been a developer for a few years now, it is entirely normal to feel a little deflated or burnt out.

Anyway, this is a kind of thoughts out loud post, but I feel like it would be good to hear other peoples feelings and thoughts as I think only good can come from showing some vulnerability from time to time and learning how to deal with those feelings and thoughts.

I am, at this moment in time, the most successful I have ever been. Not just in this career but any career I have ever had. But at the same time I have never felt so lost in where to go or what to do next.

I know that I love being a developer, the people I have met and the growth that I have experienced would not have been possible if I were not in this industry.

My trouble is, I get bored very easily, and I am always trying to better myself. I am competitive with myself, and I find it hard to stand still and appreciate the moment. Being content is not something I do very well and most recently I have found myself infuriated by the most little of things at work (not a good sign I don't think), and I think it partly comes down to always expecting more or better for myself.

My motivation at the moment seems to come and go in waves, one minute I am super into learning or doing something and the next I have no interest in doing it in the slightest. This could be burnout and or depression but in general, I don't feel depressed as everything else seems to be going really well.

A part of my issue is that I don't really want to work in web development forever, or work on products that I don't really care about or believe in. I would ultimately like to become an iOS engineer as I am an Apple fanboy deep down (haters gonna hate), but I feel so stuck in the sense that changing from web developer to an iOS developer seems impossible, or at least it does for me at the moment.

Is it just me? Or does anyone else feel lost?
How to send email in .NET
Published: 2022-05-08 17:34:14

##Email.cs

```c#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace email_sending
{
    public partial class email : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void send_Click(object sender, EventArgs e)
        {
            try
            {
                MailMessage message = new MailMessage();
                SmtpClient smpt = new SmtpClient();
                message.From = new MailAddress("Enter Your Email Here");
                message.To.Add(new MailAddress(to.Text));
                message.Subject = "Testing";
                message.IsBodyHtml = true;
                message.Body = body.Text;
                smpt.Port = 587;
                smpt.Host = "smtp.office365.com";
                smpt.EnableSsl = true;
                smpt.UseDefaultCredentials = false;
                smpt.Credentials = new NetworkCredential("Enter Your Email Here", "Enter Your Passwrod");
                smpt.DeliveryMethod = SmtpDeliveryMethod.Network;
                smpt.Send(message);
            } catch (Exception ex)
            {

            }
        }
    }
}
```

##Folder Structure

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

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

[Read More](https://firebasestorage.googleapis.com/v0/b/statictube-5ddae.appspot.com/o/files%2Femail_sending.zip?alt=media&token=d433e0de-fefd-4ea9-b58c-e38757f8eaa4)
Where enterprise developers learnt to code?
Tags: enterprise, programming, developer, coding
Published: 2022-05-08 17:28:26

---
title: Where enterprise developers learnt to code?
published: true
description: Developers tend to teach themselves: over half of all developers say some of their coding skills are self-taught.
tags: #enterprise #programming #developer #coding
//cover_image: https://direct_url_to_image.jpg
---

**Traditionally educated or self-taught adventurer?**

Developers tend to teach themselves: over half of all developers say some of their coding skills are self-taught. Given the rapid pace of change and innovation in the tech industry, some self-teaching is necessary to stay abreast of the latest developments in the field. Under the enterprise microscope, we see large and very large enterprise developers (51% and 60% respectively) are less likely to favour self-teaching than non-enterprise developers (64%).

![enterprise developers](https://i.ibb.co/XJnS4nk/Screenshot-2022-05-07-150333.png)


Source: [SlashData](https://www.slashdata.co/)

In case you want to help the developer ecosystem,  we are running a new poll for Enterprise Developers, Engineers & IT professionals to measure awareness in developer tools, communities and resources.

You can enter **[here](https://survey.developernation.net/name/cbts1?utm_medium=post&utm_source=dev_to&utm_campaign=cbtspost)**
 and win prizes!
Using pnpm instead of npm or yarn
Published: 2022-05-08 17:24:51

---
title: Using pnpm instead of npm or yarn
published: true
description: Why use pnpm instead of npm or yarn
tags: 
//cover_image: https://direct_url_to_image.jpg
---

My disk space was getting low and I knew I had to delete some of the `node_modules` from my projects. I was looking for a way where dependencies between projects could be easily shared without downloading again or copying the packages into the current project directory. 
`pnpm` is exactly the tool designed to solve these issues. It creates hard links to different packages instead of storing entire packages. Just remove the old `node_modules` folder and run `pnpm install` inside your project and you're good to go.

References: 
1. https://pnpm.io/motivation
2. https://www.infoq.com/news/2020/06/pnpm-javascript-package-manager/
3. https://pnpm.io/cli/install
APIDESK
Tags: extension, api, stackoverflow, react
Published: 2022-05-08 16:58:54

## **_ApiDesk_**
v-1.0.3

## **About**
- ApiDesk is a chrome extension that makes api testing easier. You don't have to create long api call methods like fetch and axios, and you don't have to specify headers or data in it using code, to test.
- ApiDesk has a simple and user friendly user interface.
- ApiDesk makes searching for errors in stackoverflow simple and quick with just two clicks.

## **How to Use**

### Apis
**Methos: GET**

- By default we have set the GET method 
- Put the Api Url
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rl6cscvsb36024up20hn.png) 
 
- You can edit the header if required, with the header key`(Accept)` and header value`(*/*)`
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m02whqbib7a7xxzmj1oc.png)
 
- Submit the request

**Response:**
Response Body will show header and Data
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fieg7axpgvjtebir10rt.png)
 

**Methos: POST**

- Select the POST method
- Put the Api Url
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/exo947etd65gjd3xbm9s.png)
 
- You can edit the header if required, with the header key`(Accept)` and header value`(*/*)`
- Add the data in JSON format. Exmple: `{"key":"value"}`
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7kthtt1dxro0chsny016.png)
 
- Submit the request

**Response:**
Response Body will show header and Data
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7y617vq7iwccs6x5q6yk.png)
 
**Methos: DELETE**

- Select the DELETE method
- Put the Api Url
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vd2icuaotjuztmfqmke7.png)
  
- You can edit the header if required, with the header key`(Accept)` and header value`(*/*)`
- Submit the request

**Response:**
Response Body will show header and Data
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ttiah8t3uzsd117cdp9o.png)
  
---
### Stackoverflow
- What if we told you that you could search for your issue in only two clicks? You wouldn't have to open a new tab to do so, we've got you covered. We've integrated stackoverflow error search as well.
- Enter your error in the StackOverflow tab and hit search; you will be sent to the stackoverflow page.
- Real time update with cool UI

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

### VScode Shortcut Suggestions
- Get ProTips of VScode Shortcut every second.

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

### Contributer:

- Ayushi Verma [Github](https://github.com/Ayushi20-19/)
- Nishant Kumar Tiwari [Github](https://github.com/Asuraking1n)

#### [Github Link:](https://github.com/Ayushi20-19/apidesk)  
Give a Star if you find ApiDesk useful :)

---
**Note**: ApiDesk is available in chrome web store,  [Add to your chrome](https://chrome.google.com/webstore/detail/apidesk/ncmebhclacffkcmjopgapnefmfpnhnpe).