Hello there,

I am an experienced programmer. I can do C/C++/Rust/assembly/Ruby/Perl/Python/ etc… The language itself is not a barrier.

The barrier to me is that I have never coded a single web or android application. I guess it must be surprising but I am more of a low-level programmer in my job (I develop a compiler backend) and I never really had the opportunity or idea to work on an app.

What would be a good starting point for making an android application?

A quick search got me this: https://google-developer-training.github.io/android-developer-fundamentals-course-concepts-v2/unit-1-get-started/lesson-1-build-your-first-app/1-1-c-your-first-android-app/1-1-c-your-first-android-app.html

Would it be a good starting point?

Side note: my app will not have to interact with any service. If I were to code it as a command-line program, it would not take me more than a day or two. The actual app would involve (for now) no more than a text field, a button, some logic attached to it - the hard part for me being to choose a framework to build it, “upload it” to my phone and use it.

  • saplyng
    link
    fedilink
    61 year ago

    If you want to use python, you could try Flet. I’ve been using it for some projects at work and it’s dead simple to create an acceptable UI and the docs are very easy to read through with frequent examples. In July they added support for Android and iOS via progressive web apps, I haven’t tried it out yet, but it seems interesting so I might start a project in it soon…

    I’ve been having fun with it, if that’s worth anything!

    Otherwise, depending on your phone I’d just do native code with Kotlin + jetpack compose for Android or Swift + swiftUI for Apple. I always greatly preferred android development in school but once jetpack compose and swiftUI came out I find them both to be about the same level of enjoyment.

    All three of those options are all declarative (describe how you want it to look in code) and I find it much easier to deal with than iOS storyboards or Android xmls.