Proyecto sencillo web / android (No se por donde empezar)

skela

Buenos dias,

Mi conocimientos de programacion son en PHP,Mysql,HTML,CSS,Javascript.. lo que me enseñaron en ASIR basicamente.

Trabajo de tecnico resolviendo incidencias presenciales y las incidencias las apuntamos a mano por lo que se me ocurrio la idea de hacer una app para el movil sencillita en la cual nada mas abrirla ya te registra la hora y vas seleccionando las 4 o 5 cosas que solemos apuntar de las incidencias que son estaticas, con esto quiero decir que no hay que estar añadiendo texto, solo seria un formulario el cual con 4 botones generes una linea y eso luego pasarlo a un excel.

El tema es que llevo un par de años fuera de programar y escucho mucho lo de programar en python,django y me gustaria si es posible programar en python aunque mi idea es algo muy simple xD.

Busco orientacion para hacer este proyectillo, que me recomendeis que lenguaje deberia usar, como deberia empezar y que herramientas deberia usar, enseñadme un camino y ya luego me busco la vida formandome.

B

Yo iba a aprender desarrollo en Android nativo.

Pero me he decantado por el tema de desarrollo en html5+css3+javascript y mediante Polymer+Nodejs+Cordova poder desarrollar y compilar tanto para Android como para iOS.

Eso sí, ando perdido de cómo formarme... Mucha información nueva y muchas cosas para ello, pero quiero sacarlo como sea y voy poco a poco.

Yo vengo de DAI.

2
HeXaN

Para tu proyecto, #1, podrías montar una simple página web con diseño responsive (Bootstrap, por ejemplo) y a tirar millas.

2 2 respuestas
skela

#3 Entonces lo hago en html5+css3+php+mysql? o usarias otros ingredientes para hacer el puchero de otra manera

1 respuesta
HeXaN

#4 Sería una opción igual de buena que otra cualquiera. Usa lo que más controles y así lo tendrás antes hecho.

1 respuesta
skela

#5 El tema es que me gustaria hacerlo en python, o es una soberana tonteria y complicarme la vida?

1 respuesta
HeXaN

#6 Pues hazlo en Python. Te instalas Flask y a tirar millas.

1 respuesta
skela

#7 Me ha surgido una "traba" con el proyecto. donde yo trabajo hay una intranet y puedo montarlo en la intranet sin problemas, el rollo viene cuando... Como paso las "incidencias" del movil a la intranet?, estaba pensando que seria viable si segun vaya metiendo las incidencias se almacenaran localmente en el movil y luego me conectara por wifi a la intranet y pasar las incidencias de golpe.

Pero para hacer eso tendria que hacer una APP android cierto?

2 respuestas
HeXaN

#8 Montas la web en un VPS y accedes tú.

Soltrac

#8 O montar la web en la intranet no? Necesitas que se acceda desde fuera? Es decir, móvil conectado a la intranet por wifi y web en intranet.

1 respuesta
skela

#10 el tema es que no hay wifi de intranet en todos lados, en todo caso tenia que hacer una app android y que luego envie los datos al conectarme a la wifi.

2 respuestas
B

#11 Se supone que sea vía web o Android app accedas a la misma base de datos. Entonces estudia cómo te interesa acceder a ella y cuándo vas a poder acceder a ella.

Zerokkk

#3 Yo creo que le interesa más hacer una PWA (Progressive Web Application) con programación híbrida, aunque si el proyecto es pequeño quizá lo que dices con una web ya llegue de sobra.

2 respuestas
B

#13 ¿Sabrías algún curso completo y bueno para las pwa? Estoy interesado y un poco perdido en cómo formarme.

1 respuesta
HeXaN

#13 Cómo os gusta matar moscas a cañonazos xD

1 1 respuesta
Lecherito

nodejs + mongodb es lo que necesita

2 1 respuesta
HeXaN

#16 Y un balanceador de carga y caché.

3 1 respuesta
Zoko

Y ECMAScript2016 2017 y 2021 , no te olvides de usar lo último de lo último.

Soltrac

#17 xDDDDDDD, no vaya a petar eso!!!

Ya en serio...

#11 Parece la mejor opción.

