Image 01

Transneptune

beyond the Kuiper Belt, over the sea

Archive for the ‘computers’ Category

Forward

Sunday, October 21st, 2012

So, John recently showed me this cool service, Foward. They are useful for two main things: showing off your development on localhost to people on the other side of the NAT, and developing on localhost with calls to external services that need to then call you back.

Basically, it’s just a reverse proxy.

So, without intending to steal their thunder (they really are very full-featured—take a look), here’s how to make a bare-bones version of this yourself.

What you’ll need:

  • A domain name. I’m using transneptune.net, of course.
  • A webserver, with proxying capability. I’m using Apache, with mod_proxy.
  • SSH keys (not strictly necessary, but it makes it all much more convenient).

So, there are two components to this: the reverse proxy on your webserver, and the script that makes an SSH tunnel from your computer to the webserver, which the proxy then forwards to.

Both are really super simple.

Here’s the Apache config:

<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName forward.example.com

ProxyPass / http://localhost:8001/
ProxyPassReverse / http://localhost:8001/
</VirtualHost>

The port (8001) is arbitrary; I chose a high-numbered port that I was unlikely to use for anything else. The ServerName is also just an example.

Here’s the script to run locally to connect:

#!/bin/bash

PORT=$1
ssh -N -R 8001:localhost:$PORT example.com

The important part of this is the -R 8001:localhost:$PORT, which handles creation of the tunnel. The -N just keeps it from making a shell on the server when you run it.

So, an example of use:

Start your Django local development server:

$ ./manage.py runserver

This is running on port 8000.

Run the forwarding script, with the local port you’d like to make externally visible:

$ forward 8000

Wait a moment for it to connect.

Go to forward.example.com in a browser, or better yet, direct someone elsewhere to do so.

Celebrate.

Outage

Sunday, July 11th, 2010

So, last night, TN ground to a halt because of a failure in the backup system. Yay, I have backups. Boo, the drive they’re on died, thus failing to mount, and the backups went, due to a quirk of my backup system, to the HD with the root of the filesystem. Filled that up quickly, it did.

So, resolved. No backups for now, not until I pick up a new TB drive.

Internet Celebrity

Monday, June 21st, 2010

The internet is a weirdly wonderful place sometimes.

I was playing TF2 last night, and first off, I ended up playing with some of my internet idols: Lore Sjöberg and Mark Rosenfelder. I knew I was playing with Lore—both recognizing his voice and having his steam username. But when I was playing as a medic and healing someone with the username Zompist, I knew it was Rosenfelder, and was excited.

And the internet makes that kind of contact easy—we were all there to play a game together. I just happened to wander into the right place. It’s not like there was much meaningful communication, as we were mostly focused on the game, but that’s almost the point. It was casual.

Later, with different people, there was another weird and awesome moment. In an arena game, it had gotten down to a Sniper and a Heavy. Without words, they faced each other and the Heavy swapped to melee. So did the Sniper. And they duked it out hand-to-hand. The Heavy even gave the Sniper his Sandvich.

OK, that paragraph won’t mean much to you unless you know TF2. But it was cool.


On another note, I’m increasingly thinking about grad school and what I’ll do there. I’m quite excited. I have an apartment, I have friends, I have research questions. The latest notion to pop into my head is that twin languages are really interesting. We’ll see if I keep at that, but it serves as a good reminder for me of all the strange little corners of human language that don’t get enough attention.

San Francisco

Tuesday, March 30th, 2010

Lightning trip to SF for a job interview. This is a truly wonderful city; it has what I like about NYC, offset with a certain undefinable Pacificness.

The company makes browser-based games, particularly Facebook games. (remember when it was The Facebook? Yeah.) I’m particularly curious about their game design process; I can code, sure, but with the years I’ve put into thoughts about gameplay and setting design, I’d like to get to try my hand at that, too. It has been implied that I might. We’ll see. Updates as I have them.

Oh, also: Facebook as medium for ARGs? How do you, should you, monetize that? Molly, we should talk about this.

Google Wave

Thursday, November 26th, 2009

Is still cool. I’ve got a pile of invites; anyone want one?

(Since people keep asking: Google Wave is not, in and of itself, anything new.  It is, rather, a beautifully conceived [though not yet quite fully implemented!] melding of existing technologies.  The tag-line version is that it is a integration of wiki, IM, email, and collaborative document editing, with line-item threaded responses and real-time typing from other users visible.  Many people balk at this last point, but it’s (a) really surprisingly useful and makes communication a lot more like, well, real conversation, and (b) eventually going to be configurable.)

Droid Review Addendum

Wednesday, November 25th, 2009

The inimitable @andrewa121 pointed out that the iPhone has greater extended-latin input abilities than I had ascribed to it; he suggested touch-and-hold to get options for accented characters (which is exactly what one does in Android 2.0). I would like to state for the record that I had tried this unsuccessfully on an iPhone 3GS prior to writing the last post.

Motorola Droid Review (finally!)

Sunday, November 22nd, 2009

Well, I’ve had this phone for a bit now, and thought it time to give my thoughts on it. They are basically positive—if you’re a nerdy guy, this is a good smartphone for you.

The pros are good pros for me, and the cons are cons that don’t bother me, but might be bad for other people. I like the speed, UI, option for on-screen (for general use) or slide-out (for intensive, or SSH, use) keyboard. I like the selection of apps (by which I mean that there’s a good, free, SSH app, and then other, very Google-oriented apps, and a Pandora app).

I like the battery life, I like the resolution, I like the camera. I like running six different apps at a time, and I still like the battery life.

I think that the shape of it is very male, it’s a little thicker than I’d like (for fitting in my erstwhile cell-phone pockets), and many of the apps seem buggier than I’ve seen on the iPhone—but they’ve yet to be destructive bugs. Mostly, the Twitter app I use complains that it needs to force-quit a lot, and then doesn’t, because, actually, it doesn’t need to.

This point is a slight win for the Droid over the iPhone: it can input extended latin characters quite easily, and — and … particularly, but it doesn’t have the fonts to display weirder Unicode, like ♆.

It can’t (yet) play arbitrary Flash embeds, so I can’t watch ZP on it. But it can catch YouTube links and redirect them to the YouTube app.

In the end: nerdy guy, yes. Anyone else, probably not. Price is completely equivalent to the iPhone, in terms of data plan as well.

New phone

Sunday, November 8th, 2009

Well, I feel like I’m officially in the future, now that I have a smartphone.  I got the Droid, a bit of nice Motorola hardware running Google’s nice open-source OS Android, and carried by the icktastic Verizon.  So it goes.

Wiring

Wednesday, November 4th, 2009

I spent much of today rewiring the house (with my dad’s assistance, or, more accurately, I was assisting him).  Lots of drilling, crawling in the basement, getting dusty, trying not to inhale fiberglass insulation.  I found it quite fun, but it’s not a usual thing for me, which I suppose makes a difference.  But there was something exciting and satisfying to that kind of work—a nice combination of manual work, and basic network set up of a sort familiar to me.  Satisfying work is satisfying.

Minor complaints

Wednesday, July 15th, 2009

I have many ways to switch between active work areas: ctrl-a, n when using screen; ctrl-arrow when using Spaces; cmd-tab when using normal OS X application switching; ctrl-tab when using my Windows VM.  These can get confusing, and I spend a certain amount of time swapping between applications and desktops and virtual terminals fruitlessly.

I am kind of sick of sitting and typing for so much of the day.

WordPress and its plugins, though updated, do not think that they are.