Skip to main content

Posts

Single parenting?

Ignoring Desiderata for an instant, I would be delighted if over a decade of dishonesty & manipulation were swept aside, in order for single parenting to become possible here. For context, an intimate friend of mine was unable to even read the last batch of dishonesty. I really wish that in some significant way, even an iota of this was really my fault — because then I could change what I was doing, to allow better things to happen for the children involved.

Automated Me

What can’t you get an app for doing? Very little, it seems. If I want to read stories for children, Audacity will record my voice, the DVD-Slideshow app collection will layer slides with the text over that to make a video sequence of it, then DeVeDe will convert that into a standard DVD format & burn it to disc. Viola! A clone-able Me who can read stories to thousands of children at once!

Technical is buried in non-technical

This performance happened when I was in Year 11 of high school, yet another Brooks from midway through last century would agree with it. Frederick mentioned this in his book, “The Mythical Man-Month,”published 3 years before the performance: “Adding manpower to a late software project makes it later” while he regards this as a drastic oversimplification, it is accurate in that some aspects of the coding situation have little or no dependence on your ability to actually invent code, more to do with the social context (teaming up 10 women won’t get you a baby 4 weeks after conception). One recent aspect of this is that I have enough pieces to assemble maybe 10 or 12 fully functional computers, yet for social reasons, very few people are at all interested in such a computer. Another is that becoming aware of having been subject to over a decade of social sabotage was the key to understanding the hidden limits of my abilities to ramp up my IT business. Afte...

It turns out that CRT monitors are still useful

