Archive for July, 2007

Plugin idea: modifications to LatexRender

Thursday, July 19th, 2007

I’ve started working on a modification of the LatexRender WP plugin. My motivation is to increase the ease of certain tasks that I’ve found myself doing often, and add a little more functionality to the current plugin. Here’re a list of the changes I’m planning. Suggestions are welcome.

  • Support logically separate classes of LaTeX content: inline, display, and arbitrary TeX/LaTeX. In particular, center displayed content automatically– this should eliminate the need to manually insert div tags to get centered content and the \DisplayStyle command to set the correct display style. The user should be able to use whatever and however many tag names per class he or she feels appropriate.
  • Provide a control panel for the user to set plugin options. For the pure math classes, this means font size, color, and face, what packages to include, and auxiliary definitions (e.g. vector notation or common symbols you use repeatedly). For the arbitrary tex content, you should be able to specify complete pre- and postamble sections. Also, there should be an HTML entity replacement table (I keep needing to add new ones directly to latex.php).
  • Let the user change the error conditions such as the size of inputted formulas and the resulting image size, and vary them among the classes (e.g. you may want to allow larger images when formed from arbitrary tex than from inline math)
  • Provide a mechanism for per post header modifications and a way to reuse these modifications between posts. This would be useful if, for example, you were writing a series of posts on algebraic geometry so needed special notation, but didn’t feel it would be used often enough to warrant adding to the site-wide header.
  • Autoconfiguration– the plugin should check that all the necessary tools (latex, ghostscript, imagemagick, etc.) are available and the file permissions are as needed, and offer helpful instructions if needed to resolve these issues.

a little haiku

Tuesday, July 17th, 2007

I did some serious work today: learned about characteristic curves/hypersurfaces (as opposed to just reading a bewilderingly unmotivated definition) and how they motivate the classification system (at least for quasi-linear PDEs– an extremely large and important class of PDEs, but I’m not sure about whether fully nonlinear PDEs can be meaningfully classified as elliptic, etc.). Once again I have to plug Benedetto’s book, as it is the source of my newfound clarity. To be fair, its transition from that subject to the Cauchy-Kowalewski theorem is hanging me up, but that’s for tomorrow.

As a reward, I attempted a little poetry:

The earth slumbering
living memories of ice
brilliant cut sunsets

Bookcrossing

Monday, July 16th, 2007

It’s been official since at least 2004 : bookcrossing– the practice of leaving a book in a public place for others to discover and read — is a word. If you want to get in on the action check out BookCrossing.com. It allows you to tag your books before releasing them into the wild, allowing future readers to offer feedback on the site. Of course, you could as easily put your email address and/or website on the book instead, but BookCrossing.com also facilitates more complicated variations of the process. For instance, you could join a book ring, where the book is passed from member to member on the booklist, and eventually returned to you.

This idea really appeals to me. It’s one way for people like me — who buy books compulsively and read them only once — to make space on their shelves, with the pleasing side effect of making someone else’s life — at total stranger — more pleasurable. I’m going to give it a try!

What is Dell doing?

Sunday, July 15th, 2007

As I sometimes do, I was torturing myself by looking at the various OEM linux boxes available (this time because I discovered delicious, candy-like Beryl and realized my system’s not computer enough to run it). The first link that came up was to Dell– you might recall the big bruhaha back when the decision was being made of which distro to support– which is selling Ubuntu boxes. But did you know it’s also selling FreeDOS boxes? Someone at Dell must be awfully nostalgic about the old days of TSRs and autoexec.bat.

Now, the last time I had heard of FreeDOS was back when Windows 95 was a big deal, so I figured maybe it’d become something more than just a DOS clone. But visiting the FreeDOS website disabused me of this notion:

FreeDOS aims to be a complete, free, 100% MS-DOS compatible operating system (mostly achieved except Windows compatibility - Windows standard-mode works on FreeDOS, but 386-mode / WfW 3.11 does not.) See FreeDOS Bugs for details. A short list of things possible with FreeDOS today:

    * Easy multiboot with Win95-2003 and NT/XP/ME
    * FAT32 file system and large disk support (LBA)
    * LFN support (with several tools, and FreeCOM (COMMAND.COM).)
    * LBACACHE - disk cache (harddisks in CHS and LBA mode, diskette)
    * Memory Managers: HIMEM, EMM386, UMBPCI
    * SHSUCDX (MSCDEX replacement) and CD-ROM driver (XCDROM)
    * CUTEMOUSE - Mouse driver with scroll wheel support
    * FDAPM - APM info/control/suspend/poweroff, ACPI throttle, HLT energy saving...
    * XDMA - UDMA driver for DOS: up to 4 harddisks
    * MPXPLAY - media player for mp3, ogg, wmv... with built-in AC97 and SB16 drivers
    * 7ZIP, INFO-ZIP zip & unzip... - modern archivers are available for DOS
    * EDIT / SETEDIT - multi window text editors
    * HTMLHELP - help viewer, can read help directly from a zip file
    * PG - powerful text viewer (similar to V. D. Buerg's LIST)
    * many text mode programs ported from Linux thanks to DJGPP
    * GRAPHICS - greyscale hardcopy on ESC/P, HP PCL and PostScript printers
    * etc.

So … you can run text editors, play some graphics, and print some grayscale documents. Not exactly a hard-hitting OS is it? I’m stumped as to why Dell is selling such powerful systems with DOS as the operating system. Where’s the demand?

Some thoughts on shareware

Saturday, July 14th, 2007

While taking a controlled random walk across the net, I ran across simtel.net, which given the waxing of open source software and accompanying eclipse of the other noncommercial *wares (share-, free-, gift-), is along with other software distribution sites like tucows.com arguably an anachronism.

Back when broadband was just a twinkle in the eye of its progenitors, shareware reigned supreme. Everything was shareware: from essentials like winzip to specialized applications like the now commercial Paint Shop Pro– which competed with Photoshop more successfully back when it was shareware. Nowadays, open source has unseated shareware as the king; shareware still exists, especially within the bastion of the Windows culture, but even Windows developers are moving away from it. Even Winzip, the undisputed king of shareware apps, has open source alternatives like 7-Zip. And GIMP, an open source system, is more of a challenge to the eminence of Photoshop than Paint Shop Pro ever was.

There are at least three reasons for this shift. The first I can attest to: the overwhelming popularization of the open source paradigm has made the decision on licensing their software seem a binary one to potential developers. Either strictly commercial or strictly open source; the middle ground of shareware has been obscured in the publicized ’struggles’ between open source and commercial models. The cause celebre in this struggle was of course Linux vs. Windows. The second is the rise of entirely open source OSes and user and development environments, like Linux, the GCC tool chains, and the GTK toolsets. The fact that these high quality tools (they more than measure up to Windows technically, and don’t come with the $300+ price tag of Visual Studio, and on top of that are a lot easier to use) were made freely available frees developers from worrying about financing their toolsets, and allows them to approach development as pure fun, an artistic endeavor that doesn’t need support itself fiscally. Beyond that it provides a strong psychological incentive to developers to in turn adopt the open source philosophy.

The final reason is the one that most affects consumers: the open source paradigm is much more suited to the development of quality monolithic software packages that span the test of time. Shareware is mostly restricted to the realm of small utilities and products of small software teams, usually individuals– there’s no way to gauge how long users will wear the ware before they decide to buy, if ever, so naturally this model is applied to software that doesn’t represent too much of an investment of time and resources. If your software was compelling enough to succeed with a purely commercial model, you’d likely start there. On the other hand, community sites like Sourceforge and Savannah have made it easy to gather groups of developers willing to invest some of their time in developing and supporting quality open source software. When individual developers loose interest, there’s an easily accessible pool of potential replacements, so development and support continue unabated.

Given these arguments, it’s clear why shareware isn’t out for the count yet, and why it is predominantly used as a licensing model in Windows software. If I had to pay for Visual Studio (or take the effort to crib it from somewhere :) ), I’d want to pass on the price too. It also suggests that as GTK (maybe even the WX toolkit) and other open source development tools cross the Windows-*nux membrane– more generally, as cross-platform development matures — shareware is going to recede even further into the past. But there’ll always be WinZip!

