JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

Escribiendo código JavaScript limpio: funciones anónimas auto-ejecutables

Un patrón muy utilizado a la hora de escribir código JavaScript son las funciones anónimas auto-ejecutables. La idea es la siguiente: aprovechar las propiedades de ámbito de las variables de JavaScript y el uso de clausuras para escribir código más limpio que no interfiera con otro código JavaScript que pudiera haber en la página. De hecho es la técnica que utilizan muchas de las bibliotecas importantes para inicializarse. Por ejemplo, consideremos el siguiente fragmento de código JavaScript: var v1 = 0; function miFunc1(){ v1 = 5; alert(v1); } function miFunc2(){ v1 = 10; alert(v1); } En este código tan sencillo estamos definiendo una variable y dos funciones. Dado que desde ambas funciones debemos poder acceder a la misma variable común "x", la declaramos de manera global, siendo accesible desde toda la página. Este código, si bien funcionará correctamente, tiene varios problemas, entre los que cabe destacar los dos siguientes: La variable, sien... [Más]

Cómo listar todos los sitios web y sus dominios en un servidor IIS

Si tenemos que administrar uno o varios servidores web, hay ocasiones en las que necesitaremos inventariar de manera rápida y sencilla qué sitios web y dominios tenemos albergados en nuestras máquinas. Obviamente una forma sencilla de verlo es ir a través del administrador de Internet Information Server y ver qué sitios tenemos allí. Pero el problema de eso es que no podemos manipular la lista de manera alguna y, sobre todo, no nos da una idea clara de qué dominios tenemos asociados a cada sitio web, salvo que vayamos entrando uno a uno a comprobarlos. Sería de mucha utilidad poder listar toda esta información de manera automática y rápida siempre que lo necesitemos. Por suerte para nosotros, IIS en todas sus versiones os ofrece una manera sencilla de hacerlo. Veamos cómo... Listado de sitios y dominios en IIS 6 En Internet Information Server 6 se incluían unas herramientas de línea de comandos escritas en VBScript que nos permiten gestionar de mil maneras el servidor. Una de ell... [Más]

Off-Topic: Nuevo curso de programación profesional con JavaScript

Los que seguís con asiduidad este blog habréis notado que he estado un poco ausente durante las últimas semanas. Aparte de que he estado creando mucho material para nuestro blog para programadores de campusMVP, el principal motivo ha sido que durante los meses de verano y hasta finales de la semana pasada he estado trabajando duramente en crear un nuevo curso para campusMVP: JavaScript profesional para desarrolladores y diseñadores web Ha sido un trabajo bastante duro a pesar de que ya he escrito varios libros sobre el tema, principalmente porque he tratado de crear un curso muy práctico, y al mismo tiempo que sirviera para el mayor número de programadores posible. Para ello, aparte de la teoría correspondiente (que es mucha) he grabado más de 13 horas de vídeos prácticos y muchos ejemplos Esto que puede parecer relativamente poco, es mucho para un curso como este que tiene además gran cantidad de material teórico escrito (que también es muy necesario). Y es que además, entre preparaci... [Más]

Desempaquetando el impresionante "phablet" Nokia Lumia 1520

Tras año y medio con mi Nokia Lumia 920 me he decidido a cambiarlo por un nuevo e impresionante Nokia Lumia 1520. Estaba muy contento con mi 920, pero quería cambiar porque mi terminal era una versión temprana del modelo, y tenía un fallo de sellado en el hardware que no tuvo posteriormente el modelo definitivo. En concreto el problema es que se colaba polvo a través del cierre superior llenando de porquería la cámara frontal y, sobre todo, el sensor de proximidad. Debido a ello el teléfono siempre "creía" que estaba dentro de un bolsillo por lo que no se mostraba la información de la Glance Screen y la pantalla estaba apagada durante las llamadas aunque no la pegaras a la oreja. Un fastidio. Además me apetecía un móvil más grande (y eso que el 920 con 4.5'' de pantalla me parecía enorme cuando lo recibí) y con procesador más rápido, sobre todo por aplicaciones poco optimizadas como Whatsapp. Total que al final he comprado un Lumia 1520, de color blanco para ser más exactos. ¿Por ... [Más]

Música en Windows Phone 8.1: sin ningún problema

Nota: Este artículo es una actualización de otro que escribí hace año y medio, cuando Windows Phone y sus aplicaciones de múscia no estaban todavía al nivel que debieran para poder competir con otros terminales del mercado. Las cosas han cambiado mucho, y ahora ya no tiene demasiado que envidiar a otras plataformas. Una de las funciones principales para mi en un teléfono, junto con la cámara, es la de poder oír música. Antes de nada he de comentar mis necesidades particulares en lo que a música en un móvil se refiere, que puede que no coincidan para nada con las tuyas, en cuyo caso tu experiencia puede variar sustancialmente respecto a la mía: Música off-line: El motivo es que solo suelo escuchar música en mis ratos libres lejos del ordenador, y mientras estoy en transporte, es decir, de casa al trabajo en el coche, en los aviones, etc… En mis (escasas) vacaciones procu... [Más]

