Tomada de la web
En esta publicación (que dividiremos en dos partes) vamos a darles algunas herramientas y consejos, para todos(as) aquellos(as) nuevos(as) emprendedores(as) que quieren tener su negocio en linea y están buscando buenas ideas para desempeñarse. Adicionalmente, para que sepan que no es necesario tener tanta infraestructura para comenzar. Es importante que sepan que estas recomendaciones son a título personal, en base a las experiencias que hemos tenido con nuestra tienda el Kiosco Friki, no estamos promocionando nada, ni estamos recibiendo ningún beneficio de nadie por mencionarlos. (cada herramienta la iremos mencionando, sin ningun orden en particular y enumerando, luego hablaremos un poco de ellas aquí).

Al comenzar con un nuevo negocio, deben saber y entender, que aún cuando no sea una tienda física se requiere el mismo esfuerzo y trabajo como si lo fuera (quizás hasta mas), porque deberán tener el tiempo para dedicarle a sus productos, más el tiempo para promoción, planificación, publicación, entre otros. Un detalle más a considerar, es el hecho de tener un conocimiento mínimo en el manejo de equipos electrónicos: computadoras, celulares, tabletas, cámaras, impresoras, entre muchos otros, y de no tener estos conocimientos, es recomendable tener cerca a alguien que los pueda apoyar, para así plasmar en la web todas las ideas que tengan en mente. Aún cuando no sean una tienda en linea, en este momento la tecnología es uno de los mayores recursos para la promoción de tiendas y productos, de una forma económica.

Nuestro nombre y eslogan
Para empezar debemos tener claro qué queremos ofrecer y vender, en base a eso estableceremos la temática, colores, logos, imágenes, y por su puesto crearemos un Nombre, hay personas que guardan imágenes y fotos en sus equipos o tableros como los que ofrece Pinterest [1], para ir creando temas que luego nos sirvan de inspiración (OJO, no para copiar). También pueden usar herramientas para generar paletas de colores en base a una imagen principal, como es el caso de Color Palette Generator [2], solo debes subir la imagen y ella te dará los colores que contiene. Luego de esto, si tenemos algún conocimiento mínimo para crear diseños podemos comenzar dándole forma al Nombre escogido, utilizando un tipo de fuente/letra (sin derechos de autor) de páginas como Dafont [3], y colores en función a nuestra idea, adicionalmente pueden crear un eslogan, y por supuesto un logo que será lo que distinga su marca, esto es importante porque recuerden que será la imagen que el cliente guarde en mente. Para crear nuestros imágenes y logos (y todos los diseños de productos del Kiosco Friki) utilizamos las herramientas Libres para diseño y edición Gimp [4] e Inkscape [5].
                                                
En nuestro caso cuando tuvimos el nombre en mente, lo primero que hicimos fue crear un correo de Gmail [6], ya que ofrece seguridad y adicionalmente la gente de Google cuenta con muchos servicios integrados, que podrás manejar con la cuenta previamente creada. El segundo paso debía ser crear la página web, pero como no teníamos los conocimientos, ni el tiempo para crearla, decidimos utilizar las opciones de Blogger [7] con las que cuenta Google, y adaptarlo a las necesidades que iban surgiendo (aún pensamos contratar una empresa para hacer una pagina más formal, pero por el momento nos mantenemos con el blog). Es importante que sepan que existen otras opciones como Wordpress [8], solo que blogspot ya viene integrado como comenté anteriormente, además cuenta con otras opciones como la galería de las imágenes, llamada Picasa web [9] que ahora redirecciona también a la galería de Google+ [10], donde fuimos creando los álbumes de cada uno de nuestros productos, para referir a nuestros clientes lo que estamos vendiendo.

Luego de unos meses, pagamos el nombre del dominio, específicamente www.kioscofriki.com.ve y ya de esta manera pudimos empezar a personalizarnos más, los clientes nos empezaron a conocer por medio de la página, y además creamos correos de contacto con nuestro dominio kioscofriki.com.ve, lo cual hace que sea mas formal al momento de enviar comunicaciones. Para la compra de dominios en Venezuela es por medio de la empresa CONATEL, específicamente en la sección Registro de Dominios. Y el mismo Google te permite crear y administrar estas cuentas con dominios específicos.

