Skip to: Site menu | Main content

Treinamento Cop-Jr

Damos inicio hoje, 08/05/2007, o treinamento Cop-Jr de nivelamento de conhecimento. Esse treinamento é uma série de encontros que abordaremos assuntos e conceitos que envolvem o Desenvolvimento Web.

Novamente este evento é aberto a todos, gratuito e sem necessidade de inscrição. Será às 18:30 no MDC-2 do Departamento de Computação. O assunto que conversaremos hoje será Cliente X Servidor (Arquitetura WEB), onde tentaremos identificar e explicar estes dois papeis dentro da arquitetura WEB.

Portanto convido a todos a participarem.

Mais informações mande um comentário.

Programação Ao Vivo

Pessoal,

Minhas sinceras desculpas por fazer esse convite em cima da hora, mas HOJE às 18:10 no Departamento de Computação (MDC-2) teremos um evento de programação ao vivo.

O esquema é simples, iremos desenvolver um de nossos projetos, no caso o site de Secomp, projetando todas as nossas ações no telão, eu serei o desenvolvedor e estarei narrando os meus passos. Com isso esperamos demonstrar algumas práticas de programação para desenvolvimento WEB. Quem se interessa por Html Semântico, Tableless, CSS, Padrões WEB, etc. será um prato cheio.

Todos estão convidados, não precisa se inscreve e é gratuito.

Obrigado e mais uma vez desculpa pela demora do aviuso.

Voce paga por algo que ajudou a fazer?

Me ajudem no meu pensamento por favor…

Imaginem se você baixa um programa de graça sabendo que é um beta. Utilizando o programa você descobre alguns bugs, os reporta para a empresa responsável tudo certinho como manda o bom censo dos beta testers.

De repente depois de utilizar um programa bugado e ajudar a melhorá-lo você descobre que você não podera mais usar este programa que você tanto sofreu pra arrumar, e vai ter que pagar uma fortuna para comprar um novo.

Você compraria o programa?

Obs.: Isso aconteceu no caso com os beta testers do Windows Vista

As EJs são feitas de caras do fundão

Recentemente fui a um churrasco onde a maioria eram empresários juniores. Em um certo momento ouvi um empresário dizer: “empresas juniores são feitas de alunos do fundão” . Após a ocasião comecei a refletir no que eu tinha ouvido.

Os alunos do fundão, pelo menos onde eu estudava, eram aqueles alunos mais ativos, mais motivados e os que melhor(ou pelo menos que mais) se comunicavam. É claro que são os mais bagunceiros mas, essa e mais outros problemas são resolvidos em sua maioria conforme este atinge uma maior idade.

A Google anunciou esta semana sua receita. Uma considerável quantia de U$3,66bilhões, com um crescimento de 63% comparado ao mesmo período do ano passado. Algumas vezes já ouvi falar que a Google é uma das melhores empresas a se trabalhar onde um funcionário tem inúmeros benefícios e ganha muito bem. Fui dar uma olhada nos requisitos para se trabalhar na Google e para minha surpresa vi que dentre eles estavam: excelência em comunicação oral, auto-motivação, e era necessário a pessoa ser enérgica.

Após essas considerações acho que os professores e as escolas deveriam considerar e advertir os alunos nerdões e não os do fundão. Já até imagino o documento.

Advertência:

Advertimos os senhores pais que o Aluno ……………………, não corresponde ao perfil da escola e se nada for alterado ele com certeza não terá chances de trabalhar no Google.

Obs.1: Não é só porque você é um cara do fundão que você vai trabalhar na Google.

Obs.2: Não aguentei e tive que colocar. Um dos requisitos do Google é ter experiência em UNIX e GNU/Linux.

Comunidade é feita de pessoas, não de ferramentas

Olá pessoal, fiquei muito grato quando li alguns comentários elogiando nossa iniciativa de expor experiências, ferramentas, conhecimento e etc. Esperamos corresponder com as expectativas de todos.

Eu vou contar aqui uma história (que nem é tanto história pois ela esta acontecendo ainda). Nos últimos 2 ou 3 meses, um amigo meu (vou guardar o nome até o final do post para manter um suspense, =D) começou a desenvolver web. Saindo da total ignorância do assunto, ele atingiu uma habilidade impressionante em apenas 3 meses, eu digo que ele é um caso de sucesso. Hoje, mesmo eu tendo uma experiência maior, conversamos de igual sobre os assuntos mais variados que se pode encontrar na internet, o que me faz aprender bastante. Mas isso não é um milagre, um caso de sucesso não acontece por nada, existe alguns fatores e/ou algumas variáveis que expliquem tal fenômeno. Vou tentar identificar esses fatores para explicar o que eu disse no título do post.

