Venho acompanhando o movimento dos Indie Games desde 2006, quando o lavador de roupa suja me falou a respeito. Indie Game, ou Independent Game, é o nome dado aqueles jogos que estão fora do “mainstream”, sem o investimento da grande indústria dos jogos. São desenvolvidos em pequenos grupos ou, em alguns casos, por caras que sozinhos cuidam da programação, arte, animação, som e tudo mais que tiver envolvido no processo de Desenvolvimento de Jogos. Uma parcela desses independentes é formada por ex-funcionários dessa indústria que resolveram tentar um negócio próprio.

Por não contarem com muitos recursos, principalmente para o marketing, a base de operações dessa galera acaba sendo unicamente a internet. Existem vários sites que divulgam - como o ótimo Jay is Games e o IndieGames.com - e outros que hospedam e oferecem um suporte maior a esses desenvolvedores independentes, a exemplo do Newsground e o ArmorGames, especializados em jogos feitos com Adobe Flash, populares na web. Tem também um Independent Game Festival, que todo ano premia os melhores jogos independentes. É praticamente uma outra camada desse mundo que a gente só costuma conhecer por meio dos “big players” como Blizzard, Eidos, Ubisoft, Rockstar e por aí vai.

alien_hominid.jpg

Vejam só o exemplo da Newsground. Começou em 1995 como um portal que hospedava animações e jogos. Em 2002 o criador do site, Tom Fulp (programador), e Synj (artista gráfico) criaram em Flash o jogo independente Alien Hominid. Foi um sucesso absoluto, tanto que em 2004, após 15 meses de trabalho, foi portado para o mundo dos consoles. Hoje é um game de peso, comercializado para quase todos os consoles, inclusive estão lançando o Alien Hominid HD pro Xbox360. Isso tudo sem falar nos produtos relacionados, como bonés, camisetas, canecas e action figures.

alien_hominid_figures.jpg

A equipe de desenvolvedores aumentou e hoje possuem a empresa The Behemoth, e lançando outro jogo que promete, o Castle Crashers.

wp2_1024x768.jpg

Mas este é apenas o primeiro de uma série sobre os Indie Games, no próximo post vou falar sobre alguns jogos que estão se destacando e como eles ganham dinheiro.

Até mais.

Posted in web at August 19th, 2008. 4 Comments.

Na prática do ensino de programação - nível básico - é muito comum por parte dos professores universitários (como também de cursos técnicos e profissionalizantes) aplicar o Portugol na etapa que trata lógica e algoritmos, e a linguagem Pascal para implementar os algoritmos estudados.

Em primeiro lugar, acredito que o ensino - seja de que for - deve buscar o máximo possível aproveitar o que o aluno já carrega, o conhecimento prévio (e existem teorias “pedagógicas” sobre isso que me escapam agora). Isso quer dizer que:

x ← 10 (atribuir o valor 10 na variável x, no portugol)

é menos intuitivo do que simplesmente

x = 10

Veja que “x = 10″ aprendemos desde cedo na escola e já está mais do que claro para o aluno seu significado, ao invés da “←”, que passa a ser algo a mais que ele vai ter que associar e aprender. Pode ser um exemplo bobo, mas o princípio é aproveitar ao máximo o que o aluno já sabe.

Além disso, um dos argumentos para o uso do Portugol é - como o nome já diz - ser em português. Mas na verdade, nada impede o aluno de aprender a programar já com palavras em inglês, não é tão absurdo assim no início e é um treino, já que ele vai lidar com isso de qualquer forma. Outro aspecto é que o Portugol apenas “traduz” a linguagem Pascal, e por isso carrega ainda o peso das palavras e regras dessa linguagem, peso esse que, a meu ver, torna o processo de aprendizado mais complicado ainda. Coisas como “inicio-fim” ou “begin-end”, sinal de “;” no final das linhas, etc.

Aqui entra a linguagem Python. Escolhi e estou usando o Python no ensino de programação inicialmente pelos motivos a seguir (nessa ordem):

  1. A própria linguagem: fácil, enxuta, intuitiva e com regras simples.
  2. Ambiente interativo (idle ou shell) onde facilmente o aluno pode testar instruções separadamente sem precisar escrever um programa complexo e salvar em arquivo, como também não precisa compilar, já que Python é uma linguagem interpretada.
  3. Software Livre!
  4. Multiplataforma, se o aluno quiser usar o Linux, sem problema, inclusive é nativa em muitas distribuições, como o Ubuntu.
  5. É uma linguagem “útil”, não algo que ele vai aprender só nessa fase e esquecer, ele tem sim uma opção de produzir algo real, visto que com Python dá pra fazer aplicativos web e desktop, jogos etc.
  6. Muito material na Internet e uma comunidade bastante ativa. (e olha que nem falei que o Google usa! :P)

Esses motivos foram os suficientes para “fazer uma experiência”. Na prática, essa experiência de usar Python é muito melhor, muito mais satisfatória.

Primeiro que o Python está sendo aplicado no estudo do algoritmo e ao mesmo tempo na sua implementação, pulando a etapa de fazer algo em portugol e depois digitar em pascal. Com o IDLE aberto durante a aula toda, eles podem fazer testes, operações matemáticas simples, verificar o comportamento das variáveis, realizar operações lógicas em “tempo real”, e por aí vai. Exemplo:

idle_python.gif

O conjunto [ Linguagem Python + Ambiente Interativo ] torna a aula muito mais produtiva. Os alunos podem também fazer comentários sobre os códigos que estão testando (já um treino para a documentação) e ao final da aula podem salvar tudo que fizeram para estudar depois.

Esse post é o primeiro de uma série em que pretendo relatar mais sobre o uso do Python, postar exemplos de código e exercícios. Já no próximo colocarei uma série de referências sobre a linguagem para quem está começando.

Qualquer dúvida, sugestão ou crítica, já sabem, é só comentar! :)

Posted in web at August 15th, 2008. 6 Comments.

Recebi hoje duas ligações, de um banco e uma editora, que me ofereceram produtos e serviços quaisquer. Além do incômodo de ser pior que um spam, e extremamente irritante ouvir os robôs do telemarketing e o maldito “vamos estar te oferecendo..”, uma coisa que me deixa muito desconfiado é como diabos eles sabem meu nome, telefone e cpf? Sim, empresas com as quais eu nunca tive nenhum tipo de negócio possuem dados sobre mim, dados pessoais que, até onde eu sei, são sigilosos ou no máximo diponíveis apenas para aquelas empresas que eu autorizei e cedi tais informações.

Parece bobagem,  mas é um assunto muito sério, e não vejo nenhum político, promotor, ou quem quer que seja preocupado com isso. Inclusive um certo banco que supostamente financia um certo senador vive me ligando. Mas deixando as conspirações de lado, há algum tempo venho tentando rastrear esses dados. Uma das medidas simples que adotei foi a de inserir um caractere ou uma palavra diferente (que não impeça - no caso de uma compra - do produto chegar) em cada cadastro que faço na Internet. Se você receber uma carta, ou uma ligação de alguma empresa com a qual você nunca teve contato, e tiver esse caractere ou palavra, bingo, você saberá de onde saiu.

É sempre bom também verificar os termos do site/empresa e o que eles dizem sobre privacidade das informações. Não sou especialista nisso mas creio que seja possível acionar uma empresa judicialmente caso seja comprovado que a empresa vazou informação que ela se comprometeu a guardar com toda segurança.

Já contei aqui o caso que aconteceu com minha mãe, aposentada, que no momento em que abriu uma conta no Bradesco para receber sua aposentadoria “repentinamente”, “do nada”, ela passou a receber quase que diariamente ligações de vários outros bancos, empresas, financeiras, oferecendo seus serviços. Estranho não?

Bom, fica aqui o alerta e o desabafo. Grande Abraço.

Posted in web at August 12th, 2008. 1 Comment.

Uma das maiores dificuldades - senão a maior - de quem lida com vários projetos e atividades é estabelecer adequadamente quais são as prioridades. No site Agile Software Development tem um artigo interessante sobre isso. Basicamente o autor propõe o uso de uma matriz “Dificuldade x Importância” realmente simples para análise:

prioritisation.jpg

No gráfico acima temos o eixo x representando a Dificuldade (aspectos negativos como risco, esforço, custo, complexidade, tempo etc.) e o eixo y representando a Importância (retorno, risco caso não seja feito etc.). A partir daí posicionamos os projetos dentro desses parâmetros.

Os dois extremos (bloco superior-esquerdo e bloco inferior-direito) definem, respectivamente, o que deve ter maior e menor prioridade. Alta prioridade significa ser mais importante e ao mesmo tempo com um índice de dificuldade menor, ou seja, menor custo, ou menor complexidade, ou que pode ser feito em um menor tempo. Baixa prioridade significa ser menos importante (baixo retorno ou risco de não ser feito pequeno ou inexistente) e ao mesmo tempo um índice de dificuldade maior.

Os outros dois blocos (inferior-esquerdo e superior-direito) definem projetos que precisam ser reavaliados. No caso do primeiro bloco, por ser de baixa dificuldade mas também de pouca importância, pode ser reconsiderado. No segundo bloco, que representa alta importância e também alta dificuldade, pode ser dedicado algum esforço no sentido da simplificação, ou seja, redução do grau de dificuldade (via pesquisa de novas soluções) ou quebrado em projetos menores.

Vale a leitura do artigo completo.

Posted in web at August 7th, 2008. 2 Comments.

É isso ae, a Lavanderia do Hertz está disponibilizando um curso completo de Adobe Flash - nível iniciante - no formato PDF, totalmente free.

Excelente iniciativa do Eugenio.

Posted in web at August 1st, 2008. 1 Comment.

Excelente artigo da Business Pundit que conta um pouco da história de 25 pessoas que conseguiram erguer impérios começando praticamente do zero. Entre eles, claro, Henry Ford, Steve Jobs, Bill Gates, Sergey Brin e Larry Page (Google). Vale a leitura.

Via Kabytes.

Posted in web at July 27th, 2008. No Comments.

Já comentei aqui sobre editores de código. Até alguns dias atrás estava usando o InType, excelente editor, super leve e funcional, o melhor candidato para “clone” do Textmate no ambiente Windows. Inclusive o apresentei para meus alunos, e todos gostaram muito. Coloco aqui 3 vantagens do InType: rápido e enxuto, ajuda pra caramba a digitação de código e muito flexível, dando suporte para dezenas de linguagens. Ainda está na versão alfa, e continuo acompanhando de perto o desenvolvimento.

Agora convenhamos, para grandes projetos nao basta apenas uma ferramenta de ajuda na digitação, é preciso mais, muito mais. Recentemente, estudando Java, conheci o NetBeans, e em pouco tempo já me perguntei “será que tem um desses pra PHP?”… e tem!

NetBeans 6.5 Milestone tem full suporte pra PHP (e XHTML/CSS), download de apenas 15 megas e tem um monte de funcionalidades bacanas além de toda a infra para gerenciar projetos, acesso a sistemas de controle de versão, etc. Ainda tem alguns bugs, mas pra mim o que tá atrapalhando um pouco é quanto ele consome de recursos da maquina, muito, muito pesado. Considerando o que ele já me proporcionou em produtividade e organização, esse “peso” dele é tolerável.

Grande surpresa esse NetBeans pra PHP, recomendo!

Posted in web at July 21st, 2008. 2 Comments.

O dilema é o mesmo: até que ponto mecanismos de monitoramento e controle ultrapassam os princípios básicos de liberdade, os direitos e a privacidade? Até que ponto interesses de empresas, representadas por políticos - que deveriam representar o povo - e usando a bandeira da “segurança”,  oprimem  e limitam o uso dos recursos tecnológicos, ignorando o benefício coletivo? Até que ponto o “medo” imposto a sociedade faz com que todos abram mão dos seus direitos? Até quando congresso, senado, governos e justiça, completamente ignorantes e perdidos no meio digital, continuarão atrapalhando qualquer avanço tecnológico e chamando o cidadão comum de “criminoso” e “pessoa de má fé”?

Eu mesmo disse um dia “pelo menos não estamos em Cuba ou Venezuela”, mas aqui a coisa não vai muito bem quando representantes despreparados, sem qualquer noção de tecnologia, sem nenhuma visão social ou do desenvolvimento de uma nação, e ainda de rabo-preso com corporações, decide assuntos dessa importância, como a questão dos crimes digitais.

Alguns textos sobre o assunto:

Manifesto em defesa da liberdade e do progresso do conhecimento na Internet brasileira

Ponderando crimes digitais

Petição OnLine contra o projeto do Azeredo

Update (10/7): Petição online com mais de 11 mil assinaturas, mas a PALHAÇADA segue firme.

Update (15/7): Petição online agora com mais de 52 mil assinaturas, e via Terramel uma SUPER PALHAÇADA do Senado: banner por 48 mil reais/mês.

Posted in web at July 8th, 2008. 1 Comment.

É muito bom ver artistas que, apesar dos seus contratos com grandes gravadoras, entendem bem essa revolução tecnológica pela qual estamos vivendo, o compartilhamento de arquivos e o que tudo isso tem a ver com os negócios.

Parabéns Joss!

Posted in web at June 28th, 2008. No Comments.

…e também a pen drives, card drives, camisetas geeks, livros e mais! O BR-Linux e o Efetividade lançaram uma campanha para ajudar a Wikimedia Foundation e outros mantenedores de projetos que usamos no dia-a-dia on-line. Se você puder doar diretamente, ou contribuir de outra forma, são sempre melhores opções. Mas se não puder, veja as regras da promoção e participe - quanto mais divulgação, maior será a doação do BR-Linux e do Efetividade, e você ainda concorre a diversos brindes!

É isso ae pessoal, participem! :D

Posted in web at June 24th, 2008. No Comments.