Campus Party – Segunda Feira

Segunda Feira (17) foi o primeiro dia da Campus Party. Não teve muita coisa em termos de palestra. Mas já a partir das 12h a internet de 10 Gbps foi ligada e começaram-se toda  a movimentação. A animação é geral e os Gritos (Uoooou) animam e integram a galera.

Eu (Sheldon Led) já até falei sobre como seria minha viagem (No meu Blog Pessoal – Viagem estilo Hobbit rumo à São Paulo), onde disse que sairia de Goiânia até Uberlândia, econtraria com a Caravana, e de lá partiria para São Paulo! Houveram várias complicações, e quando chegamos na #Cpbr4 já eram cerca de 11h, para quem saiu de Goiânia as 14h do dia anterior, é muito tempo, quase 24h de viagem. Chegando aqui esperamos cerca de 7 horas na fila, para conseguir entrar, pegar a credencial, pegar a mochila, pegar outros brindes, achar a barraca, acomodar-se e então curtir o evento.

A noite foi legal, teve a Contagem Regressiva para o verdadeiro início da Campus Party. E logo em seguida teve show dos Semi Novos, cujo trecho você pode ver abaixo:

Logo após o término do show a galera esfriou um pouco, pois TODO MUNDO CANSOU com as horas e horas de filas e espera na porta da cpbr, e a maioria foi dormir. Esse evento está só começando, e promete bastante!!!

Entre os destaques dessa edição, está a participação do ex-vice-presidente dos Estados Unidos, Al Gore, que falará amanhã (18), às 13h, sobre a abrangência acadêmica e comercial da internet. No mesmo painel, também estará Tim-Berners Lee, considerado o pai e criador da WorldWideWeb, ao idealizar um projeto global que permitisse que pessoas trabalhassem em conjunto. Além deles, o diretor gerente da Wikimedia Foundation, Kul Wadhwa, também estará na Campus Party, assim como o co-fundador da Apple, Steve Wozniak, que fechará o evento no sábado (22) às 19h.

Microsoft, Google e demais empresas apoiam o HTML5

No início de 2008 o W3C – consórcio de empresas de tecnologia para levar a Web ao seu máximo potencial – anunciou a primeira especificação do HTML5 (Ouça nosso Podcast – HTML5). O HTML (Hypertext Markup Language) ainda na versão 4, continua evoluindo. Após cinco anos de trabalho, esta ainda é apenas uma versão de testes do HTML5, enquanto a versão final está prometida para 2012. Foram feitas grandes alterações, que incluem:

  • novas API’s, entre elas uma para desenvolvimento de gráficos bidimensionais e tridimensionais,
  • controle embutido de conteúdo multimídia,
  • aprimoramento do uso off-line,
  • melhoria na depuração de erros

Uma das promessas do HTML5 é a não-necessidade de se usar plug-ins para aplicações multimídia (Flash, Java, Silverlight, dentre outros). A primeira coisa a se pensar, é que o HTML5 será o “Flash Killer”, apesar de que o presidente da Adobe jura de pé junto que o HTML5 não abalará o mercado do flash.

Em 2010 o HTML5 cresceu assutadoramente, contando com o apoio dos principais navegadores web e das Grandes empresas, como Microsoft, Google e Apple. Por falar em Apple, O Ipad, grande gadget do ano lançado pela empresa, não roda flash, como uma forma de apelo ao desenvolvimento urgentemente necessário do HTML5.

Está acontecendo uma revolução no modo como a internet é. Esta evolução acontece desde sua criação, mas nunca esteve tão forte, com o HTML5 e a Web Semântica em desenvolvimento, os olhos de todos os desenvolvedores do mundo se voltam para a web, que deixa de ser vista como um conjunto de páginas, e trata-se agora de um web software.

Como o Bill Gates quebrou a cara não apostando na internet quando ela começou, agora a Microsoft quer recuperar o prejuízo, anunciando então o HTML5 Labs, um site de testes para os programadores experimentarem com as especificações iniciais das tecnologias emergentes com base no HTML5. Gerido pelo Interoperability Strategy Group da Microsoft, os HTML5 Labs serão onde a Microsoft irá testar protótipos com especificações das normas de organismos de normalização como o World Wide Web Consortium, que apoia o HTML5.

A microsoft lança também faz demonstrações usando as capacidades do HTML5 para testar velocidade de navegadores compatíveis e também do PC. Como estamos no natal, um dos aplicativos é: Santa’s Workshop, onde a velocidade do navegador de seu PC determina quantos elfos ajudam o Papai Noel, e quão rápido eles trabalham. Outro aplicativo é o HTML5 Blizzard, os usuários assistem flocos de neve caindo. “Quanto mais flocos de neve você vê, mais rápido são seu navegador e computador. Veja mais em: Internet Explore Test Drive.



O Google também não ficou para traz. O site divulgado é HTML5 Rocks, que traz exemplos e tutoriais diversos. Para quem quer começar no HTML 5 uma boa sugestão do site é o livro virtual Dive Into HTML 5, que começa contando a história de alguns elementos do HTML e a forma que eles adotam na versão 5. Uma apresentação interativa mostra exemplos rápidos dos novos recursos. Na verdade ao ouvir “HTML 5” pensa-se apenas em “HTML”. Mas não é bem assim, JavaScript e CSS 3 estão bem unidos no HTML 5.

