Home

Previous 20

Oct. 16th, 2009

mainface

Sidewiki

Google Sidewiki is about 40% of what we'd want from a proper annotation solution. It's also not a wiki. Still, 40% is something.

To use it, you unfortunately have to install the awfully large Google Toolbar. Fortunately, if you're on firefox, you can bring up customise mode, grab the useful bits out of that toolbar (sidewiki, maybe pagerank) and hide the rest.

You really don't want to have a dedicated search bar on your browser - Read more... )

Tags:

Aug. 13th, 2009

mainface

Technically Civilised

Today I moved my lamp, tea kettle, and cup to my new office - this means that my office is technically civilised (not fully because I don't have the electric base to the kettle nor any tea). On the way between old office and new,Read more... )

I took two videos with my camera, and tossed them on Youtube:

The chair in my new office does wonderful things to my back - I don't think I'll need a pillow anymore to be comfortable. It's a bit weird being able to look across the chasm and see either of my boss's offices, or look down and see the curiously obscene-looking blue chairs.
Tags: ,

Jul. 28th, 2009

mainface

Rich APIs

I get the feeling everyone has probably written this essay already, and it doesn't really say anything original. Still, I've had an itch to glue together the arguments together for awhile, so I present:

The Best Program is a Rich API

Feel free to snicker at how amazingly unoriginal it is.

mainface

Gulliver and the Linuxputans

I strongly dislike Gentoo Linux, and characterise it as a system mostly useful for people who either come to Linux with the wrong attitude or for people who really must be on the bleeding edge for some reason. Gentoo running on a server or an important workstation (e.g. someone who does not consider Gentoo to be a hobby of its own) is, I think, a mistake. However, I am very impressed at a derivative distribution of Gentoo called System Rescue CD, which does an amazing job at being a swiss army knife OSImage for a sysadmin. It's the best equivalent of a DOS floppy packed with all the debugging tools you might possibly want. This is where the gentoo style of thought happens to coincide with something useful, and some credit to Gentoo is due.

This is quite different than Fedora Live (which I have on a USBstick), which is more of a "bootable linux image that's like a desktop no matter what system it's actually running on" thing.

Different yet is stress Linux, which I have been using for burn-in of new systems for quite some time.

Tags:

Jun. 21st, 2009

mainface

Providing the Knobs

FC11 has some awesome stuff in its repositories that is not (but should be) installed by default.

"yum install padevchooser paprefs"

This gives you a widget called "Pulseaudio Device Chooser" which you can use to either publish your sound card on the local network or send your audio to other published devices on the local network. It's pretty easy to pipe all your audio to another machine - I don't yet see a GUI way to mirror your audio between local and remote. Bandwidth use seems to be pretty reasonable.

It's been possible to do this manually for quite a long time (with various sound servers), but maintaining different sets of configfiles based on where one physically is (for laptop users) is a shoddy solution. It takes some getting used to that your local volume control is not honoured - I am not sure whether it should be or not.

(this probably applies to those of you on other Linux distros too)

Tags:

Jun. 10th, 2009

mainface

FC11 upgrade

Laptop: upgraded from FC10 to FC11. Thoughts and notes most likely very boring to non-geeks:Read more... )

Tags:

Jun. 1st, 2009

mainface

Forgetting Your Limitations

In my Firefox, I now have:

  • Ubiquity
  • Greasemonkey
  • Jetpack
All three of them are programming interfaces to extend the web, and it is possible to write useful scripts in any of them to do the same thing. This is confusing, terrifying, and yet perhaps a bit awesome.

Read more... )

Nov. 6th, 2008

mainface

Pogromabble Keyborg

Fellow Unix people,

If you think being able to type things that are not present on your keyboard is awesome, you have three options, and should do all three:Read more... )

Tags:

Oct. 14th, 2008

mainface

Tablet

Drawing LCD-Tablet has arrived.Read more... )

Little tech rant:Read more... )

Anyone on campus who wants to come by in the next hour or so to see the tablet in action should visit Wean Hall 3502 (my office). After that I'm probably going to the 61c café.

Tags:

Aug. 7th, 2008

mainface

Collapsed Tiles

The X Window System (used on several modern unixes, including Linux) has something similar to the MS-Windows "Mousekeys" feature built in (part of something called AccessX). This lets you control the mouse cursor and generate clicks using the numeric keypad instead of the mouse.Read more... )

Tags:

Apr. 27th, 2008

mainface

Pure Words

Grr. I forgot to reinstall the rest of my development environment before I went out to do some programming. On the upside, it sounds like wonderful rain is on its way.

Two documents that are somehow like intellectual candy: Microsoft's Legacy-Free PC standards, and the Changelist for Perl 5.10.

OpenBSD 4.3's release song is harshly critical of Richard Stallman, Read more... )

Tags:

Apr. 26th, 2008

mainface

Fedora 9 pre

I just installed Fedora 9 preview on my laptop. Initial impressions:Read more... )

Tags:

Dec. 31st, 2007

mainface

SQL Menus

Dreamed Read more... )

Vidocq was a pretty decent film given the genre. When all the pieces come together near the end, earlier parts of the film are called a bit into question, but that's not that unusual. The film is also very pretty - most scenes look like they have hidden in them an excellent poster. The biggest surprise to me is the difficult-to-understand-but-incredibly-strong charm of the character who dies near the start of the film (a strange "main character", as the film's frequent flashbacks paint him life as a substitute for the present). Surprised that mplayer needs to have its support for subtitle files turned on in its configfile, and also that there was a historical investigator Vidocq.

Expect one of those "thoughts on the year" posts sometime today or tomorrow.. I suspect I'll see a lot of other folk doing their own...

Tags: ,

Dec. 2nd, 2007

mainface

The Hills Shall Come To Us

At the 61c, watching the rain pour down and fluidise the streets. It seems that rain always brings a change in weather, like another turning of the minute hand on the clock - the second hand may accumulate energy, but the minute hand is what spends that energy and realises the pending change. The hills between Cleveland and Columbus are like that - flat, but occasionally there were big slants downwards that would foretell lasting changes in the terrain - it would get flatter as another place another age of glaciers judged differently. Rain is much like that, but it represents the extroverted hills of modern times.

A flash of memory from a conversation on rings - Read more... ) It was one of those memories and lines of thought that totally distorts time though, when I came out of it, I didn't actually miss any conversation. Thinking-time and dream-time seem to have that in common - it's possible to spend hours staring off into space with only a few thoughts (recorded, at least) while enough to write a book can happen in an instant.

I never learned much Javascript - the occasion never came up to get deeply into it. Thinking about how websites work (and how some of them are increasingly like applications), I've been frustrated at issues with overuse of communication between the browser and the webserver. Read more... )

I am extremely enthused to see, courtesy slashdot, that freenode is banning tor connections due to some groups finally doing things that make people uncomfortable with lack of responsibility for one's connection. I think it's tragic that the EFF and other cultural institutions have embraced tor for quite some time - hopefully things will start to go the other way.

Tags:

Nov. 28th, 2007

mainface

The Wheeled Generation

One of the things that struck me as interesting while travelling for Thanksgiving is that I saw kids (from youth to teens) with shoes with built-in rollerblades in all three of the airports I visited. When I first started seeing it, I imagined it might just be a short-lived fad - given that it seems not to be, it's a neat development - one of the few pieces of technology that's nonobtrusive, enhances a basic function of our body (getting around), has a minimal interface, can be worn/available all day without requiring use or being awkward, and isn't too expensive. It effectively blends into the body and enhances it when called for. I can't think of many other pieces of technology like that (although it's neat to dream of other things that might fit the bill).

I recently had a conversation with someone who dreams about eventually entering the American political system and climbing to high position. Matter: What changes can we expect of the electorate (presuming no radical shifts in the state here that would eliminate democracy-as-a-system-as-we-know-it-here) over the next 20 years or so in the United States? (the futures of other nations are just as interesting in this field, but I only know enough about a few countries to say much..)Read more... )

Tags: ,

Aug. 2nd, 2007

mainface

Putting Cthulhu on Hold

I've been thinking a lot recently on the way software is developed, software architectures, and the like. Databases: out of all the features we see in modern relational databases, which are the most important? Some things, like transactions, atomicity, and centralised storage are fairly nontrivial, and I've occasionally seen people "abuse" databases by using a database solely to get features like that while having no need for the data to have any particular structure (imagine a single table schema that stores the equivalent of a dotfile - kind of similar to VMS-esque record-based io, maybe). As I understand, the web has been a big boon to database usage, as it's easy for applications to be built out of smaller bits of code (CGI scripts or servlets) that use the database as a central storage, with browser requests/webserver dispatch replacing the event loop in most modern GUI programming. Some webservers (e.g. Tomcat) close the circle by maintain ing non-database state of sorts in memory (or on disk) transparently between dispatches, using some mix of cookies, url mangling, and persistent connections to map sessions to that state. It would be cool to make a platform/framework which would transparently bridge the gap between those means of programming, whereby the same codebase could be used for applications running as traditional apps (that would keep things entirely within the program's core, running entirely locally like a normal app) and web-based applications running from a webserver with a database handling object storage. I don't see anything intrinsically difficult about this (serialise/deserialise methods for every object, limit widget use, etc) - if we wanted to make it even easier, we could have the local application just target a local database. It could become just another discipline/early design decision in programming, just like pervasive threads or distributed computation (what other similar code-shaping touch-everything design decisions are there in software development? Reentrancy? ..) It changes things a bit when we shift databases from being more about file-like IO (long-term stuff that should presumably never expire) to including also state-like storage (stuff more similar to temporary stuff that would be used in an invocation of software as we mainly know it today), although using the event loop/page serve as the dividing mark leaves us with some presumably truly local state. What kinds of syntax help might we like if we were to want to push a lot more program state into a database?

On a completely different level, it'd be nice if online games were designed with more consideration that people might like to watch existing/potential games to either keep up on friends or potentially join in. I don't know if rapidly polled (or pushed) feeds like Atom would be the right way to do this, but it would be neat to have a dock applet (in my case Windowmaker, although Mac people have a dock too) that would always show me who's on tetrinet/KOL/UrbanDead and let me jump on (as a spectator/player for tetrinet or in my browser for the others). If we're going to make the web an application platform, it ideally won't remain a second-class one forever. I suppose making GreaseMonkey scripts that'd live inside a custom Gecko-using dockapp would let me do this, but that'd be fragile and ugly - providing Atom (or some other XMLish) feeds designed for rapid polling/push would at least let GreaseMonkey-fans have something more stable/civilised to start customisations on.

Amused: Myspace (which I hardly use) has been passing lots of spam my way recently. As I clicked the "Mark as Spam" on some of its in-system email, I got a good chuckle out of how advertisement clickthroughs on the side of the page (that I hadn't yet told Firefox to block), intentionally served by Myspace to me, looked little different from what I was reporting. I am also amused to hear about FreeVMS - all jokes aside, I have a certain fondness for OpenVMS, and if FreeVMS ever gets big, it'd be pretty neat.

I recently found Mednafen, an emulator for almost everything I have roms for except the SNES (for which I have snes9x). Pokemon LeafGreen, here I come (amused: I actually have a decent number of gameboy carts, but I hate playing RPGs on them because their interface is too slow - I usually am holding down the "turbo" button within every emulator I have when playing these games because watching text scroll slower than I can read, especially when I already know what it's saying, is not my cup of tea). Apart from needing a good amount of configuration to be usable, Mednafen is a pretty good system emulator.

TMBG released an album called "The Else" within the last month or so, and I failed to hear about it. Unfortunately, the download version, unlike most of their other albums, is only sold through iTunes, which is very irritating. From what I can tell, the new album ... actually isn't that great, which is disappointing.

Tags:

Apr. 29th, 2007

mainface

Experiments with Beryl

I just spent about 45 minutes playing with Beryl, a 3d window manager/environment for X11. As 3d on my laptop is generally pretty dicey, I used my PC TV, which has a reasonably nice 3d card (GeForce 7600GS). Impressions: Even with plenty of additional effects turned on and playing videos with mplayer while playing around, my video card didn't sweat in the least. Beryl has a lot of (poorly documented) options that are really cool to see, from letting me use my mousewheel to set opacity for various windows to plenty of things that look like they were lifted from OSX. Unfortunately, the configuration utility is far too complex and poorly designed, and while experimenting with all the options, it's easy to forget where some things were set if one were to want to revert them because things are so big and disorganised. Some of the keyboard shortcuts were highly nonintuitive, and some didn't work (I don't think it understood any shortcuts that involved the super key). I was hoping to be able to rotate individual windows and take notes on them (as some option names suggested I'd be able to do), but haven't figured out how yet (this might just involve changing the activation keys). That said, it is very cool - I think Beryl is aiming to be the Emacs of 3d X11 environments - if/when I put in the time to figure it out and remap everything to my liking, I'm sure it'll be pretty cool, although the defaults are pretty poor.

I'm not entirely certain what the different parts of Beryl are doing - there are plenty of different named components that have separate control panels, some of them probably representing new concepts that traditional X doesn't have. Classical thinking on doing 3d with X, IIRC, involved putting each window into its own Xnest (or moral equivalent) and then use the data from that to let windows be individually rotated, opaquified, and similar. Some time back, I toyed with a system someone put together that did this - it was fairly slow, ate a lot of memory, and was one of those gross hacks that show that that old phrase about premature optimisation being the root of all evil has limits - if an idea is a gross enough hack, it may be nearly impossible to optimise. But... then I don't really know what's going on here - maybe the X server, with help from some extensions, is doing something like that behind the scenes. I'll probably read up on it sometime in the next few weeks.

I imagine the next generation of 3d window managers will be pretty interesting.

In case you missed the news, cherry crisps are the most tasty dessert humans have yet made.

Tags:

Mar. 14th, 2007

mainface

Eye Construction Kit

One of the things I think I could really get into if I were to have a systems-type job would be to work on the guts of X (or other things of that sort) - I like OS kernels a lot too, I can get really interested in reading about the latest clever optimisations that compiler people are working on, and thinking about virtualisation gives me warm fuzzies, but X has always been a love of mine. One of the things that's led to advances (of sorts) in X is people looking at the system as a whole and asking, "How can I work around what normally happens to make this specific case work faster/better" - using things like SHM support and direct(ish) hardware access partially to wholly avoid the normal X software path. This can be good for some specific purposes, but I cringe when I hear about GNOME people building dependencies on GL and similar libraries/APIs - this effectively changes the common case. I like having fast, pretty graphics when I'm playing some kinds of games on X and for screensavers, but for normal tasks, network transparency is far more important to me - I don't want my desktop to be as bouncy and interactive as OS X, especially if it uses OpenGL because it'll be all kinds of slow whenever I connect via VNC or use nonlocal X. I wish people were working on the opposite to all this GL stuff - it'd be awesome to pull X communication up to the toolkit level (when feasable) with fonts, widgets, and similar negotiated between client and server and XPM-style communication a last resort. This would entangle toolkits and X itself, but so long as this entanglement were an extension that were itself optional, I think it could be cleanly implemented without burning too many bridges. I get the feeling that I've written about this before though...

A few random bits for y'all:Read more... )

I've been having a grand time with this weather. Hurrah!

Tags:

Jan. 29th, 2007

Not a Deer

PostGrateFUL

I just spent about two hours tracing a bug in this old scheduling thing my research group uses to manage some local resources. Given that it's an entirely private internal resource, and there are endless bits of technical cruft that I've been working on, replacing it has been a low priority. Recently it's stopped allowing repeated reservations though, meaning scheduling all tuesdays at 4:30 for four weeks week requires people in my group to do that multiple times. The thing is written in PHP, and so like most PHP programs it's an ugly hack written by people who probably can't really program. It eventually traced to the software not being careful with its SQL and trying to insert an empty string into an integer field. At some point in the past, PostgreSQL silently converted that to an integer, and an upgrade fixed that behaviour, which unfortunately broke the scheduler (and revealed its utter lack of error checking). Just like some weird pointer bugs in C I've tracked down over the years, I have to repeat to myself that debugging builds character... even in PHP. At least now I can go back to programming interesting things in pleasant languages.. or working with brains.

I'm still hoping to hear back from some people who want to go see VNV Nation, Pirates of Penzance, and all that.

I have a growing hankering to eat at Abay again. Mmm... Ethiopean..

Tags:

Jan. 28th, 2007

mainface

Gentoo versus BSD

I find it interesting that someone else's BLOG post, a longtime BSDer playing with Gentoo for awhile, suggesting that Gentoo doesn't belong on servers has led to a bit of a collision between the Gentoo and FreeBSD communities. In the software world, it's rare that we find two crowds more different among people with a fair amount of technical knowledge. My understanding is that Gentoo folk are generally youth with a good amount of knowledge but very little temperment that age and judgement tends to bring. BSDers tend to be more of the old-school types who mix somewhat deeper technical knowledge with the type of judgement that only time usually teaches. I've only rarely come across heavy pushers of Gentoo over the age of 25, while I've only rarely come across BSD people under the age of 30 (those few generally spent time under a much more seasoned admin type). The bleeding-edge versus conservative approach to programming and systems gives an interesting contrast.

Personally, I'm not in either camp - I'm much more friendly to BSD than Gentoo, although I'm willing to give up a bit of the conservativism for better hardware support and some other OS features. Having been mostly with Redhat/Fedora since RH5, I've been pretty happy with how things have worked out on the servers and desktops I've had/managed/coached over the years. I'd be happy to admin a BSD box again though if the situation came up, and in some circumstances I would probably prefer OpenBSD to Fedora on a server (when there's only one processor, no weird hardware, and security is pretty important). I think I'd still be comfortable adminning Solaris or a few other commercial Unices if it came up too...

Tags:

Previous 20