JavaFree.org | RubyOnBr.org
Índice Lero Lero

E você esta pronto para isso tudo ?

Acompanhar E você esta pronto para isso tudo ? 22 posts, 5 participantes

Eu2 Carlos Eduardo 266 posts

Pessoal estamos ai já bem perto de 2007, esse ano aprendemos o que se ganha e o que se perde com Ruby on Rails, estamos vendo grandes crescimentos na nossa comunidade, creio que temos que preparar o alicerce para que nossa nova morada de desenvolvimento Ror seja uma morada sempre produtiva e sempre de sucesso, como alguns amigos aqui do fórum já citou, rails tende a tomar um Rumo mais para o lado de aplicações ASP aqui no Brasil(E eu não dúvido), ou seja aplicações especificas como, intranets, sistemas, módulos especificos/legados, até porque após esse booom que as empresas e hosts começarão a vender hospedagens decentes com suporte a mongrel, lighttpd/fastcgi e dar um valor real para nóis.


Hoje e amanhã temos que estar preparados para tudo isso, até porque o modo de desenvolvimento vai mudar e MUITO, a consequência de tudo isso é uma enxurrada de treinamentos, palestras e cases totalmente Brasileiros.


E você esta pronto para isso tudo ???

 
Avatar TaQ 188 posts

Deixa o boi bravo vir que a gente pega ele pelos chifres. ;-)

 
Avatar Ronie Uliana 891 posts

- Movido de “Perguntas e Repostas” para “Lero-Lero”, já que, apesar de relacionado com Ruby e Rails, está mais pra off-topic – :)

 
Avatar TaQ 188 posts

E eu ainda fui falar de boi … ;-)

 
Avatar Ronie Uliana 891 posts

huahuahuahuahua!!!

Ei, pessoal, não fiquem cabreiros pq movi o tópico. É só pra organizar :) É um tópico válido como qualquer outro.

Como zelador e jardineiro do RubyOnBr minha função é deixar a grama verdinha e a cerca-viva aparadinha ;)


Acho que a próxima coisa a vir por aí são empresas de pequeno e talvez médio porte adotando, e possivelmente treinamentos.

Imagino se seria uma boa alguma empresa grande “adotar” o ruby… será que a coisa alavancaria mais? A 37 signals já cuida do Rails… (“certificação Rails”? brrr.. calafrios)

 
Ceccbaaff99be20a857e00767f70b481 Proteu Alceb... 154 posts

Ainda bem que vc falou Ronie, eu fiquei meio tímido pra falar ;_;
ahehauiheuiaheuihe
Empresa de treinamento é coisa válida sim. Alguém quer montar uma?
=)

Bom, editando rapidin o post, vou colocar uim link de uma discussão recente no guj

http://www.guj.com.br/posts/list/43781.java

Lá dá pra ter uma idéia se estamos prontos ou não pra isso =) hehe

t+

 
Avatar Ronie Uliana 891 posts

Tinha visto esse tópico um tempo atrás… mas não estava acompanhando. Engraçado que vai do flame ao bom senso em poucos posts. Se bem que flame e bom senso são difíceis de distinguir em boa parte dos casos.

Mas existe a questão de performance que o pessoal sempre pega, não sei se com ou sem razão. Eu achei um link muito legal sobre performance (já postei em outro tópico, mas vai aqui de novo). Se vc ler ele inteiro, vai perceber que a arquitura de servidores inicial tentava ser “de alta performance”, e quando eles simplificaram a coisa, a performance melhorou.

Também conseguiram várias melhorias atualizando software (um dos que mais deu aumento de performance foi atualização de kernel do Linux :p) O que indica que, em termos de desempenho, o Ruby está em franca evolução.

Acho que valia um post “fixo” só pra discutir performance :) Meu medo é só gerar flame com isso :D


Afora performance, e esquecendo sintaxe, gosto muito do Ruby por causa dos Closures e dos Bindings. São coisas bobas, mas quebram um galhão. Principalmente qdo se está tentando fazer “DSL’s”(Domain Specific Languages)


Proteu, não sabia que vc mexia com essas contas doidas… Que vc achou útil no Ruby pra isso, afinal? (Vi no post do GUJ, mas queria mais detalhes, q libs vc está usando, como, etc :)

 
Avatar Ronie Uliana 891 posts

só retificando:

Afora performance, e esquecendo sintaxe, gosto muito do Ruby por causa dos Closures e dos Bindings. São coisas bobas, mas quebram um galhão.

