[Proyecto noob] Idea para una aplicación para el curro.

D

Me he creado una cuenta nueva y todo para consultar esto, porque me daba vergüenza hacer la pregunta con mi cuenta habitual. Tengo una idea para una aplicación para el curro y tengo cero background en programación.

No sé si es demasiado para un novato como yo, pero la idea es ir aprendiendo a la par que voy intentando desarrollar la idea. Pero tengo dudas sobre que lenguaje utilizar o como empezar.

La idea es poder crear una aplicación en la que yo vaya situando paradas para un hipotetico repartidor y que, si se puede (que no lo sé...), que con la información de trafico de google maps vaya eligiendo automaticamente la ruta en función del menor tiempo estimado de llegada para todas las paradas.

Escucho ideas y recomendaciones.

P.D: esperando al pato en #2 con el copy&paste

HeXaN

Ya te ahorro el sufrimiento:

https://play.google.com/store/apps/details?id=com.astonworks.routeoptimizer&hl=es_419
https://play.google.com/store/apps/details?id=com.route4me.routeoptimizer&hl=es

1 1 respuesta
B

A ver, primero, es bueno hacer para aprender, quiero decir que la única forma de aprender es haciendo algo, y por lo que veo tu idea recoge bastantes cosas que sin duda te servirán.

Pero yo no inventaría la rueda, si lo vas a hacer para aprender ok, pero si lo que quieres es hacer una herramienta para el curro, mejor busca algo ya hecho, hay aplicaciones muy potentes que ya hacen lo que quieres.

En cuanto al lenguaje, usa uno en el que te sientas cómodo, al final vas a necesitar interactuar con la api de google y con ddbb

1 respuesta
domi8410

No te van a hacer CEO. Chupala.

2 1 respuesta
NeV3rKilL

Eso que pides lo puedes hacer en el propio google maps.

Si realmente quieres hacer algo inhouse, Google tiene API de google maps que te deja ver tráfico y hacer rutas. https://developers.google.com/maps/documentation

Ahora, no sé si está limitada o es de pago directamente. Libre estoy casi seguro que no es.

Lo veo un proyecto decente para alguien que ya sabe programar y quiere ampliar conocimiento. No es un buen proyecto para empezar de 0 a programar.

1 1 respuesta
D

#2 El caso es que me gustaría que los puntos que se vayan introduciendo en la ruta fueran en función de una facturación en tiempo real, quiero decir, hago un albarán con el programa que tenemos de gestión y esto cree un punto de ruta nuevo, con su dirección, horario de recepción de mercancías ( y que la ruta varíe en función de este horario), datos de contacto, etc.

Y claro está, que le llegue al repartidor en tiempo real en modo de aviso y actualice la ruta en función de la prioridad de este nuevo pedido.

Soy consciente que casi con total seguridad es demasiado para un novato, pero a parte de la utilidad que pueda tener lo veo como una oportunidad para aprender una habilidad nueva.

1 respuesta
HeXaN

#6 Sí, es demasiado para un novato.

1 1 respuesta
D

#3 Si si, es más, por aquí han pasado varios comerciales ofreciendo soluciones y tal, pero bueno, al fin y al cabo en parte es por saciar un poco mi curiosidad con este tema. Sabiendo que el programa de gestión está basado en Access, ¿que recomendación de lenguaje puedes darme? Ten en cuenta que tengo 0 idea de programación y por tanto no he tenido experiencia alguna (quitando unas cutrepracticas que tuve en C++ en la uni).

#4 Estamos en junio, ya me he comido todos mis rabos reglamentarios.

#5 Le echaré un vistazo más en profundidad, pero creo que a priori no me va a servir. Gracias por tu sinceridad en cualquier caso.

#7 Gracias pato, me has puesto en mi sitio.

1 respuesta
_Rpv

Hola desu

1 respuesta
B

.

1 1 respuesta
D

#10 Vale, muchísimas gracias por la aportación. Voy a investigar un poco más sobre que lenguaje puede adaptarse mejor a lo que quiero hacer y entonces empezaré con algún curso básico de Udemy o cualquier otra plataforma al uso, para empezar a trastear cosas más acordes a mi nivel.

Gracias de nuevo.

tute07011988

Hola, Gabi.

Saiko9

Ya te lo han comentado pero bueno.

