Dicas sobre desenvolvimento de software, gestão e tributações

Rede Social

29 de setembro de 2020

Gestão de projetos: Gráfico de Gantt o que é e como funciona


 


Gráfico de Gantt ou Diagrama de Gantt é usado para controlar visualmente um cronograma, muito conhecido e utilizado na gestão de projetos, pois ele auxilia a se ter uma avaliação rápida do status do projeto, quais tarefas foram executadas, prazos de entrega, dependências, tudo com intervalo de tempo.

O gráfico foi criado pelo norte americano Henry Gantt na década de 20 que se inspirou em Harmonogram criado pelo engenheiro polonês Karol Adamiecki. A ideia de Henry era evitar atrasos na produção de fábricas.
Ele trás vários benefícios como por exemplo:
  • Mostrar de maneira clara e visual o andamento do projeto
  • Segmenta tarefas, definindo a ordem e interdependência que elas devem ser executadas
  • Distribui responsabilidades (caso deseje adicionar isso ao gráfico)
  • Fácil visualização dos prazos das tarefas
Resumindo seu funcionamento:
Para criar seu gráfico de Gantt você precisará enumerar as tarefas que serão realizadas, colocá-las em sequência de cima para baixo (eixo Y) e na horizontal (eixo X) o tempo (pode ser definido em horas, período de trabalho, dias, etc) e conforme as tarefas vão sendo concluídas você vai preenchendo com retângulos esse espaço de tempo que a tarefa demorou a ser executada. Vejamos no exemplo abaixo um gráfico um pouco mais detalhado e extenso.
Existem várias ferramentas online para criação desses gráficos e gestão de projetos, inclusive o Excel também tem como criar gráficos de Gantt.
Ler

22 de setembro de 2020

CSS: Filtros (drop-shadow, grayscale, saturate, sepia e invert)


 


No post de hoje continuaremos falando de mais alguns filtros do CSS, caso não tenha visto o post anterior CSS: Filtros (opacity, brightness, contrast e blur)


Começando com o sepia, como o nome já diz ele vai converter a imagem em sépia, onde 0% significa a imagem original e 100% é sépia por completo, qualquer valor entre isso é uma mistura da original com o tom de sépia.

.filtered {

  filter:sepia(100%);

}


O filtro saturate vai mexer com a saturação da imagem onde eu posso adicionar ou remover a saturação onde 100% é a imagem original, então caso queira aumentar deve ser valores maiores que isso (200% por exemplo) e para diminuir pode colocar entre 0 e 99%.

.filtered {

  filter:saturate(80%);

}


Converte a imagem em escala de cinza quanto maior a porcentagem mais evidente fica a escala de cinza.

.filtered {

  filter:grayscale(100%);

}


Esse filtro cria uma sombra no objeto, nesse exemplo vou colocar uma sombra um pouco abaixo, para a direita com um leve desfoque e na cor cinza. A ordem dos parâmetros é a seguinte, sombra horizontal, sombra vertical, desfoque e cor.

.filtered {

  filter:drop-shadow(8px 8px 10px gray);

}


Esse filtro inverte as cores da imagem, semelhante ao que tínhamos nos negativos de fotos. O valor de 0% é da imagem original e 100% é a imagem totalmente invertida.

.filtered {

  filter:invert(100%);

}

Ler

15 de setembro de 2020

CSS: Filtros (opacity, brightness, contrast e blur)


No post de hoje irei mostrar alguns filtros bem interessantes do CSS. Principalmente utilizados em imagens.

Primeiro um dos filtros mais usados é o opecity, ele controla a opacidade do objeto, ele é muito utilizado para fotos, principalmente para fotos de fundo onde um texto ficará na sua frente dando assim uma melhor leitura. Para utilizá-lo é bem simples, apenas coloque a porcentagem de opacidade que deseja que o objeto fique.

.filtered {

  filter: opacity(70%);

}


Outro filtro seria o de brilho, bastante utilizado para dar um retoque de claridade a imagem ou para clarear a cor de um objeto de uma forma um pouco diferente do que apenas trocar a cor. No exemplo abaixo irei remover um pouco do brilho, por isso utilizo valores abaixo de 100%

.filtered {

  filter: brightness(50%);

}


