Using web technology to build "native" mobile apps has been around almost as long as mobile apps themselves. I used Appcelerator Titanium and Phonegap to do this beginning in 2012 (maybe even 2011) before eventually trying Native development later after finding these options underwhelming.
I have a reasonable amount of experience doing both, and my opinion is that development tools aren't really the problem. The biggest pain point is the platform specific deployment and maintenance requirements (including legal and technical documentation) that will be needed regardless of what technology you use to actually build the product. Because of this I always advise clients that they don't really need a mobile app. Just build it on the web.
If you absolutely must have a mobile app, you need to fully commit and hire an internal development team and be prepared to keep paying them as long as the app is going to be in use.
It takes a very insignificantly small amount of JavaScript to make a website a Progressive Web App, which iirc can be listed on app stores.
If you dont use React or any fancy frameworks, I believe last time I ever did such a project our JS was under 50 lines of code to have our PWA working fully offline. There were some odd hacks, like detecting network connectivity.
* HTTPS - for localhost I dont remember the workaround, browsers have made this increasingly more complicated from recent experiences
* Service Worker - This is where I said I had maybe 60 lines of JavaScript.
If you have these three things, a browser should pick up that your sites a PWA and server running it should be irrelevant... So you MUST have a minimal amount of JavaScript, but I did it using pure vanilla JS, you dont need a fancy framework.
On that same note, there might be a tool that could inject the bare JS necessary for this, but I dont think it exists, certainly could be built.
HTTPS isn't an issue, dropping whatever the command generates onto a HTTPS supporting server isn't an issue.
I want the manifest to be automatically generated from whatever is in the directory. The service worker should download everything from the manifest at first launch. I'm ok with a download-on-demand build option, but by default it should grab everything needed. If a user installs something, it should be assumed that they can use it offline.
I feel like the tool should already exist. If it does not yet exist, it seems like there must be a reason for that that I am not aware of.
The service worker thing is a weird amount of boilerplate. Every time I go back to making a PWA, I skip through 10 search results explaining what a service worker is (idc) until I just find whatever .js code I have to copy. And it's not some trivial one-liner.
I get that in theory a PWA can do offline stuff and whatever, but 99% of the time someone is only making a PWA to make the app installable on a phone home screen.
It is not a trivial one liner no, but you need 3 events implemented in your service-worker file, then in your main.js file you register it.
Service workers are just JavaScript that runs in the background in their own process in a browser. Could think of them as separate threads. Anyway, all of that can be done in less than 20 lines of JS?
I consider it simple compared to people building React apps and making the process more complicated than it needs to be just to build a PWA.
I was able to build a PWA out of a bootstrap HTML5 web app, with minimal JS for REST calls and ag-grid population.
What I have learned after all these years, is either do a Web site that is mobile friendly, or go native, anything else is a kludge in the search of holy grail of cross platform development without costs.
However this is a lie, because after going after the dream of cross platform, one lands on the (N + 1) reality, with team having anyway to master the leaky abstractions of the underlying platforms.
This * 100. I have a lot of experience with these types of apps and the biggest issue I've encountered is the platform keeping up with native technologies and OS updates.
Well it's definitely possible to have different takeaways from the same book. I can't remember what I took away as a high school student, but when I read it again in my late 30s (I think) it blew my mind a little bit because I had adopted a sort of libertarian view that anything that doesn't directly impede the happiness of someone else should be legal. Coming down to the idea that personal happiness is ultimately what I want (not just for myself; for everybody). Brave New World (which is almost 100 years old at this point) says, "OK, here is a world where everyone can be happy all the time. What do you think?" And as a reader, of course I'm on the side of John Savage. The Soma holiday and ignorance (bliss) is not what I'm after. And of course, without contrast against strife and unhappiness, how can there be happiness at all?
To pile on the battery issue, we had some very severe storms in my area that took down power for days and internet for weeks. Credit card processing was not possible for gas stations during that time period, but the pumps worked when the power came back on. The only way you could fill up at those stations was with cash. It doesn't happen every day, but it does happen, and perhaps more importantly could be made to happen.
Not that cash is necessarily a lot better. I can't remember what sci-fi character made the observation that "all currency is mutual delusion", but I observe the truth of that. I've thought it was in Hyperion, but have not been able to find it.
> And during the severe thunderstorms in Florida when everyone was coming to Orlando, places ran out of gas. We had an EV and charged at home.
Having an electric vehicle is NOT the benefit you think it is here.
You could just as easily have an internal combustion engine and spare fuel tanks. My car holds about 12 gallons of fuel and I have three 5-gallon fuel jugs ready to do. I use the fuel jugs for my lawnmower to keep the fuel fresh, but the jugs serve just as well during an emergency. And the benefit over an electric vehicle: I can put the fuel jugs into the tank or the trunk and just go.
If your EV is drained... good luck getting it charged when you're given an evacuation order.
Places running out of gas? That's a consequence of poor planning or a just-in-time economy (take your pick) on the gas stations, and a consequence of poor planning or a just-in-time economy on the people buying fuel from gas stations when they should have fueled up before the emergency.
Not everyone can buy fuel jugs. Good luck storing fuel jugs anywhere safe when you're living in an urban environment. It's the same for EV batteries too.
Operative word is “had” which fairly enough could be interpreted as the storm was in the past tense or the car was in the past tense. I meant the latter.
We only had it for six months (SixT month to month car subscription) while trying to decide what our next move was. We didn’t know whether we were going to stay in Florida all year or travel half the year and rent our place out and stay at home half the year or not.
We had just come off of a year of doing the digital nomad thing and flying one way across the country.
> Operative word is “had” which fairly enough could be interpreted as the storm was in the past tense or the car was in the past tense. I meant the latter.
Well, about 25 years ago the EU issued 1 and 2 Euro coins (no bills for those denominations) and as far as I know still do. So it's working for them. When I lived over there (2005ish) I didn't care much for carrying a coin purse in addition to my wallet, but I think that's just a cultural/personal preference. Likely same as you.
It's tricky, because an insurer of your body (for medical care) has a vested interest in you taking good care of it (health care). By offering to pay for these services, they can potentially realize savings by not paying for the surgery that your undiagnosed diabetes or heart disease or whatever resulted in later on.
And since this is capitalism, if one guy offers that (an obvious benefit, or so it seems at least), their competition must do the same. Now the marketing department has us convinced that insuring only for major expenses (high deductible plans, basically) is stupid and that good coverage means only paying copays (which are also on the rise, duh). And it's easy to convince the public of that because paying a $35 copay for a 10 minute exam is still an easier pill for most of us to swallow than $100 or $200 self pay for same, since we're not thinking about the $15,000 premium which can be made nearly invisible to the consumer if their employer is paying for it, etc. Numbers made up of course, but I think the scale is reasonable.
I don't have all the answers, but I do think it's obvious that capitalism is not the correct approach if your goal is a healthy population.
No worries, I think maybe I replied to the wrong comment - I would have expected to reply to someone who can't see how an Emacs (or vi) user could be as productive as an IDE user.
Well, I do agree with the sentiment that people can do what they want, but I think the title AND the picture of the granny with the casino numbers reflected in her glasses both describe a real phenomenon, which I might even venture to label a "problem", the above shared sentiment not withstanding.
All evidence anecdotal and all opinion my own:
First - have you seen the phone games (some of) these old people are playing? "Dumb" is not an objective label of course but.... have you seen them?
Second - I think it's definitely possible that there are seniors out there blowing their social security on gambling games. I think there are a lot of things wrong with that.
Third - Even ignoring "dumb phone games" I'm seeing people that I would have always said have no use for a computer (my father, age 74) compulsively getting their phones out and staring at them in contexts that a lot of people his age (including him, I wager) would have definitely considered rude just a few short years ago.
I catch myself doing this, even though there is literally nothing for me to look at on my phone as I deliberately don't have social media or games (other than Chess, ok) so that I don't do this. For example, I might pull my phone out at 10PM on a Saturday and open ThinkOrSwim before realizing it's not changed since Friday, obviously, and won't til Monday morning. Yes, this is my own personal problem, but I doubt I'm alone, and most people have a lot more distracting shit on their phones than I do.
Yes, it's my opinion and you don't have to agree, but I do think this broader phone addiction thing is a problem and I will qualify that as: something that is making our species less capable of survival in the long term.
I famously (among my friends) once received a phone call from my bank wishing me a happy birthday. At the time, getting a call from the bank, period, was very stressful for me (hasn't changed all that much), and as I thanked the caller and (politely, as I saw it) asked that they not call to wish me a happy birthday again.
I have been told that I am the asshole for this exchange, but I stand by this statement: it's not a personal touch if you do it for/to every customer; it's just a waste of time for all involved. And I would still say that I don't want my lawnmower singing happy birthday to me, and that I would rather just pay less for a lawnmower that can't do this.
I agree with you. My insurance agent sends me a birthday card, but it's a service they pay for and they likely don't even know it's happening. It's the opposite of a personal touch.
I have a reasonable amount of experience doing both, and my opinion is that development tools aren't really the problem. The biggest pain point is the platform specific deployment and maintenance requirements (including legal and technical documentation) that will be needed regardless of what technology you use to actually build the product. Because of this I always advise clients that they don't really need a mobile app. Just build it on the web.
If you absolutely must have a mobile app, you need to fully commit and hire an internal development team and be prepared to keep paying them as long as the app is going to be in use.
reply