La próxima semana estaremos publicando la II parte de las Herramientas para Negocios Web, les recordamos que es una publicación hecha a título personal, y esperamos que nos comenten si les ha resultado útil o si tienen algunas herramientas adicionales a las mencionadas. Recuerda que para cualquier duda, comentario o información puedes escribirnos a consulta_friki@kioscofriki.com.ve

Y recuerda, si esta información te ayudó y quieres colaborarnos económicamente puedes hacer tu donación aquí

Alt Text

Hace poco tiempo, Facebook lanzó una nueva característica que permite incorporar mensajes de los sitios externos, en nuestro sitio web o blog. Embedded Facebook Post se reproducen exactamente como aparecen en Facebook, incluyendo fotos, videos, hashtags, igual y Compartir botones y cuadros de comentarios

Desventajas?

Si, solamente los post públicos de las páginas de Facebook y los perfiles se pueden incrustar.

Ejemplo

Alt Text

Lectura recomendada

Seguir este enlace

Apple Event

Hoy es el evento de Apple en los que van a presentarse presumiblemente los nuevos iPhone, el esperado wearable, y quizas alguna sorpresa más...

Me pregunta un viejo amigo que está trabajando como coordinador de un programa de Ingeniería en una Universidad del suroccidente, con el fin  estructurar mejor el contenido del programa y graduar mejores ingenieros:

¿Cuál consideras que serían las competencias que debería tener todo ingeniero en electrónica y telecomunicaciones para que pueda afrontar el mercado laboral? 

Quiero compartir mi respuesta, que fue la siguiente:

Hola,

Muchas gracias por tenerme en cuenta para esto, para mí el cierre de la brecha entre empresa y academia siempre ha sido una preocupación desde que estaba en la universidad.

Hay varias cosas que en mi experiencia los ingenieros de hoy en día deben aprender y que las agrupo en 3 categorías:

1. Habilidades técnicas:

Lo de siempre, los ingenieros deben saber cómo resolver un problema, analizándo todos los requisitos a cumplir de manera sistémica. Hoy en día es más importante saber cómo buscar la información necesaria para resolver los problemas que aprenderla de memoria, ser capaces de llegar al fondo de cómo funcionan las cosas, un ingeniero debe tener tanto una visión global de todas las tecnologías, como un conocimiento profundo de alguna de ellas en particular. Y sobretodo, leer la Carta a García.

Una habilidad que es importante inculcar, es la de publicar, compartir, crear un portafolio de proyectos que son la carta de presentación, participar en comunidades, tener un repositorio de código, contribuir a un proyecto open source, publicar en blogs, etc.  Ojalá todo en INGLES

Pero lo más importante sería enseñarles todas las variables que hacen que un producto sea de gran calidad: desde el diseño, pasando por la creación, pero no quedarse ahi, sino pensar también cómo eso se inserta en un entorno de producción escalable, cómo se debe probar, documentar y mantener en la vida real.

2. Habilidades de negocios


En un mundo globalizado no solo se requiere generar soluciones, sino saber cómo éstas se llevan al mercado. Los ingenieros de hoy deben entender cómo se gestiona un proyecto con herramientas como el PMBOK, pero también con AGILE, Scrum, etc.  Hay que enseñarles a que sepan plantear un proyecto como un caso de negocio, que piensen como emprendedores, que no se queden solo en una idea, sino que sepan cómo llevar esa idea a satisfacer un mercado (Lean Startup), cómo vender, cómo manejar un presupuesto.

3. Habilidades humanas

Finalmente, los ingenieros tienden a ser muy cuadrículados y encerrados en su mundo. Hay que cultivar habilidades de comunicación, oral y escrita, habilidades gráficas, cómo hacer una presentación agradable a la vista, que comunique las ideas, cómo diseñar interfaces de usuario agradables, usables, deseables.  Cómo interactuar con un equipo multidisciplinario, cómo mantener un ritmo de vida productivo y saludable.

Lo más importante es que sepan cuál es su pasión. Un ejercicio interesante que se me ocurre, sería ponerlos a investigar ofertas laborales en bolsas de empleo, o perfiles de gente muy dura en LinkedIN, que ellos vean un perfil o Biografía de alguien que sea su modelo a seguir. Y luego que afronten su aprendizaje con ese perfil en mente. Que cuando salgan, estén ya perfilados hacia una meta de carrera real.

