Developer wrote 25k lines of Neovim plugin code using phone and touchscreen
Comments
zachlatta
isoprophlex
From my spoiled western perspective it seems surprisingly difficult to either just send him the money or have a laptop delivered to him. I wouldnt have guessed that upfront...
wordofx
He doesn’t want one sent to him because he believes customs will hold it until bribed.
zachlatta
We shipped 10,000 packages of free hardware and other prizes to teenagers this summer as part of https://hackclub.com/arcade/. In total we shipped to 119 countries.
India and Bangladesh caused by far the most issues with customs. Packages got held up, and they often tried to charge duties of up to 70%. His concern is definitely real.
The best option is to buy an item within the country using a US card, or to buy an item using a local card and get reimbursed via PayPal from a US bank account.
cr125rider
Customs theft is basically the norm there, it’s very frustrating.
sitkack
Seems like an easy problem to solve the criminals are at a fixed address and are in documented possession of the items.
joseda-hg
Assuming already poignantly corrupt authorities have any reasons to police themselves, they also have a billion ways to stall, cover and act innocent "Oh noes, we've been so overwhelmed, I swear I was just about to approve this, woe is me", and it will probably be true (The first part at least), they just take advantage of it
Also there's no clear chain of custody for stuff or incentive to have it, "Lost somewhere in customs" is about as precise as you usually get at the best of times
sitkack
In terms of 3rd world corruption, this one is easy to solve. But the fact that it isn't solved is what makes it a 3rd world country. You put pressure on the low level corruption so it moves higher up the chain. In well functioning capitalized countries, the corruption happens at the corporate banking level. You can't have a well functioning economy without the smooth movement of goods and services.
woleium
i think we are supposed to call them developing nations these days.
joseda-hg
Which isn't uncommon in places with high corruption, I remember the horror stories trying to order a high value item accross the border (Different country similar situation)
Izikiel43
Welcome to dealing with a 3rd world country, this is expected.
Source: Am from 3rd world country.
signaru
If it would be less trouble (because of customs and other external factors), and assuming it can help, maybe a phone keyboard can also be considered? An OTG cable plus a normal USB keyboard might also be a solution if portability is not a requirement.
wendyshu
Why a MacBook, out of curiosity?
CrimsonRain
I had a talk with him and it seemed like the best fit. In the end, MacBooks are the best use of money when in comes to laptop. Battery life is crucial due to frequent blackouts.
I'd have preferred something from new Intel ones but I couldn't find anything available there.
rochak
Not sure I agree. They are built to last, yes, but would be a pain to get fixed if they break down. If it were me, I'd have preferred something like a Thinkpad.
joseda-hg
That's 50/50, having lived in a poor and non tech heavy part of the world, at least Apple models are relatively few and high value, so shops pay special attention on keeping stock of what's reasonable and first party may be an option if you go to an affluent part of the country
On the contrary, usual recommendations, like business grade retired fleets were a lot more uncommon, because "business" work laptops on the area were just consumer grade whatever was cheap at the moment
The weird ocasions you saw stuff like Thinkpads or similar, they commanded a premium because the techies WANTED them
shanselman
you're the best Zach
barosl
I also write code using my phone when I'm on a bus or the subway. It requires some patience but after getting used to it, the experience is surprisingly pleasant especially if you're familiar with terminal-based tools. My environment consists of:
- Galaxy S24 Ultra
- Termius: I think it is the best terminal emulator and SSH client on Android. The sad thing is that the paid version is a bit too expensive. ($10 per month, no permanent option)
- tmux: Mobile connections are brittle so it is a must.
- Vim: Allows me to navigate the code freely without using arrow keys, which is really useful on the touch keyboard.
Not that of a big deal, but the thing that I think is more pleasant on the phone than on the PC is that I can use my fingerprint to log in to the remote server. The fingerprint is stored in the TPM so it is safe. It feels magical!Edit: The biggest pain point for me was the limited width of the smartphone screen. It is a bit hard to skim over the code quickly because most lines are severely cut. Text wrapping helps this but personally I hate text wrapping. Keeping landscape mode is not an option because the code area is completely hidden when the touch keyboard is displayed. That's why foldable phones are great for coding, as they have a wider screen. My previous phone was Galaxy Fold and it was a wonderful coding machine.
glidergun
Try pairing tmux with mosh, it's how I've been working for years whenever I'm forced to admin through a brittle straw. Mosh combats lag pretty well and doesn't care if your connection drops intermittently. https://mosh.org/
barosl
I tried Mosh but it didn't fit my taste. It tries to "predict" the state of the screen before being acknowledged by the server, but sometimes the prediction is wrong and Mosh reverts the cursor movement and redraws the affected area of the terminal. For example, when I'm using split windows in Vim or tmux, Mosh allows typed characters to overflow beyond the separator, briefly, until being told "no" by the server. Personally I find this behavior very disturbing. Enduring higher lags was more bearable to me.
glidergun
I can see how that's off-putting, but I've learned to ignore the occasional cosmetic hiccup and just trust that it will sync up correctly. I use it with --predict=experimental (largely undocumented), which seems to be even more aggressive, but it works great for me.
ksynwa
You can try eternal terminal: https://eternalterminal.dev/
I don't remember it doing any sort of prediction but the last time I used it was a while back.
tombh
Have you tried any of the various `--predict` options? At least `--predict=never`.
nissarup
"...admin through a brittle straw." :D That's exactly what it feels like.
_joel
mosh has saved some hair pulling, especially when on a train journey with at best spotty 3G and you get pinged about an outage.
mewpmewp2
I wish I could do it. I find even just texting annoying. Also Galaxy phone. I wonder if my fingers may just be too fat. Although I don't think they are. Actually I hate doing most things through a phone, and e.g. if a food delivery app has a desktop version I will always use that given the chance.
rlupi
I have been really impressed lately using Samsung Dex on a XReal Air 2. AR glasses have really improved in the recent years. It gives you a better screen than many small laptops.
For longer trips (train, airplane), add a mechanical wireless bluetooth keyboard (my choice would be a NuPhy Air 75) to feel like a king. For the occasional browser + SSH on the go, it's better (less space + better keyboard + larger screen experience) than bringing my 13" laptop (+ phone).
TristanBall
Gosh they look interesting. But ridiculously customer unfriendly product naming, and a website that doesn't provide clear information on international shipping just raises so many red flags for me.
ionagamed
Mosh was suggested in another comment, but I’ve found that et (https://eternalterminal.dev/) suits my needs better.
It does nothing to fix lag, but connection failures are handled without a hitch, same session resumes like normal on spotty train wifi and mobile data.
sharperguy
Do you use a special keyboard app too, or just the default one?
barosl
Just the default one. I tried some alternative keyboards and they are better in some ways but in the end the default keyboard was enough. Termius provides input of some special keys (e.g. Ctrl, Alt, Esc, Tab, Home, End) so that's another reason why the default keyboard is enough.
autoexec
Be sure to check the privacy policy on your default keyboard. I've been burned by that before. The default keyboard on my last galaxy phone was sending every single keystroke to a third party and checking their privacy policy showed they used that data for things like market research, guessing at my level of education, building a psychological profile, detecting my interests, etc. and that they in turn shared that data with others.
I switched to AnySoftKeyboard and although the auto-correct/spellcheck is way worse (understandable since they're not collecting every word everyone's typing) the customization and terminal mode are great. I'd occasionally code on my phone in termux (the largest program written on that device was only around 2000 lines) and it did the job.
brokenmachine
Phone keyboards are a big security risk.
Is there a way to completely block them from accessing the network?
autoexec
Nothing reliable that I know of. To have any hope at all of being able to do that with Android you'd need a rooted device. Without root access "your" phone isn't something you can reasonably hope to secure since Google, your phone carrier, and the manufacture all have privileged access to your device while you don't. Even with a rooted device I'd only use an app that you trust. The default samsung keyboard that phone came with out of the box was downright adversarial so at least I got rid of that, but I don't think of cell phones as something I can really secure or trust in a meaningful way.
skeledrew
You can firewall any app/service on Android with RethinkDNS.
latency-guy2
Just FYI, this goes for all Android users. I believe iPhone has similar capabilities but I have never tried myself.
Your phone likely accepts a physical keyboard. I have a USB-C input, but can use a travel dongle (female USB-C device accepting USB-A) to attach.
I used this a few times to do some very light work when travelling. A good setup is picking up a cheap bluetooth keyboard/mouse combo and using the female input to get both. Many alternatives to this too, e.g. you can also attach a dock to your phone to get all devices your phone has the hardware to accept, and you'd be surprised what it does accept.
nanna
But how you type?
gorlilla
T9 on a Nokia 3310.
InDubioProRubio
Laptop is superior.. sorry
ksynwa
I'm getting a little bit of anxiety just reading about this. I hate typing on phone especially if the text haa symbols mixed in. I mistype a lot more often on phone and often somehow skip entire words. (Don't know what the cause of this is.)
I am guessing they using some specialised keyboard that makes it easier to type symbols etc.
konradkpl
He posted a recording in which you can see how he works https://github.com/OXY2DEV/markview.nvim/issues/216#issuecom...
stavros
Why is there no keyboard on the screen there?
konradkpl
Height of the viewport suggests that onscreen keyboard was opened but not recorded. Here is another video where keyboard was recorded: https://github.com/OXY2DEV/markview.nvim/issues/216#issuecom...
stavros
Ahh very nice! Can't do that without accurate fingers, for sure.
mewpmewp2
Same observation. I don't know how or why, but I seemingly words, and I absolutely have to reread what I wrote, and usually do updates after that. And every time I'm surprised by how bad mistakes I made.
niccl
:-) clever
0xEF
Feeling that anxiety here, too.
There's some okay text editors for Android, Hacker's Keyboard (which I still use) and of course Termux. The tools are all there, but when I tried to write simple little scripts on mobile, it was all the nightmare I thought it would be.
Been using smartphone touchscreens for a decade+ now and still feel like an old man that just can't get used to this new-fangled way of doing things. You can look back at my comment history to see the types of errors my brain, thumbs and far-sighted eyes love to produce. I honestly do not know what I was thinking when I decided to practice code on these devices, but that quickly ended.
Lunar5227
I would guess termux and a bluetooth keyboard perhaps?
Mwurk
He doesn't even use a keyboard: > Minus the keyboard, actually.
yread
Or maybe they spent more time thinking before writing so they didn't have to rewrite it so much.
Either way, very painful
mewpmewp2
I think best when I'm writing (code) though. It keeps my mind focused especially on the task at hand. I've been given feedback that I jump too quickly into code, but that's the way for me to focus. I would prefer to write a quick throwaway prototype as opposed to form some sort of plan or document. Otherwise my mind will wonder or I get some sort of anxiety.
erbdex
In developing countries like India - a surprisingly high number of students do not have access to a computer. I have a lot of friends who had to learn enough on phone to bootstrap into buying their first laptop.
One of my best friend - in his village in the hills they did not have electricity but the government had sent a PC. No one was allowed to go close to it but that was the very thing that inspired him to learn computers. Today he's one of the sharpest linux/infosec folks in my small circle.
icemelt8
Thats true most people in Pakistan don't own a laptop and don't ever intend to buy one. It makes me irrationally angry when people are buying flight tickets on the phone even though having access to a laptop.
peanball
I buy flight and other tickets on the phone all the time. Autofill for CC details, quick access to PayPal and other things are all there. One swipe away.
Transport and booking apps (Airbnb, etc) are all pretty decent and similar to the speed on a laptop. But I can do that while walking the dog, while on the bus, and many other situations where I’m not at a proper computer.
Elder millennial (1982), so it’s not just a young people thing.
CoolCold
Airplane tickets by paypal- any other service except Agoda does this?
pandemic_region
Back in the 90's, I created something like a mortgage calculator on my HP48gx. It was about 1500 "lines" (a line being maybe at most 30 chars) , all keyed in using only the calculator. The mind is capable of many things.
GuB-42
The HP48 has a pretty good keyboard. I remember someone who typed as fast as most people would do on a full keyboard, using some weird kind of touch typing with the hands vertically positioned on both sides of the calculator.
The problem is more about the software. The HP48 is pretty slow, and has a tendency to lose your data a bit too easily. There are some editors written in assembly that are good enough though, and since you had a GX, you could use memory card backups.
pandemic_region
Yes, the keyboard space was large enough that you could get into a routine of using both hands. Scrolling through the code was a nightmare though, it was not the fastest IDE at the time.
Ringz
I wrote a few programs on my HP48GX (which still works perfectly). Programs about Maxwell formulas and Einstein's effects where a little bit more complicated. Not once did I think, "But this is exhausting!". However, I stayed under 1000 lines.
But now, if something gets a little bit more complicated or repetitive in my cozy Neovim environment I think more about how to avoid this with ChatGPT, Cursor, Windsurf… maybe a restrictive environment is sometimes better to actually build something?
pandemic_region
It's development stripped down to the bare essentials.
alex_suzuki
My HP48 from high school (90‘s) is one of my prized possessions. It still works. And I still can’t use a calculator that does not use Reverse Polish Notation…
mmcgaha
I was looking for a reference but I am afraid it is lost in some news group in the distant past but my understanding is that all of Meta Kernel was written directly on an HP calculator.
Joel_Mckay
Nice, I too wrote my first real game in RPL.
The HP48 series lives on as a free android app, for all the RPN fans. =3
ongytenes
I been writing programs for over 50 years and I shuddered at the thought of doing it on a phone. My first thought, he must be a masochist. Then I thought he might not had anything better to work on. I'm a touch typist who doesn't need to look at the keyboard why typing. Given my cataracts and tiny screen and tiny keyboard, it is torture to type on my phone.
personalityson
Someone made a comment that millennials are the first and last generation who grew up with desktop PCs, discussion forums on the raw internet. Kids these days are mostly using smartphones, tablets and apps.
We are used to think that younger people know more about computers, but in the case of desktop computers this might not be the case.
Joel_Mckay
People are already organizing a gofundme page for the author.
Most computer hobbyists hate seeing talent hobbled by circumstance. Our local telecom has a nonprofit up-cycling program for these kids. =3
CoastalCoder
> I'm a touch typist who doesn't need to look at the keyboard why typing.
:)
mckn1ght
I’m a touch typist as well but use a combination of swype/dictation on mobile and pretty much all my writing there looks like this. I will bang out a message, then have to painstakingly edit all the mistakes. It’s an annoying downgrade in communication experience.
stronglikedan
My rule is to only correct things if I am sure it will impact the audience's ability to deduce my intended meaning.
bmicraft
I can literally type on my phone without looking at the keys with an acceptable amount of erros. Might be a skill issue?
temporarara
If you've got big fingers you need quite a lot of skills to type on your phone even when you are looking.
thot_experiment
the bar for "acceptable errors" is different if you're writing code vs texting bro
tomjen3
I agree, but also: if younger me only had access to coding through a phone, younger me would be coding on a phone.
segmondy
Strange, any phone today would be better than most hardware we had 30 yrs ago. In the 90's I had monitors with resolutions of 320x240, limited info on the screen. Things were slow. If you gave me the option of using a phone from today or a computer from then, back then and today, I'll definitely pick the phone. We don't code at the speed of thought, we poke at the computer one key at a time, one register at a time.
vunderba
Not about the speed, it's about the comfort for me. And 30 years ago would be the mid 90s so most people had 14 inch monitors that supported 640x480 or even SVGA at 800 x 600 with ease.
To me, it doesn't matter how many pixels your phone is displaying when you're limited to a whopping 6 inch diagonal.
And I can't even imagine torturously attempting to touch type on the phones keyboard (which is displacing even more of your limited phone screen), versus a dedicated mechanical keyboard which was also common at the time.
throwaway290
I wrote code with a cheap logitech keyboard and a phone. The keyboard keeps phone upright. The screen is enough for text. But touchscreen for typing? nope thanks give me a 30 yr old computer
matwood
The Painted Man is a novel that was mostly written on the author's Blackberry while riding the train to work.
https://www.geeknative.com/6955/the-painted-man-written-on-a...
burgerrito
I had a Nokia qwerty phone, and, man, it was such a superior way to type portably. I wish they still sell those kinds of phone...
Like computer keyboards, it also had a ctrl key. That means that I can ctrl+c and ctrl+v to copy paste.
anshumankmr
God knows how fast I could type on a BB. It was my first phone which was my dad's old phone and it got me into WhatsApp and browsing on the phone. Jeez, I remember my dad might have been one of the 10 people who ended up paying for WhatsApp. In my first year of having it, I think it was extended for free and I think it was acquired later by FB.
rozab
This is irrelevant to coding, but boy I miss what it felt like (as a child) to type on a T9 predictive keypad. Once you get used to it it's easy to 'know' by muscle memory when the desired word is the second or third choice, so you end up typing with basically the same number of keystrokes as qwerty but with only 10 keys.
Then again maybe this is only possible with the superpower of childhood cognition. I recently witnessed a friends 9yo playing with a 1940s typewriter I'd restored. Having basically never used a full sized keyboard before, within about 2 minutes she'd familiarized herself with the qwerty layout, figured out how to turn the shift lock on and off, deduced the correct key action to bounce the hammers off the platten without them clashing, and figured out how to change colours. All this took me at least 20 minutes.
spiderfarmer
I loved my blackberry but typing on it was way slower than on a touchscreen with predictive text. Especially when you need non-alphabetical characters.
guappa
I can't say I can relate.
Even with regular nokia phones people were disabling the t9 because it was faster to just type without predictive text.
For me predictive text is mostly useless because I write in 4 languages and it can't even guess which language I'm using, let alone guess the word I want after.
jeffhuys
For me t9 was king - I still remember to type blindly and know exactly how many times to hit the asterisk to get the word I want.
With touch screens I just turn off auto-correct. Sometimes I hit the words above the keyboard to complete/repair a word, sometimes I hit the word that’s underlined red or blue to fix it. But never automatically.
latexr
> I wish they still sell those kinds of phone
You might be interested in https://www.clicks.tech/
I have no idea if it’s good or not, just remembered it exists.
amaurose
I also had several Nokia Communicators. They were great unique pieces of hardware.
guappa
Eh I wrote a short story on my qwerty nokia!
Also, python programs :D
wodenokoto
As always, the Japanese has us beaten.
Cell phone novels has been a thing for over 20 years and they were originally written using numpad cellphones.
0xEF
Physical discomforts of writing a novel on a smartphone aside, I am trying to wrap my head around trying to do the same with a device that needs T9 as input. I type slow on a touchscreen as it is, frequently losing my train of thought before I can get my whole comment out, the comments themselves often turning into meandering adventures in Fuzzy Logic Land as a result. I cannot imagine banging one out on a number pad, and I lived through that era, even working a job where cell phones were a no-no so we got pretty good at firing off quick texts without having to look at the keys. Short messages? Can do. Lengthy HN replies? Count me out.
wodenokoto
Back in the T9 days, it was not uncommon for Japanese to be faster on a cellphone than on a keyboard.
The input algorithm used in Japan wasn't T9, but very similar to the kana-keyboard available on iPhones today, and the prediction (both kana-to-kanji and next word) was quite good as far as I remember.
socksy
I dunno until I learned to swipe on a touchscreen keyboard I was (and still would be) much slower there then with T9. I miss being able to text in my pocket without looking at my phone too...
stavros
T9 was pretty good, I remember being fairly fast on it. It wouldn't have been such a slog to type on, I don't think.
bpye
I understand why we ended up with touch screens but I do miss physical keyboards. Swipe typing is fast-ish - but only for dictionary words, not punctuation, etc.
nathell
A good read, too!
matwood
Definitely! The later books in the series fell off a bit, but the first couple were very good.
cess11
I think there's a lot of us that do more or less serious programming on our handhelds. The author of Picolisp does a lot of development on a tablet, and has created his own software keyboard: https://software-lab.de/penti.html
I've been using it for years, and have solved crises at work with it and Termux by SSH:ing from my phone into a box attached to the right VPN and jumped from there to control over production. Tablets are really nice in this area, they have a lot of battery time and one can lay in bed and do the stuff in vim, tmux, &c. as one usually does, just a little bit slower due to software keyboards being a bit less efficient.
theden
I've done development on a Nokia n900, but with an external keyboard — can't imagine using an on-screen keyboard, or even a tiny physical one!
Funny thing is, I don't know if some high sec work envs are much better, where developers have to nest remote through machines (of different OSes) just to get a terminal...
bionsystem
We work exclusively on remote VMs that have no internet access. Well writing the stuff is fine through PuTTY (with tmux+vim), some other guys use RDP with VSCode but it is extremely laggy and I hate it. Some tasks can be annoying.
$job before that I would remotely connect to clients machines through various ways. Most would be a webpage with some terminal emulation in JS, or some web-based RDP (to a Linux or a Windows machines), and sometimes bouncing again to our last machines. And sometimes you get the actual VPN where all you have to do is to run the client (typically IPDiva, sometimes they use OpenVPN) and just run putty to connect to your machine.
That last experience was often painful especially when certain softwares in between you and your work start to fail. Also a lot of those clients had none or very restricted internet access, so it is really hard to get debugging tools. Sometimes your work would just be a loop of "connect, type a few commands, get the web-based terminal messed up, disconnect, repeat" until your problem is solved. Especially, for our needs we set up our own windows VMs with all software needed to connect to all the clients, hosted in our office and accessible via our own VPN. This way our clients would only see our office IP. But that meant one more VPN for everybody and one more "bounce" to do before any work...
wordofx
> We work exclusively on remote VMs that have no internet access.
Is this some kind of developer dominatrix fetish or something where people get off punishing themselves.
“You’ve been a bad boy! You used AI! No Internet for you”
bionsystem
We can use any AI we want but only on our work laptop. The work laptop cannot install any useful dev tool so we connect to the remote machine for any code write/build/execution, and if needed copy/paste anything we find online or from an llm.
So work laptop has internet, dev machine doesn't. Dev machine has access to some nexus repository (some are proxies to the internet like pip, maven-central, nodejs, some rpm like EPEL, etc) and can actually run code (laptop doesn't, lots of windows "security" stuff activated that require signing the code for every edit).
I think they call it "security" or something like that. They pay reasonnably well and working hours window is reasonnably small so at this point I don't care anymore. At least I avoid the cloud "cool kids" crowd where everything has to be the absolutely latest tech and nobody really knows why everything is re-written every 6 months.
ivjw
Whenever I want to put something down, I open the browser on my phone, type in the address bar, then hit <CR>. Later I synch them along with the other tabs when I have access to the desktop. This routine developed totally unintentionally and has been somehow more productive than all the fancy notetaking apps I'd used. Maybe it's something about the claustrophobically tiny input slot that makes me want to widen it as much as possible. Another bonus is that when I later get to format the long string of text that is synched (as you can see I don't believe in the paragraph when writing on my phone), I get loads of additional ideas.
oneeyedpigeon
Wait... so you send everything you want to put down to Google, or does your browser's address bar work differently from mine?
ivjw
They're mostly intended for online publication, so Google will have them sooner or later. Yet with personal stuff I'm more discreet, of course.
pavlov
That's even crazier than my habit of writing notes in macOS TextEdit and never saving them. (Currently at "Untitled 235")
thih9
I’m at 380; I discovered that if you open mission control[1], preferably via the four-fingers-swipe-up touchpad gesture, you get some pretty visuals.
Also, I have access to all of them on my phone via Files app and the iCloud sync, this is surprisingly practical.
[1]: https://en.m.wikipedia.org/wiki/Mission_Control_(macOS)
isametry
> I have access to all of them on my phone via Files app and the iCloud sync
TIL that "unsaved" TextEdit files automatically go to the iCloud/TextEdit folder! That changes things for sure. (It also means that there is no such thing as an unsaved TextEdit file.)
isametry
Have you given Stickies.app a try? It is designed exactly around this model (notes are never "saved" in a true sense, they just live all over your desktop, what you can do is export / import text however).
Although I'd be surprised if you haven't.
almostnormal
> Whenever I want to put something down, I open the browser on my phone [...]
I write a mail (usually subject only) to myself. Actually, to noone, because my mobile devices Bcc myself. The notes are accessible from any device I can access my mailbox with, with no additional tools or servers for note keeping needed.
dewey
I've started using https://tot.rocks many months ago, which is basically a dot in my menu bar, and if you click on it you have 7, non resizable text views you can cycle through for small drafting. It's way more useful than I thought it would be and I use it all the time to quickly write down things during a meeting, my list of things for the day and other stuff that I can wipe at any time.
mid-kid
I know it sounds silly but vim controls surprisingly well on a touch keyboard. Not needing modifier keys nearly as often as other editors is a major blessing here.
mmooss
What do you use as an escape key?
andix
30 years ago a lot of software was developed on 25 by 80 character displays and without multitasking. It also worked.
mendelmaleh
25x80 is ok. i'm getting 37x62 in portrait, 6x128 in landscape, both with the keyboard open. typing symbols is the main handicap imo, overall unusable.
seba_dos1
I used to write plenty code on a tiny resistive touchscreen of the Openmoko Neo Freerunner 16 years ago. I was often hacking on its OS itself since big chunks of FSO middleware were written in Python. 25k lines doesn't seem that much.
In fact, I found it less annoying for typing code than current big capacitive screens or even N900's keyboard (which was great for texting, but could really use an additional row of keys for symbols).
dailykoder
Looks like a nice plugin. Kudos to the madman, I will def check that one out. Thanks!
Always have written markdown without preview and hoped that it looked right when I commited it.
Edit: Or on edge cases I have used remarkable[1], which I have found ages ago. I don't even know how """good""" it is, but I like its simplicity.
eligro91
I'm also doing that but to develop side projects instead of playing games or reading news, it's an effective way to spent in transit / before sleeping, waiting on lines, in boring talks etc etc
I'm using Keep notes - for crafting the issues and bugs I want to fix, reshaping the solution ChatGPT - Copy shortcuts - I'm able to copy various parts of the application and sent to ChatGPT (file path, code...) and then after the code I'm writing my plans. asking to tell what to change Neovim - with many great shortcuts to make life easier, copying and pasting specific parts, quick save, run python scripts, the tree navigation and search is awesome, git plugins as well Fastapi & Vue - I'm running on my phone the Web app and debugging it with pdb Kiwi browser - has great debug tools Termux of course Git - pushing to a repo and it's being deployed to vercel it's great when I find small bugs in the app when I'm using it, i can fix it right away without opening laptop
severino
I once read an article about how some Nintendo Famicom developers in the 80s used to program their games without a keyboard, just using some kind of joystick or trackball to select the characters on the screen. Knowing that, this doesn't look that bad.
Havoc
So we fedex him a laptop and then agi by end of week
gield
It's not that easy to just send him a laptop [1]:
>>I'd caution against posting a laptop to Bangladesh as there is a very real chance it'd spend the next six months sat in customs while an official looks for a pay off.
>Yeah, this is the reason I wasn't too keen on having stuff shipped from outside.
[1] https://github.com/OXY2DEV/markview.nvim/issues/218#issuecom...
Havoc
Yeah tricky part of the word.
We tried to ship banking 2FA devices to india and customs took them too.
200% useless to anyone but us, but confiscated anyway
morningsam
I think this will become more common, not just in developing countries but also in the West, where phones are practically mandatory to have and laptops aren't, so lots of kids will get their first programming experience on phones.
sensanaty
This sounds like actual torture, and the madman inflicted it on himself. Kudos, I guess?
nstart
He's a kid from Bangladesh who is studying and isn't even in uni yet. He's mentioned on reddit that his parents are doing the classical asian parent thing of pushing him to become a doctor or engineer and right now he's busy studying for the medical entry exam. If he doesn't get through that he might consider a computer science thing. So basically the whole neovim plugin is a side quest at the moment.
Always boggles my mind how raw talent, dedication, and integrity can all come together and just by pure chance of life, you can just miss out on a world of opportunity where people with far less dedication end up with so much more. Hope that this little moment on the internet actually results in a bigger opportunity for him eventually.
rochak
Oh man, if this is true, I truly salute his dedication for pushing through and contributing to open source. Not many, despite having all the means available to them, have the drive to "just do it". markview.nvim is a great plugin that does one thing and does it well.
Edit: Seems like there is an open issue [1] to get him a PC to code on. Just one more reason why I love the community.
awongh
It's always a refreshing reminder of my privilege seeing how many barriers certain people have to just buying/receiving a computer- shipping into a country, dealing with getting money into a country, using a credit card, etc.
Also, a lot of people say the world is getting worse, but computers and the internet are slowly but surely spreading to many people who wouldn't have had access even 5 years ago.
ruthmarx
If he doesn't have a PC how/why was he motivated to write a neovim plugin in the first place?
ddalex
he's using neovim on his phone....
ruthmarx
Huh. thanks.
arp242
One of the people on vi Stackexchange site mostly answers questions from his phone. Glad it works for him, but just seems absolutely mental to me, especially when you have access to a decent machine.
krick
I mean, it sounds weird, but it really isn't that crazy. I cannot claim I'm more or even equally productive on my phone compared to a proper desktop setup, but the thing is I'm basically glued to my phone, and sometimes I catch myself typing fucking essays on my phone being literally 1.5 m from my laptop for no reason, just because, I was scrolling stuff on my phone in the first place.
zwnow
I use Neovim on Termux as well occasionally. With the right macros it's not too bad to write on phone. Fun for little stuff and languages that do not require tons of brackets.
coolcoder613
I have a lilygo T-Deck, I use it for writing in bed with a custom text editor [0]. It has a surprisingly great typing experience, and I can get up to a decent speed. Typing can be good on handheld devices.
walthamstow
This is what they make you do in Guantanamo
shoooooooooota
Inverting this:
If you were to develop a programming language, IDE and DX optimized for coding on a phone, what would that look like?
wslh
Genuinely speaking, are there UX/UI/CHI innovations about developing software on small screens? I think it go both ways: it is not only about the form-factor but rather programming languages and UIs specifically adapted. For example, it is not the same to develop in C++ that using Python or LISP.
skydhash
Something like uiua [0] could be workable, especially with the virtual keyboard. I can probably see images based environments (common lisp, smalltalk) wokring too due to the interactive nature of live programming.
sharperguy
I wonder what keyboard he is using? I use Thumb-Key which is a very unorthodox keyboard layout which I find speeds up things like typing special characters needed for coding. I can use vim decently well but I wouldn't develop anything that large with it.
aembleton
Looks like a standard keyboard. He might use a different one when coding though: https://github.com/OXY2DEV/markview.nvim/issues/216#issuecom...
brokenmachine
Why not just plug a USB or bluetooth keyboard into the phone?
That would be 90% of a laptop IMO. Although I haven't tested it much, Samsung Dex makes my phone appear very much like a laptop when using an external keyboard and monitor.
ch33zer
Nowhere near as sophisticated but I wrote my entire blog on my phone without a keyboard. It was somewhat annoying but you get used to it: http://Blaise.bike
nuc1e0n
I've written code on a phone before and it's not nearly as uncomfortable as it used to be. Especially with the cloud.
jopicornell
I love to have the portability of my phone, so I have my neovim as IDE on Termux, and I've to say that to do some fixes or review something puntual, it's not that bad. Writing a whole plugin is another level!
bilekas
I’ve fixed one or two things on my phone in a pinch, or restarted some services but having the patience to code fully on a phone/tablet is a whole different level of dedication. I feel naked without an LsP.
whazor
But Neovim does allow for both LSP and even LLM integrations. So auto-completion could make typing on a phone much less tedious.
hinkley
I remoted into work from home one day using my tablet to connect to my work machine. It kinda worked. But I wouldn’t want to do it daily.
iammrpayments
That also happen to be my currently favorite neovim plugin before I knew this about the developer, which makes this even more impressive to me.
daft_pink
Am I the only one who clicked through just to find out how to get neovim working on my iPhone? My iPhone doesn’t do that :(
daft_pink
Thanks!
ghjfrdghibt
My initial reaction was: Why?!
But fair play, I find it hard enough to program on a keyboard.
oneeyedpigeon
Maybe it was a form of self-enforced focus, a bit like those "distraction-free" writing apps.
ICameToComment
No. They don't have any other hardware to work on. It's out of necessity, not choice. That reddit thread is in fact talking about a Gofundme and sending them an used laptop but they refused because they expect a lot of trouble actually getting it.
imposterr
There's now money being raised if anyone is interested in donating: https://github.com/OXY2DEV/markview.nvim/issues/218#issuecom...
unikz
He deserves a Macbook M4 Max
uludag
This is actually a surprisingly depressing post.
It makes me question all the assumptions I have about dev UX. If my dev tooling was taken away, the saas products I depend on shut down, slack replaced by email, keyboard with phone, etc. would I eventually adapt to such a situation? Would my productivity cut be only marginal?
I sure hope the case is that this developer is just a genius, as I'd like to think we as devs (and maybe as a society at large) are not just deluding ourselves thinking that software is innovating.
cesarb
> If my dev tooling was taken away, the saas products I depend on shut down, slack replaced by email, keyboard with phone, etc. would I eventually adapt to such a situation?
As others have noted, plenty of us have developed on computers where the display had merely 25 lines and 80 columns of characters, or less, and no Internet connection at all. Not intermittent connection, complete absence of connection. Exchanging data meant physically carrying disks, which contained as little as 360 kilobytes (or less).
That developer's phone is probably thousands of times more powerful than what we had back then, and has the luxury of a nearly permanent network connection to a huge amount of even more powerful computers. The only real limitation, other than arbitrary operating system restrictions, is the very small screen size and tiny keyboard size. Give that phone an external USB or Bluetooth keyboard and mouse, and a way to connect to a television as an external monitor, and it becomes close enough to a desktop PC.
isoprophlex
That's one way of making sure your wrists are completely useless for any kind of work at age 30...
karel-3d
His parents still want to send him to medical school, because he's Asian, so he needs to be a doctor. (I'm directly quoting him!)
That's ... something.
__rito__
I have pondered much on such things.
Not every developer gets to work on Sora, Quantum AI chip, or CUDA source code.
For the very vast majority, it is facing stupid PMs, MBA bosses, daily standups, and getting fired with no fault of your own. There are good sides, too, of course. But you have to live through these.
Do you choose these or getting VIP treatment in society with tenured jobs and after MD + 10 YoE, you can say fu to any boss and open your own clinic, and economically be forever in the 0.1%?
And honestly, outside the US, many of the positive sides of being an SWE disappear completely (like crazy compensations, having too many options, etc.).
Programming is crazy cool, but the profession of Software Engineering is not always that cool.
3form
Not every MD gets to work on interesting cases, furthering the field, and all while it being low stakes and purely theoretical.
For the vast majority, it is facing the medical colleagues who don't care, and will bury you from envy if you do, and get any better than them for it. It's facing patients who don't take care of themselves, or who just take your time, want favors from you outside of your working hours, but most importantly, the burden of having many people die despite you trying your very best.
Do you choose these, or getting chill treatment in society with freedom, where after 10 YoE you can say fu to any boss and open your own consultancy, and economically be forever in the 0.1%?
And honestly, outside the US, many of the positive sides of being an MD disappear completely (like crazy compensations, having too many options, ease of opening your own business)
I understand the point that you're trying to make, but being an MD is hell of a job, and honestly, as a unit, I don't wish it on anyone who does not specifically want to be there. And even then, your good motivation to do it might be your undoing.
It's really not all that it's cracked up to be, and the only reason I wouldn't recommend to be a software engineer is that the future of it is fairly uncertain.
latexr
> Not every developer gets to work on Sora, Quantum AI chip, or CUDA source code.
Not every developer wants to work on those. Many developers even find at least one of those to be unethical. It is possible to find rewarding challenging jobs as a developer without having to go work for the big names.
david-gpu
You raise good points. Looking at the statistics, the average doctor has significantly better compensation than the average code jockey. Most programmers won't ever get a job at $TrendyCorp, as you point out.
> Not every developer gets to work on Sora, Quantum AI chip, or CUDA source code.
> For the very vast majority, it is facing stupid PMs, MBA bosses, daily standups, and getting fired with no fault of your own.
Those two are not mutually incompatible. I saw examples of all of that while working at outwardly glamorous companies. Thankfully I didn't experience any of that personally.
> Programming is crazy cool, but the profession of Software Engineering is not always that cool.
You could say the same about medicine. It is a tough stressful job for most.
smatija
I think this experience is true if you work in software companies.
I work for a factory maintaining it's existing custom ERP and building new software for it (basically imagine a programmer consultant for 1 costumer just with regular contract). Mix of maintaining legacy code, writing new one and servicing hardware is dynamic enough not to be bored and I have a lot of independence in the job. It's comfy af.
masijo
How did you get a job like that? Sounds pretty good
smatija
Word of mouth.
The point is to realize that almost every non-IT company of certain size (lets say 50-100 employees+) that started before SAP&similiar became popular in your country has large body of custom software and that the guy who built it is probably thinking about retiring.
Minus is of course that most custom software is pretty horrible from code quality standpoint, so you need to have a high tolerance for debuging and that you need to have a little knowledge of everything (specialisation is not possible).
KeplerBoy
Even if the company has been sold on some SAP or Oracle solution, they always need someone how can customize and take ownership of that stuff.
MezzoDelCammin
You'd be surprised how many such jobs are there. Mostly not listed though. If my experience is any guide, one generally starts as a temp / consultant and you slowly expand the role from there. There's generally a point some years later where you're almost "too big to fail". Too many small odd jobs that are needed maybe once a year, but when they happen, they are pretty important.
smatija
Important to note that this too big to fail point occurs very quickly in some cases. Non-IT companies are generally very risk/change averse in regards to their IT infrastucture (and for very good reason, see e.g. [1] and [2]). So if you are capable enough to learn their legacy codebase you will be very quickly the only person worldwide capable of maintaining it.
[1] - https://www.cio.com/article/274138/enterprise-resource-plann...
[2] - https://www.theregister.com/2024/12/06/birmingham_erp_budget...
jazz9k
Many doctors I know don't have their own clinic (it's too expensive) and still contend with terrible management decisions, and have no work/life balance.
On top of this, school is long and expensive.
Getting a good dev job is better in comparison.
gessha
Not sure if it’s the people who survive med school or just who’s interested in being a doctor but every medical doctor I know has serious personality flaws that makes them hard to be/live with.
elp
As opposed to us totally balanced and not unhinged in the slightest devs?
I suspect that any heavily technical field has a risk of causing flaws personality flaws, but maybe I'm projecting.
FWIW all the doctors I know socially seem pretty well balanced other than maybe a tendency to crowbar the word Doctor into the conversation. MBAs are still worse though.
lostlogin
> Programming is crazy cool, but the profession of Software Engineering is not always that cool.
The hours, work expectations and imposition on daily life can be pretty grim for a medical doctor, presumably with a strong correlation on speciality and role. I’m very much not-a-doctor.
globalnode
my experience in australia was that it was like being a fancy receptionist. stupid overtime and low compensation. im not great at selling myself but it id rather be a tradie in this country than in s/w.
yodsanklai
I see several big issues with SWE roles
- it's hard to have a complete career only coding (assuming that you'll still enjoy it at 40-50-60). Ageism is a thing.
- you're extremely dependent on economy. Sure, you can earn $500K+ at FAANG, but you can also get laid off and earn much less. You probably won't earn such high salary for your whole life (see above point)
- SWE not a respected profession. What do you do for a living? I'm a coder VS I'm a doctor.
I'm not saying being a doctor is perfect, it certainly varies. But I feel it's more future proof than SWE. Also it's easy to code as a hobby. Perhaps even more fun than doing it professionally. Another point, in some developed countries, having access to healthcare can be increasingly difficult. If you're in the system, you make it easier for you and your family to get care when you need it.
I hope this guy can do whatever he wants, but I can understand his parents.
raincole
> But I feel it's more future proof than SWE
In turns of future proofing it's not even comparable. SWEs have negative protection. Mostly not unionized. You don't even need a license to write code.
If the government says we're going to launch 100 programming schools and flood the market with 100,000 coders in next 4 years, no one bats an eye. If it's for doctors you can see what happened in Korea[1].
[1]: https://en.wikipedia.org/wiki/2024_South_Korean_medical_cris...
dilawar
I am an Indian and somehow I find it a little bit extreme!!
larodi
he/she is expected to go for (should be in society) the role which pays best, that's how things work in many parts of the world. add family to that and you'll understand why.
Apparently what he/she shows him/herself to be is something akin to avatar level concentration and intelligence level similar to that of Audrey Tang perhaps...
Namm22
This is truly inspiring! Writing a 25k-line Neovim plugin entirely on a phone and touchscreen shows incredible dedication and adaptability. It makes me curious about the tools or workflows they used to achieve this. What motivated them to stick with this unconventional approach?
enotmcsquare
People say always use the tool that's best suited for the job. This is very good example of why that advice shouldn't be followed.
We are doing a fundraiser for him to get a laptop here: https://hcb.hackclub.com/donations/start/oxy2dev-laptop
Transparent ledger of donations: https://hcb.hackclub.com/oxy2dev-laptop/transactions
We need about $500 more USD to get him an M1 MacBook Air (they are more expensive in Bangladesh, where he is based).
GitHub thread with details: https://github.com/OXY2DEV/markview.nvim/issues/218. Here is a Reddit comment from the author showing this is the official fundraiser: https://old.reddit.com/r/neovim/comments/1h7vhmg/bro_been_de...