Arquivo | trabalho RSS for this section

Capacidade não é tudo.

Rapidamente: ser capaz de algo não implica em execução.

Similarmente, execução não implica em bons resultados. Sempre corremos o risco de penalizar as organizações com as quais estamos envolvidos, ou por não executar, ou por executar incorretamente, ou por executar corretamente. Não há escapatória. O risco existe não importa o que.

Assim, avalie o que é mais importante para você: postergar, não fazer, fazer errado, ou fazer certo.

A resposta é quase que óbvia. A grande maioria responderá “fazer certo”. Contudo, tudo sempre depende de um ponto de vista, até a definição do que é certe ou errado.

Então, seja lá qual for sua opção, no final do dia o que será realmente mais importante é que você esteja em paz com sigo mesmo. De resto, é enfrentar as consequências.

Anúncios

Por que o MySQL é ruim?

Em português

Esta é apenas uma das razões porque eu considero o MySQL um banco de dados ruim. Uma minúscula nota na documentação para create table, em http://dev.mysql.com/doc/refman/5.5/en/create-table.html explica:

For other storage engines, MySQL Server parses and ignores the FOREIGN KEY and REFERENCES syntax in CREATE TABLE statements. The CHECK clause is parsed but ignored by all storage engines.

Para funcionar, é preciso usar a máquina InnoDB. Legal. Então minha pergunta: qual a necessidade para as outras máquinas, além de sobrecarregarem o sistema, entregando MENOS funcionalidade?

Eu heim…

English version

This is just one of the reasons why I consider MySQL not appropriate database.  A minuscule note on the documentation of the create table command, at http://dev.mysql.com/doc/refman/5.5/en/create-table.html, explains:

For other storage engines, MySQL Server parses and ignores the FOREIGN KEY and REFERENCES syntax in CREATE TABLE statements. The CHECK clause is parsed but ignored by all storage engines.

For it to work, the InnoDB engine is required.  Cool.  Then I ask: what is the need for all the other engines, other than drag the entire system, delivering LESS functionality?

Geez…

Clarion same ol’, same ol’

Day after day, and I keep reading the same complaints, justifications, rants, frustrations and gobbledeegook, from the same individuals, over and over and over.

But nothing really changes, in terms of improvement. I read people are always trying to do new things, but desperately trying to use the same old methods and tools.

I often read answers to other’s frustrations, that have any other intention than actually solve the problem, or support the poor user who is suffering, from whatever it may be: technical, business limitation, personal frustration with Clarion, and even true commitment with Clarion and/or community development.

I just saw a post arguing about an imminent release of a version, that had a (serious? who am I to judge what is serious and what’s not?) bug. And guess what? A saw a response from a Clariban member specifically using the word “blame”.

Well, I rather not see another buggy version, that will do me not much more than drag me away from what I have to do.

Personally I prefer spending time reading MSDN so I can learn how to do things, than buying a ton of templates that will “solve” my “problems” in a “quick” and “easy” way. But that’s just me, because even doing so, I still make good money from being such a dumb programmer who prefers to learn how to do things, instead of being a super smart programmer that responds promptly whenever the customer presses up.

I don’t know, but there’s something really wrong going on with this community. Clarion is a very nice language, but SV is obviously having turn around problems. Worse: a lot, I mean, a LOT of developers seem not to bother at all.

Things like: “take it easy, we can wait some 4 more years for these little bug corrections”, or “what really matters is making the app SEEM to work like a web application”, or even “why would I need to use an external editor? Clarion’s got it all!”

I tell you. This is BS. Clarion is a computer language, there is a Clarion compiler, and there is the Clarion IDE. The language works well, the compiler works well, but the IDE sucks bigtime. And SV is clearly totally lost trying to produce an IDE that amazes, seduces, and works like it used to be on mid-late 90’s.

I know Z worked side by side with BB (that’s Bruce Barrington) and he loves Clarion, probably much more than any of us, but I tell you: love isn’t nearly all it takes to produce a product.

So, all you, Claribans, before counter attack like a horde of watchdogs trying to fence SV from having to do what they have to do, think twice, because you might be very well, wrong.

You don’t want to answer questions, teaching how to do, instead of pointing to your own “solution” to a problem, fine. But use the same approach for when you don’t have something that will contribute to the TRUE development of the community.

Sometimes, when you think you’re doing a great good, you might be doing exactly the opposity, feeding fear, misleading, and promoting the same ol’, same ol’ thing that impedes personal, technical, and industry development.

Thank you.

Todos queremos ser felizes, mas o que compõe a felicidade?

Rapidamente. Hoje estava batendo um papo com uma amiga, quando me ocorreu a dúvida sobre o que nos leva a querer bater papo.

Em minha tentativa de entender este processo social, me peguei com outra pergunta: Como ser feliz profissionalmente?

Bom, o assunto é vasto, mas ao menos tempo, simples. Menos é mais, sempre.

Acontece que para sermos felizes, devemos compreender a relação entre alegria, sedução, e interesse.

  • Alegria é um sentimento de satisfação, e geralmente passa rápido.
  • Sedução são as ações que alguém toma para nos envolver em seus propósitos.
  • Interesse é a sensação de necessidade ou curiosidade que temos sobre algo.

Estas são definições minhas. Eu geralmente consulto o dicionário antes de me comprometer com a explicação de algo, mas desta vez, preferi deixar minha intuição no comando.

Como estas três sensações (alegria, sentir-se seduzido, ter interesse) compõem a felicidade profissional? A meu ver, temos de ter interesse em participar de algo, e ser seduzidos por alguém ou por algo, a participarmos.

Temos de ter interesse em ganhar dinheiro, em aprender mais, em nos destacarmos, em descobrir coisas novas, e em desenvolver novas soluções para a humanidade.

Temos de ser seduzidos a utilizar ferramentas, a interagir com nossos colegas, a nos vestir bem, a nos comportar bem, a ensinar, aprender, e até mesmo a comparecer diariamente ao local de trabalho.

É possível que façamos tudo, e mais, que listei acima, sem interesse e/ou sem sermos seduzidos, e é aí que o ciclo se quebra.

Fazer algo sem interesse ou sem sermos seduzidos, não traz alegria. O resultado torna-se algo muito industrializado, como a clássica imagem do funcionário público batendo o carimbo de forma automatizada, apenas esperando pelo fim de seu expediente, para no outro dia, seu martírio recomeçar.

Então, meus amigos, interessem-se em seduzir, e seduzam a si mesmos. Quando começarem a ter alegria em suas funções, seus colegas se contagiarão por ela, e um ciclo virtuoso será iniciado.

Simples, não é? Até a próxima!

Copy do PGAdmin III & Paste em uma planilha

Dica rápida, porque eu e muitos conhecidos estamos sempre precisando copiar um result set de uma consulta SQL feita no PGAdmin III para alguma planilha de cálculos.

Geralmente a planilha será o MS Excel, mas a dica funciona também com o Numbers e a maioria das planilhas utilizadas. Quem usa o Lucid 3D está sem sorte, no entanto — se é que alguém ainda usa, ou mesmo se lembra dela, a primeira planilha eletrônica “3D”.

O segredo é configurar o PGAdmin para copiar os dados SEM usar aspas como delimitador de caracteres, e usar o TAB como separador de campos.

No PGAdmin, selecione CMD+, (OS X) ou Menu Tools > Options > Query Tool (Windows)

Marque a opção “None” no campo Result copy quoting.

Marque a opção “Tab” no campo Result copy field separator.

A partir de agora, quando você copiar um result set de seu PGAdmin, e colá-lo em sua planilha, seus dados serão separados corretamente em colunas.

Até mais!

Um maravilhoso mundo novo!

Trabalhar é melhor ainda quando se pode descobrir novos mundos, novas possibilidades.

Hoje tenho o prazer em anunciar que a AEPlan, empresa para a qual estou trabalhando, lançou seu primeiro aplicativo no Android Market. Uau!

Pode parecer pouco, até mesmo não significar nada, para muitos a quem eu já comuniquei, mas para nosso time, significa a conquista de um mundo novo. É como descer de um barco e colocar os pés em terra firme após uma longa viagem, na qual sabemos que o destino está lá, mas ainda não o conhecemos.

O aplicativo é de uso específico para a comunidade médica, e isso nos serviu de baliza quando precisamos decidir quais funcionalidades, componentes, e grau de desempenho deveriamos oferecer. Obviamente que nosso objetivo sempre foi um aplicativo simples, rápido e confiável. Acredito que tenhamos atingido esse objetivo, que nada mais é do que o mínimo que se espera de qualquer programa (ou serviço prestado).

