I’ll be giving a software engineering course this fall, and in it I usually provide students with a choice of a project to design, model and then implement following best practices.
Last year, I changed things a bit, by giving the same project to be implement in different platforms (each group a platform, including one for SailfishOS).
I’m thinking for this year to develop one project on one platform (for example SFOS) but with multiple student groups. Mainly, I’ll play the role of a manager, and each team will design/model/develop a part of the project.
This is an undergraduate course (3rd year bachelor degree), so expectations should be realistic. And students never saw C++ or SailfishOS, but they know Javascript and they had courses on Android and iOS.
So, my question: do you have any ideas of an application that I can use as a basis for the course project ?
It can be a client/server project (but keep in mid, they didn’t see yet client/server networking, nor REST APIs).
I’d also like to avoid using too much C++ and keep the UI mostly in QML and JS. We can use databases and queries.
And if you have a proposition, it should be something that isn’t too small that students will finish it in a day, and can be split into separate parts (so each team can develop a part).
I should get 3 to 5 teams depending on the number of students and the team size.
The course itself is 39 hours for in-person teaching, including around 12 hours for lab works (on a computer). I need a quite a bunch of the hours for the course itself, and they’ll spend some time learning then writing the specifications, modeling the database, the software architecture (UML), and the UI mockups.
Though, they can and should work on their own too outside the dedicated hours.
At their level, they didn’t see Python yet.
Something around UI-Testing? I didnt find much yet on how to test QML apps, but maybe we could need a framework or a complete guide or something like that?
It has really crappy input interfaces (tables via canvas!). But has a nice graphing function. A graphing calcuator, please! I was thinking of porting the graphing functions from matrix to Babbage calculator.
But that’s pretty standard issue boring, could be done in pure QML/JS
I also wanted to build an app for the plantnet api: https://my.plantnet.org/ and ditto on easy to do with just QML/JS.
Ok, but, I have WebView apps (moremahjong for instance) that are exactly that. The .mozilla file is at:
.cache/de.poetaster/harbour-moremahjong/.mozilla/
I do have worries about network access since we have CORS work-a-rounds.
I don’t get it. You mean, like private tabs in the default browser?
A webview + sailjail IS a completely isolated app with NO cross site tracking. And building those is pretty easy?
The default browser, with private tabs isolates the cookie jar and sql based caches.
I don’t use any ‘apps’ that can track me ‘personally’ on my phone (other than those that get past my hosts + privoxy setup) so I guess I’m uncertain what it might mean. Other than the direction that mozilla is already going?
But really don’t use any services I don’t control person where my phone is concerned. I avoid any kind of login to a third party.
I stumbled upon BirdNet today (via Hackaday) and that would make a cool Sailfish app that we don’t have yet. There are Android and iOS apps for it already. I have not had a proper look myself yet how easy or difficult that network would be to get running on Sailfish but if there is some machine learning background and Python experience, then it might be doable. Surely it’s not an easy project.