Horario en PHP: Operaciones con tipo datetime

¿Cómo se trabaja con días y horas en PHP?

Para ello realizamos un pequeño ejemplo creando una tabla con un horario con entradas cada 30 minutos.

El Resultado

Captura de pantalla 2017-02-21 a las 11.29.41

Dejo el código por aquí y queda pendiente explicarlo 😛

 

Juego de Concentración completo en HTML5 con PIXI.js 3

This post is an updated copy from the article of the great Emanuele Feronato’s bloghttp://www.emanueleferonato.com/2014/02/26/complete-html5-concentration-game-made-with-pixi-js/

If you are learning pixi.js then you know that in this moment there is version 3 (3.08 on 20th october of 2015), but from the resources of the official page  you get a link to a non updated article to introduce you in pixi.js, programming a concentration game.

What are the changes that you have to make to go to version 3 of pixi.js?

  • “DisplayObjectContainer” is “Container” now
  • “PIXI.AssetLoader” is “PIXI.loader”, don’t need to use new, look isn’t capitalized 😉
  • “requestAnimFrame” is “requestAnimationFrame”, because that was a pollyfill and now this is the standard way. Look at the documentation:
    https://developer.mozilla.org/en/docs/Web/API/Window/requestAnimationFrame
  • PIXI.Stage has been remove

Updated version of the source code, pixi.js v3:

Source code: concentration

I have refactored the code, using objects and inheritance, let’s see

Error: actualizaciones disponibles para otras cuentas, en el app store

Un error de la app store en OS X (Mountain Lion) que me ha dado algún que otro quebradero de cabeza es intentar actualizar XCode y unicamente obtener el mensaje:

“Actualizaciones disponibles para otras cuentas”


Había estado trasteando con mi cuenta de iCloud, y en un principio pensé que ese había sido la raiz del problema, pero no…

Omito todos los intentos que realicé para dar con la solución 😛

La “culpa” de este error en mi caso fue tener deshabilitado el Spotlight

Para habilitar Spotlight de nuevo hay que introducir en el terminal:

sudo mdutil -i -on

Para deshabilitarlo nuevamente:

sudo mdutil -i off

Disable spotlight indexing – Desconecta el indexador de spotlight

En Mac OS X existe el poderoso buscador Spotlight, que si no lo usamos puede estarnos robando ciclos de CPU, y si usamos discos externos FAT32 o NTFS nos estará robando mucho tiempo seguro.

Al grano, para desactivarlo, abre el terminal y escribe:

sudo mdutil -a -i off

(al comenzar con el comando sudo, se nos pedirá la contraseña de administrador)

Y si nos arrepentimos:

sudo mdutil -a -i on

Source: http://www.mikesel.info/disable-spotlight/

Mac + Teclado

Al principio el uso del teclado en el Mac no es muy intuitivo 😛 por lo que repasaremos como utilizar la barra de menús y el dock desde el teclado, así como la navegación con el teclado entre los botones de una ventana.

Primero hay que activar las dos siguientes opciones con esta combinación de teclas:
Ctrl + F1 (+ Fn)

Barra de menús
Ctrl + F2 (+ Fn)

Dock
Ctrl + F3 (+Fn)

Además, para poder utilizar el teclado en las ventanas de diálogo tenemos que activar la opción desde el panel de preferencias del teclado:

Captura de pantalla 2013-01-03 a las 22.52.13

Seleccionando “Todos los controles”

Ahora podremos navegar entre los botones de una ventana con el tabulador, seleccionando el botón iluminado con la barra espacio, y el botón con relleno con la tecla return/enter.

Captura de pantalla 2013-01-03 a las 22.54.03

