Como invocar funções dinamicas em JavaScript

Por: Tulio Faria |

Thumbnail

Em programação, blocos de código que executam instruções específicas são chamadas de funções e, no Javascript, são conhecidas como métodos. Agora, imagine o seguinte cenário: como desenvolvedor, você não conhece o nome do método que quer chamar mas…

read more >
Classificação de imagens com Azure

Por: Tulio Faria |

Thumbnail

Na dica de hoje, vamos continuar falando sobre classificação de imagens de forma automática, mas será uma outra abordagem, a de utilizar um serviço de visão computacional para reconhecer e classificar essa imagem. Vamos utilizar a API Azure Computer…

read more >
Normalizar-email

Por: |

Thumbnail

Hoje eu quero comentar um detalhe de implementação de e-mail muito interessante e como podemos contornar essa característica que temos em alguns endereços de e-mail. Uma coisa que muita gente acredita é que nossos e-mails somente funcionam dessa…

read more >
Como criar e reutilizar seus módulos no NodeJS com Git

Por: Tulio Faria |

Thumbnail

Hoje quero mostrar um recurso que nós temos na ferramenta NPM e que poucas pessoas sabem que existem. Com ela, podemos criar nossos próprios módulos sem precisar registrar no repositório do NPM. Uma coisa interessante do yarn e NPM é que podemos…

read more >
Multer upload de imagens com nodejs e express

Por: |

Thumbnail

Hoje vou mostrar uma dica rápida de como podemos fazer upload no NodeJS utilizando o Express. Para isso vamos utilizar o Multer. A primeira coisa que vamos fazer é o seguinte: Agora, com o Visual Studio Code aberto, vamos criar um arquivo novo index…

read more >
Reconhecimento de nudez com js

Por: Tulio Faria |

Thumbnail

Hoje quero complementar aquela dica passada sobre reconhecimento facial. Outra atividade que fazemos bastante quando permitimos que um usuário envie uma foto é checar por nudez. Isso também é conhecido como feature detection. O mais comum é checar o…

read more >
Reconhecimento facial com JS

Por: |

Thumbnail

Hoje vamos fazer um hands-on em uma biblioteca que eu achei muito interessante chamada TrackingJS. Ela nos ajuda a trabalhar com visão computacional. Visão computacional é uma forma que temos de processar imagens para extrair alguma coisa delas…

read more >
code fights - Metro Card

Por: Tulio Faria |

Thumbnail

Hoje vamos resolver mais um problema que está disponível no Code Fights. Esse problema é chamado de metro card. Pode parecer simples, mas tem algumas coisas bastante interessantes de ter na cabeça. O que é o problema do metro card? Nós temos uma…

read more >
Hands-on - Three.JS

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vamos falar um pouco sobre Three.JS, que é uma biblioteca muito interessante para conseguirmos fazer 3d no browser, melhor dizendo, ele faz essa compatibilidade para renderizar no browser com WebGL ou canvas. Para testar isso, vamos fazer um…

read more >
Resolvendo Expressão Aritmética do CodeFights

Por: Tulio Faria |

Thumbnail

Hoje vamos resolver um problema disponível no Code Fights, conhecido como Expressão aritmética. É bastante simples, basicamente temos um número A, B e C e temos que descobrir se existe um operador que faça  A#B = C ser verdadeira, temos algumas…

read more >
Capturando áudio do microfone pelo Navegador

Por: Tulio Faria |

Thumbnail

Hoje eu quero mostrar como podemos capturar um áudio do microfone pelo navegador. Da onde surgiu essa ideia? Nós construímos um chat em tempo real no Curso Completo de Socket.io, que faz parte do Fullstack Master. Nele construímos um chat semelhante…

read more >
Preview de imagens antes do upload

Por: Tulio Faria |

Thumbnail

Hoje vamos fazer o preview da imagem que está sendo selecionada para fazer upload, isso é bastante interessante de se fazer quando o usuário está selecionando uma foto. Vamos criar inicialmente um html, em seguida criar um input type do tipo file e…

read more >
Entenda o que é Patternite

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje eu gostaria de falar sobre um item que é bastante impeditivo quando as pessoas que já tem experiência tentam vir para o JavaScript. Eu chamava isso de Patternite, isso nada mais é que a vontade de aplicar Pattern em todos os lugares. O que é um…

read more >
Pegadinha #1 de entrevistas em JavaScript

Por: |

Thumbnail

Hoje quero comentar uma questão muito comum em entrevistas de JavaScript. Qual é a saída desse código? Detalhe que estamos utilizando um setTimeOut com um zero, mas poderia ser qualquer valor. O primeiro detalhe é que percebemos que o out saiu…

read more >
Mono ou multi thread - POO para JS

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vou continuar falando um pouco mais sobre como podemos fazer a transição de uma linguagem orientada-objeto, como PHP ou Java, para JavaScript cada vez mais funcional. Mais especificamente vamos falar sobre “processamento concorrente”, entre…

read more >
Pare de pensar em classes! Série - POO para JS

Por: Tulio Faria |

Thumbnail

Nesta nova série do DevPleno, mostro como podemos passar de programação orientada-objetos para JavaScript mais funcional. A primeira coisa (que é muito importante) é tentar parar de pensar estruturado.Se você quer mudar de programação orientada…

read more >
Criando um teclado com WebAudioAPI

Por: Tulio Faria |

Thumbnail

Hoje quero continuar falando sobre WebAudioAPI. Vamos um pouco além do que já fizemos anteriormente. No nosso arquivo HTML, teremos dois scripts com função para ler qual tecla no teclado estamos apertando  e outra para quando soltarmos a tecla: A…

read more >
FS-Watch - Checando mudanças em um arquivo-diretório

Por: Tulio Faria |

Thumbnail

Hoje eu quero mostrar duas funcionalidades que nós temos no FS padrão no Node e que podem ajudar bastante em alguns tipos de situações, como por exemplo checar se algum arquivo de log foi gerado em um diretório ou, às vezes, um arquivo de exportação…

read more >
Grandes quantidades de dados com menos recursos

Por: Tulio Faria |

Thumbnail

A dica de hoje é um ponto bastante importante para performance em NodeJS. Eu já comentei um pouquinho sobre esse assunto, mas vou reforçar esse cuidado que a gente pode ter aqui para poupar memória quando estamos processando grandes quantidades de…

read more >
WebAudioAPI - Gerando um som no browser

Por: Tulio Faria |

Thumbnail

Hoje eu quero falar um pouco sobre WebAudioAPI e como podemos gerar sons dinamicamente no browser. Vamos começar fazendo uma função que toca um som e depois vamos fazer uma variação do formato de onda. Todo som que eu quiser reproduzir aqui eu…

read more >
Javascript - ES6 Default Parameters

Por: Tulio Faria |

Thumbnail

Hoje vou falar um pouquinho de JavaScript, mais especificamente sobre como podemos fazer o parâmetro padrão para uma função e as alternativas que a gente tem atualmente com ES6 para esse tipo de atividade. O que é um parâmetro padrão? Vamos supor que…

read more >
ES7 Array Includes

Por: Tulio Faria |

Thumbnail

Na dica de hoje, quero falar um pouco sobre o ES7 e uma funcionalidade que foi adicionada ao vetor. Primeiramente vou mostrar como fazemos comumente em ES6 e ES5, seguido de como podemos começar a fazer no ES7 citando sua vantagem. Vou criar um vetor…

read more >
GH-Pages e como publicar seu site no Github

Por: Tulio Faria |

Thumbnail

Hoje quero mostrar para vocês como a gente pode postar o nosso site no GitHub utilizando o GH-Pages, sem precisar trocar ou fazer qualquer trâmite com o Git, tudo isso de uma maneira bastante fácil. Além disso, integrar isso em um WorkFlow ou em um…

read more >
Navigator Geolocation API - Sabendo a localização do usuário

Por: Tulio Faria |

Thumbnail

Hoje quero dar uma dica para vocês sobre geolocalização no navegador. É uma API que está cada vez mais disponível nos navegadores. O interessante é que conseguimos fazer aplicações WEB que tenham esse senso de localização. Alguns dos métodos que…

