Twitter and irssi...

So, from the last post, it appears that most people got fed up with trying to get twirssi working in Lenny, and it was suggested that twircd was the viable alternative - I've not tried that (yet) mostly because it's PHP based, and (strangely) I try to avoid running any PHP unless I absolutely have to. Might be of interest to others though!

I'm likely to see about making a cleaner package of libnet-twitter-lite at some point over the next week (for Lenny), but for the moment it's mostly working (I'm fairly sure the URL shortening bit won't, but I haven't tested that yet... right - tested and it doesn't work - fairly sure that's because it relies on a newer version of LWP than in stable... so I'll add that to the list of things I need to work around :)

Posted: 2010-03-15 17:05 in Tech | permalink

Getting twirssi working in Debian Lenny

So, I finally gave in and got my self a twitter account, it is (as one would guess), me, being me, I hate having to have lots of browser tabs open for things that I should be able to access in my IRC client, with twitter this is even more obvious that an IRC client is better for reading it, lots of short messages that are text, why would you need a browser tab for that? Also it means that I've got a log of the twitter messages and can look when I feel like it. All of my IRC is done from my main virtual machine, which is also my e-mail server and web server, and thus, it's running Debian stable (currently lenny), unfortunately this does not include the Net::Twitter library that twirssi relies on.

So, first step first, how much of a PITA would backporting Net::Twitter be... well, I took a look at the dependencies and went "Well, that looks like rather more effort than I want to put in right now", however I then found Net::Twitter::Lite, which you can satisfy the dependencies (well, sortof) in Lenny... they're a few versions out, but they're close...

First part was doing :

dh-make-perl --cpan Net::Twitter::Lite

Once that's finished you'll have a Net-Twitter-Lite-blah directory, which in turn contains a debian/ directory, so you can go in there and do:

dpkg-buildpackage -rfakeroot

That should tell you roughly what you're missing etc, from there you can check for the debian packages providing the missing libraries, and what versions they are. Install them and edit Makefile.PL to have the version numbers of the debian packages, you might also need to update debian/control to change some of it's restrictions.

Once all that is done, you should have a libnet-twitter-lite-perl package, install that and you're most of the way there.

I then cloned the twirssi source, and edited it to use Net::Twitter::Lite rather than Net::Twitter, my source is available via gitweb at;a=summary. To clone do:

git clone git://


git clone

Hope that helps someone else out there! If you want my Net::Twitter::Lite package, let me know!

Posted: 2010-03-15 00:26 in Tech | permalink

Of networking, bridging and ipv6 tunnels...

So, as I'm not always sitting directly in front of machines that I'm working on I've been using various tools to get temporary network connections between completely seperate network blocks, for example, sitting on wireless outside of my home, connecting back in to the desktop at home, and then connecting to the virtual machines on that desktop - the virtual machines are on their own private network, which is bridged and then routed through the desktop. The desktop machine has an ipv6 tunnel setup using tinc to my main VPS. That in turn has a tunnel setup to's ipv6 network... I then have my laptop configured to also use tinc to connect to my VPS, so lots of ipv6 over ipv4, really.

