Skip to content

Instantly share code, notes, and snippets.

def with_tx(conn)
case conn.transaction_status
when PQTRANS_IDLE, PQTRANS_ACTIVE
conn.transaction do |conn|
yield conn
end
when PQTRANS_INTRANS
name = "savepoint_" + SecureRandom::alphanumeric
begin
conn.exec("SAVEPOINT #{name}")
@edas
edas / series.md
Last active March 22, 2020 19:40 — forked from twidi/series.md
series a voir

Note : Je cherche d'abord des séries où l'intrigue principale sur l'ensemble de la saison prime sur l'intrigue de chaque épisode.

Je suis plutôt bon public pour l'espionnage, et les intrigues politiques ou mafieuse, le légal, éventuellement la SF, mais plutôt mauvais public pour l'horreur, les choses trop noires ou qui psychologiquement me mettent en dépression (genre Black Miror).

Si j'aime je mets parfois un +, ++ ou +++. Si j'ai suivi mais mitigé j'ai ~ (en général je ne suis pas allé loin dans les saisons). Si ça ne colle vraiment pas je raye.

N'hésitez pas à suggérer ce qui risque de m'intéresser ou pas (éventuellement en proposant des ajouts)

  • 24 (~, et encore, ça se répète et ça fatigue dès les saisons 2 et 3, pas vu plus loin)
### Keybase proof
I hereby claim:
* I am edas on github.
* I am edas (https://keybase.io/edas) on keybase.
* I have a public key whose fingerprint is 41A9 03E5 BA9B F60C 30CA 77BC A895 6EE4 F3EF EE38
To claim this, I am signing this object:
## Avant le train, le bus
Je vais prendre le métro ou le train. J'ouvre mon lecteur rss sur martphone, puis les lecteur d'actualité. J'empile tout ce qui pourrait m'intéresser. Mon besoin est que l'app télécharge immédiatement le corps de texte de tout ce que j'ajoute, quitte à envoyer les ajouts en ligne plus tard, et ne télécharger les images ou documents liés que dans un second temps si le téléphone est toujours connecté à la 3G à se moment là.
Ensuite j'ouvre l'app pour y faire une synchronisation. C'est à la fois pour récupérer (et télécharger) les liens empilés ailleurs (desktop ?) qui ne l'auraient pas encore été, mais aussi pour m'assurer qu'il télécharge bien ce que je viens de lui demander.
Dans l'idéal j'ai besoin d'un indicateur pour me dire où l'app en est des téléchargements, pour pouvoir savoir combien de liens restent à télécharger, estimer si j'attends avant de déconnecter le téléphone.
Besoin :
@edas
edas / keybase.md
Created February 12, 2015 17:12
keybase.md

Keybase proof

I hereby claim:

  • I am edas on github.
  • I am edas (https://keybase.io/edas) on keybase.
  • I have a public key whose fingerprint is 1C09 E323 A9F4 8600 57B0 5455 378B 2531 47EC 2D00

To claim this, I am signing this object:

30ke en activité de service purs
- 20% frais divers
- 20% en matériel
18Ke résultats positifs bruts
- 22% en impots et taxes
Reste 14Ke nets après impôts (y compris IR)
C'est 1150 € nets par mois après IR. Sur lesquels il n'y a effectivement pas de prestations et assurances contrairement aux salariés, mais ça permet de vivre mieux qu'une partie importante de la population.
@edas
edas / gist:5125713
Last active December 14, 2015 17:59
Recherche :
* Sans ventillateur
* Supporte un disque dur (préférablement 3.5")
* Décode des vidéos 1080p sans problème
* WIFI N
* LAN Gb/s
* USB 3.0
* HDMI
* 1 Go de RAM minimum (2 Go ou + préféré)

Bonnes pratiques pour construire son API

Il est temps de construire une API (si vous n'en êtes pas là, relisez le début de la phrase : Il est temps de construire une API).

Le problème c'est qu'une fois publiée, l'API est utilisée. Ce que vous construisez est là pour longtemps. Quelles sont les retours d'expériences et bonnes pratiques pour ne pas se prendre les pieds dans le tapis ?

Vous avez certainement déjà entendu parler de REST mais les choses sont plus complexes que ça. Comment gérer les évolutions et les versions de l'API ? les formats en entrée et en sortie ? les variations et paramètres d'une même ressources ? les relations entre ressources ? la sécurité ? l'authentification ? la gestion des erreurs ? la pagination ? l'i18n et l10n ?

Plus généralement, vous objectifs principaux sont de définir une API simple et basique (si vous pensez avoir d'autres objectifs relisez le début de la phrase).

@edas
edas / gist:4952882
Last active December 13, 2015 18:08

Message d'erreur de composer après un php composer.phar install :

The contents of https://packagist.org/p/providers-latest.json do not match its signature, this is most likely due to a temporary glitch but could indicate a man-in-the-middle attack. Try running composer again and please report it if it still persists.

Comprendre : La signature ne correspond pas à ce qui est téléchargé. Peut être que ce que tu télécharges a été modifié, et en tout cas la sécurité n'est pas assurée MAIS composer décide de quand même continuer l'installation, installer les paquets téléchargés et éventuellement les mettre à jour avec la version en ligne non sûre.

Bien entendu il n'y a pas de commande pour revenir en arrière si jamais tu décides qu'installer des paquets avec une mauvaise signature pouvait ne pas être une bonne idée.

Seule sécurité : "Oh, mais si la brèche se reproduit trop souvent il faudra penser à prévenir hein..."