Desarrollo


16
Dec 09

Plugin Central: Un tiro al suelo, al instalar y actualizar plugins

wordpress-plugin-2

El día de hoy he estado varias horas frente al equipo buscando un forma de hacer mas fácil la actualización e instalación de los plugins en todos los sitios donde trabajamos con WordPress, ya que es muy estresante ir uno por uno actualianzando o cuando vamos a instalar un WordPress nuevo ir añadiendo uno por uno.

En mi búsqueda he conseguido Plugin Central, una fantastica solución a este problema, si bien ofrece varias opciones, lo que me pareció mas espectacular fue la rapidez y facilidad con la que instale 32 plugins en una instalación nueva. Sólo tienes que escribir los nombres de los plugins, como si hicieras la lista de mercado, le das al boton de instalar y el solito los busca en el repositorio ofcial de wordpres los descarga y los instala. (Tiempo total para 32 plugins 34 segundos)

Plugin Central

Las Características principales son:

  • Instalación de plugins directamente con solo indicar la url del fichero ZIP que contiene el mismo (siempre que tengamos permisos correctos en los directorios correspondientes).
  • Instalación múltiple de plugins para mover tus plugins desde un blog a otro.
  • Visualizar el estado de tus plugins para ver si necesitan actualizarse o no desde el Escritorio de WordPress.
  • Opción para actualizar todos los plugins a la vez.

¿Te gustó este post? ¡Compártelo!

Bitacoras.com
TwitThis
Facebook
Meneame
Google Bookmarks
del.icio.us
Live
Technorati
Ping.fm
Wikio
Turn this article into a PDF!
E-mail this story to a friend!
Print this article!

View Original Article


27
Oct 09

Windows 7, demasiado tarde

Ningún macquero sufrio daños en la realización de este vídeo. El mercado se rinde a apple.

It´s too late
Video integrado

Publicado con El navegador Flock

Etiquetas: ,


23
Jun 09

Exporta datos de Google Analytics a Excel fácilmente, BaluArt.net

Google Analytics ofrece varias maneras de ver los datos y hacer comparaciones, lo cual es excelente. Pero, si uno desea una vista única completa o quiere hacer comparaciones con otros datos fuente, estamos algo limitados.

Exporta datos de Google Analytics a Excel fácilmente

Excellent Analytics es un plug-in de Excel que nos permite importar los datos de estadísticas web de Google analitycs dentro de una hoja de cálculo de Excel.

Así podremos realizar consultas fácilmente con todas las dimensiones y métricas disponibles o aplicar filtros para crear consultas avanzadas.

El plugin es open source y el código fuente podemos descargarlo desde aquí.

Enlace | Excellent Analytics
Vía | webresourcesdepot

View Original Article BaluArt.net


22
Jun 09

50 Fresh JavaScript Tools That Will Improve Your Workflow

JavaScript is an integral part of the RIA revolution. JavaScript allows developers to create rich and interactive web interfaces and establish asynchronous communication with servers for constantly up-to-date data without a page refresh.

Many things that were once accomplished using Flash objects can now be built using JavaScript – with the added benefit that it is free, typically more web and mobile accessible under most circumstances using best practices for development techniques, and without the need to use proprietary software for development.

Though JavaScript has been around for a while, new tools, techniques, and information are constantly being pumped out to continually push the technology into greater heights. In this article, we wish to share with you a huge list of fresh and new tools and resources that JavaScript developers will find useful and informative.

Here are a few other posts that you might find interesting:

Useful JavaScript Tools

FireUnit

Unit testing is an integral part of building high-performance and efficient web applications. John Resig (creator of jQuery library) and Jan Odvarko have developed an excellent Firefox/Firebug extension called FireUnit which gives developers logging and testing capabilities via a simple JavaScript API. For those interested in the tool, you should also read Odvarko’s post detailing the usage of FireUnit.

FireUnit

Sugar Test

SugarTest makes it easy to write elegant and understandable JavaScript tests. Its API is inspired by both RSpec, Shoulda and jQuery. It works as a DSL running on top of JsUnitTest.

Screenshot

JS.Class: Ruby-style JavaScript

JS.Class is a library designed to facilitate object-oriented development in JavaScript. It implements Ruby’s core object, module and class system and some of its metaprogramming facilities, giving you a powerful base to build well-structured OO programs.

Screenshot

