Hacer defer el javascript es uno de esos temas que preocupan a quienes tienen una pagina web en cuanto al tema de la optimización de la misma.
Hay gente que hace esto:
Hacer defer el javascript es uno de esos temas que preocupan a quienes tienen una pagina web en cuanto al tema de la optimización de la misma.
Hay gente que hace esto:
No hace mucho hice un shell script que mostraba la fecha de creación de una cuenta de Twitter pero a las pocas semanas quedo obsoleto por la implementación del API 1.1 que requiere que este tipo de llamas al API sean autenticadas vía OAuth lo cual no es tan sencillo si solo quieres usar bash.
Esta versión esta hecha en Python y a diferencia del anterior proporciona mas información sobre la cuenta. de hecho puede procesar varias cuentas al mismo tiempo, veamos el código fuente de este programa hecho en Python:
from __future__ import print_function, unicode_literals
import requests
from requests\_oauthlib import OAuth1
from urlparse import parse\_qs
handles = raw_input('Enter twitter handles: ').split()
CONSUMER_KEY = " "
CONSUMER_SECRET = " "
OAUTH_TOKEN = " "
OAUTH_TOKEN_SECRET = " "
def get_oauth():
oauth = OAuth1(CONSUMER_KEY,
client_secret=CONSUMER_SECRET,
resource_owner_key=OAUTH_TOKEN,
resource_owner_secret=OAUTH_TOKEN_SECRET)
return oauth
if __name__ == "__main__":
oauth = get_oauth()
payload={'screen_name':handles}
r = requests.post(url="https://api.twitter.com/1.1/users/lookup.json",data=payload,auth=oauth)
user_obj = r.json()
for line in user_obj:
print("Handle: " , line['screen_name'])
print("User ID: " , line['id'])
print("Verified: " , line['verified'])
print("Name: " , line['name'])
print("Account Created: " , line['created_at'])
print("Followers: " , line['followers_count'])
print("Following: " , line['friends_count'])
print("Tweet Count: " , line['statuses_count'])
print("Favorites: " , line['favourites_count'])
print('- - - - - - - - - - -\n')
El producto de este script usando mi Twitter handle (orvtech) luce así:
Handle: orvtech User ID: 4412471 Verified: False Name: Oliver Account Created: Thu Apr 12 21:35:06 +0000 2007 Followers: 5710 Following: 558 Tweet Count: 20233 Favorites: 6514
Para ver de varias cuentas de Twitter solo debes dárselas a este programa hecho en Python, separadas por espacios en blanco, sin el símbolo de arroba como lo puedes ver aquí:
$ ./user-info.py
Enter twitter handles: orvtech twitter protected
Para ejecutar este script necesitas registar tu aplicación y generar unas llaves en apps.twitter.com/app/new para lo que deberás iniciar sesión con tu usuario de Twitter. Una vez registrada tu aplicacion deberas asignar los valores de las constantes CONSUMER_KEY, CONSUMER_SECRET, OAUTH_TOKEN y OAUTH_TOKEN_SECRET en el código fuente del script.
La extensión mysqli, o como a veces se le conoce, la extensión de MySQL mejorada, se desarrolló para aprovechar las nuevas funcionalidades encontradas en los sistemas MySQL con versión 4.1.3 o posterior. La extensión mysqli viene incluida en las versiones PHP 5 y posteriores.
La extensión mysqli contiene numerosos beneficios, siendo estas las mejoras principales respecto a la extensión mysql:
Para saber más clic (link: http://www.php.net/manual/es/mysqli.overview.php text: aquí popup: yes)
Ahora, vamos a la practica:
Clic para ampliar la imagen |
Actualización 04/12/2014
Usar bajo su responsabilidad.
Script para preparar el entorno para compilar una ROM para Firefox OS [DEBIAN]
Simplemente en nuestra consola como ROOT ejecutamos:
Luego de (link: actualizando-zte-open-de-firefox-os text: actualizar el ZTE Open popup: yes) me di la tarea de buscar información de como "cocinar" (compilar/instalar) una ROM para mi ZTE Open aquí les resumo un poco lo que encontré y lo que hice:
Si bueno, pase varios días y no encontré mucha información hasta que me tope con: (link: http://rowehl.com/blog/2013/10/24/firefoxos-1-dot-2-on-zte-open/ text: esto popup: yes) y (link: http://gnulinuxvagos.es/topic/2090-compilandoinstalando-la-%C3%BAltima-versi%C3%B3n-de-firefox-os-para-el-zte-open/#entry11912 text: esto popup: yes) y basándome en eso hice este (link: https://github.com/abr4xas/workbench text: script en bash popup: yes).
Bueno, si bien podemos seguir completamente este (link: http://gnulinuxvagos.es/topic/2090-compilandoinstalando-la-%C3%BAltima-versi%C3%B3n-de-firefox-os-para-el-zte-open/#entry11912 text: tutorial popup: yes) también podemos ejecutar el (link: https://github.com/abr4xas/workbench text: script en bash popup: yes) que nos adelanta un poco el trabajo.
Si, absolutamente... Si compilamos para la v1.3 luego de aplicar el ./flash.sh notamos:
Y por lo que entiendo todo es al momento de compilar si no queremos tener las herramientas de desarrolladores aplicamos:
Para los meses de Noviembre pasado la gente de ZTE lanzo su correspondiente actualización para los dispositivos ZTE Open, con esta versión la mayoría de las personas se han quedado sin ROOT pero esto no es así del todo...
El único detalle es que la ROM esta en ingles y pueden existir algunos cierres inesperados de las aplicaciones.
Acá esta todo lo necesario para hacer la actualización:
(link: http://neuronadicta.com/post/haciendo-downgrade-en-un-zte-open-con-firefoxos-v11/ text: Haciendo downgrade en un ZTE Open con FirefoxOS v1.1 popup: yes) (link: http://neuronadicta.com/post/conseguir-hacer-upgrade-de-firefoxos-10-a-12--13-en-un-zte-open/ text: Upgrade de FirefoxOS v1.0 a las versiones 1.2 / 1.3 en un ZTE Open popup: yes)
GNU Mediagoblin ha lanzado una campaña de financiación colectiva, para sufragar el trabajo de uno o más desarrolladores que se puedan dedicar a tiempo completo para hacer avanzar el proyecto.
MediaGoblin es un sistema de publicación en la web que puede alojar contenidos de todo tipo (como un YouTube + Flickr + SoundCloud + otros). Es software libre, así que está disponible para personas, comunidades, organizaciones y empresas que quieran utilizarlo, desplegarlo en su propia infraestructura, o adaptarlo.
Mediagoblin es uno de los proyectos en los que participo, traduciendo la interfaz al español, y junto con Debian, ocupa una parte especial de mi corazón (y mi tiempo libre). Me gusta el estilo de su comunidad, muy inclusiva, y Chris Webber, el desarrollador principal del proyecto, anima mucho esa inclusividad y buen rollo que se respira. Sólo estando un rato en el canal IRC de FreeNode (#mediagoblin) uno se da cuenta de la capacidad resolutiva de muchos de sus miembros, a la par que siempre intentan trabajar a gusto para ser feliz y viceversa.
El software en sí es muy prometedor. Sólo el hecho de tener una interfaz limpia, traducida a varios idiomas, y la capacidad para alojar y visualizar muchos tipos de archivo usando siempre estándares abiertos y hace que me guste.
El que me conoce, sabe que amo la simplicidad de por ejemplo el archivo multimedia de Debian o el de la conferencia FOSDEM: un árbol de carpetas y archivos. Navegas hasta donde está lo que te interesa, te lo descargas, y ya está, lo ves en tu equipo. Pero cuando vi el archivo multimedia de LibrePlanet 2013 (que usa MediaGoblin), con miniaturas de todas las charlas allí mismo, la interfaz en español (por la detección de idioma de mi navegador), la etiqueta de licencia en cada charla, poderla descargar en varios formatos o verla dentro del navegador, entendí que mucha gente prefiere algo así, visualmente más atractivo, y eso no tiene por qué suponer una gran carga adicional en el lado del que despliega la infraestructura (MediaGoblin es más ligero respecto a recursos y administración que un gestor de contenidos estándar, por ejemplo, y está pensado para escalar bien tanto hacia arriba como hacia abajo).
Sé que tanto Debian como FOSDEM funcionan con el trabajo voluntario de personas (a veces poquitas) en su tiempo libre, y con un presupuesto muy ajustado, soy feliz con sus elecciones respecto a repositorios de vídeo. Pero si algún día deciden animarse o encuentran los recursos necesarios para desplegar y mantener un MediaGoblin, ¡serán aún más geniales!
Mis cosas están en una cuenta gobblin.se, de Joar Wandborg, otro desarrollador de MediaGoblin, que amablemente ofrece cuentas gratuitas en el servidor que mantiene. Ahí sólo tengo cositas públicas. En mi familia hemos comentado varias veces el tema de alojar y compartir fotos y vídeos nuestros: yo vivo en una ciudad distinta, y por ahora, cada uno mantiene su archivo multimedia en su ordenador, enviando por correo, de vez en cuando, una selección de las fotos y vídeos más interesantes, o pasándonoslo en un pincho USB cuando nos vemos. De cuando en cuando hablamos por videoconferencia, pero por ejemplo, yo no las grabo, porque serían archivos grandes difíciles de compartir por correo.
Así que a menudo me planteo la posibilidad de montarme un servidor MediaGoblin con control de acceso, para que todos podamos subir y ver la historia digital de la familia, y espero hacerlo a lo largo del año, cuando compre un equipo fijo que pueda tener encendido permanentemente.
Entretanto, acabo de donar por segunda vez (lo hice también en la primera campaña en 2012). Me parece muy importante que los proyectos comunitarios también salgan adelante y mantengan su independencia, con una planificación guiada por las prioridades de la propia comunidad. La financiación colectiva puede hacer esto posible, y MediaGoblin ya ha demostrado que sabe materializar las expectativas de los que le apoyan, y con creces (y si no, echa un vistazo al vídeo, donde muestran todo lo hecho el pasado año. Puedes poner subtítulos en español pulsando en el iconito “CC” que hay junto al volumen). ¿Te animas a unirte a la Fuerza Goblin? No te arrepentirás.
(Si tienes dificultad para donar porque la página de la campaña y la de la donación están en inglés, puedes echar un vistazo a este artículo de GNU/Linux Vagos donde explican (en español) casi todo lo que pone en la página de la campaña, y también, contactar conmigo, y te aclararé todas las dudas que pueda).
The Onion Ring (TOR) protege tu privacidad haciendo que tu conexión navegue a través de una red distribuida por todo el mundo. Evita que alguien malintencionado o un gobierno totalitario se de cuenta que sitios visitas y al mismo tiempo que sitios malintencionados sepan tu ubicación geográfica.
La instalación en dispositivos Android es sencilla y configurar el cliente oficial de Twitter para que navegue por esta red es aun mas facil como lo puedes ver en este video.
Como ven el procedimiento es fácil y una vez instalada ORBOT en cuestión de segundos pueden tener el cliente oficial de Android configurado para que use como proxy HTTP la IP 127.0.0.1 a través del puerto 8118. Cabe destacar que a pesar de que mi tablet tiene acceso a root en ningún momento me pidio autorizacion para usar el modo super usuario asi que esto debería de funcionar en teléfonos o tablets sin acceso a root.
Las aplicaciones que use en este video las pueden descargar desde el Play Store de Google.
En el caso de Facebook recomiendo usar Tinfoil for Facebook y configurar el HTTP Proxy, Puedes descargar la aplicación directo desde el Play Store . Si quieres saber mas de esta aplicación hecha por un Venezolano no dejes de pinchar en Tinfoil Facebook: funcional y respeta tu privacidad.
Aquí les dejo una captura de pantallas que les muestra como configurar Tinfoil for Facebook, usen los mismos datos para el proxy que usaron para configurar twitter (127.0.0.1 a través del puerto 8118).
Si también quieres mayor privacidad desde tu computadora puedes usar TOR Browser Bundle que es una suite the software que incluye el cliente de TOR y una versión de Firefox pre-configurada para usar este cliente. Tor Browser Bundle soporta distintas versiones de los sistemas operativos Windows, Linux y Mac OS X.