vicious is currently certified at Master level.

Name: Jiri (George) Lebl
Member since: N/A
Last Login: 2009-08-27 18:51:39

FOAF RDF Share This

Homepage: http://www.jirka.org/

Notes:

Math geek, formerly software geek. This exhibits itself by putting latex code into C programs by mistake, rather than vice versa as used to happen previously.

Credentials: Mathematics: I have successfully used the Baire Category Theorem in actual research. See my UIUC page for more.
Coder: I have created more easter eggs in gnome software than anyone else at the time. For example, Wanda the fish, which appears in more than one place if you know where to look and what to press, gdm computing square root of 2 or pi by monte carlo method, asking for coins on login, killer gegls from outer space, and more... At various times I was actually paid for this by Eazel and RedHat.

Below it says I'm a developer in a buttload of projects, but I'm not really anymore on anything but genius, since I don't have much hacking time these days.

Projects

Articles Posted by vicious

Recent blog entries by vicious

Syndication: RSS 2.0

Return to linear search

So … apparently searching an unordered list without any structure whatsoever is supposed to be better than having structure. At least that’s the new GNOME shell design that removes categories, removes any ordering and places icons in pages. The arguments are that it’s hard to categorize things and people use spatial memory to find where things are.

The spatial memory was here before with nautilus. It didn’t work out so great. No people don’t have spatial memory. For example for me, I use a small number of applications often, I put their launchers somewhere easy to reach. The rest of the applications I use rarely if never. No I do not remember where they are, I do not even remember what they are named. E.g. I don’t remember what the ftp client list, but I am not a total moron and I correctly guess to look for it in the “Internet” menu which is managable. Given I’ve used ftp probably once in a year, I do not remember where it is. Another example is when Maia (6 year old) needs a game to play. I never play games, but I have a few installed for these occasions. Do I want to look through an unordered list of 50-100 icons? Hell no. I want to click on “Games” and pick one. 95% or so of applications i have installed I use rarely. I will not “remember” where they are. I don’t want to spend hours trying to sort or organize the list of icons. Isn’t that what the computer can do for me? Vast majority of people (non-geeks) never change their default config, they use it as it came. So they will not organize it unless the computer organizes it for them. I have an android tablet, and this paged interface with icons you have to somehow organize yourself is totally annoying. One of the reasons why I find the tablet unusable (I don’t think I’ve turned it on for a few months now). That interface might work well when you have 10 apps, but it fails miserably when you have 100.

If I could remember that games are on page 4 (after presumably I’ve made a lot of unneeded effort to put them there) I can remember they are in the “Games” category. Actually there I don’t have to memorize it. Why don’t we just number all the buttons in an application since the user could remember what button number 4 that’s right next to button number 3 on window number 5 does. I mean, the user can use spatial memory right?

Now as for “that’s why there is search” … yeah but that only works when you know what you are searching for. I usually know what I am searching for once I found it. It’s this idea that google is the best interface for everything. Google is useful for the web because there are waaaaay too many pages to categorize. That’s not a problem for applications. Search is a compromise. It is a way to find things when there are too many to organize.

The argument “some apps don’t fit into one category neatly” also fails. The whole idea of the vfolder menus was that you could have arbitrary queries for submenus. You can have an app appear in every category where it makes sense. Now just because people making up the menus didn’t get it just right doesn’t make it a bad idea. Also now this leads to a lot of apps without any categories. The problem I think is with the original terminology. When I was designing this system I used “Keywords” instead of “Categories”. But KDE already had Keywords, so we used Categories, but you should think of them as Keywords on which to query where the icon appears. It describes the application, it doesn’t hardcode where it appears. Unfortunately, there seems to be a lack of understanding of this concept which always led to miscategorization. For example someone changed the original design to say some things were some sort of “core categories” or whatnot and that only one should appear on an icon and that there will be a menu with that name. That defeats the purpose. It’s like beating out the front glass of your car and then complaining about the wind.

Finally, what if I lend my computer to someone to do something quickly. No I am a normal person, so I don’t create a new account. And even if I do create a new account, the default sorting of apps is unlikely to be helpful. If someone just wants to quickly do something that doesn’t involve the icons on the dash, they’re out of luck if I have lots of apps installed. Plus at work I will have a different UI, on my laptop I have a different UI, and any other computer I use will have a different UI. I can’t customize everyone of them just to use them.

As it is, if I had a friend use my computer with gnome-shell they were lost. If it’s made even less usable … thank god for XFCE, though I worry that these moves towards iphonization of the UI will lead to even worse categorization. There are already many .desktop’s with badly filled out Categories field, so there will be less incentive to do it correctly.


Syndicated 2012-05-12 17:02:31 from The Spectre of Math

Determinants

I just feel like ranting about determinant notation. I always get in this mood when preparing a lecture on determinants and I look through various books for ideas on better presentation and the somewhat standard notation makes my skin crawl. Many people think it is a good idea to use

\left\lvert \begin{matrix} a & b \\ c & d \end{matrix} \right\rvert

instead of the sane, and hardly any more verbose

\det \left[ \begin{matrix} a & b \\ c & d \end{matrix} \right]     or     \det \left( \left[ \begin{matrix} a & b \\ c & d \end{matrix} \right] \right).

Now what’s the problem with the first one.

1) Unless you look carefully you might mistake the vertical lines for brackets and simply see a matrix, not its determinant.

2) vertical lines look like something positive while the determinant is negative.

3) What about 1 by 1 matrces. |a| is a determinant of [a] or is it the absolute value of a.

4) What if you want the absolute value of the determinant (something commonly done). Then if you’d write

\left\lvert\left\lvert \begin{matrix} a & b \\ c & d \end{matrix} \right\rvert\right\rvert

that looks more like the operator norm of the matrix rather than absolute value of its determinant. So in this case, even those calculus or linear algebra books that use the vertical lines will write:

\left\lvert \det \left( \left[ \begin{matrix} a & b \\ c & d \end{matrix} \right] \right) \right\rvert

So now the student might be confused because they don’t expect to see “det” used for determinant (consistency in notation is out the window).

So … if you are teaching linear algebra or writing a book on linear algebra, do the right thing: Don’t use vertical lines.


Syndicated 2012-05-09 20:51:55 from The Spectre of Math

GNOME UI Fail

So, another GNOME UI fail. Marketa has a new computer: Using compositing leads to crashes so using fallback gnome (am thinking i should switch her to xfce as well). But this is really not a problem of the fallback.

Anyway, the UI fail I am talking about is “adding a printer”. Something which she figured out how to do previously. Not with the new UI for the printing. The thing is, the window is almost empty and it is not at all clear what to press to add a printer. So she hasn’t figured it out and I had to help out. I figured out three things

1) The “unlock” thing is totally unintuitive. She did not think of pressing it. She doesn’t want to unlock anything, she wants to add a printer. With it, some parts of the UI are greyed out, but it’s not clear what should happen.

2) There is just a “+” in a lower corner that you have to press. She did not figure out that’s what you have to press to add a printer. A button with “Add printer” would have been a million times better.

3) Not even I figured out how to set default options for the printer such as duplex, resolution, etc… Pressing “Options” is something about forbidden users or whatnot, which is a totally useless option on a laptop.

If a PhD who has used computers for years can’t figure out how to do something like this, there is a problem with the UI.

This is a symptom all over the new GNOME system settings. It’s very hard to set something up if it didn’t set itself up automatically. There’s also a lot of guesswork involved now. The UI may be slightly prettier, but it is a step backwards usage-wise.

Here’s a solution:

1) Get rid of the lock thing, go back to the model that if you do something that requires authentication, ask for authentication. Why should there be extra UI that only confuses the user.

2) Change the “+” and “-” buttons to have the actual text. “Add printer” “Remove printer”.

3) “Add printer” should be very prominent in the UI. I bet 90% of the time when a normal user enters that dialog, they want to add a printer.

4) Put options where they can be accessed. Surely the options are accessible somewhere, but I didn’t find it.

Maybe I should file a bug that will get ignored …


Syndicated 2012-04-29 15:21:08 from The Spectre of Math

CS costs too much

Apparently computer science is not too interesting and costs too much.  $1.7 mil at University of Florida apparently.  So obviously we cut it, so that the athletic department (costing $99 mil) can get an extra $2 mil a year.  It’s obvious where our priorities are as a society.  Even if nothing got cut, 1.7 vs 99 is pretty bad.


Syndicated 2012-04-23 13:35:31 from The Spectre of Math

XFCE 1, GNOME Shell 0