JSON Formatter and Validator

The JSON Formatter was created to help with debugging. As data expressed as JSON is often written without line breaks to save space, it became extremely difficult to actually read it. This tool hopes to solve the problem by formatting the JSON into data that is easily readable by human beings.

Faux Console: Simulating a Firebug, Safari or Opera debugging in IE

Browsers like Safari, Opera and Firefox use the Firebug extension that offers a developer a comfortable way to output debugging information using the console.log() command. Microsoft Internet Explorer does not support this though – Faux Console is a small JavaScript that you can embed in the document to have a basic debugging console in IE.

JS Bin

JS Bin is a web application for testing and debugging JavaScript and CSS collaboratively. You input your source code and save it to a publicly-accessible URL which you can then share to your fellow developers or in social networking outlets like Twitter or Facebook groups. Be sure to check out the video introduction to see JS Bin in action.

JS Bin

PHP.JS

PHP.JS is an open source project in which we try to port PHP functions to JavaScript. By including the PHP.JS library in your own projects, you can use your favorite PHP functions client-side.

Page Speed

Page Speed, released by Google, is a Firefox/Firebug extension very similar to YSlow that evaluates your web pages for performance. Read more about Page Speed best practices to see what aspects of a web page are being evaluated. YSlow and Page Speed are based off Steve Souder’s work (who worked for Yahoo! and now works for Google).

Page Speed

prettyPrint

prettyPrint is an in-browser JavaScript utility for dumping variable information, inspired by ColdFusion’s built-in cfdump utility function. Using prettyPrint on JS objects, variables, and arrays will give you a large array of information about them, which you can then use for debugging purposes or simply for gathering data about them for documentation.

prettyPrint

Spket IDE

Spket is an excellent toolkit for JavaScript and XML development. It has a robust and intuitive GUI, and integrates with popular and powerful JavaScript/Ajax libraries such as Y!UI and jQuery. Its JavaScript Formatter feature gives you unparalleled control and standardization for you or your team’s JavaScript code formatting standards.

Spket IDE

Obtrusive JavaScript Checker

Obtrusive JavaScript Checker, created by Robert Nyman, is a tool for finding inline JavaScript on web pages. It highlights elements that have inline JavaScript properties and provides a summary report when you mouse over them. The tool is available as a Firefox extension or a Greasemonkey script.

Highlight.js

Highlight.js highlights syntax in code examples on blogs, forums and other web pages. The tool works automatically: it finds blocks of code, detects a language and highlights it accordingly.

Screenshot

Javascript Compressor

Javascript Compressor is a web-based tool for compressing your JavaScript to reduce their file sizes. It works by removing unnecessary characters (such as extra tabs and spaces). Developers who use the tool to compress their code can also use the decoding feature to uncompress their source code. It also obfuscates your code, making it harder to read – which can be desirable if you want to delay prying eyes from analyzing your publicly-available code base.

Javascript Compressor

Firediff

Firediff is a Firefox/Firebug extension that allows you to track changes in the DOM and CSS. By logging these changes, you can gain information about how web applications work, and what elements (and what properties) are being altered by way of DOM manipulation.

Firediff

RockStar Web Profiler

RockStar Web Profiler (aka Razor) logs and profiles information about client-side performance. It provides developers with a console for analyzing the data gathered by the tool. Check out the RockStar Web Profiler presentation to get an overview of its many awesome features.

bookmarklet maker

This plain and simple web tool allows you to create JavaScript-based bookmarklets. Usage is simple: simply copy and paste your source code into it and it will output the processed code in the lower pane.

bookmarklet maker

Tiny JS

Tiny JS is an online directory of small but powerful plugins for popular JavaScript/Ajax libraries (MooTools, jQuery, and YUI at the moment). Its aim is to hunt down and feature lightweight plugins that give you a lot of bang for the buck.

Tiny JS

JSCharts

JS Charts is a free JavaScript based chart generator that requires little or no coding. With JS Charts drawing charts is a simple and easy task, since you only have to use client-side scripting (i.e. performed by your web browser). No additional plugins or server modules are required. It’s enough to include the scripts, prepare your chart data in XML or JavaScript Array and your chart is ready.

Glimmer

Glimmer is an interactive design tool for incorporating slick JavaScript-based animation effects using the jQuery library. Glimmer comes with a wizard-style user interface which can reduce the amount of coding that you have to write manually.

