10 ms·
This might be the final blow to Java on the desktop.
by LaSombra 14y ago
This might be the final blow to Java on the desktop.
- snuze 14y agoAs much as I loathe Java, this is just wishful thinking.
- jbigelow76 14y agoWhile I wouldn't shed any tears to see Java disappear from the desktop, it has a massive presence in the Enterprise and that is not due to large deployments of Macs.
- colkassad 14y agoAt a $1,000 a license? I don't think so.
- profquail 14y agoThat's for an enterprise-level license -- the 'professional' license is $399: https://store.xamarin.com/ https://store.xamarin.com/
- colkassad 14y agoThanks, I didn't see that.
- akmiller 14y ago$1,000 seems pretty meager to me. If I can share well over 50% of my code across multiple platforms then that is code that I don't have to rewrite in another language. If that 50% takes more than 10 hours to reproduce (allocating my time at $100.00/hr) then it is well worth the expense. That doesn't even factor in the time saved in maintaining the application going forward. Granted, if you are just building a small application that you don't plan to support multiple platforms then that price would seem steep.
- lucian1900 14y agoI think it's more important that it's prohibitive to play around with it or produce open source software.
- akmiller 14y agoBut you can download it and play around with it for free.
- lucian1900 14y agoOnly in the emulator. I think that's the problem.
- TheEskimo 14y agoNot at all. This offers a completely different solution than java. With java, you write once and run on everything. This lets you write C# on OS X, but it won't compile and run on Windows or Linux. Windows software can't be as easily ported to OS X either, the entire GUI, at the least, will have to be rewritten. I would argue that Python would make more sense as a java-killer. It has the write once, run everywhere thing down much better (though still not good enough) than this. Java is not going anywhere, sadly, and the linked product does not offer a compelling reason to believe that it will kill anything. All I see happening is that people who use mono now will potentially switch to this; honestly this isn't really ground breaking.
- natfriedman 14y agoYes, but write-once-run-anywhere solutions deliver mediocre user experiences on every platform. You don't want your Mac app to look anything like your Windows 8 app. With Xamarin you separate the presentation layer of your app from the rest of the app, and the only thing you're rewriting from platform to platform is the UI. Typically this is only about 25% of the code (though of course it can vary). This is how our customers do it on Android, iOS and Windows, and now they can extend their apps to Mac and still deliver an amazing Mac app.
- edwinnathaniel 14y agoNot every app has to be beautiful and super-usable though (most business/productivity apps). If an app can achieve 80% of the usability cross-platform without doing much tweak, I'd say that's a good investment from the publisher perspective.
- migueldeicaza 14y agoAgreed, not every app has to be done in that way, and for that there are plenty of alternative solutions. From HTML to Java, to Gtk# and a dozen more. This is a set of tools for developers that need to take advantage of native APIs, either for the UI, accessing the advanced audio features in OSX, accessing Darwin features, integrating with StoreKit, iCloud, Apple's OpenGL extensions, SceneKit, Bluetooth and those sorts of things from C#.
- untog 14y agoIt costs $399 for an individual license, so there is a cost barrier. I balked at the cost of MonoTouch, but since playing around with it, I've got to say- I think it'll be worth the money. I just wish it was a little more affordable to hobbyist developers like myself. EDIT: I just noticed that they had a 25% Black Friday offer. Damn.
- natfriedman 14y agoThanks for the feedback. We definitely have two classes of customers - businesses and professional developers who can't believe how cheap our products are relative to the value they're receiving, and hobbyists who are more price-sensitive. It's tricky to balance these two.
- untog 14y agoOh, I understand entirely. To a large company a $999 license is practically a rounding error given expenditures on other products out there. I don't have any great suggestions on how you can fix it, just a lament :)
- swalsh 14y agoThat makes sense, here's another idea. At my day job the price of your product is perfect. Its an enterprise app that we want to support on all 3 mobile platforms, which we sell for $5k a pop (and another $200k * N in hardware). $600 is actually cheap (though so is my company, so we probably wouldn't pay more than $1k). On the other hand, at home I couldn't afford more then $200. When I make an app at home, its for my own fun. Instead of trying to satisfy both situations in one model, have you considered licensing per app? Every computer I develop on has an internet connection, so i'd be okay having to connect to your server to compile. I'd even be okay with having subsets of the framework licensed separately if it means I can get it cheaper at home.
- natfriedman 14y agoSome of our competitors have done this and we've received very negative feedback from their customers about per-app, per-user, and royalty-based pricing. Also not sure it makes sense to create a price incentive to bundle a bunch of functionality into a single app. We like having simple, fair, obvious pricing. Even if it means leaving some money on the table.
- QuantumGuy 14y agoIf Java is a terrible language and horribly designed then why do people still use it?
- funnydeveloper 14y agoif you dont like itdont use, mother fucker
- cgh 14y agoSpeaking purely from the server-side of things, Java (the ecosystem) has great libraries and frameworks for webapps and middleware. It also has OSGi, which solves a unique set of problems that aren't addressed by any other language ecosystem that I know of. This is all in spite of Java the language, which is kind of a lame duck. Java 8 should improve things if it ever gets released.
- deleted 14y ago[deleted]
- pretoriusB 14y ago1) Great built-in library 2) great third party libraries, 3) decent documentation and tons of books and instructional material, 4) best-in-class virtual machine, good GC, as speedy as you get with managed code, 5) tons of profilers and development tools 6) several industry leading tools written in it (Hadoop, Lucene/Solr, Hbase, etc) and for it (IDEA, Eclipse), 7) Enterprise support from big companies (Sun, now Oracle) and IBM, and several smaller ones 8) Keeps improving (closures added in current 8 beta for example) 9) A large ecosystem of interoperating JVM languages, from Ruby/Python like (Groovy) to Haskell like (Scala), to Lisps (Clojure) 10) 15 year history, and at some point it fixed a lot of C++ pain points for enterprise programers
- elteto 14y agoWith all of these pluses, it can't be that terrible right? ;) Java is not anymore terrible than anything else when you remember to use the right tool for the right job. I have developed in Java, libraries (JDK's and third party) are just incredibly good, you will not find the same variety and quality anywhere else, period. The language is verbose and also /insert favorite Java complaints here/. So what? Get over it and use the right tool for the right job. We are programmers, not damsels.
- flogic 14y agoPersonally, I think computing power has hit the point where Java desktop apps and applets aren't that big a deal. I've got one running on my desktop right now. It runs for day's on end without being a significant burden to the rest of the system.
- pretoriusB 14y agoIt's the quality of the experience, GUI, not just the resource-hoging of Java Desktop app. And even for that "It runs for day's on end without being a significant burden to the rest of the system" is hardly something to write home about.
- edwinnathaniel 14y agoThat depends on the app-developer experience building GUI. Maybe most Java developers aren't that sensitive when it comes to GUI (or maybe it's a culture thing). Having said that, not all apps have to be excellent 100% in terms of usability and beautiful-UI. Once I step out from the HN-bubble a bit I'm starting to see people using ugly but usable and solved business problems type of app written in anything from Tcl/TK, Java, Qt, Pascal, etc.
- pron 14y agoI don't know. I spend most of my time working with NetBeans on a mac, and it's just as pretty as Keynote, while more responsive and stable. So, yeah, NetBeans, a huge Java Swing application, provides a better experience on a mac than Keynote.
- pretoriusB 14y ago>I spend most of my time working with NetBeans on a mac, and it's just as pretty as Keynote, while more responsive and stable. Just as pretty as Keynote? I beg to differ. NetBeans (and Eclipse, IDEA) always hit the "uncanny valley" for me (and Eclipse is even using Cocoa!). Not looking right at all for the platform, and with BS divergent behaviour on lots of UI controls. On top of it, all three are quite laggy (gotten a little better with huge memory these days and SSDs, but still, if you need 4GB and solid state to get something to run fast, well...). In no way I would say NetBeans provides a better experience on a Mac than Keynote.