Linked by David Adams on Fri 18th Jun 2010 19:17 UTC
Linux Linux Magazine has a profile of Daniel Fore and the Elementary project. Elementary is a Linux distro that's committed to a clean and simple user experience, but it's more than a distro - it's actually a multi-pronged effort to make improvements to the user experience for a whole ecosystem of components, including icons, a GTK theme, Midori improvements, Nautilus, and even Firefox. The work that elementary is doing isn't limited to their own distro, and some of their work is available in current, and perhaps future, Ubuntu releases. The results are really striking, and I think it's probably the handsomest Linux UI I've ever seen.
Permalink for comment 430843
To read all comments associated with this story, please click here.
RE[6]: rip-off Mac OS X!
by cycoj on Sun 20th Jun 2010 21:40 UTC in reply to "RE[5]: rip-off Mac OS X!"
Member since:

"I don't quite understand that sentence, do you mean you use Matlab, because it is not quite as awful as
Maple and Mathematica and on par with Python?

No, I chose Matlab because its syntax is on par with Python in terms of awfulness in my opinion. Python is a good programming language for prototyping and low-performance software, and insane people can even use it for other use cases and get cursed by their users. Just like C#, ActionScript, and Java. But its syntax is just inadapted to scientific calculation. You can use it for that, but it is painful. Matlab has an incredibly crappy syntax which manages to be on par with that of Python in terms of inadaptation, even though it is theoretically suited for the job.

I have to disagree, Matlab syntax is pretty awful compared to Python. I actually switched to Python because Matlab syntax was annoying the crap out of me. 90% of errors are find the missing dot. Also I guess you never had to write a GUI for your Matlab code. Python is so far ahead of Matlab in that respect (Matlab GUI code makes my eyes bleed).

You're preaching a convinced people, though for me GUI programming and calculation should be left to separate languages. I HATE Matlab's syntax. Every time I have to use it, I try my best to remember the commands used to launch the GUI tools and never, ever, use its command line, except when being forced to do so.
Why do you separate calculation and GUI? That sounds awfully complicated to me, suddenly you have to learn 2 languages + the glue between them.

Seriously, should any sane people have to use tf([1],[1,1]) or some other trick like s = tf([1, 0]) in order to input 1/(1+s) ? I don't care if transfer functions are treated separately by the software, for me it is just a rational function and should be treated as such.

It seems to me you want symbolic math manipulation not really scientific computing. So something like Mathematica or Sage on the Python side would be more suited to your needs.

"Why are HTML pages unprofessional? That's what pretty much every software manufacturer uses for the help pages AFAIK.

No, they aren't that widespread, except maybe for the content.
Actually, that was my point the content is very often HTML, they just write a specific help browser for the html pages

People often use Windows' CHM or some in-house solution, be it only for one good reason : searching. In a good help system like that of Maple, Mathematica, and Matlab, you search for keywords like "polynomial", "linear algebra" or "inequation plot", and you get all the related functions, sorted by relevance order if the guys took some time to polish it. In HTML help, you get a web browser, a tool made for something else which doesn't provide indexed search facilities, and you have to use full-text search in the index, which requires you to know the exact name of the command or the category it's put in, and parse through loads of irrelevant answers.

Agreed a specific documentation search at would be great. I disagree however that a webbrowser is the wrong tool, if the HTML pages are well structured and written a browser is just as good a specific help system.

"Also I actually never use the HTML pages or the Matlab help system. I just type "help command"
in the prompt (I do the same in Matlab whenever I have to use it).

1/Is python able to provide in such a case an extensive help page describing command use, options, and examples with results, with links to related topics, in a non-cluttered way like that of Mathematica and Maple ? (the "click-to-expand" way)
I can't comment on Mathematica and Maple, but they do provide a rather extensive help, which describes all options etc. There's also the short help which provides you with a short usage string if you use ipython ?<command>

2/Again, this only fits one use case of the help system, namely checking syntax of an already known command. Command discovery is not poor with this help system.

Agreed but in my experience that's not really that much better in matlabs system either, e.g. the last I recall was searching for writing to a text file in an arbitrary format. If I hadn't known fprintf from C I don't think I'd ever found out using the Matlab help system.

"Another thing, if I compare the documentation of the Matlab language (not the commands) to the documentation of the Python language, the Python documentation is way better.

I was talking about the help system shape and use cases, the contents are another thing ;) (And that Python's core syntax is better documented is logical, since it is that of a general-purpose programming language, more complex than a specialized one, and generally not teached in courses contrary to Matlab which is alas common).
Well especially if it is taught in courses I'd expect the syntax would be well documented.

"I don't quite get what you mean, something like
def fct(x, *args) ??

Mathematica :
a = 3*x
Result : 3x. Plot(a, {x,0,4}) will work.
Python :
a = 3*x
Result : Undefined symbol "x". Plot will not work.
Things like that make a general-purpose language a pain to use for everything that's mathematics-related.

Well I can only repeat what I've said above, you really want a symbolic math manipulation, that cannot be provided by a programming language like python and matlab alone. I'd argue that this is another use case entirely, and although there are some packages for python and I think matlab as well. They will never perform as well as a language specifically build for that purpose. However if you want to to numeric simulations (like I do), that often does not fit into systems like Mathematica and I find using a proper language like Python is a lot more comfortable for me than using matlab.

Reply Parent Score: 2