Glimmer

JSSPec

A testing environment for JavaScript that runs on IE 6+, Firefox 2+ and Safari 3+. The tool shows differences between expected value and actual value, displays the failed line exactly and supports conditional execution. Released under GNU and available for free download.

CodeRun Code Search

CodeRun’s Code Search tool lets you search and view user-submitted Ajax, PHP, and .NET source code. Once you’ve found a script or project that you’re interested in, you can edit it via their web-based IDE without having to download the project locally.

BaseJS: A Mobile (Safari) Javascript Framework

a simple, lightweight framework created specifically for Mobile Safari (perfect for iPhone development).

CodeRun Code Search

MochaUI

MochaUI is a web-based tool for building web application interfaces built on top of the MooTools JavaScript framework. Jump right in by taking MochaUI for a spin in their demo page.

MochaUI

Utility Libraries and Components for JavaScript

narwhal

narwhal is a server-side JavaScript library following the ServerJS standard. Developers can create and share “packages” for website widgets, site features, programming patterns, in a similar fashion as PEAR for PHP.

uploadify

uploadify is a useful jQuery plugin for dealing with file uploads. It’s powered by a simple PHP script for handling the server-side stuff. Be sure to check out the uploadify demos to see the plugin in action.

Blackbird

Blackbird lets you log messages in JavaScript using a simple and intuitive JS-based API. The library also provides you with an attractive console GUI for viewing and analyzing messages. No more annoying alert() functions to see your objects’ contents (which can be frustrating for printing out array values) and for setting breakpoints.

Blackbird

Booklaylet

Booklaylet is a JS library for letting you easily deploy your bookmarklet applications. The implementation is dead simple: take the Booklaylet source and modify it to point to your app’s URL.

JavaScripTools

JavaScipTools is a collection of useful JS components, functions, and classes with the aim of addressing some of the more common web developer tasks such as parsing and formatting of data types (i.e. date and time). It also comes with a dynamic table function for creating sortable HTML tables.

Doodle.js

HTML 5’s Canvas element gives developers a way to draw stuff on web pages programmatically. Doodle.js is a utility library/framework for working with more complex and robust Canvas drawing processes. Check out Spiral Pattern demo and the Marbles in Space (3D simulation) demo in a browser that already supports Canvas to get a feel for how Doodle.js works.

Doodle.js

liteAJaX

liteAJaX is a lightweight JavaScript class for working with AJAX. This library is perfect for projects that don’t use a JavaScript/Ajax framework or projects that don’t need a more robust and fully-featured framework.

Burst

Burst is a vector animation engine for HTML 5’s Canvas element. With it, you can create smooth, Flash-like animation effects for browsers that support Canvas.

Burst

JSTestDriver

JSTestDriver is a Java-based framework for creating unit test following Test-Driven Development philosophies and best practices. Be sure to check out this video demonstration of JSTestDriver in action.

jsPDF

This library allows you to create PDF’s using nothing else but JavaScript. See the jsPDF demo page to see the library in action.

Useful JavaScript Libraries

GlassBox

GlassBox is a beautiful and refreshing take on modal windows that creates an interesting feeling of transparency as if you were looking through a glass. Check out the example page to see different types of GlassBox implementations.

GlassBox

jQuery TOOLS

jQuery TOOLS is a toolbox that gives developers some of the most popular UI design patterns at their disposal in an easy-to-use manner. View some of the things you can do with jQuery TOOLS in the project’s demo page.

jQuery TOOLS

Moousture

Moosture is a JavaScript library for dealing with mouse gestures, written on top of the MooTools framework.

Tablecloth

Tablecloth is a lightweight and unobtrusive JavaScript library for styling and adding dynamic user interaction to HTML tables.

Tablecloth

Unobtrusive Table Actions Script

This simple and lightweight library brings together a set of common and useful functions for dealing with HTML tables, such as zebra-striping rows, highlighting rows on mouse over, and column highlighting.

LivePipe

LivePipe is a set of widgets and controls for adding common user interaction components to web applications using the Prototype JavaScript framework.

LivePipe

JavaScript Graphical / Virtual Keyboard Interface

This JavaScript package adds a virtual keyboard interface into web pages.

JavaScript Graphical / Virtual Keyboard Interface

Tipmage

