Skip to content

Instantly share code, notes, and snippets.

View fidelisrafael's full-sized avatar
🏠
Working from home

Rafael Fidelis fidelisrafael

🏠
Working from home
  • https://web.archive.org/web/20221024062310/http://www.fidelis.work/
  • Brasil
  • 16:29 (UTC -03:00)
View GitHub Profile
<?php
class Person {
public $name , $age , $doc_num;
protected $cpf;
public function __set($property, $value) {
return $this->setOrGetIfPropertyExists($property, $value);
@fidelisrafael
fidelisrafael / routes.php
Last active December 23, 2015 06:18
Slim Router Helper Example (from slim-mvc https://github.com/fidelisrafael/slim-mvc)
<?php
// Desafios
Router\Helper::map("challenges", array(
"((/challenge)?/random/?)" => array("get" => "random") ,
"/challenge/:slug/?" => array("get" => "challenge") ,
"/challenges/?" => array("get" => "index") ,
"/winners/?" => array("get" => "winners") ,
));
@fidelisrafael
fidelisrafael / event_delegation.html
Last active December 23, 2015 07:09
Event delegation in Javascript. (w/ simple CSS3 animation)
<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>Teste Event Delegation</title>
<style>
/* Document style */
body * {
box-sizing : border-box;
}
@fidelisrafael
fidelisrafael / audio.md
Created September 18, 2013 03:38
HTML5/CSS3/Javascripts learning , notes , files, etc

HTML 5 Audio API


Reprodução de aúdio nativo no navegador, sem a necessidades de como plugins como o Flash.

Os 5 atributos da tag audio são :

1 - src - uma URL válida especificando a origem do conteudo

@fidelisrafael
fidelisrafael / npm_developers.md
Last active December 23, 2015 11:19
Tradução [resumida] da página : https://npmjs.org/doc/developers.html

NPM

Node Package Manager

O que é um pacote ?

Um pacote é :

a) uma pasta contendo um programa descrito por um arquivo package.json b) um tarball compactado contendo (a) c) uma URL que resolva para (b)

@fidelisrafael
fidelisrafael / hstore_simple_pt-br.md
Last active December 24, 2015 09:19
hstore postgreSQL

Hstore

É uma extensão quer permite a criação e utilização de colunas "key=>value" no postgreSQL.É perfeito para objetos que precisam de muitos dados variaveis, como um Produto(por exemplo), que pode ter atributos(dados=data) como cor, tamanho, numero de páginas(se for um livro,revista,etc), tamanho, peso, e centenas de outros atributos.

Um valor hstore é parecido com um hashtable serializado. A grande vantagem é que podemos fazer queries usando esses valores/keys!

No rails, podemos usar hstore como um hash. Uma vez guardado você pode consultar as chaves e valores!
Se você já usou alguma vez uma coluna serializada como hash, hstore se comporta parecido com isso. A principal diferença é perfomance, já que hstore está armazenando os pares e valores nativamente no Postgres , as consultas(queries) são executadas muito mais rápidas.
O Rails 4 suporta o tipo de coluna hstore, até então precisavamos usar uma [gem][_gem]

@fidelisrafael
fidelisrafael / ampersand_operator_ruby_pt-br.md
Created October 1, 2013 12:49
Operador `&` unário e binário em Ruby

O operador "&" em Ruby

Eu vou assumir que você já é familiarizado com o operador de duplos & comerciais em Ruby - O operador logico AND. Este post irá se focar e mtodos os usos do operador único &. & pode ser um pouco confuso porque ele tem significado diferente dependendo do contexto que é usado. Na verdade, ambas as operações unárias(&object) e o binárias (object & object) tem significados diferentes em Ruby. Para entender eles vão dar uma olhada nos usos do operador & no core do Ruby.

O & binário

No Ruby 1.9.3 existem 3 usos para o operador &amp;.

@fidelisrafael
fidelisrafael / hack.sh
Last active December 24, 2015 11:29 — forked from kulesa/hack.sh
#!/usr/bin/env sh
##
# This is script with usefull tips taken from:
# https://github.com/mathiasbynens/dotfiles/blob/master/.osx
#
# install it:
# curl -sL https://raw.github.com/gist/2108403/hack.sh | sh
#

Today, in Ruby, if I want to make a network request, I block

response = Net::HTTP.get("/post/1")

If I want to do multiple requests in parallel, I can use a thread per request

responses = ["/post/1", "/post/2"].map do |url|
@fidelisrafael
fidelisrafael / simple_benchmark.rb
Last active December 24, 2015 22:39
Simple benchmark (simple test from Rodrigo Alves : https://gist.github.com/rodrigoalvesvieira/6255267)
require 'benchmark'
Benchmark.bm(10) do |x|
x.report("Array#join") {
10000.times do
["'", ("a".."z").to_a.join("' , '"), "'"].join
end
}
x.report("String#<<") {
10000.times do