Paginating Ruby on Rails apps with Pagy

15 views
Skip to first unread message

Tiago Franco

unread,
May 16, 2018, 12:53:40 PM5/16/18
to ruby << portuguese
Gostei desta gema e acho que vale a pena partilhar: https://www.imaginarycloud.com/blog/

Tiago Fernandes

unread,
May 16, 2018, 5:47:13 PM5/16/18
to rub...@googlegroups.com
Viva.


Estive a ler o post sobre a gem Pagy, parece-me bem! Vou testar numa pequena aplicação, a gem ainda está no inicio do desenvolvimento, mas justifica o "test-drive" pela eficiência.


Obrigado pela partilha,

Tiago Fernandes



On 16 May 2018, at 17:53, Tiago Franco <gama....@gmail.com> wrote:

Gostei desta gema e acho que vale a pena partilhar: https://www.imaginarycloud.com/blog/

--
--
You received this message because you are subscribed to the Google Groups "ruby << portuguese" group.
To post to this group, send email to rub...@googlegroups.com
To unsubscribe from this group, send email to ruby-pt-u...@googlegroups.com
For more options, visit this group at http://groups-beta.google.com/group/ruby-pt , or it's site : http://www.ruby-pt.org
---
Recebeu esta mensagem porque subscreveu ao grupo "ruby << portuguese" do Grupos do Google.
Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie um email para ruby-pt+u...@googlegroups.com.
Para ver este debate na Web, visite https://groups.google.com/d/msgid/ruby-pt/1ca4c265-60f9-4696-8684-6cc131278073%40googlegroups.com.
Para mais opções, visite https://groups.google.com/d/optout.

Ivo Jesus

unread,
May 16, 2018, 6:12:47 PM5/16/18
to rub...@googlegroups.com

Tiago, boa onda.

 

Sim, o mundo Rails é agora um bocado mais triste que era à uns 4 anos atrás, o hype desapareceu, o pessoal parece “infectado” com a mania das SPAs mesmo sem precisarem delas (sejamos honestos, por mais giro que seja, uma boa percentagem das apps são mais fáceis de criar, manter e até mesmo escalar quando são Server-Side Rendered – e não estou a falar de renderizar React no server, estou a falar de plain-old rails) e parece que o mundo ruby virou “aquela cena que o pessoal dos 30 aos 40 curte fazer”.

 

Bom, à parte disso, o Pagy parece-me boa onda, mas mesmo olhando para os charts que mostras no artigo, deixa-me ser um bocadinho mais séptico…

OK, usa menos memória, ok aloca menos objectos (muito menos mesmo) e melhor, parece usar aquela estratégia do “the simplest thing that could work” mas (e sem o mas isto não tinha piada) qual o ganho real disto?

 

Ok, menos memória.. mas quanto menos? Numa app rails de 200Mb, isto vai poupar-me quanto em concreto? Não consegui perceber a  escala.

Ok, menos objectos o que pode significar menos GC ou pelo menos GC mais rápido… mas quanto mais? É noticeable?

 

Confesso que se for marginal, não sei se arrisco largar algo com uma adopção grande.

Prefiro não usar a cena mais “ninja” e usar a cena mais documentada / mais usada / mais “respondida” no S.O.

 

Agora, se forem ganhos decentes, ok, então bora a isso.

 

PS: E sim, quando andamos na batalha pra optimizar uma app, cada cena conta, mesmo que seja ínfima – e eu ando agora a fazer exactamente isso e por vezes “dou a volta ao mundo” para conseguir poupar 10ms por request…

Tiago Franco

unread,
May 17, 2018, 4:13:22 AM5/17/18
to rub...@googlegroups.com
Viva Ivo.

Concordo contigo. Os ganhos podiam ser mais objectivos, mas acho que isso só vai acontecer quando usarmos um caso real em vez da app de exemplo que o autor fez. Há ganhos, mas qual é o impacto real numa app know one knows yet.

Pela minha experiência suspeito que se vai notar. Vamos ver se consigo fazer um artigo de follow up com mais detalhes.

Ivo Jesus

unread,
May 17, 2018, 4:20:50 AM5/17/18
to rub...@googlegroups.com
Ya, please do.

Dado que também ando na senda de optimizar uma app, vou hoje falar com a equipa para ver se aplicamos isto também - a ver o que obtemos da experiência.
Entretanto, aceito sugestões de como tirar métricas a isto… thx!

Ivo.
signature.asc

Tiago Franco

unread,
May 17, 2018, 4:21:39 AM5/17/18
to rub...@googlegroups.com
Vê a app de demo que tenho no fim do arquivo. O código de benchmark é gerado on the fly.
--
--
You received this message because you are subscribed to the Google Groups "ruby << portuguese" group.
To post to this group, send email to rub...@googlegroups.com
To unsubscribe from this group, send email to ruby-pt-u...@googlegroups.com
For more options, visit this group at http://groups-beta.google.com/group/ruby-pt , or it's site : http://www.ruby-pt.org
---
Recebeu esta mensagem porque está inscrito no grupo "ruby << portuguese" dos Grupos do Google.


Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie um email para ruby-pt+u...@googlegroups.com.

Tiago Franco

unread,
May 17, 2018, 4:22:07 AM5/17/18
to Tiago Franco, rub...@googlegroups.com
Já agora tira dados. Eu posso usar? ou então fazes um guest post :p

Ivo Jesus

unread,
May 17, 2018, 4:25:31 AM5/17/18
to rub...@googlegroups.com, Tiago Franco
Tiro dados, tranquilo.
Aliás, é a única forma de validar que o que quer que a gente altere fez efeito.

Quanto a post ou não, a gente alinha isso. Se não for eu a fazer o tal guest post, fazes tu na boa. 👌🏻

signature.asc

Tiago Franco

unread,
May 17, 2018, 4:27:14 AM5/17/18
to Ivo Jesus, rub...@googlegroups.com
deal. Boa sorte :)

Joao Nelas

unread,
May 17, 2018, 5:28:29 AM5/17/18
to rub...@googlegroups.com
2018-05-16 23:12 GMT+01:00 Ivo Jesus <ivo....@gmail.com>:

Sim, o mundo Rails é agora um bocado mais triste que era à uns 4 anos atrás, o hype desapareceu, o pessoal parece “infectado” com a mania das SPAs mesmo sem precisarem delas (sejamos honestos, por mais giro que seja, uma boa percentagem das apps são mais fáceis de criar, manter e até mesmo escalar quando são Server-Side Rendered – e não estou a falar de renderizar React no server, estou a falar de plain-old rails) e parece que o mundo ruby virou “aquela cena que o pessoal dos 30 aos 40 curte fazer”.



​Não posso deixar de sorrir ao ler isto.

É uma das inevitabilidades da nossa profissão que as ondas vêm e passam, e fica o que na verdade dá provas de conseguir resultados. Mas sempre já sem aquele cheiro a novo que atrai as pessoas e torna tudo mais excitante.​
 

​Aconteceu com o C, com o Java, está a acontecer com o Ruby, qualquer dia será a vez do JS.​

Não retira capacidades às tecnologias mais antigas, mas muda bastante o ambiente à volta delas. Se é alguma coisa que te atrai creio que não tens outra hipótese do que ires mudando o teu foco.

um abraço do ppl com mais de 40 ;)
Jn

Reply all
Reply to author
Forward
0 new messages