Tipmage is a JavaScript class for handling tooltips and annotations on images, similar to annotated images on Flickr.

Tipmage

qGallery

qGallery is a simple but beautiful JavaScript for creating image galleries with smooth and slick animation effects.

qGallery

Educational JavaScript Resources and Tutorials

Ajax Frameworks Decision Center

For large companies, committing to a JavaScript/Ajax framework such as Prototype, MooTools, or jQuery is a big decision because it affects a large amount of employees and will dictate the direction of the company’s client-side interaction and RIA development philosophies. Using the Ajax Frameworks Decision Center gives you an organized, quantitative, and thorough method for making a solid decision.

Ajax Frameworks Decision Center

jQuery vs MooTools

This single-page site by MooTools Dev Team member Aaron Newton is a comparative look into jQuery versus MooTools.

Ajax Framework Analysis Results

This analysis of popular JavaScript/Ajax frameworks (Dojo, Ext JS, GWT, YUI) is a great resource for gathering research data for your own frameworks: the analysis matrix factors in criteria such as scalability, extensibility, quality and quantity of documentation, and much more. You can adapt this matrix, tweak their weights, and modify criterions to help you decide which JS framework to go with.

Ajax Framework Analysis Results

Sexy Drop Down Menu w/ jQuery & CSS

In this tutorial, you’ll learn how to create a multi-tiered drop down menu with the use of the jQuery library.

Sexy Drop Down Menu w/ jQuery & CSS

Easy Display Switch with CSS and jQuery

This tutorial outlines a method for using jQuery to smoothly-transition into different viewing modes, which can be helpful in image galleries.

Easy Display Switch with CSS and jQuery

Create a Slick and Accessible Slideshow Using jQuery

This is a step-by-step jQuery tutorial that I wrote for creating a simple and slick slideshow that can be adapted to display different content types. Check out the demo page to see the slideshow in action.

Create a Slick and Accessible Slideshow Using jQuery

Learning Advanced JavaScript

John Resig has a slideshow-style, web-based tutorial on advanced JavaScript development. It is a wonderful stepping-stone for JavaScript developers ready to make the leap into RIA development using JavaScript.

Learning Advanced JavaScript

JavaScript tests & Compatibility tables

This resource is a well-organized cheatsheet for JavaScript methods cross-browser compatibility backed by sample tests that you can run to see how they work (or don’t work) in your browser.

JavaScript tests & Compatibility tables

Code Conventions for the JavaScript

On this page, you can find suggested coding conventions for JavaScript. It is important to note that there is no one correct convention, but this is a great place to start developing your own.

About the Author

Jacob Gube is a bilingual web developer (JavaScript and PHP), web designer, author, and the Founder/Chief Editor of Six Revisions: an online publication that shares useful development and design resources and tutorials for web professionals. If you would like to contact him, send him a tweet and follow him on Twitter.


© Smashing Editorial for Smashing Magazine, 2009. |
Permalink |
Be the first to comment |
Add to del.icio.us | Digg this | Stumble on StumbleUpon! | Tweet it! | Submit to Reddit | Forum Smashing Magazine

Post tags: , , , ,

View Original Article

Blogged with the Flock Browser

22
Jun 09

Fun with 3D CSS and video

How about starting the week with something fun. Zach Stronaut has been having fun with 3D effects via CSS such as his isocube above, which is brought to you with simple HTML (including a video tag for a playing video on the surface!) and some CSS like this:

CSS:

  1.  
  2. .face {
  3.     position: absolute;
  4.     width: 200px;
  5.     height: 200px;
  6.     overflow: hidden;
  7.     font-family: monospace;
  8.     font-size: 24px;
  9. }
  10.  
  11. .top {
  12.     top: 0;
  13.     left: 89px;
  14.     background: #fff;
  15.     color: #999;
  16.     -webkit-transform: rotate(-45deg) skew(15deg, 15deg);
  17.     -moz-transform: rotate(-45deg) skew(15deg, 15deg);
  18. }
  19.  
  20. .left {
  21.     top: 155px;
  22.     left: 0;
  23.     background: #999;
  24.     color: #333;
  25.     -webkit-transform: rotate(15deg) skew(15deg, 15deg);
  26.     -moz-transform: rotate(15deg) skew(15deg, 15deg);
  27. }
  28.  
  29. .right {
  30.     top: 155px;
  31.     left: 178px;
  32.     background: #ccc;
  33.     color: #666;
  34.     -webkit-transform: rotate(-15deg) skew(-15deg, -15deg);
  35.     -moz-transform: rotate(-15deg) skew(-15deg, -15deg);
  36. }
  37.  
  38. .shadow {
  39.     top: 310px;
  40.     left: -89px;
  41.     background: black;
  42.     opacity: 0.5;
  43.     -webkit-transform: rotate(-45deg) skew(15deg, 15deg);
  44.     -moz-transform: rotate(-45deg) skew(15deg, 15deg);
  45. }
  46.  