Uso de condiciones complejas en instrucciones switch de JavaScript (y otros lenguajes)

La instrucción switch en JavaScript nos permite tomar decisiones a partir de una lista de posibles valores que se compraran con una variable. Por ejemplo, si tenemos una variable "x" y queremos realizar una acción en función del valor que tenga ésta, escribiremos esto: switch (x) {   case 0:      //Acción para el 0      break;   case 1:      //Acción para el 1      break;   case 2:      //Acción para el 2      break;    ........   default:      //Acción por defecto} Esta instrucción de control de flujo nos evita tener que crear multitud de condicionales if-then anidados para conseguir el mismo efecto. Así, podemos poner cada uno de los valores posibles y realizar las acciones pertinent... [Más]

Cómo recuperar los iconos de páginas frecuentes eliminados de la portada de Google Chrome

Hace una temporada escribí sobre cómo recuperar los iconos eliminados de la página de frecuentes de Internet Explorer. A raíz de eso alguna gente me ha preguntado cómo hacer lo mismo pero en la página principal de Google Chrome: En el caso de Chrome es mucho más sencillo todavía, ya que el propio navegador ofrece soporte desde su interfaz para conseguirlo por lo que no es necesario recurrir a tocar el registro a mano, como en el caso de IE. Cuando pulsas sobre el aspa que te permite eliminar uno de estos accesos directos: aparece justo debajo de todos ellos un menú textual como el siguiente: Éste nos ofrece la posibilidad de deshacer la eliminación o de restaurar todos los accesos directos eliminados. Así, si hemos eliminado un acceso directo y no hemos visto este mené, lo que tendremos que hacer para recuperarlo es, paradójicamente, eliminar cualquier otro para hacer que aparezca el menú de la figura, y luego elegir la opción de "Restaurar todos". De esta manera r... [Más]

Cómo solucionar el problema de "Driver no encontrado" para el "SM Bus Controller" en Windows 8

Si te has comprado un ordenador nuevo o has tenido que reinstalar el sistema operativo recientemente es posible que te hayas topado con este problema: Instalas todo, habiéndote descargado los últimos drivers desde la web del fabricante, pero cuando vas al administrador de dispositivos, te encuentras con esto: Se trata del driver para el bus de gestión del sistema, SM Bus o System Management Bus. Se trata básicamente de un cable de señalización ligera que está instalado en las placas base para gestionar los mensajes de tipo encendido y apagado. Generalmente se usa para controlar dispositivos conectados a la placa base como las baterías, sensores de temperatura, voltaje, interruptores que detectan que se ha cerrado la tapa de un portátil, etc... Es importante que sea correctamente reconocido por el sistema, pues en caso contrario puede provocar problemas relacionados con la gestión de la energía (por ejemplo no ser capaz de suspender el equipo), pero también cuestiones como que se "cong... [Más]

Cómo eliminar las carpetas especiales del explorador en Windows 8

En Windows 8 Microsoft ha hecho algo que -al menos a mi me- molesta mucho: desactivar las útiles bibliotecas de documentos y sustituir las bibliotecas que había por defecto, por unas carpetas especiales del sistema. La mayor parte de los usuarios no se darán cuenta de este cambio, pero sí que hay una cuestión que es consecuencia directa y que es lo que más me molesta de todo: esas carpetas ahora aparecen colgando de "Mi PC" mostrándose en el explorador, tanto en la vista por defecto: ...como en el árbol de navegación lateral: También aparecen en los diálogos de selección de carpetas, en el árbol correspondiente. Llámame "especialito", pero que me molesta mucho tener por el medio esas carpetas inútiles. Prefiero las bibliotecas en las que incluías tú las carpetas que te interesaban, y además no aparecían molestando por el medio como pasa aquí. Entonces ¿cómo podemos librarnos de ellas pero no perder la funcionalidad en caso de que las uses? La solución, com... [Más]

Windows Phone: ¿una alternativa real a iPhone y Android?

NOTA: Este post es una actualización completa de otro que escribí hace un año y medio cuando me pasé de iPhone a Windows Phone 8 y que con el tiempo se quedó obsoleto. Dejo aquí la versión actualizada y en el  post original la misma pero con las diferencias marcadas. Espero que te resulte útil. Cuando el iPhone apareció en el año 2007 fue toda una revolución. Hasta entonces estábamos acostumbrados a los aburridos teléfonos "inteligentes" con Windows Mobile, que en el fondo trataban de replicar la experiencia de un ordenador en el teléfono, cuando son tan diferentes en esencia. Sin embargo el iPhone cambió totalmente eso. Era solamente una gran pantalla con muchas aplicaciones especializadas en tareas sencillas y que podías manejar con un dedo. Adiós a los punteros, adiós al menú de inicio, adiós a la complejidad. Además su pantalla y su cámara eran espectaculares para la época. Era tan fácil de manejar que cualquiera podía hacerlo sin instrucciones y sin ser previamente un usuario... [Más]