teleren/devto huggingface dataset:
Tipos de análise de dados
Published: 2023-12-14 03:04:56

A análise de dados pode ser realizada de várias maneiras, e neste artigo, vamos falar sobre os quatro tipos principais: **análise descritiva**, **análise diagnóstica**, **análise preditiva** e **análise prescritiva**.

**Descritiva:**
A análise descritiva é o ponto de partida de qualquer análise de dados. Ela é o tipo de análise mais usado na criação de um dashboard.
Seu objetivo é fornecer uma visão geral da empresa, aqui, respondemos a pergunta **“O que está acontecendo?”.**
Através de recursos visuais, como gráficos ou tabelas mostrando dados estatísticos, é possivel identificar e compreender o comportamento dos números da empresa e até mesmo encontrar outliers. Essa análise é imprescindível para que possamos prosseguir para análises mais avançadas.

**Diagnóstica:**
Enquanto a análise descritiva apresenta os dados para o analista, a análise diagnóstica faz, chocantemente, um diagnóstico daqueles dados e procura entender o que levou à aqueles resultados na descritiva, duas ferramentas muito utilizadas para essa etapa são o Excel e o Python.
**“O que fez a empresa vender tanto?”**, **“O que fez a empresa gastar tanto?”**, **“O que fez tantos clientes entrarem na minha loja?”**, são algumas das perguntas que a análise diagnóstica responde.

**Preditiva:**
Agora, já fazendo uma análise bem mais avançada, chegamos em uma etapa em que podemos prever ou estimar qual o futuro daqueles dados, com base em seus históricos.
**“O que provavelmente vai acontecer com minha empresa no futuro?”**. Esse futuro pode ser amanhã, mês que vem, ano que vem, etc. você decide, tudo isso graças ao histórico dos dados passados.
Aqui é hora de começar a tomar decisões estratégicas para o negócio, pois com base no histórico, a previsão pode ser positiva ou não, “Com base no que eu estou fazendo na minha empresa agora, o que provavelmente vai acontecer?”, a partir desse questionamento, a empresa pode se direcionar a novas ações com o intuito de melhorar os resultados obtidos na análise preditiva.

**Prescritiva:**
Depois de análisar com calma e cuidado as previsões obtidas anteriormente, podemos agora decidir o que fazer para melhorar os resultados, através da análise prescritiva.
**“O que eu preciso fazer para meus resultados melhorarem?”**, essa resposta é guiada por simulações matemáticas ou até mesmo Inteligência Artificial.
Essa análise é muito utilizada para criação de controles orçamentários, metas de vendas, melhores rotas de entregas, etc.

Em era de Big Data, é imprescídivel que possamos analisar todos os dados com calma e expertise.
Want to Add a Minimalist Touch to Your Web? 
Tags: remix, remixfeatures, webdevelopmenttool, remixbenefits
Published: 2023-12-14 02:08:00


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

If you're looking to add a minimalist touch to your web, use Remix - a full-stack web framework released in October 2021. It is built on the web fetch API and runs brilliantly on Cloudflare Workers. And since Remix uses nested routes, it has a powerful routing system. Using Remix, you can create websites with a fast user experience. 

Also, even if there's some loading happening while you're developing a web in Remix, it doesn't just leave you hanging. It tells you that loading is occurring as you navigate from page to page. Also, these page-to-page transitions can also be made smoother using Remix. 

Issues with loading are resolved since Remix provides fast navigation within the app. It smoothly loads a single page without sacrificing server-side rendering capabilities. If you've been grappling with state management while working in React, say goodbye to this problem. In Remix, there's no need to manage state; all states are in one place! The good news? Errors are displayed in the app. If you integrate this with nested routes, you can pinpoint the exact location of the error. In other words, error handling is built into Remix.

What does Remix do differently? Well, most web apps fetch inside components, leading to request waterfalls, loading errors, and jank. However, Remix loads data in parallel on the server, producing a complete HTML document. It's faster and jank-free. Another reason behind its speed is that it prefetches everything on the page in parallel before the user even clicks a link - data, modules, CSS, and more. Sure, React is fast and helps load data, but does it aid in updating data? No. The good news is Remix excels at this. If you're creating a web application with a substantial amount of data, Remix is the way to go. It also provides necessary data to the server during mutation, eliminating the need for you to wait for indicators to load.
POO or OOP but in French.
Published: 2023-12-11 04:01:38

Object Oriented Programming is a way of coding. I came across this notion starting to code with NodeJS, an object-oriented language.

## This is the way of thinking:

An object can have properties and methods. The properties are the “Be” and the methods are the “Do”.