read more >
Dicas utilizando o Split em Strings

Por: Tulio Faria |

Thumbnail

Na dica de hoje quero mostrar alguns ‘macetes’ que podemos fazer com o Split, uma função de uma String em JavaScript. Primeiramente o que é Split? Ele divide uma String em partes, por exemplo: Com isso, criamos um vetor com o nome e o sobrenome. O…

read more >
Promise Race - Qual promise resolve/rejeita primeiro

Por: Tulio Faria |

Thumbnail

Hoje quero mostrar uma funcionalidade que chamada Promise.race. Ela vai receber uma lista de promises no JavaScript e ele vai retornar apenas uma dessas promise: a que rejeitar ou resolver primeiro. Vamos criar uma função que é uma promise: Ao rodar…

read more >
Gerando HTML estáticos a partir de templates – EJS

Por: Tulio Faria |

Thumbnail

Hoje quero mostrar como podemos utilizar os Templates Engines, que já temos no Express como EJS, PUG, etc, para gerar arquivos HTML estáticos. Com esse processo, conseguimos fazer um gerador de site estático tranquilamente. Obviamente já existem…

read more >
Como testar domínios localmente

Por: Tulio Faria |

Thumbnail

Hoje quero dar uma dica bem rapidinha de como você pode testar o seu site local com domínios válidos para sua máquina. Com isso você consegue, por exemplo, fazer um domínio que você ainda não publicou ou registrou funcionar somente na sua máquina…

read more >
Dica: Debug NodeJS com Chrome DevTools

Por: Tulio Faria |

Thumbnail

A dica de hoje é sobre como podemos fazer o debug dos nossos scripts em Node (de um script que fica rodando direto como o express e de um script simples) utilizando o chrome. Eu tenho em minha máquina um servidor em express e no meu shell eu vou…

read more >
Servidor JSON simples em PHP (parte 1)

Por: Tulio Faria |

Thumbnail

Hoje quero mostrar para vocês como criar um servidor JSON utilizando o PHP. Mas por que PHP e não JavaScript? Porque ainda é uma linguagem que tem hospedagem muito fácil de achar até mesmo gratuitamente. Se você já tiver um WordPress ou um site que…

read more >
Entenda sobre CORS - Cross Origin Resource Sharing

Por: Tulio Faria |

Thumbnail

Hoje vou falar sobre um assunto que é bastante interessante: CORS (ou Cross Origin Resourse Sharing). O que isso quer dizer? É como dois servidores ou dois domínios diferentes poderiam compartilhar um recurso. Imagine o seguinte: nós temos o site do…

read more >
Módulo MS - Convertendo timestamps

Por: Tulio Faria |

Thumbnail

O hands-on de hoje é bem curto, apenas para mostrar um módulo que achei bastante interessante e funciona tanto para Node quanto para Browser. Esse módulo se chama MS e faz a conversão de qualquer formato para milissegundo e vice-versa. Primeiramente…

read more >
Como encadear promises

Por: Tulio Faria |

Thumbnail

Na dica de hoje, vamos continuar falando sobre promises. Vou mostrar um detalhe na promise que é bastante interessante: como podemos encadear promises, ou seja, vincular uma promise à outra. Para poder fazer isso funcionar, vamos começar importando…

read more >
Busca Binária

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vamos falar um pouco mais sobre algoritmos, que são as bases da computação. Especificamente sobre um tipo de busca que eu já utilizei em um projeto e nunca imaginei que iria utilizar, a busca binária. Os algoritmos de busca inicialmente parecem…

read more >
Coisas ruins normais

Por: Tulio Faria |

Thumbnail

Essa dica de carreira é bem rápida, mas muito importante. Uma coisa que eu vejo acontecer com frequência é o fato das pessoas acharem que certas coisas ruins são normais. Por exemplo, vamos supor que você vá colocar o seu site ou uma atualização do…

read more >
Dotenv e variáveis de ambiente no NodeJS

Por: Tulio Faria |

Thumbnail

Hoje eu tenho duas dicas, como podemos configurar uma aplicação sem precisar alterar o código fonte. Essa é uma boa prática, apesar de muita gente ainda não usar, então quero reforçar o conceito de como podemos fazer isso. A ideia é que o sistema…

read more >
Morgan - Gerando log das requisições HTTP

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O hands-on de hoje é sobre o Morgan, que é uma forma de logar ou mostrar quais requisições estão chegando em nosso servidor HTTP, seja ele feito no Express ou em Node puro utilizando o módulo HTTP. A primeira coisa que temos que fazer é adicionar as…

read more >
3 Padrões para Iniciar com Expressões Regulares (RegExp)

Por: Tulio Faria |

Thumbnail

Hoje venho trazer três padrões de expressões regulares que você pode utilizar para checar se uma string parece com algo. O que é expressão regular? É uma forma que temos de tentar achar um padrão dentro de um texto. Agora vou mostrar como funciona…

read more >
Estruturas de Dados - Pilhas

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vamos falar um pouco sobre uma estrutura de dados que é muito comum em computação, principalmente em sua base, a Pilha. O primeiro conceito que temos que saber sobre Pilha é que ela segue o conceito de LIFO (Last In First Out), então o último…

read more >
[SEGREDO] Muitos registros do MySQL no NodeJS

Por: Tulio Faria |

Thumbnail

Hoje quero contar um segredo para você: como utilizar o driver padrão do MySQL no Node para lidar com grandes quantidades de dados. A primeira coisa que vamos fazer é instalar o driver padrão: Tudo que formos fazer em Node, e envolve grandes…

read more >
Mockaroo - Gerando SQL - CSV de testes

Por: |

Thumbnail

Essa dica é bem curtinha, porém muito útil: como podemos gerar um banco de dados de teste para uma aplicação. A ferramenta que vamos utilizar se chama Mockaroo, que consegue gerar dados falsos para injetar em uma aplicação. O interessante dessa…

read more >
Hands-on: Request-promise

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Este hands-on vai ser complementar a outro módulo que eu já mostrei por aqui, o Request. O módulo de hoje é o Request-Promise, que é basicamente o Resquest ‘Promisificado’, então ele retorna uma Promise e assim fica muito mais fácil de fazer…

read more >
3 dicas para começar a empreender na área de software

Por: Tulio Faria |

Thumbnail

Hoje quero dar três dicas para você que está começando a empreender na área de software. Vou aproveitar uma dúvida e comentário do João Henrique, em um vídeo nosso, dizendo que ele está começando na área, gosta de programar, está começando a…

read more >
Request - Requisições HTTP de forma rápida e simples

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O Request é um pacote que permite que façamos requisições HTTP. Uma coisa interessante sobre ele é que é uma ferramenta muito simples, conseguimos fazer requisições em algum ambiente ou servidor HTTP de uma forma rápida. Primeiramente vamos instalar…

read more >
Rimraf - Remova diretórios inteiros mesmo que eles não estejam vazios

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Durante a semana fizemos diversos procedimentos em lot, e uma das coisas que nós fizemos foi apagar um diretório de maneira recursiva (pegar o diretório completo e apagar). Seria mais ou menos o seguinte: tenho um diretório no VS Code e dentro desse…

read more >
Yarn (uma alternativa ao gerenciador de pacotes/dependências NPM)

Por: Tulio Faria |

Thumbnail

O ‘Yarn’ é uma maneira que temos de agilizar a instalação de algumas dependências. É uma alternativa ao NPM, um pouco mais rápido. A primeira coisa que temos que fazer é instalar: O Yarn usa o mesmo package.json que já temos no projeto em JavaScript…

read more >
Falsy e Truthy Values - Valores considerados verdadeiro e falso em JS

Por: Tulio Faria |

Thumbnail

Hoje eu gostaria de falar sobre um assunto que surgiu nos comentários do vídeo sobre short-circuit e valores padrão. Eu não comentei sobre que valores são convertidos para verdadeiro ou falso porque, na verdade, eu não sabia que eram chamados de…

read more >
Short-circuit e valores padrão

Por: Tulio Faria |

Thumbnail

