Enlaces recomendados programación

¡Hola Gente!

A continuación un listado de artículos sobre programación  que están interesantes:

  • Mongly – Un tutorial que nos enseña lo mas básico de mongoDB de manera rápida y fácil.
  • Como desarrollar para android – Un tutorial paso a paso sobre como desarrollar aplicaciones para android
  • ¿Cuando tráfico puede soportar tu sitio web? – Una guía que nos muestra cuanto tráfico debería poder llegar a soportar nuestra web, dependiendo del tipo de tráfico que tiene.
  • Fallback en mysql – una solución que utiliza exclusivamente mysql para evitar el clásico if(id_exists), update } else {  insert.

¡Espero que les sea de utilidad! Son todos muy interesantes. Recomiendo sobre todo el primero, el tercero y el último.

Un abrazo,
Pedro

Compilado de enlaces

¡Hola gente!

¡Sorpresa! Voy a subir un compilado de enlaces ^^

¡Espero que les sea de utilidad!

Un saludo,
Pedro

Rejunte de enlaces varios

¡Hola gente!

Hoy tengo una recopilación interesante, que varía desde usabilidad a programación.

¡Espero que lo disfruten!

Un abrazo grande,
Pedro

Enlaces recomendados && bonus

¡Hola gente!

Como ya es costumbre, hoy voy a agregar un listado de enlaces recomendados que he encontrado por ahi.

Además, una especie de follow monday con un par de blogs muy interesantes:

  • Bad ass JS – Interesantes recopilados de enlaces. Se nota mucho que está involucrado con Javascript.
  • The site with the lamp – La verdad es que no entiendo mucho de que habla el sujeto este, pero tiene post interesantes, como este por ejemplo
  • Single founder – Encara los problemas con los que se enfrentan las personas que intentan fundar su empresa por si solos. Tiene post mas interesantes que otros, destacando particularmente los que leí, este y este
  • Rasmus’ Toys Page

¡Espero que les sea de utilidad!

Un saludo,
Pedro

Compilado de enlaces

¡Hola Gente!

Sigo actualizando el blog, fiel como de costumbre. Hoy vengo con otro compilado de enlaces mas.

¡Espero que les sea de utilidad!

Un abrazo grande,
Pedro

Compilado de enlaces IIII

¡Hola amigos!

A continuación, un compilado de enlaces recomendados:

¡Espero que les sea de interés!

Un saludo,
Pedro

Como lograr la máxima rentabilidad de sus programadores

Un programador, mas importantemente, es un ser humano. Esto algunas veces tiende a olvidarse, presionando al programador – la única persona en la empresa capaz de solventar cierto tipo de problemas urgentes en la empresa – a trabajar demasiadas horas seguidas, sin preguntarse por el impacto en su rendimiento. Estudios realizados demuestran que un programador trabajando 10 horas diarias rinde menos que uno trabajando 8 horas.

Uno ha de preguntarse, antes de emprender – o sugerir a alguien que emprenda – la sacrificada lucha heróica en contra de ese problema, lo siguiente:

  • ¿Es rentable aumentar las horas de trabajo a una cantidad mayor de 8 horas?
  • ¿Qué efecto tiene sobre la capacidad de tener nuevas ideas el trabajar demasiado?

¿Es rentable aumentar las horas de trabajo a una cantidad mayor de 8 horas?

De acuerdo a al estudio mencionado previamente, no. Cito a continuación:

A largo plazo, cuando un empleado del software trabaja mas de 40 horas por semana, se ralentiza el desarrollo del software y se generan mas bugs.

A corto plazo, el trabajar mas de 21 horas continuamente es el equivalente a estar legalmente alcoholizado.

A continuación, un extracto de datos interesantes, demostrados por estudios científicos:

  • “Cinco días de trabajo de 8 horas maximizan la productividad en todas las industrias en donde se han realizado estudios en el siglo pasado.”
  • “Es verdad, se aumenta lo producido aumentos horarios por plazos cortos. En casos de aumentos horarios de 60 horas por semana, el “corto plazo” no debería ser jamás de mas de 2 meses, ya que en este punto es en el que se logra lo que se hubiera logrado si se hubieran trabajado 40 horas por semana en el mismo tiempo. Después de ese punto, no solo se perderían las horas ganadas, sino que se comenzarían a perder horas”
  • “El trabajo continuo reduce las funciones cognitivas en un 25% cada 24 horas. Muchas noches seguidas sin dormir tienen un efecto acumulativo.”
  • “La taza de probabilidad de que un ser humano cometa un error, especialmente con falta de sueño, suben. Eventualmente algo de niveles catastróficos tiene la posibilidad de ocurrir. Con un deadline tan cerca, ¿está dispuesto a correr ese riesgo?”

Estudios, desarrollados para el pentagono, tienen resultados interesantes:

En nuestro estudio, soldados de el escuadron FDC [Escuadron de direccionamiento de artillería], fueron puestos a prueba durante situaciones de combate continuo simulado durante 36 horas. Durante esas 36 horas, su habilidad para calcular correctamente el rango, elevacion y dirección, fue excelente. Sin embargo, después de 24 horas de haber comenzado, ellos no sabían si estaban disparandole a unidades enemigas o aliadas. No sabían a que le estaban disparando. Antes de este tiempo, cuando dimos la orden de fuego simulado a un hospital, el equipo checkeaba el mapa situacional, observaba la naturaleza del objeto y rechazaba la orden. Mas tarde en la simulación, atacaban sin dudarlo a cualquier objeto.

¿Qué efecto tiene sobre la capacidad de tener nuevas ideas el trabajar demasiado?

Muchas veces se nos olvida, pero frecuentemente la solución a un problema no está en golpearlo con un martillo, sino en encontrar la solución inteligente.

¿Cuantas veces, y después de enfrentarse a una situación por mucho tiempo, nos encontramos con que existía una solución muy sencilla al alcance de nuestra mano?

La inspiración viene a nosotros lenta y silenciosamente. Fundamentalmente con un poco de soledad.

Además, la mayoría de la gente que hoy por hoy es millonaria lo ha logrado a travéz de la materialización de una idea, idea que surgió en un momento de inspiración.

¿Realmente vale la pena el correr sin importar en que dirección estamos yendo? Después de todo, somos humanos, y sabemos que existe la posibilidad de que estemos atacando un hospital aliado, por citar un ejemplo.

Un saludo,
Pedro Worcel (Perfil de linkedin)

Fuentes:
Did your boss thank you for coding yourself to death?
Why crunch mode doesn’t work
Impact of overtime on productivity

Simplificar ajax en JS puro

¡Hola Amigos!

Encontré este blog, que propone reemplazar nuestra clásica forma de llamar un objeto XMLHttpRequest:

if (window.XMLHttpRequest){ // Firefox, Chrome, ...
    xhrRequest = new XMLHttpRequest();
}
else if (window.ActiveXObject) { // IE
    try {
        xhrRequest = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e) {
        try {
            xhrRequest = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (e) {}
    }
}

Por esta nueva forma:

 
if(!window.XMLHttpRequest) window.XMLHttpRequest = function(){
    return new ActiveXObject("Msxml2.XMLHTTP")
    || new ActiveXObject("Microsoft.XMLHTTP");
};
ajax = new XMLHttpRequest();

Nótese que las primeras cuatro líneas de este código solo tienen que ser escritas una sola vez en todo el script. Dejo a continuación el script que utilizé para comprobar que esto funcionara. Quedé maravillado por la simpleza que adoptó mi código.

<script>
// declaramos nuestro XMLHttpRequest
if(!window.XMLHttpRequest) window.XMLHttpRequest = function(){
    return new ActiveXObject("Msxml2.XMLHTTP")
    || new ActiveXObject("Microsoft.XMLHTTP");
};

var ajax;

// inicializamos un pedido ajax
function ajaxRequest(where) {
	//mucho mas lindo, verdad? : )
	ajax = new XMLHttpRequest();
	ajax.onreadystatechange = ajaxListen;
	ajax.open('get', where, true);
	ajax.send(null);
}

// esta funcion sera llamada a medida que el servidor procesa nuestro pedido
function ajaxListen() {
	if(ajax.readyState === 4)
		alert(ajax.responseText);
}

ajaxRequest("asd.html");
</script>

¡Espero que les sea de utilidad!
Saludos,
Pedro

Clases: paginación en PHP

Hola amigos,

Quiero dedicar un instante para recomendar esta espectacular clase, y de paso aumentar el PR de su autor, merecidamente:

http://mis-algoritmos.com/digg-style-pagination-class/
http://mis-algoritmos.com/2007/03/16/some-styles-for-your-pagination/

Es una paginación espectacular, sencilla, liviana, y altamente configurable.

No necesito decir mas. :)

¡Un saludo!
Droope

mass_stripslashes

¡Hola!

Hice este snippet de código, que sirve básicamente para realizar un stripslashes de todos los elementos de un array, util especialmente en los casos en los que sacamos datos de una base de datos en la que la data no se escapó correctamente, o queremos trabajar con data que está escapada.

(cuando me refiero a escapada, lo hago como una traducción de la palabra escape, que es lo que se le hace a las cadenas de texto para evitar inyecciones SQL y errores con caracteres comunes como ‘ o “. Esos caracteres, escapados, serían transformados en \’ y \”, respectivamente)
Sigue leyendo