teleren/devto huggingface dataset:
Atributos e Tabelas para Estados
Tags: sql, database, normalization
Published: 2022-03-02 14:07:03

Na medida que os requisitos de um Sistema aumentam, é comum aumentarmos o número de tabelas, atributos e fazermos muitas verificações que tornam difícil aimplementação. Uma sugestão para fazer verificações é usando atrubutos de estado. 

O uso de atributos de estado evita várias verficações de campos nulos. Nesse caso podemos usar os valores **Sim** e **Não**, **Activo** e **Inactivo**, **0** e **1**, entre outros. Caso a tabela tenha muitos estados, é recomendado separar os estados numa outra e referenciar a tabela origem. 

## Onde usar os atributos e tabelas de estado? 
Podemos usar atributos e tabelas de estados para:
- Activar e desactivar funcionalidades;
- Verificar se uma operação foi efectuada;
- Verificar se um item foi modificado ou excluído;
- No caso de formulários com muitos campos, divivir em secções e verificar se já foram preenchidas;
- Muitos outros.

**Exemplo:**Preenchimento de formulário de Candidatura num Sistema de Inscrições  para Vagas de Emprego. 
**Requisitos:** Neste cenário, sabemos que um candidato deve preencher os formulários com os dados pessoais, endereço, formação acadêmicas, experiências profissionais e os documentos requeridos. As candidaturas submetidas, inicialmente têm o estado ‘Pendente’ e depois da selecção tem o estado ‘Aprovada’.
**Sugestão para a Solução:** Podemos dividir o formulário em partes e criar estado para verificar cada formulário submetido e mostrar a opção de submeter a candidatura depois de todos os formulários estiverem preenchidos.

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

**Código SQL**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pp0tk8c8uouracp1a07p.jpg)


**Fases do preenchimento**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/76gmklejw0zulj1m4xsh.jpg)

**Formulário de Candidatura**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l9gscgxpxlp1qm40ltwe.jpg)
01 - Cloud Solution Architect Role - What is expected?
Published: 2022-03-02 14:00:14

What is expected in this role ?

I have spent around five years as a cloud solution architect in Microsoft. In this series I will create short videos to explain the roles I've been playing with large enterprise customers. I will explain what I understand, beyond that, there could be many more different other things which this role may demand which I'm neither aware of nor authorized to talk about. You might find a completely different perspective from another Cloud Solution Architect. 


{% youtube qc7-O0Q7DrM %}
Top 10 Mobile App Development Companies in Melbourne 2022
Published: 2022-03-02 13:58:39

