terça-feira, 29 de dezembro de 2009

ITIL - O que vou dizer lá em casa?

Como estou estudando para a certificação ITIL V3, um amigo me recomendou um blog chamado ITIL Blues para esclarecimento de dúvidas e curiosidades. Lá encontrei um post entitulado “Seven “ITIL is not” statements” que lista sete coisas que o ITIL não é. Veja o post original em inglês aqui e a tradução abaixo:

1. Não é tecnologia – É gerenciamento de serviço de TI.

2. Não é a palavra final – É uma referência, um bom começo.

3. Não ensina como fazer nada – É um norte sobre o que fazer.

4. Não é uma ferramenta – São responsabilidades, atividades, resultados… que precisam de ferramentas.

5. Não é instantâneo – É gradual (para humanos!).

6. Não é mágica – Apenas re-uso de senso comum.

7. Não é pacífico – Sempre aponta para mudanças organizacionais.

Esta lista me serviu para esclarecer o que era ITIL para pessoas que nunca tinham ouvido falar nisso e para aqueles que ouviram e entenderam errado. Como quando somos crianças e aprendemos o conceito de certo ouvindo nossos pais nos dizerem de forma incansável a palavra "não". E não é que funciona? :)

Referência: http://itilblues.wordpress.com/

Yes we can! Oops.. We touch!


Domingo passado, assisti uma matéria no Fantástico que mostrou o restaurante Inamo, situado em Londres, que utiliza uma mesa com um dispositivo “sensível ao toque” para possibilitar a navegação. Enquanto espera-se o pedido ficar pronto, é possível passar o tempo jogando ou pesquisando o cinema mais próximo por exemplo.

Como era de se esperar, a matéria foi bem superficial, com uma conotação mais turística do que tecnológica e não contou ao menos a tecnologia usada. Resolvi aproveitar a falha e escrever um post sobre a Microsoft Surface, mesa multi-touch, que já está sendo utilizada em lojas, restaurantes, bares, escolas e empresas.

Entrei no site do restaurante e descobri que ele usa um sistema próprio chamado E-Table. Olhe como funciona:


Achei muito bacana, mas também muito específico. A Microsoft Surface oferece um leque muito maior de possibilidades.

Mas enfim, são 00:34 hrs e meu post acaba de ser destruído pelo nosso glorioso colaborador Piedade, que após ser questionado sobre o funcionamento do tal projetor + touch panel, utilizado na E-Table, me deu a seguinte explicação:

"Rubens: ok... mas eu ponho o dedo em cima do botão ou controlo só pela bolinha?

Leo: por sobreposicao o pc sabe se tu apertou o botao

Rubens: pra que que a bolinha existe então?

Leo: cara.. vamos denovo
cara é um panel..
ele provavelmente é em formato de uma bola
mas poderia ser quadrado, blz ?

Rubens: ok

Leo: no meio da bolinha eu posso fazer aparecer um ursinho ?
pode ser ?

Rubens: ok

Leo: ai tu aperta na cara do ursinho e nada acontece, ok ?
ai depois eu faço aparecer um leãozinho.. kkkkkkkk
ai o garçon.. vem com a cabeça de um macaco frita
dizendo que foi o que tu pediu
sacou agora?"

Depois dessa conversa não consigo parar de rir. Mal consegui reproduzí-la aqui. Prometo que escreverei um post com mais detalhes sobre a Microsoft Surface em momento mais oportuno.

Para mais informações sobre a E-Table clique aqui.

Para mais informações sobre a Microsoft Surface clique aqui.

E assista a um vídeo aqui.

domingo, 27 de dezembro de 2009

Ativando o som no Linux


Como já esperava, algumas configurações estão sendo necessárias, claro que bem mais simples do que nas primeiras versões de Linux, mas a grande maioria delas poderiam ser feitas durante a instalação. Um bom exemplo disso é o som, que não estava funcionado.

Para configurar o dispositivo de som:
#alsaconf

Porém, ao fazer isso, o controlador de som fica configurado para mudo, então:
#kmix

O kmix exibe um ícone do som ao lado do relógio. Clique no ícone e depois no botão mixer, irá abrir uma janela, vá em Settings > Configure Channels e adicione o painel Speaker. Não sei porque, mas ele está marcado com a opção mudo. É so alterar e pronto!

Configurando o teclado no Linux


