programming

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

saplyng, in Say I want to make an app on my phone for personal use. How to begin?
@saplyng@kbin.social avatar

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.

fievel,

Waow this seems like a great framework abstracting all the ui shitty stuff

redacted_name, in Say I want to make an app on my phone for personal use. How to begin?

Depending upon what you are trying to do, a Progressive Web App (PWA) might be a solution if you don’t mind JavaScript. Avoids a lot of platform learning curve. (But you do end up having to learn HTML and CSS too)

abhibeckert, (edited ) in Say I want to make an app on my phone for personal use. How to begin?

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

Well, first of all, don’t try to use any of those languages and recognise that the language is a barrier. Choosing the right tool for the job is critical. Those are great languages… but as far as I know there are precisely zero good user interface frameworks available in those languages.

Just like a good function starts by picking a good name and argument list, a good user interface has to start with a good user interface design. Unfortunately user interfaces are complex beasts and it’s virtually impossible to get them right the first time. You absolutely must pick a user interface tool/language/etc which allows you to make major changes (including scrapping the whole thing and stating over) in a short amount of time (minutes, preferably).

The best user interface languages are declarative ones. You should be describing the structure of your interface, largely ignoring the functionality - that’s something which can either be done for you by the framework or done yourself as a completely separate task, in a different file, maybe even a different git repository, and probably a different programming language.

It should be possible to get a rough interactive version of your app up and running very quickly, so you can test it, learn what works/doesn’t work, show it to other people, and you need to be able to rewrite entire sections of the interface by simply rewriting two or three lines of source code.

I recommend HTML/CSS as a good starting point. After you’ve got your head around that first (it won’t take long, it’s relatively simple). After that look into more modern tools like React Native. Learn to crawl before trying to walk.

The article you linked to is just wrong. It suggests this process:

  1. Define a layout for each screen that has UI elements.
  2. Create source code for all of the app’s components.
  3. Build and run the app on real and virtual devices.
  4. Test and debug the app’s logic and UI.
  5. Publish the app

Step 4 needs to be tightly integrated into Step 1. Start working on step 2 after you have finished step 4 (and then, after you’ve done steps 2 and 3, you will need to repeat step 4).

I encourage you to read less articles, they’re often giving really bad advice and without experience it’s impossible to know which ones are good advice. Instead pay for ChatGPT Plus and just ask it questions. “How do I make a button in HTML/CSS” or “how do I make it execute code when the user clicks it” or “how can I deploy a HTML/CSS/JavaScript app on Android”.

benfulton,
@benfulton@fosstodon.org avatar

@abhibeckert @potterman28wxcv You could use Ruby on Rails or Python's Dash.

Penguincoder,

Please; no.

HarkMahlberg,
@HarkMahlberg@kbin.social avatar

Instead pay for ChatGPT Plus and just ask it questions. “How do I make a button in HTML/CSS” or “how do I make it execute code when the user clicks it” or “how can I deploy a HTML/CSS/JavaScript app on Android”.

Was this an attempt at a joke? All of that stuff can be found on W3Schools: no tech-evangelist articles, no paid subscription, no ChatGPT. I'll even throw in the links. (I maintain that given OP's project parameters, he doesn't need an app at all, it just needs to be accessible from his phone - a web page may suffice.)

mhredox, in Say I want to make an app on my phone for personal use. How to begin?

React native is pretty simple to get started. I built my first android app with it a few months back. Also cool that you basically get both the android and iOS apps done at the same time.

tracteurblinde, (edited ) in Say I want to make an app on my phone for personal use. How to begin?

Last android app I created for a personal project I did using Kivy which is a python application framework. I found it nice to be able to develop the app on the desktop and then run on Android. There were enough multi-platform python libraries for things like bluetooth that I was able to even develop that side of things on my desktop development environment as well. This would be the framework I recommend.

Web Apps are also a good choice. I have a couple apps running off my homelab that are just webpages accessible from inside the network and they work well enough on mobile. If you really want to package it there are a couple ways. Not the best use case for you, but might be of interest to the others, I really love Tauri. It is an alternative to electron that focuses on binary size and security. Tauri 1.4 is great for desktop applications. The alpha version of 2.0 supports mobile, however I have yet to write anything for the 2.0 version that hasn’t involved creating a pull request to fix something so… you’ll be in for a treat if you go this route.

As mentioned in thread, several game engines do mobile packaging fairly well. Godot’s android functionality works pretty well. Bevy has limited android support, but the web version functions well enough. I see this as more of a “If you already know a game engine, you might secretly know how to make a mobile app. Don’t learn a game engine just to make a mobile app.”