From that I can then get a 'direct' ssh connection between my laptop and my desktop (OK, so it's actually going over 2 ipv6 over ipv4 tunnels to get there, but it "looks" direct), so, that gets me as far as the external network on that box. From here, we can run a vde_switch which is connected to a tun/tap interface that's part of the internal bridge, once we've got that running, I bring up another vde_switch on my laptop attached to another tun/tap interface purely for that network with a static ip configure on that interface... using the magic of dpipe I then connect the two vde_switches together using vde_plug, and as if by magic, I then have access to the internal networking of my virtual machines, meaning that I can now ssh directly in to the virtual machines without having to do anymore interesting ssh bouncing and port forwarding.

It's a little sick, but it really does make remote working a lot easier to do, it's a vpn of sorts, I suppose, as all traffic is being thrown over ssh pipes or tinc (which in turn is encrypted using x509 certificates)... probably not the quickest of networks, but very very nice all the same.

Posted: 2010-01-22 16:16 in Tech, and Work | permalink

Firefox Paper Size

It appears that no matter what the system papersize is set to, and no matter what cups says is the default paper size, firefox, in its infinite wisdom locks it to being letter - this would probably be fine if I was in the US, but I'm not, and I want it to be A4...

So, the stages to go through to get it to do the right thing appear to be:

  • Goto about:config

  • Filter on print_paper_size

  • Change any bold (i.e. set) entries that are wrong to A4

This seems like something that should be much easier set, apparently using Page Setup only affects the current tab/window you are in and doesn't change the default, which is just odd.

Posted: 2009-10-09 10:03 in Tech | permalink

Random Storage Idea...

So, I was reading some random mumblings on the interwebs, and the pigeon with USB stick being a quicker method of data transfer in SA than their intertubes... then there was a thread on a mailing list discussing this, and someone mentioned using stacks of microSD cards... so then my brain decided to launch itself orthogonally, as it often does. What we end up with is wondering just how much storage you could fit in to the space a 3.5" drive would normally take - not taking in to account any method of attaching it at this point. So, a 3.5" drive is approx 102mmx147mmx26mm, a microSD card is 11mmx15mmx1mm, so, assuming that we're just lying them side by side, and not optimising the way they're stored at all, you can fit (with space round the sides) 9*9*26 = 2106 microSD cards in the area of a 3.5" drive. Assuming that each of those is 16G that's just shy of 33.7TB of storage!

So, that set me thinking a bit further... I reckon that in that space you could do a 6*6 grid of cards with room for connectors, and just about get it to 10, that's 360 microSD cards, and probably enough room for some control gear (haven't worked out quite what we'd use for that), I then went in to wondering if we could then create a small embedded system to talk to those 360 microSD cards, if we did that then you could potentially do RAID0 across the "platters" with RAID6 on each platter. Now, to my poor head that meant that there should be 340*16G of available storage, which is 5.44TB... of course, that involves somehow interfacing the 360 microSD cards... I'm thinking that it might be possible with some form of embedded system...

Unfortunately, it appears that to actually build this with consumer components... and without including the interface gear which I haven't even begun to work out yet... we're talking around about £26 per microSD card, so, erm, £9360... but I still think it'd be a really neat project... now, if someone can arrange for me to win the lottery, have lots of spare time, and some more brain power... :)

Oh dear... my brain appears to have ticked further through, and I've realised that with spacing between each microSD card, you could, in theory, easily fit 400 of them upended in the space available. Erm. Of course, this still doesn't answer the "how the hell do you then get them all to talk in any sane manner" question... but I'm sure that will work out in my head sometime...

Posted: 2009-09-13 20:01 in Random, and Tech | permalink

LVM weirdness - solution found...

ARGH! So, now I know the issue, the disk was created with a standard dos partition table... this won't extend past the bit that I'm at... it needs to be GPT, so there's going to need to be some downtime to sort it out. SIGH.

Posted: 2009-09-09 18:25 in Tech, and Work | permalink

LVM weirdness

I'm having some issues with LVM, basically it appears that I can't assign over a certain amount of my pv, where that certain amount is somewhere around 1.5TB... output from all the relevant chunks are:

ensenada:~# lvdisplay
  --- Logical volume ---
  LV Name                /dev/main/root
  VG Name                main
  LV UUID                ZR33WS-glE2-bUn6-adCX-n50C-37eX-Fc7Pde
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                7.45 GB
  Current LE             1907
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:0

  --- Logical volume ---
  LV Name                /dev/main/voldemort
  VG Name                main
  LV UUID                DrT0co-THRw-6Zcy-Q3PT-OiQj-4KBz-xfV0Un
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                1.37 TB
  Current LE             358400
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:1

ensenada:~# vgdisplay
  --- Volume group ---
  VG Name               main
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  56
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               5.45 TB
  PE Size               4.00 MB
  Total PE              1428053
  Alloc PE / Size       360307 / 1.37 TB
  Free  PE / Size       1067746 / 4.07 TB
  VG UUID               ddVSIr-W9BU-XOWJ-gdSo-HZ4m-vw3M-S33Q3s

ensenada:~# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               main
  PV Size               5.45 TB / not usable 1.54 MB
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              1428053
  Free PE               1067746
  Allocated PE          360307
  PV UUID               sFxRYg-Ua60-zpMT-DMqo-tpD5-d24W-qfW31p

ensenada:~# lvcreate -n test -L 74G main
  Logical volume "test" created
ensenada:~# pvs
  PV         VG   Fmt  Attr PSize PFree
  /dev/sda3  main lvm2 a-   5.45T 4.00T
ensenada:~# lvs
  LV        VG   Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  root      main -wi-ao  7.45G
  test      main -wi-a- 74.00G
  voldemort main -wi-ao  1.37T
ensenada:~# lvremove /dev/main/test
Do you really want to remove active logical volume "test"? [y/n]: y
  Logical volume "test" successfully removed
ensenada:~# lvcreate -n test -L 75G main
  device-mapper: reload ioctl failed: Invalid argument
  Aborting. Failed to activate new LV to wipe the start of it.
  LV main/test in use: not deactivating
  Unable to deactivate failed new LV. Manual intervention required.
ensenada:~# lvremove /dev/main/test
Do you really want to remove active logical volume "test"? [y/n]: y
  Logical volume "test" successfully removed
ensenada:~# lvcreate -n test -L 74G main
  Logical volume "test" created
ensenada:~# lvremove /dev/main/test
Do you really want to remove active logical volume "test"? [y/n]: y
  Logical volume "test" successfully removed

Please, someone, put me out of my misery - this is driving me nuts!

Extra info:

ensenada:~# uname -a
Linux ensenada 2.6.26-2-amd64 #1 SMP Fri Aug 14 07:12:04 UTC 2009 x86_64 GNU/Linux
ensenada:~# dpkg -l lvm2
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name                  Version               Description
ii  lvm2                  2.02.39-7             The Linux Logical Volume Manager
ensenada:~# cat /etc/debian_version

(Erm, just remembered that I haven't got comments enabled at the mo, so if you've got fixes, please mail me! - thanks!)

Posted: 2009-09-09 16:07 in Tech, and Work | permalink

XKB and xsessionrc

So, for a while now I've been using xmodmap to remap my caps lock key off to mod4 to make using awesome just that little easier... although my laptop has got a 'Windows' key, it's in an awkward place for general use, whereas caps lock is in a somewhat more convenient place. Also, not wanting to make it system wide (you never know, someone else might want to use the laptop at some point, at which point it'd be a different user), I wanted to keep with something close to the xmodmap method of just replacing bits as we needed 'em.

As I upgraded the laptop yesterday, various things broke (not least of all, my awesome config, as the theme format had changed to lua, and my theme, erm, broked it), I changed from it using my ~/.xsession for starting the things that I want to using the default Xsession foo, fortunately this sources a .xsessionrc file, which is handy.

So, using hints from madduck's post about extending xkb, I setup a very simple mapping that just adds in the Caps Lock -> Mod4 override, which is nice and handy.

I then just use:

[ -r $HOME/.xkb/keymaps/default ] && xkbcomp -I$HOME/.xkb $HOME/.xkb/keymaps/default $DISPLAY

in my .xsessionrc to setup the keyboard with the right settings, the default keymap in $HOME/.xkb/keymaps is simply the output of setxkbmap -print, edited to add +brettp(caps_mod4) to the symbols, the +brettp(caps_mod4) is a copy of madducks partial for that, i.e. there is a file $HOME/.xkb/symbols/brettp that contains:

// caps_mod4: make capslock generate the mod4 modifier
partial modifier_keys
xkb_symbols "caps_mod4" {
  replace key <CAPS> {
    [ VoidSymbol, VoidSymbol ]
  modifier_map Mod4 { <CAPS> };

Looks a little cleaner than using xmodmap, and might mean that firing off Xnest sessions might stop breaking things!

Posted: 2009-08-16 14:13 in Tech | permalink

New Website Design...

It's been a long long time since I last posted anything at all, so this is a post to warn of impending doom. I've switched from a static html website (well, it was statically generated when I edited source files I then ran a bash script that fired off a perl script several times...) to a fully dynamic, django 1.0 backed website - this might mean that I manage to update things more often!

I've also taken the opportunity to convert the previous content in to ReST, so it's actually easier to edit too. There's still work to do - but it's now "good enough" to be used, and I'll split the code out in to better chunks later on.

So, anyways - that's what I've done with my day - so I expect all the aggregators to now break on the new feeds...

Posted: 2009-04-04 17:40 in Life, and Tech | permalink

More on

Just to confirm, yes, I do know of rss2email - it has the unfortunate side effect of needing an MTA configured to process the rss feeds and seperate them in to seperate maildirs, basically I wanted something that would write straight to the maildir for me because then I don't have to think about the config for the MTA on each machine that I want to use it on.

Thanks to Martin for the suggestion of pandoc, I'll take a look at that over the next few days to see if it'll make the "plain text" generation slightly neater than the current HTMLParser based code.

Posted: 2007-12-21 12:12 in Tech | permalink

I've been looking for a decent way to read rss feeds for a bit, I've finally given in to the fact that there's actually nothing about that I feel comfortable with... so, what I've started is writting a simple rss to maildir convertor (I know there's toursst, but that appears to want a galleon bookmarks file and appears to use deprecated bits of python). At the moment it is very very basic, there's still a way to go before I'll be fully happy with it, but it's much nicer being able to read rss using mutt than Yet Another Random Program, I'll be hacking up a mutt config to make it look different to e-mail later, but for now as it's still in testing phases, I'm just testing with a bog standard mutt config.

I've made the code available through a git repository that should (when DNS has finished updating) be available with a git clone git:// before that it should be available from git clone .

The HTML -> Text parser still needs some work, I'm mostly aiming for it to take HTML and generate almost OK ReST which is easier to read in a text mail client. It still needs paragraph wrapping etc, but I'll work on those over time.

If anyones interested, or wants to get involved, or has some nicer ideas for how to make it work, as always I can be contacted at :)

Posted: 2007-12-20 21:31 in Tech | permalink

Update to bpgallery

Just after having made the 1.1.0 release I discovered an annoying bug in that version that meant using caption files made it fail in new and interesting ways, I've now fixed the bug and released bpgallery 1.1.1 which fixes this.

Posted: 2007-05-14 08:32 in Tech | permalink

New bpgallery available, and xmms-scrobbler work...

I've taken over upstream development of xmms-scrobbler, it's now hosted at and has a public readonly git repository for the code. Since taking over development I've dropped a lot of the tag parsing code and replaced it with taglib, found some "interesting" locking issues and am now looking at making it so that we don't need to restart it when adding username/password. It'd also be good to get it to actually report a username/password breakage at least once rather than being totally silent about it!

In other news, I've just released a new version of bpgallery, this version adds in medium sized pages - i.e. you can have the index page, the index page links to pages that have a resized image on the page, and has next/previous links. If you also generate full sized pages then the link from the image on the medium sized page goes to the full sized page, otherwise it'll go straight to the origional image.

Also thinking about making a "client" for xmms so that I can keep all my music playing in the one place (lastfmproxy appears to have stopped working for me :/)

Posted: 2007-05-13 12:00 in Tech | permalink

Stuff, potentially a bit random

So, found GlusterFS today, looks quite interesting, may have to play when I've got some spare tuits...

Also, I'm about to take over upstream development of xmms-scrobbler, so currently thinking of which revision control system to use... I'm very tempted to use tla because I know it and use it for everything else that I do, but I've been tempted by the evils that are git, hg and bzr... most likely going with tla because it makes the most sense to my often broken little mind, and I like the abrowse command rather too much :)

What else? Probably lots of stuff, oh, looking for a nice multiple project group type build daemon - we've got 4 main branches of a piece of software at work, and packages should be auto built for each of the branches on a commit (ish) - we're currently running 4 copies of cruise control to build the debian packages, that's a little bit on the heavy side, though - and all it'd need to make it actually work for me would be to have a project group config option, so you can assign a number of processes per project group... but it doesn't have that - I just discovered CruiseControl.rb, which is a bit lighter, but it's still not quite what I'm after. May end up writting a small python buildd to deal with it instead, and hook it in to the svn repository with some post commit hooks.

Also got a whole lot of Nagios configuration to finish off to monitor a bunch of servers.

So, that's a small brain dump... more when I remember what the hell it was that I was supposed to be doing - been a hectic day!

Posted: 2007-04-19 17:56 in Tech | permalink

Oh Noes! This means lots of work!

Debian GNU/Linux 4.0 has been released - congratulations to all those involved in the release process, you've all done a fantastic job (as always ;). Now I've just got to test the upgrade for the NFS root desktop machines at work (that's going to be sooo much fun!) and make sure that nothing obvious breaks - I'm not expecting many problems, it should go quite smoothly (probably!).

Might also use the "official" non-free packages for the sun j2sdk rather than using java-package, haven't decided yet (and actually, as we also use sun-j2sdk1.4, I'm going to have to use java-package for that anyways!).

Hmmm, I suppose I should update all of my various build chroots and set up all the scripts that I'm going to need also - feh - that can wait for a bit.

Ahh - and I'm going to need to compile an etch version of ion3 from unstable, can't be having my workstation running one of those dodgy window managers that makes it almost impossible to get anything done without using the mouse, afterall!

Right - anyways - I think I shall just go faint, that was far too quick between sarge and etch!

Posted: 2007-04-08 14:40 in Tech | permalink

Of CGI Scripts and Line Endings

MJ Ray said in Bad Tech: CGI Scripts and Line Endings:

Problem: CGI scripts uploaded with the MS Windows version of FileZilla over SFTP don't work until converted. Either there's some FileZilla settings wrong by default, or it just doesn't work.

The problem is that unlike with traditional FTP, which in ASCII mode would automagically translate line endings in to a sane format, SFTP (as far as I can tell) will always send them as binary, and thus if they were in DOS format before the transfer, they'll be in DOS format after the transfer. So, your choices are (other than the evil perl^M symlink)...

Teach users about line endings - get them to do the equivalent of a :set fileformat=unix in vim before saving ;) (I'm not sure which editors out there let you set what line endings to use - might be worth finding out what the users use and looking it up)

When they upload, rather than them uploading directly in to FTP space it hits an area that is checked every x minutes - that area is then copied to the right area with the transformation being done server side

Something else.

Posted: 2007-03-03 09:52 in Tech | permalink

Mac vs PC...

Now, this isn't actually a post about Mac vs PC, it's a post about the general use of the term "Mac vs PC", why is it that the term "PC" is equivelent to "x86 based windows running computer"? The Mac itself is a PC, dammit, and actually, now that it is just another x86 based product and can run windows... ho hum. Anyways - yes, just mostly pissed off by the fact that "Mac" -> Mac OS, and "PC" -> Windows... now, of the two "PC"s that I use most frequently (err, personal ones, not my workstation, though that also...) there is no freaking Windows on 'em, they're Debian GNU/Linux boxes through and through.

So, can the not-entirely-thick people that should know better stop using the term "Mac vs PC" and instead use "Mac OS X vs Windows [version]" or similar if they're just picking on OS.

Anyways, yes, err, I just read some other blog entry that set this off, I'll, err, grab my coat.

Posted: 2007-02-17 10:45 in Tech | permalink

Command line lucene index inspection!

Woo! I've been looking for a lucene index inspection tool for the command line for about 6 months or so, ever since first trying to use luke over a forwarded X11 over ssh connection to a machine in the colo with a large(ish) (300,000 document) index... a couple of months ago I stumbled upon PyLucene - a python library that can play with lucene indexes, of course the first thing I did with it was package it (can't have random unpackaged software laying around the system after all, can you!), and then played for a bit, and joined the pylucene-dev mailing list. So, imagine my glee today when on that mailing list there's a post about plush - a Python LUcene SHell - fantasticness! Quickly threw that in to a package and tested it out against a lucene index laying around on my workstation, it worked nicely (couple of small bugs, but they've now been fixed in the trunk version), so, now that I had it packaged, straight off I went to the main indexing server and threw it at a large lucene index, it just worked. Fantastic.

I'll add some links to my repository for pylucene and plush later, when I'm feeling slightly better, feel a little under the weather at the moment.

Posted: 2007-02-01 22:29 in Tech | permalink

Smartish Phones...

Clive, the Trolltech Greenphone certainly looks interesting, and has the key ingrediant that the iPhone and Neo1973 are both missing. Yes, you got it, it's actually got buttons!

I don't know about the rest of the world, but I like the fact that pushing a button gives physical feedback, also, you can move your thumb around on a keypad and know what button is under your hand, and that you're not overlapping 2 different buttons at the same time - can you do that with a touchscreen? I'm thinking not. So, you have a shiny phone, it lets you do all sorts of crap that you don't really want to do, but when you're using it, that's all you're doing, seems a waste to me.

Posted: 2007-01-11 19:15 in Tech | permalink

The Apple iPhone: Good thing or not?

So, the Apple iPhone has been launched, it was brought to my attention as actually being announced by the MD at work, who appears to have become a complete apple freak (poor bastard... or is that rich bastard to be able to afford apple's mediocre offerings and be happy about it?). Anyways - from reading the story from BBC News and the official website, here's my conclusions.

First off, when marketing a phone, how about you actually mention it's phone capabilities as the number one priority? I'd like to know about the sound capabilities, the battery life, the overall user feel for it as a phone... maybe I'm odd, but a phone has a purpose, it should make and receive calls, and it should do that job well, with good quality voice, a decent (filtering) microphone (it's a mobile, you'll be walking whilst speaking on it, reducing the background noise is a selling point), but apple appear to have mostly avoided talking about this. Instead, the first thing that you're told about from the news story is the unique user interface - great, so we have a touchscreen "whoop, de, do!". Worse still, from the official site, the first thing that springs out is that it's a "Wide Screen iPod" - it's a phone, if I wanted an iPod I'd buy a damned iPod - as it stands, for my music needs I have an iAudio M3 which suits my portable music experience really rather well. I choose that on the basis that it provided ogg support out of the box, didn't require any magical software (I run linux on my machines, it presenting itself as nothing more than a USB hard disk was fantastic, and means that I can use it for other things when needs arise). For a phone I want something that actually behaves like a phone, looking at the iPhone it's primary purpose appears to actually be a media player - that's not good.

With the iPhone only having a touch screen interface, and from everything that I've read there's no stylus and the "finger is the ultimate pointing device", I'm just expecting that within the first 2 weeks you're going to have a scratched or smudged screen from usage alone, add in the fact that it's a mobile phone, and therefore generally treated with contempt (neccessity rather than luxery), and that most people carry mobiles in their pockets without any form of protection (easy and fast access) and you've got a recipe for disaster! The touch screen is going to be hit (wether you like it or not) whilst the phone is in your pocket, it will wear - there's no question in my mind about it. Touchscreens aren't designed to be smacked around 24/7, they're touchscreens - they respond to touch! So, assuming that you're shiny new iPhone is sitting in your pocket a lot of the time that's a lot of usage of the touchscreen - they're not designed for constant pressure (think about what happens to pockets in trousers when you sit down...), so I don't think that, overall, the sensitivity of the screen is going to last very long. It's only got a fairly narrow screen too, so what about those of us with not entirely slender fingers? When composing SMS messages on it with the on screen qwerty keyboard, do you really think that you're going to get the right keys every time? Small, on screen, buttons and pubs do not mix - and I'd hasten a bet there's a fair number of SMS messages sent from, or on the way back from, the pub, with a predictive text system at least you can almost work out what the heck the person was trying to say - this is a whole new ball game.

The iPhone also makes the phone functionality only available after you've hit the part of the screen that says "Phone", now, I don't know about other people, but if I'm being given a number, I tend to just start hitting the right buttons on the phone, I can store the number later (via the call register or whatever) and hit call, now there's an extra step to getting in touch with people.

From the official site we have the words:

iPhone also introduces an entirely new user interface based on a large multi-touch display and pioneering new software, letting you control everything with just your fingers.

Now, err, just when did a phone require you to use anything other than your fingers? Please tell me, I'm dying to know - I've never yet needed to use my feet to operate my phone, have you? This is marketing gone insane - and what worries me is that people actually believe this bullshit.

Apple may have "revolutionised" the computer industry with "Mac OS X" (this is actually not something that I believe, and OS X actually makes me more frustrated than being sat infront of a windows desktop - and believe me, that's difficult), but this is a phone, how about they try making it about the phone first, and the next generation tart audio player second?

I'm willing to be convinced that I'm wrong, but I definately won't be going out of my way to aquire an iPhone just because the marketing spiel looks good.

Posted: 2007-01-10 23:45 in Tech | permalink

Pages: Previous | 1 | 2 | 3 | 4 | 5 | Next