gwalla: (test failure)
Facebook and Mozilla apparently don't get along. I can't post status updates from my home computer. If I click on the "What's on your mind?" box, it goes blank, changes size a little bit, and doesn't accept any input. If I type anything, the browser thinks I'm trying to do a find-in-page, because it doesn't recognize that box as an object that takes focus.

Why in the everloving fuck do so many sites insist on rolling their own text input widgets? They're inevitably slower than normal ones (Last.FM really took the cake here for a while, with a text widget that would make a network call for every letter typed just so it could display a little "376/500 characters" thing) and usually glitchy. The vanilla text boxes work fine! Use them!

The threads in the support forums indicate that this problem has been around for the last couple of months, and are full of people saying that they've gotten no response from tech support.
gwalla: (lon chaney)
The Hansen Writing Ball. I want one!
gwalla: (headdesk)
Well, I managaed to royally hose my OS last night. I was trying to upgrade from Fedora 6 to Fedora 8, but when I tried to boot it after the upgrade finished, it said that it can't find any of my RAID arrays, and went into kernel panic.


Fortunately, I at least had the good sense to back up my /home directory beforehand. So most of my stuff still exists. And, actually, I think I may be able to access my arrays when I boot from the rescue disc, so once I get a new external HD (my current one is full), I can probably slurp down my /usr directory and then just do a fresh install.

But still. Fuck.


Jun. 29th, 2007 08:20 pm
gwalla: (Default)
	UP VAR!!1

It exists!
gwalla: (question is a geek)
So, I've built my new PC, and I'll be installing Linux* on it. But before I do so, I need to decide how I'm going to partition the drives.

I have three 250GB SATA-2 drives in here, which I'll be using in a software RAID array. My current plan is to partition them like this:
  • /boot will be a RAID-1 array, so it can still boot even if a drive goes down (RAID-1 is the only RAID that the bootloader understands, because it looks identical to a non-RAID partition)
  • "main", a RAID-5 array, will be an LVM volume group, divided up into a few logical volumes (mostly to make backing up easier, but also to allow for different mount options) and holding most of my data:
    • / (root)
    • /home [nosuid]
    • /usr [nodev]
    • /var [noexec, nosuid, nodev]
  • "volatile", a RAID-0 array, will also be a volume group, specifically for files with short lifetimes:
    • /tmp [noexec, nosuid, nodev, noatime, nodiratime]
    • /var/tmp [same as above]
    • /var/spool [noexec, nosuid, nodev] - since this won't be a server, /var/spool/cups will probably be the bulk of this directory
    • Mozilla cache (mountpoint to be set later) [noexec, nosuid, nodev, noatime?]
  • swap (18GB total, 6GB each) - I only have 4GB of RAM (4x1GB DIMMs), so this is more than twice what I'd need (going be the "swap = 2xRAM" guideline), but I may upgrade to 2GB DIMMs later on (that'd be 16GB, but that doesn't divide evenly into 3 drives)
The logical volume groups may contain some space not assigned to specific volumes, to make it easier for me to adjust and possibly add new volumes later if necessary.

