Horário
|
Palestra
|
08:30 às 09:00
|
Credenciamento e recepção dos participantes com café da manhã
|
09:00 às 10:00
|
Abertura
|
10:10 às 11:00
|
Gerenciamento de memória em C e C++
Gerenciamento de memória em C e C++
Rodrigo Strauss
Nessa palestra serão apresentadas várias opções de gerenciamento de memória para programadores C e C++, como gerenciamento manual, smart pointers e garbage collector (!?).
Rodrigo Strauss
|
11:10 às 12:00
|
Patch de Emergência
Patch de Emergência
Wanderley Caloni
Essa palestra irá focar principalmente no uso do depurador WinDbg para que consigamos aplicar um patch de correção a um processo enquanto ele está rodando. Para isso iremos analisar o assembly e usar comuns não-usuais de depuração, como alocação e escrita na memória do executável ainda rodando.
Depois iremos verificar no início do assembly de funções-chave do sistema operacional como o Windows Update consegue atualizar módulos críticos sem precisar reiniciar com o uso de uma técnica chamada de trampolim.
Os conhecimentos necessários para acompanhar essa palestra envolvem assembly x86 básico e noções de funcionamento interno das linguagens C e C++.
Wanderley Caloni
|
12:00 às 13:00
|
Intervalo para almoço*
|
13:10 às 14:00
|
Programando Windows Multicore
Programando Windows Multicore
Fernando Roberto da Silva
- Programa, processo e thread;
- Windows Scheduler;
- Problemas em compartilhar recursos;
- Kernel Dispatcher Objects;
- Interlocked Operations;
- Kernel Locking Routines;
- User Locking Routines;
- Overlapped I/O;
- Completion Ports.
Fernando Roberto da Silva
|
14:10 às 15:00
|
Relatos de guerra de programação paralela
Relatos de guerra de programação paralela
Rodrigo Kumpera
Depois de muitos anos trabalhando com escalabilidade em uma máquina virtual de alta performance, nesta palestra irei compartilhar da minha experiência nessa estrada, lições aprendidas e não aprendidas.
Rodrigo Kumpera
|
15:00 às 15:30
|
Coffee-break & networking
|
15:40 às 16:30
|
C11 e C++11: Do que se tratam e como eles vão facilitar a sua vida
C11 e C++11: Do que se tratam e como eles vão facilitar a sua vida
Gianni Rossi
C11 e C++11 são as mais novas revisões dos padrão que definem as linguagem C e C++. O foco da apresentação será, além de simplesmente listar as principais modificações nos padrões, dar exemplos práticos de como os novos recursos facilitarão a vida de quem programa em C e/ou C++.
Gianni Rossi
|
16:40 às 17:30
|
CILK: Porque implementar paralelismo em sua aplicação é mais fácil do que você imagina
CILK: Porque implementar paralelismo em sua aplicação é mais fácil do que você imagina
Luciano Palma
CILK: Porque implementar paralelismo em sua aplicação é mais fácil do que você imagina
Luciano Palma
|
17:40 às 18:30
|
Integrando .NET 4 com C++
Integrando .NET 4 com C++
Gabriel Simões Guilherme
Apresentação da técnica de PInvoke. Trafegando strings sem offset
explícito, C++ callback para um delegate, trabalhando com objetos não
gerenciados e objetos gerenciados e trabalhando em harmônia com o
garbage collector.
Integrando C# e C++/CLI assembly em modo misto, tipos de dados
compatíveis, compreendendo strings gerenciadas e char* e tempo de vida
dos objetos.
Olhada rápida no WinDbg de como está a execução do seu código.
Gabriel Simões Guilherme
|
18:40 às 19:00
|
Encerramento e sorteios
|
* Todos os participantes receberão um sanduíche do SUBWAY na hora do almoço
Obs.: Grade sujeita a alteração
@viniciusjarina trabalha com desenvolvimento a mais de 11 anos. Trabalhou muitos anos com software aplicado a medicina, desenvolvendo software na área de Cardiologia, utilizando C++ e MFC. Hobista em programação de jogos, fez um pequeno engine para jogos 2D entre outros projetos. Trabalhou na TOTVS desenvolvendo o compiladore e a VM, esta atualmente trabalhando na equipe da Xamarin.
Na estrada de TI há mais de 20 anos, é especialista em desenvolvimento e segurança da informação, atuou no desenvolvimento de várias sistemas, esteve envolvido com telematics security e sistemas de localização, security intelligence, embedded system, tendo participado da definiação de arquitetura e desenvolvimento de sistemas de segurança nacional. Técnico em Eletrônica e Bacharel em Ciência da Computação, realizou especializações em Segurança da Informação. Também atuou no campo de análise de malwares, ameaças digitais e ataques direcionados, tem focado sua atuação no campo de application security e sistemas embarcados.
Engenheiro de Computação com mais de 17 anos de experiência em programação C/C++ para Windows, sendo 11 anos dedicados ao desenvolvimento em Kernel Mode além de desenvolvimento de software embarcado. Atualmente trabalha como lider técnico da plataforma Windows no time global de desenvolvimento do MVFS na IBM. Leciona cursos de desenvolvimento de drivers para Windows e é MCTS em Windows Internals. Mantém o http://www.driverentry.com.br, blog dedicado ao desenvolvimento de drivers para Windows.
Atualmente desenvolvendo integrações para mercado financeiro em
sistemas de alto desempenho. Atuei também como desenvolvedor e
analista para integrações de URAs, CTI e WFM no mercado
telecomunicações, principalmente para call centers. Certificado como
MCPD Web, MCTS WCF e MCTS Distribuited.
Gianni tem ais de 10 anos de experiência como programador e arquiteto de software, passando por áreas diversas como Pesquisa de Mercado e Laboratórios Bioclínicos. É um dos pioneiros em desenvolvimento de TV Digital Brasileira, tendo trabalhados numa das primeiras implementações de STBs de TV Digital lançadas no Brasil. Hoje, além de continuar atuando em plataformas embedded para IPTV, também atua em mobile com Android e iOS e em Telefonia Celular com MVNOs.
Gianni é formado como Chef de Cozinha pelo Centro Especializado em Gastronomia de São Paulo.
Electronic Engineer with MBA in Enterprise Management. 20+ years in the Technology Industry, including the roles of Google Business Group Lead (Google), Community Manager (Intel) , Technical Evangelist, Consultant and Premier Field Engineer (Microsoft). 4 years experience as a Developer in England and Italy.
Founder of Desquebre (a startup that helps people fixing their home appliances) and GBG São Paulo Manager.
Desenvolvedor do projeto mono a meia década trabalhando em áreas incluido sandboxing, segurança e, recentemente, garbage collection.
Rodrigo Strauss começou a programar com 12 anos de idade, e desde lá nunca mais parou. Depois de oscilar entre trabalhos em C++ na área financeira (serviços, componentes e otimização de performance) e segurança da informação (drivers, assembly, hooks e hacks), hoje é sócio programador da Intelitrader, empresa especializada em software para o mercado financeiro. Nesses anos já passou pelo BASIC, Clipper, ASP, VB6, C#, Python, C e C++, além de ter colecionado algumas certificações Microsoft (Visual C++ e C#). Entre seus objetos de estudo estão as linguagens C++ e Python, assembly, um caiaque, uma bateria Pearl e mais livros de programação que seus poucos dedos conseguem contar. Foi nomeado Microsoft MVP em Visual C++ em 2012 e mantém o site www.1bit.com.br, onde escreve um blog e artigos sobre programação.
Wanderley Caloni é um programador C especializado em backend para Windows que decidiu ter seu próprio blogue técnico. Tenta mantê-lo atualizado com suas peripécias do dia-a-dia.
Colaborador frequente do Grupo C/C++ Brasil, foi junto de Rodrigo Strauss um dos fundadores e participante do primeiro encontro de programadores C++ de São Paulo.
Trabalhou por dez anos na área de Segurança da Informação, principalmente no Controle de Acesso a Usuários e Análise de Trojans.
Atualmente tem trabalhado em projetos de desenvolvimento para a Área Financeira e é cinéfilo inveterado nas horas vagas, o que fez com que abrisse mais dois novos blogues.