Son muchos los retos de un ingeniero en la vida real, espero que esta información te sea de utilidad,

Un abrazo,

Alejandro Rios.

Sigo en mi travesía por aprender Python y que mejor forma que solucionar problemas en funciona a la privacidad.

Varias personas me comentaron lo tedioso que es eliminar mensajes privados en Twitter así que decidi hacer una herramienta que me permita automatizar todo esto.

Lo primero es crear una app en twitter visitando apps.twitter.com y otorgarle permisos de lectura, escritura y DMs. Allí mismo pueden generar el consumer_key, consumer_secret, access_token_key y el access_token_secret.

El script no es nada complejo y de hecho hay oportunidades para mejorarlo, aqui se los dejo:

# https://github.com/orvtech/Python-tools-for-twitter
import json
import requests
from requests_oauthlib import OAuth1


consumer_key='<YOUR CONSUMER KEY HERE>'
consumer_secret='<YOUR CONSUMER SECRET HERE>'
access_token_key='<YOUR ACCESS TOKEN HERE>'
access_token_secret='<YOUR ACCESS TOKEN SECRET HERE>'


def get_messages_ids():
  api_url='https://api.twitter.com/1.1/direct_messages.json'
  payload = {'count':'200', 'cursor':'-1', 'skip_status':'1'}
  auth = OAuth1(consumer_key, consumer_secret, access_token_key, access_token_secret)
  r = requests.get(api_url, stream=False, auth=auth, params=payload)
  if r.headers['x-rate-limit-remaining'] and r.headers['x-rate-limit-remaining'] == "0":
    print("We reached rate limit for ", api_url)
    print("Try again at", r.headers["x-rate-limit-reset"])
    quit()
  DMs = json.loads(r.content)
  message_ids=[]
  for x in range(len(DMs)):
    current_ids=DMs[x]['id']
    message_ids.append(current_ids)
  api_url='https://api.twitter.com/1.1/direct_messages/sent.json'
  payload = {'count':'200'}
  r = requests.get(api_url, stream=False, auth=auth, params=payload)
  if r.headers['x-rate-limit-remaining'] and r.headers['x-rate-limit-remaining'] == "0":
    print("We reached rate limit for ", api_url)
    print("Try again at", r.headers["x-rate-limit-reset"])
    quit()
  DMs = json.loads(r.content)
  for x in range(len(DMs)):
    current_ids=DMs[x]['id']
    message_ids.append(current_ids)
  return message_ids


def nuke_messages(DMs):
  for x in DMs:
    api_url='https://api.twitter.com/1.1/direct_messages/destroy.json'
    payload = {'id':x}
    auth = OAuth1(consumer_key, consumer_secret, access_token_key, access_token_secret)
    r = requests.post(api_url, stream=False, auth=auth, params=payload)


while True:
  DMs = get_messages_ids()
  if DMs and len(DMs) > 0:
    print('Deleting:', DMs)
    nuke_messages(DMs)
  else:
    print('There appears that there are no more DMs', DMs)
    break

Usa solo 2 funciones, una en la que invoca primero los primeros 200 mensajes recibidos y luego los primeros 200 mensajes enviados. Tras evaluar si en realidad existen mensajes, se le pasan los IDs de los mensajes a eliminar a la segunda función y se repite este proceso hasta que no existan mas IDs a eliminar.

Tanto las llamadas de al API para saber los IDs de los mensajes enviados como las de los mensajes enviados tiene un limite así que implemente mecanismos para monitorear si se llego al limite leyendo las cabeceras de las peticiones HTTP.

Por lo pronto pueden hacer un fork de este repositorio de github En un futuro me gustaría convertirlo en una aplicación web usando flask o algo por ese estilo.


Hace un par de semanas de forma "misteriosa" no podia ingresar al blog y varias personas me habian notificado este inconveniente y me puse a investigar que pasaba...

Lo que más me llamo la atencion a esto es que si hubieran bloqueado la ip del servidor donde estoy alojado TODOS los dominios no serian accesibles pero no era el caso, solamente mi dominio era el problema. TT__TT

