Windows 8 support, but still no love for biz app devs ?

We hear everyone here on the concern around using Corona for business apps and here are our thoughts.

First of all, today’s acquisition announcement has little to do with this discussion. As we explained, Corona is here to stay and our goal is to make it a better and better platform. The more important issue here is what the platform is good at vs. what it is not as good at.

While we want to say Corona is a great platform for *any* type of app or game, the truth is that it has its strengths and weaknesses (just like any other tool/platform). Rich, custom UIs are a Corona strength, while basic native widget UIs are not a strength. A big reason for this is that we are a cross-platform framework and the major platforms (iOS, Android and now Windows Phone) are diverging in their native UIs, so putting together a solution that works across all of them is a very difficult thing to do.

In fact, none of the major frameworks handle native widget UI in a satisfying cross-platform manner. They usually go about it in one of three ways:

  1. relying on web elements (which are by definition not native)

  2. providing a cross-platform approximation (similar to our widget library)

  3. providing a wrapper for the native APIs

The last item is similar to how we handle things with Corona Enterprise, and it does not solve the cross-platform issue. It is just like developing natively, but with some basic abstraction.

So what are we going to do?

First, we plan on maintaining our widgets library, but it will become harder and harder to keep it a viable option in light of the diverging UI on all platforms. Also, we will still provide Corona Enterprise, which gives any user access to the native APIs. 

But we also think we have a better way to approach this: CoronaCards. 

With CoronaCards, you can approach building a native app like any other developer, taking full advantage of native UI elements, and even using another framework. Then, you can use CoronaCards when you need the power of Corona for rich/interactive elements. The way you use CoronaCards here is much in the same way you might insert a webview into your app. The difference is that instead of a webview you are inserting a Corona view (partial or fullscreen) into your app, and of course, instead of HTML, you are using Lua/Corona APIs. We think this is a great option for developers and we are starting to see people take advantage of this.

So that is our current thinking about the key issue in building business apps with Corona. We welcome your comments.

Walter, thanks for taking the time to chime in here and your candid comments. Most appreciated. 

What is not appreciated though is how up until now Corona SDK has been marketed as an excellent tool for both games and business apps. It is still on your web page.

http://coronalabs.com/i-want-to-build/business-apps/

It is wrong to market a product in the way it has been marketed while strategizing further and further away from the marketed intent.

CoronaCards is not a viable option at all. I do not wish to be setting up multiple development environments, one for each platform and learning native coding etc to do the UI stuff and thats why I’ve been learning and investing in Corona SDK all this time. There is no added value at all since if I had the knowledge required to do the UI then I could do the rest natively as well. Besides, the current write once and build twice workflow in Corona SDK and Simulator is the workflow that works for us. It is the x10 promise after all isn’t it…

Secondly the pricing model for CoronaCards is not comparable to what we have with the Pro plan at all. So even if I was happy with the solution offered through CoronaCards I could still not afford it to do what I currently do with Corona SDK Pro plan.

Lets all not forget that CoronaCards was launched as a new capability to allow developers of 3rd party frameworks to leverage the power of CoronaSDK. It should not be seen as a way-out of your business app troubles.

I expect nothing will change as a result of this exchange. You have been kind enough to confirm our hunch and for that I thank you. Wishing you and your team best of luck in your future endeavours. 

Thanks, Walter, that is a clear of summary of the options and you are right to suggest Corona Cards might be the best compromise. One thing that does make it less attractive is the cost, having to pay separately for iOS and Android versions whereas the Pro subscription offers both platforms for one price. Having set a precedent with WP8 maybe time to think of a package deal? Also, as I’ve said elsewhere before, having a true monthly payment option would also be attractive to indie developers and help cash flow.  

Both Apple and Google seem determined to differentiate their products more and more so having cross-platform UI widgets will, as you say, become more and more impossible to develop and maintain. However, Corona does offer a lot of scope for innovative UI designs which can also be appropriate for some business apps too. My main concerns are the limitations of the current Widget library (for example, non-scalability and being locked to particular screen resolution to work correctly) and the limitations of displaying rich text. The easiest way to overcoming the latter is to render HTML text in a web view so better integration between Lua code and the web view contents and Javascript code would be most welcome. Most native apps seem to use HTML to display rich text so I would make that a priority.

