TL;DR : Have to create an android app using lots of android specific features with no knowledge about any of them and no time because of 5 other school projects to make.
This gives me stress and anxiety and I wonder if I have the right to rant of if I'm just a pussy.

I have an Android project for school to finish for tomorrow. It's an app that's supposed to remind you when you should leave to your appointments, taking into account your current location.
So we have to use an API to check the validity and coordinates of the inputted address, use an API to compute the travel time, request permission to get current location, setup an AlarmManager to trigger the location verification and travel time computing and trigger the notification to leave if it's time, setup a BroadcastReceiver to persist the alarms through reboots and create a nice and simple UI with (or without) the Android Studio Designer.
We had a theory course on Mobile Development, but it only talked about Web and hybrid apps, and things like Activity lifecycle and Dalvik VM. Not a word about all these features we have to implement for tomorrow.
While we have already a good background in Java and know how to use documentation, we however don't have a lot of experience with asynchronous programming (we used it a couple of times, but not enough for it to have became really intuitive), which most of the aforementioned features require, we did not have any exercise to train ourselves on Android programming to grab a handle of these concepts, we didn't have much time to make progress and learn and read documentation because we had other big projects to make in literally every other course (about 6 projects on a 2.5 months period) and we ran in git problems because they never cared enough to teach us more than clone, commit, push and pull. I know we have the information online, but having to find it and understand it well enough when under stress from all these deadlines is exhausting (without taking into account the trials and errors that lead to code loss or inconsistent code) and having some explanations from the teachers would have been a great help...

Now the deadline is in less than 24 hours, and we are nowhere near finishing and I feel this will be a new failure. Being subject to depression, I have to focus a lot to not succumb to it in that kind of circumstances.

Tell me honestly, am I whining for nothing or is it really as difficult as I make it sound ? I feel like I'm too dumb to ever be able to code something right one day.
I'm sorry if I sound like a weak and inexperienced student, but I really had to get all of this off my chest...

Bottom-note : the school is actually great, and most of our professors are experts in their domain and good teachers. But this year, I don't know what was their purpose or what drug they took, but they decided to overcharge us with work and go about it like it was easy peasy...

  • 3
    Bit too long for me to read entirely (as well as me not being experienced enough in Android development to understand enough of it) but yeah, time can be a bitch sometimes. If only Time-Turners were a real thing...
  • 3
    First of all I am kind of confused, don't schools and universities have a learning table they have to confirm/publish first, before making it actual teaching material? so it had to be obvious for a long time that there's an upcoming project with just 24 hours deadline, also atleast the topic had to be published in advanced.

    If you actually didn't go through the knowledge you need for this project and can prove it, then you could escalate it to the ones in charge of said school/university or a middleman, as they are not interested in high failure rates or bad image.

    In general a 24 hour deadline in schools and universities for a near final seeming project, seems not real and like some information has been skipped. (actual 1 week project time but only now panicing?)

    If most of the class passes though, then it's tough shit. The best option really is not to waste much time and try to throw together as much as possible.

    (cont. 1/2)
  • 1
    For confirming an address and getting its coords you could look into:

    - http://locationiq.org/

    -- to resolve address => LAT/LNG location to pass to say some kind of gps controller

    -- has free 10,000/day requests

    - http://locationiq.org/docs

    -- Forward Geocoding >> Usage

    (fin 2/2)
  • 2
    >>Tell me honestly, am I whining for nothing or is it really as difficult as I make it sound ? I feel like I'm too dumb to ever be able to code something right one day.<<

    You are right now panicing a lot, that's normal, especially with the upcoming deadline, but what you shouldn't do is fuel it all and do nothing, throw yourself in and ask us and google, I am not a native android developer but as above, I can link random APIs I know of or help with e.g. code logic
  • 4
    @linuxxx @linux @AlexDeLarge @Alice @bitwise @condor @Charon92 @Floydian @teganburns @shellbug @Condor @Cozyplanes @Skayo

    First of all sorry for the seemingly random tags;

    I can't right now remember anybody who I could tag, that is a native android developer, so I'll just tag some people that come quickly to mind, that are very active and might know somebody here to tag, which could help this guy in the comments, if he has any questions
  • 1
  • 5
    @JoshBent I'm not an Android dev bro.. not even a dev to begin with 😅 but thanks for the mention anyway 😁
  • 2
    @Condor "so I'll just tag some people that come quickly to mind, that are very active and might know somebody here to tag" 😉
  • 3
    @JoshBent yeah was an android dev, but abandoned it few months ago
    Now a unity dev
  • 1
    @JoshBent nobody I can recall of.
  • 2
    @perfectasshole and @ewpratten, didn't you guys do android as well?
  • 1
    @linuxxx thanks for tagging some people :) but, wait.. did the tag go through to you? it looked like it tagged linux twice
  • 2
    No experience in Android, sorry.
    Maybe @filthyranter knows more?
    Or @LastDigitOfPi?
  • 2
    Maybe I didn't express myself right, I was really tired when I wrote that, but the project has begun 6 weeks ago. We did make some progress during that time, but at a very slow pace, which has been further hindered by the fact that we had 6 other projects on the fire (and still have 2).
    The learn table states that "the student will be able to [explain some theory and] develop an Android native mobile application using specific tools and development techniques, and using some capabilities of the mobile device and features offered by Android". We kindly thought we would be taught about some of these features in class, as the majority of our "outside of school hours work" was already being put to good use.
  • 4
    The whole class feels fucked in the ass with a rusty metal cactus, half of it has decided to let down one or two projects, knowing the consequences (no holidays and an increased chance of failure for the year), but I just wonder if we are really supposed, at our level, to be able to hold such deadlines with so many things to do.
    @teganburns Unfortunately, the project is hosted on a private school gitlab repo. And I don't know if I'm comfortable showing my code, we made something that works, not something that's elegant ^^ (we try but it's not like we have a lot of time to think about doing things beautifully).

    Thanks to you and to @Condor, @CozyPlanes, @Floydian, @linuxxx and @Skayo for at least trying to help ! Feeling this support is already helpful in itself. I'll put caffeine in my eyes and get on with it to get as much done as possible. Tonight we dine in hell 😂 !

  • 3
    @gitpush can you help here?
  • 1

    I don't think this can happen in one day :(

    Ask for an extension then don't be afraid to ask for help.

    Should never wait until last minute to finish a project like this.

    The teacher really should have helped you through the process.

    All the best!
  • 2
    @Brosyl @shellbug, gusy, what exactly is going on here? Maybe I can help, mind explaining?
  • 1
    I dont know if this help, but a quick way to get started on some of the things:

    You could use the LocationManager to get your currently location and use the Latitude and Longitude to calulate the addresses with geocoder and use Location to calculate the distance.
  • 1
  • 1
    If you want to do asynchronous android dev, use flutter/ dart. All you have to do is:

    Void main() async{
    // Some code here

    The "async" makes everything in that function asynchronous.
  • 0
    Still as a begineer with zero experience and to get things rocking fast, java is the go with bunch of examples
Add Comment