Essa dica pode ser utilizada tanto em JavaScript quanto em outras linguagens de programação, apenas com um pouco de adaptação. Vamos falar primeiramente sobre o short-circuit. Imagine que temos uma constante que se chama debug, que eu posso ligar e…

read more >
ShellJS - Crie ferramentas multiplataformas baseadas no Shell do Linux

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste hands-on,  vou falar mais especificamente sobre o ShellJS, uma implementação do Shell do linux em JavaScript. Qual a vantagem do ShellJS? A grande vantagem é que ele é multiplataforma, então podemos criar nossos códigos independente da…

read more >
Algoritmos: XOR Swap

Por: Tulio Faria |

Thumbnail

A dica de hoje é sobre o operador XOR, que eu achei bem interessante. Estava estudando outra coisa e apareceu essa informação, então resolvi checar e realmente faz muito sentido. Imagine que temos duas variáveis: Eu quero simplesmente colocar A em B…

read more >
Fake API - Como testar seus projetos front-end

Por: Tulio Faria |

Thumbnail

Hoje eu trago uma dica que eu utilizo bastante com a minha equipe que é quando temos ainda uma fonte de dados para fornecer para um front-end, por exemplo, quando estamos construindo um SPA (geralmente essa aplicação precisa consumir dados) e quando…

read more >
Arrow Functions - Construindo funções anônimas de forma mais simplificada

Por: Tulio Faria |

Thumbnail

As Arrow Functions são uma maneira mais simples ou menor de construir funções anônimas. foi uma novidade no ES6, e hoje todo mundo já está utilizando bastante. Então, no modo anterior, tínhamos: Por que ela se chama Arrow Function? Porque a…

read more >
High-order Function Filter

Por: Tulio Faria |

Thumbnail

Hoje vamos de continuar falando sobre as high-order functions que podemos aplicar em um vetor em JavaScript. Nós já tínhamos feito algumas high-order functions anteriormente, nas quais mostrei o Map e o Reduce, nesse exemplo, vou mostrar o FIlter…

read more >
High-order Function Find

Por: Tulio Faria |

Thumbnail

Já falamos sobre map, reduce e filter, hoje vou mostrar uma high-order function bem parecida chamada de find. Vamos aproveitar o exemplo do reduce: Perceba que pedimos o produto com o id 1, mandamos procurar com o find no carrinho e buscamos esse ID…

read more >
Composição de componentes em ReactJS

Por: Tulio Faria |

Thumbnail

A dica de hoje é sobre o ReactJS, mais especificamente sobre como podemos criar composição de componentes em ReactJS de uma forma um pouco diferente, como podemos utilizar algumas áreas de um componente para ejetar outros componentes por exemplo. Na…

read more >
Construindo um App gerenciador de séries com ReactJS

Por: Tulio Faria |

Thumbnail

Nesta nova série, vamos construir um aplicativo na prática, mais especificamente um gerenciador de séries, para você nunca mais esquecer as séries que assistiu no Netflix e também as que você tem para assistir que algum amigo te indicou. Para isso…

read more >
Async - Como Controlar Operações Assíncronas

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O Async é um módulo que nos ajuda a controlar processamento assíncrono. Primeiramente temos que instalar o async: Outro detalhe é que eu tenho 2 arquivos de texto, um escrito “arquivo 1” e o outro “arquivo 2”, vamos usá-los posteriormente. Se você…

read more >
Módulo Co - Organize o fluxo de seu código assíncrono

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste hands-on, vamos utilizar uma ferramenta bastante útil no nosso dia a dia, o módulo CO, que é uma forma de controlar o fluxo das funções por meio de generator no JavaScript. Vamos lá, a primeira coisa é adicionar o co: O problema que tínhamos…

read more >
Float e precisão

Por: Tulio Faria |

Thumbnail

Hoje quero dar uma dica e também mostrar um problema que acontece em várias linguagens que é quanto à precisão de número ‘quebrados’ ou Float. Esse problema em específico já caiu em uma entrevista de emprego que eu fiz. Me passaram um caso de teste…

read more >
Nodemon: Monitore alterações e reinicie automaticamente seus scripts

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste hands-on, vamos falar mais especificamente sobre o Nodemon.  Primeiramente vamos instalar: Eu poderia instalar localmente também apenas tirando o -g, assim ele não ficaria disponível no sistema inteiro. Mas, o que o nodemon faz? Ele permite…

read more >
Bind - Altere comportamento e contexto de execução de suas funções

Por: Tulio Faria |

Thumbnail

O que é um bind em JavaScript? Para mostrar uma das utilidades do bind, eu criei um pequeno exemplo: Eu tenho um objeto literal que cria um contexto novo. Para esse contexto, o this.valor vai ser igual a 20 e quando eu der um getValor, ele irá…

read more >
Fetch - Uma nova forma de fazer requisições HTTP

Por: Tulio Faria |

Thumbnail

Neste hands on, vamos testar o Fetch, uma alternativa que vem sendo adotada e implementada nos navegadores para substituir a forma como fazíamos requisições http no browser. Já existem módulos que implementam isso no Node, o interessante é que…

read more >
Lista encadeada - Adicionar com O(1)

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vamos continuar falando mais um pouco sobre algoritmos que principalmente caem ou em listas de emprego ou competições de programação, mas vai ser um pouco diferente. Estamos falando sobre listas encadeadas e já fizemos uma forma de adicionar um…

read more >
Lista encadeada - Como remover um nó

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Nós já falamos sobre alguns métodos, adicionamos itens na lista, criamos nó com complexidade O(n) e O(1) e agora vamos remover um nó desse nosso algoritmo. Primeiro temos que criar um método remove, vamos passar um nó para ele e, baseado nesse nó…

read more >
Lista encadeada - Como retornar um item

Por: Tulio Faria |

Thumbnail

Hoje vamos continuar falando sobre algoritmos e também estrutura de dados. Vamos discutir um pouco sobre essas técnicas que aprendemos na base da computação e que é bastante útil tanto para entrevistas de emprego quanto para competições em…

read more >
Standard - Padronize o código fonte JavaScript da sua equipe

Por: Tulio Faria |

Thumbnail

O módulo Standard é uma ferramenta bastante útil no nosso dia a dia, ele aplica algumas regras para você manter seu código fonte. Por exemplo, se você vai fazer um ‘if’, tem que deixar um espaço porque facilita a leitura: Com o tempo você sente que…

read more >
Standard Parte 2

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Para complementar o hands-on que fizemos sobre Standard, vou passar mais duas dicas sobre a ferramenta. A primeira é uma biblioteca que se chama Snazzy e a segunda é uma forma de automatizar a formatação do código fonte. Imagine o seguinte, você tem…

read more >
Factory Function em JavaScript

Por: Tulio Faria |

Thumbnail

Hoje vou dar uma dica de JavaScript, mais especificamente como implementar o Patern Factory. Factory é bastante conhecido em Java, C# e outras linguagens com orientação a objeto. Nessas linguagens, retornamos uma instancia de uma classe, no…

read more >
Aprenda a aprender

Por: Tulio Faria |

Thumbnail

Nesta dica de carreira, vou contar como podemos aprender mais. O ponto mais importante de quando estamos aprendendo algo novo, seja uma tecnologia, uma linguagem ou qualquer outra coisa, é tentar achar a melhor forma para aprender. Muita gente me diz…

read more >
Lista encadeada - Adicionar nó

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Vamos explorar um pouco mais de estrutura de dados de algoritmos que são comuns na base curricular, principalmente em computação, e caem muito em competição de programação e em entrevistas de emprego. Quando falamos de entrevista no exterior, é muito…

read more >
Minicurso Socketio - Parte 05 - Colocando o projeto no ar

Por: Tulio Faria |

Thumbnail

Chegamos à última etapa do nosso Minicurso de Socket.IO. Nessa aula, nós vamos colocar o projeto no ar para que você possa utilizá-lo como um projeto de portfólio e também mostrar as atualizações em tempo real para um potencial cliente. Além disso…

read more >
Minicurso Socket.IO Parte 4 - Separando notificações por Rooms

Por: Tulio Faria |

Thumbnail