Stefan

Hey guys - a “package price” for CoronaCards on multiple platforms is a good idea and something we will probably do soon, we just haven’t had the time.

ksan - we aren’t “punting” on business apps. We are just trying to be very open with the challenges and trying to come up with the best solutions. We believe there is huge value in cross-platform tools (like Corona) but since we are all at the mercy, to some degree, of the underlying platforms and their diverging directions, we also have to pick our battles. Implementing super comprehensive cross-platform UI widgets is a tough battle and almost no one is doing it. We will still support that to a large degree, but again, we are just being honest. We are also presenting other options that may not be as attractive as we would all wish, but are definitely realistic and still save lots of time and are powerful.

David, thanks much for your feedback. I think, the issue is not just about UI and widgets per se. There is much else lacking that needs to be and could have been tackled along the way. Webview and mapview shortcomings come to mind for example. The adaptive scaling introduced recently is a great example of how a business app focused need can be met so thanks much once again for that!

As for the widgets and divergence per platform… to the best of my recollection we have not pressed hard for 100% native replica widgets but simply solid widgets which perform consistently on each platform. Themes offered can help bridge the path to platform authentic looks and one could even detect platform and tweak widget behavior accordingly. Its all in the amount of resource you have available to dedicate to this purpose.

Anyways, thanks much for your continued support and wishing you the best of luck in the future as well. 

So what’s the business strategy here? It looks as though anyone who wants to make use of CL to do anything with ‘native’ widgets is being pushed aside in favour of a mobile platform that no-one really wants - except maybe some businesses. 

I think lots of people wanted (and do want) Windows Phone 8 support, including me. I want to be able to put my app on every marketplace out there for maximum exposure. I’d like to see the number of platforms expanded even more, such as the Windows store. I’ve developed native apps on Windows Phone 8 and Windows 8 store and made some decent money there. I’ve already utilized CoronaCards for Windows Phone 8 and have an app released. It’s pretty simple to do - the learning curve is low.

I’ve made a sort of “business app” with corona. It is a photo decorating app called Snapbook.

I had to make many of my own widgets such as the navigation bar at the top and the tool bar that shows up on the main editing page at the bottom, but I was able to build them pretty quickly using some of the built in corona widgets like the scrollview, tableview, and buttons.

I made it look like iOS but I’ve released it no problem on Android as well. I feel like with business apps your going to have to choose a U.I. design and release it the same across all platforms. If you want a different U.I. for different platforms, why not just code natively? Each native platform has its own kind of signature U.I. that is different from other platforms. In order to abstract your app to release on different platforms with a single code base your going to have to choose a single U.I. I think, which means building your own.

Can all the Corona Cards demos be converted to Swift from Obj-C please ?

Dave

@ksan, Am I missing something with this qoute?

I don’t seem to have a problem with sizing across multiple devices, or maybe I am just doing it wrong but unlike the games I have done when it comes to applications I don’t size/position the same way I would in a game but rather convert everything to pixels/percentages and do it like I would a div tag on a webpage.

Regarding widgets, not sure what widgets you are looking for? Short of the scroll view I don’t use any built in widgets just write my own as they are simple enough to make.

secureemailclient.png

pslaw_mobile.png

Christopher, 

I too handled this need myself prior to the recent update but it was a definite challenge especially on the android devices. The image posted on CL Blog which I will paste below summarizes what I was trying to achieve in the past without the adaptive scaling. Having UI elements exactly the same physical size across devices. 

Widgets… I just would like to see what is offered by Corona Labs out the box work. They are still full of bugs and every time there is an update other things break. Lack of focus and QA on this framework which I believe is now 3 years old is astounding. I do not wish to rewrite them or take the open source code and fix them myself. I would like Corona Labs to do what it promised to do many times over and fix the existing widgets for what its worth. Walter in this thread signalled the end of support for widgets appearing over the horizon though so not much more to expect on this front I suppose. 