Lo primero es que tu idea yo creo que ya esta en funcionamiento y los repartidores lo tienen en cuenta. Supongo que las aplicaciones de Glovo, just eat o amazon que llevan los repartidores ya te estan haciendo esto (mirando Google Maps).

Lo segundo es que programar no es facil y requiere experiencia, es mejor no tener ideas y ir progresando haciendo aplicaciones, empieza con un simple hola mundo, despues con un menu... y vas progresando. Tirarte a la piscina con algo dificil es un suicidio.

Por último te diré algo que muchos me rebatiran pero para mi es bastante claro. Las ideas no valen una mierda, en serio no valen nada. Si que te puedo comprar que una idea revolucionaria y que sea super super facil de implementar pueda hacerte rico, pero cualquier idea que se te ocurra no vale nada sin el trabajo que tiene detrás (que es mucho). Y para esto no hace falta ni siquiera el tener una idea novedosa, puedes coger algo que y exista, darle una vuelta y hacerlo mejor o mas usable, con algo de suerte puedes triunfar igual pero llegar a ese punto pues es chungo.

1 1 respuesta
D

#13 Que conste que no tengo intención alguna de inventar nada, ni creo que me vaya a hacer rico con esto ni nada parecido. Soy un currela con 34 palos que simplemente quiere investigar un poquito por saciar su curiosidad, tengo un puestecito como técnico en una empresa (muchas horas delante del PC, bastante de ellas mirando al techo como se suele decir) y creo que es una cosa que nos podría bien tener, pero sin ninguna pretensión.

He estado viendo que la API de Google Maps trabaja con Javascript, ¿debería empezar por ahí?

2 respuestas
Saiko9

#14 Sí, aunque si tienes tan poco background como dices empieza por las cosas basicas basicas.

Vamos no te metas en jaleos de apis si no sabes crear una aplicación con un menu.

Aprende pues eso, crear una aplicación que muestre información, luego le intentas meter una base de datos para que la información sea dínamica... Es un mundo, yo te recomiendo que en vez de hacer un proyecto hagas miniproyectos aunque en cada uno tomes de base el anterior.

Esto último si vas aprendiendo no estan facil porque te das cuenta en cierto punto de que tu anterior trabajo es bastante mierda (con las cosas que has aprendido) y te sale mas a cuenta crear uno nuevo de 0.

1 1 respuesta
D

#15 Me he explicado mal creo, me refiero que podría empezar con Javascript como lenguaje e ir escalando desde ahí poco a poco (por aquello de que este lenguaje parece que es el necesario para utilizar esta API, cuando llegue el momento claro)

1 respuesta
Saiko9

#16 El lenguaje es un poco indiferente, mira los mas usados y coge el que mas creas que te puede gustar.

Si quieres hacer una aplicación nativa en android por ejemplo ya te adelanto de que te mires Java, quitando ese caso en concreto pues puedes usar lo que quieras.

