O documento discute programação de software livre em C, abordando tópicos como a longevidade da linguagem C, a suíte de compiladores GNU, como criar um projeto de exemplo e distribuí-lo, e as oportunidades de mercado para profissionais de C.
TDC2016 | Trilha PHP - Xdebug: Seus problemas acabaram!tdc-globalcode
O documento discute a extensão Xdebug para PHP, explicando o que é Xdebug, por que usá-lo e como instalá-lo e configurá-lo. Também aborda como usar Xdebug para depurar código ao vivo, medir cobertura de código e fazer profiling de aplicações.
Xdebug seus problemas acabaram - TDC - PHPesteVitor Mattos
Você leva horas, dias para encontrar um bug? Não conhece o framework que trabalha ou leva dias encontrando como implementar algo? Seus problemas acabaram! Aprenda a debugar suas aplicações com Xdebug!
Este documento discute o desenvolvimento de aplicações desktop com PHP-GTK. Primeiramente, apresenta o autor e introduz PHP e GTK+. Em seguida, explica o que é PHP-GTK, como instalá-lo e conceitos importantes como widgets, sinais e Glade. Por fim, fornece referências para aprender mais.
Talk apresentada interna na empresa IXCsoft, com o objetivo de mostrar as principais novidades das versões 7.4 e 8.0 do PHP.
O foco foi mostrar pequenos trechos de códigos para utilização em software da Empresa.
O documento apresenta uma palestra sobre o uso de Python e Qt5 em sistemas embarcados Linux. É discutido como ambas as tecnologias podem ser usadas para desenvolvimento de interfaces gráficas e aplicações em sistemas embarcados usando o framework Yocto Project. Exemplos de aplicações são mostrados rodando em uma plataforma embarcada chamada A.R.O.S.
O documento introduz a linguagem de programação Go, desenvolvida pela Google em 2007. Go tem sintaxe semelhante a C mas sem classes, herança ou exceções. Possui tipos de dados simples como strings e inteiros, além de estruturas de dados como slices, maps e channels para programação concorrente. Go oferece desempenho, fácil manutenção de código e é multiplataforma.
Guilherme Quental apresenta NodeJS. Ele explica que NodeJS é mais do que apenas JavaScript no lado do servidor e é definido por I/O não bloqueante e sua API em JavaScript. NodeJS é totalmente modular e composto por diversos módulos como File System, TCP, HTTP e Buffer.
TDC2016 - Explorando Qt5 e Python em Linux EmbarcadoCleiton Bueno
O documento apresenta uma palestra sobre o uso de Python e Qt5 em sistemas embarcados Linux. Apresenta as linguagens Python e Qt5, o projeto Yocto para desenvolvimento de sistemas embarcados e o projeto A.R.O.S, um exemplo de aplicação Qt para um sistema embarcado.
TDC2016 | Trilha PHP - Xdebug: Seus problemas acabaram!tdc-globalcode
O documento discute a extensão Xdebug para PHP, explicando o que é Xdebug, por que usá-lo e como instalá-lo e configurá-lo. Também aborda como usar Xdebug para depurar código ao vivo, medir cobertura de código e fazer profiling de aplicações.
Xdebug seus problemas acabaram - TDC - PHPesteVitor Mattos
Você leva horas, dias para encontrar um bug? Não conhece o framework que trabalha ou leva dias encontrando como implementar algo? Seus problemas acabaram! Aprenda a debugar suas aplicações com Xdebug!
Este documento discute o desenvolvimento de aplicações desktop com PHP-GTK. Primeiramente, apresenta o autor e introduz PHP e GTK+. Em seguida, explica o que é PHP-GTK, como instalá-lo e conceitos importantes como widgets, sinais e Glade. Por fim, fornece referências para aprender mais.
Talk apresentada interna na empresa IXCsoft, com o objetivo de mostrar as principais novidades das versões 7.4 e 8.0 do PHP.
O foco foi mostrar pequenos trechos de códigos para utilização em software da Empresa.
O documento apresenta uma palestra sobre o uso de Python e Qt5 em sistemas embarcados Linux. É discutido como ambas as tecnologias podem ser usadas para desenvolvimento de interfaces gráficas e aplicações em sistemas embarcados usando o framework Yocto Project. Exemplos de aplicações são mostrados rodando em uma plataforma embarcada chamada A.R.O.S.
O documento introduz a linguagem de programação Go, desenvolvida pela Google em 2007. Go tem sintaxe semelhante a C mas sem classes, herança ou exceções. Possui tipos de dados simples como strings e inteiros, além de estruturas de dados como slices, maps e channels para programação concorrente. Go oferece desempenho, fácil manutenção de código e é multiplataforma.
Guilherme Quental apresenta NodeJS. Ele explica que NodeJS é mais do que apenas JavaScript no lado do servidor e é definido por I/O não bloqueante e sua API em JavaScript. NodeJS é totalmente modular e composto por diversos módulos como File System, TCP, HTTP e Buffer.
TDC2016 - Explorando Qt5 e Python em Linux EmbarcadoCleiton Bueno
O documento apresenta uma palestra sobre o uso de Python e Qt5 em sistemas embarcados Linux. Apresenta as linguagens Python e Qt5, o projeto Yocto para desenvolvimento de sistemas embarcados e o projeto A.R.O.S, um exemplo de aplicação Qt para um sistema embarcado.
FISL16 :: Escalabilidade - de uma máquina para múltiplos data centersLeandro Moreira
O documento discute estratégias para escalar aplicações e serviços em múltiplos data centers de forma a distribuir carga, tolerar falhas e fornecer alta disponibilidade, como balanceamento de carga, replicação e particionamento de dados, cache, microserviços e DNS anycast. A arquitetura proposta utiliza vários níveis de redundância para garantir que não haja pontos únicos de falha.
Escalando uma plataforma poliglota - QConSP 17Leandro Moreira
O documento discute as arquiteturas poliglotas utilizadas na plataforma de vídeos ao vivo da Globo.com, abordando a diversidade de problemas e soluções, como caching, armazenamento, encoding e CDNs. Práticas como testes, documentação e monitoramento são apresentadas para lidar com a complexidade e garantir a escalabilidade e disponibilidade do sistema.
O documento descreve o compilador GCC, incluindo sua história, versões, estrutura e funcionamento. O GCC (GNU Compiler Collection) foi desenvolvido originalmente por Richard Stallman em 1987 para o projeto GNU. Ele é um compilador multiplataforma, de código aberto, que suporta várias linguagens como C, C++, Java e Fortran. O GCC realiza quatro etapas de compilação: pré-processamento, compilação, montagem e ligação. Sua estrutura inclui front-end, middle-end e back-end para análise, ot
ESLPE 2008 - Desenvolvendo aplicações no LinuxJorge Pereira
Em três frases ou menos:
1) O documento apresenta as ferramentas e possibilidades disponíveis para programação em ambiente Linux, comparando com o ambiente Windows.
2) Ele discute linguagens, editores, compiladores e bibliotecas de programação gráfica como GTK e Qt disponíveis no Linux.
3) O documento também mostra exemplos de código em C e PHP utilizando a biblioteca gráfica GTK.
Go é uma linguagem de programação open source que faz com que seja fácil construir software simples, confiável e eficiente. A linguagem foi projetada para lidar com grandes sistemas de software, melhorando a produtividade e permitindo a manutenção de código em larga escala. Go não possui herança como em outras linguagens, mas sim composição, onde tipos estruturados podem incorporar campos de outros tipos.
Aula 08.1 - ALP - Linguagem C (Primeiros passos)Messias Batista
Apresentação criada em 2017.2 para as aulas de Lógica de Programação e Algoritmos; e Programação de Computadores.
Apresenta os principais conceitos da linguagem de programação C.
O documento discute a ferramenta Vagrant, que permite criar e configurar ambientes de desenvolvimento virtualizados de forma consistente. Vagrant usa arquivos VagrantFile e boxes para automatizar a configuração de máquinas virtuais, eliminando diferenças entre ambientes de desenvolvimento e produção. O documento lista alguns dos principais comandos do Vagrant como vagrant up, vagrant ssh e vagrant destroy.
O documento apresenta uma história das principais linguagens de programação, desde Ada Lovelace em 1843 até linguagens atuais como Java e PHP. Ele discute os tipos de linguagens (compiladas x interpretadas) e prevê que frameworks ganharão importância no futuro devido à agilização do desenvolvimento.
O documento discute a linguagem Dart e o framework Flutter. Inicialmente, o autor ficou confuso com a sintaxe de Dart, mas percebeu que a Google não escolheria algo sem motivo. Ele aprendeu primeiro o framework Flutter e foi testando código. Depois descobriu que o Flutter atualiza sem recarregar tudo, chamado de Hot Reload. Isso é possível devido ao JIT e AOT. O documento também lista vantagens de Dart, como não precisar de múltiplas linguagens e não usar marcação como XML.
Xdebug seus problemas acabaram - tdc floripa 2017Vitor Mattos
O documento fornece um resumo sobre a extensão Xdebug para PHP. Resume:
1) Xdebug é uma extensão que permite depurar scripts PHP fornecendo informações valiosas como valores de variáveis e backtraces.
2) Xdebug utiliza o protocolo DBGp para depuração remota em tempo real e análise de cobertura de código e performance.
3) As principais funcionalidades do Xdebug incluem depuração passo-a-passo, análise de cobertura de código e profiling para identificar gargalos.
Introdução à programação em Android e iOS - Conceitos fundamentais de program...Luís Gustavo Martins
Este documento apresenta um resumo de três frases ou menos:
O documento apresenta um curso introdutório de programação que inclui módulos sobre conceitos fundamentais de programação, programação orientada a objetos e programação para Android e iPhone. É destacado que o curso não requer conhecimentos prévios de programação.
Workshop sobre programação em C usando a API Berkeley Sockets - Carlos A. M. ...Tchelinux
O documento apresenta um workshop sobre programação em C usando a API Berkeley Sockets. O workshop irá cobrir conceitos de redes como modelo OSI, endereçamento IPv4 e IPv6, e tipos de transmissão TCP e UDP. Também inclui exercícios práticos para construir servidores e clientes de rede usando sockets.
Este documento apresenta um resumo de três frases ou menos:
O documento apresenta um curso introdutório de programação que inclui módulos sobre conceitos fundamentais de programação, programação orientada a objetos e programação para Android e iPhone, abordando tópicos como variáveis, operadores, condições e ciclos.
O documento introduz os principais conceitos da linguagem de programação Python, incluindo o que é Python, quem usa, o interpretador interativo, regras de sintaxe, tipos de dados, funções, orientação a objetos, código fonte e bibliotecas inclusas.
OpenLDAP, criando e explorando um overlayDiego Santos
O documento apresenta uma palestra sobre OpenLDAP, um software de diretório LDAP open source. A palestra discute o que é LDAP e OpenLDAP, como criar e explorar overlays em OpenLDAP, e demonstra como explorar vulnerabilidades como buffer overflows.
O documento descreve um evento chamado CryptoRave que ocorrerá no Centro Cultural São Paulo entre os dias 11 e 12 de abril. O evento reunirá hackers e ativistas para debater e ensinar técnicas de privacidade e criptografia na internet. Qualquer pessoa interessada em proteger sua privacidade pode participar gratuitamente e aprender sobre ferramentas como Tor e OpenPGP.
Arquiteturas híbridas de atendimento em Cloud Computing para otimizar o uso d...Diego Santos
1) O documento discute arquiteturas híbridas de nuvem para otimizar o uso de recursos usando Node.js.
2) Node.js permite alta escalabilidade e desenvolvimento backend em JavaScript, funcionando com event loop para aguardar entrada de dados antes de processar.
3) Testes mostraram que Node.js teve ganho de performance de 80% sobre PHP ao lidar com grande volume de requisições simultâneas, reduzindo tempo de resposta de quase 6 minutos para 1 minuto.
A empresa 4Linux é uma pioneira no ensino de Linux no Brasil, com mais de 30.000 alunos satisfeitos. Ela oferece treinamento em missões críticas de tecnologia da informação e é parceira de treinamento da IBM, tendo recebido reconhecimento internacional por sua inovação em cursos como Hackerteen e Boteconet.
O documento discute as principais mudanças e melhorias introduzidas no JSF 2.0, incluindo AJAX nativo, novas anotações, navegação implícita e condicional, integração com Bean Validation, View Parameters e melhorias nos componentes SelectItems.
Inteligência Operacional utilizando a solução Elastic.4LinuxCursos
Este documento descreve a adoção da solução Elastic pela CAIXA para monitoramento e análise de logs de correio eletrônico. A solução Elastic fornece visibilidade em tempo real do ambiente de email, permitindo a identificação rápida de incidentes e uso indevido. Ela também possibilita armazenar e pesquisar grandes volumes de dados de forma rápida. A CAIXA planeja expandir o uso da solução Elastic para outros sistemas como OpenLDAP e portais internos.
IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...Diego Santos
O documento descreve os serviços oferecidos pela empresa, incluindo consultoria, suporte, projetos e treinamento, baseados em softwares livres, código aberto e padrões abertos, para construir infraestrutura de TI e criar novas soluções de negócio.
FISL16 :: Escalabilidade - de uma máquina para múltiplos data centersLeandro Moreira
O documento discute estratégias para escalar aplicações e serviços em múltiplos data centers de forma a distribuir carga, tolerar falhas e fornecer alta disponibilidade, como balanceamento de carga, replicação e particionamento de dados, cache, microserviços e DNS anycast. A arquitetura proposta utiliza vários níveis de redundância para garantir que não haja pontos únicos de falha.
Escalando uma plataforma poliglota - QConSP 17Leandro Moreira
O documento discute as arquiteturas poliglotas utilizadas na plataforma de vídeos ao vivo da Globo.com, abordando a diversidade de problemas e soluções, como caching, armazenamento, encoding e CDNs. Práticas como testes, documentação e monitoramento são apresentadas para lidar com a complexidade e garantir a escalabilidade e disponibilidade do sistema.
O documento descreve o compilador GCC, incluindo sua história, versões, estrutura e funcionamento. O GCC (GNU Compiler Collection) foi desenvolvido originalmente por Richard Stallman em 1987 para o projeto GNU. Ele é um compilador multiplataforma, de código aberto, que suporta várias linguagens como C, C++, Java e Fortran. O GCC realiza quatro etapas de compilação: pré-processamento, compilação, montagem e ligação. Sua estrutura inclui front-end, middle-end e back-end para análise, ot
ESLPE 2008 - Desenvolvendo aplicações no LinuxJorge Pereira
Em três frases ou menos:
1) O documento apresenta as ferramentas e possibilidades disponíveis para programação em ambiente Linux, comparando com o ambiente Windows.
2) Ele discute linguagens, editores, compiladores e bibliotecas de programação gráfica como GTK e Qt disponíveis no Linux.
3) O documento também mostra exemplos de código em C e PHP utilizando a biblioteca gráfica GTK.
Go é uma linguagem de programação open source que faz com que seja fácil construir software simples, confiável e eficiente. A linguagem foi projetada para lidar com grandes sistemas de software, melhorando a produtividade e permitindo a manutenção de código em larga escala. Go não possui herança como em outras linguagens, mas sim composição, onde tipos estruturados podem incorporar campos de outros tipos.
Aula 08.1 - ALP - Linguagem C (Primeiros passos)Messias Batista
Apresentação criada em 2017.2 para as aulas de Lógica de Programação e Algoritmos; e Programação de Computadores.
Apresenta os principais conceitos da linguagem de programação C.
O documento discute a ferramenta Vagrant, que permite criar e configurar ambientes de desenvolvimento virtualizados de forma consistente. Vagrant usa arquivos VagrantFile e boxes para automatizar a configuração de máquinas virtuais, eliminando diferenças entre ambientes de desenvolvimento e produção. O documento lista alguns dos principais comandos do Vagrant como vagrant up, vagrant ssh e vagrant destroy.
O documento apresenta uma história das principais linguagens de programação, desde Ada Lovelace em 1843 até linguagens atuais como Java e PHP. Ele discute os tipos de linguagens (compiladas x interpretadas) e prevê que frameworks ganharão importância no futuro devido à agilização do desenvolvimento.
O documento discute a linguagem Dart e o framework Flutter. Inicialmente, o autor ficou confuso com a sintaxe de Dart, mas percebeu que a Google não escolheria algo sem motivo. Ele aprendeu primeiro o framework Flutter e foi testando código. Depois descobriu que o Flutter atualiza sem recarregar tudo, chamado de Hot Reload. Isso é possível devido ao JIT e AOT. O documento também lista vantagens de Dart, como não precisar de múltiplas linguagens e não usar marcação como XML.
Xdebug seus problemas acabaram - tdc floripa 2017Vitor Mattos
O documento fornece um resumo sobre a extensão Xdebug para PHP. Resume:
1) Xdebug é uma extensão que permite depurar scripts PHP fornecendo informações valiosas como valores de variáveis e backtraces.
2) Xdebug utiliza o protocolo DBGp para depuração remota em tempo real e análise de cobertura de código e performance.
3) As principais funcionalidades do Xdebug incluem depuração passo-a-passo, análise de cobertura de código e profiling para identificar gargalos.
Introdução à programação em Android e iOS - Conceitos fundamentais de program...Luís Gustavo Martins
Este documento apresenta um resumo de três frases ou menos:
O documento apresenta um curso introdutório de programação que inclui módulos sobre conceitos fundamentais de programação, programação orientada a objetos e programação para Android e iPhone. É destacado que o curso não requer conhecimentos prévios de programação.
Workshop sobre programação em C usando a API Berkeley Sockets - Carlos A. M. ...Tchelinux
O documento apresenta um workshop sobre programação em C usando a API Berkeley Sockets. O workshop irá cobrir conceitos de redes como modelo OSI, endereçamento IPv4 e IPv6, e tipos de transmissão TCP e UDP. Também inclui exercícios práticos para construir servidores e clientes de rede usando sockets.
Este documento apresenta um resumo de três frases ou menos:
O documento apresenta um curso introdutório de programação que inclui módulos sobre conceitos fundamentais de programação, programação orientada a objetos e programação para Android e iPhone, abordando tópicos como variáveis, operadores, condições e ciclos.
O documento introduz os principais conceitos da linguagem de programação Python, incluindo o que é Python, quem usa, o interpretador interativo, regras de sintaxe, tipos de dados, funções, orientação a objetos, código fonte e bibliotecas inclusas.
OpenLDAP, criando e explorando um overlayDiego Santos
O documento apresenta uma palestra sobre OpenLDAP, um software de diretório LDAP open source. A palestra discute o que é LDAP e OpenLDAP, como criar e explorar overlays em OpenLDAP, e demonstra como explorar vulnerabilidades como buffer overflows.
O documento descreve um evento chamado CryptoRave que ocorrerá no Centro Cultural São Paulo entre os dias 11 e 12 de abril. O evento reunirá hackers e ativistas para debater e ensinar técnicas de privacidade e criptografia na internet. Qualquer pessoa interessada em proteger sua privacidade pode participar gratuitamente e aprender sobre ferramentas como Tor e OpenPGP.
Arquiteturas híbridas de atendimento em Cloud Computing para otimizar o uso d...Diego Santos
1) O documento discute arquiteturas híbridas de nuvem para otimizar o uso de recursos usando Node.js.
2) Node.js permite alta escalabilidade e desenvolvimento backend em JavaScript, funcionando com event loop para aguardar entrada de dados antes de processar.
3) Testes mostraram que Node.js teve ganho de performance de 80% sobre PHP ao lidar com grande volume de requisições simultâneas, reduzindo tempo de resposta de quase 6 minutos para 1 minuto.
A empresa 4Linux é uma pioneira no ensino de Linux no Brasil, com mais de 30.000 alunos satisfeitos. Ela oferece treinamento em missões críticas de tecnologia da informação e é parceira de treinamento da IBM, tendo recebido reconhecimento internacional por sua inovação em cursos como Hackerteen e Boteconet.
O documento discute as principais mudanças e melhorias introduzidas no JSF 2.0, incluindo AJAX nativo, novas anotações, navegação implícita e condicional, integração com Bean Validation, View Parameters e melhorias nos componentes SelectItems.
Inteligência Operacional utilizando a solução Elastic.4LinuxCursos
Este documento descreve a adoção da solução Elastic pela CAIXA para monitoramento e análise de logs de correio eletrônico. A solução Elastic fornece visibilidade em tempo real do ambiente de email, permitindo a identificação rápida de incidentes e uso indevido. Ela também possibilita armazenar e pesquisar grandes volumes de dados de forma rápida. A CAIXA planeja expandir o uso da solução Elastic para outros sistemas como OpenLDAP e portais internos.
IaaS: Implantação e gerenciamento de configurações de ambientes Cloud usando...Diego Santos
O documento descreve os serviços oferecidos pela empresa, incluindo consultoria, suporte, projetos e treinamento, baseados em softwares livres, código aberto e padrões abertos, para construir infraestrutura de TI e criar novas soluções de negócio.
O documento discute como o Linux é essencial para a computação em nuvem e dispositivos móveis. O Linux oferece código aberto, desenvolvimento colaborativo e é líder no Android. A nuvem permite iniciar pequeno e crescer, pagar pelo uso e experimentar novas tecnologias de baixo custo. 97% das máquinas virtuais na AWS rodam Linux. Tecnologias como PHP, Ruby e Python rodam melhor em Linux.
Kerberos é um protocolo amplamente utilizado em grandes empresas para prover ambientes SSO(Single Sigin On), mas quais são as suas reais limitações ? É possível capturar senhas e/ou forjar tickets em ambientes como Active Directory?
Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019Tchelinux
Buidroot é uma ferramenta para automação do processo de geração de um sistema Linux para dispositivos embarcados. O objetivo da palestra é dar uma visão geral dos componentes de um sistema embarcado que utiliza Linux e como gerar um sistema Linux embarcado com o Buildroot.
Renato Severo é Engenheiro de Computação pela Unipampa Bagé. Especialista em Sistemas Embarcados pela UERGS Guaíba. Desenvolvedor de Sistemas Embarcados na DATACOM em Eldorado do Sul.
Para mais informações acesse: https://linkedin.com/in/renatossevero/
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux SystemsFernando Mercês
O documento apresenta um tutorial sobre engenharia reversa em sistemas GNU/Linux, abordando tópicos como o formato ELF de binários, técnicas como fishing, byte patching e unpacking, além de debugging e um exemplo de keygen em shell script.
Como ajudar no desenvolvimento do kernel Linux? - Fábio Olivé LeiteTchelinux
Este documento descreve como ajudar no desenvolvimento do kernel Linux, incluindo: 1) O kernel Linux é o núcleo do sistema operacional Linux e é responsável por inicializar o hardware e gerenciar os processos; 2) Ele é desenvolvido de forma distribuída e colaborativa através de discussões em listas de email e envio de patches; 3) Ferramentas como um editor de código C, compilador GCC, git, cscope, diff e patch são necessárias para começar a contribuir.
TDC2018SP | Trilha Containers - CRI-O: Nem so de Docker vivem os containerstdc-globalcode
O documento apresenta o CRI-O, uma implementação do Kubernetes Container Runtime Interface (CRI) baseada nos padrões OCI. O CRI-O fornece as funcionalidades necessárias para o Kubernetes executar containers, como baixar imagens e armazená-las, executar containers e monitorá-los. Além disso, ferramentas como Buildah e Skopeo são apresentadas para criar e gerenciar imagens de container.
Linguagem c wellington telles - aula 02profwtelles
O documento discute conceitos básicos de algoritmos e programação na linguagem C, incluindo variáveis, tipos de dados, compiladores, criação de projetos no DevC++ e a execução de um "Hello World".
O documento discute o desenvolvimento de uma ferramenta chamada Bricklayer para automatizar a criação e implantação de pacotes de software. Inicialmente, o autor identificou problemas com implantações manuais e scripts personalizados de implantação. Ele então projetou uma solução baseada em API REST e servidor de compilação para criar pacotes de forma automatizada e consistente. A ferramenta enfrentou desafios iniciais com dependências, adaptação aos fluxos de implantação dos projetos e falta de tempo para manutenção. Planos futuros incluem novas
Como Colaborar no Desenvolvimento do Kernel Linux - Fábio Olivé LeiteTchelinux
O documento discute como colaborar no desenvolvimento do kernel Linux, explicando que o kernel é o núcleo do sistema operacional Linux, é desenvolvido de forma distribuída através de emails e patches, e requer ferramentas como git, cscope, diff e patch.
Este documento apresenta uma introdução à linguagem de programação C. Ele discute conceitos básicos como estrutura de um programa C, tipos de dados, entrada e saída de dados, operadores e estruturas de decisão. O documento também fornece exemplos de código C para ilustrar esses conceitos.
Este documento apresenta uma introdução à programação em Python e ao toolkit Tk. Ele discute os objetivos do curso, as características da linguagem Python, a importância da teoria e da prática, e como usar o interpretador Python de forma interativa.
Introdução a linguagem Python: simples e produtivaÁlvaro Justen
Slides (melhorados) da webminar (palestra online) que ministrei no LabDeGaragem.com na terça-feira dia 16/08/2011.
A palestra abordou aspectos introdutórios da linguagem e mostrou através de exemplos práticos onde a linguagem pode ser utilizada a favor da produtividade do desenvolvedor.
Este documento apresenta como criar um ambiente de desenvolvimento para aplicações Django utilizando Docker e Docker Compose. Ele explica como instalar as ferramentas necessárias, criar um Dockerfile para definir a infraestrutura do projeto, configurar o docker-compose.yml para executar o projeto em containers e como executar comandos do Django no container.
Git e Github: qual a importância dessas ferramentas para o desenvolvedorFelipe Pedroso
Essa palestra introduz o conceito de git como sistema de controle de versão e discute como o Github é importante para os desenvolvedores como ferramenta e plataforma social.
O documento fornece uma introdução aos sistemas operacionais, com foco no GNU/Linux. Apresenta a história dos sistemas operacionais desde os primórdios até o desenvolvimento do Unix e do Linux. Discorre sobre as principais características e componentes de um sistema operacional, como o kernel e os gerenciadores de janelas. Fornece também uma visão geral sobre as principais distribuições Linux, programas, comandos de terminal e conceitos como processos, permissões e montagem de sistemas de arquivos.
Aplicando o poder de uma GPU noSQL Serverpichiliani
O documento discute o uso de processamento gráfico (GPU) no SQL Server. Ele explica o que é uma GPU e como ela pode ser usada para processamento paralelo, mencionando exemplos de aplicações como multiplicação de matrizes. Também descreve como programar no SQL Server usando frameworks como o CUDA.NET para executar código na GPU. Por fim, ressalta que embora o uso de GPU traga grande poder de processamento, requer conhecimento de programação paralela e que o problema seja adequado para esse tipo de solução.
O documento discute componentes de hardware de computadores. Ele fornece detalhes sobre as especificações de hardware que Paulo observou em sua pesquisa para comprar um novo computador, incluindo a velocidade do processador, capacidade do HD e memória RAM. Ele também descreve um anúncio de computador à venda e define termos como RAM, HD e processador.
O documento discute a evolução da plataforma .NET e da linguagem C#, incluindo o lançamento do .NET Core 1.0 e as novidades previstas para o C# 7.0, como tuplas, pattern matching e local functions. O autor é Renato Groffe, um Microsoft MVP experiente que fornece uma visão geral dessas tecnologias e demonstra alguns recursos do C# 7.0.
O documento apresenta uma introdução ao C#, mostrando suas principais características e vantagens. A linguagem é nova, robusta e orientada a objetos, desenvolvida em conjunto com a plataforma .NET. O C# é baseado no C++ e suporta programação orientada a objetos, componentes e o gerenciamento automático de memória.
JavaDay2018 - Docker - Além do HelloWorldThiago Soares
O documento introduz Docker e seus principais conceitos como containers, imagens e Dockerfile. Explica como usar comandos Docker como docker run para executar containers de imagens como Nginx e Ubuntu. Demonstra como mapear volumes para persistir dados e como construir imagens a partir de Dockerfile.
O documento fornece uma introdução ao compilador GCC, descrevendo suas principais funcionalidades e como compilar programas em C a partir de um ou mais arquivos-fonte. Também mostra como encontrar erros comuns usando o parâmetro "-Wall" e compilar arquivos separadamente para agilizar o processo de desenvolvimento.
Dia Debian 2007 - Desenvolvendo aplicações no LinuxJorge Pereira
O documento resume uma palestra sobre desenvolvimento de aplicações no Linux. A palestra aborda os primeiros passos, as ferramentas disponíveis como o GCC e GDB, e o desenvolvimento de interfaces gráficas usando o toolkit GTK com ferramentas como Glade e Anjuta.
Apresentação do hangout da 4Linux sobre a cultura Devops e as formas como o Zend Server pode facilitar a sua implementação.
Saiba mais em: http://www.4linux.com.br/screencast/praticas-devops-com-zend-server
Criando Mapas de rede para monitoramento com ZabbixDiego Santos
O documento descreve como criar mapas de rede no Zabbix, incluindo configurar mapas, tipos de elementos em um mapa como hosts, grupos e triggers, e usar submapas. Ele também cobre fazer backup de mapas, ações em mapas, personalizar ícones e alternar ícones para diferentes situações.
Tenha mais tempo e gerencie seus processos com a BonitaDiego Santos
O documento discute como gerenciar processos de negócios para ter mais tempo e ganhar mais dinheiro. Ele sugere monitorar processos para melhorá-los, criar novos processos mais eficientes e ter mais tempo para pensar em estratégias. Também apresenta o software de gerenciamento de processos de negócios Bonita Open Solution para automatizar processos de forma a reduzir custos e tempo.
Socialize os sites da sua empresa com eXo PlatformDiego Santos
A palestra foi aprensentada no FISL 13 e tem o objetivo de mostrar como tornar a criação e o gerenciamento dos sites e aplicações da sua empresa em algo extremamente simples e ágil utilizando o eXo Platform. Um dos principais objetivos dessa apresentação é mostrar como transformar seu ambiente corporativo em algo totalmente integrado, aproximando as pessoas e interagindo com várias áreas diferentes utilizando uma tecnologia de redes sociais e Single Sign-On. O eXo Platform é uma tecnologia de Portais extremamente robusta.
O documento discute análise estática de malware usando o projeto pev. O projeto pev fornece ferramentas de código aberto para analisar arquivos Portable Executable (PE) de forma multiplataforma. Ele inclui ferramentas como readpe para ler cabeçalhos PE, packid para detectar packers, e pesec para verificar recursos de segurança como ASLR e DEP. Planos futuros incluem adicionar funcionalidades como esteganografia, descriptografia de strings, e um descompilador C.
Testes em aplicações JEE: Montando sua infra de testes automatizadosDiego Santos
A empresa 4linux é pioneira no ensino de Linux à distância no Brasil, com mais de 30.000 alunos satisfeitos. Ela possui experiência em missões críticas, é parceira de treinamento da IBM e foi a primeira empresa no Brasil a oferecer certificação LPI.
O documento discute a formação de desenvolvedores de software. Ele argumenta que é necessário expor os futuros profissionais à complexidade desde o início, ensinando-os a lidar com códigos complexos e a fazer manutenção em aplicações, em vez de focar apenas em exemplos simples. Também defende que as faculdades e formações devem priorizar esses aspectos para melhor preparar os desenvolvedores.
Webcast Tutorial: Análise de dumps de memória no GNU/LinuxDiego Santos
A empresa oferece treinamentos em Linux, tendo treinado mais de 30.000 alunos. Ela foi pioneira no ensino à distância de Linux no Brasil e é parceira de treinamento da IBM. A empresa também se destaca por inovações como o projeto Hackerteen e a rede Boteconet.
Este certificado confirma que Gabriel de Mattos Faustino concluiu com sucesso um curso de 42 horas de Gestão Estratégica de TI - ITIL na Escola Virtual entre 19 de fevereiro de 2014 a 20 de fevereiro de 2014.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
3. Agenda
● Por que o C nunca vai sumir?
● A suíte de compiladores GNU
● Criando um projeto de exemplo
● Distribuindo o software
● Mercado
3
4. Por que o C nunca vai sumir?
●Metade do universo é escrito em C (kernel Linux, Windows,
httpd, samba, squid, bind, java, python, php, openldap, wine...)
● Desempenho: o compilador C gera código de máquina.
●Portabilidade: SIM, basta que seu código não dependa de
bibliotecas não portáveis! E ainda existe Cygwin!
●Quem falou que C é velho? A última atualização da
especificação foi em 2011.
●O comitê WG14 da ISO/IEC especificou na C11 recursos como
multithreading (thread.h), bound checking em funções como
strcpy() e estruturas anônimas.
4
5. A suíte de compiladores GNU
●GNU Compiler Collection, compila C, C++, Objective-C,
Fortran, Java, Ada e Go.
● A versão 4.7.1 saiu em 14 de junho deste ano.
● Conta com poderosos aliados como gdb e make.
●Extensa documentação, cheia de recursos, otimizações
para processadores específicos, proteções de código etc.
● Mas existem outros livres como CLang, tcc...
5
6. Brinque com o tcc!
$ cat ate3.c
#!/usr/bin/tcc -run
#include <stdio.h>
int main(void)
{
for (int i=0; i<3; i++)
printf("%dn", i);
return 0;
}
$ chmod +x ate3.c
$ ./ate3.c
---
$ cat << EOF | tcc -run -
>main(void) { puts("Diz aê pro tcc!"); }
>EOF
6
7. A suíte de compiladores GNU
●GNU Compiler Collection, compila C, C++, Objective-C,
Fortran, Java, Ada e Go.
● A versão 4.7.1 saiu em 14 de junho deste ano.
● Conta com um poderoso aliado: o GNU Debugger (gdb).
●Extensa documentação, cheia de recursos, otimizações
para processadores específicos, proteções de código etc.
● Experimente também o tcc!
7
8. Criando um projeto de exemplo
● O que eu quero?
Setar um dispositivo de bloco (/dev/sdX) como
somente leitura ou não, para evitar escrita acidental
como echo 'lalalaal' > /dev/sdX.
● #comofas
O Linux possui a syscall (e uma wrapper na glibc)
ioctl, que aceita os comandos BLKROSET e BLKROGET.
● Consultar manual da função ioctl()
$ man 2 ioctl
int ioctl(int d, int request, ...);
8
9. Prova de conceito
#includes...
int fd = open(“/dev/sdc”, O_RDONLY);
int ro = 1;
ioctl(fd, BLKROSET, &ro);
---
# dd if=<(echo 'doingshit') of=/dev/sdc
dd: writing to `/dev/sdc': Operation not permitted
9
10. Antes de virar um projeto...
● E se der erro?
Tratamento de erro (if).
● O usuário sabe o que o software faz?
help(), usage(), documentação, manpages.
● Quais as dependências?
ldd.
● Preciso licenciar o código?
● Cabeçalho GPL ou de outra licença livre.
10
11. Antes de virar um projeto (cont.)...
● E o Makefile?
all:
gcc -W -Wall -Wextra -o devprot devprot.c
clean:
rm -f devprot
● Compilando o devprot.c
$ make
● Testes
Várias máquinas, diferentes arquiteturas.
Diferentes dispositivos de blocos (para este caso).
11
12. Distribuindo o software
● Tenho fegonha! Ah, focê chula?!
● Controle de versão para *código*.
●Source Forge para todo o resto, como binários pré-
compilados.
● No Github é muito fácil enviar e receber patches.
12
13. Mercado para C
●Kernel, aplicações 'core', alto desempenho, real time,
embarcados.
●Google, Opera, Mandriva, Red Hat, várias de
embarcados, de telecom, de segurança...
● Em alta, por tempo inderteminado!
● C++ também!
● Lucro (in)direto: colaborando com SL.
●Outras linguagens “nativas” como D e Go vão demorar
um pouco para “colar”. Enquanto isso, divirta-C. ;-)
13
14. Referências
● Especificações da linguagem C
http://www.mentebinaria.com.br/artigos/0x1c/0x1c-cspecs.html
● WG14
http://www.open-std.org/jtc1/sc22/wg14/
● Mudanças no gcc 4.7
http://gcc.gnu.org/gcc-4.7/changes.html
● BLKROGET e BLKROSET definidos em /usr/src/linux/fs.h
● devprot.c completo
http://www.mentebinaria.com.br/files/devprot.c
● Escolha um pra colaborar:
https://github.com/merces
14