teleren/devto huggingface dataset:
The struggle of keeping momentum - Tips that helped me ✅
Tags: webdev, beginners, productivity
Published: 2023-01-18 21:47:35

**I still see myself as a newb in the field of Development.**
Although my job title is Front End Developer and I have just over 2 years on the job experience, I still have so much to learn! 

Learning new languages and technologies can be challenging, but it's important to stay motivated and maintain momentum. 
I’m sorry to admit after a long day coding at work, bug fixing and staring at my computer screen I struggle to code at home as mentally I just want to go home, turn on Netflix and go to bed 🥱

But even still, I didn’t get to where I am now by napping so here are a few tips that helped me that may help you:

***Set clear, realistic goals:*** 
It’s easy to get caught in the cycle of wanting to learn anything and everything! But realistically you can’t do it all at once and if you try, you will eventually burn yourself out (I have personal experience of this 🥴) 
So instead, identify what you want to achieve and set specific, measurable goals for yourself. This will give you something to work towards and help you stay focused.

***Break it down:*** 
Break your goals down into smaller, manageable tasks. This will make them more manageable and help you avoid feeling overwhelmed. 
With my job, we set aside 4 hours every two weeks for on the job “Learning Time”. During this time you can switch off your notifications and spend some time learning something new. 
It helps us constantly learning and doing things you don’t do in your everyday. 

***Practice regularly:*** 
Consistency is key when it comes to learning something new. So set aside time each day or week to practice your coding skills. And remember to take breaks!

I honestly struggled with this at the start, I practiced too much and then not at all because I was mentally exhausted. So now I work on balancing work, practice and life in a healthy way. 

***Learn from others:*** 
Join online coding communities or find a mentor who can help guide you. Learning from others can be incredibly valuable and can help you stay motivated. 
I found this community amazing with learning new things and others like FrontEnd Mentor and Wes Bos Training courses each have their own communities where others are also learning just like you so you can discuss things together 🙂

***Celebrate your successes:*** 
Don't forget to celebrate your successes along the way! I’m big on cheerleading my own and others successes because coding is HARD, let’s be honest for a second and so celebrating the small wins as well as the big helps recognise how far you’ve come and look at what you can achieve ✨

***Remember, learning to code takes time and effort, but with dedication and perseverance, you can achieve your goals*** 🎉
AWS Cloud Quest: Deploy RESTful APIs Study Note
Tags: aws, cloud
Published: 2023-01-18 21:42:23

This is the DIY challenge of the Deploy RESTful APIs task in AWS Cloud Quest.

### DIY Steps:
1. Create a new Lambda function `diyFunction`
2. Copy paste the `vehicles_function.py` downloaded from Lab Files into `diyFunction`
3. Deploy `diyFunction`
4. Go back to API Gateway `ApiLab`
5. Create Resource under `/`, with Resource Name `vehicles`
6. Create Resource under `/vehicles`, with Resource Name `id` and Resource Path `{id}`
7. Create `GET` Method under both of these new Resources created in step 5 and 6 (remember to check `Use Lambda Proxy integration`)
8. Deploy API
Regular expressions are no longer a problem thanks to OpenAI!
Tags: webdev, vscode, openai, tutorial
Published: 2023-01-18 21:30:00

Regular expressions, often shortened to "regex," are a powerful tool for pattern matching and text manipulation in programming. However, understanding and creating regular expressions can be a challenging task for many developers. This is where OpenAI comes in, by providing a way to explain regular expressions in a more intuitive and user-friendly way.

## Environment

