“Nem tão livre assim”

Sérgio Amadeu da Silveira

A Istoé publicou uma matéria sobre a saída de Sérgio Amadeu do ITI, com o nome “Nem tão livre assim”.

A notícia me deixou bastante triste e chocado com a crise no governo estar atingindo até uma coisa tão benéfica e interessante como é o software livre. Ver um cara como o Sérgio Amadeu saindo do governo é decepcionante depois de ver tantos projetos interessantes que ele coordenou e participou. Mas espero que os próximos em sua função no governo continuem com esses projetos e sempre inovando e criando novas idéias para o software livre no Brasil. O motivo da sua saída ele explica na seguinte frase de sua entrevista: “É bonito apoiar telecentro, computador barato para pobre, mas na hora de enfrentar interesses a favor do software livre, falta apoio, falta cara na reta.”

Para quem não conhece Sérgio Amadeu da Silveira, aproveito para citar um trecho de um texto dele de cerca de um ano atrás quando foi processado pela Microsoft por ter dito que a doação de software para governos é uma prática como a de traficantes: “[…] Gostaria de registrar que a contratação de software preservando os valores liberdade e abertura é, para o Governo Brasileiro, uma questão ligada de forma indissolúvel ao princípio democrático. E porque se percorreu um longo e doloroso caminho para chegar ao estágio atual de desenvolvimento da democracia neste país, não arrefeceremos em nossa luta. Se democracia é um valor repleto de ideologia, não é jamais um valor insignificante. Se democracia é um sonho, é um sonho do qual este País jamais acordará novamente. O futuro é livre.”


Estou participando do Festival de Música de Itajaí e também do projeto Banho de Cidadania do Colégio. Por isso, meu projeto de Software Livre está parado e não ando mais desenvolvendo nada. Fui muito mal na OBM nesse final de semana (também, eu não esperava ir bem e por isso nem me esforcei muito, ainda saí cedo porque tinha oficina de piano), mas isso não importa. Nesse ano, eu já esperava não ganhar nada na OBM. Fiz uma questão, mas pelo menos acertei ela… Agora tenho que me preparar para a ORM, que por ser só de Santa Catarina é bem mais fácil, e aí eu quero pegar uma medalha… ;)

Hoje meu grupo de choro tocou na Hora da Sineta. O show não foi muito bom, mas tudo bem… :D Também toquei na Sessão Cívica; essa apresentação foi um pouco melhor… Minhas aulas com o Michel Freidenson estão bem legais, embora ele esteja repetindo algumas coisas que eu já sei. Paralelamente, estou pegando o arranjo do Leandro Braga da música Naquele Tempo. É um choro bem legal do Pixinguinha e Benedito Lacerda, que no CD dele ficou bem interessante… Aliás, mandei um e-mail para ele pra ver se ele não escreveu a partitura.

Depois de amanhã vai sair o primeiro beta do Firefox 1.5! :P

PS1: Agora eu estou sabendo de “todas as notícias” porque tô finalmente usando os feeds dos sites de notícias do mundo, de informática e até as notícias do São Paulo! E, olha… Vale a pena usar esses feeds XML… Facilitam bastante a vida!

PS2: Coloquei ali nos botões ao lado direito um botão do Opera. Cada vez que alguém clica eu ganho um ponto e juntando 250 pontos, eu ganho o registro dele… Bom… Eu não uso Opera, a não ser para testar os sites que eu faço, mas sempre quis vez um Opera registrado pra ver se ele é bom sem aquelas ads feias! Então, quem quiser colaborar que fique a vontade! Hehehe…

Feed RSS, Google e OBM

Finalmente implementei o feed RSS que estava faltando na minha página… O Gustavo Custódio, do Colégio, me lembrou de criá-lo e fiz isso agora a noite mesmo…

Segui o padrão do Bruno Torres, porque não tenho muita experiência com feeds XML/RSS e criei até um XSL para não ficar só o feed mesmo, mas ter um “estilo associado a ele”, como diz o Mozilla.

Hmmm… Então agora vocês já podem ver o conteúdo do site via os feeds (o que facilita bastante)… E aproveitem para se encontrarem algum erro (eu fiz na pressa) me avisarem. :)

