beatworm.co.uk

There is a top level navigation menu at the foot of the page

Vox Populi

I was churlishly unimpressed by the iTunes “12 days” Christmas promotion this year. However whilst subsequently browsing the iTunes Store home page I did find one app that impressed me enough to blog about.

There’s a store section called “Apps Starter Kit” which lists a dozen or so applications that Apple are promoting as “must have” installs for new iOS users. I installed a handful of these to my iPhone 3GS, but the one that has most impressed me so far is the iOS edition of DragonDictate.

It’s a “split brain” app, by which I mean it uses “the cloud” to perform the text-to-speech conversion. So far I have been quite impressed with the accuracy of the process, in fact I have created this blog post by dictating while walking the dog, with just a little editing afterwards for tidy up and to add hyperlinks. I suppose it is a little like a poor man’s edition of Siri, minus the pretend A.I. and the search and reminders integration.

You can get text by dictating into a text box within the application and there is a quick menu of options that allow you to create an SMS or an e-mail or copy the text to the system clipboard easily for use in other applications. This collaboration isn’t too clunky and although dictating text into your phone is a little stilted it doesn’t seem to be significantly less effective than my relatively crappy typing on the iPhone on-screen keyboard.

The app was free, presumably it’s intended as a promotional device to introduce users to the Dragon family of software applications. Obviously there are some privacy concerns raised by having the voice processing performed on a remote server, but the terms and conditions include a privacy policy which guarantees to preserve your anonymity and keep your data private. The application did even prompted me to ask if I wanted all of my contact names uploaded to the remote service for greater the use of name recognition, and took pains to explain that this would only include name fields from my contacts database and no other personally identifying information or contact details.

I am not sure I would make a habit of using it for writing long articles or even blog posts like this but I think it could prove to be quite useful for such purposes as short e-mail replies or even sending SMS messages in situations where it’s inconvenient to type.

 

posted Sunday, January 29, 2012 at 22:02 by cms in computers, internet | 2 Comments »

NeXTumentary

Hello there, old friend #movingin

Of course, I bought and read the Jobsography, Kindle edition, naturally. While I’m not sure I identify with all the howling fanboys’ anguished reviews, given my role as super-NEXTSTEP-fanboy I was a bit disappointed, although not particularly surprised, at the relative lack of NeXT content. So I was overjoyed when this 1986 PBS documentary, featuring NeXT in it’s pre-launch startup guise, popped up in it’s wake. The linked blog post also contains the NeXT stevenote, from the eventual product launch.

posted Saturday, November 26, 2011 at 20:13 by cms in computers, history, video | No Comments »

Branding, revisited

Of course it’s not actually running NEXTSTEP. Of course, in a sense it is. Just like your phone.

 

The perfect laptop at last

 

Thanks to ebay. I like the fact that the sticker arrived with a little template indicating the correct 28° of jaunt. I ignored it of course, and just lined it up by eye.

posted Wednesday, November 16, 2011 at 10:50 by cms in computers, history | No Comments »

jwz hands-on user support: Another one gone. I’m only just starting to realise that all this time, I’ve been blessed to live in the time of the giants.

2011-10-25 by cms in computers, history, links

David Hepworth misses the point of Steve Jobs

Mr. David Hepworth, of the lovely Word Magazine (I subscribe !), a usually reliable, and always interesting cultural commentator just blogged a piece about the reactions to the untimely passing of ex-Apple CEO Steve Jobs. I think his assessment of Mr Jobs’ cultural impact is wrong. I was going to present my reaction in place on his blog, although it did seem to grow a little too long for the commentary section, and I subsequently found out that his blogger site seems to be set up disallow comments from people who aren’t logged in to a Google account, which I object to, somewhat dogmatically. So I decided to post my piece here, and link back to his, which is more in keeping with my own views about how the Web ought to run.

I don’t disagree fundamentally with the tone of the piece. I do share his unease over the now seemingly mandatory broadcast grief marathons that accompany any death in the public eye, and I find an unpleasant hint of infantile narcissim in the fetish relationship between the user and product celebrated with the mass parades of public Apple evangelists and their iDevices, which might be a cousin to the sentiments he expresses about toys and proportional responses.

This attempt to sum up Mr. Jobs as a super-skilled marketer I think underestimates the scale, and perhaps also the nature of Mr. Jobs’ contributions, some of which are subtle, many of which may look obvious, but usually only by hindsight. Even if his role was solely as a provoker, and curator of works; and I doubt it was, the truth is rarely that neat – he seems to have his fingerprints near the genesis of a string of transformational products, which do seem to fulfill the cliche of yes, changing the world.

Start at the beginning: His role in realising the portable microcomputer as a packaged appliance, something like a food processor, that people could be taught to directly integrate into their homes and offices. The Apple II barnstormed this market. I am not so sure as most other commentators that this idea was an obvious, archetypal product simply waiting to happen. Putting computers in your house, I think, is a fundamentally odd idea, albeit one that we have now fully naturalised. In 1976 it must have been almost schizophrenic.

Refining this idea into the Macintosh and Lisa, a specifically pioneering further insight was that a then unusual square pixel bitmapped display would better lend itself to curve plotting. This gave us the WYSIWYG relationship between the graphical computer and the laser printer, computer typography and thereby re-shaped the primary means of production for print and graphics.

The post-Apple “wilderness years” are particularly interesting. At NeXT they pioneered software controlled automated computer assembly and production, I’ve heard it said maybe a decade ahead of everyone else. I think they made a lot of mistakes, but I also think these lessons learned were invaluable later on. More significantly, the NeXT system software placed an elegant emphasis on “object-oriented programming”, carefully enveloping the tedious nuts and bolts of interfacing with electrical computer hardware with well chosen software ‘components’; tidy abstractions that lead to a system that was significantly easier to port to new hardware configurations, and simultaneously could be more-easily programmed at a higher level, without resorting to so much specialist understanding of specific hardware.

The significance of the work at NeXT will not be fully realised until later in his career, but as an intriguing footnote, it is on a NeXT workstation that a British scientist called Tim Berners-Lee develops some applications and protocols he calls the “World Wide Web”. Mr Berners-Lee is on the record noting that the unique NeXT development tools allowed him to easily connect abstract layers to form useful application prototypes in the space of a couple of months.

Steve’s other business during those years was Pixar. You don’t have to study the history of cinema over the last two decades too hard to detect just how fundamentally Pixar shaped mainstream family movie making.

Then he returns to Apple and begins that now over-documented turnaround from prodigal son and failing company, to pin-up CEO and spectacular media and financial success. It’s worth pointing out that the portablility of the NeXT system software allows them to insinuate it into Macintosh entirely. Next the iPod, and then we get iTunes, and the ‘iTunes Store’.  And then the same elegant software evolves to pocket phones, where the relative ease of programming buoys up the freshly invented ‘App market’. And a finely edged production control builds an on-demand production, supply and retail operation that is the envy of the rest of the industry.

I’m not a professional writer as Mr. Hepworth is. I hope I don’t read like I’m elegising him mawkishly like some Princess Di or Jade Goody for the “Facebook generation”, or lionising him in super-human terms as though he’s some over-egged digital Da Vinci, or Newton. I never met him. I’m not laying flowers anywhere. I’m sure that a huge part of his success was through fortunate timing, and developing good taste and keeping good company, but this is surely true of many whom history accounts amongst the Great, perhaps even of most. What a C.V. though!

These things are not a competition you can score, and yet I don’t think most Word Magazine readers would rush to disagree with the suggestion that Steve’s musical idols like Dylan or the Beatles “changed the world”. I’m comfortable suggesting that to a subsequent generation, with it’s own new media of choice, Steven P. Jobs influenced and changed the world to an arguably similar degree.

posted Friday, October 7, 2011 at 10:44 by cms in computers, history | No Comments »

Servicing DHCP clients with OS X

I’ve been having persistent niggles with my home router / 802.11x base station / DSL modem. It’s a D-Link DSL-2740B, itself bought as a replacement for my ISP-provided machine, an O2 wireless III (a re-badged Thomson SpeedTouch) which proved itself a low performer at both wireless and routing, and particularly dismal at doing both simultaneously.

I picked up the D-link cheaply, in a clearance bin in John Lewis. In most respects it has been a splendid replacement for the O2. WiFi is fast, routing is consistent, ADSL sync is better. However, it does have one stupid bug. It can’t do DHCP reliably. After a certain period, it starts sending out broken leases to clients; either issuing them with IP addresses that are already in use, or more commonly issuing a working address, but nullifying the nameserver settings. A reboot will restore sanity, but involves an irksome couple of minutes of network outage. Afterwards it is only a matter of time before the problem re-emerges, noticeably quicker if there’s an increased rate of new leases issued, such as a group of visitors armed with smartphones popping in.

I’m consistently amazed at how flawed home router appliances are. How anyone ‘normal’ is supposed to cope with these things, I have no idea. I’ve updated the firmware to the last available revision, fiddled with the limited options in the admin interface, to little avail. Web searches turn up a few people commenting on the same problem, but no solutions offered. This leaves me with three straightforward, yet unappealing options.

  1. Buy another router. Either another toy one, which seems likely to smuggle in some fresh nugget of buried failure, or buy something more professional, and hence eye-wateringly expensive
  2. Set up static configuration for every client. Seems a stupid solution in 2010 for a primarily wireless network
  3. Disable DHCP on the router, and add another, more reliable DHCP server to the network

Option 3 initially seems least aggravating. In the past, my strategy for service infrastructure has always been using home servers, with some form of UNIX. These days though, I’m trying to minimise the number of computer-type devices I have to keep running 24/7. I no longer find any joy in being a home UNIX administrator, and it’s nice to correspondingly reduce power consumption, fan noise, and cabling. So the idea of setting up a computer just to act as a DHCP controller is slightly repellant.

Read the rest of this entry »

posted Sunday, December 5, 2010 at 20:20 by cms in computers | Comments Off

Manic data miner

