Pages: [1] 2 3 ... 7   Go Down
Author Topic: Interest in overhauling the IDE user interface?  (Read 15717 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Is there any interest and / or plans to overhaul the user interface of the GUI?  While it is simple it feels very dated and could be far more user friendly.

I am new to Arduino and hardware hacking, but I am a UI expert and worked on the Swing team at Sun for five years (the IDE is written in Java Swing).  I would love to help out on such a project.

Thanks,
  Josh
Logged

Chile
Offline Offline
Edison Member
*
Karma: 32
Posts: 1233
Arduino rocks?
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Is there any interest and / or plans to overhaul the user interface of the GUI?  While it is simple it feels very dated and could be far more user friendly.

I am new to Arduino and hardware hacking, but I am a UI expert and worked on the Swing team at Sun for five years (the IDE is written in Java Swing).  I would love to help out on such a project.

Thanks,
  Josh

What ideas do you have?
Logged

My website: http://ried.cl

Belgium
Offline Offline
Edison Member
*
Karma: 58
Posts: 1731
Arduino rocks; but with my plugin it can fly rocking the world ;-)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Josh
There are already quite some alternatives for the IDE.
There are mods which extend the IDE's functionality (I'm not so knowledgeable about these)
There are other tools which provide the Arduino IDE functionality and more. For instance eclipse plugin, avr studio, visual studio plugin,...

So instead of starting a new initiative I would advice you to look at the current initiatives and help those out. I'm sure they can use a good programmer (I'm sure I can) This is probably the best place to start looking at what is available http://arduino.cc/playground/Main/DevelopmentTools

Best regards
Jantje

PS As I'm developing the eclipse plugin, I discussed the "IDE's next to Arduino" last week with David Cuartielles who told me he directed his students to eclipse . smiley A really nice way to flatter someone  smiley-cool
Logged

Do not PM me a question unless you are prepared to pay for consultancy.
Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -

0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I love that there are professional quality alternative IDEs but that is no reason to let the main Arduino developer tool atrophy.  We are talking about the first thing that a new user experiences. It should be as good as possible.


I suggest a two phased approach. First, implement a bunch of small fixes and improvements that increase usability without fundamentally adding anything new.  Things like:

* Smooth fonts
* Resize fonts with a shortcut (cmd+ and cmd- usually)
* Match native key bindings. Right now certain keybindings are available in native apps that aren't there in the IDE.  Ctrl-A for start of line, for example. (on Mac)
* Serial port names.  When the IDE asks you for the serial port of your Arduino it gives you a list of names that contain no useful information. There must be some way to fix this.  Perhaps if there is only one serial port attached we don't even ask you, just assume the default.
* Add a "Window" menu showing the currently open windows
* line numbers in the gutter
* a selection of nice alternative color themes
* make the toolbar look nicer (new colors? gradients?)
* switch to nicer icons from the Noun project.
* make the serial port dock-able with the main window
* support fullscreen mode on OSes that support such a concept.

The second phase would tackle deeper issues

* syntax highlighting and code completion
* a sidebar with inline help for the language reference
* a sidebar with docs on each library you have imported into your project
* a way to discover and add new libraries from within your IDE. Perhaps a repo of common arduino libs?

thoughts?

- Josh
Logged

Chile
Offline Offline
Edison Member
*
Karma: 32
Posts: 1233
Arduino rocks?
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I agree with everything, maybe not interested in new color themes and Window menu.

Code completion += intellisense would be excelent, a small popup with info and some refactoring tools, like rename a var.
Logged

My website: http://ried.cl

Belgium
Offline Offline
Edison Member
*
Karma: 58
Posts: 1731
Arduino rocks; but with my plugin it can fly rocking the world ;-)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Josh
sounds like great improvements really focused on the beginners experience. I wish you lots of success.
Best regards
Jantje
Logged

Do not PM me a question unless you are prepared to pay for consultancy.
Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -

Austin, TX
Offline Offline
God Member
*****
Karma: 12
Posts: 524
carpe diem
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Josh,

You may be interested in taking a look at some of the previous discussions on the developers mailing list.

Several of your suggestions have been requested and discussed in various forums.