Nesta etapa do nosso minicurso de Socket.IO, vamos fazer as atualizações específicas de cada jogo. Primeiro vamos fazer o gráfico da torcida se movimentar. Dentro de match.ejs, vamos mudar para refletir realmente os valores da porcentagem, se…

read more >
Jest - Como utilizar a ferramenta de testes criada pelo Facebook

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O Jest foi criado pelo Facebook com o objetivo de rodar os testes de uma maneira eficiente e com menos configurações. Aqui eu já tenho um diretório para o nosso teste chamado jest-handson, então vou rodar: Vamos colocar como dependência de…

read more >
Hands-on: PuTTY

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O PuTTY é um software que nos permite conectar tanto em Tellnet quanto em Rlogin, SSH, etc. Na verdade, eu uso mais para gerenciar servidores com SSH e vou mostrar alguns macetes dele. Eu tenho um IP em uma máquina no Digital Ocean, vou copiar o IP…

read more >
Minicurso Socket.IO - Parte 3 - Recebendo a notificação de Gol

Por: Tulio Faria |

Thumbnail

Nas aulas anteriores do minicurso de Socket.IO, já preparamos o ambiente, conectamos o websocket do client para o servidor e agora vamos começar a emitir realmente as notificações. A primeira coisa que vamos fazer é enviar o placar, vamos abrir o…

read more >
Minicurso Socket.IO - Parte 02 - Adicionando o Socket.IO

Por: Tulio Faria |

Thumbnail

Na primeira aula do minicurso de Sockt.IO, fizemos a listagem dos jogos puxando do banco de dados baseado em json e quando clicamos conseguimos visualizar os dados dos jogos. Agora vamos adicionar o Socket.IO realmente a essa interface, configurando…

read more >
Como escolher uma linguagem de tecnologia?

Por: Tulio Faria |

Thumbnail

Eu sou uma pessoa que sempre tem que estar conhecendo coisas novas e estar confortável com essas coisas, por isso resolvi compartilhar como escolher uma linguagem de tecnologia ou algo novo para estudar. Tem coisas que eu gosto de fazer, como…

read more >
NPM e Módulos de Terceiros - NodeJS Pm=

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O Node já vem com um gerenciador de pacotes chamado NPM (Node Package Mananger), com o qual é possível gerenciar todas as dependências de pacotes, então ele é tanto um repositório de  módulos quanto uma ferramenta que já vem instalada com o Node. Se…

read more >
Árvore Binária de Busca - Operação de Busca

Por: Tulio |

Categoria:

Video-Tutorial

Thumbnail

Agora que você já entendeu sobre Árvore Binária e Árvore Binária de Busca, vamos falar sobre a operação de busca. Estou utilizando o exemplo do exercício anterior de árvores binárias. Nós sabemos que a árvore binária tem uma regra de inserção, então…

read more >
Árvore Binária de Busca em JavaScript

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vamos falar mais sobre árvores binárias, porém um tipo específico, a árvore binária de busca. Qual a diferença da árvore binária de busca para a árvore binária normal? Na normal, simplesmente inserimos os nós dentro da árvore sem garantir…

read more >
Árvore Binária em JavaScript

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Continuando o assunto sobre alguns algoritmos que utilizamos em computação em geral, neste port falaremos sobre árvore binária, uma estrutura de dados que me fascina bastante pela versatilidade. Então vamos implementar uma árvore, ainda não será uma…

read more >
Evite o this em JavaScript

Por: Tulio Faria |

Thumbnail

Venho programando cada vez mais de forma funcional e muitas coisas que víamos com preconceito começamos a entender o porque faz sentido ser da forma que é. Toda vez que você for pensar em utilizar o ‘this’ em JavaScript pense 10 vezes antes, porque…

read more >
High-order Function - Reduce

Por: Tulio Faria |

Thumbnail

Hoje vamos continuar falando sobre high order functions, principalmente as que estão disponíveis nos vetores em JavaScript. Vamos falar mais especificamente do Reduce. É muito comum utilizarmos o Map junto com o Reduce, ele existe em algumas outras…

read more >
ReactJS Recursivo?

Por: Tulio Faria |

Thumbnail

Hoje vamos fazer algo que é bastante convencional em sistemas: renderizar estruturas de dados em formato de árvore. No exemplo, será uma árvore binária, mas como poderíamos renderizar no ReactJS. Em que isso é útil? Vamos supor que você tenha uma…

read more >
Sleep em Generator

Por: Tulio Faria |

Thumbnail

Hoje quero mostrar como podemos recriar o famoso sleep, que temos em algumas linguagens que não são assíncronas como JAVA e  PHP, quando queremos usar dentro de um Generator function. Eu cheguei nessa função porque queria fazer  testes de algumas…

read more >
High-order Function MAP

Por: Tulio Faria |

Thumbnail

Hoje vamos continuar falando sobre programação funcional e High Order Functions, alguns tipos específicos que já vêm com o JavaScript, o primeiro que vamos falar é o MAP, ele transforma os dados ou cada item de um vetor. Vou mostrar um exemplo para…

read more >
NodeJS Primeiros Passos - Promises

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Continuando nosso assunto sobre NodeJS, vamos tratar sobre como podemos organizar o fluxo para que o código fique realmente organizado. Olhe esse exemplo: Aqui faço três operações assíncronas e você pode perceber que o código vai crescendo para…

read more >
Como servir arquivos e expor servidor local com HTTPS

Por: Tulio Faria |

Thumbnail

Nesta dica, vou mostrar como servir arquivos estáticos de forma simples, além disso, como expor um servidor local de testes para a internet e ainda utilizando uma conexão segura (HTTPS). Pressupondo que a gente já tenha o NodeJS e o NPM instalado…

read more >
Debug de código JavaScript no Navegador

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vou dar uma dica rápida de como podemos fazer o debug de código JavaScript no navegador. É bastante simples, se você já trabalha com Java ou alguma ID, já deve ter uma ideia de como fazer isso na ID. Podemos fazer isso também no front-end com…

read more >
HA e AS em Aplicação Web - Web Basic

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vamos continuar com mais alguns conceitos de uma Aplicação WEB que são muito importantes quando falamos de Startups, onde temos um poder de escala muito grande. São duas siglas, HA e AS: HA = High Availabilty (alta disponibilidade); AS = Auto…

read more >
Programação Assíncrona - NodeJS Primeiros Passos

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Continuando nossa série sobre NodeJS, falando um pouco sobre como funciona a Programação Assíncrona do JS, vamos fazer alguns testes para você ver a diferença de como o JavaScript (e nesse caso alguns módulos do NodeJS) trabalham esse assincronismo…

read more >
Template HTML simples - Hands-on Handlebars

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O Handlebars é uma forma de lidarmos com template HTML. É algo simples, mas que possui diversas opções que podemos fazer. Vou mostrar um caso bem específico dele. Podemos utilizar com NodeJS, ExpressJS, mas eu vou mostrar em conjunto com jQuery para…

read more >
Como simular uma conexão lenta?

Por: Tulio Faria |

Thumbnail

Hoje vou dar uma dica para de algo muito útil e simples de ser feito, mais especificamente de como podemos testar nosso site ou aplicação web restringindo a conectividade, ou o quanto o usuário consegue baixa de dados para simular, por exemplo, se o…

read more >
Hands-on: Codility - Prepare-se para entrevistas e competições

Por: Tulio Faria |

Thumbnail

O Codility é uma plataforma que pode ser utilizada para treinar programação e, no caso de recrutadores, para selecionar programadores para a equipe. No meu caso. utilizei o Codility para passar em uma das provas da Toptal e já aproveitei para estudar…

read more >
Gere seu projeto em Express - Hands-on: Express-Generator

Por: Tulio Faria |

Thumbnail

Neste hands-on, vamos falar sobre o Express-Generator, um gerador de projetos em expressJS. Com ele conseguimos criar a base da nossa aplicação. Primeiramente, para instalar o generator, faça o seguinte comando: Lembrando que usando o express -h…

read more >
Injeção de Dependência em ReactJS

Por: Tulio Faria |

Thumbnail