The other day at work, prompted by a shoutbox conversation with one of our users, I did a little bit of exploring some of the artist catalogue data. The idea was to find band names that were repeating words, such as ‘Talk Talk‘ and ‘The The‘. Coincidentally, I had a freshly installed database server with just this sort of information on it, and needed a good excuse to stress test it a little. PostgreSQL’s regular expression support is brilliant, and it was a very trivial exercise to quickly knock up a query that returned promising data. In the process of refining it, I got a chance to play around with the Hadoop cluster. I wrote the whole thing up over on the company blog, if you’d like further details. Fame fame fatal fame, it can play hideous tricks on the brain, as the song goes.

posted Wednesday, October 13, 2010 at 10:16 by cms in computers, music, programming | Comments Off

Today I helped create a meme

Yesterday at work, I had to clean after up a particularly freaky Slony-I replication fault. I still haven’t managed to understand quite what went wrong there. So this morning, I arrived at work in full diagnostic mode, jokingly grumbling about ‘howfuckedismydatabase.com’. Laurie was particulary amused by this curmudgeonly joke, and we bantered about it. I pitched a few ideas about how such a joke site might operate, and we left it there and moved on.

Except Laurie didn’t. Despite my attempts to dissuade him, he registered the domain, and started knocking together some pages based on the earlier jokes. I chipped in a couple more suggestions, and suggested some error messages, and within twenty minutes or so he had an operational site. Then we shared it with a couple of like-minded people, and left it be. A few of the other people at work passed it around, and a couple of people submitted it to reddit.

Within an hour or so things had started to really snowball. One of the reddit submissions gathered hundreds of upvotes, and for a period of time we were the number one story on hacker news. Laurie added a twitter button and a comment form to the site, and retweets and emails started accumulating fast. By mid-afternoon the site was approaching 200 hits a second, which it handled with aplomb, because he had coded it efficiently, and
configured the server sensibly.

It felt great to watch so many people comment positively about some of my dumb jokes, pretty much in real time. It gave me a really direct experience of something I’d always innately understood about the internet, but had not yet witnessed close to home; the ability to quickly reach an appropriate audience for almost any content, regardless of how specialised. Our little shared joke quickly reached out to thousands of people, who found something within it they also related to. This really amazes me.

It also showed me something about my own character. While I was perfectly happy to joke about the idea, it needed somebody like Laurie, with the skill and enthusiasm to pick up on it and make it into something tangible and exciting. I’d instinctively shied away from broadcasting it further than my desk, and my initial reaction was that developing it any further would be a waste of time and money. I was very wrong about that, it turned out to be an interesting experience, and enormous fun. I think this means I should endeavour to be a little less cynical.

posted Thursday, August 26, 2010 at 20:16 by cms in computers | Comments Off

Building python extensions on Snow Leopard

I ran into some problems while I was trying to install python bindings for the Growl notification framework on my MacBook Pro. My Mac is running the current release of Snow Leopard ( 10.6.4 ) and I’m using a python.org installed binary package of python, under /usr/local/python. Building using distutils and the supplied setup.py failed, seemingly because the compiler was unable to find quite routine include files, such as stdarg.h and float.h.

/Developer/SDKs/MacOSX10.4u.sdk/usr/include/stdarg.h:4:25: error: stdarg.h: No such file or directory

This error message both confused and perturbed me, because stdarg is a fairly fundamental component of a working C library, and I am pretty certain that my compiler isn’t that fundamentally broken.

Picking apart the build output from the generated Makefile, I see that it is setting the -isysroot gcc flag, to /Developer/SDKs/MacOSX10.4u.sdk/. I presume this is because the python installation is built to use the OS X 10.4 compatability SDK. This is why it’s pulling in /Developer/SDKs/MacOSX10.4u.sdk/usr/include/stdarg.h. That header is a stub, and included the following stanza


/* GCC uses its own copy of this header */
#if defined(__GNUC__)
#include_next

#include_next is a gcc extension to cpp, and instructs the preprocessor to start searching for the include file again starting with the next directory on the include path after this one. Standard libraries like stdarg and float can be quite compiler specific, and as the comment indicates, GCC is expected to have it’s own copy of this header file, which would be put away somewhere under /usr/lib/gcc.

At this point, a nagging memory of building cocoa apps with XCode resurfaced, suggesting that the 10.4 SDK isn’t compatible with gcc-4.2 ( the system default gcc under snow leopard ). GCC 4.0 is supplied though, for use with building against legacy SDKs. On this whim, I tried exporting CC=/usr/bin/gcc-4.0 and rebuilding, and everything worked as it should.

From inspection, it seems like the snow supplied leopard python is built to use 10.6 SDKs and gcc-4.2 and may well be a more sensible python to use. Further googling ducking, turned up this bug report.

posted Friday, August 6, 2010 at 17:50 by cms in python | Comments Off

Airport command line

There’s a handy little command line tool nestled away inside Apple’s system WiFi framework.

Apple80211.framework/Resources/airport

It doesn’t come with a man page, but --help will print a usage guide.

posted Saturday, December 12, 2009 at 19:46 by cms in computers | Comments Off