Apesar de ter informado o layout correto do teclado durante a instalação do Slackware, a configuração ficou a default. Para alterar usando o KDE 4, é só acessar
K > System Settings > Regional
& Language ou:
#systemsettings

No meu caso foi preciso apenas adicionar o layout "Brazil br" em Active layouts.

Algo me diz que ainda vou ter um certo trabalho por ter optado pelo Slackware.

sábado, 26 de dezembro de 2009

Configurando a rede sem fio no Linux



Com o Linux instalado, como de costume, no Slackware muitas configurações devem ser feitas from scratch. Obviamente que uma das coisas mais importantes é a configuração da rede. Estou usando o Slackware 13. Primeiro problema, encontrar a rede. Os passos:

Para atualizar o arquivo de configuração:
#wpa_passphrase nome_rede senha_rede > /etc/wpa_supplicant.conf

Ao executar wpa_supplicant são listados os drivers. O primeiro que tentei foi o wext (um driver genérico).

Para ativar a placa de rede e a interface wlan0:
#wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf -D wext

Ao executar o ifconfig vi que a interface wlan0 foi adicionada, porém não havia IP atribuído.

Para atribuir um IP a interface, vindo do servidor DHCP:
#dhclient wlan0

Pronto.. rede funcionando! Segundo problema, incluir esse procedimento na inicialização do Linux. Alterando as chaves em: /etc/rc.d/rc.inet1.conf

IFNAME[4]="wlan0"
USE_DHCP[4]="yes"
WLAN_ESSID[4]=nome_rede
WLAN_MODE[4]=Managed
WLAN_RATE[4]="54M auto"
WLAN_CHANNEL[4]="auto"
WLAN_KEY[4]=""
WLAN_IWPRIV[4]="set AuthMode=WPAPSK set EncrypType=TKIP set WPAPSK=af7e6efd5b5523ae43c7925ff4df2f8b7099495192d44a774fda16"
WLAN_WPA[4]="wpa_supplicant"
WLAN_WPADRIVER[4]="wext"

Espero que ajude alguém...

Referência:

Dual boot Linux e Windows 7, partição esquecida!


Bom, depois de alguns meses usando apenas o Windows 7 Ultimate na minha máquina, senti a falta de voltar a usar o Linux, portanto, resolvi instalá-lo novamente, baixei o Slackware 13, uma distro que tenho um certo laço afetivo, por ter sido o primeiro Linux que usei. Não quero entrar nas discussões sobre escolha da distro aqui.

Instalando-o, notei que o instalador não sofreu melhorias gráficas. Tive que instalar duas vezes pois, na primeira tentativa, o processo simplesmente parou! Ao configurar o LILO, por força do hábito, apontei para partição do HD onde o Windows estava instalado, porém ao iniciar retornou um erro sobre não haver o registro do boot. Algum tempo depois me lembrei que ao instalar o Windows 7 foi criada uma outra partição, usando o cfdisk confirmei que a partição era a responsável pelo o boot do Windows, alterei em /etc/lilo.conf para a partição correta e executei o lilo para regravação da MBR.

Agora com o Linux de volta a minha máquina, é só configurar, aprender, sofrer, configurar, aprender... eita vida boa!

quarta-feira, 23 de dezembro de 2009

E o Papai "Nooel"...

Hoje pela manhã, recebi por email uma mensagem de boas festas da equipe Google Brasil. Não aguentei e resolvi compartilhar com vocês:

“Olá

Porque nos aproximamos do final do ano, queremos agradecer o tempo, energia, empenho e confiança que compartilhou conosco ao longo de 2009.

Com o desejo de dividir, decidimos fazer algo um pouco diferente esse ano. Esperamos que você considere adequado ao espírito da época de festas.

Estamos ansiosos a continuarmos o trabalho em 2010, para alcançarmos juntos muito sucesso.

Boas Festas

Equipe do Google Brasil.“

Sútil como sempre foi em suas “manifestações ideológicas”, a mensagem possui um link na parte “algo um pouco diferente”. É muito bom ver que em tempos de individualismo e competição, uma gigante da indústria de TI nos dá um belo exemplo de coletivismo e colaboração.

O Osseva Golb também agradece aos leitores que por aqui passaram. Boas Festas!

Termos que se repetem - DSL


