Skip to content

Instantly share code, notes, and snippets.

@naveed-ahmad
naveed-ahmad / benchmark.rb
Created January 11, 2019 02:24
Array duplicates test
require 'benchmark/ips'
def find_one_using_group_by_select(array)
array.group_by{ |e| e }.detect { |k, v| k if v.size > 1 }&.first
end
def find_one_using_chunk_select(array)
array.sort.chunk{ |e| e }.detect { |e, chunk| chunk.size > 1 }&.first
end
@KokaKiwi
KokaKiwi / events.md
Last active June 18, 2024 19:24
[HOWTO] Gérer d'autres évènements avec la MinilibX

Hello, voici un petit guide pour ceux qui aimeraient savoir comment gérer des évènements autres que "KeyRelease", "ButtonPress" (souris), "Expose" et "Loop".

En effet, la minilibx ne dispose que des fonctions permettant de gérer ces évènements. Or ils ne sont pas suffisants pour faire des programmes évolués (cool un Wolf3D qui nécessite que j'appuie plusieurs fois sur la touche HAUT pour avancer!)

En fait, il faut pour cela regarder dans le code de la MinilibX et voir comment sont gérés les évènements envoyés par le serveur X.

Si vous voulez en savoir plus, regardez le fichier "mlx_int_param_events.c" ;)

Mais revenons au sujet principal: Comment gérer d'autres évènements?

@jcasimir
jcasimir / friendly_urls.markdown
Created September 11, 2011 15:48
Friendly URLs in Rails

Friendly URLs

By default, Rails applications build URLs based on the primary key -- the id column from the database. Imagine we have a Person model and associated controller. We have a person record for Bob Martin that has id number 6. The URL for his show page would be:

/people/6

But, for aesthetic or SEO purposes, we want Bob's name in the URL. The last segment, the 6 here, is called the "slug". Let's look at a few ways to implement better slugs.