Charles Carrari apresenta ferramentas de virtualização como Vagrant e Docker para simplificar o desenvolvimento front-end. Ele discute os principais problemas enfrentados por desenvolvedores front-end e como essas ferramentas podem ajudar a resolver problemas de compatibilidade, replicação de ambientes e diferenças entre desenvolvimento e produção. Carrari também fornece exemplos e links para aprender mais sobre Vagrant e Docker.
O documento discute o desenvolvimento PHP usando Vagrant para criar ambientes de desenvolvimento virtualizados, consistentes e portáteis. Ele introduz o Vagrant, explica como ele automatiza a configuração de hardware, sistema operacional e softwares usando boxes, provisionamento e comandos simples. O documento também fornece exemplos de Vagrantfiles e projetos open source que usam Vagrant.
Pretendo apresentar o que a Zend solicita na certificação sobre segurança de aplicações PHP, iremos gerar juntos algumas simples invasões em um pequeno sistema e pretende com o exemplo explicar como podemos nos defender com alguma técnicas que serão ensinadas e que são pedidas na prova da Zend.
O documento discute o padrão async/await em programação assíncrona, explicando seus benefícios como alternativa a estilos de programação síncronos e com callbacks. Apresenta exemplos de implementação em diversas linguagens e discute conceitos importantes como threads, I/O assíncrono e otimização de recursos. Também lista erros comuns e dicas para uma implementação correta do padrão.
Acostumado a sempre ouvir falar de: Zend FrameWork, Laravel, symfony e entre outros ? - Porém existem outras ferramentas que não precisam ser verdadeiros canhões e que seja possível organizar, trabalhar com reutilização de código e etc. Que tal utilizar então um : micro-framework para ajudar nessas rotinas mais comuns e imagine que esse micro-framework seja baseado no symfony ? Essa maravilha é o Silex que para quem está começando a se organizar e deseja entrar no mundo PHP profissional tais como, testes, API's, MVC, módulos próprios, services e entre outros irá ajudar a trilhar esse caminho sem muita dor de cabeça. A palestra visa mostrar os seguintes assuntos:
* O que é um micro-framework
* Por que devo utilizar ?
* Silex X Lumen !
* Instalando o Silex
* Serviços
* Rotas
* Twig - Utilização básica
* Doctrine - Utilização básica
* Monolog
Testando uma aplicação AngularJS utilizando o KarmaHenrique Limas
Realize testes unitários de modo amigavel e eficiente utilizando AngularJS e o Karma runner. Deixe o seu teste unitário que seja de compreenssão para todos, não so desenvolvedores, utilizando a biblioteca Jasmine para descrever os testes.
O documento descreve um projeto de desenvolvimento de um sistema de agendamento e gerenciamento de cartões em 3 fases, refatorando e melhorando o projeto. A primeira fase usou os conceitos do autor na época, a segunda aplicou novos conceitos após estudos, e a terceira desenvolveu uma API com o Silex como framework PHP e Angular como cliente. O autor aprendeu diversos conceitos, tecnologias e métodos, e listou as fontes de conhecimento usadas.
O documento discute o desenvolvimento PHP usando Vagrant para criar ambientes de desenvolvimento virtualizados, consistentes e portáteis. Ele introduz o Vagrant, explica como ele automatiza a configuração de hardware, sistema operacional e softwares usando boxes, provisionamento e comandos simples. O documento também fornece exemplos de Vagrantfiles e projetos open source que usam Vagrant.
Pretendo apresentar o que a Zend solicita na certificação sobre segurança de aplicações PHP, iremos gerar juntos algumas simples invasões em um pequeno sistema e pretende com o exemplo explicar como podemos nos defender com alguma técnicas que serão ensinadas e que são pedidas na prova da Zend.
O documento discute o padrão async/await em programação assíncrona, explicando seus benefícios como alternativa a estilos de programação síncronos e com callbacks. Apresenta exemplos de implementação em diversas linguagens e discute conceitos importantes como threads, I/O assíncrono e otimização de recursos. Também lista erros comuns e dicas para uma implementação correta do padrão.
Acostumado a sempre ouvir falar de: Zend FrameWork, Laravel, symfony e entre outros ? - Porém existem outras ferramentas que não precisam ser verdadeiros canhões e que seja possível organizar, trabalhar com reutilização de código e etc. Que tal utilizar então um : micro-framework para ajudar nessas rotinas mais comuns e imagine que esse micro-framework seja baseado no symfony ? Essa maravilha é o Silex que para quem está começando a se organizar e deseja entrar no mundo PHP profissional tais como, testes, API's, MVC, módulos próprios, services e entre outros irá ajudar a trilhar esse caminho sem muita dor de cabeça. A palestra visa mostrar os seguintes assuntos:
* O que é um micro-framework
* Por que devo utilizar ?
* Silex X Lumen !
* Instalando o Silex
* Serviços
* Rotas
* Twig - Utilização básica
* Doctrine - Utilização básica
* Monolog
Testando uma aplicação AngularJS utilizando o KarmaHenrique Limas
Realize testes unitários de modo amigavel e eficiente utilizando AngularJS e o Karma runner. Deixe o seu teste unitário que seja de compreenssão para todos, não so desenvolvedores, utilizando a biblioteca Jasmine para descrever os testes.
O documento descreve um projeto de desenvolvimento de um sistema de agendamento e gerenciamento de cartões em 3 fases, refatorando e melhorando o projeto. A primeira fase usou os conceitos do autor na época, a segunda aplicou novos conceitos após estudos, e a terceira desenvolveu uma API com o Silex como framework PHP e Angular como cliente. O autor aprendeu diversos conceitos, tecnologias e métodos, e listou as fontes de conhecimento usadas.
Autenticação, Documentação, Padronização, Negociação de Conteúdo, escolha do framework (Laravel vs Lumen), pacotes que podem ajudar, boas práticas, dicas de segurança, recursos úteis. Várias lições aprendidas ao se montar uma API pública para outros devs utilizarem.
Link para o vídeo da apresentação: https://youtu.be/3GAF2t5Qohc
Laravel 5: Entenda o ambiente e a estrutura MVCMichael Douglas
O documento resume os principais conceitos do framework Laravel, como a estrutura MVC, instalação, configuração de banco de dados, controllers, models, migrations e views.
O documento discute a ferramenta Gulp.js para automatização de tarefas, explicando o que é Gulp e como instalá-lo e configurá-lo. Também discute a diferença entre Gulp e Grunt e como criar tarefas básicas em Gulp, como minificar arquivos JavaScript.
O documento fornece dicas sobre boas práticas de programação no WordPress, incluindo não usar a função query_posts(), estruturar templates em partes, usar WP_Query em loops e separar regra de negócio de templates.
Os 10 maus hábitos dos desenvolvedores JSFRafael Ponte
O documento lista os 10 piores hábitos de desenvolvedores JSF e fornece soluções para cada um. 1) A maioria dos desenvolvedores não entende plenamente o ciclo de vida do JSF; 2) Componentes AJAX são usados de forma ineficiente; 3) Paginação de registros na sessão mata a escalabilidade.
1) O documento discute a instalação e configuração do Python e do Virtualenv em uma máquina virtual usando Vagrant para permitir o desenvolvimento de projetos Python/Django de forma isolada;
2) É explicado passo a passo como provisionar a VM para instalar as bibliotecas necessárias e criar um ambiente virtual para o projeto;
3) O objetivo é ter um ambiente semelhante ao de produção utilizando Linux na VM.
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)Rafael Ponte
O documento lista 10 maus hábitos comuns de desenvolvedores JSF. Estes incluem usar tags JSTL para esconder componentes em vez de atributos rendered, alterar estado de componentes no lado cliente, e não entender completamente o ciclo de vida do JSF. O documento fornece soluções como usar atributos rendered, alterar estado via AJAX, e estudar o ciclo de vida do JSF para desenvolver de forma mais eficiente.
Curso introdutório de ReactJS.
ReactJS é uma ferramente de desenvolvimento Web criada pelo Facebook.
No curso abordaremos uma abordagem introdutória ao assunto, explorando o básico para desenvolver um site somente com front-end
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...As Zone
O documento fornece dicas sobre desenvolvimento seguro, discutindo três vulnerabilidades comuns: injeção SQL, upload de arquivos e download/divulgação de arquivos locais. Ele alerta que artigos online sobre essas questões nem sempre são seguros e oferece conselhos como validação de entrada de dados e configurações de permissão para ajudar a evitar esses problemas.
Migrations for Java (Javou #4 - JavaCE)Rafael Ponte
O documento descreve a evolução incremental de um banco de dados utilizando migrations. As principais etapas descritas são: 1) Criar scripts SQL para cada mudança no banco de dados; 2) Rodar os scripts no banco de forma controlada; 3) Versionar as mudanças realizadas no banco.
Minicurso Play Framework - Tão fácil que nem parece JavaWandesson Soares
O documento fornece informações sobre um minicurso sobre o framework Play para desenvolvimento web Java. O minicurso terá duração de 3 horas e ensinará os conceitos básicos do Play para que os participantes possam construir uma aplicação simples de CRUD. O documento explica características do Play como arquitetura, facilidade de uso, templates em Scala e casos de uso reais.
O documento fornece instruções passo-a-passo para instalar o Oracle VM VirtualBox, criar uma máquina virtual e instalar um sistema operacional dentro dela, como o Windows Server 2008.
O documento discute técnicas para burlar um WAF (Web Application Firewall), incluindo detectar a presença de um WAF, usar variações de caixa, substituir palavras-chave, adicionar comentários, codificar payloads, automatizar ataques e sugestões para mitigação.
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...Daniel Makiyama
Interface de Usuário também é coisa de Programador, o objetivo deste treinamento é vivenciar um ambiente de desenvolvimento empregando estas tecnologias, abordando conceitos de testes unitários, integrados, padrões e boas práticas de desenvolvimento
Este documento fornece informações sobre como burlar um WAF (Web Application Firewall) em 3 frases ou menos. O documento discute técnicas como usar maiúsculas e minúsculas, substituir palavras-chave, usar espaços em branco como comentários e codificar payloads para evitar detecção. Ele também descreve ferramentas para automatizar ataques como Payloadmask e 0d1n.
Este documento discute como viver como hacker ético. Apresenta o autor Antonio Costa e seu trabalho como desenvolvedor de segurança e membro do BugSec Team. Discute várias maneiras de seguir uma carreira em segurança cibernética, incluindo participar de conferências, hackerspaces e publicações on-line. Também aborda vários tipos de vulnerabilidades e técnicas de hacking ético, como SQL injection e fuzzing.
O documento discute o uso de Vagrant e Docker para criar ambientes de desenvolvimento isolados e configurados automaticamente. Vagrant permite criar máquinas virtuais idênticas em diferentes sistemas operacionais, enquanto Docker facilita a criação e uso de containers leves com aplicações e serviços. Ambas as ferramentas automatizam a configuração do ambiente e isolam as dependências do projeto.
O documento apresenta a ferramenta Vagrant como uma forma de facilitar a configuração e gerenciamento de ambientes de desenvolvimento através de máquinas virtuais. Ele descreve como o Vagrant permite criar rapidamente ambientes isolados com todas as dependências instaladas em menos de 15 minutos, e como essas configurações podem ser compartilhadas através de "boxes" prontas para uso. Também mostra os passos básicos para instalar e configurar o Vagrant em diferentes sistemas operacionais.
Autenticação, Documentação, Padronização, Negociação de Conteúdo, escolha do framework (Laravel vs Lumen), pacotes que podem ajudar, boas práticas, dicas de segurança, recursos úteis. Várias lições aprendidas ao se montar uma API pública para outros devs utilizarem.
Link para o vídeo da apresentação: https://youtu.be/3GAF2t5Qohc
Laravel 5: Entenda o ambiente e a estrutura MVCMichael Douglas
O documento resume os principais conceitos do framework Laravel, como a estrutura MVC, instalação, configuração de banco de dados, controllers, models, migrations e views.
O documento discute a ferramenta Gulp.js para automatização de tarefas, explicando o que é Gulp e como instalá-lo e configurá-lo. Também discute a diferença entre Gulp e Grunt e como criar tarefas básicas em Gulp, como minificar arquivos JavaScript.
O documento fornece dicas sobre boas práticas de programação no WordPress, incluindo não usar a função query_posts(), estruturar templates em partes, usar WP_Query em loops e separar regra de negócio de templates.
Os 10 maus hábitos dos desenvolvedores JSFRafael Ponte
O documento lista os 10 piores hábitos de desenvolvedores JSF e fornece soluções para cada um. 1) A maioria dos desenvolvedores não entende plenamente o ciclo de vida do JSF; 2) Componentes AJAX são usados de forma ineficiente; 3) Paginação de registros na sessão mata a escalabilidade.
1) O documento discute a instalação e configuração do Python e do Virtualenv em uma máquina virtual usando Vagrant para permitir o desenvolvimento de projetos Python/Django de forma isolada;
2) É explicado passo a passo como provisionar a VM para instalar as bibliotecas necessárias e criar um ambiente virtual para o projeto;
3) O objetivo é ter um ambiente semelhante ao de produção utilizando Linux na VM.
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)Rafael Ponte
O documento lista 10 maus hábitos comuns de desenvolvedores JSF. Estes incluem usar tags JSTL para esconder componentes em vez de atributos rendered, alterar estado de componentes no lado cliente, e não entender completamente o ciclo de vida do JSF. O documento fornece soluções como usar atributos rendered, alterar estado via AJAX, e estudar o ciclo de vida do JSF para desenvolver de forma mais eficiente.
Curso introdutório de ReactJS.
ReactJS é uma ferramente de desenvolvimento Web criada pelo Facebook.
No curso abordaremos uma abordagem introdutória ao assunto, explorando o básico para desenvolver um site somente com front-end
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...As Zone
O documento fornece dicas sobre desenvolvimento seguro, discutindo três vulnerabilidades comuns: injeção SQL, upload de arquivos e download/divulgação de arquivos locais. Ele alerta que artigos online sobre essas questões nem sempre são seguros e oferece conselhos como validação de entrada de dados e configurações de permissão para ajudar a evitar esses problemas.
Migrations for Java (Javou #4 - JavaCE)Rafael Ponte
O documento descreve a evolução incremental de um banco de dados utilizando migrations. As principais etapas descritas são: 1) Criar scripts SQL para cada mudança no banco de dados; 2) Rodar os scripts no banco de forma controlada; 3) Versionar as mudanças realizadas no banco.
Minicurso Play Framework - Tão fácil que nem parece JavaWandesson Soares
O documento fornece informações sobre um minicurso sobre o framework Play para desenvolvimento web Java. O minicurso terá duração de 3 horas e ensinará os conceitos básicos do Play para que os participantes possam construir uma aplicação simples de CRUD. O documento explica características do Play como arquitetura, facilidade de uso, templates em Scala e casos de uso reais.
O documento fornece instruções passo-a-passo para instalar o Oracle VM VirtualBox, criar uma máquina virtual e instalar um sistema operacional dentro dela, como o Windows Server 2008.
O documento discute técnicas para burlar um WAF (Web Application Firewall), incluindo detectar a presença de um WAF, usar variações de caixa, substituir palavras-chave, adicionar comentários, codificar payloads, automatizar ataques e sugestões para mitigação.
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...Daniel Makiyama
Interface de Usuário também é coisa de Programador, o objetivo deste treinamento é vivenciar um ambiente de desenvolvimento empregando estas tecnologias, abordando conceitos de testes unitários, integrados, padrões e boas práticas de desenvolvimento
Este documento fornece informações sobre como burlar um WAF (Web Application Firewall) em 3 frases ou menos. O documento discute técnicas como usar maiúsculas e minúsculas, substituir palavras-chave, usar espaços em branco como comentários e codificar payloads para evitar detecção. Ele também descreve ferramentas para automatizar ataques como Payloadmask e 0d1n.
Este documento discute como viver como hacker ético. Apresenta o autor Antonio Costa e seu trabalho como desenvolvedor de segurança e membro do BugSec Team. Discute várias maneiras de seguir uma carreira em segurança cibernética, incluindo participar de conferências, hackerspaces e publicações on-line. Também aborda vários tipos de vulnerabilidades e técnicas de hacking ético, como SQL injection e fuzzing.
O documento discute o uso de Vagrant e Docker para criar ambientes de desenvolvimento isolados e configurados automaticamente. Vagrant permite criar máquinas virtuais idênticas em diferentes sistemas operacionais, enquanto Docker facilita a criação e uso de containers leves com aplicações e serviços. Ambas as ferramentas automatizam a configuração do ambiente e isolam as dependências do projeto.
O documento apresenta a ferramenta Vagrant como uma forma de facilitar a configuração e gerenciamento de ambientes de desenvolvimento através de máquinas virtuais. Ele descreve como o Vagrant permite criar rapidamente ambientes isolados com todas as dependências instaladas em menos de 15 minutos, e como essas configurações podem ser compartilhadas através de "boxes" prontas para uso. Também mostra os passos básicos para instalar e configurar o Vagrant em diferentes sistemas operacionais.
O documento apresenta o Vagrant, uma ferramenta que agiliza a configuração de ambientes de desenvolvimento virtuais. O Vagrant automatiza a instalação de sistemas operacionais e softwares em máquinas virtuais, tornando os ambientes leves, reproduzíveis e portáteis. O documento demonstra como usar os principais comandos do Vagrant e fornece referências para aprender mais sobre a ferramenta.
DevOps e automação são abordados como forma de melhorar o fluxo de trabalho entre equipes de desenvolvimento e operações. Ferramentas como Ansible, Chef, Puppet, Packer, Vagrant e Docker são apresentadas para automatizar a configuração e implantação de infraestrutura e aplicações. A apresentação também discute a importância da automação contínua para integrar e entregar código de forma rápida e confiável.
Construção e provisionamento de ambientes de desenvolvimento virtualizadosThiago Rodrigues
O documento resume as vantagens da virtualização do ambiente de desenvolvimento usando ferramentas como Vagrant e Docker. Ele discute como essas ferramentas padronizam e automatizam o provisionamento do ambiente, facilitam atualizações e contribuições, e reduzem o tempo de preparação do ambiente. O documento também fornece exemplos de como configurar ambientes virtuais com Vagrant e Docker para projetos PHP.
Vagrant - ambiente de desenvolvimento virtualizadoVinícius Krolow
Talk apresentada no Tchêlinux - Pelotas (2014)
Falando de ambientes de desenvolvimento virtual, apontando as facilitades/vantagens do uso do mesmo, e usando vagrant como ferramenta criar esses ambientes
O documento discute a criação de máquinas virtuais para testes de segurança, recomendando o Windows XP como um sistema operacional inicial para cobaias devido ao seu grande número de usuários e vulnerabilidades. Também descreve configurações avançadas do VirtualBox para customizar máquinas virtuais.
Java script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.jsVinicius Reis
O documento discute a complexidade do ecossistema JavaScript e como Vue.js pode ajudar a simplificar o desenvolvimento front-end. Ele explica conceitos como EcmaScript, Node, pacotes, task runners, transpilers, bundlers e testes. Em seguida, apresenta o framework Vue.js como uma forma progressiva de construir interfaces com componentes de único arquivo que oferecem renderização do lado do servidor e do cliente.
Muitos desenvolvedores se preocupam bastante com os aspectos estáticos dos sistemas que constroem, tais como se o código está bonito, se está idiomático, se está seguindo um determinado styleguide, entre outros bullet points do bom design de código; e isso é muito bom. Mas isso não é tudo. Há ainda o aspecto real da coisa, o Runtime. É no Runtime que ômis e mininus se sobressaem. E essa apresentação é sobre com o que os ômis mais se preocupam quanto estão escrevendo sistemas críticos – para o Mundo Real, é lógico.
O documento discute o que é Vagrant e como ele pode ser usado para automatizar a criação de máquinas virtuais e ambientes de desenvolvimento idênticos. Vagrant permite que múltiplos desenvolvedores trabalhem no mesmo ambiente de aplicação, facilita o gerenciamento de dependências e melhora o onboarding de novos membros da equipe. O documento também lista algumas vantagens e dependências do Vagrant como VirtualBox e Ansible.
A apresentação discute a importância da depuração para desenvolvedores, fornecendo um guia rápido em 8 etapas para depuração eficiente e como utilizar as ferramentas de depuração no Visual Studio Code.
O documento fornece uma introdução sobre automação de testes de software com Selenium e BDD, focando no front-end. Ele discute conceitos como ágil, TDD, BDD, frameworks para teste end-to-end, HTML, CSS, XPath, e dá instruções sobre como configurar o ambiente de desenvolvimento com Node.js, TypeScript, Git e navegadores.
O documento discute as desvantagens de publicar arquivos manualmente em produção e propõe a adoção de estratégias de deploy automatizado como Continuous Integration e Continuous Delivery. O autor apresenta ferramentas como Git, Capistrano e outros para automatizar o deploy e garantir que as alterações sejam publicadas de forma segura, controlada e revertida caso necessário. Ele também enfatiza a importância de testes automatizados e ambientes de homologação para evitar problemas.
O documento discute o uso de máquinas virtuais para aprender invasão de computadores de forma ética, sem danificar sistemas de terceiros. Ele explica o que são máquinas virtuais e como elas permitem praticar invasão e outros conceitos de segurança de forma segura em ambientes virtuais isolados. O Oracle VM VirtualBox é recomendado como software de virtualização gratuito e fácil de usar para esses fins.
TDC2016SP - Versionando sua infraestrutura: Como e porque fazer, baseado em c...tdc-globalcode
O documento discute os benefícios da versionamento da infraestrutura usando ferramentas de orquestração como Chef e Ansible, incluindo a redução de riscos de falhas, menos dependência de pessoas e melhor monitoramento. É apresentada a experiência da empresa Rivendel na implantação de cultura DevOps e na migração de clientes para ambientes na nuvem.
Resumo do Webinar
Encontrar bugs em software não é fácil, mas é uma habilidade que todo desenvolvedor(a) deve procurar melhorar. Muitos(as) utilizam apenas o “print no código” para encontrar problemas, mas diversas outras técnicas e ferramentas estão disponíveis e são muito mais eficientes em determinadas situações. Diferentes tipos de problemas como travamentos, crashes, erros de lógica, vazamentos de recursos e problemas de desempenho exigirão diferentes ferramentas e técnicas, incluindo análise de core dump, tracing, profiling, depuração interativa, etc. Neste webinar, os participantes aprenderão a aplicar diferentes técnicas e utilizar diferentes ferramentas para depurar sistemas com Linux embarcado, incluindo GDB, addr2line, strace, ltrace, perf, valgrind, gprof, ftrace, etc!
Convidado: Sergio Prado
Tech Lead na Toradex, Professor na Embedded Labworks
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsJosé Alexandre Macedo
Apresentado para o Pop-ES e NPD da Ufes. Conheça o significado de DevOps e como ele pode apoiar entregas mais rápidas de software por meio da mudança de cultura, automatização entre outras...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...tdc-globalcode
O documento resume o framework Blazor da Microsoft, que permite criar aplicações web interativas usando C# no lado do cliente, sem plugins. Explica que o Blazor compila C# para WebAssembly, permitindo que o código rode diretamente no navegador. Detalha alguns recursos e limitações atuais do Blazor, que é um projeto experimental da Microsoft.
O documento descreve o framework CakePHP, incluindo suas vantagens, requisitos, instalação e configuração. O autor também apresenta um exemplo de aplicação para empréstimos de livros entre professores e alunos utilizando o CakePHP.
O documento discute a virtualização de ambientes usando containers Docker para facilitar a manutenção e otimizar recursos. Containers consomem poucos recursos, permitem empacotar aplicações de forma aditiva e facilitam a segurança e orquestração de soluções complexas de forma automatizada.
Semelhante a JS Experience 2017 - Utilizando a virtualização para simplificar o desenvolvimento front-end (20)
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroiMasters
1. O documento apresenta os principais modelos de bancos de dados NoSQL: chave-valor (Redis), orientado a documentos (MongoDB), orientado a colunas (Cassandra) e orientado a grafos (Neo4j).
2. Nos modelos orientados a documentos e colunas, o documento discute quando usar dados embutidos versus referenciados, enquanto no modelo de grafos destaca a importância dos nós e relacionamentos.
3. O documento fornece dicas sobre modelagem de dados em cada modelo, incluindo tipos de dados, índices
Postgres: wanted, beloved or dreaded? - Fabio TellesiMasters
O PostgreSQL começou a ser desenvolvido em 1986 e tem ganhado bastante destaque nos últimos anos, como o banco de dados que mais cresce no mercado. Conheça as vantagens e desvantagens em se utilizar o banco de dados Open Source mais avançado do mundo.
Por que minha query esta lenta? - Suellen MoraesiMasters
Durante os anos de experiencia percebi que grande parte dos desenvolvedores possuem dificuldade em iniciar o troubleshooting de suas queries, muitas vezes sobrecarregando o DBA em muitos dos casos com queries simples. O intuito desta palestrar é mostrar o "caminho das pedras" para despertar nos desenvolvedores a necessidade de se conhecer o funcionamento da ferramenta utilizada e visando os desenvolvimentos futuros tendo como foco o pensamento em performance do código escrito e dicas de melhores códigos.
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...iMasters
O documento discute os problemas recorrentes encontrados em bancos de dados, como versões de patch desatualizadas, falta de testes de disponibilidade e índices, e enfatiza a importância da preparação para imprevistos e da alta disponibilidade. O autor é um especialista em banco de dados com 11 anos de experiência que oferece consultoria para identificar e resolver esses problemas.
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesiMasters
Com a evolução dos aplicativos nascem novas técnicas, frameworks, linguagens de programação, porém, existe um fato consolidado dentro da arquitetura de software corporativo que é a integração com alguma tecnologia necessária para armazenar as informações inerentes ao sistema. Seja SQL ou NoSQL um ponto importante é que o paradigma das linguagens difere da tecnologia do banco de dados. Com o intuito de facilitar o desenvolvimento surgem as ferramentas que realizam a interpretação entre a camada da aplicação e os bancos. Assim, aparecem grandes desafios: como lidar com essa lacuna multiparadigma? Como favorecer o desenvolvimento sem impactar a performance e a modelagem no banco de dados? O objetivo dessa palestra é falar um pouco desses pontos para que, finalmente, os programadores e os DBAs conseguam viver em paz e harmonia.
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...iMasters
Neste bate papo vamos discutir quais as vantagens de cada banco de dados no mundo real. Quando devemos utilizar o NoSQL ao invés do SQL ou vice-versa comparando os principais bancos de dados open source de cada segmento, o MongoDB e o MySQL
Arquitetando seus dados na prática para a LGPD - Alessandra MartinsiMasters
Diante das novas regulamentações externas (GDPR), e a nova legislação Brasileira sobre Proteção de Dados Pessoais (LGPD), o que fazer para se adequar? Por Onde começar? O que Fazer? E o que não fazer? Para que serve a Governança de Dados e como ela pode ajudar sua empresa no processo de adequação/conformidade a padrões internacionais de Privacidade e Segurança da Informação? Diante de tantos caminhos e desafios, um overview do que se trata, por onde começar o caminho, algumas armadilhas a evitar, e algumas boas práticas para não apenas se proteger, mas evitar futuros problemas.
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...iMasters
O documento discute o papel do DBA no mundo da ciência de dados e machine learning. Ele descreve como os DBAs precisam se adaptar às novas tecnologias e aprender habilidades como análise e modelagem de dados para acompanhar a evolução da área. Recomenda que os DBAs demonstrem interesse em entender os processos dos cientistas de dados e colaborem sem barreiras entre as equipes.
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana ChahoudiMasters
Juliana Chahoud - Consultora, ThoughtWorks
Com tantas empresas adotando a estratégia "Mobile-First" (dispositivos móveis em primeiro), uma das grandes decisões que um time de desenvolvimento precisa tomar é: qual tech stack usar para mobile?
Diversas tecnologias e linguagens podem ser adotadas, como Swift, Java, Kotlin, React Native, Flutter, Progressive Web App, criação de sites responsivos, etc...
No entanto, com tantas variáveis a serem consideradas, essa decisão passou a ser não trivial e que pode trazer grandes consequências a longo prazo e até mesmo inviabilizar um projeto.
Nessa palestra serão discutidos os prós e contras de diversas abordagens, para que você possa ter um guia para tomar decisões mais corretas no uso dessas tecnologias
Palestra apresentada no InterCon 2018 - https://eventos.imasters.com.br/intercon
Use MDD e faça as máquinas trabalharem para você - Andreza LeiteiMasters
Este documento discute o desenvolvimento orientado a modelos (MDD) e suas vantagens, como maior produtividade, qualidade e facilidade de manutenção através do uso de modelos e geração de código. Apresenta também algumas ferramentas e linguagens de MDD, e alerta para possíveis problemas como rigidez de soluções e dependência de ferramentas limitadas.
Entendendo os porquês do seu servidor - Talita BernardesiMasters
O documento discute a importância da performance para servidores. Ele explica que lentidão não é mais aceitável e clientes infelizes significam produtos ruins. Também recomenda monitorar recursos de servidores, otimizar serviços e aplicações, escolher máquinas apropriadas e atualizar configurações, já que máquinas não duram para sempre.
Backend performático além do "coloca mais máquina lá" - Diana ArnosiMasters
Trabalhar a performance no backend vai muito além de simplesmente ""colocar mais máquinas atrás do loadbalancer""
. Vamos apontar alguns gargalos comuns que podem ser tratados ou evitados desde o começo do desenvolvimento, já que não dependem da tecnologia utilizada.
Dicas para uma maior performance em APIs REST - Renato GroffeiMasters
Renato Groffe - Engenheiro de Software, Canal .NET
O que posso fazer em termos de bancos de dados para obter APIs que executem seu trabalho de forma otimizada e com maior velocidade?
Que soluções para cache podem ser empregadas? E que tal tratar os retornos destas APIs, reduzindo o volume dos dados trafegados?
E quanto a problemas de performance, o que utilizar para facilitar a detecção destes tipos de ocorrências? Acompanhe esta apresentação para obter respostas a estas questões durante o desenvolvimento de APIs REST.
Palestra realizada no InterCon 2018 - https://eventos.imasters.com.br/intercon
7 dicas de desempenho que equivalem por 21 - Danielle MonteiroiMasters
Este documento fornece 21 dicas para melhorar o desempenho de bancos de dados, incluindo modelar corretamente os dados, entender o modelo de dados, verificar as operações e queries mais importantes, realizar manutenção de índices, e selecionar apenas os atributos necessários nas queries.
Quem se importa com acessibilidade Web? - Mauricio MaujoriMasters
O documento discute a importância da acessibilidade na web e como projetar sites e aplicativos web de forma acessível. Ele enfatiza que a acessibilidade é essencial para desenvolvedores e organizações que desejam criar produtos e serviços inclusivos. O documento também discute como começar a projetar sites acessíveis usando HTML5 semântico e focando na usabilidade, além de recomendar os padrões WCAG para acessibilidade.
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaiMasters
O documento apresenta uma discussão sobre a arquitetura monolítica versus microserviços e como o Service Mesh com Istio e Kubernetes pode resolver problemas de comunicação entre serviços distribuídos. O palestrante discute as vantagens e desvantagens de ambas as arquiteturas e como ferramentas como Docker, Kubernetes e Istio podem ser usadas para orquestrar contêineres e fornecer funcionalidades como balanceamento de carga, segurança e monitoramento para aplicações de microserviços.
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto PascuttiiMasters
Augusto Pascutti - Developer, Creditas
Para o quê eles servem e como usá-los de forma mais eficiente, seja através de integrações com outras ferramentas ou só seguindo receitas de como as mensagens de erro devem ser geradas e compostas.
Apresentado no InterCon 2018: https://eventos.imasters.com.br/intercon
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...iMasters
Rubens Guimarães - CEO, e-Seth
Como projetar e colocar em prática bancos de dados inteligentes SQL e NoSQL em ambientes de alto consumo de dados.
Técnicas de sharding, tunning, elasticidade automatizada em ambientes cloud e outros recursos.
Apresentado no InterCon 2018 - https://eventos.imasters.com.br/intercon
Construindo aplicações mais confiantes - Carolina KarklisiMasters
Carolina Karklis - Software developer, Magnetis
O hype da orientação a objetos passou e com ele precisamos rever algumas práticas.
Até mesmo o codebase mais limpo pode ter mensagens de erro precárias, checagens de tipo de dado em excesso, e uso dispensável de variáveis nulas.
Nessa talk vou refatorar um sistema frágil e mostrar estratégias dentro do paradigma de orientação a objetos para escrever código de forma mais simples e confiante.
No processo, vamos ver padrões de arquitetura de software que podemos usar, como melhorar mensagens para cenários de input inesperado e remover todas as variáveis nulas possíveis do nosso código.
Monitoramento de Aplicações - Felipe RegalgoiMasters
Felipe Regalgo apresenta diversas ferramentas de monitoramento e análise de aplicações e serviços, incluindo New Relic para monitoramento de desempenho, Datadog para métricas customizadas, Hotjar para análise de comportamento de usuários, Google Analytics e Melidata para métricas de negócio e Tableau para visualização de dados. O documento também descreve o gerenciador de alertas OpsGenie e a plataforma interna Fury para configuração e gerenciamento de aplicações.
JS Experience 2017 - Utilizando a virtualização para simplificar o desenvolvimento front-end
1. São Paulo
Rua Fidêncio Ramos, 308, 10º andar, Vila Olímpia
CEP: 04551-902
Rio de Janeiro
Av. General Justo, 375, 9º andar, Centro CEP: 20021-130
www.mundipagg.com
Utilizando a virtualização para simplificar o desenvolvimento front-end
Charles Carrari
7. Disclaimer I
1. Não é um curso de
virtualização.
2. Não é um curso de Vagrant.
3. Não é um curso de Docker.
4. É uma proposta de
utilização dessas
ferramentas.
5. Não sou especialista em
nenhuma dessas soluções!
Sou apenas um “frontzinho”,
buscando menos trabalho e
ganhos na minha
produtividade.
10. Disclaimer II
1. Atualmente a MundiPagg
possui muitas soluções que
utilizam ferramentas da
Microsoft. Logo é natural
que a maioria das máquinas
tenha o Windows instalado.
Por isso, os exemplos serão
sempre no Windows.
2. Além disso, utilizar
Windows torna o cenário do
que falaremos ainda mais
difícil, tornando nossos
exemplos mais ricos.
15. O que fazíamos?
1. Não existia muita coisa
além do HTML, de “folhas
de estilo” e bem pouco de
javascript.
2. table, table, table...
3. Páginas com visuais
problemáticos e péssima
usabilidade
4. Versionamento? Ah sim...
bkp-1, bkp-novo, bkp-
ultimo...
5. FTP
31. Front-end: Web Designer
• Photoshop
• Editor de Texto ou IDE (Dreamweaver é você?! )
• Browsers diversos (mentira, só o Chrome mesmo ;) )
• Bibliotecas (lê-se jQuery e associados)
32. Front-end: CMS (MENTIRA, WORDPRESS!!! )
• Photoshop
• Editor de Texto ou IDE (Dreamweaver é você?! )
• Browsers diversos (mentira, só o Chrome mesmo ;) )
• Bibliotecas (lê-se jQuery e associados)
• Normalmente PHP
• Servidores: Apache, NGINX, IIS
• Banco de dados: MySql, MongoDB
33. Front-end: SPA
• Photoshop
• Editor de Texto ou IDE
• Browsers diversos (mentira, só o Chrome mesmo ;) )
• Libs e frameworks (AngularJS, React, SASS)
• NodeJS
• As vezes Ruby, Python
• As vezes MongoDB
36. Principais problemas
1. Linha de comando: a famosa
tela preta.
2. Dificuldades para
reinstalação ou replicação
de máquinas.
3. Compatibilidade entre libs e
projetos.
4. Lentidão para iniciar um
novo projeto.
5. Diferenças entre o ambiente
de desenvolvimento e
produção.
45. 2. A instalação e a replicação do ambiente não deve tomar
todo seu tempo e atenção
46. Facilidades do mundo open source:
GERENCIADORES DE PACOTES
• APT: Debian, Ubuntu, Mint
• RPM: RedHat, Fedora, CentOS
• PACMAN: Arch Linux
Mas o Windows não tem nada disso nativamente...
72. E se você combinar todas as soluções anteriores + a
possibilidade de rodar o Ubuntu no Windows, você já será
bem mais feliz! Apesar de nada prático...
O problema 5 praticamente continua...
74. O Vagrant é uma ferramenta que permite que criemos
rapidamente ambientes virtuais para fazermos testes,
desenvolvimento ou provisionamento de ambientes utilizando
as soluções de virtualização mais comuns como o Virtualbox e o
VMWare, sendo também compatível com os principais
provedores cloud como AWS, Rackspace e Digitalocean. Além
disto, tem suporte a várias tecnologias de provisionamento
como Puppet, Chef, Salt, Ansible e CFEngine, com isto, você já
cria e configura o ambiente em um único processo, é realmente
mágico.
http://gutocarvalho.net/octopress/2014/05/09/entenda-o-vagrant/
75. Algumas terminologias importantes:
• Box - É um pacote que contém a base da sua VM. Basicamente é uma imagem do S.O.
Se você não sabe o que é uma imagem é como se fosse um clone do seu Sistema
Operacional que pode ser executado pra subir exatamente a mesma configuração
em outro computador. :)
• Vagrantfile - arquivo que contém as definições para executar a Box. Como serviços
que serão executados, arquivos compartilhados, programas que serão instalados,
etc.
• Guest - É a máquina que foi levantada. Em meios menos técnicos é sua VM.
• Provider - O Software de virtualização(Virtualbox ou VMWare).
• Provisioner - É o software que vai configurar a máquina na hora em que você ligar
ela pela primeira vez e ele também vai verificar se está tudo OK quando iniciar ela de
novo. As opções mais comuns são: Shell Script, Puppet e Chef.
78. Escolha um box e seja feliz! Se não encontrar um que te
atenda, CRIE!
https://atlas.hashicorp.com/boxes/search?_ga=2.130519375.177686634.1497
330572-684445749.1497330572
81. Mas nada é perfeito!
O Vagrant “levanta” todo o
sistema operacional. E
apesar de mais fácil para
configurar e mais leve que
simplesmente virtualizar,
pode ser um problema em
alguns casos.
84. Primeiro temos que definir o que não é Docker. Docker
não é um sistema de virtualização tradicional. Enquanto
em um ambiente de virtualização tradicional nós temos
um S.O. completo e isolado, dentro do Docker nós temos
recursos isolados que utilizam bibliotecas de kernel em
comum (entre host e container).
http://www.mundodocker.com.br/o-que-e-docker/
85.
86. Algumas terminologias importantes:
• Images - Base para os containers. Como se fossem os “boxes” do Vagrant.
• Dockerfile - Arquivo que contém as definições para automatizar a criação de
images.
• Containers - São criados por Docker Images e rodam as aplicações.
• Docker Daemon - Serviço em background que roda no host e gerencia a
construção, execução e distribuição.
• Docker Client - Linha de comando que permite que o usuário interaja com o
Daemon.
• Docker Compose - Ferramenta para definir e rodar múltiplos containers.
• Docker Hub - Repositório para docker images.
97. São Paulo
Rua Fidêncio Ramos, 308, 10º andar, Vila Olímpia
CEP: 04551-902
Rio de Janeiro
Av. General Justo, 375, 9º andar, Centro CEP: 20021-130
www.mundipagg.com
Charles Carrari
ccarrari@mundipagg.com