Picking this part of the thread for a comment -- I have read all of them.
I am also a long time user -- since version 1. Over that time, the users of computers, to say nothing of users of Mathematica, have changed.
Initially, one could expect that a user would have either some experience or the willingness to spend time to get that expertise. The cost (I spent $800 for Mathematica 1.1, or about $1600 in today's money) was a barrier for the casual user.
I don't think that is true anymore. In addition, the scope of Mathematica has increased to the point where no one can be an expert at all aspects of it. The Assistants (from the input assistant to the Suggestions bar to the various palettes) are all ways to bridge the gap. They could work better, but for many tasks, I find some of them to be useful.
To offer a comparison: I started Macintosh development at about the same time. Apple provided a three volume Inside Macintosh, which I read and used extensively. Although I did not consider myself to be an expert, I could do whatever my coding tasks required. Over the years, Apple came out with the 40(?) volume Inside Macintosh, and I only read those bits I needed to get my job done. Now, of course, there is no printed documentation, and I rely on the assistants in Xcode to provide specific help, and to point to guides and overviews.
The assistance provided in Mathematica is essentially the same as what I have in Xcode. It is not as complete, and is certainly in need of a couple of bug-fix passes, but I think that it is the way to go.
On top of basic level of assistance is the help that a new user needs. For experts, it should be possible to turn these things off. You can do so for the suggestions bar, as well as most of the other options. The input assistant (the little plus sign on the horizontal insertion bar) is not a problem for me, but it should be possible to turn it off as well.
I think that the real problem is that the notebook interface paradigm has been stretched past its breaking point. I don't think that the same metaphor works for both printed presentation and screen. The recent problems with the default notebook style is in part the result of an effort to satisfy two different requirement sets. (Granted that there are also aesthetic issues -- the use of Arial, the size and color of the Title, Sections, etc.)
Once it became possible to make an entire 'document' with interactive elements, the need for a GUI designer like Interface Builder (or the current Storyboard) should have been obvious. You *can* get most of the work done with the present tools, but it is a lot more work than it needs to be. This issue will come to a head if there is ever a native iPad version of Mathematica.
For advanced users, it would be useful if Wolfram Workbench were developed so that it would be a tool on par with Xcode. (I am sure that there are equivalent examples for Windows and probably Linux.) It would really be great if the 'developer' model were more fully integrated with Mathematica. (My guess is that Apple devotes a lot more resources to their tool than Wolfram does. It is a chicken-and-egg thing: if the tools were better, then more people would use them, but in their current state only die-hards use them, which indicates to Wolfram that their money is better spent elsewhere.)
For beginners, Wolfram|Alpha seems to be the gateway drug of choice. I like the way that Mathematica can provide Wolfram language code for free-text input. I don't use this function that much, but I am sure that it can be enhanced. The real problem here is not so much learning syntax, but understanding how to translate real-world problems into mathematics.
In my opinion, the only workable solution is to move from the one-size-fits-all paradigm to something else. Wolfram Workbench is one attempt at this diversification, and would be useful if it worked better. (I feel like I am going back to the 1990s when I crank Workbench up.) The notebook interface still works for doing basic work, but is probably not the best way to create interactive applications, particularly if they need to be full-screen. I hope that the developers at Wolfram realize this when they try to make an iPad version of Mathematica. Personally, I think a better choice would be to develop tools to target an app as 'fully interactive' for deployment on either desktop or a mobile device. At a more basic level, it needs to be realized that the paradigm of the 1980s is over -- the primary way of interacting with documents is on the screen, and everything needs to be reconsidered, including stylesheets, layout, etc. There is still a use for documents that will exist as print (or PDF), but the needs for this type of document should not constrain what is the most common use. For example, a small percentage of users will want to generate LaTex output. This functionality should work seamlessly, but it should not be the primary focus of the user interface.
For all users, the best thing would be to have essentially a bug-fix and stability release. Eliminating a lot of the current 'gotchas' would help everyone. This would include an aesthetic pass. It should also include adding to the documentation a lot of the information that is currently only available through tech support. I note that prior to version 6, there were .1 revisions (4.1, 4.2, for example), rather than the 0.1 revisions in more recent versions. This may be just a shift in naming conventions, but I seem to recall that the 'tenth' increments had a lot more bug fixes than the the 'hundredth'. I would not mind seeing a 9.1 release that addressed many of the issues raised in this thread and elsewhere.
One more thing: I think that the best way to increase Wolfram's customer base is to make the product more available. Now, the student prices are already very attractive. However, the cost for Mathematica on-line is a bit high (in my opinion). The highest cost is that to third-party programmers providing a stand alone app using Mathematica. While there are many interesting things on the Demonstrations site, they are by and large 'toy' apps. Making an app useful to a lot of people using CDF player is problematic, given the constraints. (The most notable of this is letting the user import their own data. The second is safeguarding my IP.) I'd like to see a model where one could sell a Mathematica-based app at an app store for $5.00 and possibly make a little money. The iPhone did not really take off until the app store opened, and I think that the same type of thing could happen for Mathematica.
I don't think that most of the comments on this topic are anywhere close to being incorrect or not useful. We may be non-typical users, but we are the type of people who will continue to use Mathematica long after the initial reason for purchasing it has passed. I have had several interesting conversations with WRI people about these topics, via e-mail or at their conferences. It is likely that the only way that things will change is to achieve a critical mass in this feedback.
On May 13, 2013, at 3:50 AM, djmpark <firstname.lastname@example.org> wrote:
> That is not the way to gain new customers. It is just adding doo-dads, > usually in a confusing and insufficient manner. Sometimes less is more if > the less is workable and the more is not. > > Think of the various types of calligraphy. The tools are very simple and > limited and yet what beautiful results can be produced! But the tools have > to work and not be continually presenting problems or unnecessary choices to > the artist. What even more beautiful results could be produced with > Mathematica - if the basic interface allows the writer to concentrate on his > or her ideas. > > Mathematica cannot directly provide all mathematical services because there > are just too many possibilities and the people at WRI are not expert enough > in all areas and do not have the time or experience. Many useful > applications will be specialized in some respects but will have many extra > convenience routines for the particular application. WRI has to concentrate > on providing core routines both for mathematical calculation and basic > presentation constructs. It may be difficult to decide what should be a core > routine, but just adding on things willy-nilly is not likely to succeed. > Good add-on Applications should be a basic mechanism for extending > Mathematica. WRI does an extremely poor job at explaining how to write > Applications and the Workbench support is only barely adequate. (I do have a > rather extended discussion on writing Applications in the Presentations > Application, including where to put them, how to set up folder structures, > and how to provide certain and convenient access for users - for those who > might be interested.) > > The entry point for input to a Mathematica notebook should be absolutely > CLEAN with NOTHING there except what has already been entered and the entry > point. If the writer needs assistance he should request it. Without > requesting help it should be invisible. The basic methods for requesting > assistance should be hot keys or the right click context menu, or possibly > the Mathematica Menu. Why couldn't Wolfram Alpha be on the context menu > instead of an in-your-face doo-dad button on every new Input cell, which > also appears and often gets in the way of text in created windows? Some of > the choices there are already on the context menu. And there is a > WolframAlpha routine. And you can also get it just by typing =. I wonder > what percentage of Input cells become WolframAlpha? It is a nice but > occasional feature. It isn't worth sacrificing a clean interface when there > are so many easy alternatives. > > WRI already makes a fair use of the context menu and they could make even > better use. In Windows one can right click within a folder and get a New > entry on the context menu. One of the new items that can be created is a > Mathematica Notebook. It would be very nice if they could add a Mathematica > Package to the list. (Maybe Microsoft creates the list from installed > applications and WRI can't control it? Or can't set .m files as a file > type?) Once one has set up a proper Application structure it is really easy > to write packages. Getting the package in the right place is another little > speed bump that deters writers. In Input cells the context menu has an > "Insert Special Character..." entry. This would also be useful in Text and > text like cells, where it is missing. It would be nice if spell checking was > on the context menu for Text cells and the various Section cells - to just > check those selections. > > As for the Suggestions Bar after output, I think it is rather dubious for > most writers to have WRI rewrite their code. But I recall that one poster > said he liked it because it reminded or introduced him to routines that he > was unaware of. Which suggests that a really useful feature would be > somewhat different. Why not have a "See Also" context menu entry for Input > cells that brought up a list of relevant routines and links to their > Function pages. This kind of targeted and selected shortcut into Help would > be quite useful. > > One built-in feature of Mathematica that seems inadequate to me is Grid for > constructing tables. I wonder how many people use Mathematica to write > custom tables, say with blocks with different background colors, and special > dividers and fonts and things like that. Tables are an important method of > conveying technical information and I wonder if the difficult Grid > construction dominated by Option programming mitigates against using > Mathematica as a communication medium. > > It would also be interesting to know how much use the new "add-on" features > such as units and tensor get. It would be nice to hear positive or negative > comment. > > Although I'm a heavy user of Mathematica, I may not be typical and my > suggestions might be off the mark or just plain incorrect. Nevertheless I > think public discussion of where Mathematica should go can only be helpful. > > > David Park > email@example.com > http://home.comcast.net/~djmpark/index.html > > > > > > From: Murray Eisenberg [mailto:firstname.lastname@example.org] > > As a possible, simple-minded explanation of what WRI is up to: surely > they're faced at any given time with a given customer base. To gain new > customers, they need to add new areas of applicability, whether through > adding them directly to Mathematica or by creating new Mathematica-based > products. > > > >