(obviously flip out phones have a lot of moving parts to get damaged)
I think the ideal form factor for a proper development phone would be the Astro Slide (https://www.indiegogo.com/projects/astro-slide-5g-transforme...) – I haven't personally used it but I can imagine it's the smallest size possible for proper two-handed typing. The F(x)tec was a two-thumber instead.
I also had a Gemini PDA, which is basically the Psion 5mx keyboard glued to a shitty Android smartphone. Such a nice keyboard, but such mediocre and unsupported CPU...
With Android 15 you even get a full blown Linux VM running on KVM.
I was actually tempted to switch when AAA games like AC got ported to iOS, but then I remembered I love programming more than gaming.
With Apple discontinuing the small iPhone se and Android being able to run on folding phones that unfold to have an 8" display... Spending money on an Android phone is interesting again.
Is this any closer to becoming reality with modern Android?
Not sure which model though. So yes, somewhere, somehow this is possible.
However, when I sit in front of a big screen it is just easier to connect a "real" PC to it. Syncing data between my desktop and phones are pretty fast anyway.
This phone exists: https://puri.sm/products/librem-5, and it's my daily driver.
Librem 5 has open schematics [0] and runs an FSF-endorsed distro [1]. What else do you need for the verification [2]? Otherwise Linux could also be a honeypot, right?
[0] https://source.puri.sm/Librem5/l5-schematic
[1] https://news.ycombinator.com/item?id=25504641
[2] https://puri.sm/posts/hidden-operating-systems-in-chips-vs-s...
[0]: https://en.m.wikipedia.org/wiki/Operation_Trojan_Shield
Which AR glasses are good enough in screen quality for coding?
Do you wear the AR glasses when you're out and about like a coffee shop?
The only problems were that the version of Android I was running did not have windowing, so every app was full screen, and it could only drive one monitor. I guess some of the apps were also goofy on a widescreen monitor, but that's not really Android's fault.
It felt like the dream was almost there, but as time went on it was also obvious that nobody was terribly interested in making that dream a reality.
It is the main Android's fault. It's not based on GNU/Linux, so you can only run specifically designed apps and can't run ordinary desktop apps. As such, a large screen is almost useless even if it technically works.
I think the issue is that a unified computing platform would devour a decent amount of their laptop sales, but in the long run I think it would be a superior experience for the user. It really is a political problem and not a technical problem at this point.
Build a monitor with a base to set the iPhone on with wireless charging, you drop the phone on the base and it automatically pairs to the monitor and mouse/keyboard. You can call the system “Apple One” or something similar catchy. There you go Apple, just saved you millions of dollars on product development.
I think folding phone is the better approach.
https://www.androidauthority.com/run-desktop-linux-apps-on-a...
"An upcoming Android update will significantly upgrade the Linux Terminal app, enabling it to run full-fledged graphical Linux programs on supported devices"
However, Google is evolving Android's security model towards app-specific storage and away from shared/global storage access (for legitimate security concerns), so no telling how long the window will be open.
Unfortunately they stopped making phones because they didnt sell well. Which I always thought was odd because they had all the coolest niche features and were fairly priced.
I couple of years back, I really liked replit for having probably the best integrated IDE on a phone. Everything was so smooth and well thought out.
Just judging purely from the weight of devices, no.
Also, using two thumbs can be more awkward if you have big hands.
The awkwardness of phone coding isnt the typing of text (wherein most people rely on decent prediction rather than precise typing), it's the use of symbols.
Not every programming languages require a lot of symbols. Like Python, Go, OCaml etc. For me writing many symbols is awkward even on a physical keyboard.
Not if you're using a Swype-style keyboard.
Is there anything more than a proof of principle that people (aka anyone who owns an Android 15 device) can try out?
I didn't find any instructions for actually doing that.
https://deepakness.com/blog/android-linux-terminal/
Basically just go to developer options and enable Linux development environment. A Terminal app will be installed.
You just need a non-Snapdragon Android phone. Because Snapdragon uses a different hypervisor than other vendors.
> This is like rsync for your phone. In fact I would not be surprised if this is implemented using rsync. Once you configure an offline folder, it will two-way sync that folder while you use the app. The kicker is: on your phone you can now open that folder in another app (like an editor) and make changes. When you switch back to the shellfish app, the changes are uploaded almost instantly.
One can get this killer feature for free with Android and Syncthing. It’s definitely pretty nice!
And of course one can also run Emacs and other free (as in speech or beer) text editors on Android.
IIRC there are a couple of ways to get a full Linux command line environment as well.
I ended up moving away from it just because ‘typing’ with my thumb is painful.
The last part is kind of depressing really.
You do realize that not every minute you spend with a child is “quality time” right? Like most responsibilities in adulthood, child rearing has many periods where your child simply needs your presence. The child themselves cannot handle full time mental and emotional engagement either.
Relax.
Now that iOS and Android are Tier 3 platforms, we should be getting closer to the day that we can generate an IPA or APK from our Python project in a single click.
But you can compile an APK from Java/Kotlin source (both your own and 3rd party OSS apps) and install it on your device, the app to do so is called CodeAssist.
How do people that rawdog international flights do it? No phone, no books, no music, maybe just the flight screen with the little aeroplane over the map.
You could just let your thoughts wander. That's a form of meditation, letting the mind unravel on its own.
I wish I did it more, actually.
Of course, I'm sure I was often annoying as hell during long car rides when I was a kid. And the luxury of handing kids a magic-zone-out-device is a lifesaver. But I do wonder if I'm shortchanging my kids by not forcing them to be bored more often.
I tried at first, didn't work. I was frustrated after 15 mins of this. But don't worry - I had a plenty of thought wander time at nights, when I was trying to fall asleep, being awoken for the 7th time that night.
I've never looked back at all the time I spent with my infant son asleep on my arms and thought, damn, what a waste of time that was.
Everyone is different I guess.
I know of it via a streamer who uses it to control OBS, but this is more its native use case haha
sometimes I'd like to keep my regular phone in my pocket, providing internet and cpu-assistance via bluetooth, but the UI be another device altoghether.
My thought for this was not for a mobile IDE, but a navigation device. iwatch is ok, but still not there.
By the way, the dev also works on a Git client for iOS, Working Copy. I used that together with Shortcuts to make my Obsidian vault sync via git in the background.
iPadOS and iPhoneOS will remain useless for actual dev work until they unlock hardware virtualization in Virtualization.framework.
Apps on the iPhone and iPad will remain sandboxed, and root isn't possible, so being able to run a VM that _can_ run as root is the next best thing.
I believe this framework on mobile uses software emulation, which is horribly slow and guzzles battery.
Well, this and third-party browser engine support. Mobile Safari is absolutely horrible. This doesn't become apparent until you're using your iPad full time. Death by a trillion cuts. It also burns battery when you start using it with desktop websites.
Until then, the experience is basically you using your iDevice as a dumb terminal (don't mean that as a dig against Termius; great app given its limitations) to some server somewhere where actual work is done. Rendering issues galore if you use vim with color schemes.
Keeping development tools away from users gives Apple a substantial amount of power over them that they can rent out to approved software development organizations.
Developers are necessary, and their needs has to be tolerated, but only as long as they are successfully kept distinct from consumers.
It's another to have the company go far out of their way to they don't even leave the field open for someone to cater to your needs.
I used a Samsung Galaxy Tab S8+ with the Book Cover (the one with the track pad) and the Smart Folio (the one without a track pad).
The track pad was horrible. HORRIBLE. Ghost taps, misfired scrolls, and cheap feeling clicks. The track pad on the Magic Keyboard is as good as the standalone Magic Trackpad; this didn't even come close in quality.
The keyboard was fine, but keyboard shortcuts are implemented on a per app basis. This is fine until you want to use CTRL+L in Firefox to navigate to some URL only to discover that Firefox simply doesn't support keyboard shortcuts! Someone opened an issue for this two years ago too because, insanely enough, FF used to support them but simply dropped them because "reasons."
Then there was the cover. The Book Cover provides a Surface like kickstand that's adjustable. Great on a table; unusable on your legs. The Folio solves this by using a tented support, but this forces the tablet into a 25-ish degree tilt that I didn't find comfortable. There wasn't anything like the Magic Keyboard's excellent magic hinge (though maybe later model Galaxy Tabs have an equivalent).
All that said, Termux worked GREAT, and I think I would've gotten mileage out of using an external screen with DeX though I've heard it's lacking in that department. I badly wanted this setup to work, but there were too many quirks.
Also, battery life sucked.
Dev site: https://getutm.app/
Using an iPad Pro with the keyboard works great, plus you can use a bluetooth mouse and even have a second monitor.
Even with all that, I still use my laptop a lot more.
Maybe that's because little of the above comment seems fully accurate, perhaps stemming from thinking one should be working as root on any device. If you know how to dev while avoiding need for root, you likely can iterate into how to do this.
Separately, terminals may be dumb, but mosh, IDEs using code servers, git, and other distributed computing patterns that can be good ideas (depends on nature of work and level of collaboration) no matter your UI device seem wise. Even on an airgapped desktop, dev containers may be wise.
TL;DR: Inability to dev on iPad Pro 13 5G with trackpad keyboard case (and USB-C dock or 4K second screen if you like) may be more cultural than technical.
I know the full-blown Linux terminal is "released", but only for Pixel phones by what I've been able to find. Definitely can't install it on my OnePlus 13 yet.
I've been using JuiceSSH for years, but it's getting a bit long in the tooth and doesn't receive updates for years anymore either.
Works from my iPhone, iPad with Magic Keyboard or Huawei Mate XT depending on what I'm out and about with for the day.
Folding bluetooth keyboard and bluetooth mouse
hnlmorg•5mo ago
I actually preferred those devices for development work because the stylus is a much better input device than fat fingers when it comes to precision input. However you then lose the one-handed feature that the author is keen on.
These days, MacBook Pros have such long battery lives that I couldn’t imagine wanting to use a phone-form-factor for any serious work. But maybe the new style phones bendable screens that flip open like a book, might tempt me back to using a phone for development work again. Unfortunately such devices are currently Android-only at present.
teekert•5mo ago
That does not rule out having your phone as your primary development device of course. I was already pleasantly surprised that when I tried to charge my iPad with the USB-C dangling of my ultrawide, the screen came to life! Sadly with the iPad's own screen ratio. My screen-attached wireless keyboard and mouse did work though!
I still dream of having normal Linux (or GrapheneOS, or PostMarketOS) on something like a Fairphone and being able to plug it in USB-C and just work (I just need a terminal, perhaps an editor, and a browser of course). Ubuntu Phone came so close :'( Maybe it becomes workable on the FairPhone 6... (actually, it seems like it is working? Can it do the desktop thing? It does say "Wired External monitor :check:")
Or you know, at least a Padfone [0] (just kidding, I'm just always looking for an excuse to share this masterpiece of a video).
[0] https://www.youtube.com/watch?v=Z2ANnpHnUrc
nehal3m•5mo ago
In principle however, it worked.
hnlmorg•5mo ago
I was pleasantly surprised with my Son relatively budget Samsung phones, when I plugged it into an external monitor. Instead of showing a the phone screen on the monitor (like an iPhone would), it loaded up a different desktop that looked more like Ubuntu than it did like Android.
I can’t remember the specifics but it was definitely designed to be used with a keyboard and mouse.
wisenull•5mo ago
You can run the browser without any issues, use ssh with JuiceSSH and have the terminal. Running vim on there might be an option but another editor that is not a TUI might be more troublesome.
hnlmorg•5mo ago
wisenull•5mo ago
hnlmorg•5mo ago
teekert•5mo ago
I will keep dreaming and in the mean time keep my Linux Laptop close.
hnlmorg•5mo ago
I think the best we can hope for is something that allows us to run a sandboxed vanilla Linux container. Which I think is already possible on Android?
microtonal•5mo ago
Google Pixel is supposed to ship a more complete desktop in Android 16 QPR1. Also has a Linux VM.
Of course, Samsung has had a pretty complete desktop on phones that support DeX for a while now.
marci•5mo ago
edit: You're right, an unfortunate downgrade https://forum.fairphone.com/t/fp6-discussion-about-usb-2-and...
thewebguyd•5mo ago
I'm actually really excited for this and am watching it closely, although I believe right now it's limited to Debian? It might be the thing that finally tempts me out of iOS & the whole Apple ecosystem.
I want the one device dream, but I want to be able to run my own OS on it, even if it's in a VM for desktop mode, so I can bring my arch+hyprland setup with me. It can run Android in "phone" mode that's fine, then when I hook it up to my dock or a kb+mouse it'll launch arch.
I won't go all in on it though until it looks like Google is committed for the long haul. I don't want to switch "ecosystems" and rely on it only for them to kill it by Android 18 or whatever.
LeratoAustini•5mo ago
Termux is as great terminal, AFAIK it can be run on any modern (not even that modern) Android. With that alone you can get most common Linux terminal packages, run vim (including LSPs), tmux, ranger, compile C/C++, Python, Go, Rust...
Termux-X11 lets you run X11/GUI apps. It has settings to properly capture mouse (trackball in my case) and keyboard, preventing annoyances by disabling Android default keys (eg allowing Alt-tab to switch tabs in your Linux desktop rather than switching between Android tasks).
Termux proot-distro lets you install loads of Linux distros. I've daily driven Ubuntu in the past, currently using Debian Bookworm on my Tab S8 Ultra, which although a flagship is a couple of generations old now. I run the same setup on a Tab S4, which is a 7 year old device now. It's slow for some GUI stuff but works well for a lot of things, most stuff in the terminal is great.
The above is without root. With root, I've recently changed over to chroot as I wanted to try it.
You can get GPU acceleration, I'm currently using turnip, there are also virgl drivers, it can take some trial and error depending on which GPU your device has (I don't know much about GPU stuff so if any of those sentences had errors that's why, but it's perfectly googlable).
As I just rebuilt my system a few days ago, here's what I've done since then:
Node works perfectly. Python works perfectly. As above, C/C++, go all work perfectly (ARM64/AARCH64 of course).What I'm trying to say is, it's strange for me to see so many in this thread wondering about if it's possible to do Linux stuff on Android. I thought Termux was pretty well known (?). I think the first time I installed a full Linux distro on Android was about 10 years ago via LinuxDeploy. I've been daily driving a setup similar to the above for maybe 5 years, on 3 or 4 different devices. I get that this is geeky and a bit niche but I'm surprised to see so many comments on HN without this stuff being mentioned.
I have a Macbook which I use begrudgingly when I have to (Apple lock-in reasons such as needing to compile Flutter stuff for iOS/Mac on Apple hardware --- btw Flutter works well on my Android Debian compiled for ARM64 Linux, meaning I can do most Flutter dev work here and just move over to the other hardware when I want to compile/test other architectures). I have an AMD ProxMox machine for when I need a bit more grunt or have something that requires Windows. Despite these other machines, if I can do it on the Android tablet I always prefer it (love the OLED display and low power usage), meaning 70-80% (guessing) of my work gets done there.
Docker can't/won't work, something to do with proot/chroot and cgroups I think. In my limited experience (Flutter), cross-compiling to different architectures hasn't worked. The OOM killer in Android can be annoying so you want a device with plenty of RAM, but there are ways to mitigate it, and in practice it doesn't bother me (rare and relatively inconsequential in my usage patterns) otherwise I wouldn't work this way.
I get that people in here today are mainly talking about phones, and I'm using tablets. But this all works on phones (I used to do it on my Note 3 up until I lost it a few months ago, that's over 10 years old). You just need a device which outputs video over USB-C, not uncommon nowadays.
I have had to faff a bit to get stuff working. Some people will hate this and just want instant. Horses for courses, I'm happy.
I haven't tried the new Linux stuff on Android 15 as I don't have a Pixel. I get the feeling it won't have much if anything to offer over my current setup and might be slower. But hopefully it will become standard in future. I don't like Dex on Samsung as it forces its own UI sensibilities on you (eg last time I tried it windows had huge ugly titlebars, which I personally don't like, hence dwm preference).
I've probably spilled most of the beans in this novel of a comment, but have written about this stuff before, here https://mm-dev.rocks/posts/android-as-a-dev-environment/intr...
pjmlp•5mo ago
On Apple devices it is kind of ok, Android outside Samsung is still pretty much hit-and-miss.
Likewise I don't want AI chat boxes, I want to speak with my computer, in my native language, again still not there yet.
alwillis•5mo ago
[1]: https://wisprflow.ai/use-cases
pjmlp•5mo ago