É engraçado como alguns nomes e termos se repetem em computação e, o mais engraçado ainda, são as conversas de profissionais das diferentes áreas da TI. Imagine uma conversa de um Arquiteto de Soluções, um Especialista de Telecom e um Analista de Suporte, durante a conversa, sem o contexto necessário, alguém cita a sigla DSL. O que será que vem no primeiro momento na cabeça de cada um? Temos as seguintes opções:

  1. Domain Specific Language: É uma linguagem que tem um foco em um domínio específico, diferente de linguagens de propósito geral, como o Java, elas buscam facilitar o desenvolvimento de algum aspecto no sistema. Alguns dos exemplos mais comuns são: SQL, CSS.

  2. Digital Subscriber Line: É um conjunto de tecnologias baseadas na rede de telefonia convencional para transmissão digital de dados em uma faixa diferente da voz.

  3. Definitive Software Library: Definido dentro do ITIL como uma biblioteca para o armazenamento das versões definitivas e autorizadas de todos os itens de configuração. Foi substituído pelo termo DML (Definitive Media Library) no ITIL V3.
Provavelmente, se você está familiarizado com o termo, deve ter pensado em alguma dessas coisas, ou será que você pensou em algo bem diferente como “Dynamic Silverlight”?

sexta-feira, 18 de dezembro de 2009

E o Java, parou?

O Brasil tem uma das maiores comunidades Java do mundo. Uma parte desses desenvolvedores são realmente muito bons no que fazem e a plataforma Java, obviamente, dá suporte para isso. Porém, ao se falar em Java perto dos amantes de outros “times”, logo se iniciam as longas discussões fervorosas, quase que “religiosas”, sobre o assunto. Em geral, surgem os mesmos argumentos contrários à plataforma: “Java serve apenas para Web”, “Java é lento demais”, “No Java tudo é mais complicado”, “Para que tantos padrões para fazer uma simples tela de cadastro?”.

Bom, não vou entrar nessa discussão. Não é esse o objetivo do post. Mas uma coisa é verdade e infelizmente tenho que admitir: o Java deu uma “esfriada”. Não que as pessoas pararam de utilizá-lo, mas sim que não está fazendo parte das inovações que estão vindo por ai. Em contrapartida, a Microsoft está lançando o .Net Framework 4.0 e toda uma linha de produtos para apoiar sua iniciativa de Cloud Computing e outras linguagens como Ruby e Python certamente ganharam seu espaço nesses últimos anos.

E o Java? O último lançamento oficial foi o Java 6 que, sinceramente, não trouxe muitas alterações relevantes para a plataforma. Porém, está previsto para o segundo semestre de 2010 a JDK 7 com várias modificações importantes, algumas delas:
  1. Suporte da JVM a múltiplas linguagens;
  2. Um novo Garbage Collector;
  3. NIO 2;
  4. Modificações na sintaxe da Java como a inclusão do Multi-Catch;
  5. Closures;

Pelos itens citados acima, será que podemos acreditar em ganho de performance, otimização do gerenciamento de memória, um I/O realmente robusto e uma liberdade de linguagens? Para os seguidores de Java, o que resta é ter esperança e continuar contribuindo para que isso aconteça.

Links:

Google Chrome OS

Após ter ouvido alguns colegas de trabalho comentando que a Google havia lançado seu sistema operacional chamado Chrome OS, fiquei perplexo por não saber ainda que o lançamento oficial, por mim tão esperado, já havia acontecido. Assim que cheguei em casa corri para frente do computador para procurar informações a respeito.

Descobri que a Google ainda não lançou o Chrome OS oficialmente, mas já liberou os códigos e estão circulando na internet algumas compilações não oficiais para fins de teste nomeadas Chromium OS. Para instalá-las é preciso emular uma máquina virtual em seu computador, coisa que não permitirá que testes relativos à performance sejam realizados pois o Chromium OS rodará em cima de seu sistema operacional vigente.

Não consegui logar na tal versão por que a máquina virtual criada não foi capaz de usar a internet de meu computador. Mesmo tendo pesquisado sobre o erro e ter testado alguns tutoriais não obtive sucesso. Resolvi deixar de “gambiarras” e aguardar a versão oficial.

No blog do Google achei um post entitulado “Introducing the Google Chrome OS” que afirma que o Chrome OS é open source, leve e que a princípio será voltado para netbooks e promete que ele estará disponível aos consumidores no segundo semestre de 2010.