Agora se não for o brilho que esteja faltando na imagem, mas sim o contraste o filtro a ser usado é o contrast, também definindo em porcentagem, no caso vou adicionar 40% ao contraste original da foto.

.filtered {

  filter: contrast(140%);

}


Este filtro causa um desfoque na foto, também muito interessante para usar em imagens de fundo com algum texto na frente. Segue um exemplo:

.blured {

  filter: blur(5px);

}

Ler

8 de setembro de 2020

Certificados digitais ganham cada vez mais importância





Os Certificados Digitais são como chaves eletrônicas que abrem também "abrem portas" garantindo a autenticidade e a segurança no mundo online. Ele está sendo cada vez mais usado por empresas de todos os tipos pois é muito vantajoso seu uso e de certa forma com um custo baixo fazendo com que o mercado cresça bastante.

Existem vários tipos de certificados, vamos falar sobre os principais:

Certificado A
Esse certificado vem na forma de assitura digital, como se fosse quando você assina um documento com caneta, ele é utilizado para "assinar" um documento ou transação, mostrando que é autentica com seu titular possuindo inclusive validade jurídica. É muito conhecido por ser usado em Notas fiscais, prescrições médicas digitais, leilões online, enfim uma infinidade de documentos digitais que se comparados com os físicos requiririam assinatura.

Ele existe em vários formatos onde cada um pode variar o tempo de validade ou a forma de se instalar no computador, sendo os mais conhecidos os A1 e A3.


Certificado S
Esse certificado é de sigilo, ou seja, ele criptografa os dados enviados na transação ou que serão armazenados com uma dupla de chaves onde apenas quem tem a chave pode decriptar. Ele também tem alguns subtipos S1, S2, S3 e S4, e suas diferenças estão ligadas ao armazenamento.


Certificado T
O certificado tipo T são de certa forma parecidos com o certificado do tipo A, mas com um adicional de time-stamping que significa “marca de tempo”. Então além de assinar um documento ou transação ele marca quando isso ocorreu com data e hora. Ele tem duas opções T3 e T4.
Ler

3 de setembro de 2020

Python: List Comprehension


 

 Recentemente comecei a estudar Python, e um dos recursos que mais achei interessantes foram as Comprehensions.

As comprehensions nada mais são que uma maneira sucinta de gerar novos objetos a partir de outros objetos iteráveis (listas, sets, dicts, etc). São muito utilizadas para substituir instruções for mais simples, ou funções como map e filter.

Neste artigo vou exemplificar apenas as List Comprehension, pois, além de serem as mais simples, a lógica para as demais (set, dict, etc) é a mesma, mudando apenas o tipo de dado a ser tratado.

A sintaxe mais básica de uma list comprehension é:

[expressão for item in iterável]

Exemplo:

 

Podemos condicionar os dados que queremos retornar com if.

[expressão for item in iterável if condição]

Exemplo:

 

Também podemos utilizar o else quando queremos condicionar nossos dados

[expressão se verdadeiro if condição else expressão se falso for item in iterável]

 

Para finalizarmos nosso post, vale ressaltar que onde temos a "expressão", podemos fazer uso de funções, mudar o tipo de dado a ser retornado, utilizar outra comprehension, enfim, as possibilidades são muitas. Mas é muito importante ter em mente que devemos sempre seguir os princípios descritos no "The Zen Of Python". Então se sua comprehension está ficando muito complicada e/ou complexa, talvez seja melhor fazer uso da boa e velha instrução for.


Até a próxima!

Ler

1 de setembro de 2020

SQL: DateDiff calculando datas


No post de hoje irei mostrar uma forma de se calcular datas no SQL, esse calcular seria realmente fazer a diferença de uma data para outra.

Para isso iremos usar a função DATEDIFF que como o nome bem intuitivo diz, nos retorn a diferença entre uma data inicial para uma data final e ainda permite que eu escolha entre vários tipos de retorno qual desejo (segundos, horas, meses etc.).

A sintaxe é DATEDIFF (TipoDeDado, DataInicial, DataFinal)

No tipo de dado os mais comuns são:
  1. year
  2. month
  3. day
  4. hour
  5. minute
  6. second
  7. millisecond

Um exemplo para ilustrar seria SELECT DATEDIFF(day, '2020-09-01', '2020-09-03')

A lista completa pode ser vista na documentação oficial: Microsoft
Ler