Take a nurse as an example.

### Properties

You create an object Nurse that has several properties. 

```jsx
var Nurse ={
name: "Lila",
specialty: "Biological analysis",
Age: 30,
}
```

This is called an Object Literal. You use it when you only need one object of this type.

### Constructor

We use a constructor function to create more objects with the same properties. It is like a new “version” of the object.

<aside>
⚠️ To declare a constructor function, we must give it a name starting with a capital.

</aside>

To create the new object, we give the constructor function properties as inputs.

Inside the function, we match the inputs with the properties’ names.

```jsx

function Object(proprety1, proprety2, proprety3){
this.proprety1 = proprety1;
this.proprety2 = proprety2:
this.proprety3 = proprety3;
this.methode = function(){
	//function
	}
}

// in our case

function Nurse(name, specialty, age){
this.name = name;
this.specialty = specialty:
this.age = age;
}

```

How do we initiate the creation of a new object?

```jsx
var Nurse1 = new Nurse("Nelly", "ICU", 32);
```

to access the property we use this syntax:

```jsx
object.property
//in or case
Nurse1.name
```

### Method

If we want our object to do something, we have to attach it to a function. It’s called a method.

It says my object can do this: method.

```jsx
var nurse ={
name: value,
specialty: value,
age: value,
iv: function(){
	put an iv;
	}
}
```

How to call a function?

```jsx
object.method()
// in our case
nurse.iv()
```

How to add a function in a constructor function:

```jsx
function Object(proprety1, proprety2, proprety3){
this.proprety1 = proprety1;
this.proprety2 = proprety2:
this.proprety3 = proprety3;
this.methode = function(){
	//function
	}
}
function Nurse(name, specialty, age){
this.name = name;
this.specialty = specialty:
this.age = age;
this.iv = function(){
	put an iv
	}
}

```
List of over 24,000 .ing TLD domain names
Tags: domains, brands, tld, names
Published: 2023-12-14 01:57:19

🚀 Just dropped Part 2 of our .ING domain exploration! 🌟 Over 24,000 names unveiled - your last chance to snag the perfect short .ING domain is here. 

🔗 Dive in before they're gone! https://if.codes/blog/2023/check-pricing-availability-ing-domains