PS. Your interface design skills are amazing! That email app looks amazing!!! Congratulations. 

Adaptive-Scaling-iOS-Android-phones-tabl

Thanks for the compliment :slight_smile:

I do see your point and not discounting any of them I just come from a different background where I never had 3rd party controls, plugins etc. so always just got use to writing them no matter what language I happen to be in at the time so not really a big fan of the widget library anyway because like you pointed out its hard to fix bugs in other peoples objects :slight_smile:

Enterprise mobility custom app adoption up 713%

Worst decision ever for old Corona Labs and new Fuse Powered to turn its back on this ever lucrative and ever growing market. 

Developer hat on :

I’m with ksan on this one. Thus far I’ve been very unimpressed with the effects of the acquisition. My support requests go unanswered for weeks now, including deauthorization requests. So much so that I’ve had to make dummy accounts just to be able to compile on different machines.

The answers given so far have no actual position in them. They’re business bulls**t bingo answers. Start talking straight. Just yes/no. Any “it depends” is a cop out and will be intepreted as a negative. Not answering will also confirm the negative.

  • Will you actively support business apps in the immediate future (yes/no)
  • Will you allow user/session tracking to be completely disabled (yes/no)
  • Will you proactively continue to stabilize the widgets libraries (yes/no)
  • Will you regularly develop new widgets (yes/no)

I’ve learned to code using corona - learning a new language isn’t appealing. Thus CoronaCards is useless to me and asking me to migrate to them will make me reanalyze my entire platform choice.

MBA hat on (some free advice from a strategist from a top-tier firm):

The strength of corona is the ease of which someone can learn/write code, and that the apps are native and cross platform. The first part is differentiating in combination with the second part. However if that ease of use disappears, there’s no reason to stay with Corona compared to the many other native cross platform coding tools out there.

Working with Fuse from a business perspective is a great fit (strategically from Fuse’s point of view). However if you lose the core reason why developers use Corona this acquisition will be very costly as there will be no developers left to integrate your platform.

how about Corona start with adding the Android contact list plugin promised over a year ago!!!

I doubt any business app would ever utilize it.

don’t hold your breath, they are not carrying through, with the classic excuse…

engineering is busy…

LOL…

Nail

Another one… Recently it was stated that WP8 will never get map support as there is simply not enough demand for maps… Hmmm…

Thanks for calling it what it is! You’re spot on. 

Hey guys - a quick question: what exactly wasn’t clear about Walter’s earlier post on this very thread?

We stated that Corona may not be the best solution for a pure, cookie-cutter UI business app. We’d love to say that Corona is the best for everything, but that’s not realistic. But we did say that:

  • Corona is great for custom UIs

  • Corons is great if you need to go cross-platform

  • Via CoronaCards we support a ton of scenarios and still make many things easier

  • Via Corona Enterprise anyone can add any additional functionality

So I think we have a pretty clear position on this.

Do we support everything everyone wants? Unfortunately no. But no other platform does either. And if you go native, you sacrifice ease of development and cross-platform. Unfortunately there are always tradeoffs.

Rest assured though that it is our intention to make Corona better all the time.

For me, nothing left unclear and for that I’m thankful. This clarity and declaration is 3 years too late though. All these years we’ve been promised something that was apparently never meant to be. That is perhaps why there is some degree of resentment at least on my part.

By the way, here is a great example of a business app made with Corona (with a custom UI):

http://getmenume.tumblr.com/

It just launched earlier today and on both Android and iOS:

https://itunes.apple.com/us/app/menume/id700326215

https://play.google.com/store/apps/details?id=me.menu.eater

And there are a few others. A member of the community is working on a really great looking news app, also with a cool custom UI.

That is very nice, just been trying it on my iPad.

Was this done just in Corona or Corona Cards ?

Would love more information about how the app was developed.

Dave