OS X: Acelerar el arranque de aplicaciones

Acelerar el inicio de aplicaciones

OSX utiliza una caché para evitar la ralentización de inicio de apps enlazando dinámicamente a una series de recursos compartidos.

Esta caché puede corromperse o simplemente pueden no haberse realizado correctamente los enlaces por lo que una purga y reconstrucción de esta acelerará notablemente el arranque de las aplicaciones.

Para realizarla escribe en el Terminal los siguientes comandos, uno a uno y esperando a que se realice la tarea:

sudo update_dyld_shared_cache -debug
sudo update_dyld_shared_cache -force

Reinicia el Mac y observarás las mejoras.

Variar la velocidad de aparición del Dock del Mac

Velocidad aparicion Dock

Nunca he terminado de acostumbrarme a trabajar con el Dock oculto ya que alterno mi trabajo entre el iMac y el MacBook Pro. En el primero tenerlo siempre abierto y perder el alto de pantalla que este ocupa no supone ningún problema, si empieza a molestar al pasar al segundo y por eso recientemente lo he activado también en el iMac.

[aesop_image imgwidth=”90%” img=”https://tonidg.es/wp-content/uploads/2016/05/Velocidad-aparicion-del-dock.gif” alt=”Velocidad de aparición del Dock” align=”center” lightbox=”off” caption=”Velocidad de aparición del Dock” captionposition=”center”]

 

 

La velocidad de aparición por defecto es algo lenta, elegante si, pero lenta. Podemos mediante algún comando de Terminal modificar ese tiempo de retardo entre que apuntamos con el ratón en la parte inferior de la pantalla (o la parte donde lo tengas alineado) y la aparición de esta. Para ello, abre el Terminal y escribe uno a uno los siguientes comandos:

defaults write com.apple.dock autohide-delay -float 0
defaults write com.apple.dock autohide-time-modifier -float 0.5
killall Dock

Puedes jugar con los valores para ajustarlo a tus necesidades o gustos.

También podemos modificar los tiempos de animación para Exposé y Mission Control con el comando:

defaults write com.apple.dock expose-animation-duration -float 0.15

Mostrando archivos invisibles rápidamente en el Finder de OS X

Mostrar archivos invisibles en el Finder

El Finder de OS X no muestra por defecto los archivo invisibles del sistema y en multitud de ocasiones podemos necesitar trabajar con ellos.

Si bien existen aplicaciones que añaden una capa de opciones al Finder con los que podemos hacerlo, incluso comandos de Terminal para conseguirlo, lo mas sencillo es conmutar el visionado de estos archivos en nuestro Finder nativo mediante una combinación de teclado.

En cualquier ventana no tienes más que presionar las teclas + + ESPACIO y estos se mostraran, para revertir el estado vuelve a presionar la misma combinación.

OS X – Reiniciando el Mac automáticamente tras un Kernel Panic

Reiniciar el Mac tras un Kernel Panic

Se dan situaciones en que necesitamos el equipo constantemente activo, siempre encendido porque nos presta algún servicio. En estos casos si ocurre un Kernel Panic su trabajo queda bloqueado y al estar desatendido resulta imposible recuperarlo.

Vamos a hacer que el Mac se reinicie automáticamente mediante una opción del systemsetup. Este es un comando realmente interesante puedes consultar todas sus opciones en el este enlace.

Activándolo en el Mac

Desde el Terminal,  + ESPACIO para abrir Spotlight y escribe terminal, consulta el estado mediante:

sudo systemsetup -getrestartfreeze

Nos puede devolver dos estados, ON o OFF. Si está apagado tan solo tendremos que encenderlo con:

sudo systemsetup -setrestartfreeze on

Nos pedirá la contraseña de administrador para hacer los cambios.

Gulp – Instalación en OS X 10.11

Gulp

Gulp.js es un sistema de construcción que permite automatizar tareas comunes de desarrollo, tales como la minificación de código JavaScript, recarga del navegador, compresión de imágenes, validación de sintaxis de código y un sin fin de tareas más.

No solamente nos soluciona el problema de tener que utilizar múltiples herramientas en nuestro flujo de trabajo sin que nos permite ejecutarlo todo desde un único lugar.

Instalando globalmente Gulp

Gulp requiere Nodejs y Npm (administrador de paquetes de Node) por lo que debes tenerlos instalados antes. Aquí tienes un tutorial para hacerlo.

Abre el Terminal ( + ESPACIO para abrir Spotlight y escribe terminal) y dispara el siguiente comando:

npm install -g gulp

Instalando localmente – package.json

Para un proyecto local necesitas preparar primero un archivo package.json para configurar tus paquetes y dependencias Node/npm. Desde el Terminal cambia el directorio a tú carpeta de proyecto y dispara el siguiente comando para crear el archivo package.json:

npm init

Esto te ayuda a crear el archivo, aquí tienes la salida generada:

tonidg@[~/Desktop]: npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
name: (Desktop) mi_proyecto
version: (1.0.0) 0.0.1
description: ejemplo de mi proyecto
entry point: (index.js)
test command:
git repository:
keywords:
author: Toni DG
license: (ISC)
About to write to /Users/tonidg/Desktop/package.json:
{
"name": "mi_proyecto"
"version": "0.0.1"
"description": "ejemplo de mi proyecto"
"main": "index.js"
"scripts":
"test": "echo \"Error: no test specified\" && exit 1
}
"author": "Toni DG"
"license": "ISC"
}