Chris Blizzard posted his Open Video Conf talk on connecting HTML5 video showcasing the great demos of Paul Rouget :)

View Original Article

Blogged with the Flock Browser

19
Jun 09

Aviary launches Falcon, image markup app!

Aviary is proud to release Falcon, our image markup editor. Falcon is a blazing fast visual markup tool that was designed to work with Aviary’s new Firefox Extension (Talon) for screen capture, as well as for stand-alone image preparation.

Launch URL:
http://aviary.com/launch/falcon

FEATURES

Screen Capture
Using the latest version of Aviary’s new Firefox Extension (Talon), users can quickly perform screen capture on select regions or even entire web pages (including content hidden below the fold). Users can capture data to their desktops, clipboards, or even markup and edit the content directly in Aviary’s applications. Download the latest version here! It’s not up on Mozilla’s Addons site yet.

screen-capture-with-talon-2.png by Avi on Aviary

Blazing Fast / Instant On
Falcon is under 90k in size, resulting in an instantaneous load time. Anyone that has Aviary’s Firefox extension Talon installed can access and edit screen captured data without any server interaction (it all takes place right within the browser).

Easy Color Extraction
Use the built-in color picker tool to extract web color values from images and screenshots. This is awesome and simple for web designers!

Simple Editable Markup
Draw arrows, edit text, make shapes. Everything is selectable. Move, rotate and resize anything added to the screen. You can even recolor, add outlines and shadows.

edit-captured-data-with-falcon-4.png by Avi on Aviary

Built-in Sharing
Host your file online for easy sharing or download it right to your desktop. You can even easily post it to Twitter and other social sharing services.

Image Preparation Features
Crop, Rotate and Resize your image quickly and easily to prepare it for the web.

Aviary Application Integration
Need more design power? Port your image into 4 different Aviary tools (color editor, advanced image editor, effects editor and vector editor).

Intuitive Interface
Designed for bloggers, the interface is intuitive, quick to use and responsive.

Ideal for Netbook Use
The app resizes perfectly for use in netbooks with small screen resolutions.

FAQ

Q: Why did you codename it Falcon?
A: Peregrine Falcons are recorded as the world’s fastest birds. We thought that was an apt code name for our fastest app.

Q: What requirements do I need to run Falcon?
A: Any browser with Adobe Flash 9+ installed. Flash 10 is strongly recommended. Future versions of Falcon will be developed specifically for Flash 10.

Q: How much does Falcon cost to use?
A: Totally free to use. Aviary Pro members also gain additional storage options like privacy and watermark control for only $24.99 yearly.

Q: Is Falcon available to access through Aviary’s API?
A: Yes. Any website can integrate with it directly. More information at http://aviary.com/apidocs

Q: Can I use a different Aviary app after performing screen capture in Talon?
A: Yes, just edit the Add-on Settings to choose a different app as your default choice instead of Falcon.

Comment on this post

View Original Article

Blogged with the Flock Browser

19
Jun 09

Los chicos de cristalab prueban Google Wave, el Wave Protocol y sus gadgets

Esta es la primera parte de una serie de artículos de análisis de Google Wave. Puedes leer la segunda parte: Google Wave, correctores, traductores, robots y su sistema.

Hace poco recibí la noble invitación de alguien quien prefiere seguir en el anonimato, para unirme a sus fuerzas en el Team Cristalab y descubrir la magia detrás de Google Wave.

Para quienes estuvieron perdidos en una isla sin conexión a Internet: El pasado 28 de Mayo, Google presento a través de g I/O, lo que ellos aseguran cambiara de manera radical la manera de ver la web, estoy hablando de Google Wave.

