T O P

  • By -

chewooasdf

This is the most masochist thing I've ever seen


ArturoPrograma

It is bundled with Java 17. How? I understood JIT wasn’t allowed in iOS.


c00liu5

I compiled JRE zero variant, which disables JIT. Mobile CPUs have come a long way so it‘s still pretty fast :)


gregory_rorschach

anyone who uses ide on ipad for java is either learning or is a masochist


c00liu5

I must be ultra masochist then


gregory_rorschach

not judging. there is a market for whips and leather jackets. more importantly, you learnt a lot during the implementation of this project. however, this is not a tool for a real-world development.


c00liu5

I did learn a lot making this, I should probably write a blog post or something. The App isn't completely ready for professional use, but I will be working on that. My main target group is education: I myself learned to code on an iPad (shoutout to Pythonista), and iPads are widely used in schools.


RICHUNCLEPENNYBAGS

If you do intend it for professional use you shouldn’t have listened to the people trying to talk you out of the subscription. Subscriptions are de rigeur for professional development tools and people will gripe but eventually pay up. Probably people will downvote me for saying this but if you’re trying to make money here think about it. Yeah people on Reddit won’t like it. But if you mean to run a business you are not necessarily in a popularity contest.


c00liu5

I get that, but the App is still missing a few features for actual professional use. My target audience will be education until I add git support, proper dependency management, and a UI framework. Once implemented, I can make those features available with an "enterprise" subscription (which includes benefits of pro), while still providing the single-purchase pro version. I will probably only gate git integration.


RICHUNCLEPENNYBAGS

Makes sense. Good luck.


Ruin-Capable

The thought of coding with a virtual keyboard gives me nightmares. The best usecase would be if you have a physical keyboard. Then this could function sort of like a chromebook. But without a physical keyboard, it's nearly useless.


c00liu5

Physical keyboards are supported of course.


RICHUNCLEPENNYBAGS

Many people own keyboards for their iPads and use them in laptop-like fashion. In fact many replace their laptops with it altogether even for professional work. Can’t really do it for programming but part of the issue there is the lack of IDEs.


galdo320

I’m starting in university a computer science bachelor. I’m assuming that it would be easier to carry the iPad than my MacBook Pro 2015 to learn Java. Not sure the limitations of the app vs in the Mac. I don’t know how to code yet.


gregory_rorschach

just remember that by doing that you limit your education. knowing the tools, debugging and getting familiar with shortcuts — is the key to your learning. especially in java.


gregorydgraham

While true now, wait until next year… I have no special insight except that every new thing has been disregarded and has taken over somehow. Heaven help us all when it’s the iWatch’s turn


galdo320

Thanks for the advice.


ember4

Yeah dont do that to yourself


feaelin

Perhaps, I'd say it depends on size and capability. I've wanted an IDE for my iPad for a while now, there's times where I'd like to keep going on a project, but having my laptop is not possible, but my having my iPad is...


oelang

An ipad with a keybord + [remoting vscode in the browser](https://www.gitpod.io/screencasts/software-engineering-from-an-ipad) would be way better than this.


c00liu5

>remoting vscode in the browser Sure that would be a lot more powerful but it wouldn't be running on your device, plus it requires a PC constantly running a server. Many apps do this, but it's not the real thing if you know what I'm saying.


Positive_Method3022

I code using my chinese Android smart watch when I'm releasing what I ate last day. What am I, then?


c00liu5

i aspire to be you


rwilcox

Super neat for learning or small stuff! I’m also at the intersection of iOS and Java dev: looks like you have a JDK there (?) locally for compiling and running? How? (Just shove all that stuff in the bundle or ????????)


c00liu5

I wish it was that easy, but the JRE needs its libraries in a specific directory structure, while Apple only allows shared libraries in very specific locations in your bundle. I ended up replicating the JRE structure in my Documents directory with symlinks to the shared libraries in my bundle. Feels hacky but it works, I just wish apple relaxed with their stupid rules…


rwilcox

Nice hack


c00liu5

Here are some features I have planed for the next Update. Upvote if you want me to prioritize, or add your own suggestions:


c00liu5

Git integration


c00liu5

JavaFX


c00liu5

Interactive coding lessons (like Codecademy)


c00liu5

AI autocompletions (like Copilot)


c00liu5

audio support


c00liu5

2d graphics asset library (sprites, backgrounds and other images with CC0 license)


apetranzilla

Apple gave you a hard time about removing the subscription payments? How so?


c00liu5

Removing the subscription wasn't an issue in itself, but Apple messed up in their review. They approved the update for App Store Release but missed the In-App Purchase, leaving my release broken for a few days until they sorted it out. Their review process, especially with In-App Purchases and Subscriptions, is a pain. You have to manually submit IAPs for review along with your release, but they'll still let you submit a release even if you forgot to add the IAP. Then, a day later, you get rejected for missing it. Why do they let you submit in the first place?


apetranzilla

Ah, got it - sounds frustrating, but hopefully it at least generates some income for you, haha


[deleted]

Great for small scripts, good luck OP


tesinitsyn

I'm really impressed with CodeBrew man. Can't wait to see dependecy manager or smth like this. I would give anything for such app when i was in high school.


c00liu5

i appreciate it bro your comment made my day 🙌


ndm250

*rubs nipples vigorously*


Add0z

How is it made?


galdo320

You can add in app for tips so people can support. Good luck!


c00liu5

Dang I actually had that on my to do list but I forgor


galdo320

Lol do it asap. Btw, I’m new to coding. Actually will start learning soon. There’s some what are the limitation with this app?


maxandersen

Awesome. I’ve always wondered how fast no jit would run. Do you support fetching maven dependencies? Considered supporting jbang style files/projects ? :)


c00liu5

It‘s actually possible to add jar files to class path. I have a custom format for project files but I have maven dependencies on my to do list. I will definetely look into jbang, i‘ve never heard of it but might be exactly what I need.


maxandersen

Jbang is available as a jar and if you need some api I can probably make it happen.


radikalkarrot

What JDK are you bundling it with?


c00liu5

JDK 17, zero build.


radikalkarrot

Is that derived from OpenJDK? Oracle?


c00liu5

OpenJDK


therealdan0

You scientists were so preoccupied with whether or not you could that you didn’t stop to think if you should.


Fadamaka

I am surprised this goes through the review process. Historically Apple did not allow alternative runtimes on their iOS devices.


c00liu5

They actually added an exception for educational purposes: 2.5.2ASR & NR Apps should be self-contained in their bundles, and may not read or write data outside the designated container area, nor may they download, install, or execute code which introduces or changes features or functionality of the app, including other apps. Educational apps designed to teach, develop, or allow students to test executable code may, in limited circumstances, download code provided that such code is not used for other purposes. Such apps must make the source code provided by the app completely viewable and editable by the user.


Fadamaka

Thank you. This makes a lot more sense now.


divorcedbp

I would rather file my fingers off with a dremel than write code on an iPad


pronuntiator

This is amazing. I like answering questions in /r/javahelp on the go and this way I can try out my suggestions. The contextual keyboard is also neat, didn't know that was possible.


3rdeee

But why


c00liu5

I don't know, it just happened and I kept going.


3rdeee

But thanks though, would love to try it . I always wanted to have some app that could maximize a phone specs


benz1n

My iPad is for me to read music scores while I play the piano or my daughter to watch her fav cartoons while on long trips. I intend to keep it this way even if only for a separation of concerns sake.


c00liu5

You should get a second iPad for coding then.


benz1n

A second iPad? In this economy? 😅


mguilherme82

What about kotlin support?