Category Archives: Internet

How I installed IPython on macOS 10.13.1 High Sierra

So I installed IPython today. It was a bit of an adventure, so thought I’d document it here, in case it helps anyone else (including my future self, heh):

  1. Installed Python 3.6 (the default, 2.7, included with macOS, isn’t new enough).  This puts the “python3” executable on your machine, which you can invoke similarly to “python” (which will invoke the default OS-supplied Python, probably 2.7).
  2. Got ‘pip‘. Note this was a convoluted process that involved copying some text from the pip website, pasting it into a text file, then executing that text file from python3 like so: ‘python3’ (without the quotes).  This yielded the ‘pip3.6’ executable, located here: /usr/local/bin/pip3.6
  3. Used the ‘pip3.6’ executable to download ‘ipython’: /usr/local/bin/pip3.6 install ipython
  4. Noticed that IPython looked like it installed correctly, but ‘ipython’ didn’t run from the command line immediately after that, and the installation path wasn’t noted anywhere in the installation output.  Turns out, IPython added its installation location to my PATH via my .bash_profile file, but didn’t tell me. I reloaded my .bash_profile like this, and all was good: source ~/.bash_profile
  5. Now I’ve got IPython! Invoke like this from the command line like this: ‘ipython’. Output looks like this:
    • Macintodffeb798:local me$ ipython
      Python 3.6.3 (v3.6.3:2c5fed86e0, Oct 3 2017, 00:32:08)
      Type ‘copyright’, ‘credits’ or ‘license’ for more information
      IPython 6.2.1 — An enhanced Interactive Python. Type ‘?’ for help.In [1]:

Connecting to remote MySQL servers so they appear as though they are local

Simple! Just create an SSH tunnel. Or a couple of them.

Create SSH tunnel to MySQL server running on port 3306 on so that server appears to be running locally on port 3307:

  • ssh -L 3307: root@ -NnT

Create SSH tunnel to MySQL server running on port 3306 on machine2 so that server appears to be running locally on port 3308:

  • ssh -L 3308: root@machine2 -NnT

Compare the fancyDatabaseName database on each machine using the mysqldbcompare tool (part of the mysql-utilities package):

  • /usr/local/bin/mysqldbcompare --server1=root@ --server2=root@ fancyDatabaseName

Explanation of flags to ‘ssh‘:

-L [bind_address:]port:host:hostport
Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side. This works by allocating a socket to listen to port on the local side, optionally bound to the specified bind_address. Whenever a connection is made to this port, the connection is forwarded over the secure channel, and a connection is made to host port hostport from the remote machine. Port forwardings can also be specified in the configuration file. IPv6 addresses can be specified with an alternative syntax:
[bind_address/]port/host/hostport or by enclosing the address in square brackets. Only the superuser can forward privileged ports. By default, the local port is bound in accordance with the GatewayPorts setting. However, an explicit bind_address may be used to bind the connection to a specific address. The bind_address of ”localhost” indicates that the listening port be bound for local use only, while an empty address or ‘*’ indicates that the port should be available from all interfaces.

-N will disable the ability to execute a remote command.

-n will prevent reading from stdin.

-T will disable the pseudo-terminal allocation.

On Software Packaging & Distribution

Casey Key Drum Circle pano
Casey Key Drum Circle.

So, I’ve moved in with my significant other (yay!), and part of that move is a reconfiguration of my office space. Part of this involves me examining things I’ve been holding onto for a while. Those things? Software packaging. Giant, shelf-space hogging, software packaging. Boxes, just filled with cardboard & plastic, so as to take up more space on retail shelves, so that they get noticed by consumers and picked up. I just recycled so much of that stuff.

Now that we’re in the age of electronic software distribution, that won’t be so much of a problem. That said, I couldn’t bear to part with my box for American McGee’s “Alice”, one of the first games I bought for the first computer I bought, all the way back in 2001. So there’s a part of me that regrets this loss of the physical manifestation of software, too. The future of software will be a colder place in that regard.


Boo! Hey all.
Been a while, yes, I know, what’s new right? But you’re all reading this with your RSS reader, right?
If you’re not, check out Google Reader. It’s a free, always-accessible web application made by Google, that makes keeping up with infrequently updated sites like this one, a snap. Instead of you having to check in on the website all the time for new content, it will do drudge work for you, and TELL YOU when there’s an update. Then you can read it, any any other sites you’ve “subscribed to”, right from within their user interface. Very handy.
(link will open in new window)
I’ve been doing well; very busy at work, which is a good thing to be sure in this economy. But it’s left little time for other activiities, such as writing here. I seem to have gotten either a spare moment, or I’m just taking a moment, to take a breath, so I thought I’d give you all an update.
Not even sure if I’ve mentioned it here before or not, and I’m too lazy to go check the archives; in any case, I’ve moved in with Joy and things are going well. I’m almost unpacked; there are a few boxes here and there but it’ll just take another couple hours of dedicated cleanup and I should be moved in!
One of the things I’ve been unpacking is my computer, my trusty old G4/733 Quicksilver. It recently had what I think is a videocard failure; thing is, I replaced the video card with what I thought was the stock card (ebayed for $15), and now it’s giving me a kernel panic upon boot. It’s got Tiger (10.4) installed on it, and I tried booting from a Leopard (10.5) install cd, but no dice. I’m suspecting the card I got from eBay was bad, so I’ll be looking for another shortly to see if I can get my computer up and going again. Optimally I’d like to have it working before the next OS X release is out (Sept?), so I can advertise it on Craigslist as having the “latest OS” 🙂
That’s all for now.. more to come later.

From GoDaddy to DreamHost

So, with luck you haven’t noticed any downtime– but over the weekend, I switched hosting services from GoDaddy to DreamHost. A big thank-you to my brother Davin for getting me started with my own domain, and managing it for me for the past three years 🙂
So far I am totally happy. I’d never transferred domain registrars before, and that went pretty smoothly (apparently the transfer process isn’t yet complete, but as far as I can tell it is). Transferring my Moveable Type 3.2 blog was also a super smooth process… all it took was bringing over the files, changing all GoDaddy-specific paths (ended up being about 15 files) and importing my Moveable Type database (previously dumped via GoDaddy’s database admin tool) and changing the mt-config.cgi file to point at the right DB path. Awesome.
My Gallery 1.5.5 install (see the “Photos” link on the sidebar over on the right if you’re reading this via the web… if you’re reading via RSS, I’m figuring out how to best configure an RSS feed for it.. you can see the current feed here 🙂 also came over super-easily; only needed to edit about two files. However there’s still an outstanding problem where viewing an album’s properties seems to fail in Safari but works in Firefox (odd). I’m about three years behind on Gallery so I’m just going to upgrade eventually.
Both apps now SCREAM. I am SO happy 🙂