Interactive IDE - Would that be like developing a Salad?

I am used to visual development and xcode does a good job as did other Microsoft platforms that I used in past lives. I was contemplating on an IDE idea that would allow the most inexperienced developer to create apps in Corona.

Now thinking on this, I came to the thought that then wouldn't that be like creating a salad? However having said that the idea is not just salad but to help me organise my coding session into a manageable and visual environment.

What are your thoughts? Of course we do not want to create a Salad Maker on top of Corona or do many want that? Let me know. Help me decide which way to go on this?

cheers,

?:)

The artist in me (that's gotta be a good 85% of me) says: "yes, make a visual IDE. It would make me so much quicker!"

The developer / steadily growing code monkey in me says: I am enjoying learning a new programming language. It makes me feel smarter and I love feeling smart!"

I think if we could just merge a few of the excellent individual projects on here a fantastic editor could be born. Just imagine: the look and feel of Sprite Deck with the code output of Gumbo teamed with the source editor like Text Mate and some of the coding shortcuts provided by Corona Code Generator and Corona Project Manager... It's all already out there and getting better, but in one package, that would be amazing....

it may be a start: http://www.asouza.com/blog/

guesses on what is coming soon?

Alex

I'm creating something like that already on top of Inkscape ;)

This topic shows just a very early development stage: http://developer.anscamobile.com/forum/2011/03/19/presenting-drag-and-drop-level-editor-corona-sdk-inkscape-and-svg

It now supports physics materials, defaults, as well premade objects and settings.

Think of a drag and drop solution: download a premade car, insert into your SVG level in Inkscape, design the track in Inkscape, and the racing game is done <--- this is almost possible already, I'm just finishing it.

You won't need to worry about copying and pasting code (as Gumbo). It will be somewhat similar to "Salad Maker", heavily dependent on Inkscape built-in XML editor.

I guess @cl-apps did recognize that issue, there are several apps that kind of overlap in functionality but none go the whole way.

I did provide some feedback to SpriteDeck, I corresponded with Nerderer (Gumbo) for collaboration or suggestions, but I guess in a dev world, no one wants suggestions. Nothing wrong with that.

I have been a Visual Studio 6 user and now xcode 3/4. The productivity increase that I gain due to using xcode 4 over xcode 3 is amazing. That is where the idea of an IDE came into being.

Alfred from Karnak games is doing a good job with using Inkscape, the videos are not just promising but Amazing. The point still remains that Inkscape is *not* and cannot be called an IDE. It does not have a code editor, etc. It is an open-source vector illustration package. Microsoft have made that mistake of making Expression Blend from an application to a Silverlight IDE.

I saw the Salad and found that it has similarities of what I was wanting to do, but it is a bit rigid on actions. A developer might not require actions, but routines/functions.

So back to the idea, if you could have an IDE that lets you work on both the Code and the Graphics, like VB, xcode, Visual Studio, etc.

So, please let your opinions flow on what you feel about having an IDE, where you can set properties for the project and add/remove files like xcode. Create elements like Interface Builder/Sprite Deck/Gumbo. Add snippets or edit code with highlighting like IndeEd, Manage Physics and level drawing like Alfred's Inkscape app or Tiled, and so on all in one package.

If the authors are interested in collaborating together to create that, I am happy for that too.

an IDE integrated with corona sdk would help a lot, something a la flash.
Now i use gumbo to visualy place my elements, export it, add code in an editor, save it and view it in corona simulator.
What would be awesome is to have a code editor in corona, with a window that shows you the graphic elements of the code, and you can move them by clicking on them with your mouse or arrows.
Then when you want to test it in simulator, you press ctrl + enter, and the program runs in simulator, with a window like in flash for bandwitch usage, but with memory usage and variable listings.
I would even pay more for that :) (like now you have flash software or adobe air to just code)

@jayantv: I don't mind suggestions. In fact i've added a lot of requests to Gumbo. What I didn't have the time for was to help build this complex IDE that you're talking about. Gumbo already takes much of my time, and building a new IDE would take a LOT of time. I'm not really here to build tools, I want to build games. Gumbo was just a tool that was needed when I started building it. Besides, I don't think that Silverlight is the right platform for a tool like that, since it's just too limited.

@Nerderer, I understand, and am sorry if it sounded otherwise. I was just merely stating that I tried to talk to the developers that already have a product in place for extending it.

I am aware that this will not happen overnight and if worked upon by a team who volunteer their time, even more slowly.

Most importantly, how many in this community of 5 to 6 digits are wanting a tool of that type which can let you work with the front end or the code behind.