Ping

``` $ ping abr4xas.org ping: unknown host abr4xas.org ```
### dig
``` $ dig abr4xas.org ; <<>> DiG 9.9.5-3-Ubuntu <<>> abr4xas.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 46967 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;abr4xas.org. IN A ;; Query time: 632 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Tue Aug 19 14:00:52 VET 2014 ;; MSG SIZE rcvd: 40 ```
### El problema: Despues de mucho leer, preguntar (gracias a todos los que me dieron una respuesta) llegue a: Las DNS de Google - 8.8.8.8 - 8.8.4.4 Como pueden ver al ejecutar: `$ host abr4xas.org 8.8.8.8` esto es lo que obtengo:
``` $ host abr4xas.org 8.8.8.8 Using domain server: Name: 8.8.8.8 Address: 8.8.8.8#53 Aliases: Host abr4xas.org not found: 2(SERVFAIL) ```
### Solución: Instale TOR en mi pc, para verificar que pasaba con mi dominio y podia entrar sin ningun problema entonces, debido a eso tome la siguiente decision: Cambiar las DNS por las de Open DNS: - 208.67.222.222 - 208.67.220.220 Y problema resuelto :D ya las personas que tenian las DNS de google cambiaron y pueden entrar sin problemas.

El pasado fin de semana he realizado varios cambios al blog en lo que destacan:

  • Lista de correos:

MailChimp

Más de 6 millones de personas utilizan MailChimp para crear, enviar y realizar un seguimiento de boletines por correo electrónico. Si usted trabaja por cuenta propia, a gestionar proyectos para clientes, o usted trabaja para una compañía Fortune 500, MailChimp tiene características y las integraciones que se adapte a sus necesidades de marketing de correo electrónico.

Fuente: http://mailchimp.com/about/

Justificación

Porque quiero y puedo PROBLEM? xD no, en serio... Esta lista es para notificar las nuevas publicaciones que se hagan en el blog.

De seguro piensan que los lectores de feed hacen esto y si, ciertamente pero he monitoreado algunos lectores de feed y me he percatado que no son tan rapidos en actualizar y mostrar las nuevas publicaciones.

Quieres suscribirte a la lista?

Pues, en la barra lateral y al final del post hay un pequeño formulario "Subscribe to our mailing list" "Join our awesome newsletter!" coloca tu correo electronico y espera el correo de confirmación.

¡Gracias por unirte!

Sobre el feed

Otros de los cambios que hice en el blog fue relacionado con el feed, anteriormente habia hecho un post donde indicaba que habia cambiado la url del feed a feedburner pero me percate de unos problemas que no pude solventar y por eso les pido disculpas y los invito a que me agreguen a sus lectores de feed usando este enlace: http://blog.abr4xas.org/feeds/all.atom.xml o si usan feedly haciendo clic aquí.

UPDATE

Ya la url del feedburner esta funcional, realmente nunca pude descubrir que pasaba pero en fin, si es de su preferencia sigan este enlace para saber mas.

Contribuir

Si desean realizar alguna publicación en el blog los invito a leer este post. Ahí se indica claramente los pasos a realizar para contribuir :)

Gracias por leer y por la visita.

Alt Text

Froala WYSIWYG Editor se basa en las últimas tecnologías y de acuerdo a las últimas tendencias.

Caracteristicas:

  • Cross-browser
  • Cross-platform
  • Complete Functionality
  • Autosave
  • Retina Ready
  • High Performance

Integrando Froala

Version actual: 1.1.7

Requerimientos:

  • jQuery 1.10.2 o superiror.
  • Font Awesome 4.1.0.

Con el fin de integrar froala es necesario incluir:

  • froala_editor.min.js
  • froala_editor.min.css

Eso dentro de <head> </ head>.

Un ejemplo practico de lo que debemos incluir:

``` // Include Font Awesome <link href="../css/font-awesome.min.css" rel="stylesheet" type="text/css"> // Include editor style file <link href="../css/froala_editor.min.css" rel="stylesheet" type="text/css"> // Include jQuery library <script src="http://code.jquery.com/jquery-1.10.2.js">script> // Include editor javascript file <script src="../js/froala_editor.min.js">script> ```
Y lo más importante:
``` <script> $(function(){ $('#edit').editable({inlineMode: false}) }); </script> ```
Donde va el editor? ------------------- Pues, sencillo va dentro de:
``` <section id="editor"> section> ```
Veamos este ejemplo: imaginando que tenemos un formulario para realizar una publicación y si ese form usa frolala el mismo quedaria de la siguiente forma:
``` <section id="editor"> <form action="" method="post" role="form"> <div class="form-group"> <input class="form-control" type="text" id="title" name="title" placeholder="Title..." value="Titulo"> div> <div class="form-group"> <textarea class="form-control" rows="10" placeholder="Enter text ..." id="edit" name="content"> textarea> div> <br> <button type="submit" class="btn btn-primary">Postbutton> form> section> ```
Resultado final --------------- ![Alt Text](https://raw.githubusercontent.com/abr4xas/post/master/images/ejemplofroala.png) Enlaces de interes: ------------------- - . - . Gracias a @echevemaster por recomendarme este editor :D

Alt Text

Los submódulos en git permiten insertar uno o más repositorios externos dentro de otro repositorio. Es decir, permiten manejar uno o varios subproyectos dentro de un gran proyecto versionado con git. Esta característica puede ser útil, por ejemplo, para referenciar archivos que estén en proyectos complementarios, pero administrados por diferentes grupos o personas.

Para resumir, los submódulos en git permiten dividir o combinar un proyecto en varios repositorios separados.

Entremos a la razón de ser de este post:

Que pasa cuando estamos agregando un submodulo y obtenemos:

``` 'NombreCarpeta' already exists in the index ```
Eso nos indica que `NombreCarpeta` ya se encuentra en nuestro directorio de trabajo. Como podemos solucionar: ------------------------ Podemos hacer lo siguiente:
``` git ls-files --stage NombreCarpeta ```
Y vamos a tener una salida más o menos a esta:
``` 160000 d023657a21c1bf05d0eeaac6218eb5cca8520d16 0 NombreCarpeta ```
Entonces, para eliminar la carpeta del index hacemos:
``` git rm -r --cached NombreCarpeta ```
Y ya con esto podemos agregar nuevamente el submodulo sin problemas :D Espero les sea de ayuda :D

Se que suena ilógico, pero si vives en Venezuela, Cuba, Iran, Argentina, China, o cualquier otro país donde sospechas que el gobierno no le agrada mucho tu libertad de expresión debes deshabilitar la verificación de dos factores y desvincular tu celular inmediatamente.

Si tienes duda de como hacerlo, aqui te dejo un video:


El problema es que pocas empresas se imaginan que van a ser de vital importancia en países donde sus ciudadanos son oprimidos y donde el estado tiene acceso a sistemas de mensajería mobil sin orden judicial ni debido proceso como el caso de Venezuela donde Mario Silva en conjunto con Juan Almeida pinchaban teléfonos a diestra y siniestra en vivo en television.

Actualmente son los mismos personajes los que están detrás de la reciente ola de robos de cuentas y lo hacen forzando el mecanismo de verificación de dos factores a que envié un código de 6 dígitos de emergencia (en caso de que pierdas tu dispositivo) al numero de celular apoderándose de tu cuenta en cuestión de segundos.

Por ultimo, recomiendo periódicamente revisar que aplicaciones haz autorizado y revocar cualquiera que ya no uses, que no reconozcas o que sospeches que tiene un comportamiento abusivo.


Modus operandi

Para propagar su ataque dependían un poco de ingeniería social, se hacían pasar por su actual víctima para afectar mas usuarios y de esta forma silenciar sus cuentas.Así operan los robacuentas del gobierno:

  1. Se apoderan de una cuenta importante de la que saben el teléfono asociado vía SMS.
  2. Desde esa cuenta envían un mensaje privado a sus próximas víctimas diciendo que tienen un notición pero prefieren compartirlo via whatsapp para lo que piden "cuenta de de whatsapp" (numero telefónico).
  3. Se mueven a la próxima cuenta y repiten el proceso.

Si tienes alguna otra sugerencia puedes dejarla en los comentarios para irla agregando a este articulo y terminar con una lista solida pero simple de como cuidarnos.