Ainda de acordo com tal post, o sistema terá seu foco em velocidade, simplicidade e segurança e se trata de um novo sistema de janelas rodando em cima de um Linux kernel. Basicamente seria o que muitos chamam de web 4.0 ou web SO (permitam-me o exagero), um sistema operacional que na verdade é um grande browser que integra os serviços Google em um só lugar (bem parecido com o Google Wave mas com uma visão muito maior). Para os desenvolvedores, a web será a plataforma.

Imaginem o que isso representará para a maioria dos usuários de computadores. Um sistema operacional livre de vírus, totalmente integrado com a núvem, sem necessidade de hardwares muito caros, enfim, tudo que Dona Clotilde sempre pediu e um pouco mais.

Para completar o post, não poderia deixar de comentar sobre a belíssima resposta que Jon ‘Mad Dog’ Hall, presidente da Linux Internetional, deu a Sérgio Amadeu, da Fundação Cásper Líbero, quando questionado a respeito do Chrome OS no programa Roda Viva que assisti em outubro deste ano. Confiram abaixo:

Sérgio: “... Recentemente nós ficamos sabendo que o Google está desenvolvendo um sistema operacional também. O que você acha do Google? Ele é aliado ou ameaça ao software livre?”.

Mad Dog: “Eu gostaria de poder olhar no coração dos homens e saber se eles são maus ou não. Infelizmente não posso. Sei que o Google tem contribuído muito para o software livre, patrocinando coisas como o Summer of Code. Eles mantiveram a palavra quanto à criação do sistema operacional andróide e a publicação de seu código. Eles dizem que farão o mesmo com o Chrome OS, sistema operacional que estão criando e usando o Linux kernel como apoio. Se o Chrome OS chegar a um grande número de computadores, os fabricantes de periféricos, como USB-stick e coisas do tipo, irão criar drivers de dispositivos que rodam não apenas no Chrome OS, mas também em sistemas Linux comuns, que nos ajudará a levar ainda mais sistemas Linux às pessoas que desejam usá-lo”.

Para saber mais sobre o Chrome OS clique aqui.

Para assistir ao programa Roda Viva com participação de Jon ‘Mad Dog’ Hall clique aqui.

quinta-feira, 17 de dezembro de 2009

Quem é responsável pela qualidade de software?


Sempre que trabalhei com desenvolvimento de software, ele era realizado internamente nos modelos comuns de demanda de automação para serem utilizados pelo cliente-patrocinador ou como um produto da empresa. A qualidade sempre foi uma grande preocupação e, em alguns casos, os custos das atividades relacionadas com “qualidade” foram maiores que a implementação do software. Dentre essas atividades, temos: auditoria de documentos, revisões de projeto, revisões amostrais de código, testes manuais e automotizados, etc. Acredito que o mínimo esperado de um software de qualidade deve ser que os usuários finais realmente tenham condições de utilizar o software, ou seja, nenhum erro nas principais funcionalidades, bom desempenho e interface amigável.

Essa realidade ficou no passado, pois agora por motivos diversos estou diante da necessidade de contratação de fornecedores. Fornecedores que fazem mil promessas durante a venda do serviço e, ao serem questionados sobre a dificuldade de se construir o sistema que está sendo negociado, adoram "bater no peito" e dizer frases como: “isso é muito simples”, “fazemos isso o tempo todo”, “acabamos de entregar algo parecido para outro cliente”, “temos um desenvolvedor que entende tudo dessa tecnologia”, e muitos profissionais dessa área se sentem confortáveis ao ouvir esse tipo de coisa mas esquecem que depois da entrega, o suporte, muitas vezes, será feito pela sua equipe interna.

Após a entrega os problemas começam, em alguns sistemas já na fase de implantação. Ao precisar fazer alguma simples alteração ou correção de algum bug pequeno, olhamos para dentro do código e vemos que algumas partes foram feitas com ‘preguiça de pensar’ e em entregar algo bem construído. Agora o que vejo nessas outras empresas é algo que se parece com um pacto em que, por vezes, qualidade é atropelada pelo tempo, “nunca há tempo para fazer bem feito” ou para realizar todos os testes.

Entendo que “qualidade” é um conceito subjetivo, mas se as empresas em modo geral, não apenas da área de TI, ignoram isso é como se ignorassem o próprio cliente. Existem vários modelos, metodologias e processos a respeito, porém acho difícil serem usados com essa cultura de que os gastos com esse tipo de atividade são opcionais ou desnecessários.

