01.22.08
Posted in Technology trends at 1:35 pm by ducky
I just read a preprint of a paper that talks about a feature that gives the user unprompted feedback on the user’s work. This reminded me of Clippy, which people absolutely hated.
Why did people hate Clippy so much? I think it was a status issue. Your computer — which presumably is low-status compared to you — was having the temerity to tell you what to do. We humans have a hard enough time receiving criticism from above us. I believe that criticism from below can infuriate people, especially if there is no way to punish the subordinate for the insubordination.
Larissa Tieden’s research says that people presume that high-status people do good things, and low-status people do bad things.
Thus, I think it would be good to design software that is not just user-friendly, but obsequious. Instead of “Error 39 — bad input”, it should say, “I’m sorry, I’m not smart enough to understand the input that you gave me.” Instead of “You would do better if you do X”, it should say, “Sorry to bother you, but I noticed that you are doing Y. You might find you have better luck if you do X.”
(And if you think people don’t treat computers like they do people, go read The Media Equation. Byron Reeves and Clifford Nass’ research is really fascinating.)
Permalink
11.19.07
Posted in Technology trends at 11:42 pm by ducky
As I mentioned before, a long time ago, I posted my vision that university education would be split up into many pieces, that content delivery, accreditation, tutoring, etc would all be available separately.
Today I read an article about how MIT is celebrating getting at least part of the content of 1,800 courses online. Cooool.
Permalink
10.15.07
Posted in Random thoughts, Technology trends at 4:56 pm by ducky
UBC CS Prof. Rachel Pottinger‘s door has an article asking Why Women Become Veterinarians but Not Engineers. Fifty years ago, both were highly male-dominated fields. Today, women get about 3/4 of Vet Med degrees, while only about 1/5 of CS degrees. Maines doesn’t have an answer, but she does a good job of making the question interesting.
Right after I read Maines’ article, I read an article titled Is There Anything Good About Men by Roy F. Baumeister. It probably would have been better titled, “What are Men Good For?” The answer in the picture he paints is “taking risks.” He acknowledges that at the top end of the society, men dominate. To a very good first approximation, men are in charge. Presidents, CEOs, generals, Nobel Prize winners are usually men.
However, he points out that men are overrepresented at the both ends of society. He says that prisoners, the homeless. and people killed on the job (including soldiers) are also usually men. Interestingly, both the Nobel prize winners and the mentally retarded are more often male than female.
He goes on to develop his thesis more, but the basic idea is that men and women might have the same average ability at something, but that the distribution is usually much “fatter” for men than women. There are more men taking risks than women. Sometimes they succeed wildly; sometimes they fail wildly. Women hold down the middle ground, neither failing nor succeeding spectacularly.
Now go back to CS vs. Vet Med. I contend that CS has a much higher risk associated with it than Vet Med. If you don’t keep right on top of emerging computing technologies, it is really easy to get obsoleted in CS. The whole industry has changed several times in the past twenty years. Meanwhile, the architecture of the dog has not changed much in the past 200 years.
Even if you stay current with computing technologies, you aren’t guaranteed safe harbour during the high-tech world’s booms and busts. There is always the threat that someone else will release a product that will put you out of business, in part because the cost of distributing the product is so low. It is hard to imagine, however, how Microsoft could release a new product that would eliminate the need for someone to put antiseptic on Fido’s cut. The “distribution cost” of applying a bandage is very high.
The high-tech world is also more sensitive to fluctuations in consumer tastes and consumer confidence. While someone might delay buying an iPhone because they were nervous about their job getting cut, very few people euthanize their cat because money is tight.
It might be, then, that one way to make CS more attractive to women would be to make it less risky. Unfortunately, even though I have a pretty good imagination, I can’t think of how to make the high-tech world less risky.
Permalink
08.28.07
Posted in Hacking, programmer productivity, Technology trends at 10:36 am by ducky
As I work, I find myself asking a question over and over “how do I get information from point A to point B?”. For example, “How do I get the position of the active editor from EditorSashContainer into TabBehaviourAutoPin?”
It seems like there is probably room for a tool that figures out a path from point A to point B.
This might also make the code more maintainable — instead of me going and making new methods in the chain from A to B through six intermediate methods, maybe the tool can find a path that goes through only two classes.
I can imagine the tool giving me the shortest path through public methods, and (if it exists) the shortest path that requires private variables or methods. Maybe it would find that there is a private variable that, if I made a public getter, I could use.
UPDATE: my supervisor (“advisor” in the US) pointed me at a paper describing a system (Prospector) to do just that. Alas, I haven’t been able to find any code for it. The code is at here, and there is also a web interface (which knows about J2SE 1.4, Eclipse 3.0, and Eclipse GEF source). The plugin also unfortunately seems to be too downrev for me. 🙁
There is also a tool called Strathcona which does something sort of similar — it finds examples of existing code that goes from A to B. I don’t think that would have helped me with the specific things I was looking for, because I don’t think there was any existing code anywhere that did all of what I wanted to do. It might have helped me get from A to C and then from C to A, however.
Permalink
07.22.07
Posted in Hacking, robobait, Technology trends at 10:04 pm by ducky
I’ve been working with an open-source visualization library called prefuse for a while. It’s used quite a bit, but mostly for graph visualization. I’m trying to use it for chart visualization. (Why? Because I also want to do graph visualization, and I figured — perhaps wrongly — that it would be better to learn the tao of one library well than two poorly.)
There are almost no examples out in the wild of how to do charts with prefuse. Here, then, is a link to ScatterPlotWithAxisLabels.java. Humans, you probably don’t care about this, this is just to let the robots find it.
It is a variation on the program ScatterPlot, but with axes labelled. You wouldn’t think that would be a big deal, but there are a lot of little things you have to get right, and with few examples, it is hard to know what you have specify and what is the default behaviour.
Permalink
Posted in Hacking, Technology trends at 10:43 am by ducky
(Ooops, I wrote this a while ago and forgot to post it.)
In my recent post, Linux on the desktop, I mentioned that oocalc and/or gnumeric had let me down six months ago when I was working with an admittedly challenging spreadsheet. (It contained LOTS of obscure fonts from around the world.)
Within three days, I got a posting from one of the maintainers of gnumeric, asking me for more information. This is why Windows is doomed. I can’t imagine getting email from someone at Microsoft asking me for more information about a bug based on a posting in what is a pretty obscure blog.
Unfortunately, my problems were such that I couldn’t write a good bug report on it. (If I could have, I would have done so at the time. I consider writing bug reports one of the obligations of using open-source software.) At the time, there was a long, long delay between whatever-I-did-to-corrupt-the-file and my discovery of the corruption. My bug report would have said something like, “I worked for three hours, saving regularly, and at the end of the three hours, I discovered that my file was corrupt.” Alas, that kind of bug report is probably worse than no bug report, as the best that a triager could do is say WORKSFORME.
I did go back through my notes, and it looks like oocalc was the original offender, and that I switched to gnumeric at least briefly. I didn’t see anything in my notes that gnumeric let me down. However, I don’t see any .gnumeric files in the directory, and I would think that if gnumeric was working smoothly for me, I would have left at least some .gnumeric files around.
Note, though, that I had these troubles in November 2006, which is about 56 dog-months ago. I would be surprised if they had made no progress since I had trouble, and (to be fair!), the spreadsheet that I worked on was a very challenging one.
Permalink
07.16.07
Posted in Hacking, robobait, Technology trends at 5:28 pm by ducky
How do you enable core dumps?
ulimit -c unlimited
(This was harder to find than it should have been, so I’m helping the world to find it.)
Keywords: core, coredump, enable, limit, unlimit, allow.
Permalink
07.08.07
Posted in Technology trends at 2:43 pm by ducky
There’s a cartoon today where a teenager is trying to arrange a band practice, and having to make phone call after phone call because he has to keep revising the plans because each new person has some conflict with the plan of the moment.
I read that and thought to myself, “someday that will seem quaint”. Someday, you’ll pop open your cell phone, tell it who you want to meet with, and it will take care of the arranging. Each person will get contacted with a list of possible times, and have the option of a hard veto or a soft veto. The communications infrastructure will take care of doing the negotiating.
In thirty years, college students won’t really understand how you could possibly do it any other way, just like they now don’t fully understand what a pain it was to use a typewriter to fill out a form, or what a mimeograph was.
College students today still remember vaguely that once upon a time, there weren’t TV remote controls, answering machines, VCRs, or cell phones. In ten years, college students won’t have any concept of what it was like to have to negotiate down to three square meters exactly where you were going to meet, with contingency plans for what to do if the rendezvous failed.
Permalink
07.07.07
Posted in Technology trends at 9:55 am by ducky
There’s an article that has been talking about 2008 being the year of the Linux desktop. I think that’s too optimistic.
Don’t get me wrong — I love Linux. I have been using it as my primary OS for about five years now, and have been fiddling with it for eight or ten.
It has gotten way, WAY easier to use, particularly in installing applications. Red Hat 7 was a nightmare of dependency hell. The Gentoo on my work machine in about 2003 was much much easier, although you had to have a certain level of confidence to go around compiling things, and it took a long time to compile stuff. Knoppix on my home machine at around the same time certainly was easier to install (especially all the drivers and stuff), but it was hard to find documentation and help for a minority distro. Ubuntu, now Ubuntu ROCKS. It totally kicks.
Linux appss are clearly getting better all the time. Gimp has a learning curve and Photoshop is better, but Gimp is good enough that 99% of the time I don’t bother to reboot into Windows to use Photoshop. I actually like Inkscape a bit better than Illustrator for what I do.
BUT!
But there are still warts. I can get away with Ubuntu because almost all the business applications work I do is server-based or text-based. OpenOffice and Gnumeric have come a looong way, to the point where I can use them most of the time, but they are just not bulletproof yet. Neither of them worked perfectly with a challenging spreadsheet I made that included lots and lots of text from different languages in UTF8; one or both of them actually corrupted data silently. I’m working on a .doc file in OpenOffice, and it seems to lose formatting sometimes when I save and reopen.
I do think Windows is doomed. I think they just can’t sustain their operating system in the face of so much competition. However, I don’t think it will be next year, or the year after that. I think it will be more like 2012 before we really see Windows slide.
It’s also quite possible that MacOS will be the big winner. With MacOS being based on Unix, it should be far easier to port code from Linux to MacOS than from Linux to Windows. (If it isn’t already, it’s because of tools infrastructure. Comments from people who know more than I are welcome.)
Another interesting possibility is porting from MacOS to Linux. That should be relatively straightforward, and could be really lucrative for Apple — assuming that they can get people to actually pay for the software. It is my understanding that Microsoft makes the bulk of its money on Office.. and Apple has been steadily creating a lot of applications that I hear really good things about. They could really profit from growth in the Linux market.
Update: I got email from one of the maintainers of gnumeric three days after posting my experience (on a relatively obscure blog!), asking for more info about the problems I was having. This is why Windows is doomed.
Permalink
07.06.07
Posted in Technology trends, University life at 4:17 pm by ducky
Hey! That’s Mik!
I bumped into a screencast of Mik Kersten talking about Mylyn, which is a really cool tool that he developed under my supervisor’s direction, and which he and my supervisor are now productizing. 🙂 Go Mik!
Permalink
« Previous Page — « Previous entries « Previous Page · Next Page » Next entries » — Next Page »