Solo he de aclarar que antes de dar mi crítica: Google Wave se encuentra en una versión preliminar, mucho más preliminar a lo que cualquiera haya esperado. Aun hay algunos aspectos disfuncionales e incómodos que de aquí a un año quizás sean todo un éxito.

Gadgets, ¿Serán tan buenos?

En lo personal, una de las cosas que mejor me brincaron a la mente luego de sus primeros ruidos, fue la posibilidad de incrustar aplicaciones libres y apreciar cómo son manejadas por el público dentro de tu wave.

Gadgets en Wave: Lo bueno, lo feo y lo malo

Lo bueno es que con todo el impulso que Google le ha dado a HTML 5 en últimas fechas y la concretada popularidad de javascript, me resulta fácil imaginar que una vez liberado al público, todo tipo de aplicaciones llenas de onda estarán ahí esperando.


Al dar click sobre los enlaces, estos no te llevan a ninguna parte. Esto porque Wave los ahoga.

Ahora debo admitirlo, lo feo es que resulta muy tedioso el flujo para crear un gadget en Wave. Primero debes inventar algo en tu editor externo, luego pegar lo recién hecho a tu Wave y finalmente refrescar el mismo para ver si funciono correctamente o caso contrario, comenzar desde el principio. ¿Y lo malo? Muchos eventos, funciones y demás trabajos con datos de Javascript que están literalmente castrados. Incluso detalles hechos en *.swf que no funcionan.

Google no nos dejara improvisar en aplicaciones como supusieron.

Chat, edición y colaboración en tiempo real

Al planificar esta serie de artículos con el resto del staff de Cristalab (aunque suene irónico), fue inevitable hacerlo a través de un Wave.


Una de las inusuales charlas de administración que tuvimos

La velocidad y eficiencia con la que trabaja el llamado Wave Protocol es asombrosa. Le da un realce al término tiempo real. Es casi como leer lo que están pensando todos durante la conversación. Olvídate de Messenger y gTalk una vez que esto salga del horno. De aquí varias cosas se me ocurren:

  • Estudiantes. Al hacer una tan frecuente tarea en equipo, donde cada compañero está en su respectiva casa y pueden aportar al documento sin perderse de ningún detalle. Estarás de acuerdo en que lo más difícil ahora será organizar el trabajo, pero tal y como en la vida real.
  • Profesionales. Una conferencia online completamente improvisada se puede lograr de manera eficiente, solamente invitas a tus compañeros de área, charlas un poco y rápidamente tendrás un eficiente historial de todos los puntos comentados.

Nuestro panel de contactos, donde destacan los bots de gWave

Sin duda esta seria una joya ahora mismo, de no ser por que no tenemos muchos contactos amigos, no los hay. Pero si a esto le agregamos los muchos bots que nos harán la vida cómoda como Tweety para fastidiar en twitter, Rosy como traductora entre foráneos y Polly para comer semillitas de girasol.

Interfaz amigable, lo que nos mueve

Un aspecto muy importante, del que nadie ha hablado, es el aspecto.

Quizás seamos pocos quienes le prestemos atención a detalles como estos, en especial si tomamos en cuenta que gWave buscara hospedarnos como en nuestra propia casa.

Lo gráfico como de costumbre está muy bien cuidado, procurando limpieza. Considerando la nula documentacion para manejarnos todos ahí dentro, ha sido la pura intuición la que nos ha ayudado. Me atrevo a decir que gWave se enfoca en esto a tal medida que con la acertada adición de drag and drop a los waves, sumado a que basten un par de clicks para hacer prácticamente todo. Hasta nuestros abuelos sabrían manejarse solos.


El letrero que dice “dev preview” es la excusa perfecta para que todo falle

Pero no todo son ponys de azúcar, lo que aun parece no adaptarse es la funcionalidad de sus agradables elementos. Por ahora, al tocar algo, Wave se tropieza y te manda a comenzar de nuevo. Hay muchos botones que solo son estáticos y no ofrecen nada a la experiencia. En ocasiones es como esperar interacción de parte de un cartón de leche.

Aclaro. Google Wave aun tiene mucho que ver por delante considerando las muy altas expectativas que el mundo lleva de esto. Pero valdrá la pena a corto plazo, a través de trabajo arduo por parte de el equipo de Google y este me parece un bajo precio por ser quienes miraron el futuro en comunicaciones y redes sociales a través tan prometedor proyecto.

Enviar comentario

View Original Article from cristalab