I stayed at a B&B two weekends ago which has an ADSL Internet connection, an office PC & a WiFi-connected personal laptop (which I redid the config on so it actually connected, happily the WiFi router's password set was still admin/admin ). Next visit to the area, they’ll also have an Internet cafe workstation since they have room for a 19" CRT (old-style glass television) screen, since I have 13 of those sitting behind my house, plus a few “old” PCs including a couple of dual-core 3GHz to which I can fit a pair of 512MB DDR2 DIMMs & a random (80GB) IDE hard drive. A selected PC is about to grow a copy of Maverick Meerkat Kubuntu & simple instructions for manually re-creating the default user (as in, Ctrl-Alt-F1 , log in, “ sudo su sh scriptname ” to remove the home directory tree & unpack a new template from a .tar.bz2 file). Said template will include a Flash plugin, a Video DownloadHelper plugin, a reasonable set of bookmarks, an “...

Converting .raw ripped CD tracks to WAV format

Why do this? Because you have a heap of CD audio tracks ripped to Raw format by k3b, however the software intended to use those depends on some kind of file structure. So... place this in ~/bin/raw2wav.sh & mark it executable ( chmod a+x ): #!/bin/sh if [ -f "$1" ]; then echo WAVifying [$1] sox -V -r 44100 -b 16 -c 2 -s "$1" "$(dirname "$1")/$(basename "$1" .raw).wav" fi Apply this using a command like: find . -type f -name '*.raw' -exec raw2wav.sh {} \;

(Virgin) mobile internet on Kubuntu

Users who wish to run wvdial productively need to add themselves to the group dialout (to see the /dev/ttyUSB# device nodes) & the group dip to run (authenticate, as it were) the ppp dæmon. Getting WiFi (or many other network things) to work may (after installing wicd ) requiring adding an entry to /etc/apparmor.d/sbin.dhclient3 to permit dhclient to access /var/lib/wicd/* in lrw mode.

Nothing replaces determination!

Now I have a good handle on how the previous programmer typically mucked things up, it’s becoming much simpler to predict what they omitted or their weird ways of implementing otherwise ordinary procedures in a semi-sane fashion. The time to convert a report from a format intended to be rendered on a specific brand of dot-matrix impact printer to a generic prints-everywhere email-able PDF file (via an HTML-ish file) has decreased from several hours per report to maybe half an hour... & shrinking... Call it “meta-study,” in that instead of attempting to divine how something was done each time, one figures out roughly why certain things were done in certain ways, then the discrepancies often make a bizarre kind of sense, & can be rapidly, systematically replaced with much more concretely sane ways of doing things.

Micro$oft software does love farting around in others' territory

Situation: a Vista user has clicked on an attachment in a "friend's" email, now the machine won't do anything networkily sensible, so is evidently virussed to the eyeballs & beyond. There was no obvious hope of getting something working enough to copy their documents & image off, so... Response: boot a Kubuntu LiveCD, investigate system without hearing the opinion of any viruses. Install Kubuntu over the "Recovery" partition ( /dev/sda2 ). Plug in another hard drive (machine has only 2x SATA power cables, so need to unplug the DVD drive to do this). Boot Kubuntu, Copy docs/images onto temp hard drive (tar.bz2 as the drive is kinda small). Boot into Kubuntu, DHCP picks up an address from the ADSL router, can now browse & do banking. Good! Fetch Windows 7 Eternity disc, Install that, no worries but Kubuntu now invisible. Boot Kubuntu LiveCD, in recovery mode, re-run GRUB. Kubuntu is now visible. To avoid the risk of trashing the man MS-Windows part...

A few details make things so much clearer...

Business A wishes to have a computer to run its affairs. A chap (X) has a computer for sale, but it will do them no good without software. However his friend S (whose usual occupation is stockbroker) is willing to write the software as a part of the deal. X sells the computer to A, S then starts building the software for free. Evidently, he started at the glass-teletype level & worked up from there. When A found the base operating system for X’s machine (now A's machine) on my corporate website, they were glad when I rocked up & was “normal,” rather than a top-gun cross-dresser who looked really good in a set of red heels. A are coming to terms well with the concept of paying actual money to L (me) for work on their application, which is going well.

A silent upgrade helps

I switched to compiling a C app on a Maverick Meerkat Kubuntu box instead of my Mandriva 2010.0 laptop, which resulted in a slightly newer version of gcc — the compiler. This resulted in discovering (via warning messages) several small ways in which certain segments of the application I’m working on are outright broken — would result in a SegFault sometimes & dubious results most other times. Some of it was simply bad habits (forex, original programmer had hard-coded fixed values instead of terminating a list of arguments with a NULL ), other of it were argument mismatches (forex, supplying an int argument for a %ld printf parameter, or occasionally more obscure things). It does make me wonder what similar blunders I committed in the early days which were never discovered. (-:

Burying antiquity in technology

Starting to see good results from converting an app from driving a specific breed of dot-matrix impact printer via a specific SCO Unix device node to a more generalised system which will print A4 pages on almost any printer. How? Feed the "printer" output into a (text) file; Set the init sequence to be <HTML><BODY><PRE> & the flush sequence to be </PRE></BODY></HTML> Redefine the escape sequences for bold/unbold into "<B>" & "</B>" likewise for italics into "<I>" & "</I>" etc, notably page break (^L/\f) into <!-- PAGE BREAK -->; Cram the text file into htlmdoc & order it to produce PDFs; lpr nameofPDFfile (or write it where it can be viewed in a file share for emailng purposes) The next stage is to get into cool stuff like doubled or dotted/dashed underscores, coloured text (or backgrounds), & jamming lists into <TABLE> structures, which would ...

So... you've got a string of video clips...

...but want to show them to [a] friend[s] when/where there’s no computer available? This script will turn a directory full of video files into a DVD: #!/bin/sh FILES="$(for x in *.flv *.mp4 *.mpg *.avi; do echo $x; done | grep -v '^\*' | sort)" for f in ${FILES}; do n=$(echo $f | sed -e 's/\.[a-zA-Z0-9]*$//' -e 's/_+/ /g' -e 's/^/"/' -e 's/$/"/') NAMES="${NAMES} \"$n\"" done NAME=$(basename $(pwd) | sed -e 's/_/ /g') mkdir -p DVD NEWFILES="" for f in ${FILES}; do n="$(basename $(basename $(basename $(basename $f .flv) .mp4) .mpg) .avi).mpg" NEWFILES="${NEWFILES} DVD/$n" nice -15 ffmpeg -i $f -target ntsc-dvd -aspect 4:3 -y DVD/$n done makemenu -noask -overwrite -ntsc -dvd -align northwest -menu-title "${NAME}" -menu-title-fontsize 32 -font "Helvetica" -fontsize 24 -textcolor "rgb(255,255,255)" -fontdeco '-stroke rgb(0,0,0) -strokewidth ...

If you want a life-changing DVD...

...& live in Perth, Bunbury or Albany (WestAus) — or points in between — send an email to me at cyberknights com au & I'll see if I can arrange for one to lanf in your hand (or mailbox, or whatever). No, it’s not a technical DVD — at least, not in the sense of being connected with IT, computers or electronics. You push it into a DVD player & learn some stuff. Amongst other things, you can kiss cancer, diabetes & quite a number of “modern” afflictions goodbye.

Problem? What problem?

I was handed a DVD (on the topic of Jebel Al Laws ) which was to be copied, but the copying machine had refused because the disc was “encrypted.” Curious, I poked it into a DVD drive, cranked up k9copy (licensed under GPL2 , yes FOSS does rock!) & 20 minutes later am watching the copy on a standard DVD player. Was there a problem?

TP-Link ADSL router box includes GPL on paper

As I was re-organising items around my house, I extracted the manuals for my TP-Link ADSL modem from the box, plus a phone cable (which I added to my cables drawer), I discovered a paper copy of the GPL . One more small piece of evidence to provoke a re-think amongst those who refuse to accept that Free Software could possibly work. Happily — like some other significant items — the concept does not require their acceptance (or understanding) to exist & to operate.

Proprietary OSes don't come with strace

Many proprietary operating systems are designed for the lowest common denominator. Only. This makes doing anything constructive with them an uphill trip in both directions. Even if you spend money on a compiler which runs under those OSes, do they include strace ? How difficult is it to chroot before executing a process? What enhanced security facilities (like Mandatory Access Controls) can you apply to an individual process? Where is the setenforce command? Most users don't even know what these things are, let alone whether their OS has them, which for the majority of cases is just fine. They don't need to know, For people who do know what these things are, their absence can make life Hell (even if only in limited situations & for limited times, nevertheless Hell). In the case of F/OSS-style software, they're included because the people who use the software wrote the software. EVeryday users don't even need to know that these tools exist. Simple?

Were you a Lego kid? Or Meccano?

If you were, you’ve gotta like Unix (in this case, Linux) ’coz that’s what it’s all about. Case in point is an app I’m working on (supposedly enhancing, in practice damn near rewriting) written in C which stores data into flat files. No indexes. It just writes a gazillion struct whatever; records straight into the data file. The current problem is that as data tots up, it gets very slow since it processes each data file serially when reporting, & if there’s cross-references it serially scans the related (thankfully small) data file for each record, to fetch the required text. There’s a background problem in that multiple users running the same app (which must be done on the same computer) have no clear way of avoiding collisions, with the inevitable result that the second (or successive) user requiring access to a record must wait until the earlier user(s) have finished with it & if the first user crashes the unlock() never happens so...

Yet another reason for preferring Linux

Fire up machine unused for about a year, currently running Jaunty version of Kubuntu. Hmmm... do-release-upgrade & 25 minutes later we’re running Karmic. In MS-Windows-equivalent terms, we’ve just upgraded from XP to Vista in 25 minutes, seamlessly, without having to agree to any (or any more) mind-bendingly-control-freak licensing terms or click  [ OK ]  on a thousand tedious dialogue boxes (if I had written that S/W, there would exist a  [ Maybe ]  button there between that &  [ Cancel ]  plus an  [ It’sAllOK ]  button, AKA  [ JustGetOnWithItNow ]  ). Next month, this machine will become Lucid.

FOSS from wall to wall

Here we have an application, written for SCO Unix so writing printer output to a specific device interface in a format intended for a particular brand of dot-matrix impact printer. Impact printers are so yesterday, & SCO Unix is so last decade, what can we do...? Get it to write into a temp file instead, with obvious <FLAGS> where a change in font size or intensity or whatever is required, then spool the result. That's a step forward, now it will work on nearly any printer (thank you, CUPS ), kind of. Second level, feed it to htmldoc on the way to the spooler. Now stuff like <B>bolding</B> works! However... these 132-column-wide reports not look so hot on an A4 page... No worries, print on A4 Landscape, then pdf90 that (from the pdfjam toolset) to spin it out & make it good.

Congratulations to Miss L for scoring...

...a spotless townhouse in South Perth for $50,000.00 off from a reluctant seller simply by waiting for one day after the neighbouring townhouse sold, then placing a proposal for $5,000 higher for a limited time as per advice from my brother-in-law. Total elapsed time: one week from 4sale sign up. Yes, the real estate market may be about to fall into a deep hole, but the place is securely hers now. This is far from the most awesome thing she’s had happen over the last handful of months. Go, team!