Skip to content

Category: português

Manual dos Bixus 2005

Revirando algumas coisas antigas topei com o Manual dos Bixus que nós fizemos em 2005!

Manual dos Bixus
Download: Manual_dos_bixus_da_computacao_2005.pdf

Quando os novos alunos da Computação da UFC vão entrar no curso, nós fazemos um livrinho chamado Manual dos Bixus. É uma compilação de piadas sacaneando os calouros mas também algumas dicas realmente úteis como mapas e linhas de ônibus.Este foi a terceira edição do manual, na época eu era do CA (Centro Acadêmico) e foi uma das primeiras coisas que nós fizemos. Eu havia me conhecido o conceito de Wiki a pouco tempo e havia colocado de pé um Wiki para os alunos do curso usando o Dokuwiki, um motor de wikis em PHP que na época era bem limitado, usávamos só um usuário.

Um exemplo de página do manual dos bixus da computação. Algumas siglas do curso.

Nós começamos a escrever o livrinho usando Wiki. Ia ser a primeira vez que eu via um conteúdo do mundo real, impresso, tocável, construído de maneira dinâmica, colaborativa e distribuída. Algo como uma revista colaborativa.

Eu divulguei a idéia na nossa lista de alunos, a idéia foi pra frente, as pessoas foram colaborando e aos poucos foi tomando conteúdo. No final eu peguei o conteúdo, dei uma revisada no texto e fiz as páginas usando o Gimp. Imprimimos uma tiragem de 60 exemplares, com o dinheiro do CA, exatamente os 60 alunos calouros. Infelizmente eu não tive o cuidado de me incluir nesse número. 🙁

Quem sabe não podemos repetir esse ano esse modelo de desenvolvimento.

Introdução ao Solaris e opensolaris.org

Você lembra que eu falei sobre Cursos de Java de Graça para Estudantes?

Opensolaris Logo

O Sun Student Courses abriu mais um curso (Introduction to Solaris and opensolaris.org), agora sobre Solaris e opensolaris.org no mesmo estilo do curso anterior (Real World Technologies: NetBeans GUI Builder, JRuby, JavaFX, and JavaME).

Sun Students Courses

São 5 tópicos:

  1. Introduction to the course and opensolaris
  2. Java Desktop System
  3. SMF – Service Management Framework

  4. Solaris Containers, OS level virtualization for Solaris

  5. Introduction to ZFS
  6. DTrace – Dynamic instrumentation of system and applications

E só para lembrar:

  • É de graça!
  • No momento os cursos só estão disponíveis em inglês.
  • Cada tópico tem uma parte em texto, uma em slides e um questionário no final. Quando você responder corretamente todos os questionários você pode pegar um certificado de conclusão de curso.
  • Não perca essa ótima chance de estar em contato com tecnologias de ponta como ZFS e Dtrace. 😉

Concurso de Blogagem NetBeans IDE 6.1 Beta

Typewriter
Creative Commons Image
Está cada vez mais fácil colaborar com projetos livres.Quem diria que você poderia blogar sobre um projeto livre e ainda ganhar dinheiro e brindes? Esse é o Concurso de Blogagem do Netbeans IDE 6.1 Beta. Blogando você disputa:

  • 10 chances de ganhar um vale-compras American Express no valor de U$ 500,00.
  • 100 chances de ganhar camisetas do Netbeans.

Tudo que você tem que fazer é:

  1. Baixar o Netbeans 6.1 Beta (ou o último release) e experimentar.
  2. Blogue sobre isso.
  3. Envie a URL do seu blog e post.
  4. Faça isso antes de 18 de Abril de 2008!

Os posts enviados seram julgados e serão escolhidos 10 vencedores para ganhar os vale-compras. Os 100 melhores posts ganham camisetas do Netbeans.

Basicamente é isso mas há informações mais detalhadas na página de regras do concurso. Se você estiver com preguiça de ler eu fiz esse perguntas e respostas.

Perguntas e Respostas

O que é esse Netbeans 6.1 Beta?

Netbeans é uma IDE (ambiente de desenvolvimento integrado), um programa que lhe ajuda a construir programas. É multiplataforma (você pode usar no Linux, Windows, Opensolaris, etc), tem suporte há várias linguagens (Java, C/C++, Ruby, PHP etc), disponível em diversos idiomas (a comunidade de tradução para português é uma das mais ativas) e livre (disponível em licenças GPL e CDDL). Para saber mais dê uma olhada na página de características do Netbeans.

Eu posso fazer um post em português?

Sim. Você também pode postar em inglês, espanhol, russo, francês, chinês simplificado, japonês e polonês.

É sorteio?

