Cuando HTML5 era más HTML5 que nunca…¡bucles for en CSS3…Saas!

¿Quieres novedades? ¿Te interesa el HTML5?

Cuando escribíamos nuestras hojas de estilos para separar…eso, nuestros estilos: colores, fuentes, anchos, altos, alineaciones….llegaron los @keyframes para además añadir movimiento a nuestro HTML…pero no se quedó ahí la cosa, es entonces cuando apareció el bucle for y las variables para hacerlo más bonito todavía:


  -(2..15).each do |i|
        -(1..i).each do |j|
$ri: 2em;
$c: cyan;
html, body { height: 100%; }
body {
  overflow: hidden;
  margin: 0;
  perspective: 10em;
  perspective-origin: 50% 0%;
  background: white;
  color: $c;
.scene {
  &, * {
    box-sizing: border-box;
    position: absolute;
    top: 50%; left: 50%;
    transform-style: preserve-3d;
  transform: translate(4em, 10em) rotateX(75deg) rotate(-22.5deg)
.assembly {
  @for $i from 1 to 15 {
    $ca: 360deg/($i + 1);
    $l: 2*$ri*(if($i != 1, tan($ca/2), 2));
    $rc: $ri/(if($i != 1, cos($ca/2), .5));
    &:nth-child(#{$i}) {
      transform: translate(0, -3.5*$i*$ri);
      animation: slide#{$i} 1s ease-in-out infinite;
      @at-root {
        @keyframes slide#{$i} {
          to { transform: translate($l, -3.5*$i*$ri); }
      .strip { background-size: $l 100%; }
      .roller {
        transform: rotateY($ca/2) translateZ($rc) rotateY(-$ca/2);
        animation: inherit;
        animation-name: roll#{$i};
        @at-root {
          @keyframes roll#{$i} {
            to {
              transform: rotateY(-$ca/2) 
                         translateZ($rc) rotateY(-$ca/2);
      .side {
        margin: –$ri (-$l/2);
        width: $l; height: 2*$ri;
        @for $j from 0 to $i + 1
          &:nth-child(#{$j + 1})
            transform: rotateY($j*$ca) 
                       if($i != 1, translateZ(-$ri), ());
.strip {
  margin: –$ri -1px;
  width: 120em; height: 2*$ri;
  border: solid .125em $c;
    linear-gradient(90deg, $c .125em, transparent 0);
  background-position: -1px 0;
.side {
  border: solid .125em $c;
  &:before, &:after {
    position: absolute;
    left: 0;
    width: inherit; height: .125em;
    background: $c;
    transform: rotateX(90deg);
    content: ”;
  &:before { top: -1px; }
  &:after { bottom: -1px; }

Para verlo en acción:

¡Que aproveche!

Publicado en HTML5, Javascript, Otros, website | Deja un comentario

R Programming language

After a mini-training at #codeSchool with #R, I conclude with a good feeling because of the abstraction level and the possibilities with statistics (Before, was pending algebra in my agenda. Now also, remember all the statistics I forgot….now, more and more, I need a good course from the university P2P about maths) and #BigData.

The possibility of being accessible from #python, for example, generates many possibilities. But, probably is not a good idea to work with it in the client (Batteries, and less powerful devices), but I really miss a JavaScript (JQuery) – R connection… ¿Or maybe already exists a good JS library for this?

I add some screenshots of R from the codeschool.

R1 R3 R2


Publicado en Backend, BigData, Opinión, Otros | Deja un comentario

Funny conversation about Bitcoin

During a normal day, just reading and sharing info about Bitcoin:

– Did you know about it?

– I know about bit coin, it is also used by people behind dangerous viruses…not possible to find them at all

(True and demonstrable conversation)

(I could write infinite smiles, but the servers of this platform will not have enough space in their hard disks)

Publicado en Otros | Deja un comentario

Git: Getting the commit number & removing files after add -A

Getting the commit number:

git rev-parse –short HEAD

git reset

Removing files after add -A

git reset <namefile>

(I know that this is easy for you, but I needed to write it here. My notebook is not accessible from Internet)

Publicado en GIT | Deja un comentario

Git: Saving your changes when a push is not possible and a pull is required

In the case:

git add -A

git commit

git push origin master

git reset –soft HEAD^ (Deleting commit)

git stash (Saving our changes in a stack)

git pull origin master

git stash pop (recovering the changes from the stack)

git commit

git push origin master


Publicado en GIT | Deja un comentario

Httrack agressive download, o como descargar una web completamente

httrack -c128 -%c20 -R40 -H0 -t -s0 -B


Publicado en Otros | Deja un comentario

Search string into all files into a folder recursively with python – Buscar una cadena dentro de todos los archivos de un directorio con python

¿Quieres buscar una cadena o string dentro de todos los archivos de tu directorio de forma recursiva con python? Esto te puede interesar:


(Cuidado con las identaciones, tienes que añadirlas)

(Be carefull with identatons, you have to add them.)


import os, fnmatch
def find_files(directory, pattern):
for root, dirs, files in os.walk(directory):
for basename in files:
if fnmatch.fnmatch(basename, pattern):
filename = os.path.join(root, basename)
yield filename
for filename in find_files(‘.’, ‘*.*’):

infile = open(filename,”r”)
text =
search = “MiCadena”
index = text.find(search)
if index != -1:
print filename

Publicado en python | Deja un comentario