Hoje coloquei também em minha página o programa Google Adsense. Coloquei um pequeno banner (de 468×60) localizado embaixo do primeiro post da página e outro no rodapé da página e acho que não poluiu e aliás, as cores ficaram discretas e bonitas. :D (hehehe, sou o primeiro cara que diz que gosta de ads no mundo!).

E por falar em Google, nessa semana testei vários serviços deles. Começou com o GoogleTalk e depois que meu irmão colocou rótulo pra “todos” os lugares do mundo no GoogleEarth acabamos realmente nos viciando em Google. Mas os serviços deles são ótimos!

Boatos dizem que o Google vai dominar o mundo e o Pink e o Cérebro trabalham lá. Não sei se é verdade, mas cada vez mais acho que isso realmente faria sentido! Hehehe…

Sábado é a segunda fase da OBM (Olimpíada Brasileira de Matemática) e também começa o Festival de Música de Itajaí. Na Olimpíada, acho que não tenho muita chance e, aliás, nessa semana também andei estudando um pouco (com o César Kawakami inclusive, que me passou umas coisas bem legais sobre Teoria dos Números). No festival, me inscrevi para fazer piano mesmo com o Michel Friedenson.

Depois da semana do festival de música, quero voltar a programar logicamente. Essa semana só tentei fazer coisas em GTK, mas sem muito sucesso (aprendi um pouco de C/GTK, mas depois resolvi PHP/GTK porque PHP é uma linguagem mais completa, mas ainda não decidi nada)…

Mensageiros Instantâneos, OBM, Novos Programas, Música

Em primeiro lugar, venho por meio deste post comunicar que não uso mais MSN Messenger. O mensageiro instantâneo da Microsoft saiu da minha lista de contas do CenterICQ para a entrada de dois novos e melhores: IRC e GoogleTalk/Jabber. Cheguei a conclusão de que quem quer falar comigo deve usar o que eu uso e não ao contrário, por um motivo óbvio: o meu é melhor que o deles.

Esta decisão fez com que eu perdesse centenas de contatos, mas acho que foi a decisão certa a ser tomada. Quem quiser me contatar agora, pode me adicionar no ICQ como 147330555, GoogleTalk como tmadeira em gmail.com e no IRC/Freenode, como tiagomadeira.

O segundo ponto importante deste post é o anúncio da OBM, Segunda Fase. A prova acontecerá no sábado que vem, dia 03 de setembro. Acho difícil eu conseguir medalha nesse ano (Terceira Fase é difícil!), mas vou tentar me esforçar o máximo possível… Esta semana tivemos o treino para olimpíadas com o Vavá, aprendi algumas coisas úteis. E ontem conversei com o César Kawakami no ICQ que me deu umas dicas interessantes também sobre Teoria dos Números. Vou tentar aprender alguma coisa sobre isso nos próximos dias…

As aulas de matemática dessa semana foram pouco produtivas porque eu andei faltando algumas para a divulgação do fórum do colégio. Então, só deu pra fazer dois problemas: a implementação da Máxima Subcadeia Comum (LCS/Programação Dinâmica):

//LCS - Longest Common Subsequence
//Programação Dinâmica - MSC - Maior Subcadeia Comum

#include <stdio.h>
#define SMAX 1001
#define DIAGONAL 1
#define LADO 2
#define CIMA 3


//n = tamanho de x
//m = tamanho de y

int c[SMAX][SMAX], b[SMAX][SMAX], n, m;
char x[SMAX], y[SMAX];

int lcs_recupera(int i, int j) {
	if (i==0||j==0) {
		return 0;
	}
	if (b[i][j]==DIAGONAL) {
		lcs_recupera(i-1, j-1);
		printf("%c", x[i]);
	} else if (b[i][j]==CIMA) {
		lcs_recupera(i-1, j);
	} else {
		lcs_recupera(i, j-1);
	}
}