Porque quando desenvolvemos softwares internos eles geralmente têm uma ótima qualidade? Logicamente porque as reclamações vêm dos colegas ao lado e de si mesmo, é o chamado dog food. A qualidade é cobrada na hora do almoço ou do cafézinho, talvez não seja o melhor meio, mas é uma forma de exigir qualidade.

É verdade que existem milhares de empresas atualmente com este tipo de serviço no Brasil, mas o que para alguns é visto como um mercado já saturado e concorrido, eu vejo como um mercado cheio de oportunidades e a busca do diferencial pode ser basear-se em um ponto elementar: a qualidade do que é entregue ao cliente. Parece muito simples mas. Infelizmente, não é uma realidade.

Então quem é responsável pela falta de qualidade em software em um país onde temos as várias competências necessárias? Muitos diriam que é um problema de gestão dentro dessas empresas fornecedoras mas eu não acredito nisso. Penso que é de responsabilidade do cliente em não mais aceitar esse nível de serviço, porque só assim pode ocorrer uma mudança fundamental no mercado, cortando a fonte de receita dessa empresas. Obviamente isso não é algo simples, ainda mais para clientes sem uma boa área de TI para realizar esse tipo de avaliação. Portanto, cabe a nós enquanto clientes exigir que tenha qualidade e, claro, pagar o preço justo por isso.

Novo Colaborador

A partir de hoje, o Osseva Golb conta com a colaboração de Leonardo Piedade, profissional da área de TI. Além de grande amigo, Piedade, como é conhecido, exerce grande influência em minhas "convicções tecnológicas".

Confira aqui seu primeio post.

sábado, 12 de dezembro de 2009

Desenvolvimento Ágil

Esta semana um amigo me emprestou a revista TIDigital, edição novembro 2009, que possui uma matéria bem interessante sobre desenvolvimento ágil. Após ler a matéria, resolvi escrever um post a respeito do assunto.

Em conversa com esse mesmo amigo sobre a aplicabilidade de metodologias ágeis, chegamos a conclusão de que tais práticas funcionariam melhor em uma equipe de sêniors, não em registro, mas sim em maturidade.

Conheça o Manifesto Ágil aqui.

Além do manifesto, existem 12 princípios a serem seguidos para o desenvolvimento ágil de software:

1° princípio:

“Nossa maior prioridade é satisfazer o cliente através de entregas rápidas e contínuas de software usual”.

Sabe-se que a entrega é um dos maiores desafios da industria de TI, dado o atual grau de insucesso dos softwares. Confira o Chaos Report confeccionado pelo Standish Group:

Repare que o Standish Group entende como fracassado (vermelho) um projeto cancelado ou entregue e nunca utilizado e como desafiado (amarelo) um projeto que atrasou, custou mais ou entregou menos. O gráfico demonstra que em 2009 os projetos considerados sucesso (verde) somam aproximadamente 30% contra 70% de softwares fracassados ou desafiados. Imagine se mudássemos o cenário, e que ao invés de software, estivéssemos falando de carros, isso significaria que a cada 10 carros que você comprasse, apenas 3 funcionariam e 7 não funcionariam ou funcionariam com inúmeros problemas.

2° princípio:

“Seja bem vindo à mudança de requisitos, mesmo que tardiamente, no desenvolvimento. Processos ágeis aproveitam a mudança para a vantagem competitiva do cliente”.

3° princípio:

“Entregar software utilizável frequentemente, e algumas semanas a alguns meses, com preferência e menores escalas de tempo”.

Pequenas entregas aumentam muito a chance de sucesso de um software. Quando o software é colocado em produção é que pode-se verificar se ele atende a necessidade daquele negócio ou não de forma menos abstrata. Confira o gráfico do Standish Group para o uso das funcionalidades de um software:

Note que apenas 7% do software é utilizado sempre e 13% utilizado frequentemente, e que 64% do software é nunca ou raramente utilizado. Isso significa dizer que em um projeto de 1 milhão de reais, o cliente pagaria 640 mil por funcionalidades talvez desnecessárias.

4° princípio:

“Executivos e desenvolvedores devem trabalhar juntos diariamente durante o projeto”.

5° princípio:

“Construa projetos em torno de indivíduos motivados. Dê-lhes o ambiente e a ajuda de que eles precisam e confie neles para ter o trabalho concluído”.

6° princípio:

“O método mais eficiente e eficaz de transmitir informações para uma equipe de desenvolvimento e dentro dela é a conversa face a face”.

Por experiência própria posso confirmar que o método mais eficaz para transmitir informações é pela conversa face a face. Geralmente escrevo melhor do que falo, coisa que faz meus emails ficarem formais demais e, por consequencia, ríspidos, isso pode causar no receptor um certo desconforto, insegurança, raiva, etc.

7° princípio:

“Software funcional é a medida primordial do progresso”.

8° princípio:

“Processos ágeis promovem desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários deveriam ser aptos a manter um ritmo constante indefinidamente”.

É comum ouvirmos piadas a respeito da inconstância no desenvolvimento de software. Costuma-se dizer que “os primeiros 90% do software levam 90% do tempo para ficarem prontos e os 10% finais levam mais 90% do tempo para serem concluídos”.

9° princípio:

“Atenção contínua à excelência técnica e bom design aumentam a agilidade”.

10° princípio:

“Simplicidade – a arte de maximizar a quantidade de trabalho não feito – é essêncial”.

11° princípio:

“As melhores arquiteturas, requisitos e design surgem de um time auto-organizado”.

É tempo de as fábricas de software passarem da versão 1.0 para a 2.0, pois assim como a web, devem ter um caráter colaborativo mais intenso.

12° princípio:

“Em intervalos regulares, o time reflete sobre como tornar-se mais eficiente, então sintoniza e ajusta seu comportamento”. (Lembra da consideração inicial sobre a equipe de sêniors?)

Deseja saber mais sobre o assunto? Clique aqui e leia uma reportagem completa sobre SCRUM, um dos métodos ágeis mais utilizados atualmente e que vem se popularizando no Brasil, publicada na revista TIDigital na edição de abril/09.

sexta-feira, 4 de dezembro de 2009

Windows Azure e WordPress


Vocês poderiam imaginar ver o Ray Ozzie, chief software architect da Microsoft, ao lado de Matt Mullenweg, founding developer da WordPress, dividindo o mesmo palco em uma apresentação do PDC09? Imaginar a Microsoft oferecendo suporte para PHP, MySQL e Apache no Windows Azure muito menos?

Separei um trecho da apresentação do Matt Mullenweg no PDC09, contando de forma superficial a adesão da WordPress ao Windows Azure. (Na verdade não sei se adesão foi do WordPress ao Azure ou do Azure ao WordPress :) ). Segue trecho abaixo:

"... MATT MULLENWEG: Good morning, everybody!

Do we have any WordPress users here in the audience? Nice! Thank you, thank you.

I'm very excited to be here. Just to give you a little bit about my timeline, about six years ago, as a 19-year old poly-sci student, I started working on an Open Source GPL, PHP and MySQL project named WordPress. About four years ago, I founded a company called Automattic to bring WordPress to the masses, which was done to about 200 million people with WordPress.com.

Then about a month ago, I get a phone call from a guy named Jeff Sandquist, and he says, Matt, remember that thing I told you would never happen, and I said, what's that? And he said, we're going to have MySQL, PHP, and Apache support on Windows Azure.

So, I looked outside, peaked out the window, made sure there were no pigs, and I said, well, get me out there, I'd love to show this. So, that's what we're going to be showing you right now.

As you can see, right here on the Azure back-end, and we have a production WordPress blog here. So, I can click on it, and you will see the beautiful big blue header, everything that you've come to know and love about WordPress blogs.

But as you know, blogs are no more longer about just personal publishing, they're being used for big news sites, they're being used to cover everything. And so sometimes you get varied traffic.

So, as you can see, we have a MySQL and an Apache instance here. Let's say my blog gets on Slashdot or Channel 9 or Digg or something like that, and we need to scale it up. We go right here in this beautiful XML file and change it from one instance in Apache to -- how many should I go to, a hundred, a thousand? I don't know a thousand to do that.

So, you can put it however you like, though. You just click the button, and that will take you all the way back, it will reload, it will deploy the instances, bring up all the machines, deploy the virtual machines, everything like that, and instantly add it to the load balancer and you have a fully scaled WordPress.