Navegar entre las ventanas de una misma aplicación
⌘ + `
Se puede configurar en las “Preferencias del sistema” > “Teclado” > “Funciones rápidas de teclado” > “Menú teclado y texto”

Captura de pantalla 2013-01-05 a las 14.04.53

Referencias:
http://www.applesfera.com/os-x/como-navegar-entre-los-botones-de-una-aplicacion-utilizando-el-teclado
http://blog.k-tuin.com/2010/04/accede-al-dock-y-a-la-barra-de-menus-con-el-teclado/

JSON, What the f…? is the data format of the web

¿Qué es JSON?
Javascript Object Notation es una forma de almacenar e intercambiar datos, que es ligera comparado al formato XML.

Se suele usar JSON en lugar de XML cuando el flujo de datos es muy grande, y la fuente de datos es segura y no es necesario el procesamiento XSLT para la manipulación de datos.

“JSON is the data format of the web”/ “JSON es el formato de datos de la web”
Así comenzó el post del blog de Google anunciando el uso de JSON para su servicios de

JSON es un subconjunto de la notación literal de objetos:

Los datos se colocan en pares nombre/valor
Los datos van separados por comas
Las llaves delimitan los objetos
Los corchetes delimitan los arrays
Ejemplo:
var players = [
{“nombre”:”Pepe”, “numero”:”1″},
{“nombre”:”Roberto”, “numero”:”7″}
];
Un ejemplo de objeto javascript y no JSON:
var jugador = {
“nombre”:”Pepe”,
“numero”:”1″,
“jugar”: function(){
alert(“Pepe entra a jugar”);
}
};

¿Es necesario utilizar comillas para el identificador de la propiedad de un objeto? Para javascript le es indiferente, por lo que se emplea para utilizar nombres reservados por el lenguaje, o identificadores con caracteres no permitidos.

var jugador = {
nombre:”Pepe”,
numero:”1″,
jugar: function(){
alert(“Pepe entra a jugar”);
}
};

Un artículo muy interesante sobre JSON:
http://www.anieto2k.com/2009/07/06/todo-lo-que-siempre-quisiste-saber-sobre-json/

Javascript: Square Brackets vs Curly Brackets

Cuando estamos empezando a programar y sobre todo a leer código en javascript, es fundamental aclarar el uso de las llaves y los corchetes.
Square Bracket “[” , “]” Corchete
Curly Bracket “{” , “}” Llave
Square Bracket / Corchete / [ ]
En javascript se utilizan los corchetes para definir los valores de un array y para acceder a las propiedades de un objeto, o a la posición de un array.

Definir valores de un array:
var my_array = [1, “dos”, true];

Acceso a las propiedades de un objeto:
my_object[‘property’] = ‘Propiedad del objeto’;
equivalente a:
my_object.property = ‘Propiedad del objeto’;

Acceder a una posición de un array:
my_array[i] = ‘valor’;

Curly Bracket / Llave / { }
Las llaves se usan principalmente para delimitar los bloques de sentencias, pero además se utilizan para definir objetos.

Delimitar los bloques de sentencias:
{
sentencia 1;
sentencia 2;
.
.
.
sentencia n;
}

Definir objetos, delimitados por las llaves se colocaran las propiedades y sus parejas de valores:
var my_object = {name:”Pepe”, age:46, funny:true};

¿Es necesario utilizar comillas para el identificador de la propiedad de un objeto? Para javascript le es indiferente, por lo que se emplea para utilizar nombres reservados por el lenguaje, o identificadores con caracteres no permitidos.

var my_object={
“name”:”Pepe”,
“age”:46,
“funny”:true
};

Javascript: setInterval only run once / sólo se ejecuta una vez

setInterval expects a reference to a function. So if we do:

var clock = setInterval(functionName(), 1000);

We are executing the functionName function immediately and passing its return value to setInterval.

Correct form:

var clock = setInterval(function, 1000);

setInterval requiere como primer parámetro la función que ejecutará por referencia. Si utilizamos el nombre de la función con los paréntesis estaremos ejecutando la función, y pasando como parámetro a setInterval el valor devuelto por esta función o undefined

Mac: Captura de Pantalla

¿Cómo se hace la captura de pantalla en Mac? Aquello que en el PC bastaba con pulsar el botón “Impr Pant”/”Print Screen” (vale si, soy un switcher) y luego pegábamos con el portapapeles donde queríamos.

En Mac hay 3 opciones:

Shift + Comando + 3
Capturamos toda la pantalla.

Shift + Comando + 4
El cursor del ratón cambia a una cruz que nos permitirá seleccionar el “trozo” de pantalla que queremos copiar.

Shift + Comando + 4 + Espacio
Si pulsamos la tecla Espacio podremos seleccionar la ventana que queremos copiar, en lugar de un “trozo” de la pantalla.

Recordatorio:
Shift: es la tecla de la flechita que apunta hacia arriba, que sirve para escribir en mayúscula.

Comando: es la tecla “cmd” que aparece en los Mac, a los lados de la tecla/barra espacio.

Shift + Comando + 3, significará que debemos pulsar la tecla Shift y la tecla Comando a la vez. Manteniendo estas dos teclas pulsaremos la tecla correspondiente al número 3.

10 normas de ‘Netetiqueta’

Copio y pego de: http://www.elpais.com/articulo/internet/normas/Netetiqueta/elpeputec/20080110elpepunet_7/Tes

10 normas de ‘Netetiqueta’
La UNED publica una guía para participar en foros o enviar ‘mails’ sin quedar como un maleducado

Estimado colega
Trate a los demás como a usted le gustaría ser tratado. Participe siempre con educación. Las faltas de respeto repetidas pueden ser causa de expulsión del grupo.

Sin ofender
Piense antes de escribir y evite frases que puedan resultar ofensivas desde los puntos de vista de religión, raza, política o sexualidad. Recuerde que Internet es global y diferentes culturas tienen diferentes costumbres.

Use emoticones
Tenga en cuenta que en el lenguaje escrito no es posible dar entonación, por lo que frases escuetas pueden llevar a malas interpretaciones. Por ejemplo, si hablando empleásemos cierto tono de complicidad o ironía, podemos “imitarlo” utilizando emoticones.

Eres un …
Tenga paciencia siempre, sobre todo con los principiantes y los que cometen algún error, tarde o temprano lo podría cometer usted también. Las actitudes recriminatorias suelen ser mal recibidas, especialmente si se manifiestan en público. Siempre se acepta mejor y se hace más caso a una indicación expresada correctamente y en tono moderado

Indiferencia
Contra las ofensas o los intentos de provocación la medida más efectiva es la indiferencia. Los enfrentamientos personales no conducen a nada especialmente delante de otras personas a las que normalmente no les interesa y les causa mal efecto. En particular el sarcasmo o desprecio hacia otros a causa de errores ortográficos o gramaticales es poco ético, estos errores se deben generalmente al apresuramiento al escribir, en cualquier caso usted también podría cometer alguno.

Revisión
Cuando elabore un mensaje reléalo antes de enviarlo y pregúntese cual sería su reacción si lo recibiera. Cualquier tiempo invertido en hacer más clara nuestra comunicación en Internet es tiempo bien empleado.

Vurro, que se escribe sin h
Cuide las reglas de ortografía, especialmente en foros donde se habla en castellano. No está de más cuidar las tildes. De otra manera puede hacer el mensaje confuso.

NO GRITE
No abuse de las mayúsculas. En la Red se considera “gritar” (a nadie le gusta que le consideren un mal educado por hablar a voces) y además dificulta la lectura. Escribir todo el mensaje en mayúsculas lo hace extremadamente difícil de leer (aunque una pequeña parte del mensaje en mayúsculas podría servir para enfatizar un punto). TamPOcO eS cÓModO LeEr lOs meNsAjES dE eStE tIPo.

Ké pasa tronco
Evite el empleo de palabras de “argot”, o letras por sonidos (como “k” por “q”), o lenguaje grosero. Cuando quiera expresar una frase coloquial no totalmente correcta, ponerla entre comillas.

Bss
Evite el empleo de abreviaturas que no sean de uso normal.