💬 Found your match? Share your picks and stories with me! 
Twitter: [@ifdotcodes](https://twitter.com/ifdotcodes)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7wbntuyvnehy489le1gd.png)
[macOS] Prefix your current Git branch name to your Git commit message.
Published: 2023-12-14 01:46:03

Automatically prefixing your commit messages with a ticket number is a good practice, especially if you are working with a team or using an issue tracking system. One way to achieve this is by using **Git hooks**. **Git hooks** are scripts that Git executes before or after certain events, such as committing or pushing. Here's a simple example of a Git hook that automatically adds a ticket number to your commit message. This example assumes that your ticket numbers are in the form of, for example, **hotfix/ABC-123**, and you want to use this format in your commit messages.

**Open your terminal.**

Navigate to the root directory of your Git repository.

Create a file named **prepare-commit-msg** in the **.git/hooks/** directory. If it doesn't exist, you can create it. Make sure the file is executable.

```
touch .git/hooks/prepare-commit-msg
chmod +x .git/hooks/prepare-commit-msg
```


To open the **prepare-commit-msg** file using **TextEdit** from the terminal, you can use the open command. Here's the command you can use:

```
open -e .git/hooks/prepare-commit-msg
```


In a text editor, and add the following script:

```
#!/bin/bash

COMMIT_MSG_FILE=$1

# Check if the commit message contains a ticket number
if ! grep -q "^\[[A-Za-z]+/[0-9]+\]" "$COMMIT_MSG_FILE"; then
    # Extract the feature name from the current branch name
    BRANCH_NAME=$(git symbolic-ref --short HEAD)

    # Add the branch name to the beginning of the commit message
    sed -i.bak -e "1s|^|\[$BRANCH_NAME\]  |" "$COMMIT_MSG_FILE"
fi
```

You can check if the prepare-commit-msg file is executable by using the ls command with the -l option, which displays detailed information about files. Navigate to the .git/hooks/ directory and run:

```
ls -l prepare-commit-msg
```

This will show you detailed information about the file, including its permissions. If the file is executable, you should see an "x" in the permission section. Here's an example:

```
-rwxr-xr-x 1 user group 1234 Dec 14 12:34 prepare-commit-msg

```

The resulting commit message should now look like this:

> [feature/header_add_nav_bar] add nav bar.
Quicksort & Mergesort With C
Tags: java, algorithms, programming, coding
Published: 2023-12-14 01:28:34

<code>
#include <stdio.h>

// Function to swap two elements
void swap(int* a, int* b) {
    int temp = *a;
    *a = *b;
    *b = temp;
}

// Function to partition array for quicksort
int partition(int arr[], int low, int high) {
    int pivot = arr[high];
    int i = low - 1;

    for (int j = low; j <= high - 1; j++) {
        if (arr[j] < pivot) {
            i++;
            swap(&arr[i], &arr[j]);
        }
    }

    swap(&arr[i + 1], &arr[high]);
    return i + 1;
}

// Quicksort algorithm
void quicksort(int arr[], int low, int high) {
    if (low < high) {
        int pi = partition(arr, low, high);

        quicksort(arr, low, pi - 1);
        quicksort(arr, pi + 1, high);
    }
}

// Function to merge two subarrays for mergesort
void merge(int arr[], int left, int mid, int right) {
    int n1 = mid - left + 1;
    int n2 = right - mid;

    int leftArr[n1];
    int rightArr[n2];

    for (int i = 0; i < n1; i++) {
        leftArr[i] = arr[left + i];
    }
    for (int j = 0; j < n2; j++) {
        rightArr[j] = arr[mid + 1 + j];
    }

    int i = 0, j = 0, k = left;

    while (i < n1 && j < n2) {
        if (leftArr[i] <= rightArr[j]) {
            arr[k] = leftArr[i];
            i++;
        } else {
            arr[k] = rightArr[j];
            j++;
        }
        k++;
    }

    while (i < n1) {
        arr[k] = leftArr[i];
        i++;
        k++;
    }

    while (j < n2) {
        arr[k] = rightArr[j];
        j++;
        k++;
    }
}

// Mergesort algorithm
void mergesort(int arr[], int left, int right) {
    if (left < right) {
        int mid = (left + right) / 2;

        mergesort(arr, left, mid);
        mergesort(arr, mid + 1, right);

        merge(arr, left, mid, right) ;
    }
}

// Function to print an array
void printArray(int arr[], int size) {
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

int main() {
    int arr1[] = {10, 7, 8, 9, 1, 5};
    int n1 = sizeof(arr1) / sizeof(arr1[0]);

    printf("Original array: ");
    printArray(arr1, n1);

    quicksort(arr1, 0, n1 - 1);
    printf("Array after QuickSort: ");
    printArray(arr1, n1);

    int arr2[] = {10, 7, 8, 9, 1, 5};
    int n2 = sizeof(arr2) / sizeof(arr2[0]);

    printf("Original array: ");
    printArray(arr2, n2);

    mergesort(arr2, 0, n2 - 1);
    printf("Array after MergeSort: ");
    printArray(arr2, n2);

    return 0;
}
</code>
If you build it they will come but only translate it when they arrive
Tags: saas, globalization, webdev, i18n
Published: 2023-12-14 01:18:12

SaaS (Software as a Service) is a model of delivering software applications over the Internet that enables worldwide users to easily subscribe.

Traditionally, companies encounter challenges in developing globalization strategy, they view languages as ancillary to core (English) development, selecting the most suitable languages and determining the return on investment (ROI) proved to be complex tasks.

The new approach is building software with full global support - regardless of UI translation - the software can process and format data properly in all languages. The wide adoption of Unicode (https://unicode.org/) and the easy access to i18n libraries such as ICU4C have made this straightforward.

Generative AI is reshaping the translation industry. Since the launch of ChatGPT, we started re-imagining translation workflow, leveraging the latest LLM models, to embark on user-led translations. Translation takes place only when users using the software in their languages.

https://Instantmt.com - an AI translation solution - offers user-led translation that empowers companies to launch their SaaS products in 29 languages worldwide (including English) on the first day, without incurring any expenses on translations.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/adl4e6za7nm77fovicur.jpeg)
An ecommerce store built with MERN stack, and utilizes third party API's
Tags: ecommerce, mern
Published: 2023-12-27 18:23:51

---
title: An ecommerce store built with MERN stack, and utilizes third party API's
published: true
date: 2023-12-14 00:47:00 UTC
tags: Ecommerce,MERN
canonical_url: https://reactjsexample.com/an-ecommerce-store-built-with-mern-stack-and-utilizes-third-party-apis/
---

# MERN Ecommerce

## Description
 ![An ecommerce store built with MERN stack, and utilizes third party API's](https://reactjsexample.com/content/images/2023/12/Code_2023-12_20-41-39.jpg)

An ecommerce store built with MERN stack, and utilizes third party API’s. This ecommerce store enable three main different flows or implementations:

1. Buyers browse the store categories, products and brands
2. Sellers or Merchants manage their own brand component
3. Admins manage and control the entire store components

- features:
  - Node provides the backend environment for this application
  - Express middleware is used to handle requests, routes
  - Mongoose schemas to model the application data
  - React for displaying UI components
  - Redux to manage application’s state
  - Redux Thunk middleware to handle asynchronous redux actions

## Database Seed

- The seed command will create an admin user in the database
- The email and password are passed with the command as arguments
- Like below command, replace brackets with email and password.
- For more information, see code [here](https://github.com/kaori126/MERN_E-commerce/blob/master/server/utils/seed.js)

```
npm run seed:db [email- ***@****.com] [password- ******] // This is just an example.

```

## Demo

This application is deployed on Vercel Please check it out 😄 [here](https://mern-store-gold.vercel.app).

See admin dashboard [demo](https://mernstore-bucket.s3.us-east-2.amazonaws.com/admin.mp4)

## Install

Some basic Git commands are:

```
$ git clone https://github.com/mohamedsamara/mern-ecommerce.git
$ cd project
$ npm install

```

## Start development

```
$ npm run dev

```

## Simple build for production

```
$ npm run build

```

## Run build for production

```
$ npm start

```

## Languages & tools

- [Node](https://nodejs.org/en/)

- [Express](https://expressjs.com/)

- [Mongoose](https://mongoosejs.com/)

- [React](https://reactjs.org/)

- [Webpack](https://webpack.js.org/)

### Code Formatter

- Add a `.vscode` directory
- Create a file `settings.json` inside `.vscode`
- Install Prettier – Code formatter in VSCode
- Add the following snippet:

```
    {
      "editor.formatOnSave": true,
      "prettier.singleQuote": true,
      "prettier.arrowParens": "avoid",
      "prettier.jsxSingleQuote": true,
      "prettier.trailingComma": "none",
      "javascript.preferences.quoteStyle": "single",
    }

```

## GitHub

[View Github](https://github.com/kaori126/MERN_E-commerce?ref=reactjsexample.com)
🏆 Open Source Heroes - December updates
Tags: opensource, showdev
Published: 2023-12-14 00:45:48

Hello community 👋

A few weeks ago [I presented a platform to you](https://dev.to/markets/open-source-heroes-13fd), a platform to explore 🔍 the open source ecosystem data (rankings per language, per country, trends, statistics, ...). 

This week we deployed 🚀 a couple of interesting new sections in the platform:

**1) Languages page:** A new index 🗂️ page (https://opensource-heroes.com/languages) where you can easily jump to any language that we have data for. It also includes a "Most starred" (Top 10) languages section at the top.

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

**2) Top 5 contributors/projects:** In the detail page of each language, you can now find a couple of new blocks displaying the 🏅 Top 5 contributors and projects of the language. So you can easily check out the most relevant people, organizations and repositories of your favorite languages.

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

Happy exploring!
Metronome and Recorder App using React and Ionic
Tags: record, apps
Published: 2023-12-27 18:23:58

---
title: Metronome and Recorder App using React and Ionic
published: true
date: 2023-12-14 00:45:00 UTC
tags: Record,Apps
canonical_url: https://reactjsexample.com/metronome-and-recorder-app-using-react-and-ionic/
---

# Metronome & Recorder App
 ![Metronome and Recorder App using React and Ionic](https://reactjsexample.com/content/images/2023/12/Code_2023-12_20-40-37.jpg)

A cross-platform mobile app using React and Ionic was made for musicians to help record their music and even help with their timing.

Features:

- Cross-platform support for Android and Web
- Metronome with customizable BPM and sound
- Recorder that can record audio and save the file to the device
- Files tab to play previously recorded files
- Support for both dark and light modes

Screenshots:

 ![Metronome and Recorder App using React and Ionic](https://github.com/The24Kings/music-comp-app/raw/main/public/assets/pictures/Screenshot_4.jpg) ![Metronome and Recorder App using React and Ionic](https://github.com/The24Kings/music-comp-app/raw/main/public/assets/pictures/Screenshot_7.jpg) ![Metronome and Recorder App using React and Ionic](https://github.com/The24Kings/music-comp-app/raw/main/public/assets/pictures/Screenshot_6.jpg) ![Metronome and Recorder App using React and Ionic](https://github.com/The24Kings/music-comp-app/raw/main/public/assets/pictures/Screenshot_3.jpg) ![Metronome and Recorder App using React and Ionic](https://github.com/The24Kings/music-comp-app/raw/main/public/assets/pictures/Screenshot_5.jpg) ![Metronome and Recorder App using React and Ionic](https://github.com/The24Kings/music-comp-app/raw/main/public/assets/pictures/Screenshot_1.jpg) ![Metronome and Recorder App using React and Ionic](https://github.com/The24Kings/music-comp-app/raw/main/public/assets/pictures/Screenshot_2.jpg)

How to Run the App:

- Go to the command line and change directory into the root
- Install node modules if you don’t already have it
- Run ‘ionic build’ and install Vite when it prompts you
- Run ‘ionic cap sync’
- Then you’re ready for either:

Web Version:

- Run ‘ionic serve’

Android Version:

- Install Android Studio
- Run ‘npx cap open android’ in the root
- This will open the android studio project, either plug in your physical phone or set up a virtual one
- Press the green run button once its ready, and it will install!

## GitHub

[View Github](https://github.com/The24Kings/music-comp-app?ref=reactjsexample.com)
Venciendo al Impostor: Cómo este Síndrome Puede Limitar tu Crecimiento en el Desarrollo de Software
Tags: webdev, javascript, programming, developer
Published: 2023-12-14 00:35:36

¡Hola comunidad! Nos encontramos de nuevo para leernos y conversar sobre un tema que seguro ha rondado nuestras mentes en más de una ocasión: **el temido síndrome del impostor**. Este pequeño monstruo, que parece emerger de la nada, nos hace cuestionar nuestras habilidades como desarrolladores. Pero tranquilos, ¡todos hemos estado allí!

Imaginen la escena: frente a la pantalla, código reluciente en mano, y ¡zas! El síndrome del impostor aparece como un relámpago, sembrando dudas. "¿Seré lo suficientemente competente para esto?", nos preguntamos. Pero amigos, desde ya les digo, desde el novato hasta el experto, todos hemos sentido esta sombra en algún momento. Esta escena es más común de lo que pudieran imaginar, así que el primer consejo que puedo dar es: ¡calma!

El peligro de esta situación radica en permitir que este impostor tome el control, ya que corremos el riesgo de frenar nuestro crecimiento profesional. Es como si nos cubriéramos con un manto invisible que oculta nuestras habilidades y logros. Pero, ¿saben qué? No podemos permitir que eso suceda. El desarrollo de software es un viaje constante de aprendizaje, y todos estamos navegando en la misma travesía.

Una verdad incómoda: Si nos dejamos arrastrar por el síndrome del impostor, estamos construyendo nuestras propias barreras contra el éxito. Este enemigo interno puede llevar a una disminución de la autoestima profesional y frenar nuestras ambiciones. Es como si un motor de coche estuviera limitado y no pudiera alcanzar su velocidad máxima.

Cuando nos dejamos atrapar por el síndrome del impostor, perdemos la oportunidad de demostrar al mundo y a nosotros mismos lo que realmente somos capaces de hacer. La resolución de problemas, el aprendizaje continuo y la capacidad de adaptación son las marcas distintivas de un buen desarrollador. Así que, la próxima vez que sientan que ese impostor acecha, recuerden: son más fuertes de lo que creen y están aquí porque merecen estarlo. ¡A codear con confianza y a dejar al impostor fuera de juego! 💻✨

El desarrollo de software es un campo donde la confianza en uno mismo es clave. Al dudar de nuestras habilidades, nos arriesgamos a no aprovechar al máximo nuestro potencial. Imaginen un superhéroe que, en lugar de enfrentarse al villano, se esconde en la sombra. ¡Eso no es lo que queremos! Queremos ser los héroes y heroínas que enfrentan desafíos con valentía y resuelven problemas con destreza.

Así que, la próxima vez que ese impostor susurre en sus oídos, recuerden todas las líneas de código brillantes que han escrito, los problemas resueltos y los proyectos exitosos. No permitan que una sombra momentánea eclipse la brillante luz de sus logros. ¡Adelante, valientes coders, el mundo está esperando sus genialidades! 💻🚀

Déjeme tus comentarios y si te gustó, no olvides compartir este post con tus amigos, compañeros de estudios y colegas.
Power Skills: What's Essential for Tech Success?
Tags: discuss, codenewbie, beginner
Published: 2023-12-14 00:00:00

---
published_at : 2023-12-14 00:00 +0000
---
Professional growth is often linked to specific skills. In the tech industry, what power skill is considered essential for adaptability, and how can cultivating this skill contribute to career advancement?
<br>
Follow the CodeNewbie Org and #codenewbie for more discussions and online camaraderie!
{% embed https://dev.to/codenewbieteam %}