Now, what's interesting a few months ago, because we had the election cycle in the United States, and we hosted about 10 million blogs at the time. So, we were seeing all range of really some of the biggest traffic we'd ever seen to blogs.

There were two blogs that were at the very top. One was CNN Political Ticker. It had deep, insightful analysis, really talking about the future of the free world was in the hands, hung in the balance in this election. And then on the other side we had a blog with pictures of cats and funny captions, battling every day for top traffic. I'm not joking.

So, to show you one of the engineers behind the other biggest blog, WordPress blog in the world, I wanted to invite out Martin Cron, who is one of the engineers behind I Can Has Cheezburger. Hey, Martin.

MARTIN CRON: Hi. Thank you. Nice intro. (Applause.)

Hi, everyone. My name is Martin Cron. I work for the Cheezburger network. You may recognize the site, including I Can Have Cheezburger, and FAIL Blog. You like that one, good. And Pundit Kitchen, which is our news and political blogs.

We have a network of about 40 blogs. They're all humor Web sites, they're all running on the WordPress platform.

We get about 8 million page views a day. All of our content is user-generated. We have about 10,000 submissions to our platform every day. And all of our content is user peer rated. So, we have about 100,000 votes every day that we process to know what things are good enough to feature on the front page. So, we look at the crap so you don't have to of all these funny pictures.

We've been launching more and more news sites. So, the strategy of we don't know exactly what's going to be funny, we don't know exactly what's going to work, so we're going to just throw things out there and see what catches on. We need to be able to throw things out there really cheaply. But we also need them to scale up.

This is some real-life traffic from just a couple of weeks ago, and you can see we're hovering along about 50,000 page views, and then all of a sudden we get a spike. And that spike could be a cross-promotion from FAIL Blog, that site could be showing up on Digg or on ReadIt or on Slashdot or whatever.

And then afterwards, the sort of hungry hordes of Internet users, they move on to the next big thing, but the people who really liked the site, our core audience, the people who are going to comment and send in stuff and come back day after day, that's the people who are the real revenue for us, they come back, and establish what I call the new baseline number.

But this dashed line here shows what would happen if on the day of our spike bad things happen, half of our traffic gets turned away. Well, then half of our recurring audience doesn't even know what we exist really, so they don't come back.

So we need to be able to scale up really quickly, but we also need to be able to scale down, because it's wasteful to support this degree of spike-level traffic all the time. We can't afford to do that. It's really easy to buy new servers, but it's kind of hard to give servers back. It's like, oh never mind, I don't need this one anymore.

So what we're doing is we're launching a new site today on the Windows Azure platform, and it's running with SQL Azure on the back-end where you can go see Windows Azure blob storage.

So, the new site is called OddlySpecific.com, and it's a Web site about really strange signage. (Laughter.)

It might not work for everyone. I think this one is cute. (Laughter.) And, see, I get to decide, because we get a lot of signage permissions from FAIL Blogs that aren't really FAILs, they don't really fit the FAIL Blogs, but they're really funny.

So, this site just launched today, and it's running on SQL Azure at the back-end, Windows Azure for instances, and if it gets really popular, we can just increment the number in the config file, we've got more instances to serve.

On the back-end we have a plug-in for WordPress that lets you use the Windows Azure storage platform, which is great because all the Windows Azure instances are stateless, and you can put in a custom URL, custom domain name for how the images are served, which looks really good, and then we can also use the CDN. So, in addition to this being easier for me, because I don't want to have to deploy servers anymore than anyone else does, we get a better experience for our users.

So, Oddly Specific, all the content is user-generated. If you see a funny sign, please send it to us. Thank you. (Applause.)..."

Para ler a apresentação na íntegra, acesse:

http://www.microsoft.com/presspass/exec/ozzie/2009/11-17PDC.mspx

quinta-feira, 3 de dezembro de 2009

Google Wave

Após duas semanas de espera, recebi o convite para o Google Wave, que é uma nova forma de comunicação e colaboração que será útil para grupos obterem mais produtividade online. Um grupo poderá trabalhar com texto, foto, mapa, vídeo e muito mais de forma realmente simultânea. Também é possível criar rôbos e gadgets.

Romântico que sou, acredito que o Google Wave é a cristalização da tão falada Web 3.0.

Quer saber se você concorda com essa afirmação?

Assista o vídeo abaixo:

Solicite seu convite em:

http://wave.google.com/