After a year of using GNOME-shell, I finally got fed up with it. GNOME shell is unfortunately really annoying to use. There are so many decisions it tries to do, that it does some of them wrong. New window placement, the whole status thing in the corner getting triggered when I don’t want it to, the overview getting triggered all the time by mistake, as well as for example custom launcher setup. When I run my script for editting latex it never shows evince and I have to focus it by alt-tab “by hand.” The whole Alt-Tab behaviour is totally nuts. I also really REALLY hate the fact that dialogs are now “attached” to their parents. I often need to look at the original window because I just forgot what I was going to type in, such as “how many pages did the document have again and what pag I am on now” when printing, this happens really really often for me, so gnome shell drives me up the wall. There are just so many little things like that that overall make it a total pain. Some are solved through extensions or change in behaviour, but I use several computers, so learning different behaviour just for my laptop is annoying.

Consistency be damned is the new motto now. From those new and cool interfaces, they are all quite different, Unity, Cinnamon, GNOME shell, (I haven’t tried KDE, I guess I won’t be able to go there out of GNOME loyalty, which was the only reason why I kept using GNOME shell for so long). Apparently rounded corners are more important than working correctly.

So at first I was happy with GNOME shell. Mostly because it seems to be aimed (despite what anyone says) at people who use the command line. People who mouse around will find GNOME shell annoying. For example my wife will not be searching for apps using the keyboard to launch them. Also the fact that it’s impossible to customize GNOME nowdays to a specific purpose easily (using dconf-editor which has totally broken UI, is really not an answer, I wasted lots of time trying to get some things to work). Either ues GNOME shell for what it’s specifically designed for, or use something else. So flexibility is also out the window.

GNOME shell seems to also think that your mousing is very precise, which it never was for me. I commonly press the wrong button, or the mouse will go somewhere it shouldn’t and the interface punishes you for it. See above about entering the overview by mistake (whenever I wanted to hit a menu or the back button or some such).

I tried LXDE, but it’s buggy as hell (at least in fedora). The window list seems to jump around, launchers don’t always work, the battery status doesn’t work, and workspace switcher is totally broken. OK, so no go there. I tried Cinnamon for a few days, but it’s bad in many of the ways that GNOME shell is. Unity is even worse.

I had some trouble with XFCE in the past (on ubuntu that was upgraded a few times, so it might not have been fair to xfce). Anyway, I installed it on fedora, and quickly set it up, and … it works. It’s not perfect, but I don’t need it to be perfect. I want it to just work, and so far it does. It gets out of my way, unlike GNOME shell which kept trying to get in my way. Plus it’s fast.

So kudos to XFCE. I think I’ll stick with it.


Syndicated 2012-04-15 18:50:49 from The Spectre of Math

314 older entries...

 

vicious certified others as follows:

  • vicious certified raph as Master
  • vicious certified timj as Master
  • vicious certified andersca as Journeyer
  • vicious certified clahey as Journeyer
  • vicious certified federico as Master
  • vicious certified jacob as Master
  • vicious certified notzed as Journeyer
  • vicious certified yosh as Master
  • vicious certified miguel as Master
  • vicious certified terral as Journeyer
  • vicious certified tigert as Journeyer
  • vicious certified timg as Journeyer
  • vicious certified lolo as Journeyer
  • vicious certified hilaire as Journeyer
  • vicious certified stric as Journeyer
  • vicious certified aaronl as Apprentice
  • vicious certified mjs as Master
  • vicious certified pavlov as Journeyer
  • vicious certified jrb as Master
  • vicious certified jwz as Master
  • vicious certified sopwith as Master
  • vicious certified wichert as Master
  • vicious certified ettore as Master
  • vicious certified Darin as Master
  • vicious certified eskil as Master
  • vicious certified esr as Journeyer
  • vicious certified alan as Master
  • vicious certified uzi as Journeyer
  • vicious certified mathieu as Journeyer
  • vicious certified stephane as Apprentice
  • vicious certified Guillaume as Journeyer
  • vicious certified kelly as Journeyer
  • vicious certified advogato as Master
  • vicious certified lilo as Journeyer
  • vicious certified jlbec as Journeyer
  • vicious certified BrucePerens as Master
  • vicious certified octobrx as Journeyer
  • vicious certified hp as Master
  • vicious certified ramiro as Master
  • vicious certified jsh as Master
  • vicious certified rebecka as Master
  • vicious certified yakk as Journeyer
  • vicious certified flawed as Apprentice
  • vicious certified pepper as Journeyer
  • vicious certified dcm as Master
  • vicious certified Telsa as Journeyer
  • vicious certified Carbamide as Apprentice
  • vicious certified bartd as Apprentice
  • vicious certified martin as Master
  • vicious certified taj as Journeyer
  • vicious certified riel as Master
  • vicious certified gman as Journeyer
  • vicious certified gramps as Master
  • vicious certified Satan as Master