Tu solo tienes que añadir los valores para Nombre, Versión, Descripción y Autor. Mantén los demás campos en blanco y el archivo será escrito en la carpeta de tú proyecto. Tras esto puedes eliminar algunos de los campos en blanco en un editor de texto, obteniendo algo así:

{
"name": "mi_proyecto",
"version": "0.0.1",
"description": "ejemplo de mi proyecto",
"author": "Toni DG"
}

Fíjate en que la última coma ha sido eliminada.

Una vez tenemos nuestro archivo json situado podemos instalar el paquete Gulp localmente desde la linea de comandos en nuestro proyecto, esto escribirá a nuestro archivo package.json por lo que asegúrate de estar en el directorio del proyecto. Instala mediante:

npm install gulp --save-dev

Ahora nuestro package.json debería ser algo así:

{
"name": "test_proyecto",
"version": "1.0.0",
"description": "test",
"author": "Toni DG",
"devDependencies": {
"gulp": "^3.9.1"
}
}

Para añadir mas plugins, como por ejemplo el de recarga en vivo del navegador utiliza la siguiente sintaxis:

npm install browser-sync --save-dev

El parámetro -save-dev guardará el paquete como una dependencia del proyecto así que escribirá en el archivo package.json. Ahora mostrará algo así:

{
"name": "test_proyecto",
"version": "1.0.0",
"description": "test",
"author": "Toni DG",
"devDependencies": {
"gulp": "^3.9.1",
"browser-sync": "^2.11.1"
}
}

gulpfile.js

Nuestro último archivo de configuración es gulpfile.js el cual le dice a Gulp que debe hacer. Añade este archivo a la raíz de tú proyecto e inserta:

var gulp = require('gulp');

Como tenemos el plugin browsersync instalado vamos a crear una tarea que nos permita ver el proyecto web en el navegador y que este se recargue automáticamente cada vez que cambiemos el CSS. Ahora nuestro gulpfile.js será así:

var gulp = require('gulp');
var browserSync = require('browser-sync').create();
gulp.task('sync', function() {
browserSync.init({
proxy: "my_project.dev",
files: "*.css,*.php,css/*css"
});
});

Ahora ejecutamos nuestra tarea desde la linea de comandos usando:

gulp sync

Eso es todo, esta es una guía básica de inicio y no pretende más que eso, preparar tú entorno. Existen multitud de plugins  disponibles, repásalos y comprueba todo lo que pueden hacer por ti mejorando tus flujos de trabajo.

