Timing

Cuantas veces ha aparecido en alguna conversación o en un email esta palabra!.
Es una palabra que no tiene mucho problema en entender su significado para todas aquellas personas que tienen un conocimiento del inglés.

Pero qué pasa con las que no dominan el inglés?????

Su significado en inglés es el siguiente:

Timing is the spacing of events in time

Y trasladado a nuestro gremio:

Cuando alguien se refiere al “timing de un proyecto” quiere decir el tiempo de desarrollo o los tiempos que están planeados para el proyecto en cuestión.

Pues nada más, una palabrita más para nuestro diccionario.

SQL_BIG_SELECTS

Hace un tiempo desarrollamos una tienda online.

El caso es que hasta ahora había estado funcionando sin ningún problema ni error. Pero ayer nos llega un email del cliente dicièndonos que la tienda ha dejado de funcionar.

Sorprendidos accedemos a la tienda, y efectivamente cuando seleccionabas una categoría la web mostraba un error. El mensaje de error que salía en la página decía lo siguiente:

The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay

Cargo la base de datos en local y como en otras muchas ocasiones, funciona.

¡Pues nada, será alguna opción de configuración del servidor!, tras investigar por el maravilloso mundo de internet (con google a la cabeza por supuesto) y darle un poco a la cabeza encontramos la solución.

El problema viene porque la tienda ya tiene un volumen considerable de artículos (unos 2660) y de categorías, y en una de las consultas se hacen bastantes relaciones entre ellas.

Ese error es debido a la variable de MySQL SQL_BIG_SELECTS.

SQL_BIG_SELECTS
Con valor 0, MySQL aborta los comandos SELECT que probablemente tardarán mucho tiempo (esto es, comandos para los que el optimizador estima que el número de registros examinados excede el valor de max_join_size). Esto es útil cuando un comando WHERE no aconsejable se ejecuta. El valor por defecto para una nueva conexión es 1, que permite todos los comandos SELECT .

Si cambia la variable de sistema max_join_size a un valor distinto a DEFAULT, SQL_BIG_SELECTS se pone a 0.

Para solucionar el error basta con ejecutar la consulta SET SQL_BIG_SELECTS=1
antes de ejecutar la consulta original problemática y listo!

El problema de todo radica en que cuando se desarrolla un sitio el testeo que se hace suele ser con un volumen pequeño de información, y que que cuando realmente el proyecto lleva un tiempo y ya tiene mucha información pueden surgir este tipo de problemillas.

Posicionamiento con CSS

He encontrado un mini manual bastante interesante para todos aquellos que todavía no tienen bien claro como va el tema de los posicionamiento en CSS.
Se explican 3 diferentes tipos de posicionamiento en 10 pasos:

Lo único que echo en falta para la gente que esté iniciándose en el tema es ver el código html de la estructura de las capas .
Una de las pegas que tiene el artículo es que está en inglés (aunque se entiende muy bien).

Enlace al artículo

Espero que os guste.

Historia del UTF-8

Cuantas veces nos hemos dado de tortas con el tema de la codificación de las páginas.
Al final nos quedamos con las dos cosas básicas que hay que hacer:

  1. Poner la codificación de los carácteres que vamos a emplear en el parámetro “charset” de todos los metas de las páginas.
  2. Guardar las páginas con esa misma codificación (que la página tenga la codificación en el “charset” puesta no implica que esté guardada en ese mismo formato).

Aquí os dejo un link a un artículo muy interesante acerca del nacimiento del “UTF-8″ para todos aquellos que a veces se pregunten el por qué de poner esas palabrejas tan raras (UTF-8, iso-8859-1 …) :)

Enlace al articulo sobre UTF-8 del blog de juque

El artículo lo encontre a través de la web Diseñorama.

know-how

Ahí va otra de esas palabritas. Algunas personas también dice how-do :)

Know-how
El Know-How (del inglés saber-cómo) es una forma de transferencia de tecnología. Aunque se traduce literalmente por “saber-cómo”, mejor dicho sería “Saber hacer”.
El término está relacionado a los conocimientos prácticos, técnicas o criterios que han sido utilizados en la elaboración o diseño de un proyecto y que se pueden reutilizar al momento de realizar otros proyectos similares o de afinidad al mismo.
Know-how describe, básicamente, la habilidad con que cuenta una organización para desarrollar sus funciones, tanto productivas como de servicios, aunque también incluye áreas como contabilidad y RR. HH., entre otras.
Es una expresión anglosajona utilizada en los últimos tiempos en el comercio internacional para denominar los conocimientos preexistentes no siempre académicos, que incluyen: técnicas, información secreta, teorías e incluso datos privados (como clientes o proveedores). Un uso muy difundido del término suele utilizarse en la venta de franquicias, ya que lo que se vende es el “saber como”.
Otra manera de definir “know how” es como las habilidades y aptitudes particularmente distintivas para desempeñar una labor específica.

Pues ya veis, ahora con esta “palabrita” ya estamos preparados para tener una “charla más técnica” XDD

brainstorming

Cuantas veces nos pasa que estamos hablando con un cliente y oímos alguna palabra que no tenemos ni idea de lo que significa porque “no estamos al día” en el “dialecto profesional” :)

Aquí os pongo una de esas palabras que hacen que parezca que uno sabe mucho.

Brainstorming.
La lluvia de ideas o brainstorming, también denominada tormenta de ideas es una herramienta de trabajo grupal que facilita el surgimiento de nuevas ideas sobre un tema o problema determinado. La lluvia de ideas es una técnica de grupo para generar ideas originales en un ambiente relajado.

Problemas con comillas en cajas de texto

Cuantas veces nos hemos topado con el problema de las comillas en las cajas de texto. Es decir, creamos un registro que tiene comillas simples o dobles y cuando nos ponemos a modificarla… no sale bien.

El problema está en que el valor del input va entre comillas, y entonces las comillas del registro las interpreta como comillas de PHP. Para solucionarlo tenemos la función de PHP htmlentities y usaremos los siguientes valores para los parámetros opcionales que tiene esta función: ENT_QUOTES [Convertirá las comillas dobles y sencillas] y la codificación que tiene la página.

Ejemplo:

Filtrado para insertar el valor de una variable tomada de una base de datos para un input (mediante su atributo value) que se encuentra en una página con codificación “UTF-8″. Es decir el siguiente código iría rodeado de comillas dobles en el input, dentro del atributo value.

htmlentities($registro['nombre'], ENT_QUOTES, “UTF-8″)

Espero que os sirva. Es la típica tontería a la que nos enfrentamos muchas veces y nos lleva un tiempo encontrar como la habíamos solucionado.

URL con libros online gratis

Aqui os dejo la URL de una página que pública libros online gratuitos de diferentes lenguajes de programación.

Tal y como dicen en la web “LibrosWeb.es publica gratuitamente todo el material que utilizan sus autores en los cursos que imparten.
Además, publica traducciones de libros gratuitos relacionados con el diseño y la programación web.Siempre se podrá acceder gratuitamente a toda la información de este sitio, ya que creemos que la información debe ser libre.”

Libros web online

Interesante artículo de diferencias IExplorer 7 y Firefox

Aqui os pogo una URL interesante donde comenta alguna de las diferencias entre Firefox e IExplorer 7.
Hay que tener en cuenta que éstas diferencias son para el iExplorer 7 no para el 6.

Espero que os sea interesante.

Diferencias Firefox e IExplorer7

Os pongo también el artículo de diferencias entre IExplorer6 y IExplorer 7
Diferencias IExplorer6 e IExplorer7