Como estávamos comentando anteriormente sobre injeção de dependência, achei relevante mostrar como podemos fazer Injeção de Dependência em ReactJS. Para ilustrar, temos o exemplo abaixo, que quando carregamos o componente, utilizamos o axios para…

read more >
Injeção de dependência - Aumente a testabilidade do seu código

Por: Tulio Faria |

Thumbnail

Pode parecer besteira, mas eu sempre ouvia sobre injeção de dependência. porém nunca tinha refletido tanto sobre ela. Quando passei a testar mais o meu código com teste unitário, comecei a usar essa técnica e percebi que fez muita diferença. Para…

read more >
Vantagens da Injeção de dependência para a testabilidade do código

Por: Tulio Faria |

Thumbnail

Já havia falado por aqui sobre injeção de dependência, disse que muitas vezes não temos acesso ao que estamos testando.Desta vez, falo sobre as vantagens da injeção de dependência na testabilidade do código. Vamos criar um alert que é uma arrow…

read more >
4 novos Métodos Strings que você precisa conhecer

Por: Tulio Faria |

Thumbnail

Quatro novas funções foram adicionadas às Strings no ES6 e são bastante interessantes para usarmos no dia a dia. Veja só: 1 StartsWith Nela temos uma string qualquer e fazemos o seguinte: Será que Tulio Faria começa com a palavra Tulio? Se sim, é…

read more >
Dica: ES6 - Destructuring Assignament

Por: Tulio Faria |

Thumbnail

Nesta dica, comento sobre uma novidade que veio com o ES6: o Destructuring Assignament, que permite uma grande organização e aumento de legibilidade do código. Confira! https://www.youtube.com/watch?v= Curta o DevPleno no Facebook, inscreva-se no…

read more >
NodeJS Primeiros Passos: Módulo em NodeJS

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O que é Módulo em NodeJS? É um script php no qual você consegue incluir em um outro script. É uma maneira bem tradicional de se organizar as partes funcionais do código. Vamos fazer um teste simples apenas para testar o require, que é a forma de…

read more >
ES6 - Template Strings

Por: Tulio Faria |

Thumbnail

Como já citei em outros posts, o ES6 apresenta algumas novidades, uma delas é o Template Strings, uma forma de declarar uma string em JavaScript. Ela será o mesmo que se fizermos uma String convencional, porém podemos fazer algumas coisas extras…

read more >
Como construir um beatbox com JavaScript

Por: Tulio Faria |

Thumbnail

Continuando nossos experimentos utilizando áudio no HTML (você deve ter percebido que me empolguei com este assunto), vamos mudar o exemplo do metrônomo para construir uma ‘bateria’ e poder criar uma música somente dando ‘plays’ de forma ordenada em…

read more >
Construindo um Beatbox Manipulável com JS

Por: Tulio |

Thumbnail

Agora que já entendemos como dar play em áudio com JS, como manipular para compor uma batida, faremos com que o usuário escolha a forma como seja tocado, ou seja, um Beatbox Manipulável com JS Vamos começar utilizando um pouco da estrutura do HTML…

read more >
Hands-on: Ler arquivo linha a linha

Por: Tulio Faria |

Thumbnail

Neste hands-on, vamos ver como conseguimos utilizar o readline em conjunto com Readable Stream para ler linhas de um arquivo texto. Como faremos isso? Primeiramente vamos importar o headline (que já faz parte do core do node) e o FS (file System). Em…

read more >
Currying - Uma técnica interessante usada em programação funcional

Por: Tulio Faria |

Thumbnail

O Currying é basicamente uma forma de informar para uma função os parâmetros de forma parcial. Você pode pegar uma função qualquer que recebe, por exemplo, três parâmetros, mandar um por vez e no fim obter o resultado. Assim, você injeta os…

read more >
Metrônomo com JavaScript

Por: Tulio Faria |

Thumbnail

O metrônomo um dispositivo que deixa uma batida constante e ajuda os músicos a manterem um ritmo quando estão treinando. Esse ritmo pode aumentar ou diminuir de acordo com a escolha do músico. Teremos um HTML simples, e primeiro vamos criar um input…

read more >
Escopos e Closures - NodeJS Primeiros Passos

Por: Tulio Faria |

Thumbnail

Entender Escopos e Closures do JavaScript  é muito importante para conseguir avançar no NodeJS. Primeiramente tenho um diretório criado com nossos exemplos. Vou criar um arquivo novo e mostrar um exemplo básico: Perceba que tem apenas uma declaração…

read more >
4 funcionalidades do Console no DevTools que você não conhece

Por: Tulio Faria |

Thumbnail

O console no DevTools do Chrome apresenta algumas funcionalidades que muitos utilizam raramente ou até mesmo nem sabem que existem. Para fazer este teste, vamos criar um HTML simples com um script começando com o console.log normal. Nele temos…

read more >
Tocando um Áudio com JS puro

Por: Tulio Faria |

Thumbnail

Uma das coisas que utilizaremos na interface que vamos construir no Minicurso de Socket.io para que fique mais próximo do real são os efeitos sonoros. Por isso, essa dica é para você entender como dar play em um arquivo de áudio com JS puro, ou seja…

read more >
JavaScript: Apply

Por: Tulio Faria |

Thumbnail

Hoje vou falar um pouco sobre o Apply em JavaScript e mostrar um exemplo de como podemos utilizá-lo para calcular o menor e o maior valor em um conjunto de dados. Primeiramente vamos fazer um teste: criar uma função e se chamar a funTeste junto com o…

read more >
Servidores Web - Um pouco mais do back-end de uma Aplicação Web

Por: Tulio Faria |

Thumbnail

Servidores Web são um serviço usado no servidor que fornece páginas ou algum asset para o front-end. Dentro de uma máquina, configuramos uma pasta (/site por exemplo) e quando a pessoa tenta acessar, por exemplo, na porta 80 dessa máquina, o servidor…

read more >
Animação basica em CSS3

Por: Tulio Faria |

Thumbnail

Recentemente eu estava planejando e desenvolvendo a interface para o curso de Socket.io, e como ela terá algumas animações à medida em que os dados chegam em tempo real, resolvi voltar a estudar CSS3, algo que há tempos não utilizo. Às vezes ficamos…

read more >
Once N vezes

Por: Tulio |

Thumbnail

Essa dica é sobre uma técnica em JavaScript de uma função utilitária que permite que uma outra função só seja executada uma única vez (Once). Para que fazer isso? Vamos supor que você carregou uma página ou algo via AJAX e deve fazer alguma operação…

read more >
Request e Response

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Nos posts anteriores já falamos sobre back-end, front-end, como eles se comunicam através de uma requisição, e agora você verá um exemplo prático de um request e um response. Vamos usar o NodeJS, mas não é obrigatório focar nisso, pois depois vou…

read more >
Formatos de troca de dados em Aplicações Web

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Hoje vamos continuar falando sobre arquitetura de uma aplicação WEB, mais especificamente sobre os formatos de troca de dados entre back-end e front-end. Lembrando que o Front-end envia algo ao back-end, como por exemplo um POST em /users. Quando…

read more >
Postman - Como testar APIs - Hands-on

Por: Tulio Faria |

Thumbnail

O Postman é uma ferramenta indispensável para o desenvolvimento de aplicativos API, principalmente Rest API, pois ele é um client para uma API em Rest. Existem outras ferramentas para isso, mas o Postman é o mais conhecido no mercado. O  primeiro…

read more >
Criando componente mais simples e eficaz em React

Por: Tulio Faria |

Thumbnail

Vamos começar esse hands-on Stateless Functional Component com um projeto do zero criado com Create-react-app. Primeiro vamos criar um arquivo novo chamado home.js (iremos importar o React, pois ainda vamos usar JSX). Um Stateless Functional…

read more >
Ctrl+C / Copy to Clipboard em JS

Por: Tulio Faria |

Thumbnail

Essa é uma dica bem rápida de como podemos mandar algo com o clipboard, ou seja, o equivalente a dar um CTRL + C em um texto na sua página. Para fazer este exemplo, vamos usar o jQuery por que escrevemos pouquíssimas linhas de código. Então temos…

read more >
Router Props - Como injetar props em rotas

Por: Tulio Faria |