The sticking points are these:
  • How big should /boot be? I've seen suggestions of 10MB, 25MB, and even 100MB. I don't think I'll be doing any kernel hacking, so I don't think I'll need space for a bunch of spare kernels. What size would be safe yet not excessive?
  • How much space will the temp directories take up, in general? I know /tmp should be larger than 4.7GB to allow room for DVD burning, but I'm not sure how much other applications will typically need.
  • Should /usr be mounted read-only, and just remounted when installing new software? It may be more secure, but could also be more hassle.
  • One suggestion I've seen is to make /opt a symlink to /usr/local (or vice versa), because they have the same basic purpose, but some apps use one and some use the other. Putting them together shouldn't result in any collisions, and may make it easier to back up. If I did that I may make them a separate volume on main (which I'd probably do anyway for /usr/local if I make /usr readonly, so I could keep it read/write).
Thoughts? Suggestions?

*Fedora 6, to be precise
gwalla: (bad hair day)

Tried to replace the default case fan for my new PC and only succeeded in ruining the screws. Fuck. Guess I'm gonna have an LED fan after all. Hopefully it won't be too noisy.

I had the idea to pull my existing HD out of my current PC and stick that in, so I could continue to boot Windows off of it with my old data intact. Is this possible? Will Windows shit itself if it finds itself on a system with a different mobo & processor? I'd like to find out BEFORE I try it myself.

Whatever happens, I'm going to back up my data first. BTW, anybody have any suggestions on that front? I was looking at FireWire external drives and they were crazy expensive. USB drives aren'tall that much cheaper, either. Seems like a big waste for something I'd probably only use twice (once to copy all of my data, once to copy that data onto my new machine). I don't have a DVD-R drive, and I have waaaaay too much data (a nearly full 80GB drive; my documents & settings folder contains over 56GB) to just burn a bunch of CDs.
gwalla: (question is a geek)
Starting to put together my new PC, I found that a bunch of the wires to the front panel are wound around a circular magnet. Anybody know what that's about? Just for storage? I'm a bit leery of having a magnet hanging near my hard drives...
gwalla: (trojan on your computer)
Okay, so I'm going to build myself a PC again. Three hard drives (going to run software RAID-5 on Linux). I'm not planning to run any high-powered games, but I do occasionally fire up the GIMP for some image editing, and may fool around with audio (sound editing, composing, sequencing). The main purpose, as with my current computer, will be web browsing (and a little P2P, don't tell anyone!). I'd like it to be fast and to have plenty of memory, but it doesn't have to be bleeding edge or anything. Multiple processors could be nifty but are hardly essential. I probably won't bother with a separate video card and will just use whatever onboard video I get.

So, my question is, can anyone recommend any motherboards they think are good?
gwalla: (question is a geek)
Recently stumbled on a fun blog via [ profile] jokermage: Good Math, Bad Math.

His posts on manual calculation are pretty interesting. That's stuff like finger math, abaci, and slide rules. The abacus is a surprisingly powerful instrument—did you know that you can calculate square roots using only an abacus? His posts about the slide rule show how clever the principle behind it is (who knew logarithms actually had a practical use?). BTW, from the comments I also found a cool little post by someone else about the Kane Dead Reckoning Computer, basically a circular slide rule specialized for use by pilots (it can be used to calculate things like fuel consumption, airspeed corrections, drift correction, unit conversions, wind/plane velocity problems, etc...not bad for what's basically just a couple of wheels!)

His posts on abaci, and one on number bases, have prompted me to give more thought to how my concultures work with math. I'm leaning towards giving one of my concultures a tridecimal (base-30) number system, and possibly playing with mixed-base systems.

He's a skeptic. The bad math part of his blog is devoted to debunking nonsense, with an emphasis on skewering the erroneous mathematical arguments used by shovelers of bullshit such as pseudo-physicists, numerologists, HIV deniers, and ([ profile] animal_co should enjoy this) creationists and IDiots. His post "Messing With Big Numbers: Using Probability Badly", which explains the various ways that true believers mangle statistics to "support" their arguments, should be required reading for anyone who has to deal with these people.

He's also a computer scientist, with an (unhealthy) interest in pathological languages. One recent post describes ALPACA, a language for describing (IOW programming) cellular automata. ALPACA itself isn't pathological (it's actually quite straightforward and readable), and the post itself contains a very clear explanation of CAs. But one of the examples he gives is an imlementation of a Brainfuck variant as a cellular automaton written in ALPACA. Oy!
gwalla: (master plan)
It's gotten to the point where I can't find a damn thing I'm looking for on my hard drive. Especially in my images folder. There's just too much stuff, and I, a total packrat by nature, am unwilling to delete much of it. So I've been looking around for tools to help me categorize files so I can find what I'm looking for.

I tried out Google's Picasa, but it's a mess. Google has some sort of philosophical aversion to directory hierarchies, so all of the subfolders of the My Pictures folder, and all of their subfolders, etc., appear at the same level. This can be a pain if you, say, have two folders with the same name differentiated only by which folder contains them. Also, while you can label images with categories, categories are basically treated just like folders (except your file can be in more than one). You can't do intersections of labels: e.g. bringing up a list of every file labelled both "anime" and "cats". It also isn't accessible through the filepicker, which is probably asking too much of a third-party app, but which severely limits its usefulness to me because when I'm searching for a graphic it's usually to upload to a site like iichan or 4chan.

Also, why limit categorization to images? It would be useful for pretty much everything.

I wish there was a program or extension that would allow categorization of all files, as a sort of alternative interface to directory hierarchies. I envision it as having the following features:
  • Files can be given multiple labels
  • Labels act like "directories": the files marked with a label can be found as if they were all the contents of a single directory
  • Set operations such as intersection ("and"), union ("or"), and exclusion ("and not") can be performed on labels; te results are treated like any other label that can be opened
  • Labels can be organized into hierarchies. A file grouped under a label is also implicitly grouped under that label's parent label
  • Labels can be key:-value pairs, e.g. "author: Philip K. Dick". Keys and values can have their own hierarchies, e.g. "band/artist", "original band", and "remixer" could all be grouped under "performers", so opening the label "band/artist: Nirvana" would find all songs performed by Nirvana, "original band: Nirvana" would find all songs originally by Nirvana (including covers performed by other bands), and "performers: Nirvana" would find all songs performed by or originally performed by Nirvana. Since "band/artist" is a sublabel of "performers", labelling an MP3 "band/artist: Nirvana" would mean that opening "performers: Nirvana" would still find it, without it having to be explicitly also labelled "performers: Nirvana"
  • Labels would be available through the filepicker (GNOME integration?), both for labelling while saving, and for finding files. The file open dialog would allow for set operations
  • Labels can apply accross media: if I insert a CDROM containing labelled files, they should be accessible through their labels just as if they were on the hard drive
  • Files on removable media are stored on the hard drive along with a CDROM name or index number, so backed up files can still be found and the proper disc found
  • Access control lists for labels: nobody needs to know how my porn is organized except for me
I think this'd be something that most people wouldn't really think of but, like browser tabs, would find it makes things a whole lot easier and wonder how they ever got along without it once they started using it.
gwalla: (master plan)
While typing my life away at work, I've been thinking of the balanced-ternary computer. As is usual for me, I've been putting the cart before the horse: in this case, I've been thinking up a balanced-ternary character code.

First off, some terminology. A ternary digit (a unit with value -1, 0, or 1), the smallest unit of information in the computer, is called a trit (by analogy with bit, a portmanteau of binary digit). The chunks of data that the processor generally deals with are 9 trits in size, and because they are analogous to binary bytes are called trytes. A sub-tryte unit of data consisting of 3 trits, analogous to a binary nibble, is, of course, a tribble. ;)

My character code is one tryte per character, but doesn't use all 19683 (3^9) possible values for individual specific characters. Instead, only the two lower-order tribbles are used to specify characters (which still leaves 729, which is plenty for Western scripts). The remaining high-order tribble is used for control codes, which add additional semantics to characters. They have several functions, including some shared with ASCII control codes (which are full-fledged characters) such as end-of-line and end-of-file. Other control codes include record, field, page, and column separators, explicit word breaks and word break prohibitions, hyphenation hints, additional sorting instructions, and character combining.

Most separators (end of line, end of paragraph, end of record, end of field, end of page/form feed, end of column, and end of file) cause a break after the modified character. For example, if an "A" character is given the end-of-line control code, it is the last character in its line and the following character is the first character of the next line. The word break and hyphenation hint, however, allow line breaks before the modified character. Both of those allow lines to break in the middle of a word if a line is too long to display; the main difference is that the display mode must add a hyphen if it breaks a line at a hyphenation hint, but shouldn't at a word break. The word break prohibition code may be applied to characters that normally allow a soft line break before them (such as a space), to prevent that.

Sorting instructions include the nonsorting character, secondary sort, and invisible sorting character codes. A character with the nonsorting code applied is simply skipped during collation. The secondary sort code marks a character as being less important: a character with the secondary sort code applied is skipped if compared against one without the code applied during collation. The invisible sorting charater control code prevents the affected character from affecting display, but not collation.

Character combining is used to provide accented characters and ligatures. Unlike Unicode, where combining is a property of the following diacritic, or old printer-ASCII, where diacritics were (theoretically) formed by a letter BACKSPACE symbol sequence, the combining control code is applied to the base character (such as the O in Ö), which comes first. The instruction basically means "don't print this character yet, something is going to be added to it". The following character can have its own control code as well—e.g. the "non-sorting" code could be applied to the acute accent, so that "á" sorts equivalent to "a"—including the combining code itself, in theory allowing stacked diacritics as in Vietnamese. Besides diacritics, the combining code can be used with another letter (rather than a symbol) following, to create ligatures such as æ and œ (both with the following letter "e"), and the German ß (s+s). This allows these ligatures to sort as their unligated equivalents by default, and allows a hyphenation hint code to be applied to the second letter, so they can be hyphenated between elements of the ligature (particularly important in the case of ß, which in German should be hyphenated "s-s"). If the current typeface (or display mode) does not provide a ligature for a given combining pair, the combining code may be ignored (so a font without æ would show "ae").

As for the character codes proper, I haven't filled out the chart much. However, I've been playing with the idea of uppercase letters having the same code as their lowercase equivalents, but with the signs swapped: a case-insensitive sort would involve taking the absolute value. The problem with this is that not taking the absolute value means one case or the other would sort in the opposite direction!


Nov. 15th, 2005 11:39 am
gwalla: (lon chaney)

Chips ahoy

Nov. 4th, 2005 05:54 pm
gwalla: (halloween)
For some reason I feel the urge to build a balanced-ternary computer. Sadly, I do not have the circuit-design skills necessary. Still, it's fun to think about.

Despite the title of this entry, there would most likely be no chips involved. It's not like anybody manufactures integrated circuits for balanced ternary, so it'd have to use discrete transistors.
gwalla: (magma)
I just read up on the upcoming changes to Perl's regular expression syntax. It's really impressive: Larry Wall has obviously given a lot of thought to what's wrong with Perl 5's regex syntax and regexes in general. The results look pretty significantly different from any regex you've seen before. Not only will Perl6 regexes be capable of doing more stuff, in many clases they'll be cleaner-looking and more readable at the same time. In fact, they're so different, both from what other regular expressions look like and what "regular expression" really means, that we're apparently supposed to call them "rules" now (although Wall still refers to them as "regexes"—like his language, he's not known for consistency).

One major change is that whitespace is now ignored. A regex is no longer "a string literal except where it's not". Instead, to match a space you backslash-escape it or use a named character class <sp>. The results look much more like the sparse, relatively readable EBNF notation used to describe grammars in most Internet specifications than the ultra-compressed "modem noise" of Perl 5. Additionally, rules may be split over lines and internally indented, and end-of-line comments can be added with the # character—this used to be handled by the /x modifier, but it's now default.

The incomprehensible (?x...) notation of Perl 5 has been abandoned. Wisely noting that grouping is actually more common than capturing yet Perl 5's grouping-only notation is longer then the capturing one ( (?:...) vs. (...) ), Wall reassigned the square brackets from their previous use as character classes to grouping. Character classes (POSIX style) in turn have been taken over by the angle brackets <>, as have numeric quantifiers, which were previously handled by {n,m} notation. The curly braces have been repurposed for calling Perl code within a rule, which used to be handled by (?{code}). The lookahead and lookbehind assertions have also been rolled into the angle brackets, using the very readable <before ...> and <after ...> notation (which can be modified with ! to get negative versions...this is in fact possible with any angle-bracket term, including <!n,m> to match anything but a repeating sequence n to m repetitions long).

On the other hand, the minimal-matching notation  (??, *?, +?)—Perl 5's most elegant and useful regex innovation—remains intact.

Pre-parsing interpolation is dead: a string variable inserted in a regex is no longer considered regex code itself, but a string literal (previously, you needed to use the funky \Q$var\E notation to get this effect). The less common condition when you actually want a string variable interpreted as regex code is  now handled by the <$var> notation (so the more common condition is the easiest to type while the less common condition is longer, rather than vice versa). One result of this is that the backslash-digit notation for backreferences goes the way of the dinosaur: you just use the dollar sign the way you would with any other scalar. It is also now possible to capture into an explicit named variable rather than just the automatically numbered ones. And inserting an array variable results in a rule matching any one of the elements of the array.

There is no longer a distinction between single-line and multiline mode. The . character always matches any character including newlines, and ^ and $ now always mean the beginning and ending of the entire string (matching the beginning and ending of lines within a string is now handled by ^^ and $$). So now the actual meaning of a rule is no longer dependent on what switches you stick on the end of a m/.../ or s/.../.../ operator. Switches are, in fact, dead and gone, replaced by options within the regex, which is more flexible and predictable, and causes fewer problems for the Perl parser.

Rules are now explicitly Unicode-aware. Among the aforementioned in-rule options are ways to select what Unicode definition of "character"is meant by the rule: octet, codepoint (single Unicode character), or "grapheme" (base character followed by optional combining characters; precomposed characters are considered the same as their combining sequence equivalents here).

That's just the tip of the iceberg. There are also new ways to control backtracking, and you can even extend the syntax yourself by defining new rules.

Perl 5 really led the way in extending regexes, with other scripting languages adopting its innovations after the fact. It'll be interesting to see if the new syntax gets picked up, though, since it changes so many things.
gwalla: (halloween)
So today I decided to try out Firefox to see what people are crowing about. And, as a long-time Mozilla user, I still don't get it. It doesn't seem like an improvement over the Suite. In fact, in some respects it fells like a step backwards. The preferences seem much more rudimentary (but they've got colorful icons! gosh!). How do I tell Firefox what JavaScript is allowed to do, since the prefs panel for it is completely missing? All that's left is popup blocking, which is nice, but popups aren't the only thing I want to prevent. Not having quick access to mail is also kind of annoying. I keep hearing that "it loads so much faster than the Suite" but windows come up much slower than the Suite for me using QuickLaunch, which Firefox doesn't seem to have any equivalent to.

The main advantage seems to be that some extentions are now being made only for Firefox, or have abandoned Suite support. And Deepest Sender seems less buggy on Firefox (the link button actually works, for example). On the other hand, my preferred skin, Pinball, has not yet been ported to Firefox and the author seems disinclined to make that a priority.

I've only just started using it, and I'll continue to experiment with it to see if my opinion changes. But right now my opinion is that Firefox's popularity relative to the Suite has more to do with marketing and having a sexier name than actually being better.
gwalla: (magma)
I just installed FoxyTunes, a Mozilla extention that lets me control any media player (in my case, WinAmp) from Mozilla. It adds a bunch of control buttons and a scrolling title to the shortcut bar, both of which can be hidden. It's quite nice. Now I don't have to click on the WinAmp tab on the taskbar and wait for it to come up (this computer sucks monkey buttocks) to skip a track or pause the music.

I'd been passing it over, because it didn't sound all that useful, and because I kind of assumed that getting it to work with whatever player would be a hassle. Then [ profile] evildoive came out with a new version of Deepest Sender (my usual LJ client, and another Mozilla extention) that fixed some bugs and added some nice features—and also added automatic song recognition through FoxyTunes (DS had an autodetection feature before, but it involved jumping through some hoops and installing WinAmp plugins, and I didn't care all that much). So I thought, "what the hell?" and gave it a try. It seems pretty nice: being able to just click "detect music" is cool, having the WinAmp controls right on the browser window is way more convenient than I thought it would be, and I haven't stumbled over any bugs yet.

Actually, it's a lot cleaner than DS, even though DS has been under development for longer. Probably because DS is primarily the work of one guy who only fixes things when he feels like it, while FoxyTunes seems to have a reasonably dedicated crew and some momentum. The new version of DS, incidentally, doesn't seem to fix the bugs that actually bothered me (link mangling and the linkification button not working—the latter seems to be a conflict with another extention or something, but I don't know which). C'est la vie.
gwalla: (lon chaney)
Heavy metal umlaut: the movie

This is actually a pretty interesting examination of how Wikipedia articles grow and change.
gwalla: (shit)
Phew. Back online at last. I was starting to get the shakes.

Since my dad switched us over from cable to DSL, I've had to depend on's very, very rudimentary webmail client for my email, instead of having it forward to my super-secret ISP email. So I'd been bugging him about setting up a sub-account so I could use a real email client again. A couple of days ago he relented, and promptly re-inserted the DSL modem setup CDROM. Why he didn't just go to the ISP's site and set things up there, I don't know. Anyway, apparently the first thing the install does after it's confirmed that the modem is attached is set things so the system uses a temporary ID that is only usable for registering an account. So suddenly we had no net access. And of course, he couldn't remember the username & password he'd used to set things up in the first place. Fortunately, just today he stumbled across a piece of paper he'd written the username down on, and it worked.

In other Wallace family computing news, my mom got an Apple iBook for Xmas. My dad could've gotten off cheaper if he'd gotten a PC laptop, of course, but my mom uses Macs at her job, and has steadfastly refused to learn how to use my dad's PC. Personally, I think if she had a PC laptop she'd adapt pretty quickly, but I know she wouldn't want to hear that and she'd be disappointed with the gift, which is why my dad asked for my opinion pre-xmas I said the Apple was probably the best bet. Of course, the iBook runs OS X while the old iMacs at my mom's office are still all running OS9, so she's gonna have to adapt a bit anyway (the interface is actually more like my old Linux/WindowMaker box than "Classic" MacOS or Windows), but eh, whatever. She's happy with it, so it was the right choice.

Now that the DSL is working, I'm gonna have to set up the ol' router and hub again so mom can get online from home.
gwalla: (evil mickey)
Haa ha!</nelson>


gwalla: (Default)

December 2011

1112 131415 1617
181920212223 24


RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 22nd, 2017 02:41 am
Powered by Dreamwidth Studios