Set Vim as the default editor

published on 2017-01-28 in computing

It just kills me when I type git commit or some other such command on a newly configured machine and up comes nano or (worse!) pico. And, I so infrequently have to do this that I can never remember it - so, for posterity:

To set your default editor (to Vim) on Ubuntu:

update-alternatives --config editor


$ sudo update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
  0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
* 3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

Press <enter> to keep the current choice[*], or type selection number: 3

Uncomplicated FireWall (UFW) on Ubuntu

published on 2017-01-16 in computing

UFW is a pretty simple to use firewall wrapper for Ubuntu. Recently, I have been using it to block spammers on a little service I run for the Nashville Tech community. I used to do this with iptables directly, but this is far simpler.

Here's a quick primer on firing it up and blocking a particular IP address. It's disabled by default so you need to allow your services and then turn it on:

ufw allow ssh/tcp
ufw allow 80/tcp
ufw logging on
ufw enable
ufw status

Order matters - once a rule is matched the others will not be evaluated. So, to block that IP, you need to insert it early:

ufw insert 1 deny from

Here's what these rules look like:

# ufw status
Status: active

To                         Action      From
--                         ------      ----
Anywhere                   DENY             
22/tcp                     ALLOW       Anywhere                  
80/tcp                     ALLOW       Anywhere                  
22/tcp (v6)                ALLOW       Anywhere (v6)             
80/tcp (v6)                ALLOW       Anywhere (v6)             

And you can number the output to make it easy to clean up or delete your rules:

# ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] Anywhere                   DENY IN             
[ 2] 22/tcp                     ALLOW IN    Anywhere                  
[ 3] 80/tcp                     ALLOW IN    Anywhere                  
[ 4] 22/tcp (v6)                ALLOW IN    Anywhere (v6)             
[ 5] 80/tcp (v6)                ALLOW IN    Anywhere (v6)             

To delete one it'd be ex: ufw delete 1

2017 Resolutions

published on 2017-01-04 in uncategorized

I came up with a few new years resolutions. In no particular order:

  • write more (this website)
  • use a journal
  • organize my personal websites and their data. this is tricky, I have a few decades of web cruft.
  • organize photos as they are taken
  • spend a little time each day organizing my old photos. I also have a few decades of photos to organize.
  • find creative ways to spend time with my kids that expand their minds and keep me youthful.
  • go to bed earlier ; get up earlier. I'm a natural night-owl so this may be more of a short-lived experiment.

Happy Solstice!

published on 2016-12-21 in science

The image below is an example of solargraphy. A pinhole camera is used to take a picture over 6 months. This photography technique perfectly illustrates the position of the sun between the summer and winter solstice.

Skylight Simulation

published on 2016-05-07 in howto

Trying to decide where to place some skylights in my garage renovation project, I needed to simluate the look. I took pictures of the one installed skylight from the perspective of the camera if it was installed in 2 places, and splicing them into a 'blank' image. Result:


I decided to go with #2. Aside from the exposure and the skylight being open, very accurate!

Code & Pinot: UNIX!

published on 2015-04-23 in computing

I gave a presentation tonight at Nashville Girl Geek Dinner's Code & Pinot event. We went over some UNIX history and did a bit of command line intro. Action shot:

It was a great event! I had a lot of fun teaching something I'm passionate about (while de-rusting a bit on relating the basics!) and had some great conversation afterwards. I've given the history talk a number of times over the years, but the GGD Nashville crew got to experience my first test of this talk with slides! \o/ You can download my history presentation here. And here is the history of what I typed during the UNIX lesson.

Side note: We discussed the historically famous "Space Travel" game (look it up). But, all I knew was that it was a game...and I'm not a gamer. So, I had to look it up a bit more when I got home. Apparently it let you simulate travel between planets in our solar system and cost about $50-$75 in 1969 money to play a round on the GE 645 running MULTICS! Which is $320-$482 in 2015 money. No wonder re-writing the whole OS on cheaper hardware was worth it. :-P

If any of you were there and would like to know more, here are some good links that I used when re-acquainting myself with UNIX's colorful history and some beginner material:

More History of UNIX

Other Good Intros

Don’t have UNIX to play with? Get it in the browser with JS/UIX!

Cheat Sheets

Beers w/Trey

published on 2013-05-08 in nashville , timelapse

Trey came to town. So, we had beer. And I made picturefilms. Used a GoPro and the Radian, which had arrived a few days before. Still not great with it, but the results here were fun. Filmed at both Craft Brewed and M.L. Rose. Approximately 250X normal speed.

Thoughts on "negative-Kelvin"

published on 2013-01-05 in science

Nature: Quantum gas goes below absolute zero.

I thought I had a decent understanding of physics. But after reading this, someone should revoke my 'amateur scientist' card. This (from Wikipedia) helped me understand it:

Since we started with over half the atoms in the spin-down state, initially this drives the system towards a 50/50 mixture, so the entropy is increasing, corresponding to a positive temperature. However, at some point more than half of the spins are in the spin-up position. In this case, adding additional energy reduces the entropy, since it moves the system further from a 50/50 mixture. This reduction in entropy with the addition of energy corresponds to a negative temperature.

This is not about the common notions of hot and cold, this is thermodynamic temperature, which is about entropy and energy. OK, so to me, this amounts to a neat physics trick. The universe will not collapse and our understanding of physics hasn't changed. Hopefully, it'll inspire a few folks (like me) to understand it better. Doing more reading, it reads like this only works in a 'system' of atoms, not with a singular atom. If you can't make a single atom colder than 0.0 kelvin, then the fundamental physics models don't change. Somewhat frustratingly, I see no mentions of anti-gravity, which was the most radical thing said on the article. So, please erase that and any anti-gravity belt predictions from your memory banks.

Speaking of theoretical maximums, another fascinating one is the concept of "absolute hot", which is currently defined as the Planck temperature, (1.416785×10^32^ kelvin). All physics models break down, even things like gravity. And, theory says that the entire universe has already experienced this temperature, a fraction of a second after the big bang. Enjoy that thought.

Further reading:

High-Speed Datacenter Work

published on 2012-11-08 in computing , timelapse , video

Went to the datacenter last night to build out a few DB servers with 64GB of RAM. And set up a timelapse to record parts of the work. Marc, Brian and I did 2 servers each. You can see some up-close shots of the Dell R710 hardware, though it's quite blurry. Playback is 74 x normal speed.

Wasp Nest

published on 2012-11-01 in science , video

Found a paper wasp nest today while we were having work done on the house. It was cold out and I thought they were dead...when I set it down in the sun to take a picture, I saw some movement. So, I filmed the little guy trying to get out. National Geographic here I come.