Showing posts with label annoyances. Show all posts
Showing posts with label annoyances. Show all posts

November 19, 2013

MacOS Migration: If I Have to Shave One More Yak ...

So I decided it was time to update my laptop, the current Macbook Air being three years old and having a tendency to forget that the screen is present. The triggering event was a minor spillage which stopped several crucial keys from working as the beer dried out (yes, I know ...).

Clearly the first thing to do was take the Air off the 'Net and back it up. Connecting the backup disk and starting a Time Machine backup saw it identify about 75,000 files of the 1,500,000 on y hard disk needed backing up. When the backup phase started it took about five minutes to get to "3k of 4.5GB backed up" and I realized I had a problem.

StackOverflow suggested I consider repairing the Time Machine disk. That's another hour I shall never see again, but at least Disk Utility gave the volume a clean bill of health, so I restarted the Time Machine backup and this time (hallelujah!) it ran. I then ran the Migration Assistant on the new (receiving) Mac and told it to restore my account, settings, applications - the whole caboodle. Since the Assistant kindly estimated this would take at least two hours and fifteen minutes I decided this would be an appropriate point at which to go for a couple of drinks with my buddy Kirby.

I found the Apple Migration Assistant to be quite friendly (disclaimer: I have always previously used manual migration procedures to switch computers and so cannot say whether Windows offers similar friendliness; if not, it should). When I returned about 90 minutes later I was delighted to find that the restore was complete (I hadn't waited around for Migration Assistant to upgrade its estimate), so I was able to log in to my newly-restored account on the updated Air.

My joy lasted as long as it took me to run a terminal session, when I saw the following delight:

Last login: Tue Nov 19 01:27:18 on tty??
Traceback (most recent call last):
  File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/Library/Python/2.7/site-packages/virtualenvwrapper/hook_loader.py", line 16, in 
    from stevedore import ExtensionManager
  File "/Library/Python/2.7/site-packages/stevedore/__init__.py", line 3, in 
    from .extension import ExtensionManager
  File "/Library/Python/2.7/site-packages/stevedore/extension.py", line 4, in 
    import pkg_resources
ImportError: No module named pkg_resources
virtualenvwrapper.sh: There was a problem running the initialization hooks.

If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenv has been installed for
VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python and that PATH is
set properly.
AirHead:~ sholden$

Not exactly what you want to see when you log in, but at least indicating the the error was probably with my virtual environments. Fortunately it was quite easy to fix this daunting error message by doing a brew install python after uninstalling the previously installed version (thereby achieving an upgrade from 2.7.2 to 2.7.5). Since my account is set to prefer /usr/local/bin to /usr/bin it finds the updated python immediately. I then upgraded pip to the latest version and I appear to be good to go (though I am sure I shall find many other bumps in the road).

A very pleasant surprise was that the Mac knew about all my printers and was happy to try and use them for me. I won't know whether they work until I get back to the network to which they are connected, but if they do I will be both surprised and delighted. This is clearly superior technology where the user experience has been considered relatively carefully.

Unfortunately the user before me had already started using brew, so quite a lot of reowning was required to make my account the owner of essential locations before I could start to access the brew package again. Once I could start to think about doing that I discovered that brew update would not work because "The following untracked working tree files would be overwritten by merge". Thanks to this very helpful web page I updated by brew installation and then the update went ahead just fine. After which a brew upgrade decided that 35 packages needed updating (gulp!) and so I am currently waiting to see if the following packages upgrade without issues:
ack 2.10, atk 2.10.0, cairo 1.12.16, cmake 2.8.12.1, erlang R16B02, fontconfig 2.11.0, gdk-pixbuf 2.30.1, gettext 0.18.3.1, gfortran 4.8.2, git 1.8.4.3, glib 2.38.2, gmp 5.1.3, gtk+ 2.24.22, harfbuzz 0.9.24, icu4c 52.1, libmemcached 1.0.17, libxml2 2.9.1, mercurial 2.8, mplayer 1.1.1, ncdu 1.10, nmap 6.40, pango 1.36.1, pixman 0.32.2, postgresql 9.3.1, pv 1.4.6, pypy 2.2.0, python 2.7.6, python3 3.3.2, redis 2.6.16, sphinx 2.1.3, sqlite 3.8.1, xz 5.0.5, zeromq 3.2.4
I'll let you know how it goes! In the meantime, though my virtual environments still need some attention I am able to run Pythons 2 and 3 and the IPython Notebook. Kudos to Apple, this migration has left me much happier than I would have imagined.

May 21, 2009

Trying Again

I believe my typesetting confusion of recent days was due not, as I had feared, to my advancing years and inability to solve technical problems, but rather to a discrepancy between Blogger's preview and the final display of the blog, plus the absence of div tags.

The output of the program in Blogging Python Output: A Challenge should have displayed as
<__main__.MyCls object at 0x024217F0>
Let's see if this survives being saved and published, as so few have before it.

May 1, 2008

Microsoft Can't Support DRM

So it seems that "PlaysForSure" actually meant "Plays until the first time you change your computer or operating system after August 31, 2008". About ten days ago Microsoft's general manager for MSN Entertainment and Video Services sent out an email to customers advising them that license keys can no longer be retrieved and new computers cannot be activated after that date.

This is a very clear indication that digital rights management (DRM) is a loss for the consumer. If I wanted to keep songs from my eight-track stereo around then there was nothing to stop me from transferring them to audio cassette or CD (despite the RIAA's rather specious arguments that this was a breach of copyright). If I'd been silly enough to trust Microsoft's assertion that DRM offered me protections then I'd have to get ready to shell out for new copies after any change to my playing environment.

The Electronic Freedom Foundation has written to Microsoft stating in no uncertain terms that (by suggesting that users copy the music to a CD and transfer it to new computers that way) the company "is asking its customers to invest more time, labor and money in order to continue to enjoy the music for which they have already paid".

If Microsoft, with all their resources, can't keep a DRM scheme working then there is little chance for anyone else. It also doesn't encourage customers to trust the company if it is prepared to abandon them in this way, though they might have anticipated this desertion when Microsoft closed the MSN store when it started selling the Zune.

I suspect this is the beginning of the end of DRM. Let it rest in peace.

April 17, 2008

Blogger Annoyances #319

Is this just me, or is there some trick I just haven't learned? I was reminded, yet again, when completing the previous post in this blog, that Blogger tagging is way less user-friendly and convenient than del.icio.us and other similar sites.

I wanted to tag the item with "mono", but alas I was foolish enough to tag a previous post with "monopoly". So when I enter "mono" the widget is already suggesting the auto-completion (see image), and when I type a comma, it completes the entry as "monopoly", the existing tag. I try entering an escape character—no good, the comma still completes it as the existing tag, as does a tab.



Eventually I let it complete as "monopoly" and then go back and delete the last four characters from the tag. I really dislike applications that insist they know better than me. Since tab expands the tag to complete as an existing tag, why the heck does a comma have to do the same thing? The real annoyance is: I have this ugly feeling that somewhere out there there's a programmer feeling really smart for having committed this atrocity. Someone, please tell me there's a sensible way to do this before I go mad.

September 27, 2007

Blogger is Buggered?

Well, three posts in a row about Blogger is a little unusual, but I think this is merited.

From time to time I amuse myself by following the "Next Blog" links to get an idea of what was going on in the blog stream. If today's experience is typical then about one blog in three is complete spam, obscured by a pop-up ad window and full of links to pornographic sites. It seems clear that nobody is exercising any kind of critical control over Blogger content, and frankly it's got to the point where I am no longer sure I want to be associated with it.

I've been a web use for a long time, and it saddens me to see a potentially fantastic medium ruined by the swarms of lowest-common-denominator advertiser scum. If this is "what the people want" then they are welcome to it. I really don't think Blogger are doing themselves any favors by letting this situation continue.

August 21, 2007

Google's Spam Priorities?

So, this bunch of annoying little [expletive deleted]s have recently started spamming one of the newsgroups I haunt with messages about things like "Best Car Air Conditioners". For email my spam filters take care of a lot of this crap, but on newsgroups I pretty much have to take what my NNTP server delivers [and there's a market opportunity right there: millions of Thunderbird users are currently casting around for the next non-Microsoft solution to their problems, and if someone chooses to build a newsreader that integrates Spambayes or some similarly competent technology they could probably make a modest income). Score one if you noticed that I just wrote a half-open interval.*

Being a civic-minded netizen I decide that my only recourse is to make sure that at least these nasty little buggers will have to register new Gmail accounts (not that they will worry about that, as they probably register thirty-five new accounts a day, but anyway ...), so I decide to report them to the appropriate abuse address (even though I realize as I do so that I will either be ignored, or I will be one of several thousand irritated readers who are just as pissed as me).

So. CTRL/U gets me the message headers, and lo! I see
        Complaints-To: groups-abuse@google.com
Hooray! There's a large, responsible, "do no evil" company who is prepared to stand up and stop these little [expletive deleted]s in their tracks. Great. So I send a message (being careful to include all the headers) to the appropriate address and return to work basking in the warm comfortable glow of having done my duty and helped, as best I can, to put an end to the abhorrence of spam (really, sometimes I look at the human race and what I see depresses me: there really are people out there to whom money is so important that they will fund the exploitation of thousands, nay millions, of vulnerable always-on under-protected basement-dwelling computer systems to send out millions of messages a day about how someone is just waiting to transfer several million dollars into their bank account in return for a modest fee for their assistance. Give me a [expletive deleted] [expletive deleted] break).

Having taken the time to compose and send a message to the above-mentioned address, pointing out how the offenders are spamming a programming language group with inappropriate messages, I go about my business feeling virtuous. Only to see, when I next return to the computer, the following email:
This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of
its recipients. The following addresses failed:



SMTP error from remote server after RCPT command:
host gmail-smtp-in.l.google.com[64.233.167.114]:
550 5.1.1 No such user v66si6536119pyh

--- The header of the original message is following. ---

Received: from [12.47.149.104] (helo=[12.47.149.104])
by mrelay.perfora.net (node=mrus1) with ESMTP (Nemesis),
id 0MKpCa-1INdGx0Vee-0007V8; Tue, 21 Aug 2007 19:36:44 -0400
Message-ID: <46cb7706.4050206@holdenweb.com>

[... etc., etc., ...]
It can't be easy running a large company. If it was easy then I guess I could do it too. So much for help with abuse. I guess we have to turn to the federal government for assistance now. Oh, sorry, that's no good. The federal government stopped taking an interest in the spam problem when it was pointed out that over 50% of the world's spam originated in the USA (though this is now an out-of-date statistic).

I guess it's up to us vigilantes, then. Whar's mah gun?