observing,

+1 for kivy (Actually, kivymd; love those widgets). I have also been developing a bluetooth based app on a (Windows) desktop and then packaging it for Android. It was a substantial learning curve for me, but I found the end result to be worth the effort.

Bipta, in Say I want to make an app on my phone for personal use. How to begin?

First sit down and cry. Then pick yourself up and start following some of the advice here.

Lanthanae, in Say I want to make an app on my phone for personal use. How to begin?
@Lanthanae@lemmy.blahaj.zone avatar

Generally UI related stuff is opinionated framework-heavy, so the best place to start is see what technologies similar-ish apps use and then read their documentation.

Hawk, in Say I want to make an app on my phone for personal use. How to begin?

Jetpack compose in Kotlin, Flutter using Dart or Fyne are all pretty easy to get started with.

HarkMahlberg, in Say I want to make an app on my phone for personal use. How to begin?
@HarkMahlberg@kbin.social avatar

Have you considered writing a responsive web app in JavaScript that can be hosted by GitHub Pages? Depending on what exactly you need to write and what you need the program to do, that may not be the best option, but it is simple, you don't need to worry about hosting the site, and it allows you to rapidly deploy your application and make it accessible anywhere through a web browser. You just write the HTML, CSS (if you wanna be f a n c y), and JS. No shortage of tutorials on those 3 languages.

Here's a few examples I've written:

https://github.com/mpm11011/hanafuda-react

https://mpm11011.github.io/spirit-island-tracker/

Cwilliams,

Vger.app is another one

d3Xt3r, in Say I want to make an app on my phone for personal use. How to begin?

If it’s just for personal use, why not just use Tasker? Judging by what you’ve written, it could be easily done without needing any Android coding experience.

Rivalarrival,

There’s also “Tasker App Factory” which allows you to export either an individual task or a complete Tasker project as a standalone app.

HiDiddlyDoodlyHo, in Say I want to make an app on my phone for personal use. How to begin?

That doesn’t seem like a bad start to me, but I haven’t read it thoroughly. I also recommend checking out the official Android Studio beginner’s guide: developer.android.com/get-started/overview

Alternatively, you can use wrappers like Flutter, React Native, or the Ionic framework if you think you might want cross-platform or web capability later, though that adds a lot of overhead that isn’t always the best choice.

confusedwiseman, in Say I want to make an app on my phone for personal use. How to begin?

Not sure if it would meet your requirements, but if specific enough to your phones current control capabilities; would a shortcut or automation app meet your needs. I seem to remember them being able to prompt for input. It might be a more COTS approach for you depending on your needs.

luciole, in Say I want to make an app on my phone for personal use. How to begin?
@luciole@beehaw.org avatar

I’m old ahem experienced too and I went from no app development to having a basic native app on my Android phone in a few days with Flutter/dart. The language is easy to pick up, there’s plenty of documentation and it’s pretty polyvalent since it can build for mobile, desktop or web.

alliha,

Agreed on Flutter, very easy to get going with it.

waspentalive, in What are your hobby programming projects? I need some inspiration.

I am interested in all things random or mathematical. I have written programs to simulate the decay of radioactive ‘stuff’, a program that simulates the CA Lottery by flipping a coin (someone said that your chances are about the same as flipping a coin 25 times in a row in a run of either heads or tails).

On the mathematical side, I have written a program to run the 3n+1 (Colatz) series and record process features, like counting evens and odds, the number of steps, and the maximum value found in the series. Perhaps the average of the values in the series would be interesting to calculate…

Combining mathematics with randomness - I have worked on the 100 prisoners idea, How many loops are created in this run, and how long is the longest one? If any loop contains more than 50 members then the prisoners lose and don’t get to go home.

I have ideas for a traditional basic interpreter only lines are labeled not numbered.

I have a traditional Star Trek program that I have written many times improving slightly each time.

1hitsong, in What are your hobby programming projects? I need some inspiration.
@1hitsong@lemmy.ml avatar

I work on the Jellyfin Roku client, a React Native Lemmy client, and a Next.js Electron Mastodon client.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • uselessserver093
  • Food
  • aaaaaaacccccccce
  • [email protected]
  • test
  • CafeMeta
  • testmag
  • MUD
  • RhythmGameZone
  • RSS
  • dabs
  • Socialism
  • KbinCafe
  • TheResearchGuardian
  • Ask_kbincafe
  • oklahoma
  • feritale
  • SuperSentai
  • KamenRider
  • All magazines