Page 1
por Carlos Toxtli
Herramientas para
desarrollar rápidamente
Page 2
Presentación
Mexicano
15 años de experiencia en TI
Maestro en Innovación Empresarial y
Tecnológica
Page 4
Introducción
El proceso de desarrollar cualquier solución
informática cada vez es más sencillo y rápido
de hacer. Esta guía va dirigida a todo tipo de
audiencia que guste de hacer las cosas por si
misma, con o sin conocimiento de
programación.
Page 5
¿Qué desarrollar?
Muchas veces los desarrollos surgen a petición
de clientes, otras veces suelen ser
necesidades de nuestro negocio y muchas
otras suelen ser ideas que queremos
emprender.
Page 6
Para un cliente
Los requerimientos de un cliente pueden ser
prototipados previamente al desarrollo de
forma rápida, de esta manera el cliente tendrá
una idea más clara de lo que va a recibir.
Page 7
Para nuestro negocio
Muchas veces nuestras necesidades pueden
ser cubiertas con desarrollos sencillos de
plataformas existentes, es importante saber
cuáles existen y cuáles son open source.
Page 8
Para nuestro emprendimiento
Es importante si queremos crear una nueva
idea, primero validar que es una necesidad real
que varios comparten es por ello que mostrarla
y detectar personas interesadas es importante
antes de comenzar y descubrir si realmente
funcionará.
Page 9
Lenguajes empleados
La tecnología que se ha convertido en una
tendencia es HTML5 por lo que en está guía
nos enfocaremos en HTML5, javascript y CSS3
entre otras.
Page 10
Prototyping
Es importante cuando necesitamos mostrar a
alguien una idea enseñar como se verá.
Existen prototipos de bajo nivel “Wireframes”
que sólo muestran de forma esquemática cómo
funcionará. Existen también los Mockups que
muestran de forma gráfica como se verá.
Page 11
Prototyping
Esto se trata de demostrar rápido y ser
prácticos, por lo que les recomiendo no perder
su tiempo en plataformas de wireframes o de
mockups no funcionales. Los mejores son
aquellos que ya generan un prototipo y el
código para ser descargado.
Page 12
El modelo de prototipos es empleado para el
desarrollo en la ingeniería de software.
http://es.wikipedia.org/wiki/Modelo_de_prototip
os
Prototyping
Page 13
Prototyping
Es siempre importante ver varias opciones
para ver cuál de se ellas se aproxima a lo que
ustedes, su posible usuario o su cliente tienen
en mente. A continuación mostramos varias de
ellas
Page 14
http://www.invisionapp.com
prototyping - invision
Page 15
prototyping - popapp
https://popapp.in
Page 16
prototyping - marvel
https://marvelapp.com/iphone/
Page 17
prototyping - proto.io
https://proto.io
Page 18
prototyping - justinmind
http://www.justinmind.com
Page 19
prototyping - ninja mock
http://ninjamock.com
Page 20
prototyping - napkee
http://www.napkee.com
Page 21
prototyping - reify
http://www.smartclient.com/product/reify.jsp
Page 22
prototyping - Appery
http://appery.io
Page 23
prototyping - appmakr
http://www.appmakr.com
Page 24
prototyping - balsamiq
http://balsamiq.com
Page 25
prototyping - appgyver
http://www.appgyver.com/prototyper
https://composer.appgyver.com/
Page 26
prototyping - bootply
http://www.bootply.com
Page 27
prototyping - webflow
https://webflow.com
Page 28
prototyping - divshot
http://divshot.com
Page 29
prototyping - sitesupra
http://sitesupra.com
Page 30
prototyping - froont
https://froont.com
Page 31
prototyping - corporatecentral
http://corporatecentral.com
Page 32
prototyping - duda
http://dudamobile.com
Page 33
prototyping - knack
https://www.knackhq.com
Page 34
prototyping - buildfire
http://buildfire.com
Page 35
prototyping - taplytics
https://taplytics.com
Page 36
prototyping - appsbar
http://www.appsbar.com
Page 37
prototyping - appypie
http://www.appypie.com
Page 38
prototyping - eachscape
https://eachscape.com
Page 39
prototyping - appmachine
http://www.appmachine.com
Page 40
prototyping - biznessapps
http://www.biznessapps.com
Page 41
prototyping - mobileroadie
https://mobileroadie.com
Page 42
prototyping - appsme
http://www.appsme.com
Page 43
prototyping - mippin
http://www.mippin.com
Page 44
prototyping - Game Salad
http://gamesalad.com
Page 45
prototyping - como
http://www.como.com
Page 46
prototyping - wakanda
http://www.wakanda.org
Page 47
prototyping - cloud4j
http://www.cloud4j.com/webapp-builder.html
Page 48
prototyping - mozeo
http://www.mozeo.com
Page 49
prototyping - app.io
https://app.io
Page 50
prototyping - codiqa
https://codiqa.com
Page 51
prototyping - kinvey
http://www.kinvey.com
Page 52
prototyping - keen.io
https://keen.io
Page 53
prototyping - urbanairship
http://urbanairship.com
Page 54
prototyping - apigee
http://apigee.com
Page 55
prototyping - Cloudbase
http://cloudbase.io
Page 56
prototyping - telerik
http://www.telerik.com/appbuilder
Page 57
prototyping - App Inventor
http://appinventor.mit.edu
Page 58
prototyping - macaw
http://macaw.co
Page 59
prototyping - bootstraptor
http://bootstraptor.com
Page 60
Scaffolding
La técnica que nos permite a partir de un script
de base de datos crear toda la interfaz gráfica
Page 61
scaffoling - phpscaffold
http://www.phpscaffold.com
Page 62
scaffolding - Rails scaffolding
http://www.tutorialspoint.com/ruby-on-rails/rails-
scaffolding.htm
Page 63
scaffolding - yeoman
http://yeoman.io
Page 64
scaffolding - Yii scaffolding
http://www.yiiframework.com/doc/blog/1.1/en/pr
ototype.scaffold
Page 65
scaffolding - knackhq
https://www.knackhq.com
Page 66
Iconos
Es importante siempre contar con una librería
completa de iconos, es por ello que veremos
algunas de las más completas y gratuitas. Un
icono en HTML5 se representa también como
una fuente usando CSS3.
Page 67
iconos - Iconmoon
https://icomoon.io
Page 68
iconos - glyphsearch
http://glyphsearch.com
Page 69
iconos - ionicons
http://ionicons.com
Page 70
iconos - Github Octicons
https://octicons.github.com
Page 71
iconos - foundation
http://foundation.zurb.com/icon-fonts.html
Page 72
iconos - Font Awesome
http://fortawesome.github.io/Font-Awesome
Page 73
Fuentes
Las fuentes web son empleadas para no usar
solo las básicas que HTML nos soporta
mediante CSS3 podemos extender la
capacidad de usar distintos tipos más.
Page 74
fuentes - Google fonts
http://www.google.com/fonts
Page 75
fuentes - Adobe TypeKit
https://typekit.com/fonts
Page 76
fuentes - Adobe Edge Web Fonts
https://edgewebfonts.adobe.com
Page 77
fuentes - css font stack
http://www.cssfontstack.com
Page 78
fuentes - font squirrel
http://www.fontsquirrel.com
Page 79
fuentes - fonts.com
http://www.fonts.com/web-fonts
Page 80
Back end
El código que está diseñado a correr desde el
servidor es el denominado Back end, ya no es
necesario contratar un servicio o pagar por ello,
a continuación veremos servicios que corren
en la nube que pueden ayudarnos.
Page 81
back end - parse
http://parse.com
Page 82
back end - Google Apps Script
http://script.google.com
Page 83
back end - backendless
https://backendless.com
Page 84
Cross platform
Son tecnologías que nos permiten programar
una sola vez y el código pueda ser ejecutado
en cualquier dispositivo.
Page 85
cross platform - appcelerator
http://www.appcelerator.com
Page 86
cross platform - phonegap
http://phonegap.com
Cordovahttp://cordova.apache.org
Page 87
cross platform - xamarin
http://xamarin.com
Page 88
cross platform - rhomobile
http://rhomobile.com
Page 89
cross platform - coronalabs
http://coronalabs.com
Page 90
cross platform - haxe
http://haxe.org
Page 91
cross platform - mojito
https://developer.yahoo.com/cocktails/mojito
Page 92
cross platform - monocross
http://monocross.net
Page 93
cross platform - livecode
http://livecode.com
Page 94
cross platform - telerik appBuilder
http://www.telerik.com/appbuilder
Page 95
Frameworks
Son herramientas que nos permiten programar
de una forma más sencilla. Es una librería o
conjunto de código reutilizable. A continuación
solo veremos los más usados en desarrollo
web multiplataforma.
Page 96
frameworks - kendo
http://www.telerik.com/kendo-ui
Page 97
frameworks - sencha
http://www.sencha.com
Page 98
frameworks - jquery mobile
http://jquerymobile.com
Page 99
Isomorphic
Desarrollo isomórfico implica programar una
sola vez y que ese mismo código funcione del
lado del servidor y del cliente. Por lo general se
utiliza javascript ya que es un lenguaje
interpretado ya por los navegadores y por
algunas tecnologías de servidor.
Page 100
isomorphic - Meteor
https://www.meteor.com
Page 101
isomorphic - rendr
https://github.com/rendrjs/rendr
Page 102
isomorphic - derbyjs
http://derbyjs.com
Page 103
isomorphic - ezeljs
http://ezeljs.com
Page 104
isomorphic - invisible.js
http://invisiblejs.github.io
Page 105
isomorphic - cassisjs
http://cassisjs.org
Page 106
isomorphic - react
http://facebook.github.io/react/
Page 107
isomorphic - Este.js
https://github.com/steida/este
Page 108
isomorphic - sarajs
http://sarajs.github.io
Page 109
isomorphic - mojito
https://developer.yahoo.com/cocktails/mojito
Page 110
isomorphic - LoopBack
http://loopback.io
Page 111
isomorphic - mootools
http://mootools.net
Page 112
isomorphic - brisket
https://github.com/bloomberg/brisket
Page 113
isomorphic - taunus
https://github.com/taunus/taunus
Page 114
isomorphic - chaplin
http://chaplinjs.org
Page 115
Cloud platforms
Nos permite almacenar nuestro código en la
nube, de esta manera podemos ya sea
controlar un servidor (VPS o dedicado) o solo
espacio y capacidad de correr código en él.
Muchos de ellos además de hosting soportan
servicios adicionales además de hosting.
Page 116
cloud - Google cloud
https://cloud.google.com
Page 117
cloud - openshift
https://www.openshift.com
Page 118
cloud - heroku
https://www.heroku.com
Page 119
cloud - google drive
https://support.google.com/drive/answer/28819
70?hl=es
Ponerles un nombre de dominio
https://gweb.io
Page 120
cloud - github pages
https://pages.github.com
Page 121
cloud - juju
https://juju.ubuntu.com
Page 122
cloud - aws
http://aws.amazon.com/es
Page 123
cloud - azure
http://azure.microsoft.com/es-es
Page 124
cloud - openstack
http://www.openstack.org
Page 125
cloud - rackspace
http://www.rackspace.com/es/cloud
Page 126
cloud - bluemix
https://console.ng.bluemix.net
Page 127
cloud - bitnami
https://bitnami.com
Page 128
cloud - digitalocean
https://www.digitalocean.com
Page 129
Repositorios
Un repositorio nos permite de forma ordenada
guardar nuestro código en un servidor y
poderlo compartir con otros programadores
evitando colisiones.
Page 130
repositorios - google code
http://code.google.com
Page 131
repositorios - github
http://github.com
Page 132
repositorios - bitbucket
https://bitbucket.org
Page 133
Ambientes compartidos
Los ambientes compartidos replican no solo el
código con otros colaboradores, sino también
una máquina virtual donde todos tienen un
sistema operativo con las mismas
configuraciones.
Page 134
ambiente - vagrant
https://www.vagrantup.com
Page 135
ambiente - docker
https://www.docker.com
Page 136
ambiente - ansible
http://www.ansible.com
Page 137
IDEs
Es importante poder programar donde quiera
que estemos es por eso que les muestro una
lista de las herramientas de desarrollo que nos
permiten programar y probar nuestro código
desde internet.
Page 138
IDE - nitrous
https://www.nitrous.io
Page 139
IDE - ideone
https://ideone.com
Page 140
IDE -compileonline
http://compileonline.com
Page 141
IDE - onlinecompiler
http://www.onlinecompiler.net
Page 142
IDE - compilr
https://compilr.com
Page 143
IDE - codepad
http://codepad.org
Page 144
IDE - programmr
http://www.programmr.com
Page 145
Librerías CDN
Las librerías CDN son librerias que nuestro
código puede consultar y están alojados en
servidores que aseguran que se descargan
rapido y en caso de ya estar guardadas en el
navegador no se vuelvan a descargar.
Page 146
librerías CDN - Google
https://developers.google.com/speed/libraries/d
evguide
Page 147
librerías CDN - cdnjs
https://cdnjs.com
Page 148
librerías CDN - cdnjs
https://cdnjs.com
Page 149
librerías CDN - jsdelivrhttp://www.jsdelivr.com
Page 150
librerías CDN - jsdelivrhttp://www.jsdelivr.com
Page 151
librerías CDN - jsdelivrhttp://www.jsdelivr.com
Page 152
librerías CDN - cdncataloghttp://cdncatalog.com
Page 153
librerías - CDN
http://www.fastly.com
Page 154
Videos
Es importante poder mostrar nuestra idea de
forma sencilla y un video es la forma que nos
impacta tanto por vista como por oido, es por
ello que cautiva más un video que solo texto o
una imagen.
Page 155
videos - Powtoon
http://powtoon.com
Page 156
videos - Wideo
http://wideo.co
Page 157
video - moovly
http://www.moovly.com
Page 158
video - goanimate
http://goanimate.com
Page 159
video - videoscribe
http://www.videoscribe.co
Page 160
Landing pages
Es importante cuando creamos una idea que
mostrar que la gente la vea como un producto
terminado y quiera conocerla y probarla es por
eso que las Landing Pages nos da la página de
presentación de nuestro producto.
Page 161
landing - LeadPages
http://www.leadpages.net
Page 162
landing - sidengo
https://sidengo.com
Page 163
landing - unbounce
http://unbounce.com
Page 164
landing - instapage
https://www.instapage.com
Page 165
landing - LaunchRock
http://launchrock.co
Page 166
landing - Lander
http://landerapp.com
Page 167
landing - kickofflabs
http://kickofflabs.com
Page 168
landing - launcheffectapp
http://launcheffectapp.com
Page 169
landing - statuspage
https://www.statuspage.io
Page 170
Terminal
Es importante usar una terminal para que nos
sea más sencillo ejecutar instrucciones de
línea de comandos.
Page 171
terminal - cool retro term
https://github.com/Swordfish90/cool-retro-term
Page 172
terminal - Cathode
http://www.secretgeometry.com/apps/cathode
Page 173
CMS
Los controladores de contenido nos ayudan a
publicar información en un sitio web y sea fácil
de administrar por cualquiera.
Page 174
CMS - Joomla
http://joomla.org
Page 175
CMS - Wordpress
https://es.wordpress.org
Page 176
CMS - Drupal
https://www.drupal.org
Page 177
CMS - Silvertripe
http://www.silverstripe.com
Page 178
CMS - modx
http://modx.com
Page 179
Actividad
El proyecto consiste en desarrollar una idea
que tengan en mente, lo necesario es crear:
● Landing Page
● Video
● Prototipo
Al final deben presentarla al frente, tienen 4
minutos para presentarlo y convencernos.
Page 180
Gracias
La presentación la subiré a mis redes sociales,
cualquier duda estoy a sus órdenes en las
mismas:
http://google.com/+CarlosToxtli
http://facebook.com/carlos.toxtli