Carlos in his first webcast mentioned that IDE's do not work when somebody asked him that towards the end of the session. So there should be something to that.

cheers,

?:)

As a mock up something like this would be cool, obviously with more useful buttons etc, but with that general work flow:

@cl-apps that looks strangely *inspired* from Visual Studio Express for WP7

For those that have not seen it
or

This is Microsoft Expression Blend that can be used for *inspiration* for development,

the new xCode 4

Settings for project management

The new Interface Builder for XCode4

and HP has a web based IDE

well, something like that would be a dream come true :)

There are three questions,
1. How many people would be interested
2. How much would they want to spend
3. How long can they wait before their interest wanes off

That would determine the viability of such a project, it would take about 3 months minimum before a ß can be released that works.

cheers,

?:)

Carlos in his first webcast mentioned that IDE's do not work when somebody asked him that towards the end of the session..

Obviously everyone is different, but I for one am so glad that the people in charge here prefer the "text editor, command line compiler, and that's it" approach to development over dumping an avalanche of buttons onto developers. In my opinion, complicated tools are just too complicated. When I want to see the directory structure, the code editor, and the graphics side by side, well that's what a multitasking operating system is for.

Like, the sorts of tools depicted in those screenshots definitely appeal to a lot of people, but they make me vomit in my mouth.

@jhocking: it think that is very relative. A tool that allows RAD, but at the same time complete and raw development (e.g. Visual Studio and XCode) is welcome.

It is obvious that most users will totally rely on the visual tools, even more that Corona attracts hundreds/thousands of persons with no prior-programming or gamedev experience. And that is not a bad thing.

Then you can just choose if you want to go the easy or the "hard/normal" route.

@jhocking, I think you have a very strong reaction towards things.

"Obviously everyone is different,..." that is true. However having said that, I prefer for my iOS apps (that are written in Objective C) creating all the UI elements in code, I did not prefer using IB for that, but on the other hand, with xcode4, I would rather use the visual designer (Interface Builder) it is so much easier. I do not have to re-run my app to check the position of the elements, etc.

I guess it is like some developers will still use vi for editing and writing their code, then there are those that use the modern editors with Syntax highlighting, and all the bling bling features. Yes, Everyone is different.

Some IDE are too complicated to use and some are overtly intrusive, I have a strong dislike to Java for a couple of reasons and one of them is IntelliJ.

anyways, I have noticed that a lot of new comers struggle with how to get their game/app off the ground. As an Academic, I have learned that it is not about my opinions that matter, it is about how it can invoke learning and how it can aid the learner to transition across the impediments to achieve learning. If an IDE can help, why not.

As a young developer I went with the same attitude that many carry, I am smart and the rest that cannot catch up are obviously, Stooopid. I am glad that I changed my point of view early on in my career as I transitioned towards training and teaching.

Cheers and thanks for your opinion, it does count.

@Alfred, I think you have responded exactly what I would have wanted to say, People can choose to torture themselves and make things difficult or use tools and make things easier. THe choice is upto them.

I actually think that this is a great idea, and something that should've been a part of Corona from the beginning. Most developers are probably using some kind of IDE with the option to use a graphical interface if they want to. Being forced to use text only is so primitive.

I also thought it would be a great idea, a lot of us developers don't have a lot of time to devote to learning and coding maybe the 'proper' way, so any shortcuts or 'big-picture' helpers then in my opinion the better.

Obviously there are a lot of people who live and breathe code and prefer to do it there way, which is great also.

For my own personal selfish needs I'd be more than willing to pay for anything that would help me out and as for time frame I don't think it matters since App development will grow and be around for a very long time.

Anything that shows a clear workflow from design to code to simulator would be a big help to the novice developer with shortcuts, snippets, code completion & wizards for general things help so much, not only to help get things done but also to learn how to write the actual code and adapt to make other things.

In between that concept you can make it as complicated or simple as you like :)

@jayantv: Since you brought up being an academic, well I teach a game development class at a college here in Chicago. One pedagogical tension that I see when teaching technology is a distinction between tools that work great for developing in and tools that work great for teaching. While the best tools address both needs, they are separate needs and thus often are addressed best with separate tools.

For example, when I used to teach 3D animation there was a clear tension between how beginners want the UI setup and what tools an expert user wants. Fortunately Maya has a highly customizable user interface but that created problems when my screen didn't look the same as what a student had on their screen.

People can choose to torture themselves and make things difficult or use tools and make things easier