Não. Os melhores posts serão julgados e classificados. Se seu post estiver entre os 100 melhores você ganha uma camiseta do Netbeans, se estiver entre os 10 melhores, quinhentas doletas. 😉

E eu vou falar do que nesse post?

Teste o Netbeans 6.1 Beta, procure as novidades em relação ao Netbeans 6.0.1, mostre como fazer certas coisas, tire screenshots. Enfim, seja criativo!

Você pode dar uma olhada na lista de características e novidades no Netbeans e se inspirar.

Mas eu não tenho um blog?

Já pensou em criar seu próprio blog? Eu sugiro que dê uma olhada no wordpress.com onde você pode hospedar seu blog de graça usando um ótimo motor de blogs.

Eu posso pegar o post bacana de alguém e submeter dizendo que é meu?

O que é que você acha? ¬_¬
Não, não pode.

E se eu pegar um post bacana de alguém, em outra lingua e submeter dizendo que é um post original meu? Pode?

Não. Claro que não. Você vai ser desclassificado se fizer isso.

Boa blogagem pra você.

Filmes para debater

Algumas sugestões de filmes que dão um bom debate, ambos com uma temática parecida, paralelos entre o cristianismo e o budismo.

The Man from Earth

The Man from Earth – Eu havia assistido esse filme só porque o autor agradeceu a pirataria na divulgação do filme. Ler as linhas a seguir são tem um pouco de spoiler, você foi avisado. A história é de um cara que envelhece muito lentamente, sendo praticamente imortal. Ele atravessou os milênios e … não dá para contar mais do que isso senão estraga. É o tipo de filme-conversa, bem no estilo 12 angry men, você já assistiu você sabe do que eu estou falando (aliás, 12 Angry Men é um outro filme excelente para discussão). E já que o autor permite o download do fillme, nesse blog tem o filme e as legendas para download. Valeu pela sugestão, Patola.

zeitgeist

Zeitgeist – este filme está disponível para assistir via stream no site oficial. Mas o bom mesmo é assistir tudo legendado no Youtube 🙂 Início, partes 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 e 11. A parte que eu achei interessante é a The Greatest Story Ever Told.

Legendas com acentos no Mplayer

Eu costumo assistir filmes e seriados usando o Mplayer mas as legendas com acentos sempre aparecem erradas. Por exemplo, ‘É’ vira ‘?’ ou coisa pior.

Pra resolver edite seu arquivo ~/.mplayer/config desse jeito:

subfont-text-scale = 3
subfont-osd-scale = 3
fontconfig = yes
font = “Arial”
subcp = iso8859-1

Comigo deu certo.

Seminário Pargo

Na próxima sexta-feira (29/02/2008), o grupo PARGO – Paralelismo, Grafos e Otimização – começará seu ciclo de seminários, com palestras de três renomados pesquisadores internacionais, aproveitando a passagem destes pelo Ceará, para participação no “2nd Workshop on GRAph Searching, Theory and Applications – GRASTA2008”.

As palestras acontecerão no Auditório do Departamento de Matemática, Bloco 914 (térreo), no Campus do Pici, Fortaleza, Ceará. Programação:

Título: Random graphs from a minor-closed class
Palestrante: Dr. Colin McDiarmid (http://www.stats.ox.ac.uk/people/academic_staff/colin_mcdiarmid) Department of Statistics, University of Oxford, Inglaterra.
Horário: 14:00

Título: Graph Searching and Sub-modular Partition Functions
Palestrante: Stéphan Thomassé (http://www.lirmm.fr/~thomasse/) LIRMM, Université de Montpellier, Montpellier, França.
Horário: 15:00

Título: Graph Colouring via the Probabilistic Method
Palestrante: Dr. Bruce Reed (http://cgm.cs.mcgill.ca/~breed/) School of Computer Science of McGill University, Montreal, Canadá.
Horário: 16:30.

Estudando para a SCJA

SCJA

A SCJA (Sun Certified Java Associate) é a certificação Java de nível de entrada. Como ela não é pre-requisito para nenhuma outra certificação poucas pessoas tiram a SCJA. Apesar disso eu a acho uma certificação interessante porque ela é bem abrangente, embora que superficial. Eu estou estudando para SCJA como uma porta de entrada para as outras certificações.

Este post é uma coletânea de links e dicas úteis para aqueles que possuirem estes mesmo objetivos.

  • Página oficial da SCJA – nesta página estão as principais informações sobre a certificação, algumas referencias de material para estudo e os objetivos do exame, que é a primeira coisa que você deve ler. Se possível imprima os objetivos do exame e vá marcando os objetivos que você já estudou.
  • UML for the Java Associate – Esse é um PDF gratuito que cobre alguns conceitos básicos de UML em uma linguagem fácil de divertida. Eu gostaria de ter tido isso em mãos alguns semestres atrás. O autor é o Dave Wood (que também elabora provas da SCJA) e é da mesma editora da série Head First. Esse livrinho é um ótimo ponto de partida para começar a estudar.
  • JavaRanch SCJA FAQ – Um tira dúvidas das dúvidas comuns sobre o SCJA e também uma excelente coletânea de materiais de estudo.
  • J2EE Specification – Um dos objetivos da é “Java Platforms and Integration Technologies“. Vá nesse PDF J2EE Specification, na seção 2.6 há um ótimo guia de termos de J2EE.
  • Trail: Learning the Java Language – Trilha de aprendizado da página oficial de tutoriais do Java. Muito bom e completo.

Objetivos da Certificação SCJA

Essa tradução fui em quem fiz, não é oficial. Se encontrar algum erro me notifique nos comentários do post.

  • Seção 1 – Conceitos Fundamentais de Orientação a Objetos.
    • Descrever, comparar e contrastar primitivas (inteiro, ponto flutuante, booleano, e caractere), tipos enumerados e objetos.
    • Descrever, comparar e contrastar classes concretas, classes abstratas, e interfaces, e como a herança se aplica a elas.
    • Descrever, comparar e contrastar composição de classes, e associações (inclusive de multiplicidade um-para-um, um-para-muitos e muitos-para-muitos) e associações de navegação.
    • Descrever ocultamento de informação (usando atributos privados e métodos), encampsulamento e exposição de funcionalidades de objetos usando métodos públicos; e descrever as convenções de JavaBeans para métodos setter e getter.
    • Descrever polimorfismo aplicado a classes e interfaces, e descrever e aplicar o princípio de “programar para uma interface”.
  • Seção 2 – Representação UML de Conceitos de Orientação a Objetos.
    • Reconhecer as representações UML de classes, (incluindo atributos e operações, classes abstratas, e interfaces), as representações UML de herança (ambas implementações e interface), e a representação UML de modificadores de visibilidades de membros de classe (- para privado e + para público).
    • Reconhecer a presetação UML de associação de classe, composição, indicadores de multiplicidade da associação, e indicadores de navegação da associação.
  • Seção 3 – Implementação Java de Conceitos de Orientação a Objetos.
    • Nota: exemplos de código podem usar o operador “new“.
    • Desenvolver código que use tipos primitivos, tipos enumerados, e referencias a objetos, e reconhecer os literais desses tipos.
    • Desenvolver código que declare classes concretas, classes abstratas, e interfaces, código que suporte implementação e interfaces de herança, código que declare atributos de instância e métodos, e código que use os modificadores de acesso: private e public.
    • Desenvolver código que implemente associação de classes simples, código que implemente multiplicidade usando vetores, e reconhecer código que implemente composição em detrimento de simples associações, e código que implementa associações de navegação corretamente.
    • Desenvolver código que use polimorfismo tanto para classes quanto para interfaces, e reconhecer código que usa o princípio de “programar para uma interface”
  • Seção 4 – Projeto e Implementação de Algoritmos.
    • Descrever, comparar e contrastar estes três tipos fundamentais de sentenças: atribuição, condicional, e iteração, e dado uma descrição de um algoritmo, selecionar os tipos apropriados de sentenças para projetar o algoritmo.
    • Dado um algoritmo em pseudo-código, terminar o escopo correto para a variável usada no algoritmo, e desenvolver código que declara variáveis em qualquer um dos seguintes escopos: variável de instância, parâmetro de método, e variável local.
    • Dado um algoritmo em pseudo-código, desenvolver um código de método que implementa o algoritmo usando sentenças condicionais (if e switch), sentenças de iteração (for, for-each, while, e do-while), sentenças de atribuição, e sentenças break e continue para controlar o fluxo no switch e nas sentenças de iteração.
    • Dado um algoritmo e múltiplas entradas e saídas, desenvolver o código do método que implementa o algoritmo usando os parâmetros de métodos, um tipo de retorno, e uma sentença de retorno, e reconhecer os efeitos quando referencias a objetos e primitivas são passadas para métodos que os modificam.
    • Dado um algoritmo em pseudo-código, desenvolver código que aplica corretamente e apropriadamente os operadore incluíndo os operadores de atribuição (limitados a: =, +=, -=), operadores aritméticos (limitados a: +, -, *, /, %, ++, –), operadores relacionais (limitados a: <, <=, >, >=, ==, !=), operadores lógicos (limitados a: !, &&, ||) para produzir o resultado desejado. Também escrever código que determina a igualdade de dois objetos ou duas primitivas.
    • Desenvolver código que usa o operador de concatenação (+), e os seguintes métodos da classe String: charAt, indexOf, trim, substring, replace, length, startsWith, e endsWith.
  • Seção 5 – Fundamentos de Desenvolvimento Java.
    • Descrever os propósitos de pacotes (packages) na linguagem Java, e reconhecer o uso correto de sentenças de import e package.
    • Demonstrar o uso correto do comando “javac” (inclusive as opções de linha de comando: -d e -classpath), e demonstrar o uso correto do comando “java” (inclusive as opções de linha de comando: -classpath, -D e -version).
    • Descrever os propósitos e tipos de classes dos seguintes pacotes Java: java.awt, javax.swing, java.io, java.net, java.util.
  • Seção 6 – Tecnologias Java de Plataforma e Integração.
    • Distinguir as características básicas das três plataformas Java: J2SE, J2ME, e J2EE, e dado objetivos arquitetônicos de alto nível, selecionar a(s) plataforma(s) apropriada(s).
    • Descrever em um alto nível os benefícios e as características básicas do RMI.
    • Descrever em um alto nível os benefícios e as características básicas das tecnologias JDBC, SQL e RDBMS.
    • Descrever em um alto nível os benefícios e as características básicas das tecnologias JNDI, mensagem, e JMS.
  • Seção 7 – Tecnologias Cliente.
    • Descrever em um alto nível as características básicas, benefícios e inconvenientes de criar thin-clients usando HTML e JavaScript e os problemas e soluções relacionadas à distribuição.
    • Descrever em um alto nível as características básicas, benefícios, inconvenientes e os problemas de distribuição relacionados a criação de clientes usando J2ME.
    • Descrever em um alto nível as características básicas, benefícios, inconvenientes e os problemas de distribuição relacionados a criação de fat-clients usando Applets.
    • Descrever em um alto nível as características básicas, benefícios, inconvenientes e os problemas de distribuição relacionados a criação de fat-clients usando Swing.
  • Seção 8 – Tecnologias Servidor.
    • Descrever em um alto nível as características básica de: EJB, servlets, JSP, JMS, JNDI, SMTP, JAX-RPC, Web Services (incluindo SOAP, UDDI, WSDL, e XML), e JavaMail.
    • Descrever em um alto nível as características básicas de servlet e o suporte JSP para thin-clients HTML.
    • Descrever em um alto nível o uso e as características básicas de uma seção EJB, beans de entidade e beans orientados a mensagem (message-driven).
    • Descrever em uum alto nível os benefícios fundamentais e inconvenientes de usar tecnologias do lado do servidor J2EE e descrever e comparar as características básicas da camada web, camada de negócios e a camada EIS.

Simulados SCJA gratuitos

  • scja.de – na lateral esquerda, tem uns botões azuis. Cada um deles é uma bateria de questões.
  • ejavaguru.com – 10 questões de SCJA.
  • cafe4java.com – 5 questões sobre SCJA.
  • WGS-PREX-J019C – Esse é o melhor teste que eu já vi. É o teste oficial da Sun, com 150 questões e é um teste pago e o valor varia de país para país. O que certamente você não sabe é que esse teste está disponível gratuitamente, só que neste site bem escondido. Você vai lá, se cadastra e recebe um link, login e senha. O ambiente não é tão bom quanto o Sun Learning Connection mas as questões são as mesmas. Inclusive nesse mesmo pacote tem testes para várias outras certificações, tudo de graça e dentro da lei. 🙂

Eu estou incrementando e organizando esse post aos poucos.

Cara crachá

Severino

Meu crachá chegou, peguei com o Edu durante o Campus Party.

Cara Crachá, Sun Microsystems

Legal é que lá na sede da Sun em São Paulo esse cartão serve pra chamar o elevador e para se logar nas estações Sun Ray, o que é muito legal. Aqui em Fortaleza ele é só uma recordação na parede. 🙂

Sun SPOT Open Grant Program

Dado o sucesso e a procura, o projeto Sun SPOT reabriu as portas para submissões de propostas de trabalhos com o Sun Spot para professores, alunos e hobistas. Você submete uma proposta de trabalho livre usando o Sun Spot e o projeto entra lhe doando os kits de Sun SPOT necessários. A idéia é criar projetos livres que possam ser reutilizados em futuros projetos livres.

Sun Spot Kit por dentro

As vantagens:

  • Acesso a um equipamento de tecnologia de ponta equipado com vários sensores e comunicação por wifi.
  • Trabalhar com um ramo novo da cultura livre: o hardware livre e aberto.
  • Criar um projeto inovador e quem sabe até inédito.
  • Ter apoio da comunidade do Sun Spot através dos vários fóruns e listas.

Gif animado do Sun SPOT

Você pode obter mais informações sobre o Sun SPOT Open Grant Program aqui ou aqui.

Eu estou pensando em algo para submeter, e você?