To try the potential of OpenAI, I will use Visual Studio Code and the [VS ChatGPT extension](https://marketplace.visualstudio.com/items?itemName=0xFedev.vs-chatgpt).

## Generating a regular expression

To ask OpenAI to generate a regular expression to check, for example, if a string is an email address, we write our requirement, select the text, and run command `ChatGPT: Text completions`. OpenAI will process our request and produce the regular expression, ready to use. Simple!

![Generating a regular expression with VS ChatGPT](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4sdx70hahcyep7cd0ha1.gif)

## Explaining a regular expression

We are facing a regular expression and interpreting it might take a lot of time. OpenAI can help us!
By highlighting the regular expression and running command `ChatGPT: Explain regular expression`, we will ask OpenAI to produce the documentation of the expression!

![Explaining a regular expression with VS ChatGPT](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r8p9vl6eppnoeyr4djeb.gif)

## A more complex use case

Suppose we have a set of rules for which we have to generate the related regular expression. Can OpenAI help us? Let's find out together.
We highlight our rules and run command `ChatGPT: Text completions`. At the end of the processing, OpenAI will indicate the related regular expression. Well done!


![complex regular expression with VS ChatGPT ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1cb38xp6qvr15od4n52p.gif)
🤔 RAMBOPS : le colonnel avait-t-il du MFA ⁉️
Tags: security, funatwork, beginners, devmeme
Published: 2023-01-18 21:22:43

## 🍬 Teaser 🤦

Le meilleur ami de Rambo, [**le colonnel** (Trautman)](https://en.wikipedia.org/wiki/Sam_Trautman) est torturé par de très vilains développeurs qui veulent le mot de passe `root` du serveur où tourne leur fabuleuse (et stratégique) application de gestion de videoclub pour

> _"pouvoir déployer plus vite (...) et sans entrave au Time to Market"_

## 😱 "THE" question

👉 Le colonner va-t-il craquer ?... Si oui, avec quelles conséquences ? 

## 🎞️ Show

{% youtube Z66VX__zJ5Q %}

## 👩‍🏫 Plus loin

Pour en savoir plus sur le MFA, un contenu à venir très prochainement :

{% twitter 1615605389420011528 %}
Techniques for optimizing JavaScript performance and reducing load times
Tags: javascript, codenewbie, tutorial, beginners
Published: 2023-01-18 21:19:46

Here are a few techniques for optimizing JavaScript performance and reducing load times:

##Code Splitting: 
[Code splitting](https://web.dev/reduce-javascript-payloads-with-code-splitting/) is a technique that allows you to split your JavaScript code into smaller chunks that can be loaded on demand. This can help reduce the initial load time of your application and improve performance. You can use tools like [webpack](https://webpack.js.org/guides/code-splitting/) to split your code.

##Lazy Loading:
[Lazy loading](https://blog.logrocket.com/understanding-lazy-loading-in-javascript/) is a technique that allows you to only load resources when they are needed, rather than loading them all at once. This can help reduce the initial load time of your application and improve performance. You can use the [Intersection Observer API](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API) for lazy loading images and videos, and dynamic import for lazy loading modules.

##Caching:
[Caching](https://developer.mozilla.org/en-US/docs/Web/API/Cache) is a technique that allows you to store resources on the client's browser so that they can be reused later without having to be downloaded again. This can help reduce the load time of your application and improve performance. You can use the [Cache API](https://developer.mozilla.org/en-US/docs/Web/API/Cache) for caching resources.

##Optimizing images:
Optimizing images means reducing their file size without losing quality. This can help reduce the load time of your application and improve performance. You can use tools like [ImageOptim](https://imageoptim.com/api) or [Kraken.io](https://kraken.io/) to optimize your images.

##Using a JavaScript framework:
JavaScript frameworks like React, Angular, and Vue.js can help you build large and complex applications more efficiently. They provide a set of tools and conventions for structuring your code, which can make it easier to maintain and improve performance.

_Keep in mind that performance optimization is a continuous process, you should test and profile your code regularly to ensure that it runs as efficiently as possible._
Tendo poder sobre seu código - Controle de Fluxo, Declarações de Condicionais e Manipulação de exceção.
Tags: javascript, beginners
Published: 2023-01-18 21:12:28

Você tem limite sobre seu próprio código? Imagine que ao escrever um código, deseja que uma função seja lida novamente, mesmo que ela esteja bem perto do final do algoritmo ? Ou que deseja por uma condição de ação, onde irá ler repetidamente até chegar a um ponto desejado? Sabemos o poder que uma linguagem de programação trás, e que os exemplos citados são possíveis, mas como fazer?

Quando você escreve um código, geralmente deseja executar ações diferentes para diversas situações. E para se ter mais controle sobre o seu próprio projeto foram criados: Controle de Fluxo, Declaração de uma condicional e a manipulação de exceção, fazendo assim o desenvolvedor ter mais vastidão sobre o seu próprio algoritmo. Vejamos o que cada uma faz e seu uso no JavaScript.




**Fluxo de Controle e Declaração de Condicionais**

O fluxo de controle por padrão, é executado de cima para baixo, linha por linha, mas podemos alterar isso. O fluxo de controle nos permite direcionar o fluxo do código dependendo das condições que são dadas.

Esse fluxo de leitura "natural" do JavaScript pode ser alterado por: loops, condicionais e funções. Os Loops podem repetir uma determinada tarefa até que ela chegue a condição exigida(Para conhecer: For, While e Do While veja também meu artigo falando sobre eles: https://dev.to/altencirsilvajr/os-diferentes-tipos-de-loops-e-iteracoes-no-javascript-po9). 

Condicionais são declarações de tomada de decisão usadas quando vários cenários hipotéticos (If,Else e Switch).

```
while (x < 10) {
  x++;
}
```





Já as Funções são blocos de código que são escritos uma vez e usados ​​várias vezes, eliminando a necessidade de repetir o mesmo código. Utilizando funções, você pode chamar uma parte do código que já foi lida no fluxo padrão quantas vezes quiser.

```
function square(numero) {
  return numero * numero;
}
```





**Manipulação de Exceção**

No caso da manipulação de exceção os erros são lançados por um mecanismo e as exceções são lançadas pelo desenvolvedor. Falando de maneira simples: é uma forma de lidar com erros que podem ocorrer durante a execução de um programa.
Quando utilizados,os blocos `try` e `catch`  manipulam e processam erros. O bloco try é usado para agrupar o código que pode gerar um erro, enquanto o bloco catch é usado para lidar com o erro e tomar a ação apropriada. Se ocorrer um erro no bloco try, o bloco catch será executado e o fluxo do programa será transferido para o bloco catch.





Com isso, você pode usar o controle de fluxo, as declarações condicionais e a manipulação de exceção em JavaScript para ter mais controle sobre seu código e garantir que as condições especificadas sejam atendidas, sem se preocupar com uma leitura padrão e tendo total controle sobre o que ele fará.
Become a Pro React Developer!
Tags: react, webdev
Published: 2023-01-18 20:54:20

Becoming a pro React developer requires a combination of understanding the framework and its principles, as well as gaining experience working with it in real-world applications. Here are several steps you can take to achieve this goal:

## Learn the basics of React:
 To become a pro React developer, you first need to have a solid understanding of the framework. Start by learning the basics of React, including JSX, components, and state and props. You can find many resources online, including the official React documentation, to help you get started.

## Practice building small projects:
 Once you have a good grasp of the basics, start practicing building small projects using React. This will help you gain experience working with the framework and solidify your understanding of its principles.

## Learn React Hooks and Context API:
 React Hooks and Context API are new features added to React that allows you to manage state and context in functional components. Knowing how to use these features is important for any pro React developer.

## Learn how to use third-party libraries:
 React is a small library and doesn't come with everything you need to build a complete application, you need to learn how to use third-party libraries to add additional functionality to your React apps.

## Learn how to debug and troubleshoot:
 As a pro React developer, you will encounter bugs and issues in your code. It is important to know how to troubleshoot and debug your code effectively.

## Gain experience working on real-world projects:
 The best way to become a pro React developer is to gain experience working on real-world projects. Look for opportunities to work on projects with other experienced developers, whether it's through open-source contributions or paid work.

## Constantly improve your skills:
 Technology is constantly evolving, and it is important to stay up-to-date with the latest developments in React. Keep learning and experimenting with new features and libraries to improve your skills.

## Participate in the React community:
 React has a large and active community, participate in the community by reading blogs, attending meetups, or joining online groups. This will help you stay up-to-date with the latest developments in React and give you the opportunity to network with other experienced developers.

By following these steps, you can become a pro React developer. However, becoming a pro developer is not a overnight task, it takes time and dedication. Keep learning, practicing and building projects, and you will eventually reach your goal.
How to improve your developer skills in 2023
Tags: frontend, developer, backend, web
Published: 2023-01-18 20:49:27

---
title: How to improve your developer skills in 2023
published: true
description: How to improve your developer skills in 2023
tags: [frontend, developer, backend, web]
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jhbmcethpuatjc4cfrzq.jpg
# Use a ratio of 100:42 for best results.
published_at: allowed
---

Hello again. I have come back to write a new article after a long time.
The year has just begun, and every new year we promise to improve our skills or new developers start their journey.
So I decided to write some tips for you to do that.

### Create your roadmap.
If you search for a development roadmap, you will probably see this.
It will help you to know macro knowledge about front-end and back-end. I would suggest looking for your current position and creating a roadmap. For example, I already know about javascript, CSS, HTML, and React, but I've never studied unit tests.

So I create a list to learn the unity test
- [ ] What is a unity test?
- [ ] Libraries for unity test:
    - [ ] Jest
    - [ ] React Testing Library
    - [ ] Cypress


### Practice
I know studying the core and theories is very important. But practice is also necessary.
After reading articles, documents, and books about the unity test, It's time to get your hands dirty. You can create a new project or you can apply this knowledge to an existing project. If you haven't an idea or an existing project, you can get an idea from this link with many front-end challenges.

### You learn more when you teach.
The time has come to validate the learning. Try to teach someone.

You can create a Youtube Channel or Twitch Live. You can also create articles like me. Another good way to practice would be to give talks and share your learning with friends before speaking at an event.
Or keep it simple, write about your learning on LinkedIn and ask people if they have any questions.

**Just do it.**

I promise you, if you follow these tips, by the end of the year, your knowledge will be improved considerably.
That's all for today. What about you, any advice? Share with us! Suggestions are always welcome.

Bye, see you next time.
Restarting (not starting) you C# application from itself with administrator privileges.
Tags: csharp
Published: 2023-01-18 20:40:42

   I recently came across a situation where I wanted to restart my program with administrator privileges if it was run with no parameters so the program could execute an install sequence.
I used the following code in a .NET 7.0 Console application...

```
using System.Diagnostics;
using System.Security.Principal;

class Stuff
{
    static void Install()
    {
        try
        {
            //check if we are running as administrator currently
            if (!new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator))
            {
                //Start new process as administrator. Environment.ProcessPath is the path of what we are currently running.
                Process.Start(new ProcessStartInfo { FileName = Environment.ProcessPath, UseShellExecute = true, Verb = "runas" });

                //Exit current process
                Environment.Exit(0);
            }
        }
        //if user selects "no" from adminstrator request.
        catch
        {
            Console.WriteLine("Administrative rights are required for installing this application.\nPress any key to exit.");
            Console.ReadKey(true);
            Environment.Exit(0);
        }

        //Do stuff...

        Console.WriteLine("Install complete\nPress any key to exit\n");
        Console.ReadKey(true);
        Environment.Exit(0);
    }

    public static void Main(string[] args)
    {
        if (args.Length == 0)
            Install();
        else
        {
            //Do stuff...
        }

    }
}
```
The birth of the Gateway for the Web3
Tags: web3, blockchain, polygon, matic
Published: 2023-01-18 20:30:28

Hi Everyone !

Today, I would like to describe why I wanted to build SSL3.


One of my projects a few weeks ago was to construct a Web3 service hosted on IPFS. I was missing a gateway that would seamlessly redirect a URL to my IPFS content. Unfortunately, Cloudflare's free gateway is **no longer free**, and we must add a credit card to begin using their gateway. So it's not truly Web3.

I tried other services, such as Pinata, but some features were missing.

So I came up with the idea of creating my own **blockchain-based gateway** that accepts **cryptocurrency payments**: SSL3.IO was created.
I began with a proof-of-concept polygon-based smart contract and ran several tests with some friends' websites.

It worked great on the testnet (Mumbai), so I decided to try it in "production mode" on the mainnet. SSL3.IO is already used by several websites in production.

What makes SSL3.IO unique:

- **Crypto payment** via Metamask in Matic 
- Backend fully hosted on the blockchain
- **Automatic code minification**
- Cache
- Integrated **IPFS caching service**
- And more to come, such as database, lambda/serverless functions, ...
- SSL3.IO is served thanks to SSL3.IO :)


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

What I need right now is to have some alpha users to collect their first feedback. We can give some monthly credits for free for the braves.

Let's take back the control over the web with Web3 and blockchain technology.
AI TESTING
Tags: ai, testing, devops
Published: 2023-01-18 20:16:47

Artificial intelligence (AI) testing is a crucial step in the development and deployment of AI systems. The goal of AI testing is to ensure that the system functions as intended and can handle a wide range of inputs and situations.

One of the main challenges in AI testing is dealing with the complexity and variability of the system. AI systems are often composed of multiple layers of algorithms, each of which can have its own set of parameters and behaviors. This makes it difficult to predict how the system will behave in different scenarios.



To address this challenge, AI testing typically involves a combination of different methods, including:

Unit testing: This is the process of testing individual components of the AI system, such as individual algorithms or modules. Unit testing helps to ensure that each component is functioning correctly and can help to identify and fix bugs early in the development process.

Integration testing: This is the process of testing how different components of the AI system work together. Integration testing helps to ensure that the system as a whole is functioning correctly and can identify and fix issues that may not be apparent during unit testing.

Functional testing: This is the process of testing the system's ability to perform specific tasks or functions. This can include testing the system's accuracy, performance, and ability to handle different inputs and scenarios.

Non-functional testing: This is the process of testing the system's behavior under different conditions. This can include testing the system's performance, scalability, and robustness.

User acceptance testing: This is the process of testing the system with actual users to ensure that it meets their needs and expectations. User acceptance testing can provide valuable feedback on the system's usability and user experience.

It is important to note that AI testing is an ongoing process. As AI systems are deployed in the real world, they will encounter new and unexpected situations. Continuous testing and monitoring can help to ensure that the system remains reliable and performs as intended.

In conclusion, AI testing is a crucial step in the development and deployment of AI systems. It helps to ensure that the system functions as intended and can handle a wide range of inputs and situations. A combination of different testing methods, including unit testing, integration testing, functional testing, non-functional testing and user acceptance testing, is used to thoroughly test AI systems. Continuous testing and monitoring is important to ensure that the system remains reliable and performs as intended.