Thumbnail

Confesso que tive muito trabalho até conseguir encontrar uma maneira não tão difícil de fazer a passagem de propriedades para o componente. Neste post, você vai conferir uma dica sobre React Router. Vamos fazer a partir de um exemplo básico no qual…

read more >
Faker - Como gerar grandes massas de dados fictícios para testes

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O Faker é um módulo do Node que usamos para gerar dados fictícios para testes, como para popular um banco de dados, por exemplo. Isso é muito útil quando queremos gerar uma grande massa de dados e estamos sem criatividade para gerá-la. Além disso…

read more >
Fs-extra - Filesystem com Promises e mais funcionalidades

Por: Tulio Faria |

Thumbnail

O Fs-extra é uma forma de otimizar as funcionalidades do SF normal do node. Primeiramente, temos que executar o comando yarn sf-extra. Uma utilidade interessante do SF-extra é que, importando o outputFile, é possível criar um arquivo, um TXT, por…

read more >
Hands-on - Socket.io Parte 3

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Nesta terceira parte sobre comunicação em tempo-real com NodeJS e Socket.io, vamos começar com algo muito interessante: como podemos agrupar usuários para o envio de notificações. Também será abordado o conceito de rooms, uma maneira de segmentar os…

read more >
Web Basic - RESTful

Por: Tulio |

Categoria:

Video-Tutorial

Thumbnail

Apenas para lembrar o que vimos no post anterior sobre arquitetura Web (se você não viu, clique AQUI) existem as duas pontas da aplicação: o back-end e o frond-end e uma troca de mensagens entre eles. Entre essas duas camadas, há um padrão que é a…

read more >
Servidor HTTP Básico - NodeJS Primeiros Passos

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Na série NodeJS Primeiros Passos, você poderá os conceitos básicos de Javascript e NodeJS e, assim, poder colocar a mão na massa. Neste primeiro post, confira como criar um Servidor HTTP básico. Primeira coisa que temos que fazer é acessar o www…

read more >
Aplicação Web - Entendendo Back-end e Front-end

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Uma Aplicação Web sempre é composta por dois “blocos”: o front-end e o back-end. Podemos classificar nossas tecnologias, arquiteturas, etc baseado nessas duas separações. É comum ouvir dizer também que o beck-end é Server Side, e o front-end Client…

read more >
Hands-on - Socket.io Parte 2

Por: Tulio Faria |

Thumbnail

Continuando nossa série sobre Socket.io, vamos aprofundar um pouco mais no assunto. Lembrando nosso código do lado server:   Simplesmente estávamos tratando a conexão, então se o cliente conectou, isso nos era mostrado, além do ID da conexão…

read more >
Low-DB - Banco de dados para NodeJS baseado em JSON

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O Low-DB é uma forma bem interessante de termos um banco de dados baseado em JSON para utilizarmos em aplicações mais simples ou talvez aplicações desktop, onde podemos utilizar electron, por exemplo. Primeiro vamos instalar o módulo: Criamos então…

read more >
Comunicação em tempo-real com Node e Socket.io

Por: Tulio Faria |

Thumbnail

O que é Socket.io e para que vamos precisar dele? Socket.io é uma implementação em node para web socket, ou seja, uma forma de fazer comunicação em tempo real, mas mais importante que isso é sua possibilidade de fallBack. O Socket.io foi lançado há…

read more >
Hands-on: Streams Parte 03 - Duplex

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Já falamos sobre Readable e Writable Streams, agora falaremos sobre o tipo Duplex. Ele nos permite tanto enviar quanto receber dados. Para testarmos este Stream, vamos utilizar a classe net.Socket, que implementa um Socket, o que permite fazer uma…

read more >
Hands-on: Streams Parte 4 - Transform

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Continuando nossa série sobre Streams, iremos falar sobre como podemos ligar um readable em um writable e vice-versa, e como criamos o tipo Transform. Primeiramente, para linkarmos um stream a outro, temos que importar o fs. Em seguida, criamos os…

read more >
PKG - Transforme seu aplicativo Node em executável

Por: Tulio Faria |

Thumbnail

Neste post, faremos um hands-on do módulo PKG, que serve basicamente para transformarmos nosso aplicativo node em executável, ou seja, podemos distribuir esta aplicação sem precisar instalar o ambiente do node ou até mesmo mandar o mesmo dentro deste…

read more >
Hands-on: Streams Parte 2 - Writable

Por: Tulio Faria |

Thumbnail

Vamos continuar falando sobre o Stream em node, mais especificamente sobre o Writable, lembrando que podemos usar estes conceitos em outras linguagens. Se você ainda não viu a parte 1, clique AQUI.    O que é Writable Stream? São Stream’s onde…

read more >
Generators: O que há "por baixo dos panos"

Por: Tulio Faria |

Thumbnail

Neste post, continuo falando sobre Generatiors em javaScript e como funciona ‘por baixo dos panos’. O que é um Generator? É uma função que podemos pausar (ou iteravel). A primeira coisa que temos que saber é que a sintaxe do generator é criada com um…

read more >
Hands-on: Ler arquivo linha a linha

Por: Tulio Faria |

Thumbnail

