Ex-Sun Employees Are Taking Java To iOS
An anonymous reader writes "Ex-Sun employees did what Sun/Oracle failed to do since the iPhone launched. They brought Java to iOS and other mobile devices. They are getting major coverage from Forbes, DDJ, hacker news and others. They are taking a unique approach of combining a Swing-like API with a open source and SaaS based solution."
Just to be clear, this does not allow users to run Java apps on their phones. It makes it easier for Java developers to port Java apps, though.
-- Two men say they're Jesus. One of them must be wrong. - Dire Straits
How is this so different from what the Appcelerator people do with Javascript? They just abstract the SDK of each platform with a common API and then compile it to target each platform/language.
Is that any API that basically doesn't work?
John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
I hope iPhone users don't freak out when their Java apps suddenly start printing 500 line stack traces.
---
You'd at least think their demo video wouldn't show a sluggish looking app. If it's that sluggish on such a toy app, one can only imagine the terrible performance of anything complex.
It was usable on wince. A java version of ssh1 was my only ssh option on my iPaq before I installed linux on it.
Im sure they will come up with something to sue them over, or if it gets big enough buy them out.
I'm always happy to see an attempt at making good cross platform frameworks. Good luck to the team.
Based on that quote, I am quite sure you've never tried a Galaxy S3 and an iPhone running side by side, because the user interface on the S3 (running Java/Dalvik) is silkier and smoother than any iPhone.
So, given that tablets run pretty much the same OSs (Android, iOS) as many phones, you'd consider the potential for touch-enabled versions of the large number of Java front-ends to client server/systems on tablet PCs to be a "narrow use case"? The key phrase in there is "SaaS". Don't just think front-ends to enterprise scale client/server database systems; think Google Apps, and the many other Cloud based applications that are no doubt going to be developed for the growing tablet market.
UNIX? They're not even circumcised! Savages!
Um.. you realize that every Android application is written in Java, and there are quite a few exceptional Android applications.
I think you'd be surprised at how many of those are written using the NDK. Download addon detector and look for yourself (its an app typically used to check an app doesn't include some dodgy notification-based ad networks, but it also shows you a load of other interesting info). 80% of the games I have on my phone are NDK based, they're the ones that are responsive and fast.
http://www.youtube.com/watch?v=lkPt3jDW8Bs
It's just about as slow as a translated hack. DDJ reports that they draw all their UI elements from scratch, which would explain it.
Granted, the video could be choppy because their recording software is bad or they intentionally slowed it down, but I've had an iPhone 3G (the demo is a faster 3GS) and my apps aren't this slow.
well, yes.. but they also said that they shunned 3rd party app platforms because they are almost universally crap.
I don't find Eclipse, NetBeans, SoapUI, Maple and Vuze to be jokes. In fact I use them every day and find them all to be "awesome".
Then write a Swing front-end, which runs on J2SE platforms, using the same application logic as your Android application. If your application's model and view are separated correctly, this shouldn't be hard.
I figure the native APIs will always rule, especially on resource limited mobile apps. Now, what I would like is the ability to link in Java libraries.
I swear to God...I swear to God! That is NOT how you treat your human!
Then do like I do and shove a netbook in the bag with the game books.
Add SQuirreL to this list.
You can now experience the same poor application performance and battery life of android devices. Download Now!
Got Code?
The last side-by-side comparison I did was with the Note when it first came out, and it was far from as smooth as the 6 month old iPhone 4s. iOS gives one full core priority to handle all UI events, and you can definitely tell the difference. The touch vs. swipe detection is far better than Android as well, with a fraction of the amount of drag length required for it to "figure out" that you are dragging. In my last test, it took about 1/4" of drag on an Android phone before it actually started scrolling compared to probably 1/16" on iOS. This leaves a "jerky" feeling while swiping between pages, and I don't think any amount of hardware will fix that.
Whatever your complaints about Apple/iOS, UI is something that they have done exceptionally well at.
I just ran Addon Detector agains all of the apps on my Xoom and you're right. Pretty much all of the well performing apps make use of the NDK. I just wonder what this means for platforms like FirefoxOS that rely on web technology for development.
The soylentnews experiment has been a dismal failure.
Not to mention all of the jetbrains apps (IntelliJ, PyCharm, PhpStorm, RubyMine, AppCode, etc)
Too soon.
/* No Comment */
I have used both side by side, and I dispute your claim - its smoother some of the time, its worse some of the time.
So based on your logic. Forbes makes a mistake so they always make a mistake?
Go back to Logic 101.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
I've never had Java enabled in my browser - I've not noticed anything really missing from any websites I have ever visited. No big holes in the page, no missing functionality. Where are these wonderous hidden applets that you claim should be there?
Java basically started out as a clone of OPENSTEP - i.e., the very system/API that is the ancestor of OS X and iOS or Cocoa and Cocoa Touch respectively. So, when I can have the matured original, why would I want the clone?
FlexyCore tried the same thing a few years ago with iSpectrum: http://www.flexycore.com/ispectrum-overview.html .They even made the source available:http://www.in-the-box.org/ .
After about three months of relentless Willy action I reckon I'm now as good as when I was 10.
apple doesn't care _how_ your app runs. it can have a vm bundled with it, you can develope even flash apps for ios.
what they do care is that your app isnt' a gateway to running other apps.
and thanks to my bank I have to use a horribly designed java applet every time I want to pay some bills - but even in that case the fact that it's horribly written piece of shit isn't java's fault at all, just the fucking stupid fucks who designed the system(no it doesn't add any real extra layer of security to the login process).
world was created 5 seconds before this post as it is.
I was thinking the same thing. Java is great for prototyping.
Unfortunately, business people rarely know the difference between a software prototype and a product.
You must be the product of a modern "computer science" program. You got some vocational training in Java and were sent out into the world. It's not your fault, you just don't know any better.
I'd hope that people realise that web apps are fine for LoB apps, if you're entering data and getting results, these are fine. Some javascript libraries give fine performance for this kind of stuff (network latency considered), but when it comes to game-style performance, you need something more native. I wonder if webgl can step up to give us this kind of perf, but if it cannot then any webapp will just not be suitable for low-latency, fast response applications.
Of course, this means WebGL libraries are needed to make development of these types of app practical.
Of course, it depends on the framework you're using - WPF for example is a "native" platform for UI development, but it is worse than web apps for performance especially now MS is using Direct2D for IE rendering.
So programs that are slow to start up, eat memory like crazy and are pretty laggy and unresponsive? Yep, typical Java 'awesomeness'.
Yeah and only needed double the CPU cores more RAM to do so.
It's the number one reason random people want Java on things. Their approach of compiling to native code, however, won't work with Minecraft without violating the Minecraft licensing agreement.
Not that I agree with much of your post (each to his own) but this product translates Java to the native platforms, there is no embedded VM. So this is Java the language and not Java the platform.
It's turtles all the way down.
Personally [I said personally so it's an opinion, damnit] I hate Java. I've been doing Android development for quite a while now and not a day goes by I don't wish Google would enhance the NDK to a practically usable level so I could code in C++. I've even gone out of my way to code some things in Ruby and Scala, but the implemetations just can't match native code and can't make use of enough of the tools for the platform to be "practical". I would have taken a full ObjectiveC port for Android any day over a set of Java porting tools for iOS.
Also James Gosling is a disgusting, narcissistic lying jerk. He goes out of his way to tear up other languages but he patently does so by just making things up. Compare to other language fathers like Stroustrup, who's generally humble and constantly picking apart what could be done better in C++; and Matz who goes out of his way to study other languages, see what's great in them, and see if he can implement those features in Ruby, all the while doing so without trying to defame them. I've also found communities around langauges to have similiar traits as their creators.
You must be the product of a modern "computer science" program. You got some vocational training in Java and were sent out into the world. It's not your fault, you just don't know any better.
Nope. Started my career doing C, Perl and the odd bit of Sparc assembly having learned to program on an Atari ST in the late 1980s. Added C++ to the mix and then Java. Gradually the Java supplanted all the others, since the tools and library support are excellent.
The guy sat next to me at work is using Eclipse and Spring Tool Suite (which is based on Eclipse) running on Windows. They look completely native to me, as you'd expect since they use SWT which renders the UI as native widgets. On my Linux machine Eclipse also looks native, since it uses the same GTK+ widgets to render the UI as the rest of the apps I typically use.
Compiles to the cloud? I can see it,,,
PHB: where is your code?
Programmer: the cloud ate it
"I think this line is mostly filler"