Confessionário: bizarrices que você cometeu e sempre escondeu mas agora teve coragem de contar

Oi, Galera!

Quem já não cometeu algum erro bizarro no desenvolvimento ou solucionou um problema de modo inusitado, mas que se alguém descobrir você tem vontade de dizer “não fui eu” ou “quando eu cheguei já estava assim” e coisas do gênero?

Bem, esse tópico foi criado por curiosidade e divertimento mas de repente, a bizarrice de um pode diminuir (ou provocar!) a do outro.

DETALHE IMPORTANTE: só valem as próprias bizarrices; não vale contar histórias de outros, afinal é um “confessionário”.

Assim, inauguro o tópico com uma das minhas.

Certa vez tive que recuperar o texto de um banco de dados e mostrá-lo numa página (jsp) no browser. Era um texto composto e eu ia recuperando partes dele no banco e “montando” o texto completo na tela, para formar um parágrafo. Ao testar o módulo pela primeira vez tudo pareceu correr bem e passei adiante no trabalho. Quando fui orgulhosamente mostrar o resultado a outro programador, resolvi trocar o texto no banco de dados para mostrar que estava tudo funcionando bem e aí começou o meu calvário. O ponto final insistia em aparecer na janela, sempre na mesma posição! Bem, como vocês são programadores devem ter imaginado o que passei: olhei o HTML, o banco, o controller e por aí vai. Algum tempo depois (não vou confessar quanto tempo), descobri a bizarrice: uma sujeira na tela - do tamanho, cor e formato do caractere “ponto” da fonte que eu estava usando - exatamente em cima do ponto final do primeiro teste que eu havia feito! :oops: :oops: :oops:

E você? Está se coçando pra contar algo pra gente? Não tenha medo! Você não está só!!! :smiley:

Saudações,
Almir.

Não conseguia solucionar um problema num programa client/server o que sempre deixava o cliente num modo inconsistente. Depois de várias tentativas ao longo de meses resolvi criar um thread que checava o cliente de 5 em 5 segundos e se ele estivesse num mode inconsistente “silenciosamente” colocava ele em modo consistente. Nunca mais tive problemas… 8)

Pelo menos o cara que vai dar manutenção no código vai poder honestamente dizer “quando cheguei já estava assim!” :smiley:

Tá parecendo post de comunidade de orkut! Mahuauahauha

Eu estava a refazer um relatório para otimizá-lo, mas eu estava tendo problema com os dados gerados que não batiam na mesma coluna. Aquele tipo de arquivo onde as colunas são separadas por tabulação.

Eu só tinha alterado o SQL e a porcaria do dado sempre vinha diferente sendo que na tela do TOAD os dados retornados eram os mesmo.

O problema? Era a ordem do resultado dos SQLs. O primeiro SQL usava where valor = “AAA” o que eu otimizei era where existis…

Bastou colocar order by nos 2 sqls que o resultado veio o mesmo! Isso me custou de 2 a 3 dias… -_-’’

Eu estava achando que o problema era no código VB q eu havia alterado, pois nunca trabalhei com VB e era o único disponível para otimizar o relatório.

Logo vai chegar um que não gosta desse tipo de tópico e não consegue ficar indiferente… :roll:

Já aconteceu sim, mas não conto, acha morro de vergonha rsrs… :oops:

[quote=Anime]Logo vai chegar um que não gosta desse tipo de tópico e não consegue ficar indiferente… :roll:

Já aconteceu sim, mas não conto, acha morro de vergonha rsrs… :oops: [/quote]

Um dia você conta… :smiley: Mas já conseguiu me deixar curioso!

Interessante… 111 visualizações, mas apenas 3 casos e meio… :smiley:

Dá a impressão de que tem mais gente querendo ver as bizarrices dos outros do que contar as próprias.

Não os censuro! Mesmo assim é possível que apareçam mais algumas interessantes.

Mas a do saoj é a melhor até agora. Difícil de superar!

:lol:

[quote=almircampos]Interessante… 111 visualizações, mas apenas 3 casos e meio… :smiley:
Dá a impressão de que tem mais gente querendo ver as bizarrices dos outros do que contar as próprias.
[/quote]

Ta todo mundo com medo de confessar seus ‘podres’ :smiley: :smiley: :smiley:

[quote=raf4ever][quote=almircampos]Interessante… 111 visualizações, mas apenas 3 casos e meio… :smiley:
Dá a impressão de que tem mais gente querendo ver as bizarrices dos outros do que contar as próprias.
[/quote]

Ta todo mundo com medo de confessar seus ‘podres’ :smiley: :smiley: :smiley: [/quote]

Eu diria eh que o povo nem tem desconfia que fez alguma bizarrice. :slight_smile:

//Daniel

bom deve ser besta esse mas já comentei codigo que acho que n deveria, pois por causa dele meu relatorio n passava e assim que fiz isso funfou rs, pois sempre caia nele e fiz isso… nhaaaaa idiota!

Uma presepada minha foi uma vez que montei o ambiente de desenvolvimento na máquina do funcionário novo,
e ao gerar o EAR na máquina dele via ant nunca funcionava algumas telas, sendo que na minha máquina com ambiente idêntico funcionava perfeitamente.

Moral da história: Perdi 2 dias inteiro testando, procurando diferenças nos ear gerados, instalando o ambiente novamente, até achar uma configuração
do ant dentro do eclipse que estava setada para java 1.5 sendo que era para ser 1.4. Não sei se foi o cara que alterou no eclipse, e não comentou nada ou se alguma mágica aconteceu e a opção default da jvm voltou para 1.5, mas essa brincadeira deu trabalho para achar, fora o tempo perdido com algo tão babaca.

[quote=windsofhell][quote=raf4ever][quote=almircampos]Interessante… 111 visualizações, mas apenas 3 casos e meio… :smiley:
Dá a impressão de que tem mais gente querendo ver as bizarrices dos outros do que contar as próprias.
[/quote]

Ta todo mundo com medo de confessar seus ‘podres’ :smiley: :smiley: :smiley: [/quote]

Eu diria eh que o povo nem tem desconfia que fez alguma bizarrice. :slight_smile:

//Daniel[/quote]
++

Acho que é bem por ai mesmo.
Como diria o Zagalo: Em time que tá ganhando não se mexe.
Isso acaba dificultando o estudo aprofundado do código.

Meu podre (por ir contra o fluxo) é ainda acreditar que Flash e Flex vão continuar por muito tempo.
Nesse ponto, eu sou totalmente a favor dos plugins como flash, silverlight, ou mesmo o java porque independentemente de navegador sei que qualquer código que eu colocar funcionaria em qualquer navegador independentemente de versão.
Me desanima imaginar o problema que vai ser se der na telha da microsoft querer mudar alguma tag ou nome de atributo de HTML ou CSS ou método javaScript no IE11.

Outro podre…
Eu acho Hibernate uma merda.

Já escrevi uma rotina de criptografia (tosca diga-se de passagem) na unha… daquelas que fazem o hex do asc somando alguma coisa…
Isso na década de 90 quando ainda programava em visual basic 4 ou 5… rs rs rs rs

Uma vez, em 2009, não lembro por qual motivo, um método só funcionava quando eu chamava ele pela segunda vez, na primeira ela lançava uma exceção.
Então eu fiz uma chamada para o mesmo método dentro do catch(Exception e) {} e no fim das coisas ficou “parecendo” certo.
Ainda era na faculdade e deu para apresentar de boa.
Ainda tenho esse projeto guardado e sempre que lembro me envergonho disso! Hhauishauishauih

Antes de aprender css e html eu usava vários & n b s p ; quando eu precisava dar muito espaço.

O saoj também. Quais os seus motivos?

Eu tenho alguns… O pior foi o último… Porém deixei um e-mail para quem daria manutenção com as desculpas e explicando o “Porque” de ter feito daquela forma…

Tínhamos uma política de desenv na empresa (algo nosso mesmo, todos nossos prazos iam contando com isso) que não haveria SQL puro dentro da aplicação, só em ÚLTIMO CASO MESMOOOO…

Em mais de 2 anos de empresa, sempre havia conseguido montar a lógica dos relatórios em HQL ou via Objetos. Quando migrei de meu último projeto para o qual estou agora, recebi a tarefa de montar um relatório em 1 dia, justo no meu último dia…

Que miséria cara, acho que é TOP 3 dos Selects mais bizarros que já ví na minha vida… eram quase 350 linhas de SQL com joins de todos os sabores e formatos… Já viu né ??? Estava sendo pressionado e tinha que fazer até o final do dia… Não contei conversa, botei o bicho do jeito que estava e escrevi o e-mail grandemente envergonhado…

Pelo menos fui “perdoado” pela equipe… Por ironia do destino estou voltando para esse projeto e fiquei sabendo que ninguém mexeu no monstro… Ou seja, estou tendo a chance de me redimir… :stuck_out_tongue:

Abs []

[quote=adriano_si]Eu tenho alguns… O pior foi o último… Porém deixei um e-mail para quem daria manutenção com as desculpas e explicando o “Porque” de ter feito daquela forma…

Tínhamos uma política de desenv na empresa (algo nosso mesmo, todos nossos prazos iam contando com isso) que não haveria SQL puro dentro da aplicação, só em ÚLTIMO CASO MESMOOOO…

Em mais de 2 anos de empresa, sempre havia conseguido montar a lógica dos relatórios em HQL ou via Objetos. Quando migrei de meu último projeto para o qual estou agora, recebi a tarefa de montar um relatório em 1 dia, justo no meu último dia…