General basis representation problem

Friday, July 13th, 2007

Looks like everything is back up to speed. Here’s a problem to celebrate:

Let b be a real number such that |b| > 1 and D be a finite collection of real numbers. Show that either there is a number such that x cannot be written as  \sum_{j=-\infty}^M a_j b^j where M is a positive integer and \{a_j\} \subset D, or there is a number which has multiple representations of this form.

Back up!

Friday, July 13th, 2007

Wow. That was not fun– I had to rediscover how to do several sysadmin type things, and the whole while I was afraid I’d cause some irrevocable error. There still seems to be a problem with accessing external websites, which was present right from the pristine file-system, so I’m stumped on that one. On the other hand, I got a new plan with increased memory, and since I’m a long time customer (>2 years?) my host generously gifted me with an additional 64Mb, so I’m good on that front. Maybe I have enough to mess around with Ruby on Rails. I also got an additional IP address!

All’s not done yet: for the blog I still have to reinstall plugins, themes, and external files, and probably muck about with .htaccess files to make permalinks work properly. For everywhere else on the site, I can just copy the directory structure directly.

Radio silence

Thursday, July 12th, 2007

Some time soon, the site’s going wayyy down for a while – hopefully it’ll be back up by Monday, but in the worst case scenario, I plan to have it up by the following Monday.

Apparently my host has not blocked port 80, and one of the tech people tried various approaches which didn’t work:

I have taken a look over you VPS. First thing I noticed is that you are low on free memory:

tangentspace:~# free
             total       used       free     shared    buffers     cached
Mem:         98492      84264      14228          0       8552      47212
-/+ buffers/cache:      28500      69992
Swap:        65528      11452      54076

And this is right away after a reboot. There were processes killed by oom (out-of-memory) killer (sometime in the past).

Your issue is really strange, though. I have installed chkrootkit (which also upgraded your libc6 core libraries) to check if your VPS was not hijacked but nothing solid was found. I still presume that it was somehow hacked (by the way: please consider upgrading your system:
‘apt-get dist-upgrade’ as there is already a new stable branch) because of the strange issue on lynx, wget and (maybe) any other webbrowser installed on your VPS.

I have checked also iptables with:

# iptables -nL

and

# iptables -t nat -nL

but nothing shows up.

I have also installed ‘links’ (another web browser) and that one seems to work correctly, please try it out.

Please try a dist-upgrade as this will basically replace your old files with new ones, and maybe you get rid of this enoying issue.

If you have anymore questions, please get back to us!

Unfortunately, whatever method apt-get uses to retrieve the list of packages from the servers has been affected by this ‘bug’, so I can’t run an upgrade. So, to deal with both the memory problem and web access problems, I’m going to switch VPS plans to one with the next highest amount of memory, and wipe the filesystem. I’ve backed up all the relevant data, so I can painlessly restore the site’s directory structure and database tables. However, I forgot all the mods that needed to be made to apache’s configuration, so I might have to mess around with that for a while. That’s going to be meesssyyyy — I know my domain serving is set up nonstandard, but I don’t recall exactly how — involving trial and error on an epic scale (you know, days of waiting for DNS records to update), most likely. Maybe this time around I’ll manage to do things right (TM).

Changes… going through changes, cont’d

Thursday, July 12th, 2007

In trying to figure out why Akismet suddenly broke, I isolated the part of the code that calls akismet.com, and ran that alone. The results showed that instead of contacting akismet.com, the server is trying to contact a search engine looking for akismet.com. So I logged in and tried using lynx and mozilla to pull up a couple of sites, and the same thing happens. I figure my host must have suddenly blocked port 80, so I contacted them and asked what’s up. Hopefully that is the situation, and I can get them to whitelist akismet.com and be back to business as usual. Otherwise I haven’t a clue on how to proceed, other than to pay them to do some sysadmin detective work.

Either way, I’m tired of working with Spam Karma — I have only a fuzzy idea of how it works, and the fact that it’s entirely on a system of rules makes me feel Akismet, which gathers information on what is spam and what is not from many sources and uses this to make its decisions, has to be more competent.