Displaying posts with tag: desenvolvimento (reset)
Desempenho Web para o futuro

Comecei a trabalhar com desempenho web por volta de 2003. Minha primeira descoberta importante foi a Regra de Ouro do Desempenho:

80-90% do tempo de resposta do usuário final são gastos no frontend. Comece por aí.

Até aquele momento, toda a minha experiência em desenvolvimento web tinha sido no backend – Apache , MySQL, Perl, Java, C e C++. Quando eu vi quanto tempo foi gasto no frontend, eu sabia que a minha pesquisa de desempenho teria de se concentrar lá.

Minha primeira discussão sobre desempenho web foi com Nate Koechley quando ambos trabalhamos no Yahoo! (agora nós dois estamos no Google!). Eu não conhecia Nate antes, mas alguém me disse que ele era a pessoa certa para falar sobre desenvolvimento no lado do cliente. Eu não acho que YUI existia ainda, …

[Leia mais]
iMasters Box

O iMasters Box é um agregador de serviços voltado para desenvolvedores web, que reúne ferramentas úteis para esses profissionais e que já estão disponibilizadas na rede. Aqui na Revista, vamos selecionar sempre algumas das ferramentas mais interessantes para você. Conheça mais o iMasters Box em http://imasters.com.br/boxe participe! Sua sugestão de ferramenta pode vir parar também na Revista!

Seleção: João Antônio Mangueira – joao.antonio@imasters.com.br – envie suas sugestões de ferramentas!

Zoho Wiki

