Wow! I haven’t used it yet, but I’m impressed by the demos. Seems like just the mobile editor with joystick and autocompletion would be a viable product by itself, not to mention the power of repl.it behind it.
Very little innovation is done in the area of coding on a small-form mobile device. Early attempts are needed in order to get feedback and learn from experience what works and what doesn't.
It's nice to see repl.it is at least attempting to address this "market". Their previous mobile app was so bad I uninstalled it and used the web site directly instead. Hopefully this works better.
Presently on iOS it appears this is an iPhone app that doesn't scale to iPad screen dimensions, even when expanded. It's using between a third and a half of the available viewport in landscape orientation.
That said, it appears to work pretty well in side-by-side mode, concurrently with another app, but it still uses about half the available viewport in this mode.
Came here to ask about this. Using it on a phone seems great for learning, toy projects, and maybe quick fixes, but I think you need more space to do sustained development. Having this on an iPad with a keyboard would be exciting.
I think their main focus is allowing people to code who only have a mobile phone, so my guess is iPad is a lower priority (because most people with iPads have full size computers they can use instead).
Making it scale properly to iPad screen sizes and doing nothing else shouldn't be too hard to do and would make it a lot more useful for people. Even if they don't want to spend the time developing an iPad specific layout, no reason not to use the full iPad screen with the current layout.
Very very cool. Have been thinking about this for Darklang for a while. One thing that's changed since I started thinking about it is how big a deal AI assist is.
Originally, I thought a structured editor would be essential, but now while it's helpful, I think AI assist can do like 90% the benefit you get.
Lol, thanks for asking! Yeah, I think we're making progress. There's a lot to do, and I feel it is getting done (see progress at https://darklang.com/changelog).
I don't believe we have product market fit yet, the plan goes like this:
- rebuild the technical foundations (DONE)
- fix a lot of the jankiness in the editor <- we are here now
- make sure language is fully baked (coming soon)
- add a package manager/user management
I think the last step is where we'll start to see some product market fit.
For some reason the video in the post refuses to load for me, but it's also at https://twitter.com/Replit/status/1582750139621380096 - it's not for me, but it's a compelling pitch and I wish them every success. I'm a Replit user simply to use it as a clean testbed for various experiments and the value I get for $7/mo is very good.
I'm all for native desktop apps, but do you have a particular reason for this over what you can do through the web-browser? It works very well as is, and if it were to run as a desktop app, it would basically do what the web version does but in a desktop form-factor. Which I suspect is not what you want, but you want some features that are missing in the web app, right? if so, what are those?
Vim comes from a time when we did not have screens, you had to print out the code on paper. Probably why it works surprisingly well on mobile. Being able to see the code is a luxury. Typing speed is also not an issue when writing a program, although modern languages are verbose compared to assembly.
I would worry about ergonomics when working on mobile though, like neck/back and thumb issues.
I would suggest having the terminal screen built into glasses, and a wireless keyboard for input. Maybe we can innovate on the keyboard part so it can fit in your pocket
It works quite well. There is a lack of precision trying to drag the cursor around on Android, which is made worse on the <$100 quality devices. Using vim's keyboard commands, I can precisely edit text far easier than anything else I have used on a phone. I never used emacs because I'm not a fan of chords, and this is amplified on the phone. However, people who swipe text may like emacs chords over vim's commands and modes.
This is one of those examples for me where the idea is far superior than the implementation. The idea of anyone being able to quickly write code from anywhere, as the main promo video suggests, is fantastic and greatly motivating. In practice, coding on an iPhone (even with an innovative new joystick), is gimmicky at best, given how deeply ingrained good ergonomics are in the coding process.
I struggle to see this as one of those "bicycle for the mind" products, hope I'm wrong!
> We partnered with @TeamMindjoy
to test the app by teaching girls how to code in a South African township and we made a video about it. During this time the wifi was super unstable and the few laptops they had were unusable, but kids continued to code on $100 Android phones!
Yes we have stories from all over the world where people are using mobile to build real things. There is a kid in Egypt, for example, that built discord bots for a living on his phone.
Additionally there are also lots of cases were fairly well off folks with access to desktop computers and wifi that find themselves with a phone and want to prototype an idea or make a quick change to a project. I’ve been using it and I find it relaxing to lay back on the couch and do some fun coding. Especially with Ghostwriter (our Copilot-like thing: https://blog.replit.com/ai) it’s super usable. I built large part of my toy Lisp in Python in the app while in the park, waiting at the doctor’s office, or simply relaxing after a long day: https://replit.com/@amasad/Lisp-in-Python
For folks in the global south who might own a smartphone but not a macbook, a native mobile dev env is god-sent. For others, the Replit mobile app is but a start, even if it looks like a toy, and can help in building only toy apps, and deal only with toy codebases. This is a start in the right direction.
Besides, in the future, more advances in AI might mean, folks only need to key in prompts.
This may be an example of skating to where the puck is at.
Consider that the new iPad has the same power as a desktop and can be used with a desktop monitor. (This is the $450 version.) You can also connect an iPhone to a display to an HDMI monitor, but they haven't done the work to have a desktop mode yet. Android desktop mode but they haven't been . If iphone cracks it, android will have to catch up.
Phones have the power today and they have the storage today. It's just missing the work and make an external keyboard and storage display a first class experience.
And the moment you can can add a $100 monitor, a $15 cable, and a $40 bluetooth keyboard/mouse combo, you are at a developer machine for about $150 over their phone that they have anyway.
I work on iSH, which is in a similar product area. The thing is that by all intents and purposes the environment we give you is terrible: you have a software keyboard, and navigating around and typing is pretty bad. But we have plenty of users who love it and use it really heavily. Why? A lot are children who have phones but can’t always access a computer. Some people want to code on the go. They’re really doing it out of necessity when they don’t have another device, not because the experience we provide is good. There’s definitely room for improvement but I doubt using a phone will ever be as pleasant as using a computer. And that’s fine.
On a related note, it would be cool if there was a "coding mode" mobile keyboard option. We have built-in keyboards for phone number and formatters for particular things.
It would be cool to have a built-in coding keyboard that adapts to the language being written via plugins, etc.
I agree. A great start would even be to do something like what iSH does, where you have buttons for tab, control, escape, and a similar joystick for the arrow keys. As of now, I can't issue a tab in the shell, for example.
On Android the Hacker's Keyboard does a respectable job for coding and command line. I use it on those rare occasions I need to use SSH from my Android phone.
It doesn't adapt to the language being written, that's an interesting idea.
I think they'll make more money from relatively affluent people than from people that can't really afford access to a proper screen/keyboard with superior ergonomics.
I'm bullish on this because mobile (and web) development is ridiculously overcomplicated to a beginner. I think it's a common misconception that coding/logic is difficult. I find the development setup and deployment to be much more complicated. As evidence, take a look at the impressive workarounds that citizen developers use to make things work in an easy environment like Excel.
A keyboard and mouse probably solve most of the complaints in this thread.
I think the idea here is to enable people in places of the world that may not have laptops, where mobile phones are people's only computer. That's how I'm looking at this, but that's just my guess.
Think people with chromebooks or old laptops who cannot use it for development. Or restricted laptops loaned from school which do not allow anyone but admin access to install anything.
My MacBook Pro died from humidity while I was trapped in the amazon rainforest during the panedemic, and I had to do some work, so I bought an USB keyboard in Iquitos and I set up a development environment with postgres, vim, tmux, ruby, rails etc, inside Termux. Small screen, and no devtools in mobile browsers, but worked pretty good otherwise.
> I find the development setup and deployment to be much more complicated
My understanding is that is the problem repl.it is trying to solve. In a sentence: think about your code and not your environment.
My curmudgeonly self thinks that there are deeper problems and externalities that programming on a phone/tablet or in the web only exasperate. Computer literacy is shockingly poor among the incoming generation of people who have only used mobile devices, WebUIs, and maybe a Chromebook - and that's not the fault of people or technology, but the business models that only succeed by locking users into platforms and hiding details of how those platforms work. The issue with programming on mobile or through something like repl.it is that it hides too much - at the end of the day, tinkering with computers requires computers that can be tinkered with and software systems that can be introspected.
I believe there are enormous amounts of resources which enable people to self-tech the basics of coding. I partially agree -- but it's not an absense of possibility, it's absense of motivation. I think it's exactly because modern systems are opaque to a beginner
https://glitch.com works on phones, codesandbox doesn't iirc and I doubt github codespaces does either (they both use stuff from vscode), codepen does.
I suppose I'm "bearish" on selling development as it presently exists for the exact same reason?
Right now, what's being sold is "more people can go into the career of programming" as opposed to "no really, it's possible to bring so-called 'programming' to everyone.'"
Put differently, it wasn't that Hypercard didn't catch on, it's that things like Hypercard get "killed."
I'm, generally, not bullish: But only because the predominating "what value do products like this bring" arguments from those who are bullish is some variation of "it's great for learning/beginners". That's simply no way to build a venture business (and replit has received... $105M).
Higher layers of abstraction can make sense; no code tools can be killer; but that isn't really replit. Replit is just a weird product on the side of the abstraction spectrum which requires its devs to understand a large chunk of what would be required to get, say, a nodejs server running on, say, Heroku.
Understanding the moving parts well enough is one thing. Being responsible for writing and maintaining all the layers of configuration and glue it takes to properly operate web apps in the cloud is another. There's room for abstractions short of no-code that remove this burden, IMO, and not just for beginners or learning.
Replit isn't for building HA/mutli-tenant stateless, web applications with hot-hot failover, data redundancy, perfect docs and APIs
It's for people who want to learn how to code or want to prototype something absolutely as quickly as possible with the minimal amount of tooling and experience.
> It's for people who want to learn how to code or want to prototype something absolutely as quickly as possible with the minimal amount of tooling and experience
For sure. I'm just personally not sure that's a billion-dollar company idea myself, which if you've taken $100 million+ of funding, it will need to be. Definitely willing to eat my words though if they pull it off: anything that gets more people into programming and understanding how the devices they use work is a good thing in my opinion (which is worth about as much as you just paid for it!)
Funding goes to companies that will pass on a part or all of that funding on to partners. It is like a big wash that goes round and round until the right people get rich. And the reason for this is to make the world a better place
Just my take, but the more people who can “code”, even at a basic level, the better. Because then they intuit that the challenging part in not the words but the logic.
Learn to code then be an “excel jockey”. Those folks create just as much value with less of the identity bullshit.
Edit - sorry if this sounded confrontational. That wasn’t my intent - I just learned that I feel passionately about this topic.
Excel certainly has it's place and is great as an interchange format and prototyping platform for domain specialists. I agree that it's unjustly derided by snobbish programmers. Converting to and from CSV is cheaply implemented and can do wonder as human interface to a system since "non programmers" know how to deal with that.
The problems start when it is pushed beyond its limits, sheets can become undocumented mess of cell spaghetti which users still expect to scale up and grow new features indefinitely. It's hard to determine for Excel coders when they are past that cost/benefit tipover point and move up to a more robust set of programming tools.
>I find the development setup and deployment to be much more complicated
Fully agree with this.
To the extent where I wish there was an "environment service" wherein I simply specify the desired packages and tools I want via GUI (No JSON or Terraform or anything other than radio buttons and drop downs) - and I get a spooled up VM with all the dependencies and paths perfectly built in with no jank package clashes or deprecated packages that need patching.
I'm bullish on this because my children prefer phones and iPads for almost everything that I would prefer a computer for. They have ten times more experience with computing devices than I did when I was their age, and almost all of that experience is via touch screens. Keyboard and mouse are unnatural for them, but when it comes to navigating mobile UIs, they are perhaps already faster and more fluent than I am.
This is it for me. My background is in design so I'm a novice when it comes to any development. But setting things up via command line confuses me to hell.
I originally thought that programming on phones was ridiculous, but then I remembered that I did a great deal of programming on TI calculators when I was a kid.
Replit recently raised a bunch of money and have really raised their advertising focus enormously. I'm seeing so much hype from them but so underwhelming actual value provided.
You really think so? Stuff like this has existed for a while you tired real quick of doing anything significant on your phone (having tried a few before).
I think it's great that they've identified cursor placement as one of the trickier aspects of coding on a phone. The joystick is a great idea, I found it a bit hard to use at first (kind of flies around the screen) but the little buttons are good for getting your cursor inside a string literal, for example.
I'm excited to get my students trying this, many of them only have a school issued iPad. I'm also curious about how well the autocomplete can be tuned. I think right now suggestions are a bit rough, I'm hopeful they'll start using language server suggestions soon. (Something like System.out.println, you should definitely get out as an option after System.)
Just tried it, you can use both within the text editor. I prefer the spacebar "trick". It was much smoother, I had trouble stopping at lines in the middle because it seemed too sensitive for up/down movement. The spacebar long press let me position the cursor anywhere within the text on the screen.
The joystick feels like a worse and redundant version of iOS’s built in spacebar-as-trackpad feature, but having buttons to step left and right is useful.
Excited to see more mobile first development experiences.
I didn’t think I’d use them, but Autocode’s WebUI works on mobile and I’ve found myself tweaking app logic from my couch for a Halo integration.
For more in-depth focused work, I prefer a keyboard and mouse. But fixing a quick edge case I missed? It’s super handy to be able to tweak a few lines of code with the device in my pocket.
Five times attempting to create an account by using a Google account, on Android phone, five times phone receiving request for approval, five times approving the request, five times bouncing back to the app on the "create an account" state.
Thinking of all the kids in lower income situations that only have an Android phone as their only computing device and how Replit will make it possible for them to discover their talent and passion for programming makes me so happy!
Imagine learning how to code well enough, get paid for it to buy your first computer!
This really opens up coding to people who only have a phone - which is a large number of people in say Rural India.
One way of working I've constantly thinking about is using replit's as the unit of work.
Imagine finishing your work and sending the replit to someone else to review, run and then push to beta. No need for any setup on the reciever side or the QA side. If PM specs are also part of this environment, its very self contained and would be a great way for remote teams to work and helps avoid meetings.
I’m seeing a lot of responses clarifying that this app is designed for folks who either can’t afford to code from a computer (for various reasons outside of their control) or want to quickly prototype ideas or make changes to existing projects. To better illustrate my skepticism (and bias), I’d like to invoke an imperfect analogy to writing novels.
Imagine a mobile notes app that touts an impressive list of features and ergonomics that allows anyone to write the next novel from anywhere. You no longer need a computer or even an internet connection, just the $100 phone in your pocket and the desire to put words on (digital) paper. It’ll even figure out what you’re writing about and suggest novel plot devices and character arcs to add to your work in progress.
This sounds great on the surface, and it will definitely encourage more people to feel comfortable writing more often, which will no doubt lead to more literature being written as a result, much of which will benefit from the creative AI-injected prose.
The main issue as I see it (and I realize the analogy to writing novels is imperfect), is that the environment in which you’re writing, navigating, executing, and debugging code contributes greatly to one’s productivity and the quality of the final product. I can see the argument for being more of a playground for toy projects and ideas (much like a note-taking app), but I struggle to see this taking over as the primary tool by which technology companies are built.
The languages are all bog standard and you can configure the environment for execution via Nix. Not on the mobile (or I've missed it) but via the website you can connect projects to git repos. So none of the data is locked in in any way.
In principle, this means you should be able to clone any project and run it on your own machine(s) with little effort if you're aware of how to set up nix and git in the first place.
For sure, hence an imperfect analogy, and I have no doubt some cool projects will come out of this replit mobile app too. I just don’t see it becoming the weapon of choice for most production development environments.
Oh yeah I wouldn't want to do anything serious on a phone period, well with the caveat I find it weirdly easier to write rough drafts of poetry on my phone and I have no idea why.
- You're just solving "seriousplay" i.e. code challenges
- Most of the code is boilerplate and you can inject a couple of variables here and there and press a button to deploy
- Quickly fix something that can be done on the fly while you're sitting in the underground (typos, small PRs)
- Any future where AI takes over and starts suggesting the code you want to write and literally takes your hand and guides you, so you write better code faster.
211 comments
[ 2.7 ms ] story [ 286 ms ] threadIt's nice to see repl.it is at least attempting to address this "market". Their previous mobile app was so bad I uninstalled it and used the web site directly instead. Hopefully this works better.
1. Already have an account 2. Continue with Github 3. Blank white screen and just stays there.
I think I'll wait.
you may just be unlucky.
That said, it appears to work pretty well in side-by-side mode, concurrently with another app, but it still uses about half the available viewport in this mode.
I expect this will get addressed PDQ.
It's the same concept, you get a VM you can work on from a native app, but our app is for iOS only and supports iPads natively.
Disclaimer: I'm one of the co-founders of CodeSandbox.
Originally, I thought a structured editor would be essential, but now while it's helpful, I think AI assist can do like 90% the benefit you get.
I don't believe we have product market fit yet, the plan goes like this:
- rebuild the technical foundations (DONE)
- fix a lot of the jankiness in the editor <- we are here now
- make sure language is fully baked (coming soon)
- add a package manager/user management
I think the last step is where we'll start to see some product market fit.
termux also has emacs, nano, and a few other text editors.
Seconded.
With Termux (https://termux.dev/en/) I have C, C++, Rust, Go, Perl, Python, Ruby, and more in my pocket.
The screen is small, but the tools are mostly the same you would find on your favorite *nix box.
No network connection needed beyond getting the packages you want installed.
I struggle to see this as one of those "bicycle for the mind" products, hope I'm wrong!
See this tweet from the CEO: https://twitter.com/amasad/status/1582754947480793093
> We partnered with @TeamMindjoy to test the app by teaching girls how to code in a South African township and we made a video about it. During this time the wifi was super unstable and the few laptops they had were unusable, but kids continued to code on $100 Android phones!
Additionally there are also lots of cases were fairly well off folks with access to desktop computers and wifi that find themselves with a phone and want to prototype an idea or make a quick change to a project. I’ve been using it and I find it relaxing to lay back on the couch and do some fun coding. Especially with Ghostwriter (our Copilot-like thing: https://blog.replit.com/ai) it’s super usable. I built large part of my toy Lisp in Python in the app while in the park, waiting at the doctor’s office, or simply relaxing after a long day: https://replit.com/@amasad/Lisp-in-Python
I'd pay just for the joystick keyboard.
I’m pretty nerdy but you win by a wide margin
Unless I'm doing something wrong it seem that you still have to be online to create and run code.
Besides, in the future, more advances in AI might mean, folks only need to key in prompts.
Consider that the new iPad has the same power as a desktop and can be used with a desktop monitor. (This is the $450 version.) You can also connect an iPhone to a display to an HDMI monitor, but they haven't done the work to have a desktop mode yet. Android desktop mode but they haven't been . If iphone cracks it, android will have to catch up.
Phones have the power today and they have the storage today. It's just missing the work and make an external keyboard and storage display a first class experience.
And the moment you can can add a $100 monitor, a $15 cable, and a $40 bluetooth keyboard/mouse combo, you are at a developer machine for about $150 over their phone that they have anyway.
A developer machine like that is already $150, called a Chromebook or a Raspberry Pi.
A very annoying bug is that the first chatacter is a capital letter in mobile. And parentheses are not suggested along with brackets and curly braces.
It would be cool to have a built-in coding keyboard that adapts to the language being written via plugins, etc.
It doesn't adapt to the language being written, that's an interesting idea.
I struggle to see what this is good for, besides solving LeetCode and/or other small, isolated, well defined puzzles on a small screen.
A keyboard and mouse probably solve most of the complaints in this thread.
My understanding is that is the problem repl.it is trying to solve. In a sentence: think about your code and not your environment.
My curmudgeonly self thinks that there are deeper problems and externalities that programming on a phone/tablet or in the web only exasperate. Computer literacy is shockingly poor among the incoming generation of people who have only used mobile devices, WebUIs, and maybe a Chromebook - and that's not the fault of people or technology, but the business models that only succeed by locking users into platforms and hiding details of how those platforms work. The issue with programming on mobile or through something like repl.it is that it hides too much - at the end of the day, tinkering with computers requires computers that can be tinkered with and software systems that can be introspected.
VT100 and IBM360, you didn't have to be in the mainframe room to learn to code.
Right now, what's being sold is "more people can go into the career of programming" as opposed to "no really, it's possible to bring so-called 'programming' to everyone.'"
Put differently, it wasn't that Hypercard didn't catch on, it's that things like Hypercard get "killed."
Higher layers of abstraction can make sense; no code tools can be killer; but that isn't really replit. Replit is just a weird product on the side of the abstraction spectrum which requires its devs to understand a large chunk of what would be required to get, say, a nodejs server running on, say, Heroku.
It's for people who want to learn how to code or want to prototype something absolutely as quickly as possible with the minimal amount of tooling and experience.
For sure. I'm just personally not sure that's a billion-dollar company idea myself, which if you've taken $100 million+ of funding, it will need to be. Definitely willing to eat my words though if they pull it off: anything that gets more people into programming and understanding how the devices they use work is a good thing in my opinion (which is worth about as much as you just paid for it!)
Learn to code then be an “excel jockey”. Those folks create just as much value with less of the identity bullshit.
Edit - sorry if this sounded confrontational. That wasn’t my intent - I just learned that I feel passionately about this topic.
The problems start when it is pushed beyond its limits, sheets can become undocumented mess of cell spaghetti which users still expect to scale up and grow new features indefinitely. It's hard to determine for Excel coders when they are past that cost/benefit tipover point and move up to a more robust set of programming tools.
Fully agree with this.
To the extent where I wish there was an "environment service" wherein I simply specify the desired packages and tools I want via GUI (No JSON or Terraform or anything other than radio buttons and drop downs) - and I get a spooled up VM with all the dependencies and paths perfectly built in with no jank package clashes or deprecated packages that need patching.
I'm excited to get my students trying this, many of them only have a school issued iPad. I'm also curious about how well the autocomplete can be tuned. I think right now suggestions are a bit rough, I'm hopeful they'll start using language server suggestions soon. (Something like System.out.println, you should definitely get out as an option after System.)
I didn’t think I’d use them, but Autocode’s WebUI works on mobile and I’ve found myself tweaking app logic from my couch for a Halo integration.
For more in-depth focused work, I prefer a keyboard and mouse. But fixing a quick edge case I missed? It’s super handy to be able to tweak a few lines of code with the device in my pocket.
Imagine learning how to code well enough, get paid for it to buy your first computer!
Great work!
This really opens up coding to people who only have a phone - which is a large number of people in say Rural India.
One way of working I've constantly thinking about is using replit's as the unit of work.
Imagine finishing your work and sending the replit to someone else to review, run and then push to beta. No need for any setup on the reciever side or the QA side. If PM specs are also part of this environment, its very self contained and would be a great way for remote teams to work and helps avoid meetings.
Imagine a mobile notes app that touts an impressive list of features and ergonomics that allows anyone to write the next novel from anywhere. You no longer need a computer or even an internet connection, just the $100 phone in your pocket and the desire to put words on (digital) paper. It’ll even figure out what you’re writing about and suggest novel plot devices and character arcs to add to your work in progress.
This sounds great on the surface, and it will definitely encourage more people to feel comfortable writing more often, which will no doubt lead to more literature being written as a result, much of which will benefit from the creative AI-injected prose.
The main issue as I see it (and I realize the analogy to writing novels is imperfect), is that the environment in which you’re writing, navigating, executing, and debugging code contributes greatly to one’s productivity and the quality of the final product. I can see the argument for being more of a playground for toy projects and ideas (much like a note-taking app), but I struggle to see this taking over as the primary tool by which technology companies are built.
I'm not trying to be harsh on Replit. They are just starting, after all, and my point above can be addressed in due time if they feel like doing so.
In principle, this means you should be able to clone any project and run it on your own machine(s) with little effort if you're aware of how to set up nix and git in the first place.
https://bgr.com/general/the-novel-on-the-f-train-an-intervie...
- You're just solving "seriousplay" i.e. code challenges
- Most of the code is boilerplate and you can inject a couple of variables here and there and press a button to deploy
- Quickly fix something that can be done on the fly while you're sitting in the underground (typos, small PRs)
- Any future where AI takes over and starts suggesting the code you want to write and literally takes your hand and guides you, so you write better code faster.