Insertar símbolos técnicos en OS X

Escritorio MAC

Los emojis o emoticones son símbolos cada vez mas usados para expresar emociones cuando escribimos. En iOS accedemos a ellos desde el mismo teclado pero en OS X hay que invocarlos, para ello disponemos de un atajo de teclado.

Además, tenemos también a disposición variedad de símbolos técnicos como por ejemplo los carácteres especiales de los teclados del Mac; para los que escribimos tutoriales como el presente nos resultan de lo más práctico.

Puedes invocar la ventana de emojis pulsando CONTROL + + ESPACIO desde cualquier lugar donde puedas introducir un texto. Tienes una muestra de lo que obtenemos en el video siguiente.

Instalando PEAR en OS X

Pear

PEAR, o PHP Extension and Application Repository, es un entorno de desarrollo y sistema de distribución para componentes de código PHP. El proyecto fue fundado por Stig S. Bakken en 1999 para promover la reutilización de código que realizan tareas comunes.

El proyecto tiene como metas:

  • Promover una biblioteca de código bien estructurada.
  • Mantener un sistema de distribución y mantenimiento de paquetes de código.
  • Promover un estilo de codificación estándar.

En definitiva consiste en una lista bastante grande de bibliotecas de código PHP que permiten hacer ciertas tareas de manera más rápida y eficiente reutilizando código escrito previamente por otras personas. Generalmente las bibliotecas contienen clases en archivos PHP que luego se incluyen y usan sin muchas complicaciones. Aunque el proyecto está orientado hacia la comunidad, existe un Grupo que ejerce de gobierno y toma cuenta de las tareas administrativas. Cada paquete de código comprende un proyecto independiente bajo el paragüas común de PEAR. Estos paquetes disponen de su propio equipo de desarrollo, control de versiones y documentación.

Instalando PEAR

Antes de nada deberías comprobar si dispones ya de alguna instalación. Desde el Terminal muévete a tú directorio de inicio.

cd

Chequea si lo tienes.

pear version

Si no es así obtenla mediante el comando:

curl -O http://pear.php.net/go-pear.phar

Y ahora instálala:

php -d detect_unicode=0 go-pear.phar

La instalación te sugiere las localizaciones de los archivos, estas estarán basadas en tú directorio raíz. Solamente presiona .

Añadir PEAR a tú PATH

Puedes añadirlo en tú .bash_profile el cual es un archivo invisible en el directorio raíz.

cd
nano .bash_profile

Añadir a tú variable PATH o ruta:

/users/USERNAME/pear/bin

Así que la variable PATH se verá algo como esto, cada PATH está separado por dos puntos y termina con la variable $PATH. En el siguiente ejemplo el path PEAR es la segunda.

export PATH="/usr/local/mysql/bin:/Users/USERNAME/pear/share/pear/:$PATH"

Refresca el perfil

source .bash_profile

Y ahora verifica

pear version

La salida obtenida debería ser algo parecido a esto:

PEAR Version: 1.10.1
PHP Version: 5.5.5
Zend Engine Version: 2.5.0
Running on: Darwin 192-168-1-9.tpgi.com.au 15.3.0 Darwin Kernel Version 15.3.0: Thu Dec 10 18:40:58 PST 2015; root:xnu-3248.30.4~1/RELEASE_X86_64 x86_6

Pear está instalado y preparado, ahora necesitas añadir el path Pear a tú instalación PHP.

Añadir PEAR a PHP

Del mismo modo que has añadido Pear a la ruta del Shell ahora debes añadir la ubicación de Pear a PHP para que pueda ejecutar los binarios, esto se hace a través del archivo PHP.ini

Si tú instalación de OS X no ha sido personalizada él estará situado en /etc y podría llamarse php.ini.default el cual tendrás que duplicar y renombrar a únicamente php.ini. Si PHP está en otra parte deberás encontrarla con el comando:

php --ini