[Traditional businesses](https://www.ateamsoftsolutions.com/top-10-mobile-app-development-companies-in-melbourne-2022/) must be aware that, as mobility continues to transform how industries work, they are no longer only competing with one other but also with mobile-first startups that captivate the attention of consumers.  Statista`s annual number of global mobile app downloads shows that the worldwide smartphone market has grown by 50 percent since 2016.  With so much potential growth, major corporations and app development businesses are investing their time, money, and effort in learning about the shifting trends of the digital economy and looking for reliable app developers Melbourne.  As a result, a significant number of businesses, including those in Melbourne, are turning to mobile applications to help them grow. 

 The most difficult challenge that all of these companies encounter is finding a reliable mobile app development partner in Melbourne.  [aTeam](https://www.ateamsoftsolutions.com/) has compiled a list of the best mobile app development companies in Melbourne to help you find a reliable, competent, and cost-effective app developer.  The top app developers Melbourne featured below are well-known in the worldwide app development arena for delivering high-performing iPhone and Android applications. 
.
Top 10 Mobile App Development Companies in Brisbane 2022
Published: 2022-03-02 13:55:44

The [mobile app development](https://www.ateamsoftsolutions.com/top-10-mobile-app-development-companies-in-brisbane-2022/) market is advancing at an astonishing speed.  To compete and live in this digital era, you must get familiar with the new trends and build a mobile app to scale your business.  With this expansion comes a plethora of options for mobile app developers in Brisbane and engineers to supercharge their apps and provide their consumers with top-tier experiences.  As more consumers choose to purchase online, many businesses are moving towards digital platforms and collaborating with app developers Brisbane to improve the shopping experience. 

 In contrast to e-commerce, mobile commerce (or m-commerce) includes online purchases made using a smartphone app rather than web pages or websites.  The mobile commerce industry is estimated to be valued at over $22 billion by the end of 2022, owing to a boost in engagement, conversion rates, as well as revenue growth for many B2B and B2C organizations after developing a mobile app.  The key cause for this shortcoming is the failure to detect and integrate the most current mobile app technological developments.  And as you know, there are a plethora of mobile app developers in Brisbane, making it all the more difficult to select the right mobile app development partner to help you in developing a powerful product for your company. 

 To help you make the best decision possible, we have compiled a list of the top 10 mobile app development companies in Brisbane.  Top mobile app development companies in Brisbane Here`s a brief rundown of the top 10 app developers Brisbane! Acanyon Digital – Mobile App Development company Groovy Web is one of the leading Web and Mobile App Development Companies in Brisbane.  For over 6 years, Groovy has been providing cutting-edge digital solutions on time and under budget.  Groovy has managed over 250 delighted and fulfilled clients and worked on over 500 projects, with the percentage of retention increasing year after year. 

 [Mobile App Development](https://www.ateamsoftsolutions.com/top-10-mobile-app-development-companies-in-brisbane-2022/) Appello is an Australian full-service software solutions firm that offers economical web & mobile design solutions to corporations and startups. They are award-winning app developers Brisbane who create powerful applications and software solutions.  Appello`s full-stack engineers, frontend developers` team, UX/UI designers, and project managers collaborate to advance complex projects.  The Appello team provides versatile non-contractual contracts and is a fantastic alternative among numerous mobile app developers in Brisbane. 


.
Simplificar queries com Views SQL
Tags: views, sql, query, python
Published: 2022-03-02 13:55:40

Numa aplicação é indispensável ter as operações que pegam os dados da base de dados. As operações que retornam registos da base de dados são: A visualização dos detalhes,  listagem e pesquisa de um registo. Normalmente, estas três operações  acessam a mesma consulta. 

Na medida que a base de dados cresce, as consultas fiacam mais complexas e para cada operação, teremos que reescrever as mesmas consultas.

## Como resolver?
Para simplficar o acesso a esses dados, podemos criar uma _VIEW SQL_ ou _tabela virtual_ que vai armazenar as consultas complexas (que envolvem muitas junções) e trazer os dados que podem ser retornados na aplicação. Este passo pode ajudar quando a consulta fica mais complexa, visto que já temos a mesma armazenada.

A vantagem desta abordagem é que serão feitos menos leituras nas tabelas reais, evitando consultas  lentas.

**Exemplo:** Uma empresa possui funcionários, cada funconário possui os dados pessoais contactos e cargo. Neste exemplo, deseja-se obter todos os dados dos funcionários nas operações. 

Para este exemplo temos 2 soluções:
- A primeira solução seria fazer a junção de das tabelas em cada operação. 
- A segunda seria criar uma VIEW e acessar em cada operação

Código da aplicação disponível em: https://github.com/ortizdavid/teste-viewsql


**Modelo Lógico**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hg0eau7cvcazbsn52nuv.jpg)

**Código SQL**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e62nz5f9nh8yn3471kpq.jpg)

**Script em Python 1**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q4qo4sskorkz5t15ware.jpg)

**Script em Python 2**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hssgbudjq38xwu3rvh5h.jpg)

**Resultados**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1t1w7brf0eeecf9isp95.jpg)
Tutorial to Build Zoom Clone
Tags: flutter, firebase, zoom
Published: 2022-03-02 13:53:32

Build Zoom Clone with Flutter, Firebase & Jitsi Meet!

Link: https://youtu.be/sMA1dKbv33Y

1. Google Sign In
2. Create New Meeting
3. Join Meeting
4. Mute/Unmute Audio
5. Mute/Unmute Video
6. Change Display Name while Joining
7. Raise Hand
8. Start Screen Sharing
9. Mute Everyone
10. Start Live Stream
11. Screen Share
12. Chat
13. Switch Front/Rear Camera
14. Picture in Picture
15. Enter Tile View
16. Disable Camera
17. End Call
18. See Your Meeting History
19. Log out
What’s New in Angular 13? | Angular 11 vs 12 vs 13
Published: 2022-03-02 13:51:33

I`m sure you`re aware that angular rolled out their new version.  Angular enables users to develop large applications in a maintainable manner.  Angular has released several versions over the past few years with every release it has seen significant improvements, making it a popular choice amongst developers today.  The view engine is no longer available with the angular 13 updates and the framework is now 100% IVY. 

 Before the changes in [angular version 13](https://www.ateamsoftsolutions.com/whats-new-in-angular-13-angular-11-vs-12-vs-13/) dynamically creating competence required a lot of boilerplate code.  The new API removes the need for a competent factory resolver being injected into the constructor.  The angular package format APF has been streamlined and modernized to better serve developers.  To streamline the [APF10 version 13](https://www.ateamsoftsolutions.com/whats-new-in-angular-13-angular-11-vs-12-vs-13/) the team remote older output formats including view engine specific metadata. 

 As a result of these changes, library developers can expect leaner package output and faster execution.  Removing IE 11 support allows angular to leverage modern browser features such as CSS variables and web animations via native web API`s.  What`s more, the apps will be smaller and load faster because we can remove IE-specific polyfills and code paths.  Developers will benefit from improved APIs and build infrastructure while application users will benefit from faster loading and an improved user experience. 

 Angela Version 13 also features some helpful updates and important changes.  First up, rxjs 7. 4 is the default for apps created with NG new.  Existing apps using Rx Js Version six will have to manually update using the NPM install rxjs at 7. 

4 command.  These recent updates in [angular 13](https://www.ateamsoftsolutions.com/whats-new-in-angular-13-angular-11-vs-12-vs-13/) have undoubtedly resulted in major improvements by introducing unusual modifications such as:  Angular now supports the use of persistent build cache by default for new version 13 projects.  The valuable feedback from RFC persistent build cache by default led to the stooling update that results in up to 68% improvement in build speed and more economic options. 
.
Normalização do Tipo de Identificação
Tags: database, sql, modeling
Published: 2022-03-02 13:48:46

Nas bases de dados é comum usarmos o BI(para Angola) ou RG/CPF (para o Brasil) como o principal atributo único , contando apenas com as pessoas nativas. 

Normalmente é o campo mais usado para consultas nos Sistemas de Informação, pelo facto de ser único para cada pessoa. 

Devemos levar em conta que uma pessoa também pode ser identificado pelo Passaporte, Cartão de Residente, Bilhete de Identidade Estrangeiro, Bilhete Militar e outros.

## Problemas com essa abordagem
- Para cada pessoa estrageira, teriamos que adicionar um atributo para o tipo de identificação. Caso alguém não tenha o documento, o campo será nulo;
- Na medida que o sistema cresce, será mais difícil modificar todas as funcionalidades que dependem do Bilhete de Identidade.
- Caso entra um pessoa estrageira, teremos que modificar cada consulta no Sistema.

## Sugestão para a solução
 Uma das soluções é criar uma tabela para os tipos de identificação e na tabela de pessoas referenciamos o tipo, seguido do atributo que representa o número de identificação. 
Caso surjam mais documentos de identificação, não vão impedir o crescimento do sistema, porque para cada consulta será usado o número de identificação, independentemente do tipo.

**Obs:** Na implementação do Sistema, podemos validar cada entrada, criando uma expressão regular para cada tipo de documento de identificação.

**Exemplo:** Sistema de Inscrições para a _**Universidade XPTO**_. Os candidatos podem ser nativos ou estrangeiros.
Neste exemplo, vamos nos focar num trecho da base de dados,  usando os 3 modelos(conceitual, lógico e físico). 

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

**Modelo Lógico**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z1yppci6j935adjg09e5.jpg)

**Código SQL**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tatxsned87ist87ne6rm.jpg)

**Queries no Banco**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tuz48y3ub99ls0s949mq.jpg)
How to open react-select menu on click of a button?
Tags: stackoverflow, react, frontend, casestudy
Published: 2022-03-02 13:46:55

My answer to the question "How to open react-select menu on click of a button?" on stackoverflow:
https://stackoverflow.com/questions/60257724/how-to-open-react-select-menu-pragmatically

You can try and use storing a ref to the component, calling a `.focus()` on it. And pass to the React Select prop `openMenuOnFocus`.

Short essence: 
![short essence](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7kv4l8l09q7psqrurshw.png)


Sample on codesandbox: https://codesandbox.io/s/react-select-hooks-forked-qol5m

![example](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/buflex4yi72njj161zfq.png)
Laravel 9 Flash Message Example Tutorial
Tags: laravel
Published: 2022-03-02 13:43:03

This article is focused on laravel 9 flash message example. you will learn how to implement flash message in laravel 9. Here you will learn laravel 9 flash message from the controller. This tutorial will give you a simple example of laravel 9 flash message notification.

we will define various types of flash message notifications like alert-success, alert danger, alert info, alert warning messages in bootstrap laravel 9 projects. When you have a success task on the controller method then you can use a success flash message, if you have any error task then you can use error flash message.

Flash messages are required in laravel 9 application because that way we can give alter with what progress is complete, error, warning, etc. In this tutorial, I added several ways to give a flash message like redirect with a success message, redirect with an error message, redirect with a warning message, and redirect with info message. In this example, we use a bootstrap flash alert layout that way it becomes a good layout.

So, you have to just follow the basic three-step to integrate flash messages in your laravel 9 application. So let's follow the below step:

[Laravel 9 Flash Message Example Tutorial](https://www.codecheef.org/article/laravel-9-flash-message-example-tutorial)
Limitar a Inserção de Registos
Tags: sql, trigger, insert
Published: 2022-03-02 13:37:21

Nas bases de dados é comum haver limite de registos para certas tabelas. Existem valores fixos que raramente são alterados.
Sabemos que existem apenas 7 dias da semana, 12 meses do ano, um nº lmitado de províncias ou estados de um país. Existem várias formas de limtar o número

**Como Limitar o número de registos?**
Uma das formas de limitar o número de registos é a partir da valiadação pela aplicação, verficando o número de registos antes da inserção. 
A outra forma é limitar a partir da base de dados, criando um trigger que controla a inserção de registos na tabela.


**Exemplo**: Um Departamento deve ter apenas um Director e na empresa apenas existem 4 departamentos: Tecnologia, Recursos Humanos, Finanças e Marketing.
Neste exemplo, vamos criar um trigger que mantém apenas 4 departamentos

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

**Modelo Lógico**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y7abm6q2xbf8na0vvao0.jpg)


**Código SQL**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1w81rpvkywuasufiazd1.jpg)

**Trigger para Limitar a Inserção**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j6wpqcoypng2voewmq2h.jpg)

**Queries no Banco**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hywlyt5tzwwbwtmv7knp.jpg)
Histórico de Operações
Tags: historico, servidor, software, history
Published: 2022-03-02 13:31:09

É importante gravar o histórico das operações mais importantes que efectuadas pelos usuários. O rastreio dessas operações pode servir  para fins de auditoria do Sistema. Com essa abordagem é possível responsabilizar, caso efectuem operações críticas no Sistema.

Existem várias formas de gravar o histórico de operações no sistema, tais como os Triggers da base de dados, logs ou ferramentas de observabilidade. Por tanto, neste exemplo vamos destacar a maneira mais simples.


## Como Criar um Histórico de Operações?

A forma mais simples é através criação de uma tabela de histórico e para cada operação executada pelos usuários, o sistema guarada o usuário responsável, a operação e a descrição da operação efectuada.

No caso aplicações web, também podemos gravar  dados como Endereço IP, Navegador, Sistema Operativo usado a URL corrente e muitos outros dados. Normalmente estes dados são obtidos através linguagem de implementação.

**Exemplo**: Criação de um Histórico de
 um Sistema de Controle de Itens.
Disponível em: https://github.com/ortizdavid/teste-historico


**Interação entre o usuário e o Sistema**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zdnsgexyv5t0qip2yhj0.jpg)


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

**Modelo Lógico**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p94fd7wri1c64m7mzkxb.jpg)

**Registo de Itens**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ny7yrhevu9y2eywyt9ke.jpg)

**Listagem de Itens**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fvwnm3vxx520kf9anr9x.jpg)

**Exclusão de Itens**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k8kxqzeuxi667gmgo8fx.jpg)

**Histórico de Operações**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kkdl2edun0qqp0xj2zge.jpg)

**Detalhes do Histórico**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zx8i88k2b77xmp92wx67.jpg)
Laravel 9 Queue Beginner to Advanced Example Tutorial
Tags: laravel
Published: 2022-03-02 13:24:37

Hi Dev,

This tutorial shows you laravel 9 send email using queue. step by step explain how to send mail using queue in laravel 9. we will help you to give an example of laravel 9 send mail using queue. I would like to show you laravel 9 send mail in queue. You just need to some steps to do laravel 9 send an email with a queue.

Sometimes, you see some processes take time to load like email send, payment gateway, etc. When you send an email for verification or send an invoice then it loads time to send mail because it is services. If you don't want to wait for the user to send an email or other process on loading server-side process then you can use a queue. because it's very fast and visitors will happy to see loading time.

In this example, we will create one mail class and create a job class. you can send test mail using a queue. just follow the below step and make it done this example:

[Laravel 9 Queue Beginner to Advanced Example Tutorial](https://www.codecheef.org/article/laravel-9-queue-begineer-to-advanced-example-tutorial)
Truly Understanding React {TUR} - Ep4
Tags: javascript, react, tutorial, career
Published: 2022-03-02 13:23:09

**Adrain from JavaScript Mastery** sent a mail which I should share with us too, incase you may have HAD similar question in mind to be answered; if so, don't worry, it may have been answered here.

> **Hello Paul,**

> One day, while going through your lovely comments on the YouTube videos, one question stood out:

> “_Could you give me one reason to use React over plain HTML & JS besides its speed and performance?_”

>_ ... some words you would not want to read ..._

> **React improves code management and the ease of development. Moreover, plain projects start with UI on the server, while in React, everything is dynamically rendered on a single HTML page. React’s main feature is updating UI through state & managing the data with JS variables — and not in DOM, making it much more performant for large-scale projects. 🙃**

> _I hope this will help you in your future development journey!_
🔴 Chat App using React, Node.js and Socket.io
Tags: react, node, javascript, webdev
Published: 2022-03-02 12:57:35

## You can get the project from the link proivided in the description of the video.

### Technologies Used :
+ React
+ Styled Components
+ Node.js
+ MongoDB
+ Express
+ Sockets

### Libraries and Assets Used :
+ Socket.io
+ Styled Components
+ Express
+ Mongoose
+ React Router Dom
+ React Toastify

## To learn how to create this template watch the complete video. You can get the template for free from the link provided in the description of the video.

{% youtube otaQKODEUFs %}

## Please do like the video and subscribe to the channel. It helps and motivates me to create more content like this.

## If there are any room for improvements please let me know. You can also fork the repository and give me a merge request if you can implement something more.
MDN has changed its design. What do you think?
Tags: webdev, discuss, mdn, mozilla
Published: 2022-03-02 12:37:20

 What your feeling about **the new design** of **MDN** ?

> https://developer.mozilla.org

![Preview of the new design of MDN](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uayxhhkxnv78cr9ilok0.png)

__

Other links on this change: 

[A new year, a new MDN](https://hacks.mozilla.org/2022/03/a-new-year-a-new-mdn/)