Trilha C/C++

Para quem gosta de metal & desempenho

Nesta trilha você um pouco daquilo que programadores de C & C++ fazem no mundo real.


Público Alvo

estudantes, profissionais e entusiastas sobre as linguagens C & C++


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

Vinicius Jarina

Vinicius Jarina


@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.


Alberto Fabiano

Alberto Fabiano


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.


Fernando Roberto da Silva

Fernando Roberto da Silva


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.


Wanderley Caloni

Wanderley Caloni


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.


Gabriel Simões Guilherme

Gabriel Simões Guilherme


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.


Luciano Palma

Luciano Palma


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.



Rodrigo Strauss

Rodrigo Strauss


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.


Gianni Rossi

Gianni Rossi


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.


Rodrigo Kumpera

Rodrigo Kumpera


Desenvolvedor do projeto mono a meia década trabalhando em áreas incluido sandboxing, segurança e, recentemente, garbage collection.


Data e Local

Sábado, 7 de Julho de 2012

Das 8:30 às 19:00 h

Universidade Anhembi Morumbi

Rua Casa do Ator, 275
Itaim Bibi, São Paulo - SP

Mais informações


Patrocinadores TDC 2012 SP Microsoft Oracle Amazon Web Services Concrete Solutions Nokia DevMedia Positivo PagSeguro Intel Software Google Plusoft InfoQ Brasil Octo Technology Esquilo.Mobi Anhembi Morumbi Globalcode