Que miséria cara, acho que é TOP 3 dos Selects mais bizarros que já ví na minha vida… eram quase 350 linhas de SQL com joins de todos os sabores e formatos… Já viu né ??? Estava sendo pressionado e tinha que fazer até o final do dia… Não contei conversa, botei o bicho do jeito que estava e escrevi o e-mail grandemente envergonhado…

Pelo menos fui “perdoado” pela equipe… Por ironia do destino estou voltando para esse projeto e fiquei sabendo que ninguém mexeu no monstro… Ou seja, estou tendo a chance de me redimir… :stuck_out_tongue:

Abs [][/quote]

Cara, aconteceu algo parecido comigo, mas em menor escala, embora não seja uma bizarrice tão de primeira qualidade como a que você relatou. :lol:

No meu caso, peguei um sistema da própria empresa no qual várias pessoas haviam trabalhado, inclusive eu. Então cheguei num trecho de código com uns ifs aninhados e umas condições com “and” e “or” combinados em cada if. Apenas no meu pensamento fiz comentários usando o jargão técnico tão disseminado na nossa área: “P… que pariu, assim é f…, como os caras fazem uma m… dessa!?”. Bem, o resultado é que ao final descobri o autor do programa: eu mesmo, meses atrás, numa situação de pressão para a entrega. Pior: havia um e-mail meu sobre o sistema e um dos tópicos era dizendo que “alguns trechos deveriam ser revistos imediatamente após a entrega” pois estavam muito “complicados”, embora funcionassem. :oops:

Acho que é a Lei Universal do Retorno…

Tive que implementar uma custumizacao de uma ric:hcomboBox para pesquisa e de um oprderingList, so que o maldito nao carregava os scripts do componente na pagina a grandiosa solução foi esta abixa,criei os compentes no meu template default pra forcar o maldito a carregar os scripts vejam ki massa?


			<!--
	 ***************** WARNING - CAUTION - RADIOATIVE -TOXIC*****************
	Parece ridiculo mas não é(ou será que é????)!!!
	A combo abaixo é necessaria , pq sem ela o maldito Richfaces nao carrega os Scripts 
	de combobox nativos da propria biblioteca richFaces,incrivel ele nao sabe que precisa do seus proprios scripts, ki burro, 
	sendo assim fica impossivel sobrescrever os metodos da biblioteca que sao utilizados nas combos de produtos, reagentes entre 
	outras combos, mesmo problema com orderingList.
	FAVOR JAMAIS REMOVER ESTA COMBO DAKI,PENSE NELA COMO UM DOS PILARES DO SISTEMA ,
	SE REMOVER MTAS COISAS PODEM DESABAR!!
	ISTO PODE SER FATAL PARA O SISTEMA!!!!!!!!!!!	
	-->
			<rich:comboBox rendered="false" id="inutilsCombo">
				<f:selectItem itemLabel="a" itemValue="b" id="inutilsItem" />
			</rich:comboBox>
			
			<rich:orderingList value="" var="I" id="inutilsTags" rendered="false" />
			

			<!-- *****************FIM DA ZIKA ***************** -->

[quote=lgweb]Tive que implementar uma custumizacao de uma ric:hcomboBox para pesquisa e de um oprderingList, so que o maldito nao carregava os scripts do componente na pagina a grandiosa solução foi esta abixa,criei os compentes no meu template default pra forcar o maldito a carregar os scripts vejam ki massa?

[code]

		<!--
 ***************** WARNING - CAUTION - RADIOATIVE -TOXIC*****************
Parece ridiculo mas não é(ou será que é????)!!!
A combo abaixo é necessaria , pq sem ela o maldito Richfaces nao carrega os Scripts 
de combobox nativos da propria biblioteca richFaces,incrivel ele nao sabe que precisa do seus proprios scripts, ki burro, 
sendo assim fica impossivel sobrescrever os metodos da biblioteca que sao utilizados nas combos de produtos, reagentes entre 
outras combos, mesmo problema com orderingList.
FAVOR JAMAIS REMOVER ESTA COMBO DAKI,PENSE NELA COMO UM DOS PILARES DO SISTEMA ,
SE REMOVER MTAS COISAS PODEM DESABAR!!
ISTO PODE SER FATAL PARA O SISTEMA!!!!!!!!!!!	
-->
		<rich:comboBox rendered="false" id="inutilsCombo">
			<f:selectItem itemLabel="a" itemValue="b" id="inutilsItem" />
		</rich:comboBox>
		
		<rich:orderingList value="" var="I" id="inutilsTags" rendered="false" />
		

		<!-- *****************FIM DA ZIKA ***************** -->

[/code][/quote]

Como diria um amigo meu (infelizmente já falecido)…

Se for para fazer uma gambiarra, que faça consciente e deixe bem documentada!