E também tem aplicativos. O Google Labs lançou na quinta-feira o Google Body Browser, espécie de Google Earth do corpo humano baseado na tecnologia WebGL e HTML5. No experimento, o navegante pode explorar um modelo tridimensional do corpo humano e controlar a transparência de diversas camadas – pele, músculos, ossos, sistema digestivo, circulatório ou nervoso – com direito a zooms e a destacar determinado órgão. Tudo usando apenas as tecnologiasHTML5WebGL, plataforma aberta multi plataforma ainda em testes, desenhada para oferecer suporte 3D à web e que, portanto, dispensa a instalação de plugins ou outros recursos para funcionar.


Enfim, se você quer se destacar na web, PARE TUDO e comece a aprender HTML5. #fikdik

Publicando código fonte com Realce de Sintaxe utilizando o dp.SyntaxHighlighter

Tava eu pesquisando a respeito YUI, e no site do projeto vi que tinha lá os códigos dos exemplos com Realce de Sintaxe e como também precisaria de publicar código fonte do blog cliquei no ? para ver como é feito. Foi então que conheci a biblioteca SyntaxHighlighter.

A biblioteca dp.SyntaxHighlighter é feita e JavaScript e é completamente funcional, suportando uma grande quantidade de linguagens, além da possibilidade de extende-la com sua própria linguagem veja o site do projeto aqui.

Esse post será dividido em 4 partes que são as seguintes:

  • Configurando a página para aceitar os scripts
  • Inserindo o código e escolhendo a linguagem
  • Dicas e truques
  • Um exemplo de código personalizado

Baseados totalmente nas referências e do Site do projeto, e uma das principais referência é a esse post referenciado no site do projeto mesmo, segue o link para o post:

Configurando a página para aceitar os scripts

A primeira coisa a se fazer é inserir as referencias aos arquivos de JavaScript e CSS para a formatação do código. Alguns lugares indica que você baixe toda a biblioteca e suba no site em que será usado, eu preferi fazer referência direto nas versão corrente dos arquivos.

Insira logo após a tag <head> do seu template as seguintes referências:

<link href='http://alexgorbatchev.com/pub/sh/current/styles/shCore.css' rel='stylesheet' type='text/css'/>
<link href='http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/>

Esse são os CSS necessário, a segunda referência é a que definirá o tema e se você quiser outros temas pode verificar a listagem dos temas disponíveis e como ele ficam em Bundled themes.

É preciso também adicionar as referências aos arquivos em JavaScript.

<script src='http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js' type='text/javascript'/>

Esse é a linha necessária para que qualquer que seja a linguagem a ser postada funcione, então para cada linguagem tem um arquivo respecitivo. o exemplo a seguir é para dar suporte a JavaScript.

<script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJScript.js' type='text/javascript'/>

Veja a listagem de linguagens suportadas em Bundled syntaxes.

Agora só falta o script de inicialização, que é o seguinte:

<script type='text/javascript'>
SyntaxHighlighter.all();
</script>

Pronto, agora é só inserir o código.

Inserindo o código e escolhendo a linguagem

É simples! Precisa apenas colocar o seu código entre as tags </pre>...</pre> com a especificando o atributo class="brush:linguagem" onde a linguagem é a do código, segue um exemplo de código em JavaScript.

<pre class="brush:javascript">
alert('Mensagem!');
</pre>

O resultado é o que segue:

alert('Mensagem!');

Dicas e truque

Segue algumas dicas e truques na postagem do seu código.

Blogger

Tive alguns problemas para publicar os código no blogger, segue uma lista das soluções.

Editando o template

No painel para editar o seu template vá no Painel >> Layout >> Editar HTML.

Resolvendo problemas com quebra de linhas

Ao publicar o código sempre acontecia de onde tinha uma quebra de linha um tag <br/> aparecia.

No painel para editar o seu template vá no Painel >> Configurações>> Formatação >> Converter quebras de linha Selecione Não.

Publicando códigos HTML

Para publicar código em html/xml é necessário converter os sinais de maior e menor que, e você pode fazer isso facil facil utilizando a página Text -> HTML Entities Encoder.

Tabulação

Esse na verdade não achei uma solução, mais nem sempre os tabulação funciona, o blogger substitui por um espaço simple.

Um exemplo de código personalizado

É possível extender a biblioteca com linguagens que ainda não é suportado pela biblioteca, fiz um exemplo em Portugol baseado no modelo do site do projeto para demonstrar essa funcionalidade.

Fiz o arquivo em JavaScript e subi no google pages e adicionei a referência no template do blog.

SyntaxHighlighter.brushes.Custom = function()
{
var funcs  = 'leia escreva';
var keywords = 'se senão então para faça até enquanto fim programa declare';
var operators = 'módulo';

this.regexList = [
 { regex: /--(.*)$/gm,            css: 'comments' },
 { regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString, css: 'string' },
 { regex: new RegExp(this.getKeywords(funcs), 'gmi'),    css: 'color2' },
 { regex: new RegExp(this.getKeywords(operators), 'gmi'),   css: 'color1' },
 { regex: new RegExp(this.getKeywords(keywords), 'gmi'),    css: 'keyword' }
 ];
};
SyntaxHighlighter.brushes.Custom.prototype = new SyntaxHighlighter.Highlighter();
SyntaxHighlighter.brushes.Custom.aliases = ['custom', 'ctm', 'ct'];

Fiz um arquivo básico e o link é http://relsonto.googlepages.com/shBrushCustom.js se você quiser testar também.

Veja como ficou:

programa
 declare i

 leia i

 se (i módulo 2) = 0 então
    escreva "Número par."
 senão
    escreva "Não impar."
 fim se
fim programa

Fica aí o post e espero que tenham gostado, até o próximo.