Here is a recent example of the direction the developers are headed: http://arduino.cc/pipermail/developers_arduino.cc/2012-June/006789.html
Logged

Gosport, UK
Offline Offline
Faraday Member
**
Karma: 19
Posts: 3114
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Josh,

If you could come up with some real usability improvements, then I'd be all for it, but things like 'smooth fonts', 'resize font keys', and 'nicer looking icons/toolbar/colour scheme' are just fluff. The IDE is a tool to do a job. Code completion can be useful, as can syntax highlighting, so that's where I would start.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 11
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
...IDE is written in Java Swing...

The IDE seems to be a mixture of AWT, Processing and Swing. There also seems to be people who are "doing their own thing". I suggest you look at http://code.google.com/p/arduino/ if you have not already, as this is where you find the existing issues list and the developers mailing list; archives of this list can be seen without logging in and is updated very soon after postings.

A major direction change seems to be suggested here: http://arduino.cc/pipermail/developers_arduino.cc/2012-August/007100.html

Stay interested smiley
Logged

0
Offline Offline
Newbie
*
Karma: 1
Posts: 45
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks for the feedback. I'm looking through existing issues to find ideas for improvements (which is where I found the request for a Windows menu).

Here is a first mockup of what it would look like.  Hopefully the icons make sense.  The right sidebar contains help so you can learn about the language, functions, and any installed libraries right from within the IDE.



* JavaFX Scene BuilderScreenSnapz001.png (30.24 KB, 614x507 - viewed 66 times.)
Logged

SE USA
Offline Offline
Faraday Member
**
Karma: 40
Posts: 3783
@ssh0le
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

looks like a winner to me
Logged


nr Bundaberg, Australia
Offline Offline
Tesla Member
***
Karma: 121
Posts: 8443
Scattered showers my arse -- Noah, 2348BC.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I seldom use the IDE but would be the first to agree that it has it's place, especially with a few enhancements.

Quote
Hopefully the icons make sense.
So the guy running is the fire escape for when your program crashes and burns?

I like having line numbers, this is brought up ALL the time and frankly having a single number at the bottom of the window somewhere doesn't cut it, so that's good.

The help has potential as well, as long as it finally has a proper list of return and variable types for all core functions at least (unlike the official reference pages).

One thing that really irks me and I've never heard mentioned is remembering the window size over invocations. Programs have been doing this for maybe 30 years and to have to resize the bloody window every time is very annoying.

As to what chance you have of getting this officially adopted, good luck with that smiley

______
Rob
Logged

Rob Gray aka the GRAYnomad www.robgray.com

SE USA
Offline Offline
Faraday Member
**
Karma: 40
Posts: 3783
@ssh0le
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

does it really make any more since than arrows in different directs

right = compile up with a little dotted line means upload down with a little dotted line means save, that makes no since compile and save are local functions but have different icons, upload and save are external and internal but share icons

sorry I am a noob, wth? and where are the line numbers? heh
Logged


SF Bay Area (USA)
Offline Offline
Tesla Member
***
Karma: 106
Posts: 6373
Strongly opinionated, but not official!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I am a UI expert and worked on the Swing team
Oh; an expert to grill...

Quote
* Match native key bindings.
Is there an easy way to do that?  I do miss it, but the way I read the descriptions of Swing (I am not at all a Java programmer, other than being able to write C code in Java), the rejection of the native UI behavior is considered a "feature."

The other thing that has frustrated me is the abstraction of the "Serial Monitor" window.  I was trying to figure out how to get it to support "cursor positioning" ala VT100, but the way I read the current code, it would be very difficult to do this.  It's too much a "text panel of arbitrary size" rather than the (more primitive) "screen with X/Y coordinates of each letter."  Is there an alternative feature more like a "screen" ?
Logged

Cape Town South Africa
Offline Offline
Edison Member
*
Karma: 19
Posts: 1183
A newbie with loads of posts, and still so much to learn !
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

What bugs me is the  "Screen of Custard "  when trying to select a couple of lines of text  :-(

Perhaps my mouse control isnt as good as it was :-)
Logged

With my mobile phone I can call people and talk to them -  how smart can you get ?

Pages: [1] 2 3 ... 7   Go Up
Jump to: