Aula 1 – Prog. Dinâmica para Web

Primeira aula da disciplina Programação Dinâmica para Web. Primeiros conceitos sobre Arquitetura de Aplicações web e informações gerais sobre a disciplina.

Anúncios

Qual é a semelhança entre um programador e um jogador de futebol?

por Juliano Niederauer

Em qualquer profissão, encontramos profissionais de todos os níveis de qualificação. Logo, existem programadores bons, médios e ruins, assim como existem jogadores de futebol bons, médios e ruins. Existem ainda os programadores brilhantes, que equivalem ao que no futebol chamamos de “craque”. Mas por que resolvi comparar os programadores com os jogadores de futebol? Ocorre que essas duas profissões apresentam algumas características em comum, sendo a principal delas a capacidade de raciocínio. Afinal, por que alguns profissionais conseguem um lugar de destaque em relação aos demais?

Para que você entenda melhor, vamos descrever brevemente as “categorias” de programadores:

Programadores ruins – são pessoas que, de alguma maneira, entraram na área de desenvolvimento de software, mas não possuem a menor habilidade ou capacidade para isso. Se você entregar a elas um programa para desenvolver, por mais simples que seja, podem passar dias ou até meses tentando implementá-lo, sem sucesso. O que um programador experiente resolveria em questão de horas, acaba se transformando em dor e sofrimento para esse profissional que parece ter caído de paraquedas nessa profissão. Afinal, mesmo percebendo que não possuem nenhuma habilidade para escrever um código, é isto o que fazem (ou melhor, tentam fazer).

Seria como o jogador de futebol ruim. Certamente você já viu atuar em seu time de futebol algum jogador de muito baixa qualidade e escutou algum amigo ou comentarista falando: “A culpa não é dele, mas do técnico que o coloca para jogar!”. Da mesma forma, a culpa pela empresa não conseguir produzir os seus programas não é do programador ruim, mas da própria empresa que o contratou para uma função da qual não é capaz.

Programadores medianos – gostam de codificar, demonstram entusiasmo, mas normalmente esbarram em limitações técnicas que acabam criando uma falta de iniciativa para resolver problemas por conta própria. Na maioria das vezes, o programador mediano tenta procurar soluções prontas, ou seja, para ele “nada se cria, tudo se copia”. No mundo da programação, em algumas situações isso pode funcionar, principalmente no que diz respeito a funções usadas com frequência por todos (como por exemplo validar um número de CPF). No entanto, cada programa tem sua lógica, que deve ser construída pela criatividade do próprio programador, ao invés de tentar copiá-la de colegas ou achar algo “parecido” na Internet.

Seria como o jogador futebol mediano, que alguns chamam de jogador “protocolar”. Ele faz o básico, recebe a bola, passa a bola ao companheiro mais próximo, marca e colabora com a equipe dentro de suas limitações. Se tentar “copiar” as habilidades do companheiro que é mais capaz tecnicamente, vai acabar até prejudicando o seu desempenho.

Programadores bons – apresentam uma apurada lógica de programação, sendo capazes de construir rapidamente uma carreira bem-sucedida como desenvolvedor de software. Suas habilidades são valorizadas e seus colegas de trabalho o respeitam como profissional. Toda empresa na qual ele trabalha é enriquecida de alguma forma pela sua presença. Para todo tipo de problema proposto, é capaz de apresentar uma solução organizada e eficiente.

Seria como um bom jogador de futebol. Todo clube gostaria de tê-lo em seu time, pois além de desempenhar o básico de sua função, ainda apresenta características extras. É como um meia que serve os atacantes e ainda aparece eventualmente na área para fazer gols.

Programadores brilhantes – verdadeiros Senhores da lógica, possuem o dom de formular soluções rápidas, diferenciadas e tão inesperadas que surpreendem até a empresa em que trabalham. Um programador brilhante é comparado ao que no futebol chamamos de “craque”. Observe a figura para entender melhor. Imagine que os jogadores A, B e C são do mesmo time.

O jogador A está com a bola e o jogador B é o craque. O jogador A passa a bola, que vai em direção ao jogador B. Antes da bola chegar aos pés do jogador B, ele já sabe que irá passá-la ao jogador C, pois o craque tem uma visão periférica do ambiente em que está envolvido, ao contrário dos jogadores ruins ou medianos, que receberiam a bola e ainda precisariam de um tempo para pensar o que fazer, sendo provavelmente desarmados antes de executar qualquer ação.

Mas não é apenas isso. O craque sabe não apenas a qual jogador irá repassar a bola, mas já prevê qual a ação irá realizar depois disso. Na figura, essa ação é representada pela seta pontilhada. Após receber e passar a bola imediatamente ao jogador C, o craque irá correr na direção D, já esperando receber a bola de volta e dar prosseguimento à jogada. Essa é a diferença entre o craque e o bom jogador. O primeiro é capaz de prever um maior número de etapas com antecedência.

Da mesma forma, um programador brilhante, quando recebe um trabalho a executar, em pouquíssimo tempo (muitas vezes em poucos segundos) já consegue definir em sua mente um mapa lógico, ou seja, um abrangente planejamento de como o programa será implementado. Ele consegue definir em instantes uma série de etapas que os programadores menos qualificados levariam dias para planejar.

Alguns podem perguntar: “É possível um programador ruim ou mediano se tornar bom ou brilhante um dia?”. Como em toda profissão, o estudo e a dedicação podem fazer o profissional evoluir. No entanto, existe algo maior que é chamado de dom, aptidão, talento. Por que muitas vezes Romário sequer aparecia para treinar, mas nos jogos fazia gols espetaculares? Ele tinha o dom de fazer gols. Já o Rei Pelé foi um atleta exímio, cuja dedicação era reconhecida por todos, com horas e horas extras de treinamento diário. Porém, será que essa dedicação adiantaria alguma coisa se ele não tivesse o dom de jogar futebol? Nesse caso, certamente ele seria apenas um bom jogador, comum.

Quem almeja fazer sucesso em alguma profissão deve demonstrar suas aptidões e criatividade desde cedo. Muitos programadores iniciantes me perguntam:“Quais os frameworks que você recomenda para programar?”. Ora, se você quer aprender a programar, já quer começar usando frameworks? No meu tempo, abríamos o Bloco de Notas do Windows e já começávamos a programar. Está certo que hoje a quantidade de recursos e ferramentas é maior, porém elas podem acabar prejudicando o real aprendizado e desenvolvimento de sua lógica de programação. Além disso, o uso de um framework pode impactar diretamente na performance de sua aplicação, pois você vai acabar incluindo em seu código uma série de funções que não irá utilizar. Lembre-se que quem utiliza coisas prontas é o programador mediano. Se você quer ser bom ou brilhante, escolha um editor Web (como o Dreamweaver, por exemplo) e vire uma “máquina” de programar, evitando usar funções de terceiros, a não ser que sejam indispensáveis. Com o tempo, monte sua própria biblioteca de funções para reaproveitá-las, pois você saberá como funciona cada uma delas, não será uma “caixa preta” que vai impactar na sua aplicação.

Atualmente, as empresas encontram cada vez mais dificuldades em conseguir bons profissionais para a área de desenvolvimento. Muitas vezes, já precisei de estagiários e funcionários desta área. Quando envio as ofertas para universidades, por exemplo, praticamente ninguém as responde. Já estão todos empregados ou estagiando. Outros não respondem porque não são qualificados o suficiente. Logo, não faltam vagas de estágio ou emprego. Pelo contrário, faltam pessoas qualificadas para preenchê-las. Portanto, se você acha que tem aptidão para essa área, não pense duas vezes e invista em sua formação e capacitação, pois oportunidades certamente não irão faltar para atingir o sucesso profissional.

PHPeste 2015 – Minhas Impressões

No começo de outubro tivemos aqui em João Pessoa-PB o PHPeste, conferência OpenSource com foco na linguagem PHP. Me propus em participar não apenas como ouvinte, mas na organização também. Foi minha primeira experiência na organização de um evento do tipo, e o primeiro em terras paraibanas. Vou contar um pouco do que vi e vivenciei ali.

O evento

As trilhas do evento, que teve PHP, Javascript e outras vertentes do desenvolvimento em linguagens Open Source (linguagens de código livre). Infelizmente não estive no primeiro dia, logo perdi o contato inicial e a chance de ver palestras interessantes, como a sobre NoSQL.

A organização foi precisa. Tudo funcionou como deveria pelo menos, com o mínimo de atraso em cada palestra, o que tornou o evento bem dinâmico. Pelo fato de ter sido no IFPB campus João Pessoa, a estrutura em si da instituição ajudou bastante. Para o porte desse primeiro evento, os auditórios e laboratórios estiveram de bom tamanho.

Os Palestrantes

Com um escolha democrática, onde os participantes puderam votar antes nos assuntos que mais lhe atraísse, os temas das palestras foram bem escolhidos e diversificados. Claro que sempre existem os novatos nesse tipo de evento, o que acaba fazendo com que algumas palestras sejam menos estruturadas que outras. O nervosismo faz parte também.

De um modo geral, presenciei palestrantes que sabiam do que estavam falando, e que de um modo geral contribuíram muito com os expectadores.