Others have certified vicious as follows:

  • timj certified vicious as Journeyer
  • andersca certified vicious as Master
  • campd certified vicious as Journeyer
  • clahey certified vicious as Journeyer
  • raph certified vicious as Journeyer
  • yosh certified vicious as Journeyer
  • frb certified vicious as Journeyer
  • sjburges certified vicious as Journeyer
  • Slow certified vicious as Master
  • shawn certified vicious as Journeyer
  • ole certified vicious as Master
  • jamesh certified vicious as Master
  • terral certified vicious as Journeyer
  • notzed certified vicious as Journeyer
  • xach certified vicious as Journeyer
  • lolo certified vicious as Journeyer
  • hilaire certified vicious as Master
  • Acapnotic certified vicious as Journeyer
  • kwayne certified vicious as Journeyer
  • jayc certified vicious as Journeyer
  • Iain certified vicious as Journeyer
  • mjs certified vicious as Master
  • harold certified vicious as Journeyer
  • bombadil certified vicious as Journeyer
  • mathieu certified vicious as Journeyer
  • booch certified vicious as Journeyer
  • listen certified vicious as Journeyer
  • aaronl certified vicious as Journeyer
  • duncan certified vicious as Journeyer
  • matias certified vicious as Master
  • jimmac certified vicious as Master
  • jlbec certified vicious as Journeyer
  • broonie certified vicious as Journeyer
  • bagfors certified vicious as Master
  • diskzero certified vicious as Journeyer
  • harvey certified vicious as Master
  • eskil certified vicious as Master
  • dsueiro certified vicious as Master
  • nils certified vicious as Master
  • Satan certified vicious as Apprentice
  • djcb certified vicious as Journeyer
  • Guillaume certified vicious as Master
  • alan certified vicious as Master
  • nelsonrn certified vicious as Master
  • NetHunter certified vicious as Master
  • jsheets certified vicious as Master
  • jae certified vicious as Journeyer
  • synap certified vicious as Master
  • timg certified vicious as Journeyer
  • rtmfd certified vicious as Master
  • whatever certified vicious as Master
  • ettore certified vicious as Master
  • pepper certified vicious as Master
  • nixnut certified vicious as Master
  • tetron certified vicious as Journeyer
  • kimusan certified vicious as Master
  • kanikus certified vicious as Master
  • mfleming certified vicious as Master
  • flawed certified vicious as Master
  • jsh certified vicious as Master
  • glenn certified vicious as Master
  • jbowman certified vicious as Master
  • inri certified vicious as Journeyer
  • ErikLevy certified vicious as Master
  • timur certified vicious as Master
  • menthos certified vicious as Master
  • lerdsuwa certified vicious as Master
  • hadess certified vicious as Master
  • gman certified vicious as Master
  • rossigee certified vicious as Master
  • viper certified vicious as Journeyer
  • bneely certified vicious as Master
  • taj certified vicious as Master
  • MikeGTN certified vicious as Master
  • jfleck certified vicious as Master
  • cinamod certified vicious as Master
  • gregf certified vicious as Master
  • chrisime certified vicious as Master
  • gleblanc certified vicious as Master
  • Wilddev certified vicious as Master
  • mikeszcz certified vicious as Journeyer
  • rebecka certified vicious as Master
  • Liedra certified vicious as Master
  • monk certified vicious as Master
  • auspex certified vicious as Journeyer
  • jono certified vicious as Master
  • skeezix certified vicious as Master
  • ricardo certified vicious as Master
  • fxn certified vicious as Master
  • sulaiman certified vicious as Master
  • sdodji certified vicious as Master
  • cwinters certified vicious as Master
  • jao certified vicious as Master
  • typezero certified vicious as Master
  • Hallski certified vicious as Master
  • robster certified vicious as Master
  • braden certified vicious as Master
  • riggwelter certified vicious as Master
  • tcurtis certified vicious as Master
  • bratsche certified vicious as Master
  • Rockwalrus certified vicious as Master
  • Uraeus certified vicious as Master
  • mitr certified vicious as Master
  • lucasr certified vicious as Master
  • murajov certified vicious as Master

[ Certification disabled because you're not logged in. ]

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

X
Share this page