Adicionalmente, optamos por oferecer o aplicativo gratuitamente. Esse também é um terreno novo para nós, mas digo que é bem agradável poder oferecer um aplicativo útil aos usuários. Sempre que for o caso, certamente ofereceremos.

O problema com descobrir novos mundos é que a cada passo para frente, sempre haverá muitos outros ainda para a frente, e não podemos parar.

Parabéns a toda a equipe: Guilherme, Maurício, Roberta e Wellington, por demonstrarem entusiasmo mesmo quando nós (eu, André Francisco, e Saulo), demonstrávamos o programa em suas formas iniciais, completamente toscas e que não faziam qualquer sentido para um usuário, e aos chefes André e Edson, por nos olharem com cara de “vocês não são loucos de não terminarem isso”, e principalmente por terem proporcionado as condições para que percorressemos, todos juntos, essa jornada.

É isso aí!!!

Marquinho.

Marquinho se recompondo

Feijão com arroz...Ontem fui almoçar fora.  Bom, na verdade fomos filar bóia na casa da quase ex-futura sogra de um amigo, a Cida.  A Cida é uma pessoa muito, mas muito bacana, assim como são as filhas dela e o pessoal todo de lá.  São gente como eu não sou.  São gente simples e acolhedores.  Um dia chego lá.

Mas o real motivo do almoço não foi -pelo menos dessa vez, juro que não foi mesmo- a maravilhosa comida que a Cida faz. Eu queria ir dar uma olhada no Marquinho, o “negão”.  Em um post anterior, eu até mencionei que o cara dá umas mancadas de vez em quando, mas é meu amigo, fazer o que?  Pois é… ele mesmo.

Fui dar uma olhada nele porque ele está na batalha, lutando para se safar -dos problemas que são consequência das escolhas dele mesmo, tenho que dizer- e há coisa de 10 dias, segundo o próprio, teve um probleminha de saúde que, apesar de relativamente comum, preocupa.  Não, não, gente, não se preocupem porque ele não surtou ao se descobrir uma libélula.  Foi só um ataque de histeria, quero dizer, stress.  Coisa de programador.  De tempos em tempos, temos algum tipo de manifestação assim.

Agora já estou mais tranquilo, porque vi que o cara está bem, a barrigona d’água dele continua a mesma, e ele está mais tranquilo.  Isso é bom.  Ah, a comida da Cida estava ótima, claro.

Hoje, no escritório, o André me comentou que se abríssemos um fórum de suporte sobre nossa linguagem de programação, iria “bombar”, porque muitos programadores ainda me respeitam.  Pessoalmente eu acho que 90% dos programadores em Clarion nem sabem quem eu sou, e os 10% restantes querem me usar como modelo para a próxima versão do Mortal Kombat, mas enfim…

Essa afirmação do André me fez pensar em como eu consegui alguma notoriedade, enquanto guiava a moto para nossa casinha, de volta do serviço.  Cheguei à conclusão que foi porque eu tive muita ajuda, e um dos caras que me ajudou muito foi o Marquinho.  Como?  Pra começar, ele foi o primeiro a me dizer: “Clarion com Postgres funciona! Pode confiar”.

Marquinho se recompondoLembro-me de ficarmos horas na lanchonete Kentinho, com o laptop dele aberto sobre a mesa de plástico, enquanto ele me mostrava como conectar com um banco de dados, como fazer uma inserção, e isso tudo me inspirou a iniciar -finalmente- a usar um banco de dados relacional como repositório principal de dados para meus programas.

Isso foi uma mudança realmente grande de paradigma, para mim, e me abriu muitas possibilidades.

Assim, quero agradecer publicamente ao Marquinho pela boa vontade.  Quando eu ficar milionário eu pago um café.  Por enquanto fico só no “valeu”, mesmo.

E aos outros amigos que me ajudaram, saibam que eu não os estou esquecendo, tampouco relegando.  Apenas que eu já sou piegas demais e vou tentar não transformar este post em um musical da Broadway, parando por aqui, por enquanto.

Em tempo: Marquinho, experimente executar DROP DATABASE sinco; para ver que legal que é, cara! Fica mais legal ainda se você não tiver um “decape”!

É isso aí!