A Experiência

Como participei apenas do domingo, acabei caindo meio que de gaitado no navio. Mas mesmo assim consegui me sentir parte do evento. Os ‘Front-line’ do evento Abdala Cerqueira e Daniela Pitta souberam conduzir a equipe de apoio e eu particularmente não vi nada deixar a desejar.

Para mim, foi um prazer ter ajudado, ter visto palestras interessantes e ter tido um primeiro contato com outros desenvolvedores e futuros desenvolvedores nas linguagens Open Source.

Espero que tenha sido apenas o início do meu envolvimento com a comunidade PHP aqui na Paraíba. O relacionamento começou bem, pelo menos de minha parte (rsrs).

PHPeste 2015 – Conferência PHP do Nordeste

Esse fim de semana será intenso aqui em João Pessoa. Acontecerá a primeira edição do PHPeste. Com a participação de palestrantes internacionais e grandes nomes nacionais, teremos palestras, minicursos e hackathons focados na temática do evento: crescimento e colaboração, ou seja, não será apenas um evento no qual você ganhará um certificado para guardar na gaveta, você estará desenvolvendo seu currículo e, ao mesmo tempo, desenvolvendo o ambiente do código aberto.

Os assuntos a serem tratados serão variados, não se limitando à linguagem PHP. Teremos palestras sobre Banco de dados, JS, Hacking, CSS e o mundo Open Source de um modo geral.

O evento acontece no IFPB, em Jaguaribe, na capital paraibana. Saiba mais sobre a programação e inscrições no site do evento www.phpeste.net ou pela fanpage do Facebook.

Eu estarei presente e farei parte da equipe de apoio do evento. Semana que vem darei minhas considerações e o que de mais importante achar por lá. Espero você por lá!!

Quer programar? Eu digo Bora!

Hoje nós não temos tantas limitações em se tratando de desenvolvimento. Linguagens tidas como para programação desktop já tem suas opções de vinculo com a web, e vice-versa. Partindo desse pressuposto, as dicas que trago aqui valem para quem quer aprender linguagens atuais para desenvolvimento de softwares e apps.

Trouxe aqui então dicas de livros e materiais úteis para quem quer começar a programar “sozinho”, mas com uma leve instrução de quem entende um pouco mais. As dicas são válidas para quem quer desenvolver para a web. Vale sempre lembrar que programar não é bicho de 7 cabeças, mas requer o mínimo de dedicação e vontade, além de organização de prefêrencia. Mas vamos ao que interessa.

JavaScript

Para a linguagem, livros atuais são bem mastigados e com vários exemplos, o que ajuda bastante. Indico os livros da editora Casa do código. Com uma variedade grande de escritores, seus livros são extremamente bem elaborados e com um material gráfico bacana. Destaque para os livros DOMINANDO JAVASCRIT COM JQUERY e COLETÂNEA FRONT-END. Outro livro bacana que encontrei grátis online é o JAVASCRIPT FURTIVO do Eric Douglas (até o lançamento desse post, o livro ainda estava em desenvolvimento contínuo).

HTML5 e CSS3

Assim como para JS, o livro COLETÂNEA FRONT-END trás uma gama de artigos e tutoriais compilados em um único livro, com dicas e ótimas formas de se trabalhar com estas linguagens básicas para o desenvolvimento web. O livro é um apanhado de textos de feras no assunto Front-end.

PHP Continue Lendo “Quer programar? Eu digo Bora!”

Programador, teste seus códigos ONLINE!

As vezes não temos instalado na máquina que estamos toda a estrutura necessária para testarmos nossos códigos. Quantas vezes você já passou por isso? Eu, várias. E por ter esse problema, procurei por várias soluções. Na pesquisa descobri várias soluções de sites que permitem você compilar, debugar e testar seu trecho de código ali mesmo, pelo navegador.

As dicas a seguir valem para várias linguagens, dentre elas as mais usadas como PHP, CSS, JS, Python, C e até JAVA. Utilizando essas você pode rapidamente testar e compilar nas mais variadas linguagens de programação existentes e ver o resultado imediatamente.

 

Continue Lendo “Programador, teste seus códigos ONLINE!”

Apostila – PHP + MySQL

Olá!


Para o pessoal que está afim de aprender a linguagem PHP juntamente com o banco de dados mais recomendado para ele, segue a dica de uma apostila bem básica, voltada para os principios na linguagem, mas também para novidades intermediárias, como a junção com o AJAX.

Para quem quiser baixar, clique aqui e divirta-se.

OBS: utilizei esta apostila como base para as aulas de Desenvolvimento de Sistemas Web no curso de Analise e Desenvolvimento de Sistemas-AVEC.