“coisa bobas” como em “o conceito não é complicado”. Lógico que apesar do conceito ser “simples”, implementar isso em uma linguagem dá trabalho.

 
Ceccbaaff99be20a857e00767f70b481 Proteu Alceb... 154 posts

Eu gosto de doideras _ vou ressaltar algumas =)

Trabalhei com simulação de difusão de Petróleo no mar , Otimização Combinatorial
, transcodificadores de Imagem (JPEG-PGM) e Vídeo (Padrão H.264 para Televisão digital) e algumas tranqueiras meramente teóricas

Em ruby eu não usei lib alguma, era calculo pra fazer no braço mesmo, fazendo um balé louco de indices para conseguir ganho na restauração da imagem. O que ressaltei no post do GUJ é que o algoritmo em ruby fica mais fácil de ler, e os algoritmos para esses tipos de problemas não são facéis de enxergar com java. Às vezes a verbosidade mata. Nos outros projetos usei Java Swing + JAI (Java Advanced Imaging) em alguns casos, C ANSI em outros.

Fazia mestrado em Computação Quântica (Matemática Aplicada) na unicamp, mas saí por falta de grana e voltei a trabalhar com J2EE e outras coisas do além =)

 
Avatar Ronie Uliana 891 posts

Caçapava do Sul!!! :| Insanidade + 10

Me senti até bem agora. :D Dia q eu tiver uma “bomba matemática” vou apontar ela direto pra vc.

É bom saber disso, me deu idéia para um tópico.

 
Ceccbaaff99be20a857e00767f70b481 Proteu Alceb... 154 posts

Dando mais detalhes da implementação, uma das coisas que me deixou feliz é que arrays em ruby são circulares, além de ter o tipo range nativo na linguagem, tipo x = 1..50 hehehe, muito util pra definir intervalos e fazer conta com eles (valeu a dica no tutorial, TaQ :D)

Com esse conceito de vetores ciclicos, posso considerar uma imagem como uma superfície de uma esfera ao invés de ser uma simples matriz. Assim eu expando o número de vizinhanças interpixel de 8 para 17 pixels. Assim dá pra aproveitar de uma forma espacial as similaridades da imagem, que no meu caso o que interessa é a redundância. Imagens são estruturas tipicamente redudantes, não é a toa que temos uma diferença grande de tamanho entre um mapa de bits (imagens BMP) e o Padrão JPEG

_

 
Ceccbaaff99be20a857e00767f70b481 Proteu Alceb... 154 posts

heuheuehueue o pessoal se espanta com essas lombras, mas gosto disso, pena que não dá grana =/ ou se dá eu não sei como ganhar com ela.

Ruby abriu portas mesmo. Com essa coisa de DSL, fiquei com tesão de escrever uma DSL para Computadores Quanticos, como o QSL

mas tem que estudar muito e com o tempo escasso isso torna-se inviável…fora que nem ando mexendo muito com ruby, o trabalho está sugando meu tônus vital =/

 
Avatar Ronie Uliana 891 posts

Cara, estou levando muito a sério o negócio de DSL. Com Ruby fica muuuuuito simples.

Eu experimentei um tempo com Java, fazendo um compilador com o JavaCC e afins. Depois ia tentar com Byson em C, mas comecei com Java pq aprender compiladores e C ao mesmo tempo ia me deixar doido.

No fim, o trampo é tanto q não estava vendo o benefício. Foi mais ou menos nessa época q esbarrei com Ruby e Rails. Rails tem muito de DSL, me encantei e desisti da “pureza” de montar um compilador próprio pra DSL e passei a investir em DSLs que “expandem” a linguagem. Como Ruby tem uma sintaxe flexível e closures, meu mundo ficou bem mais plano ;)

Hoje, acredito sinceramente que pra DSL, interpretadores e compiladores próprios são uma péssima idéia. O negócio é uma linguagem que permita expansões. Mas isso é minha percepção pessoal.

 
Ceccbaaff99be20a857e00767f70b481 Proteu Alceb... 154 posts

JetBrains neles! hahahah!!

Uma DSL não é poderosa se nao tiver uma API extensa e usável. Por isso que seu pensamento de DSL como expansão é apropriada, a coisa ganha vida mais rapidamente.

 
Avatar Ronie Uliana 891 posts

Esbarrei nele tb. Mas na época não tinha nada pra brincar :|

Achei a idéia DUCA. Mas hoje, acho q é como vc disse: “com expansões, a coisa ganha vida mais rapidamente”. E meu interessse em DSL é para aumentar a produtividade, soluções que tomem tempo demais (com criar um interpretador próprio), ainda q tenham N benefícios, não servem para o cenário que me interessa ;)

 
Ceccbaaff99be20a857e00767f70b481 Proteu Alceb... 154 posts