Well that's a misunderstanding of my opinion. I was saying that I find tools with lots of buttons on the screen to be too complicated. I don't shy away from IDEs because I like to do things the hard way; I find IDEs to be hard. Again, this is how my mind works and the prevalence of Visual Studio makes it obvious others don't think the same way, but I get all nervous about all the fiddly buttons hanging around. Just give me the basics that I need to care about right away, and I'll worry about the other details later.

It's a very Mac vs PC disctinction: only show the user the minimum controls they need in order to streamline the experience, or dump all of the controls onto the screen in order to give the user as much power as possible?

This is the exact reason why I much prefer using Corona compared with dealing with XCode for developing in. Don't have to click through build profiles, don't have to click through menus of linked frameworks, don't have to deal with any of that complicated stuff.

...

Y'know, I wasn't disagreeing with anyone before, just stating my opinion, but the more I think about it the more I think visual development tools are an idea that's better in theory than in practice. Like, I've been developing in Flash since before AS3 existed. Back then, the intention was for all the programming to be done by clicking together components in a simple and visual way. But the realities of the dynamic nature of information flow caught up to Flash, along with the complexities of modern interactive applications, and so they added AS3 and now there is a pretty strong distinction between the visual and the coding sides of Flash development.

I've seen this with Max/MSP too. It used to be that most new media artists favored the visual programming approach of Max/MSP, but as the limitations of that approach became apparent most new media artists moved over to Processing. For reference, Max/MSP was a tool for programming by linking components, while Processing is basically a stripped down version of Java packaged with a syntax coloring text editor.

Think about GameSalad. I'm sure there are smarter ways to go about things that don't have all their limitations, but on the other hand I don't think it's an accident that many of their users lament the lack of arrays. Abstract data structures like that simply don't lend themselves to being represented visually.

...

On the other hand, I really like the mix of visual development and pure coding in Unity. hm, that is an interesting counter-argument. I'll have to think on what exactly I find effective about Unity.

@jhocking I understand where you're coming from and agree with most of the points, the sticking point of your comment was

Like, the sorts of tools depicted in those screenshots definitely appeal to a lot of people, but they make me vomit in my mouth.

which I was pointing out is a very strong comment.

Some IDEs are chocabloc full of buttons and make it impossible to work and are very confusing. Look at Objective-Basic IDE, too many PopUps.

XCode and the web based Palm IDE are very minimal and therefor also cause an issue for some new comers. It is almost impossible to appease everyone everytime. Customisation is also dangerously confusing, which ones should I have and which ones should I not?

In my opinion, a good IDE is one that lets you focus in blocks on the task at hand. In our case here,
1. It should allow for creating display and other type of Objects
2. It should allow for an inspector that will allow for tweaking the properties of the object
3. It should allow for creating code for that object for a particular event rather than the whole 9 yards of everything, which is also confusing to read
4. The IDE should display the files and folders that are part of the project.

I think to start with, if this is taken care of, 99% of the users would be happy, be it new comers or be it advanced users.

cheers,

?:)

+1 for IDE

I understand where you're coming from and agree with most of the points, the sticking point of your comment was

oops and I was just chiding someone in another thread for engaging in hyperbole, I should listen to my own advice

There is something funny about this thread's metadata. Maybe if you put the word Salad, it does that. This thread has 21 responses but 0 views, that's interesting, no one has viewed this thread but responded to it. :)

well, when i was thinking about something like flash, it was not for the "coding by buttons", but for the fact that you can see what you code directly on stage, and precisely move it/change it in WYSIWYG mode, without doing it in five different programs...
A code editor with highlights and an actualized API reference with exemples included would be nice too.
It would be cool also if in the code you could have something like "movie clips" from flash, when you put your code inside it, for exemple for a complicated animation of sprites which takes 30 lines, you have just one line for it in the main code.

Have to say all these 3rd party tools that are popping up are damn impressive and will certainly improve development time!

I'm new to Corona and not much of a coder. I much prefer a GUI. I've used two development programs in the past for interactive CD ROMS. They are the now defunct Macromedia Authorware and iShell from Tribal Media. Authorware was about $3500 USD and iShell still goes for about $500 USD (I think). Each allows a good combination of GUI for the basic app development and coding for advanced functions. Neither were designed for gaming. I think I'm probably in the minority here in that I don't intent to make gaming apps.

I have started some work on an on-device editor for CoronaSDK and the best part is that it can allow creation of objects, move them around as you want, so it is a WYSIWYG editor and code snippets can be added/attached to these objects, the file can be exported as a lua file ready for compilation.

the only thing missing should be the ability to test/debug it on the device itself, as Apple does not allow such a thing.

there is a detailed write up at here and a link to the video here

views:2272 update:2011/9/19 13:40:57
corona forums © 2003-2011