Tienes 2 opciones para ello, haces como dices una aplicación en Android nativo.

Usas algo tipo phonegap, que es una solución para hacer aplicaciones HTML y que compilan en Android (y sí, tienes acceso a la base de datos que es lo q usarás para guardar lo que vayas haciendo).

1
seveca95

Google forms a lo mejor te hace el apaño

Zerokkk

#14 Barriendo un poco para casa...:

  1. Primero coge algo de experiencia con HTML5/CSS/JS básico. También aprende a gestionar datos con alguna bd sencilla. Si te quieres complicar un poco pero tirar a lo mejorcito, tira por las NoSQL y aprende a usar alguna capa de abstracción de backend (Firebase, Parse, etc...).
  2. Aprende ES6 y a usar Javascript como dios manda (técnicas de programación funcional y métodos derivados, lambdas, promises, generators...).
  3. Métete de lleno a Angular 2.
  4. Apréndete las directivas y metodologías de Ionic 2. Practica un poquillo para cogerle la práctica y exprimirlo bien. Prueba sus librerías nativas.
  5. Aprende a usar service workers.

Pero igualmente, como ya dije yo y puntualizó Hexan en #15 (además de los siguientes comentarios jocosos), en este caso concreto no hace falta liarse tanto, ya que se ve que es una tontería de formulario y poco más... aunque está claro que para proyectos más gordos está de puta madre y es por donde va a ir tirando el desarrollo de software en los años venideros.

Piensa que una PWA es como una app multiplataforma que cuelgas en una web, quizá algo más limitada, y que luego puedes descargarte al PC, con el mismo código que tiene en la web, pero quizá con alguna movida a mayores. Es un approach genial, está claro, pero este problema en concreto se soluciona de manera mucho más fácil y sencilla tirando de herramientas de toda la vida y haciendo una web sencillita del todo, yo de hecho diría que no te hace falta ni Bootstrap; hacer un formulario responsive para cualquier dispositivo con vanilla JS/CSS es algo bastante fácil, digamos.

1 respuesta
B

#21 Gracias por todo. De HTML5, CSS3 y JS ya manejo algo. Además de PHP y MySQL.
¿Angular 2? Me habían recomendado Polymer. ¿Qué recomiendas?
¿Es necesario Nodejs o es evitable?
Respecto a Ionic2, me habían recomendado compilar con Cordova. No sé si tendrá que ver.

1 respuesta
Zerokkk

#22 Nunca utilicé Polymer, pero Angular 2 es un framework muy completo que te facilitará la vida bastante. Tiene un problema, con el que casi todos están de acuerdo, y es que está over-engineered, es decir, es dificilillo de aprender y la documentación es muy mejorable, en comparación con otros frameworks. Pero tiene un potencial brutal y funciona como la seda para ser una herramienta grande.

NodeJS es un runtime, como Java SE por ejemplo. Puedes hacer todo tipo de cositas con Node, desde webs hasta aplicaciones. Y básicamente, cuando usas Ionic y React Native, estás corriendo sobre Node. Generalmente tu preocupación sobre Node es si quieres hacer el servidor en él, lo cual está muy bien ya que es bastante fácil trabajar sobre él, funciona genial, y para aplicaciones con mucho asincronismo de por medio (véase un chat, por ejemplo), es la plataforma rey (de entre las conocidas).

Y verás, Cordova es sobre lo que complian tanto Ionic, como React Native. Osea, es por así decirlo, la herramienta sobre la que corre tu "web" en el móvil, dándole acceso a módulos nativos del móvil (geolocalización, menús contextuales, etc...). Osea, que Cordova la vas a usar igual, vaya.

1
sh31k

Tienes dos opciones:

La fácil, te haces una web responsive con php/html/js/mysql y guardas los datos de las incidencias en un vps y luego un majo botón de sincronizar para cuando estes en la wifi de la intranet.

La difícil pero con la que mas vas a tocar cosas nuevas es: ionic, cordova + plugin de storage. Guardas los datos en el dispositivo y sincronizas una vez estes en la intranet.

También está la opción de montar algún servicio en la intranet que vuelque paulatinamente los datos de tu vps, pero eso lo veo muy tedioso y muy antiguo xD