int main() {
	int i, j;


	printf("LCS - Longest Common Subsequence\nPor Tiago Madeira\n\n");
	printf("Digite o tamanho da string X: ");
	scanf("%d", &m);
	printf("Digite o tamanho da string Y: ");
	scanf("%d", &n);

	scanf("%*c");
	printf("Digite a string X: ");
	for (i=1; i<=m; i++) {
		scanf("%c", &x[i]);
		c[i][0]=0;
	}
	scanf("%*c");
	printf("Digite a string Y: ");
	for (i=1; i<=n; i++) {
		scanf("%c", &y[i]);
		c[0][i]=0;
	}

	printf("\nPrograma raciocinando...\n");
	for (i=1; i<=m; i++) {
		for (j=1; j<=n; j++) {
			if (x[i]==y[j]) {
				c[i][j]=c[i-1][j-1]+1;
				b[i][j]=DIAGONAL;
			} else {
				if (c[i][j-1]>c[i-1][j]) {
					c[i][j]=c[i][j-1];
					b[i][j]=LADO;
				} else {
					c[i][j]=c[i-1][j];
					b[i][j]=CIMA;
				}
			}
		}
	}

/*	printf("\nMATRIX C\n");
	for (i=1; i<=m; i++) {
		for (j=1; j<=n; j++) {
			printf("%d ", c[i][j]);
		}
		printf("\n");
	}

	printf("\nMATRIX B\n");
	for (i=1; i<=m; i++) {
		for (j=1; j<=n; j++) {
			printf("%d ", b[i][j]);
		}
		printf("\n");
	}
*/

	lcs_recupera(m, n);
	printf("\n");
}

e um programa bem ridículo para calcular os termos e a soma de uma PA (é o que o prof. tá ensinando, aí achei bom pra fazer os exercícios mais rápido…):

//Aplicar as fórmulas das PAs

//Progressão Aritmética
//Programa desenvolvido por Tiago Madeira (c) 2005.

#include <stdio.h>
#define MAX 1000001

long double a[MAX], s[MAX];

int main() {
	long double r;
	int n;

	printf("Primeiro termo da PA: ");
	scanf("%Lf", &a[1]);
	printf("Razão da PA: ");
	scanf("%Lf", &r);

	//Eu podia fazer só pros que vão ser usados, mas não sei porquê, deu vontade de fazer assim... =)
	printf("\nAguarde o problema raciocinar tudo que ele tem para raciocinar...\n");
	for (n=2; n<MAX; n++) {
		a[n]=a[1]+r*(n-1);
		s[n]=(a[1]+a[n])*n/2;
	}

	printf("\nE agora, digite números para o programa dizer A e S dele.\n");
	do {
		printf("Número: ");
		scanf("%d", &n);
		if (!n) {
			break;
		}
		printf("Número na posição N = %.Lf\nSoma de 1 a N = %.Lf\n\n", a[n], s[n]);
	} while (n);

}

No começo do mês que vem é o Festival de Música de Itajaí. Acho que vou fazer oficina de Piano Popular avançado com o Prof. Michel Freidenson, que foi quem me deu aulas numa oficina semelhante há dois anos. A semana da música vai contar também com uns shows bem legais e o site oficial é este aqui.

Bronze na Olimpíada de Maio

Ontem saiu no site da OBM o resultado do Brasil na Olimpíada de Maio nesse ano. Ganhei bronze com 30 pontos! Mais um bicampeonato nesse ano… Hehehe… :D

Nessa semana, o laptop voltou a ter um problema de HD (quer dizer, o problema é o mesmo que aquela vez, mas voltou a dar pau e eu tive que formatar tudo de novo!). Tô revoltado aqui, ainda mais porque nessa semana tô refazendo as provas e trabalhos da semana que eu faltei por causa do curso da OBI. Tenho um trabalho (Flash, The Little Dog Corporation) sobre o Pitágoras que devo acabar até sexta-feira e não tô nem com um sistema estável aqui…

Não sei ainda o que vou fazer com o laptop. Eu mandei um e-mail pra HP e o cara (muito educado e rápido, por sinal) respondeu sugerindo que eu fizesse três coisas. Primeira: tirar e colocar o HD de novo. Segunda: rodar o “Killdisk”. Terceira: comprar um hd novo! :( Tomara que não seja a última, porque um HD de 40gb pro laptop tá 350 reais…

A parte boa é que já que eu formatei, eu acabei reconfigurando tudo e daí eu sempre acabo aprendendo algo novo. Dessa vez, eu parei de vez de usar KDE (nem instalei pra não dar vontade). Tô usando Fluxbox com Eterm e aprendi a deixar o Fluxbox bem bonito… Depois eu vou ter que formatar o HD para qualquer uma das sugestões do cara da HP, então vou ter que configurar tudo de novo, mas foi legal só pra aprender…

Não tenho mais programado NADA (com exceção de durante as aulas de matemática, porque o professor ainda tá ensinando como descobrir vértices de funções de segundo grau), mas baixei uns PDFs legais do professor Cid da UNICAMP e vou ler esse material assim que possível (sobre NP-Completude e Programação Dinâmica).

O Colégio tá inaugurando um fórum novo. Quem estiver disposto a contribuir com dúvidas ou respostas: Quer saber?

Para quem não sabe…

A Olimpíada de Maio é uma olimpíada iberoamericana (acontece em países colonizados por Portugal e Espanha, e nestes dois países também) de matemática dividida em dois níveis: Até 13 anos e até 15 anos. Este ano eu participei do nível 2, 15 anos.

Esta notícia em outros lugares…

Resultado da Seletiva IOI

Museu do Ipiranga

Hoje cheguei em Itajaí pela manhã depois de uma semana muito legal visitando pontos turísticos e participando de eventos de vários tipos em São Paulo (as fotos estão disponíveis no meu álbum do Flickr).

Perto da hora do almoço, o resultado da seletiva para a Olimpíada Internacional de Informática finalmente saiu. E me surpreendi com a pequena quantidade de pontos que fiz. Eu tinha feito as seis questões e esperava fazer uns 400 pontos (sabia que o problema do Caixeiro Viajante da primeira prova estava errado e considerava alguns errinhos), mas fiz apenas 180! :(

Só fiz 10 pontos no problema Campos de Minhoca e 40 no Criptologia, entre outras coisas inesperadas como o Floyd Warshall não ser suficiente para resolver o problema do Caixeiro Viajante da segunda prova, como eu pensava… E pior é que em todos os testes cai ao menos um caso que meu programa não cobre!

Mas a maior decepção foi mesmo no Criptologia. É um problema bem fácil de substituição de caracteres… Eu não fiz os 100 pontos possíveis por não imprimir um espaço no começo da frase caso tivesse. Acho que isso não tá certo, já que uma frase (mensagem) NUNCA começa com um espaço e meu programa está imprimindo tudo conforme solicitado, com exceção desse espaço. (E o Tchê disse na Tutoria que a falta de um espaço não deveria tirar pontos na olimpíada.) Por isso, enviei um e-mail solicitando recorreção e admissão disso. Pelo resultado atual, estou em nono lugar e com os 60 pontos desse problema eu fico em quinto. Já é uma diferença boa e acho bem mais legal ficar só a uma vaga de estar na internacional…

Editado – Quinto lugar

A coordenação da OBI aceitou meu pedido e agora estou em quinto lugar com 240 pontos! Ou seja, se alguém não puder ir por compromisso ou saúde, acho que sou eu que participo da equipe brasileira no lugar dele. :D Bem que podia ter mais uma coisinha assim com mais 50 pontos, né? :lol:

Agora tô começando a me preparar pro ano que vem.

Pretendo rever os slides do curso, ler o livro do Cormen, estudar mais matemática/geometria e resolver os problemas do USACO Training Gateway e da Universidade de Valadollid pra ver se consigo ir pro México ano que vem… Acho que tenho bastante chances (aliás, descobri que nesse ano eu já tinha, mas por errinhos não fui tão bem como pensei que tivesse ido).

O curso desse ano foi bem interessante, aprendi bastante e mesmo não indo tão bem na seletiva, agora estou animado pro ano que vem. :D

Semana Azul

Vou estender o tópico para fazer uma propaganda da Semana Azul. A Semana Azul é um evento on-line que ocorre entre 25 e 31 de julho de 2005. Para acessar as palestras que acontecem todos os dias da semana às 20h00, o participante precisa ter algum cliente de IRC e entrar na rede da Freenode (irc.freenode.net) no canal #mozilla-br. Irão ocorrer palestras legais sobre projetos que envolvem XUL e Mozilla… A programação completa está disponível aqui: http://www.mozilla.org.br/semanaazul/?n=SAr1.ProgramacaoIRC. :) Participem!

© 2005–2020 Tiago Madeira