Zoho Wiki é uma ferramenta de registro de processos com recursos wiki, que também permite a criação de áreas de trabalho individuais. Nelas, o usuário pode organizar aplicativos e funcionalidades que deseje utilizar dentre as soluções da suíte Zoho (ferramenta para CRM, recrutamento, gestão de projetos, organização de …

[Leia mais]
Como você organiza os sub-módulos Maven?

Sendo um programador itinerante, uma das coisas que eu observei ao longo dos anos é que cada projeto com o qual você se depara parece ter uma forma ligeiramente diferente de organizar seus módulos Maven. Não parece haver uma maneira convencional de caracterizar o conteúdo dos sub-módulos de um projeto, e nem muita discussão sobre isso. Isso é estranho, já que definir as responsabilidades dos seus módulos Maven me parece ser tão importante quanto um bom design de classe e técnica de codificação para o sucesso de um projeto. Assim, à luz dessa falta de sabedoria, aqui estão os meus dois centavos…

Quando você entra em um novo projeto, você geralmente encontrará uma convenção de layout que vagamente corresponde ao definido pelo manual …

[Leia mais]
DatabaseCast: Índices

Olá, pessoal! Neste episódio do DatabaseCast, o podcast brasileiro sobre banco de dados, Mauro Pichiliani (@pichiliani) e Wagner Crivelini (@wcrivelini) percorrem os índices com os convidados Ricardo Rezende (@ricarezende) e Fabiano Amorim (@mcflyamorim). Neste episódio você vai relembrar como era procurar uma cena de um filme em VHS com um videocassete; saberá porque índices são importantes; a diferença que estatísticas atualizadas podem fazer na performance, como criar múltiplos índices iguais na mesma tabela e vai descobrir a fórmula rápida de perder um potencial patrocinador.

Não deixe de nos …

[Leia mais]
Vídeo: Open Web Social

Alê Borba, em sua participação no 7NMasters Open Web, em junho desse ano, trouxe à tona uma visão da Open Web fora da realidade dos desenvolvedores das grandes cidades: com smartphones de última geração, ou acesso à internet 3G. Ele propõe que além de pensar na Open Web, se pense na Open Web Social.

Alê é Community Manager no iMasters, onde trabalha com conteúdo especializado para desenvolvedores Backend e Frontend e desenvolve projetos como o 7Masters, Dojos e outros. Desenvolvedor Web com experiência em HTML, CSS, PHP Orientado a Objetos, JavaScript, MySQL PostgreSQL. Possui experiência com montagem e administração de servidores CentOS e suporte em estações de trabalho com Linux e Windows. Já foi revisor e articulista de open source para a Revista Espírito Livre.

Assista outros vídeos do 7Masters Open Web – e de outras edições – aqui:  …

[Leia mais]
WordPress sem limites: desenvolvimento inusitado com a plataforma

27 de maio de 2003 foi a data que marcou o nascimento da plataforma de gestão de conteúdo mais popular da atualidade – o WordPress tem, hoje, 18,9% de participação de mercado. São números expressivos e muito significativos que marcam esses dez anos de caminhada. A expressão é ainda maior ao se comparar dois de seus grandes concorrentes, Joomla! e Drupal, ambos com participação de mercado de 3,3% e 2,0%, respectivamente. (Dados coletados em 22/07/13, na W3Techs)

10 anos. 18,9% de participação de mercado. 58,7% de market share. Tantos números, inúmeras conquistas e ainda encontramos milhares de exemplos de uso do WordPress de forma limitada. Por quê? Por que não se pensa fora da caixa ao trabalhar com uma plataforma flexível, sem limites e com diversas facilidades para se criar, inovar e ousar com responsabilidade e segurança? …

[Leia mais]
DatabaseCast #35: Bancos de dados e grafos

Olá, pessoal! Neste episódio do DatabaseCast, o podcast brasileiro sobre banco de dados, Mauro Pichiliani e Wagner Crivelini navegam em nós e arestas de um grafo com a convidada Priscila Sato. Neste episódio, você vai saber como se divertir em uma cidade com pontes e cerveja, aprender como se define um grafo, as aplicações desta tecnologia, os principais algoritmos, como representar vértices e arestas, por que o seu personagem demora tanto para ir de um lugar para outro no RTS e finalmente descobrir quem ficou conhecido(a) como 486.

Não deixe de nos incentivar digitando o seu comentário, mandando e-mail para  …

[Leia mais]
DatabaseCast #34: MySQL para desenvolvedores

Olá, pessoal. Neste trigésimo quarto episódio do DatabaseCast, o podcast brasileiro sobre banco de dados, Mauro Pichiliani e Wagner Crivelini entram em uma reunião com o consultor Airton Lastori para conversar sobre o que o MySQL tem para oferecer aos desenvolvedores. Neste episódio você vai eliminar seu preconceito contra vendedores (e consultores), aprender como lidar com um dinossauro no seu jardim, descobrir onde o MySQL é utilizado, identificar fios de cabelos brancos e loiros, discutir sobre engines de bancos de dados e se preparar para reuniões onde sobrancelhas são levantadas, narizes são torcidos e clientes que quase vão para as vias de fato.

Não deixe de nos incentivar …

[Leia mais]
Erro na fila do Gearman: mysql_stmt_execute failed: Unknown prepared statement handler (1)

Se você estiver executando o Gearman a partir de uma versão que você mesmo compilou (ou você mesmo empacotou), pode acontecer de ter o seguinte erro. É a mesma mensagem para Ubuntu, Debian, CentOS/RHELL e seus clones.

[  proc ] mysql_stmt_execute failed: Unknown prepared statement handler (1) given to mysqld_stmt_execute -> libgearman-server/plugins/queue/mysql/queue.cc:356
[  proc ] gearman_server_job_add gearman_server_run_command(QUEUE_ERROR) -> libgearman-server/server.cc:284

O mesmo é visível nos logs /var/log/gearmand/gearmand.log, o que faz com que as filas falhem com uma mensagem de erro como esta:

Warning: GearmanClient::doBackground(): _client_run_tasks(GEARMAN_SERVER_ERROR) queue_insert_error:QUEUE_ERROR -> libgearman/client.cc:1522 in /path/to/script.php on line xxx

A solução é relativamente simples: você provavelmente não tem o pacote uuid instalado. O pacote é necessário …

[Leia mais]
O mito do melhor desempenho em banco de dados

Olá, pessoal. Neste artigo vou abordar um tópico muito importante para quem trabalha com banco de dados: a melhoria de desempenho também conhecido como performance em banco de dados. Veremos que, de acordo com a documentação oficial dos bancos de dados atuais, ainda estamos muito longe de caracterizar o que realmente gera ou não melhor desempenho no banco.


Antes de começar, vamos imaginar uma situação hipotética que pode acontecer no dia a dia de qualquer profissional que esteja envolvido com banco de dados. Durante o desenvolvimento de algum sistema ou aplicação web, alguém cita que utilizar tal funcionalidade X ou parâmetro Y ou mesmo arquitetura Z gera um desempenho melhor em banco de dados. Até aqui tudo bem, porém são raros os momentos em que alguém se dispõe a quantificar o quanto de desempenho espera-se obter. Esta é uma questão muito …

[Leia mais]