Afilando la Katana: Qué debe saber un ninja programador (en 2013)
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Afilando la Katana: Qué debe saber un ninja programador (en 2013)

  • 3,181 views
Uploaded on

Presentación impartida por Pedro Galván en Campus Party México 2013

Presentación impartida por Pedro Galván en Campus Party México 2013

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
3,181
On Slideshare
2,645
From Embeds
536
Number of Embeds
3

Actions

Shares
Downloads
51
Comments
1
Likes
7

Embeds 536

http://sg.com.mx 456
https://twitter.com 62
http://cloud.feedly.com 18

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Afilando la Katana: Qué debe saber un Ninja Programador (en 2013) Pedro Galván Kondo @pedrogk Campus Party Mx 2013 #ninjacpmx4
  • 2. #ninjacpmx4 Un ninja sabe ... ● Lenguajes ● Frameworks ● Moverse en todo el stack ● Aportar en el ciclo de vida de software
  • 3. #ninjacpmx4 Un ninja tiene un lenguaje base ● ¿estático o dinámico? ● multiplataforma ● Recomendaciones: Python, Ruby, Groovy, C#
  • 4. #ninjacpmx4 Un ninja también usa lenguajes compilados de tipado estático ● C++
  • 5. #ninjacpmx4 Un ninja sabe programación funcional ● Clojure ● Haskell
  • 6. #ninjacpmx4 Un ninja usa distintos lenguajes para dominios específicos ● Objective-C (iOS) ● Php (Web) ● Javascript ● Lua (juegos) ● R (análisis de datos)
  • 7. #ninjacpmx4 Un ninja entiende y aprovecha frameworks ● Entender patrones arquitectónicos (MVC, MVP, MVVM) ● Entender Convention <-> Configuration ● Microframeworks (ej. Sinatra)
  • 8. #ninjacpmx4 Un ninja es un full stack developer ● Front end ● Middleware ● Data management ● Integración ● Infraestructura
  • 9. #ninjacpmx4 Un ninja hace vibrar al front end ● HTML5/CSS ● Manipulación de DOM (JQuery) ● OpenGL ● Otros específicos a plataforma (Cocoa, WPF, etc)
  • 10. #ninjacpmx4 Un ninja no le teme al middleware ● Programación asíncrona (node.js) ● Message oriented
  • 11. #ninjacpmx4 Un ninja sabe manejar datos ● BD relacionales ● NoSQL (mongoDB, Redis) ● NewSQL ● Big data (MapReduce)
  • 12. #ninjacpmx4 Un ninja sabe integrar sistemas ● Entiende protocolos de comunicación (HTTP) ● Usa y diseña APIs (REST)
  • 13. #ninjacpmx4 Un ninja sabe de infraestructura ● Linux y bash ● PaaS (App Engine, Azure, AWS, Heroku) ● Gestión de cómputo elástico
  • 14. #ninjacpmx4 Un ninja no se limita a programar funcionalidad ● Diseño lógico (arq., modelado, patrones) ● Testing (unitario y stress) ● Software configuration management (control de versiones distribuido, build automation, continuous integration)
  • 15. #ninjacpmx4 Un ninja detecta tendencias ● Interfaces humanas (reconocimiento de voz y gestos, natural language processing) ● Datos (big data, machine learning, visualización)
  • 16. #ninjacpmx4 Si te falta mucho ... ● No te preocupes ... mejor ocúpate
  • 17. #ninjacpmx4 Gracias ● Lee SG http://sg.com.mx ● Participa en http://applatina. com.mx