O primeiro fator foi dedicação, isto ele teve bastante e ninguém pode negar. O segundo, que acho importantíssimo, é o fator Aprender-Fazendo. Eu cada vez mais estou ciente que não existe aprendizado se não houver prática. E o terceiro, a colaboração. Eu tive a felicidade de estar presente em quase todo o percurso que ele percorreu até chegar aonde chegou. Mas não se engane achando que fiquei no lado dele, vendo aonde ele errava, aplicando questionários/provas para medir seu desempenho, dando aulas de programação, nada disso. Simplesmente colaboramos, colaboramos informação, colaboramos problemas, colaboramos solução.

A base da comunidade esta na colaboração. Se eu simplesmente me negasse a informar minhas fontes de conhecimento, com certeza ele não aprenderia da mesma forma. Se ele não me contasse as dificuldades que ele encontrava nos projetos, eu estaria preso a um conhecimento teórico. Se nós não pensássemos juntos para resolver um problema, não encontraríamos soluções mais elegantes. Esse é, pra mim, o nirvana de uma comunidade. A ausência de pudor para passar/receber informação.

E perceba que o fenômeno de aprendizado não necessitou de nenhuma ferramenta de colaboração sofisticada, somente o MSN ligado, perguntas, respostas e conversas afins entre duas pessoas interessadas em aprender. E essa simplicidade é legal, legal pois podemos ter fenômenos de aprendizados aos montes e de forma fácil, é só chegarmos ao estágio de colaboração que estou descrevendo.

Na verdade, não estou aqui para contar historinhas. Queria aproveitar este exemplo para propor uma comunidade, uma comunidade de pessoas que têm, realmente, interesse por desenvolvimento WEB. Pessoas que sejam capazes de trocar informações, trocar problemas e trocar soluções, sem pudor. Isso que realmente seria bom, tenho certeza que todos os participantes seriam recompensados com muito aprendizado.

Por isso, convido os desenvolvedores WEB da UEL que concordaram com o que foi dito neste post, para se unirem comigo e com Gabriel da Tsubasa Software (o protagonista da história) nessa, por enquanto pequena, comunidade de amigos/desenvolvedores.

Firebug – Ferramenta indispensável para o desenvolvedor WEB

Já foi o tempo em que desenvolver para web era elaborar um designzinho e escrever três ou quatro paginas html. Hoje em dia, temos cada vez mais complexidade em nossos sistemas e boa parte dela foi transferida para programação do lado do cliente. E está é uma das grandes dificuldades para nós desenvolvedores.

Desenvolver aplicações no lado do cliente é chato, está é a grande verdade. Quando estamos trabalhando com CSS sempre tem um probleminha de posicionamento, as margens estão erradas, no IE mostra uma coisa e no FireFox outra, é uma loucura. E quando vamos programar JavaScript é outro pesadelo, se não estiver utilizando alguma ferramenta de apoio, a única informação que você terá de que ocorreu algum problema é uma tela de alert ou, simplesmente, nada acontecerá.

Na procura de uma ferramenta de apoio acabei encontrando o Firebug. No começo, eu procurava somente um Debugger JavaScript, pois todos que tinha experimentado não eram bons, mas acabei achando algo muito melhor.

Firebug

O que o FireBug tem de especial é a capacidade de juntar tudo que você precisa em um único Add-On para o Firefox, é incrível! Com simples toque na tecla F12 você terá todas as informações e funcionalidades que possa imaginar para programação WEB. Informações como Árvore HTML, Estado do DOM, Debugger JavaScript, Lista de Requisições HTTP, Tamanho (e duração do download) dos Arquivos Utilizados, Informação Individual dos Elementos e um monte de outras funcionalidades que eu nem descobri ou ainda não sei utilizar.

No meu dia-a-dia o FireBug se tornou indispensável, utilizo ele para editar CSS, verificar erros e debuggar código JavaScript, como referência do DOM, analisar o tamanho final do site entre outras infinidades de funcionalidades que estão fazendo meus aplicativos ficarem cada vez mais elegantes.

O grande problema (que não é culpa do FireBug) é que ele só funciona no Firefox =( fazendo com que (ainda) seja chato desenvolver aplicativos ricos para WEB. Na internet ainda não achei nenhum similar ou com menos funcionalidades (na verdade não achei nenhum) para outros browser, o que é uma pena. Quem souber de um, faça a caridade de contar para nós, pois, mesmo que eu deseje que todos utilizem a Raposa como browser padrão, ainda tenho que desenvolver para IE.

Fica a dica de mais uma ferramenta para quem desenvolve para web. Aquele abraço!

Intype – Editor de Texto parecido com TextMate

Achar um editor de texto que seja produtivo sempre foi uma tarefa difícil, eu mesmo só consegui esse mês. Eu já tinha visto e ouvido sobre o TextMate, porém ele só funciona no MacOS (o porque eu não sei). Fiquei intrigado e fui atrás de algo similar para Windows e eis que encontro o Intype.

Intyope

Assim como o TextMate, o Intype tem uma série de Code Snippets para várias linguagem. Esses Snippets são “pequenos padrões” de código que podem ser reutilizados (como a estrutura de loop do tipo ‘for’). Nós normalmente gastamos horas programando e metade deste tempo estamos escrevendo códigos que não são relevantes ( ‘;’, parênteses, indentação e etc.) . O Intype faz esse trabalho para nós de uma forma simples e customizável.

Imagine que estamos querendo escrever um ‘while’, temos duas opções, escrever toda a estrutura de uma vez e depois gastar algum tempo posicionando o ponteiro para ‘preencher’ o while ou escrever de forma linear, escrevendo a estrutura e o preenchimento juntos, com a chance de esquecer o fechamento de algum parêntese ou chave.

Com Intype eu escrevo ‘while’ e aperto TAB, pronto, toda a estrutura é inserida (não tenho mais o risco de esquecer alguma chave) e apertando mais uma vez o TAB, o ponteiro é posicionado para o campo condicional, apertando novamente, sou direcionado para o local do código.

Prático não? E o legal é que conseguimos criar/editar/remover todos os Snippets facilmente. Dentro da pasta Bundles do Intype estão todos os Snippets e Syntaxes das linguagens suportadas. A estrutura para criar um Snippets é simples, vamos ver o exemplo abaixo:

{
content: '${1:public} function ${2:FunctionName} (${3: \$${4:value}${5:=''''} })
{
${0:# code...}
}'
title: 'function ..'
scope: 'source.php'
tab_trigger: 'function'
}

O tab_trigger é a palavra que deve ser digitada para acionar o snipper (’while’ no exemplo anterior). O scope já é um conceito mais complexo, porém ainda é simples, você pode configurar o snippets para funcionar somente dentro do escopo de funções. O content é o conteúdo que será inserido na tela. A seqüência dos TABs é dada pela estrutura ${X: ***}, onde o X é a ordem e o *** o valor padrão.

No exemplo, ao digitar function e pressionar TAB, é inserido o seguinte texto:

public function FunctionName ( $value='' )
{
# code...
}

A palavra ‘public’ estará selecionada e o ponteiro do texto posicionado no início, podendo assim modificar, quando aperto TAB novamente, ‘FunctionName’ será selecionado e o ponteiro direcionado ao seu início, e assim por diante. Com essa estrutura, é simples construir uma infinidades de snippets, tornando, um pouco mais, produtivo programar.

Como o Intype ainda está no Alpha, não tem algumas funcionalidades importantíssimas, como a possibilidade de trabalhar com vários arquivos ao mesmo tempo. Mas, por enquanto, temos como utilizar o Intype Project Mananger, criado por um desenvolvedor amador.

Intype Project Manager

Espero que Intype seja útil para vocês, se for, comente aqui no blog sua experiência.

Aquele abraço.

Começa o blog da Cop-Jr

Começa o blog da Cop-Jr.

A Cop-Jr é a empresa junior de computação da Universidade Estadual de Londrina. A empresa desenvolve aplicativos simples, na area da Web, tanto na intranet, quanto na internet, desenvolve hotsites, sites estáticos e dinâmicos.

A Cop-Jr como todas as outras EJs é administrada apenas por estudantes que, voluntariamente trabalham para obter um maior conhecimento em sua área e na área de administração de empresas.

Neste blog todos os membros da empresa estão dispostos a contribuir com algum assunto do interresse de cada ou algo que está desenvolvendo.

Vamos também neste blog abrir algumas informações da empresa como a pauta das principais reuniões e etc.

Os possíveis assuntos a serem abordados no blog da Cop serão sobre a Web, Empresa Junior, Ferramentas e Eventos.