Neste hands-on, vamos ver como conseguimos utilizar o readline em conjunto com Readable Stream para ler linhas de um arquivo texto. Como faremos isso? Primeiramente vamos importar o headline (que já faz parte do core do node) e o FS (file System…

read more >
Hands-on: Readline

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste post vamos fazer um hands-on é de um modo padrão com o core do node: o readline.   O que temos que fazer? Vamos importar primeiro o readline e instanciar um novo readline. Como o readline é um modulo que permite que lidemos com entrada e saída…

read more >
Listar arquivos em JS (async, await, promise e Promise.all)

Por: Tulio Faria |

Thumbnail

Hoje eu quero corrigir um exercício que passei no FullStack Academy que gera muitas dúvidas, principalmente para quem está começando na linguagem e quer aprender a lidar melhor com assincronia. Então o exercício passado foi o seguinte: Dado uma…

read more >
Hands-on: Streams - Parte 1

Por: Tulio Faria |

Thumbnail

Olá! Neste post, vamos falar sobre Streams, um conceito utilizando em JavaScript mas que pode ser aplicado em outras linguagens. Nele temos uma grande quantidade de conteúdo para explorar.   O que é um Stream? É um Fluxo de dados. Quando queremos…

read more >
Ferramentas Visuais para Flexbox

Por: Tulio Faria |

Thumbnail

Há um tempo passei por uma situação onde precisava criar algumas coisas com Flexbox (uma nova forma de display do CSS) na parte de layout do react native (já que é feita em flexbox). Para decidir quais atributos vamos utilizar no flexbox, temos…

read more >
Testando o Spread Operator: Novidade do ES6

Por: Tulio Faria |

Thumbnail

Olá! Neste post, vou mostrar uma novidade do ES6: o Spread Operator. Você deve estar se perguntando agora (ou não): Para que serve o Spread Operator? O Spread Operator é usado com bastante frequência principalmente quando queremos utilizar a…

read more >
Promisify-Node: Convertendo funções clássicas do Node em Promises

Por: Tulio Faria |

Thumbnail

Neste post, vamos fazer um hands-on do Promisify-Node, uma forma de converter as funções clássicas do Node em JavaScript que retornam callback em promises. Existem vários módulos que já fazem isso, como em módulos utilitários de promises, o q…

read more >
Como converter Markdown para HTML usando Marked

Por: Tulio Faria |

Thumbnail

O Markdown é uma forma de escrevermos documentação que foi popularizada pelo Github (e que é uma mão na roda, diga-se de passagem). Com ele, podemos pegar um texto e criar algumas marcações, o que gera uma interface mais organizada, sem perigo de…

read more >
Hands-on: Ferramentas visuais para Flexbox

Por: Tulio Faria |

Thumbnail

Flexbox é uma nova forma de criar layouts em CSS. Neste hands-on, mostro algumas ferramentas que ajudam bastante na hora de ver o impacto de cada propriedade visualmente. Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no Facebook…

read more >
Hands-on: Marked

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste vídeo, faço um hands-on do módulo Marked, que tem a função de converter Markdown para HTML. Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar seu e-mail para não perder as novidades. Abraço!

read more >
Javascript: Streams (P-3: Duplex)

Por: Tulio Faria |

Thumbnail

Nesta terceira parte da série sobre Streams, falo sobre o Streams Duplex, que permite tanto o envio quanto o recebimento de dados. Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de…

read more >
Javascript: Streams (P-4: Transform)

Por: Tulio Faria |

Thumbnail

Na quarta parte sobre Streams, falo sobre Transform. Confira! Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar seu e-mail para não perder as novidades. Ah, fique à vontade para deixar suas dúvidas e sugestões nos…

read more >
Hands-on: Low-db

Por: Tulio Faria |

Thumbnail

Neste hands-on, um módulo muito interessante para termos um banco de dados bem simples baseado em Json. Uma boa alternativa para aplicações desktop/electron e para guardar configurações de aplicações.  Curta o DevPleno no Facebook, inscreva-se no…

read more >
Hands-on: Faker

Por: Tulio Faria |

Thumbnail

Você já precisou gerar dados fictícios para seus projetos? As chances são que sim, e de forma bem recorrente, né? Neste vídeo, um hands-on do Faker, uma ferramenta que facilita bastante este processo de geração de dados de testes. Não esqueça de…

read more >
Javascript: Streams (P-1: Readable Streams)

Por: Tulio Faria |

Thumbnail

Neste vídeo, um assunto bastante interessante para ser utilizado no dia-a-dia: Streams. A primeira parte fala sobre readable streams ou streams de leitura. ERRA: O evento ‘readable’ é disparado sempre que a tem dados disponíveis, assim, poderíamos…

read more >
Javascript: Streams (P-2: Writable Streams)

Por: Tulio Faria |

Thumbnail

Neste vídeo, um assunto bastante interessante para ser utilizado no dia-a-dia: Streams. A primeira parte fala sobre writable streams ou streams de gravação. Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no Facebook, inscreva-se no…

read more >
Dica: Router Props

Por: Tulio Faria |

Thumbnail

Como passar props para rotas (em react-router) em uma app react? Dica interessante para injetarmos dependências nos componentes que são dinamicamente renderizados pelo router. Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no…

read more >
Dica: Once n vezes

Por: Tulio Faria |

Thumbnail

Neste vídeo. iremos implementar em Javascript uma função utilitária que permite uma função ser executada apenas uma vez (once) e também modificamos um pouco este exemplo para que possa ser limitado a n-vezes. Dependendo da regra de negócio, poderia…

read more >
Hands-on: Injeção de Dependência é bom mesmo?

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Muitas pessoas ainda me perguntam se injeção de dependência é realmente bom. Você também ainda não está convencido sobre isso? Neste vídeo, crio um mock e um teste com injeção de dependência para te convencer ainda mais sobre a importância desta…

read more >
Hands-on: Currying

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Continuando o assunto sobre programação funcional, o assunto deste vídeo é Currying - uma técnica bastante interessante para composição de funções. Confira: Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no Facebook, inscreva-se no…

read more >
Dica: Como saber a complexidade de um algoritmo

Por: Tulio Faria |

Thumbnail

Nos últimos vídeos e na última live, comentei sobre o Codility. Ele tem uma característica de avaliar a complexidade do algoritmo que você respondeu. Neste vídeo, dou uma dica rápida de como avaliar e ter uma ideia da complexidade. Confira Curta o…

read more >
Hands-on: Json-Server

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Todo mundo já passou pela situação onde precisava fazer um teste com front-end e precisou de uma API funcionando. Não seria interessante ter uma forma de acessar um formato de dados simples, sem muita configuração? Veja como é simples criar uma REST…

read more >
Dica: Debounce

Por: Tulio Faria |

Thumbnail

Debounce é uma técnica bastante útil para restringir o tempo entre a chamada de uma mesma função. Por exemplo, se um usuário clicar 6x em um botão em menos de 2s, apenas a última vez será contada. Neste vídeo, construiremos uma forma genérica de…

read more >
Dica: Injeção de Dependência no ReactJS

Por: Tulio Faria |

Thumbnail

Injeção de dependência ajuda muito na testabilidade do código e de certa forma em aumentar a legibilidade do código. Veja como podemos implementar Injeção de dependências no ReactJS Veja mais sobre injeção de dependências AQUI Curta o DevPleno no…

read more >
Algoritmos: XOR Swap

Por: Tulio Faria |

Thumbnail

O XOR é um operador bem versátil e uma coisa que gosto bastante é de estudar e analisar formas alternativas de utilização destes operadores. Neste vídeo mostro como é possível usar o XOR para trocar variáveis de lugar além de explorar o porquê isso…

read more >
Immutability e ImmutableJS

Por: Tulio Faria |

Thumbnail

Neste hands-on/dica, falo um pouco da importância da imutabilidade em programação funcional em Javascript. Além disso, apresento o módulo Immutable que nos ajuda a lidar com imutabilidade. Apenas para simplificar: Imutabilidade / Immutability: nome…

read more >
Dica e Algoritmo: XOR e Odd Occurences in Array

Por: Tulio Faria |

Thumbnail

Neste vídeo você vai entender como melhorar a performance do algoritmo Odd Occurrences in Array com o operador XOR. Confira! Deixe suas dúvidas e sugestões nos comentários. Não se esqueça de curtir o DevPleno no Facebook, inscrever-se no canal e…

read more >
Dica: Self-Invoked Function (Self-invoking Function)

Por: Tulio Faria |

Thumbnail

Self-invoked Functions é uma técnica bastante interessante no Javascript, e pode resolver alguns problemas de conflito de contexto (que já estão sendo reduzidos pelo ES6/ES7). Nesta dica, mostro o que é esta técnica e onde você pode utilizá-la…

read more >
Dica: Debug de NodeJS no VS Code

Por: Tulio Faria |

Thumbnail

Neste dica, vamos ver como depurar nosso código NodeJS utilizando o VS Code. Curta o DevPleno no Facebook, inscreva-se no canal e cadastre se e-mail para não perder as novidades. Deixe suas sugestões e dúvidas nos comentários. Abraços!

read more >
Algoritmos: PermMissingElement

Por: Tulio Faria |

Thumbnail

Continuando nossa série sobre algoritmos que caem em entrevistas de emprego e competições de programação, neste vídeo, explico sobre o Algoritmo PermMissingElement.

read more >
Algoritmos: Cyclic Rotation

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Este é mais um vídeo da série algoritmos, na qual explico sobre algoritmos que frequentemente caem em entrevistas de emprego e competições de programação. Desta vez, comento sobre o Cyclic Rotation.

read more >
Algoritmos: Odd Occurrences in Array

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste vídeo, comento sobre o algoritmo Odd Occurrences in Array, disponível no Codility. O interessante deste algorítimo é mantermos a complexidade em O(n). Confira no vídeo:

read more >
Apresentação em HTML

Por: Tulio Faria |

Thumbnail

Neste vídeo, explico como você pode criar apresentação de slides em HTML, uma alternativa às apresentações tradicionais em Power Point. Confira! Tem alguma dúvida? Deixe nos cometários. Sugestões também são muito bem-vindas. Não se esqueça de curtir…

read more >
Hands-on: Creat-React-App

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste Hands-on, testo um pacote para React, o Creat-React-App. Confira: Deixe suas dúvidas e sugestões nos comentários. Não se esqueça de curtir o DevPleno no Facebook, se inscrever no canal no YouTube e cadastrar seu e-mail para não perder nenhuma…

read more >
Dica: Injeção de dependência com Destructuring Assignament

Por: Tulio Faria |

Thumbnail

Uma maneira de injetar dependências, que permite uma organização ainda maior do código, é utilizando o Destructuring Assignament. Neste vídeo mostro como utilizar as 2 técnicas. Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no…

read more >
Hands-on: CO

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste hands-on iremos usar o CO, um módulo que permite que você organize o fluxo de seu código assíncrono com generators, o que faz seu código parecer muito com código síncrono. Confira: Deixe suas sugestões e dúvidas nos comentários. Curta o…

read more >
Hands-on: Slack

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste hands-on iremos fazer um bot simples que envia notificações utilizando o Slack.O Slack vem sendo bastante utilizado para comunicação corporativa (eu mesmo uso bastante). E concentrar informações a respeito da sua empresa ou projeto nele é bem…

read more >
algoritmos: Contar números negativos

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Continuando nossa série sobre algoritmos que caem em entrevistas e competições, neste vídeo falo sobre Contar Números Negativos, que já caiu em entrevistas da Amazon. Então fique ligado no vídeo: Não perca nenhuma atualização do DevPleno. Se inscreva…

read more >
Hands-on: Benchmark

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste vídeo, fazemos o Benchmark entre duas funções em Javascript utilizando o Benchmark.js. A vantagem deste módulo é que ele compara as funções rodando várias vezes e fazendo a média entre as execuções. Deixe aqui nos comentários as seuas dúvidas…

read more >
Hands-on: Standard

Por: Tulio |

Categoria:

Video-Tutorial

Thumbnail

Neste Hands-on, vou falar sobre um módulo da NPM, o Standard, com o qual você pode padronize o código fonte JavaScript da sua equipe. Confira os detalhes nos vídeos: Deixe suas sugestões e dúvidas nos comentários, curta o DevPleno no Facebook e…

read more >
Hands-on: ShellJS

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Uma tarefa que faço bastante no meu dia a dia é a construção de ferramentas para transformar dados, fazer algum processamento ou até mesmo copiar montantes de dados. Estas ferramentas. quando precisam de algum comando do shell do linux, acabam…

read more >
Algoritmos: Campo Minado (Minesweeper)

Por: Tulio Faria |

Thumbnail

Continuando nossa série sobre algoritmos que são utilizados em questões de competições/maratonas de programação e em entrevistas, neste post, iremos tratar sobre o algoritmo campo minado (minesweeper), retirado do livro Programming Challenges de…

read more >
Hands-on: NodeJS - PM2

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Você precisa deixar seu script rodando direto sem precisar iniciá-lo ou travando seu console? No hands-on deste post, vou mostrar o PM2, um gerenciador de processos que pode ser utilizado em node ou para outras linguagens e tecnologias também…

read more >
Hands-on: Node JS - Request

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Nesta nova série, experimento módulos, pacotes ou ferramentas. O pacote demonstrado neste vídeo é o request, que nos permite fazer requisições HTTP de maneira simples. Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar…

read more >
Hands-on: Pre-Commit

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

O módulo testado neste post é o Pre-Commit, que nos permite executar tarefas antes de fazer Commit em seus repositórios Git. Assista o vídeo para entender como funciona: Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no Facebook…

read more >
Algoritmos: Problema 3n+1

Por: Tulio Faria |

Thumbnail

Criando a solução em Javascript para o Problema 3n+1.Neste post continuamos a série de conteúdos sobre algoritmos. Principalmente sobre tipos de algoritmos que são utilizados em competições de programação e em entrevistas de emprego. O Problema 3n+…

read more >
Como converter uma string em Base64 em JavaScript (Navegador e NodeJS)

Por: Tulio Faria |

Thumbnail

A codificação em Base64 é uma maneira de converter qualquer texto/conteúdo para uma codificação que utiliza apenas 64 caracteres. Provavelmente você já deve ter se deparado com uma string destas por aí. Muitos sites e aplicações web utilizam esta…

read more >
Corrigindo o erro "Cannot overwrite 'Model' model once compiled" no Mongoose

Por: Tulio Faria |

Thumbnail

Durante o desenvolvimento de um protótipo aqui na empresa, eu me deparei com uma situação bem interessante no Mongoose. Por algum motivo, comecei a receber o seguinte erro: _OverwriteModelError: Cannot overwrite `User` model once compiled. _ O que me…

read more >
NodeJS Primeiros Passos: Async - Map

Por: Tulio Faria |

Thumbnail

Neste vídeo, vou mostrar uma outra forma de organizar códigos assíncrono, neste caso, executando a mesma operação assíncrona em uma lista de dados e agrupando o resultado no fim. Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de…

read more >
NodeJS Primeiros Passos: Async - Waterfall

Por: Tulio Faria |

Thumbnail

Neste vídeo, vou mostrar uma outra forma de organizar códigos assíncrono, neste caso, executando em cascata (um após o outro). Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar seu e-mail para não perder as novidades…

read more >
NodeJS Primeiros Passos: Async - Como Controlar Operações Assíncronas

Por: Tulio FARIA |

Thumbnail

Neste vídeo da série NodeJS Primeiros Passou vamos conferir um módulo que nos auxilia muito no controle de operações assíncronas/async, principalmente, quando potencialmente poderão ser executadas em cascata. Curta o DevPleno no Facebook, inscreva…

read more >
HA (High Availability) e AS (Auto Scale)

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste vídeo falo de 2 características que é a auto disponibilidade e o auto scaling, muito buscadas por startups para suportar a escalabilidade do negócio. Deixe suas dúvidas e sugestões nos comentários. Curta o DevPleno no Facebook, se inscreva no…

read more >
Servidor de arquivos e sistemas locais com HTTPS

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste vídeo, vou mostrar como servir arquivos estáticos de forma simples e ainda como expor um servidor local de testes para a internet utilizando uma conexão segura (HTTPS). Perfeito para testes de webhooks ou de APIs do HTML5 que precisam de HTTPS…

read more >
NodeJS Primeiros Passos Assíncrono

Por: Tulio |

Categoria:

Video-Tutorial

Thumbnail

Uma das grandes características do Javascript/NodeJS é seu assincronismo. Isso é muito importante, pois há um grande ganho de performance principalmente quando temos aplicações IO Intensive (praticamente todas atualmente são assim). Veja neste vídeo…

read more >
NodeJS Primeiros Passos: Módulos

Por: Tulio Faria |

Thumbnail

Neste vídeo vamos abordar organização de código em NodeJS através de módulos. Código fonte criado no vídeo: https://github.com/devpleno/nodejs-modulos Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar seu e-mail para…

read more >
NodeJS Primeiros Passos: Closures e Escopos

Por: Tulio Faria |

Thumbnail

Neste vídeo é abordado mais sobre closures e escopos em javascript, conceitos bastante importantes para a criação futura de módulos. Código fonte:

read more >
NodeJS Primeiros Passos: Servidor HTTP Básico

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Aprenda NodeJS do zero com esta nova série de vídeos do DevPleno. Neste primeiro vídeo iremos introduzir um pouco de como criamos um servidor HTTP básico. O código construído está disponível Aqui Curta o DevPleno no Facebook, inscreva-se no canal e…

read more >
Servidores Web - Um pouco mais do back-end de uma aplicação web

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste vídeo, vamos “entrar” um pouco mais a fundo no back-end, entendendo servidores web. O que são e como eles recebem as requisições.

read more >
Formatos de troca de dados em Aplicações Web

Por: Tulio Faria |

Thumbnail

Neste vídeo da série Web Basic, vou explicar sobre os formatos de troca de dados entre as camadas do front-end e back-end. Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar seu e-mail para não perder as novidades. Deixe…

read more >
NodeJS Primeiros Passos: Promises

Por: Tulio Faria |

Thumbnail

Neste vídeo vamos organizar o código assíncrono para facilitar a manutenção posterior do código. Evitando que o código “cresça para frente” :) Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar seu e-mail para não…

read more >
Json-server - Como criar uma REST API para testes de forma simples

Por: Tulio Faria |

Categoria:

Video-Tutorial

Thumbnail

Neste hands-on onde vou mostrar uma ferramenta que é bastante interessante no dia a dia, o Json-server. Primeiro vamos instalar: O que ele faz? Muitas vezes estamos criando uma aplicação apenas front-end, como React ou Angular e ele é uma rest API…

read more >
High-order Functions

Por: Tulio Faria |

Thumbnail

A dica de hoje é sobre High-order Functions, que são funções que recebem ou retornam funções. Nós temos alguns tipos diferentes, como por exemplo vetor, map e forEach, elas são high-order functions porque podemos passar um método que ele vai iterar…

read more >