Javascript es un lenguaje muy odiado y amado al mismo tiempo, yo sinceramente creo que sí que te lo recomendaría ya que es un lenguaje con el que puedes hacer el stack completo de una aplicación (con esto me refiero a hacer tanto la parte que va detrás (servidor) como la parte que va delante (cliente). Pero vamos que no tendrías problema en empezar con Python tampoco (bastante mas noobfriendly que javascript).

Puedes ponerte a buscar documentación/recursos/tutoriales sobre cosas parecidas a lo que vayas a hacer, ver si lo ves asequible y quedarte con ese lenguaje.

1 1 respuesta
D

#17 Muchísimas gracias de verdad, me ha servido de bastante ayuda tu comentario sobre todo para cribar lenguajes y poder centrarme en dos lenguajes en concreto, voy a hacer un poco de investigación sobre Javascript y Python.

Lo mismo me animo y convierto el hilo en un diario.

1
B

TypeScript + NativeScript

1
desu

#9 Yo hice un problema muy parecido hace unos años si.

Era un gestor de fuerzas de trabajo que según iban llegando incidencias geolocalizadas entraban en la cola. Los trabajdores estaban en ruta y se iban desplazando entre puntos, había deadlines para incidencias, los tiempos de descanso para trabaajdores, horarios de locales, precedencias, costes de trabajo y consumo de gasolina... Al final escalado movia una flota de un par de miles de vehículos.

Ontopic al OP solo le recomendare que primero resuelva escenarios estáticos, es decir todos los puntos de paradas sobre el mapa y un grupo de repartidos a secuenciar. Esto no es nada dificil usando APIs para generar las rutas. No es dificil ni complejo pero si requiere algo de dedicacion en tiempo. Entendamos que la dificultad depende del perfil y experiencia de cada uno. Suponiendo que es un problema pequeño siempre puedes lanzar escenarios estaticos y el rendimiento no deberia ser problema si puedes esperarte unos minutos a que de solucion.

1 1 respuesta
squ4r3

Te recomiendo #1 imaginarte cómo sería tu aplicación final, con todas las funcionalidades. Ve partiendo estas funcionalidades en trozos más pequeños, y estos a su vez en trozos más pequeños, hasta que tengas un montón de piezas pequeñitas. Luego céntrate en una de esas piezas e intenta resolverla, olvidándote de las demás.

Por ejemplo, para tu aplicación necesitarás un sistema de login de usuarios. También necesitas que la aplicación pille tu localización y la muestre en un mapa. Pues ya tienes dos cosas para aprender. ¿Cómo creas una base de datos de usuarios? ¿Cómo permites que se autentifiquen? ¿Cómo pillas el dato GPS del móvil y lo pintas en un mapa?

Porque, como ya te han comentado, lo que quieres hacer creo que es bastante más de lo que una persona sin experiencia puede acometer así de golpe. Así poco a poco puedes ir resolviendo pequeños problemas y familiarizandote con el asunto, consigues pequeñas metas y no te desmotivas. A mí al menos me ha ayudado y así he conseguido hacer proyectos que al principio me parecían inabarcables.

1 1 respuesta
D

#20 #21 Gracias a los dos por vuestro granito de arena, lo tendré en cuenta para cuando ya tenga visto lenguaje y empiece a investigar y a trabajar en el proyecto en sí. Me parece muy interesante lo de ir "desmenuzando" el proyecto en miniproyectos para ir cumpliendo metas y no caerme por el camino.

He podido investigar un poco sobre los frameworks que están basados en JavaScript (no estoy del todo seguro que esté bien dicho así) y parece que se puede hacer tanto frontend como backend con este lenguaje, y quizá con HTML5 y CSS3 podría empezar algo tipo web.

Sé que hablar por hablar es gratuito, y probablemente parezco un bebé intentando levantar 140kg en press de banca, pero bueno me parece un proyecto bonito y me hace ilusión aprender algo nuevo, no me tengáis en cuenta la motivada que llevo.

No sé si se puede decir, yo creo que sí ya que es gratis y tal, pero he empezado en FreeCodeCamp desde cero, 4 horitas le he echado y bastante flipado ando con todo esto.

Gracias de nuevo a todos los que habéis aportado algo o os habéis tomado la molestia de trolear, "de vuestra henbidia nase mi fama".

RedSpirit

#14 Las APIs se pueden consumir desde cualquier sitio, da igual el lenguaje o tecnología con lo que estén hechas, eso no es un limitante.

Como te han dicho, es un proyecto muy complejo para no tener ni idea, pero si te sirve como catalizador para aprender algo nuevo y valioso bienvenido sea, aunque no llegues a tener nada productivo.

Puedes empezar con Javascript perfectamente, porque es un lenguaje muy versatil con el que puedes hacer tanto el backend como el frontend de una webapp como una hipotética app móvil, y además te permite hacer cositas tangibles en el navegador muy pronto, pero hay otras mil opciones que tendrán otros pros y contras.

Como hoja de ruta para empezar puedes aprender Javascript desde 0 con cualquiera de los cursos que hay, y cuando te veas con fuerzas puedes empezar a intentar hacer llamadas estáticas a la API que te interesa, y mostrando cositas en el navegador. Es un punto "asequible" al que llegar y para entonces ya sabrás si te interesa lo suficiente todo como para meterte en el berenjenal que comentas.

1 1 respuesta
D

#23 Gracias, la verdad que justo eso me han recomendado los demás, no me queda más remedio que seguir vuestra recomendación. Esta tarde seguiré con lo de freecodecamp, que de momento está hasta gracioso.

Usuarios habituales