jan 052012
 

AVISO: Amigos comprei no dia 19/12 um ótimo celular (Sony Ericsson Live with Walkman ) no site da insinuante, o preço estava igual ao da americanas a diferença foi de 80 reais (sou assinante uol/clube uol) a compra foi fechada no boleto por R$ 579,10. Um preço muito legal. A previsão de entrega era de 30/12/2011. Chegando dia 02/01 liguei para o atendimento onde fui informado que havia um erro no sistema do site e que o produto tinha prazo máximo de entrega até as 21hs do dia. Caso não fosse entregue eu deveria entrar em contato para solicitar urgência na entrega.
Fiz essa solicitação no dia 03 e 04, recebi o seguinte email então:

“Prezado(a) Cliente,

Informamos que após seu contato com a Central de Relacionamento, foi aberta uma ocorrência junto ao setor responsável por entregas. Em até quatro dias úteis posicionaremos o ocorrido

Desde já agradecemos pela compreensão e por gentileza aguarde nosso retorno

Atenciosamente,”

Porém hoje (05/01/2012) tive a ingrata surpresa, no email:

“Prezado(a) David Ferreira,

Seu produto está retornando ao nosso centro de Distribuição Gentileza nos informe se deseja: Reenvio, Vale Troca no valor total pago para efetuar uma nova compra no site ou Cancelamento do pedido com devido reembolso.

Atenciosamente,

INSINUANTE.COM
Aqui você manda.”

Liguei novamente para o atendimento (entregas e reclamações) onde fui informado que não sabiam o motivo do retorno do produto e que por não possuir mais unidades no estoque não poderiam solicitar novo envio, somente quando o MEU produto retornasse para o estoque.

Resumindo, espero desde o dia 30 a entrega, não houve nenhuma tentativa de entrega estava de plantão em casa aguardando ansioso o meu novo ‘brinquedo’, porém agora vou ter que esperar aparecer algum no estoque, torcer pra que o sistema funcione e mande novamente pra mim, esperar novamente um novo prazo de entrega igual ao original.

E ainda mandam um email com assinatura dizendo “Aqui você manda” é uma palhaçada total. Insinuante/RicardoEletro (A nota fiscal eletrônica veio em nome da ricardo eletro). E ainda botam a IVETE na televisão pra fazer apelo dizendo que é uma loja NORDESTINA que respeita o consumidor NORDESTINO, foi minha primeira compra e última neste site.
Fica parecendo também que foi um modo de garantir a compra, quem pode afirmar que de fato existe este produto em transito? Eu ja tive compra que o produto voltou pra central e imediatamente a empresa mandou voltar (ser feita a entrega) urgente, não levou 12 horas.

Então amigos cuidado com as propagandas.
NÃO VOU DESISTIR DA COMPRA QUERO O QUE PAGUEI! É MEU POR DIREITO!

Favor divulgar a insatisfação de um cliente nordestino com a sua primeira compra online em uma empresa nordestina.

@_RicardoEletro
@Insinuante_

Protocolos:
14618394
14555561
14489163
14618888

abr 092009
 

Blz? Depois de muitos meses sem postar, vou iniciar com um tema altamente cultural, meu aquário 😛

Esse ano, resolvi voltar a criar peixes, para isso fui resgatar da poeira meu bom e velho aquário (tenho desde 1996), porém ao lava-lo aconteceu um acidente, e quando vi o fundo foi trincado.

Ano passado (2008) quando voltei a criar peixes aqui em fortaleza, levei meu aquário para ser consertado em uma loja de aquários, o mesmo havia trincado o fundo quando morava em brasília, e não sei como um hamster que passava uns dias dentro dele (com a ninhada de filhotes) conseguiu trica-lo. Pois bem, levei a uma loja aqui perto de casa, e o conserto do fundo mais uma tampa e base, saiu por nada menos que R$80,00 reais(onde trinta foi do conserto), o que acabei ficando puto foi com o conserto do aquário, onde na loja, o povo cortou a parte do fundo trincada e colocou um remendo, justificando que assim o fundo ficaria mais forte.

Este ano, quando ocorreu o acidente resolvi ir em uma vidraçaria, aqui perto de casa onde um vidro novo mais a mão de obra saiu por apenas 21 reais, isso mesmo, se você tiver problema de aquário quebrado vá direito na vidraçaria além de fazerem o mesmo serviço, mais barato são mais rápidos e com uma garantia/qualidade maior.

Aproveitando, outra dica que gosto é de procurar peixes de criadores e não de lojas, isso se você não se importa de ter peixes sem pedigre, pois na maioria das vezes, peixes comprados em lojas enfrentam viagens grandes, estão mais suscetíveis a doenças e são tratados como ‘números’ e não tem aquele mesmo cuidado que um criador tem, por isso acabo preferindo comprar peixes nas feiras da cidade (essas feiras que sempre tem no final de semana, onde você vê um “caboco” com um aquário cheio de peixes, bem claro que as opções acabam não sendo as mesmas de grandes lojas, mas as dores de cabeça e as condições dos peixes são melhores, só temos que tomar cuidado com o estresse deles nas primeiras horas, visto que enfrentam algumas horas de viagem e depois um confinamento em recipientes plásticos do criadouro até as ‘praças das feiras’.

Um ponto controverso é sobre as plantas, depois de não conseguir achar plantas naturais de boa qualidade com preços bons, resolvi apelar para artificiais, que apesar de serem apenas para enfeite propiciam um bom esconderijo para os filhotes(alevinos) e para a diversão dos peixes. Apesar de gostar muito de plantas naturais, acho que todo mundo que já teve uma criação razoável de peixes em tanques sabe os benefícios que elas proporcionam (alimentação, oxigenação, esconderijo, filtros/purificação, sombra etc…).

Eu particularmente estou mais satisfeitos com meus peixes comprados em feiras, com um custo as vezes de 60% menor e mais saudáveis, além do fato de que talvez por serem peixes criados na sua região já estão bem aclimatados com as temperaturas da sua cidade e com a qualidade da água local.

Algumas fotos da edição 2009 do meu aquário.

http://picasaweb.google.com/davidferreira.FZ/Aquario2009

nov 202008
 

Blz!

Amigos estaremos participando da “8ª Bienal Internacional do Livro do Ceará”[1], no Centro de Convenções[2] no dia 21/11/2008 as 17:00hs (No site fala as 17:00hs, mas acreditem em mim! é as 16hs mesmo) no Bloco E. Pois é, informações desencontradas…. o certo mesmo é as 17:00hs.

Onde teremos como temática: “Os jogos eletrônicos e sua relação com a leitura”:

-Palestras;
-Apresentação do GDJCE (Grupo de Desenvolvedores de Jogos do Ceará);
-Mesa Redonda;
-Apresentação de vídeos;

Referência

  1. http://www2.bienaldolivro.ce.gov.br/
  2. http://www.wikimapia.org/#lat=-3.7673097&lon=-38.4817171&z=17&l=0&m=h&v=2
out 052008
 
6º Encontro de Desenvolvedores de Jogos do Ceará (6EDJC)

6º Encontro de Desenvolvedores de Jogos do Ceará (6EDJC)

O GDJCE[1] (Grupo de Desenvolvedores de Jogos do Ceará), convida toda a comunidade cearense de jogadores e de desenvolvedores, a conhecer o universo do desenvolvimento de jogos, por meio dos encontro mensal EDJC (Encontro de Desenvolvedores de Jogos do Ceará), onde no melhor do espirito da comunidade, igualdade e liberdade de idéias para a troca de conhecimentos sobre desenvolvimento de “jogos”, abordando em cada encontro uma temática diferente, apresentando questões desde técnicas de programação, modelagem, roterização e divulgação.

Para o 6º EDJC, teremos como palestra principal o tema “Arte e Modelagem para Jogos”, proferida por “Neil Armstrong”.
No segundo momento daremos inicio a segunda amostra de demos e jogos dos participantes da comunidade, onde os participantes tem espaço para exibição de seus projetos, visando atrair colaboradores ou simplesmente pelo prazer de discutir técnicas, implementações ou possíveis melhorias, ou ainda para animar os amigos.
Teremos ainda a participação da equipe organizadora do FADEJE[2] (“1ª Feira de Apresentação e Desenvolvimento de Jogos Eletrônicos em Fortaleza”), para explicar sobre a programação e os campeonatos de desenvolvedores mugem e da maratona de jogos.

O 6°EDJC, ocorrerá dia 11 de Outubro de 2008 no horário das 08:30 as 12:00 , na Faculdade Christus[3], localizado na avenida Dom Luís, 911[4] – Aldeota.

Programação:
1.Apresentações Técnicas / Palestras
1.1.Arte e Modelagem para Jogos

2.Bate-Papo da Comunidade
2.1.Exibição de Jogos e Demos
2.2.FADEJE
2.3.Informes

Para mais informações acesse nosso site:
http://gdjce.wordpress.com

————————————
Referências:
[1] http://gdjce.wordpress.com
[2] http://www.apertastart.com.br
[3] http://www.fchristus.com.br/
[4] http://www.wikimapia.org/#lat=-3.7343356&lon=-38.4931004&z=17&l=9&m=m…

out 012008
 

Alguma instabilidade e desorganização estão aqui!!!

Estava cada vez mais dificil de manter meus sites e blogs, isso era facilmente notado observando o tempo entre os posts. Com a decisão de liberação do registro de domínio para pessoas físicas, acabei registrando meu próprio domínio http://www.davidferreira.com.br, e algum tempo depois, mais especificamente mês passado resolvi contratar um serviço de hospedagem, acabei escolhendo o UOLHOST, o qual dentre os beneficios dá como brinde a primeira anuidade de um domínio, sendo assim acabei registrando também o domínio http://www.dukitan.com o qual uso o nome/marca DukItan para identidade visual dos softwares que desenvolvi.

Então descupe se as informações nesste site/blog estiver um pouco desorganizada durante os próximos dias, embreve tudo ficará melhor 🙂

abr 192008
 
O projeto PJMOO (Projetando Jogos Multiplataforma com Orientação a Objetos) foi iniciado em meados de 2004, onde tivemos até o momento hospedados no CódigoLivre[1], porém devido alguns fatores técnicos tais como:
  • Suporte ao Controle de versões Subversion – SVN;
  • Maior disponibilidade do site;
Resolvemos mudar para o SourceForge[2], porém gostaríamos de deixar claro que, fomos muito bem recebidos e tratados pela equipe do Código Livre, inclusive tivemos várias de nossas necessidades peculiares supridas, como por exemplo o suporte a mediawiki.
Porém devido ao intenso trabalho que tivemos ao longo dos últimos anos e pela nossa(minha) principal localização ser no nordeste (Fortaleza/CE), enfrentamos diversos problemas para sermos roteados(respondidos) aos(pelos) servidores do CódigoLivre, o que ocasionava algumas vezes a falta de acesso, que chegavam a durar semanas. Na maioria das vezes algumas pessoas de outras regiões/cidades do país conseguiam acessar normalmente. Pela não solução deste problema, resolvemos migrar de servidor para que nosso trabalho não fosse mais prejudico. Sendo assim, anuncio hoje que concluímos a migração do conteúdo das wikis, onde agora nossa wiki é atendida pelo link[3].
Desejamos ao CódigoLivre, sucesso e que o mesmo possa novamente, se restabelecer e oferecer novamente para seus usuário o excelente serviço que nós prestou até alguns meses atrás.
Continuaremos a manter nossa presença no servidor do CódigoLivre, porém apenas como histórico do que fomos até o momento, novos conteúdos não serão replicados ou armazenados em seus servidores. Bem pelo menos não até segunda ordem 😉

PJMOO agora é no SourceForge.net em:

———————————————-

Referência
[1]http://www.codigolivre.org.br
[2]http://www.sourceforge.net
[3]http://pjmoo.wiki.sourceforge.net

fev 262008
 

Blz!

Informo que estou migrando o conteúdo de meus antigos sites pessoais[1] para uma plataforma mais dinâmica e fácil de atualizar, em breve os antigos endereços devem apontar para este blog.

Aqui apresento a vocês um pouco das coisas que eu faço ou fiz, principalmente com relação a meus projetos de Software, além de manter este blog como meu portifolio mantenho um blog mais técnico com besteirol [2] onde relato algumas experiências.

  1. Sites Pessoais
    1. http://davidferreira.sites.uol.com.br
    2. http://davidferreira.fz.googlepages.com
  2. FZ Tech
    1. http://davidferreira-fz.blogspot.com
out 252007
 

Blz!

Conforme foi sugerido, um amigo perguntou o que de fato era a interface gráfica que eu havia desenvolvido, então resolvi falar um pouco sobre ela e mostrar a versão atual que agora é parte integrante do framework GBF (Gamework’s Brazilian Framework).

O GBF é um framework em C++, criado para o desenvolvimento de jogos 2D (jogos estilos: nes/snes e mega), seu foco é no uso da programação orientada a objetos além de ser multiplataforma (é compatível para compilação em ms-windows e gnu/linux) e poder ser utilizado em jogos que exijam pouco hardware, confesso que posso estar saindo deste trilho, mas por vez ou outra, volto para otimizar o framework e testa-lo no outro pc que tenho (AMD K6-II 500mhz / 192mb RAM / GeForce 2 MX 400 64 mb).

Tem algum tempo que voltei a mexer no projeto “pancada”, o qual nasceu junto com o framework (por volta de 2004) porém ficou meses(anos) parado e surgiu a necessidade de eliminar aquela codificação chata de preparar as janelas de dialogo, como aquelas telas de vitória, créditos e afins.

Sendo assim comecei a rascunhar (como pode ser visto nos links no final deste post) algumas possibilidades para criação de uma interface gráfica bem simples, que visavam só apresentar um texto dentro de uma área de tela, a qual chamei de janela, e que algumas vezes tivesse um botão “OK” para fechar, para não inchar o desenvolvimento com mil e uma possibilidades, tomei como política básica o de desenvolver/suportar apenas o que de fato é necessário, tentando assim talvez otimizar e ganhar um pouco de performance, futuramente pode ser que adicione outros botões (como os utilizados em jogos de RPG/Quests) por hora não é o foco.

Vamos para de enrolar, e mostrar logo como a coisa funciona.
Abaixo podemos ver o diagrama de classes das janelas

O que de fato acontece é que o desenvolvedor utilizando o framework faria apenas isto:

//Criando um padrão visual com janela transparente - segue o pattern Prototype (GoF)
UserInterfaceVisualImagem *uiVisualImagem = new UserInterfaceVisualImagem();
uiVisualImagem->setCorBorda(255,0,0);

//ou caso seja o desejo utilizar uma janela de cor solida (fundo de uma única cor)
//sendo necessário apenas passar para o método "setVisual".
UserInterfaceVisualSolido * uiVisualSolido = new UserInterfaceVisualSolido();
uiVisualSolido->setCorBorda(255,0,0);
uiVisualSolido->setCorFundo(100,200,100);

UserInterfaceWindowTitulo *janelaAjuda;
janelaAjuda = new UserInterfaceWindowTitulo();
janelaAjuda->setPosicao(40,50);
janelaAjuda->setDimensao(560,400);
janelaAjuda->texto.setFonte("texto");
janelaAjuda->texto.setChaveTexto("tela_ajuda_%02d");
janelaAjuda->titulo.setFonte("menu");
janelaAjuda->titulo.setChaveTexto("titulo_ajuda");
janelaAjuda->setVisual(uiVisualImagem->clone());
janelaAjuda->adicionarBotao(new UserInterfaceBotao("menu","botao_enter",SDLK_RETURN));
janelaAjuda->inicializar();

UserInterfaceVisualImagem *uiVisualImagem = new UserInterfaceVisualImagem();
uiVisualImagem->setTipoBackground(BACKGROUND_LINES);
uiVisualImagem->setCorBorda(255,0,0);

UserInterfaceWindowTitulo janelaCredito = new UserInterfaceWindowTitulo();
janelaCredito->setPosicao(40,50);
janelaCredito->adicionarBotao(new UserInterfaceBotao("menu","botao_enter",SDLK_RETURN));
janelaCredito->inicializar();
janelaCredito->setDimensao(560,400);
janelaCredito->texto.setFonte("texto");
janelaCredito->titulo.setChaveTexto("titulo_credito");
janelaCredito->setVisual(uiVisualImagem->clone());
janelaCredito->titulo.setFonte("menu");
janelaCredito->texto.setChaveTexto("tela_credito_%02d");
A classe “UserInterfaceVisualImagem”, provê o efeito do fundo da janela, o qual aparenta ser transparente, talvez até por meio do canal “alpha”, porém muito pelo contrario, a questão é muito simples, ele desenha no fundo da janela uma imagem, que possui alguns pontos que são transparentes, definido pelo que chamamos de colorkey, onde uma cor(RGB) é mapeada para não ser desenhada, no caso o mais comum é a magenta RGB(255,0,255), essa é uma técnica simples que possivelmente é mais rápida para desenhar que a utilização do canal alpha, ganhando talvez alguns pontos de performance. A figura em questão que possui alguns padrões de “transparência” pode ser vista abaixo, e a seleção de qual utilizar é baseada na enumeração “UserInterfaceVisualTipoBackground”.

Na classe “UserInterfaceWindow” e “UserInterfaceWindowTitulo” existe os atributos “texto” e “titulo” o qual possibilita a utilização do recurso de “localização”, que é a mudança de idioma nos textos de acordo com o sistema operacional do usuário(no caso o jogador), para finalizar o método “inicializar” realiza os ajustes finais para determinar algumas características que devem ser executadas apenas uma vez ou o menos possível.

Após entender assim, mesmo por cima o que deve ser feito, temos a parte importante que é “Como de fato eu uso e desenho a janela”, bem para isso vou mostrar o código:

void Jogo::menuCredito()
{
rameLayerManager::getInstance()->getFrameLayer("background")->desenhar();

janelaCredito->executar();

if (janelaCredito->isBotao(UserInterfaceWindow::BOTAO_OK)){
setMenuPrincipal();
}
Este metodo “menuCredito” é provido por meio de uma classe chamada GAT (GBF Application Template) a qual tem o uso apenas recomendado, de fato começa a oferecer uma estrutura pronta para utilização do GBF.

Neste método podemos observar uma chamada ao “FrameLayerManager” (é um singleton), no caso esta chamada é apenas pq queríamos desenhar o cenário do jogo abaixo da nossa janela. (Ver Figura 1)

O desenho de fato da janela é feito pelo método executar, o qual cuida de renderizar o que for necessário da janela e seus componentes. (Ver Figura 2)

O método “isBotao” verifica se o botão “OK”, único suportado no momento foi acionado ou não, (o botão responde pelo código das teclas definida no SDL), onde caso seja acionado executará os comandos informados (Só a título de curiosidade este método faz o sistema de máquina de estados do GAT retornar ao exibição do menu principal).

Para finalizar podemos entender que o que chamamos de janela, basicamente é uma região da tela, a qual podemos fazer alguma manipulação, no caso da GBF e do Pancada tudo que necessitamos é desenhar as bordas da janela, uma imagem de fundo com efeito de “transparência”, que seja capaz de exibir alguma mensagem(texto e título) e que possa responder ao acionamento de algum botão.

Caso tenham interesse em saber mais detalhadamente como funciona ou detalhes da implementação podem entrar em contato 😉

Figuras Anexas
Figura 1: Tela do Menu Principal

Figura 2: Tela de Crédito


T+!
Vida Longa e Próspera!

———————————————-

Referência
[1]http://davidferreira-fz.blogspot.com/2007/09/gbf-interface-grafica-v05.html
[2]http://davidferreira-fz.blogspot.com/2007/09/rascunho-de-interface-grfica.html
[3]http://pjmoo.wiki.sourceforge.net/
[4]http://pjmoo.wiki.sourceforge.net/GBF
[5]http://www.libsdl.org

jul 232007
 

Blz! Só pra deixar registrado!
Pois num é que dessa vez fui!
Estive no SANA 7

Dessa vez graças a um amigo(André), acabei me convencendo a ir, e matei minha curiosidade.
Pra quem não conhece o sana[1], ocorre uma vez por ano aqui em Fortaleza, durante três dias, com exibição de vídeos(animes, séries, filmes), stands, RPG, campeonato de video games, exibição de lutas marciais, palestras, cospley(que é o povo incorporando os personagens, ou seja, fantasiado) com direito até a coreografia e campeonato (inclusive tem um campeonato nacional), sem falar das coisas estranhas e cômicas que tiram a gente do sério, superou minhas expectativas e receios.
Pra quem como eu achava que era coisa pra “criança” ou adolescentes, tem um publico adulto e adulto-jovem muito alto, inclusive era possível ver pessoas por volta dos seus quase 50 anos, é realmente um evento incrível, divertido e que possibilita libertar a mente dos preconceitos impostos pela nossa sociedade, é pura diversão mesmo, eu recomendo e ano que vem estarei lá! E levarei minha namorada, assim eu espero :*, por muito pouco que ela não foi 🙂

T+!
Vida Longa e Próspera!

———————————————-

Referência
[1]Portal Sana – http://www.portalsana.com.br

jun 192007
 

Slackware Current

Acabei estimulado ao observar listas e a slackware zine[1], a fazer a atualização do meu sistema e tentar ver se consegui de fato utilizar melhor meu hardware, pois eu vejo que existe um consumo muito alto de memória, que pra mim parece ser estranho, pois agora com 768mb a carga do sistema é quase total, permanecendo apenas uns 200 a 100 mb livres, e quando tinha 256mb (+/- um mês atrás) essa carga não passava dos 200mb, ou seja, ou é técnica para otimizar o uso e o sistema vai reciclando a memoria alocada ou tem alguma coisa muito errada no meu sistema/configuração.

O fato é, que acabei fazendo besteira:

Apaguei alguns arquivos acidentalmente (dica: não coloque arquivos importantes no /tmp) e meu costume/experiência com ms-windows, quando fazia cagada era só usar uns softwares para recuperação de arquivo deletado, então pensei “Se no windows eu podia, no linux é claro que é mais fácil assim, já que temos praticamente tudo que precisamos, ainda mais quando é baixo nível”.
Espertamente comecei a procurar no google como recuperar arquivos deletados de partições reiserfs, e rapidamente encontrei uma série de artigos que ensinavam os mesmos procedimentos, então sendo esperto, lá fui eu recuperar meus arquivos, de fato tudo funcionou conforme o tutorial[2] e meu diretório “/lost+found”, ficou cheio de arquivos com nomes estranhos, então fui lá e dei boot pelo kernel padrão, pois havia feito a operação com o CD de instalação do slack 11, porém cadê o sistema? começou dando erro dizendo que não localizava a imagem do kernel, mexi mais um pouco e consegui encontrar uma das diversas imagens e com ela consegui avançar, porém o sistema não consegui carregar os comandos do inittab[3] e seguindo as recomendações e por ter pressa pois ia palestrar em alguns dias, resolvi começar um sistema novo, do zero. Esse foi o pior momento que tive ao utilizar Linux/Slackware, porém apesar de ser grave acredito que tive problemas piores ou do mesmo porte e muito mais recorrentes com ms-windows, os quais me levaram a abandonar o sistema por não aguentar mais as dores de cabeça.

Resultado: Hoje estou com o slackware 12 rc1 :), e tive um ou outro problema de inicialização com um kernel que compilei, mas entrando com o kernel padrão o sistema de journaling se corrigiu e pronto, está firme e forte e voltei a programar e nunca mais tento recuperar arquivos deletados usando o reiserfsck.

T+!
Vida Longa e Próspera!

———————————————-

Referência
[1] SlackwareZine – http://www.slackwarezine.com.br
[2] tutorial para recuperar arquivos – http://www.guiadohardware.net/dicas/recuperando-arquivos-particoes-reiserfs.html
[3] inittab (Minha mensagem pedido help! 🙂 )- http://groups.google.com/group/slack-users-br/browse_thread/thread/e5ff34902fea86d2/?hl=pt-BR