En este ejemplo tengo una ruta o Path PHP diferente

Configuration File (php.ini) Path: /usr/local/php5/lib
Loaded Configuration File: /usr/local/php5/lib/php.ini

Cuando lo tengas ábrelo y bajo ‘Paths and Directories’ añádelo al PHP.ini

include_path = ".:/Users/YOURUSERNAME/pear/share/pear/"

Ahora ya puedes trabajar con tus paquetes PEAR, a continuación tienes algunos comandos útiles.

Para listar tus paquetes:

pear list

La salida debería ser similar a esto:

Installed packages, channel pear.php.net:
=========================================
Package Version State
Archive_Tar 1.4.0 stable
Console_Getopt 1.4.1 stable
PEAR 1.10.1 stable
Structures_Graph 1.1.1 stable
XML_Util 1.3.0 stable

Para instalar un paquete Pear, por ejemplo PHP_codesniffer, ejecuta:

pear install PHP_codesniffer

Para actualizar PEAR:

pear upgrade pear

El archivo Hosts: como modificarlo con cualquier editor de texto

OS X El Capitan

El archivo hosts de un ordenador es usado por el sistema operativo para guardar la correspondencia entre dominios de Internet y direcciones IP. Este es uno de los diferentes métodos que usa el sistema operativo para resolver nombres de dominios. Antiguamente cuando no había servidores DNS que resolvieran los dominios, el archivo era el único encargado de hacerlo, pero dejó de utilizarse cuando Internet empezó a crecer en nombres de dominio, pasando a usar servidores de resolución de DNS. En muchos sistemas operativos este método es usado preferentemente respecto a otros como el DNS. En la actualidad también es usado para bloquear contenidos de Internet como la publicidad web.

En Mac, el archivo esta localizado en private/etc/. Para editarlo simplemente vamos a utilizar un comando desde el Terminal ejecutando el editor de texto que queramos (en nuestro ejemplo TextEdit) y lanzando el archivo dejándolo listo para su edición.

Lanzando Hosts en TexEdit desde el Terminal

+ ESPACIO para abrir Spotlight y escribe Terminal. Desde él lanza el siguiente comando:

sudo open -a TextEdit /etc/hosts

Terminal nos pide nuestra contraseña, introdúcela.

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2016/03/Terminal-Abrir-Hosts.png” alt=”Terminal” align=”center” lightbox=”off” caption=”Terminal” captionposition=”center”]

 

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2016/03/TextEdit-Editando-Hosts.png” alt=”TextEdit” align=”center” lightbox=”off” caption=”TextEdit” captionposition=”center”]

 

Si el archivo estuviera bloqueado y no pudieras editarlo seguramente tengas el SIP activado, para desactivarlo y obtener más información acerca de ello puedes consultar mi anterior artículo Desactivando el sistema de protección de integridad SIP de OS X El Capitan.

DNS – Cambiando la configuración en OS X

DNS - Cambiando la configuración en OS X

DNS, acrónimo de Domain Name Server no es otra cosa que una traducción de direcciones IP numéricas a dominios legibles para humanos.

La mayoría de usuarios de proveedores de acceso a internet ofrecen sus propios servidores DNS y los usuarios los utilizamos desde DHCP o un router WiFi. Podemos sin embargo utilizar servidores personalizados para mejorar el rendimiento.

Añadiendo, editando y ajustando los servidores DNS en OSX

Dirígete a las preferencias del sistema y entra en el apartado Red.

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/12/Preferencias-del-sistema.png” alt=”Preferencias del sistema” align=”center” lightbox=”off” caption=”Preferencias del sistema” captionposition=”center”]

Ahora accede a Avanzado.

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/12/Red-Avanzado.png” alt=”Red – Avanzado” align=”center” lightbox=”off” caption=”Red – Avanzado” captionposition=”center”]

Selecciona la pestaña DNS.

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/12/DNS.png” alt=”DNS” align=”center” lightbox=”off” caption=”DNS” captionposition=”center”]

  • Para añadir un servidor click en el botón [+].
  • Para editar un servidor existente haz un click prolongado en la dirección para cambiarla.
  • Para eliminar un servidor seleccionada y haz click en el botón [-].
  • Cuando termines haz OK y Aplicar para que los cambios surgen efectos, ya puedes salir de las preferencias del sistema.

Es importante colocar los servidores mas rápidos en la parte superior de la lista. Podemos obtener un listado de servidores por su rendimiento utilizando al aplicación NameBench.

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/12/NameBench.png” alt=”NameBench” align=”center” lightbox=”off” caption=”NameBench” captionposition=”center”]

Fíjate que NameBench colocará los servidores que ya utilizas en el campo de texto superior y realizará un análisis comparando con estos y obteniendo, si es posible, unos servidores más rápidos.

En mi caso, los mejores servidores que me ha dado NameBench eran los ya incluidos por mi proveedor de servicios. Con una conexión por fibra 300mB con Movistar los DNS que ellos proveen han sido los mejores. El proceso de análisis puede resultar largo así que tómatelo con calma.

Ahora te toca a ti probar y editar los servidores en caso de que los que ya tienes no son los mas apropiados.

Node.js – Instalación en OSX El Capitan 10.11

Node.js - Instalación en OSX El Capitan

Node.js usa el motor de JavaScript V8 de Google: una VM tremendamente rápida y de gran calidad escrita por gente como Lars Bak, uno de los mejores ingenieros del mundo especializados en VMs. No olvidemos que V8 es actualizado constantemente y es uno de los intérpretes más rápidos que puedan existir en la actualidad para cualquier lenguaje dinámico. Además las capacidades de Node para I/O (Entrada/Salida) son realmente ligeras y potentes, dando al desarrollador la posibilidad de utilizar a tope la I/O del sistema.

Instalando Node.js

Para instalar Node.js en OSX puedes descargar un paquete pre-compilado desde https//nodejs.org mediante el cual podrás hacerlo de forma rápida y sencilla. Haz click y consigue la última versión estable.

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/11/Descargando-Node.png” alt=”Descargando Node” align=”center” lightbox=”off” caption=”Descargando Node” captionposition=”center”]

Con la instalación además conseguiremos npm. Npm es un administrador de paquetes para Node el cual nos facilita obtener paquetes adicionales.

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/11/Instalando-Node.png” alt=”Instalando Node” align=”center” lightbox=”off” caption=”Instalando Node” captionposition=”center”]

Al final de la instalación te recordará que te asegures de que /usr/local/bin está en tú $PATH. Para hacerlo abre el Terminal y escribe el siguiente comando:

echo $PATH

Deberías ver algo parecido a esto:

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/11/Comprobando-PATH.png” alt=”Comprobando $PATH” align=”center” lightbox=”off” caption=”Comprobando $PATH” captionposition=”center”]

Después de la instalación podemos comprobar que todo ha ido bien abriendo una sesión JavaScript de Node. Escribe en el Terminal:

node

y después:

console.log('hello node');

Deberás ver algo como esto:

[aesop_image imgwidth=”100″ img=”https://tonidg.es/wp-content/uploads/2015/11/Comprobando-Node.png” alt=”Comprobando Node” align=”center” lightbox=”off” caption=”Comprobando Node” captionposition=”center”]

Para salir de una sesión de Node puedes presionar CONTROL + C.

Recuerda que para actualizar simplemente descarga la última versión y sobreescribe la anterior. Puedes consultar tú versión con:

node -v

Instalando paquetes para Node

Existen multitud de paquetes como por ejemplo el popular Grunt.js, puedes utilizar el comando npm para obtener un listado completo:

npm search

Para instalar un paquete ejecuta:

npm install easyimage

Para listar paquetes desde un directorio de proyecto:

npm ls

Para actualizar paquetes npm:

npm update

Y eso es todo, te recomiendo buscar ayudas o realizar algún tutorial si te estás iniciando en Node.