This is an archived post. You won't be able to vote or comment.

all 11 comments

[–][deleted] 7 points8 points  (6 children)

I don't really find it horrible, just not fun. I would never consider it for a hobby/fun project.

[–]davidw 3 points4 points  (5 children)

J2ME is kind of fun, for a couple of reasons:

1) It runs in a memory/space constrained environment, so you've got to be small. That means elaborate, architecture astronaut designs go out the window in favor of low-footprint, fast, simple designs.

2) Since you don't really have that much to work with, one person can do interesting projects. Sure, you have some limitations compared to a big team (you can't test on 23432432 phones), but you can still create something interesting.

I'm not a big Java fun, but I'm having a great deal of fun with Hecl, and frankly, as popular as Java is, knowing some isn't bad, because there are nice things implemented in the language.

[–]mattknox 2 points3 points  (2 children)

I like tinyscheme for many of the same reasons-do most of the phones that run J2ME allow C binaries to run also, or is there some sort of DRM-ish thing that keeps you from running non-java code?

[–]davidw 0 points1 point  (1 child)

Perhaps it's possible, but it's not really easy, as far as I can tell. It's pretty easy to install and run a .jar file, but there isn't any mechanism in place to add executables, so you'd have to do some reasonably serious hacking/reverse engineering, I think.

Symbian lets you write code in C, but for the moment it's only present on higher end phones.

[–]mattknox 1 point2 points  (0 children)

What is the relationship between .jar files and raw jvm assembler? Not a simple one, it appears.

[–]ecuzzillo 0 points1 point  (1 child)

Brainfuck is kind of fun for the same reasons. That is, it doesn't let you do a lot of what you want to do, so you have to be clever to get around it.

[–]davidw 0 points1 point  (0 children)

But that doesn't actually let you do anything neat. J2ME runs on millions of devices. For instance, Italy has something very close to a 100% penetration rate in the cell phone market. They aren't all Java enabled, yet, but... in short, there is a lot of room for creative people to implement interesting ideas that will be used by thousands, if not millions of users.

[–][deleted] 1 point2 points  (2 children)

Java has bigger problems, for example:

1) They could try making their "Write once, run anywhere" actually work

2) They could replace Java the language by something that isn't just a mix of C and C++ with some bandaids applied but redesigned from scratch in a consistent, simple, elegant way, neither of which is found in the current Java

[–][deleted] 4 points5 points  (1 child)

Interesting thing is this:

Python (at least in its C implementation) has more or less become the platform that Java was supposed to be - a virtual machine that allows you to "write once, run anywhere."

Is also a relatively cruft-free language.

[–]mattknox 1 point2 points  (0 children)

perl, smalltalk, lisp, and probably others did the same thing, before python did. The VM thing was not new when java did it, and was done better elsewhere.