OK, en el orden que preguntaste:
Androide:
Tendrá que conocer Java principalmente. Está compilado con el SDK en APK. una vez que conozca Java, comience aquí: Herramientas para desarrolladores de Android
Tenga en cuenta que si viene del desarrollo web front-end, sería mucho más fácil seguir la ruta PhoneGap, aunque sufrirá algunas pérdidas: PhoneGap | Casa
- ¿Qué campo debo elegir, desarrollo de Android o desarrollo web?
- Cómo acceder de forma remota a un dispositivo Android desde otro Android como TeamViewer hace para PC
- ¿Cómo podemos obtener un buen conocimiento sobre el desarrollo de Android?
- ¿Cuál es el mejor sistema operativo para crear aplicaciones con Android Studio, Ubuntu o Windows?
- ¿Cuánto tiempo llevará desarrollar una aplicación de chat con Android Studio?
Sitios web:
Esta es una gran pregunta. Porque hay muchas maneras de hacerlo. Aquí están los fundamentos: HTML5, CSS3, Javascript
Luego hay preprocesadores para CSS como SCSS y SASS y Javascript tiene un montón de bibliotecas que puede aprender para ayudar a acelerar el tiempo de desarrollo. También hay marcos: Foundation by Zurb y Twitter Bootstrap son los más importantes.
Sin embargo, todo eso es diseño frontal. Si necesita crear una base de datos (piense en producciones para comercio electrónico, perfiles de usuario, UGC, publicaciones de blog, etc.), tendrá una gama de opciones con las más populares como MySQL y NoSQL. Por supuesto, necesitará lenguajes de programación del lado del servidor para estructurar las páginas y la información del servidor fuera de la base de datos, por lo que está viendo Ruby, Python, PHP, etc.
Si está entrando en el desarrollo “frontend” y “backend”, sería prudente convertirse en un desarrollador full stack. La mayoría de los desarrolladores elegirán una pila de código y profundizarán en ella. Algunos ejemplos importantes son LAMP (Linux, Apache, MySQL, PHP) y MEAN (MongoDB, Express, Angular, Node.js).
Minería de datos:
Necesita conocer estos 3 como mínimo: Ruby, Python y SQL.