Ronie, vi que você trabalha com computação evolutiva. Tem uma idéia muito boa que vi quando estava fazendo o algoritmo de difusão de petróleo usando teoria da percolação . Essa teoria também é aplicável em colônia de bactérias e algoritmos genéticos / meméticos, e meu primeiro contato com ruby (final de 2002, acho) me fez pensar o seguinte:

Como ruby é uma linguagem altamente dinâmica, algumas operações de mutação que vemos em algoritmos genéticos (normalmente feitas com operadores de cruzamento supervisionados) poderiam ser feitas no próprio código, algo como o cruzamento de dois scripts ruby gerar um novo script como filho, e usa-lo em alto nível para avaliar a evolução da iteração inicial até a final, usando mixins ou herança simples mesmo (se puder havaer auto-cruzamento). Já pensou, você mesclar caracteristicas (atributos do gene) em alto nivel, com atributos e métodos? Seria um troço punk e interessante.

 
Avatar Ronie Uliana 891 posts

Aff… eu deveria ter sido mais claro. Meu negócio é “evolução de arquitetura” (architectural evolution), mas não gosto da palavra arquitetura nesse contexto, a idéia simplesmente é construir o sistema por evolução (usando TDD e Refactoring), ao invés de usando BDUF . Mais especificamente, minha área de interesse é pegar um sistema funcionando e construído sem testes automatizados e conseguir enfiar mais funcionalidades nele sem o barraco vir ao chão. No exato momento, estou trabalhando com evolução de banco de dados (schema evolution, mas o termo é mais para BDs OO).

No entanto, como disse, gosto de dar uma fuçada no underground, e teve um tempo que esbarrei com isso aqui: http://www.genetic-programming.org . Que é exatamente a idéia q você descreveu. Eles tinha conseguidos alguns resultados interessantes, com alguns algoritmos “redescobertos” pelo processo, inclusive alguns poucos inéditos mais eficientes que os conhecidos. Mas não entrei em detalhes para saber como funcionam.

Imagino que, com Ruby, dê pra fazer isso em um nível mais alto ;) Acho q nem precisa fazer Mixin ou Herança, dá pra redefinir o método na cara dura.

 
Avatar TaQ 188 posts

Olhem mais um puto da vida com Ruby (o Matz deve ter xingado a mãe dele):
http://www.javalobby.org/java/forums/t83355.html

 
Avatar Ronie Uliana 891 posts

Aff.. como o pessoal gosta de um flame. :| Acho que vou começar um flame xingando flames :D

Aff.. como o pessoal gosta de um flame. :| Acho que vou começar um flame xingando flames :DBom, IMHO, se o cara não sente falta e Ruby e está feliz com Java e Perl, ótimo pra ele. Eu, por exemplo, gosto de Java, de Ruby, sexo e chocolate, não necessariamente nessa ordem.

Aff.. como o pessoal gosta de um flame. :| Acho que vou começar um flame xingando flames :DBom, IMHO, se o cara não sente falta e Ruby e está feliz com Java e Perl, ótimo pra ele. Eu, por exemplo, gosto de Java, de Ruby, sexo e chocolate, não necessariamente nessa ordem.Aliás, acho que sexo é infinitamente melhor, mais rápido e mais divertido que Java ou Ruby, apesar de ter 5000 vezes mais vagas para Java na Catho do que para sexo. É óbvio que sexo ainda não está preparado para o ambiente “enterprise”, provavelmente pq o desempenho é muito ruim. São sempre 9 meses até o produto final fica pronto.

ah… meus sais…

 
Avatar Ronie Uliana 891 posts

Ainda no tópico “flame war”, isso aqui é divertido.

http://www.rubyinside.com/category/troll-of-the-month/

 
Ceccbaaff99be20a857e00767f70b481 Proteu Alceb... 154 posts

Aff.. como o pessoal gosta de um flame. :| Acho que vou começar um flame xingando flames :D

Meta-flamewar ? po, tudo agora é Meta pra lá, Meta pra cá, todo mundo brincando de elevar o nível da coisa heheheh

 
Avatar rockz 9 posts

Fugindo um pouco do assunto… Proteu pelo post parece que você já trabalho com imagens usando Ruby. Tu poderia me dar umas dicas com o que tu usou para fazer processamento de imagens? Pois eu tentei uma vez e não obtive bom desempenho.