The problem with believing you can figure anything out

The most important thing I learned from Cornell, something kneaded into me with every impossible assignment completed, was that nothing is actually beyond me. There's nothing too hard, too complicated, too esoteric or too impressive that I simply lack the capacity to understand. Such things don't exist.
“The secret things belong to the Lord our God, but the things that are revealed belong to us and to our children forever..."
- Deuteronomy 29:29
This realization, if worked into your bones and your knee-jerk reaction to new ideas, is a great blessing. Whole new worlds break open, and the quest for the key to the gate of each new kingdom just becomes a puzzle-hunt. There's also a bit of a curse, or perhaps just a new challenge:
Once there's nothing you feel you can't do, once the artificial barrier is removed, suddenly you have no barrier to dabbling in everything. I've started 14 books, I follow 77 blogs, there are 64 unread articles in my Instapaper inbox... It gets out of hand rather quickly.
I hypothesize that what I need is a new, better barrier, as well as a way to prune the system periodically. I'd definitely take suggestions though. Tweet @danielpcox to let me know what you think.

Tour de Shmoo: ShmooCon 2016 Puzzle/Crypto Contest

Every year at ShmooCon, one of the handful of official events is a puzzle contest. Traditionally this has been a "badge contest", where most of the clues come from the conference badges, but at the past two cons there has been a website with all of the puzzles, a leaderboard, and a much broader range of puzzle genres.

This year, the first year Decipher has gone as a group to ShmooCon, we won this contest! To celebrate, with the permission of the organizers ("Team Flowers By Irene", who had won the contest every year for the previous four cons), we present a description of our solutions to each genuine puzzle.

First, the cycling-themed ShmooCon program contained links to http://tourdeshmoo.shmoocon.org, http://twitter.com/ShmooConPuzzle, and an explanation of how the contest works. When you arrived at the site, you would see this bike path, and each node was clickable to retrieve a leg of the contest.


Of course we didn't arrive at the site the first time to discover that we were winning, but you get the idea.

Many of the legs involved just a bit of manual labor, like the one pictured above which required us to build a tower from the items in our bag. I'm going to skip those legs in this post. I'm pretty sure you could figure out how to make a tower of swag at a conference.

Here are each of the puzzles, in the order we solved (got credit for solving) them, plus any hints that were announced (and when they were announced). We were also told that the organizers had EE backgrounds, and that puzzle names and icons on the map were hints. If you don't want to know how we did it, just stay above the ####s in each case.



Snail - Solved 4:15PM Friday



######################################
######################################
######################################

We solved this one during the single-track talks on the first day. We recognized that this is a kind of barcode typically used to encode postal codes on letters. Using the chart on Wikipedia, we were able to mostly decode the numbers 20009, which was the zip code for the Washington Hilton, the venue for the conference. We figured it was just slightly corrupted and didn't bother to figure out what was wrong. It was revealed later that we could have read a bit further and used the check digit to recover the corrupted bit, but 20009 was indeed the answer.



Flip out - Solved 4:17PM on Friday

88777077773388999077776777802663022255533 88833777066666908335555550633094428099933 27770844330333444777777780899806777740927 7770777733668

@ShmooConPuzzle hints:
8:18PM Fri: Some bricks have numbers!
7:09AM Sat: When solving Flip Out do not cell yourself short. Press on and call it like you see it.
9:36AM Sat: How is Flip Out going? A lot of teams stuck there it seems. How many different digits do you see? Press 0 for assistance.

######################################
######################################
######################################

And the answer is... They're numbers from a phone keypad. This was also solved in the single-track of talks on Friday. If you translate each of the numbers into the possible letters it represents, you can work out the message:

"UR pretty smrt and clever now tell me what year the first txt msg was sent"

1992.



Codename - Solved 6:10PM Friday


@ShmooConPuzzle hints:
12:29PM Sat: Codename: The picture looks similar to one you have seen, are they DIFFerent?

######################################
######################################
######################################

This was a bit more puzzling. The image is a slightly corrupted version of the banner image at shmoocon.org this year. At the very end of this version, there is actually some ASCII data, visible by simply dumping the image into a text editor, that reads

-.. --- - -.. --- - -.. .- ... .... / -.. --- - -.. --- - -.. .- ... .... / -.. .- ... .... -.. --- - -.. --- - / -.. .- ... .... -.. --- - -.. --- - / -.. --- - -.. .- ... .... -.. --- - -.. --- - / -.. --- - -.. .- ... .... -.. --- - / -.. --- - -.. .- ... .... -.. --- - -.. --- - / -.. --- - -.. .- ... .... -.. --- - / -.. .- ... .... -.. --- - -.. --- - -.. --- - / -.. --- - -.. .- ... ....

Clearly that's Morse code, so if you translate it you get

DOTDOTDASH DOTDOTDASH DASHDOTDOT DASHDOTDOT DOTDASHDOTDOT DOTDASHDOT DOTDASHDOTDOT DOTDASHDOT DASHDOTDOTDOT DOTDASH

Ha. OK... Clearly that's Morse code, and when you translate it you get

UUDDLRLRBA

This is "Konami Code" which turned out to be the answer!



Stop - Solved 6:46PM Friday



######################################
######################################
######################################


And the answer is... resistor color codes. Use this chart as a reference to the numerical value that each resistor band color code maps to. Once you have that, it's as simple as going through each column in the Stop table and mapping that color to a resistor color code. So... It starts out "red orange blue green brown red brown red..." That is the resistor numerical equivalent to 23051212. Group the numbers into pairs and you get 23-05-12-12. Take the simple substitution cipher where 01=A, 02=B, etc and you get W-E-L-L. Keep going with that throughout the whole page and you get the message: "Well done. It looks like you passed electronics one hundred and one."


Football - Solved 11:38PM Friday



######################################
######################################
######################################

It's funny how we can sometimes look at a puzzle, think to ourselves, "that's this", and then put it aside and forget about it for half a day. Arguably, this could be the first one for which we had the correct idea.

Synchronous communications often have clock (very predictable pattern that both the sender and receiver can reproduce) and a data waveforms. The idea is that on the rising or falling clock edge, or at the center of the peak or trough, you poll the data waveform and interpret it as a digit. If you poll at the center of the peak here, you get

Binary: 0100110101001111010011110100001101011001010000110100110001000101
Hex: 4D 4F 4F 43 59 43 4C 45
ASCII: MOOCYCLE

Pretty straightforward.



Port - Solved 12:11AM Saturday

original:
What is

updated:
What is
@ShmooConPuzzle hints:
4:11PM Fri: Port Puzzle image has been updated for clarity. :)
8:19PM Fri: Port: Have you see the port icon's dot arrangement anywhere?
12:09PM Sat: Port: Good Shmoos always eat their serial!

######################################
######################################
######################################

The image is a waveform from a serial port. Googling "serial port outputs" gave us waves that looked like what we were seeing in the puzzle. From what we understood, it looked like what we were seeing could be ASCII characters transmitted along a serial port. The protocol is something along the lines of, "There's a start bit, a 7 bit encoding of an ASCII character, and then and end bit. So you divide up the wave and read off 0110001, 0101011, 0110001, which gives you "1+1". The question asks "What is...", so the answer is 2.

7-bit codes are weird because of the way that computers are built now, but apparently that's all the ASCII standard requires, and it came from a time when this sort of thing was still in question.



Polymorph - Solved 1:49AM Saturday


@ShmooConPuzzle hints:
1:34PM Sat: Polymorph: show your truecolors and remember to factor in the size of the image to resolve the hidden message.

######################################
######################################
######################################

This one was quite tedious. The original file is a bitmap, clearly corrupted in some way. The barely-legible repeated word "Good!" and slanted nature of the upper section suggested that perhaps something had been done to the dimensions in the header. We used this site to figure out where in the header the dimensions were stored, popped it open in a hex editor, and started messing with it.

The width and height start with the 19th byte. If you reverse the nibbles in the 19th byte and reload the image, here's what you see:


Then it got painful. We needed to adjust both the width and the height, but most adjustments were nowhere near legible. After an enormous amount of trial and error, we got these width+height/image combinations:

40020000 2C010000

D0020000 2C010000

00030000 2C010000


From which we pieced together

THEY ARE
NECK & NECK
BUT THE
MOOSE WINS
BY A NOSE!

Hex editors are excellent sleep aids. By now those of who hadn't already passed out went to sleep. Zzzzz...
But not for too long.



Get On Track - Solved 9:41AM Saturday

Badges

There were five unique conference badges: two different green attendee badges, red staff badges, yellow sponsor badges, and blue speaker badges. They had some dots on the top, which was the only meaningful difference between them.





@ShmooConPuzzle hints:
8:25PM Sat: Don't turn a blind eye to get on track. Feel what's in front of you and don't veer off the rails.


######################################
######################################
######################################

Obviously the dots are Braille, but when you decode them you get gibberish:


But a couple of us are familiar with some classical ciphers, and the icon looked like a rail. They hinted more strongly at the "rail" thing in a tweet. Turns out it's a rail fence cipher, of the zig-zag variety. Order and space them like so to solve:
FIRSTLEGCOMPLETELOOKWITHYOURHANDSATTHEKEYSTHENSCANTHEBITSTOADVANCEX



Zap - Solved 10:32AM Saturday



######################################
######################################
######################################



We actually figured out what this was by dragging it into Google Image Search, which returned results for "Telex punched tape", and after a bit more googling, we found the Baudot code and were able to decode it:

Welcome to Shmoocon 2016, Less Moose Than Ever%

In puzzle contests, Google is your best friend.



Phasor - Solved 12:06PM Saturday

??? [ that is, there were three question marks where there should have been a clue ]

There were also some interesting looking waves decorating our programs and on the signs outside each of the break-out rooms at the con:

From the programs:


From signs:









@ShmooConPuzzle hints:
8:43PM Fri: [Reply to "Any clue's for Phasor?"] Have you asked Google?
9:35PM Fri: We are about to sine off for the night. Please don't ASK about Phasor anymore.
3:39PM Sat: Looking for phasor hints? Look for the sines signs?

######################################
######################################
######################################


We needed the hints on this one. "ASK" was the important one, though we got stuck trying to interpret it as amplitude-shift-keying for a while. It turns out that the waves are digital signals encoded with Binary Phase-Shift Keying (BPSK):


When you decode the waves, you get two characters per wave (replacing spaces with _ so you can see it):

I_
nt
o_
de
_m
cl
_t
cy
bi
y_
ri
e!

We actually missed finding a wave there somewhere, but it doesn't really matter. We were able to assemble these into "I want to ride my bicycle!" just fine.



Toyota - Solved 7:43PM Saturday

BDB6BCA6BCB3B5538938B26CF1503617C9236C0
9D855F7C1A2831944BDB9BCAA5D243EB2323D3E
37F2A92D8606D324B3CADD892002ACEE38B61F7
D236EB5F8552C3DA384B344543EBCA6BCB3BABD

@ShmooConPuzzle hints:
2:28PM Sat: Toyota: use the hint from Get On Track literally.
2:33PM Sat: Toyota: there are two parts to this. You will know you have completed the first when it looks like you failed.
3:08PM Sat: Remember hints that are given out to a team are not Exclusive Or meant to give one team an advantage.
3:33PM Sat: Toyota step 2: x = y = sqrt(len(bin)+1)

And the solution to Get On Track (above) was meant to be a hint to this puzzle.


######################################
######################################
######################################

This was the hardest puzzle for us. The clue from Get On Track was FIRST LEG COMPLETE LOOK WITH YOUR HANDS AT THE KEYS THEN SCAN THE BITS TO ADVANCE X, and we spent ages puzzling over this, trying to come up with something reasonable. Without the hints, we would never have solved it.

Anyway, "Look with your hands at the keys" was supposed to mean look at our badges and think, "ah, the key must be 'BICYCLE'"! Sure. So you XOR (that hint from Twitter was handy here) BICYCLE with the hex characters of the puzzle. Then what you've got is a bunch more gibberish, but here's where it gets cool.

The first characters we got out of the XOR were 0xFFFFFFFFFFFFFF, so... all whited out. Their other hint: "...then scan the bits to advance" (the X at the end was just padding) plus their "Toyota step 2: x = y = sqrt(len(bin)+1)" tweet suggested that we lay the bits out on a grid and hope for a QR code. Charles to the rescue with some Ruby ( https://gist.github.com/cstrahan/bd75dcc2c72c31fea93e ). It was pretty fun because we started out using "bicycle" instead of "BICYCLE", and because ASCII lowercase and uppercase letters are just a linear translation away from one another we could kind of see the mangled QR code, and had to figure out what was wrong. When we uppercased, it jumped out at us instantly and beautifully:


Which scans to produce

http://shmoocon.org/velo

Finally.

That URL just had this on it:

Jetsetter
ICOIDZFECRT,GAOHXHVIVVVVILGYUDRXJEDWIGQY

Ah, good, a clue for Jetsetter to replace its ???s.

At this point we got dinner and went to the Saturday-night party to relax a bit, listen to some nerdy stand-up, and... keep working on the puzzles.



Jetsetter - Solved 10:14PM Saturday

???

@ShmooConPuzzle hints:
5:54PM Sat: Keep the theme in mind the theme of this puzzle when completing Jetsetter.

And of course, the ??? got filled in with the solution to Toyota above.


######################################
######################################
######################################

We couldn't get reliable Internet access in the party, so like nerds a few of us grabbed beers and went to hang out in the lobby instead. We solved this one relatively quickly. The URL was /velo, which is French for bicycle. The theme of the conference was "Tour de Shmoo" or "Tour de France" or some such thing involving moose riding bicycles and a lot of French. So we did the obvious thing, and started discussing the puzzle in French accents.

A classical cipher with a French name is the Vigenère cipher, so it made some sense to try it on the Jetsetter letters. The second key I tried was "tourdefrance", which yielded "pour avancer, changer devitesse dans sequence", which Google Translate tells me means "to advance, in sequence, speed change".

Importantly, when we submitted Jetsetter, the organizers responded with a corrected translation:

"'To move forward, shift gears in sequence' use this translation for next stage."



Lying Pasta - Solved 12:26AM Sunday

MDVQ GWT NK QDGHU RPCJ GZ A AJEW QDBSQNQ GTHJ MBCC BNE QNDD JL OPH CIKRE



######################################
######################################
######################################

Things were getting scary here, because the organizers had tweeted that rpisec (our rivals) had already solved Lying Pasta and Equality, so we were behind.

We had tried to solve Lying Pasta several times earlier using some form of substitution cipher, because there are spaces, and that just screams substitution. Turns out it's not that at all. Darth Null, the constructor of many a ShmooCon puzzle before wandered by, and made us think a lot about pasta. Finally: Lying ~= fibbing, we're supposed to "shift gears in sequence", pasta comes from Italy, like a guy named... Fibonacci. We're supposed to shift each letter by its corresponding number in the Fibonacci sequence.

1 1 2 3 5 8 13... Actually, this blows up very quickly. Time to break out the Ruby again. First, though, notice that the first few characters done manually are looking good:

M+1 = N
D+1 = E
V+2 = X
Q+3 = T

Boring bits removed:

$> s = "MDVQGWTNKQDGHURPCJGZAAJEWQDBSQNQGTHJMBCCBNEQNDDJLOPHCIKRE".split(//).map {|ch| ch.ord - 'A'.ord + 1}
=> [13, 4, 22, 17, 7, 23, 20, 14, 11, 17, 4, 7, 8, 21, 18, 16, 3, 10, 7, 26, 1, 1, 10, 5, 23, 17, 4, 2, 19, 17, 14, 17, 7, 20, 8, 10, 13, 2, 3, 3, 2, 14, 5, 17, 14, 4, 4, 10, 12, 15, 16, 8, 3, 9, 11, 18, 5]

$> alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".split(//)
=> ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"]

2.2.1 :049 > s.each_with_index.map{|x,i| (x+fib(i+1)) % 26}.map{|x| alphabet[x-1]}
=> ["N", "E", "X", "T", "L", "E", "G", "I", "S", "T", "O", "U", "G", "H", "D", "O", "N", "T", "B", "E", "A", "F", "O", "O", "L", "P", "R", "O", "T", "E", "C", "T", "Y", "O", "U", "R", "H", "E", "A", "D", "A", "N", "D", "P", "L", "A", "Y", "B", "Y", "T", "H", "E", "R", "U", "L", "E", "S"]

2.2.1 :050 > s.each_with_index.map{|x,i| (x+fib(i+1)) % 26}.map{|x| alphabet[x-1]}.join("")
=> "NEXTLEGISTOUGHDONTBEAFOOLPROTECTYOURHEADANDPLAYBYTHERULES"



Equality - Solved 12:56AM Sunday

ZNPQHCWMFABGSUG KTSUMFKODMQUMEL DBILNQCHQBZNQFM
QMUNKSAMQQMULHE TBKOCHMLIKQMDPV DRNGFUYTRNPOBLW

Of course the previous leg's result is a hint for this one.


######################################
######################################
######################################

Still trying to catch up to rpisec, but there hadn't been anything about them winning, so we press on (which, of course, we would have done anyway, but with less moral).

The previous leg's result was NEXT LEG IS TOUGH DONT BE A FOOL PROTECT YOUR HEAD AND PLAY BY THE RULES. Play by the rules? There's one classical cipher that almost always makes an appearance in crypto contests, and it's called Playfair. But what to do for the key? We figured it was probably hinted, so what's striking in here that we haven't used yet? Protect your head. The key is "helmet".

Decrypting with those parameters yields "youplayedfairsoimustconfessthecakeisalieyoubestskipdessertthefinallegiseasyaskoaszlugsifex".



Piece of Cake - Solved 1:58AM Sunday

???

There was also this tantalizingly as-yet-unused bit of our program full of messages and people's names:

PVCOL RLNGO CNFRV BJZAS KDART HNULL SSQHA YJQOU LEGUK MZFUS
XFLOW ERSBY IRENE IONNY HTGSU HIVOS SHRVE IVWVV BRDIU VTBSV
HYHWE WTIWH ROHFA CWCMB EMCUJ VYENM AOGWN YHTGD TFGHT NYHIE
YTHEL SUVSE JHFSS YRYHX SDIFO HNEHK RAHEY GMARK RZWAI ZOHNF
LRQMO OSEHT FYHJS CLZHW OEYKK IEHPS GXBPI HWHLO SHHHB ADTAU
URBLC AWAKE NSRFX LOZUI OATOH MVFPV LTBXR THANK HEIDI QONSY
JZLSJ TWAIS FKHIM EAOVX MYGDC SAUCB PSONO HLOQX SMFIK KWLVN

######################################
######################################
######################################

The previous solution had been "you played fair so i must confess the cake is a lie you best skip dessert the final leg is easy as koaszlugsifex". What the heck is a koaszlugsifex? At least some things were clear, though: this puzzle involves pie. The cake is a lie? You best skip dessert? The final leg is easy as ______? Pie, definitely. Delicious, and also a number. But how to use it?

We spent an enormous amount of time thinking about "confess" (church? priests? confession, catholicism... Is there an especially catholic cipher...?) and portal because of "the cake is a lie" (is there a cipher really relevant to portal that would take pi as a key?).

"...you best skip dessert". At some point, one of our guys thought to try skipping through the unused text in the program by each of the digits of pi. If you start doing that you get "CONGRATS YOU..." Holy macaroni batman... better finish up quick...

"Congrats you finished the race now tell us in email the GPS address of this shmoocon xiin

CONGRATS YOU FINISHED THE RACE NOW TELL US IN EMAIL THE GPS ADDRESS OF THIS SHMOOCON XIIN

So we looked up the latitude of the Washington Hilton on Google Maps, and sent it in. So... we won? It's pretty dang early in the morning to be second-guessing ourselves, but... what the heck is a koaszlugsifex?




koaszlugsifex? - Solved 11:20AM Sunday

Don't worry, we did actually decide around 2:30AM or so to get some sleep. We went home thinking we'd lost, and came back the next morning early to keep attacking this final problem. We were encouraged to hear that rpisec hadn't solved it, but when we told them we didn't know what koaszlugsifex meant they said, "yeah, that's a fun one". More work to be done, it seemed.

Because knew we had gotten something significant out of the block of text in the program, we imagined several things that koaszlugsifex might mean, and tried to guess the cipher and key from that. The organizers had quipped the night before that the final puzzle was unusual, unlikely to be on rumkin.com (a puzzle site), so we were going through every obscure cipher we could think of looking for a decryption.

At 11:20AM in the Chill-Out room, however, they took pity on us and came over to tell us that we had won the night before with the GPS coordinate of the hotel. What was koaszlugsifex?

Consider the sentence it had come from:

"you played fair so i must confess the cake is a lie you best skip dessert the final leg is easy as..."


So we went and picked some locks to unwind and bask in our victory.
We won 3 tickets to ShmooCon 2017, and our pick of some sweet swag (I picked up Python For Kids) at closing ceremonies.

THANK YOU
  • Team Flowers By Irene, the organizers, for awesome puzzles and a sense of humor
  • rpisec for being a worthy rival, and right there with us all the way to the end
  • Decipher team for putting so much effort into this thing

See you there next year!

Evernote isn't a blog

Using Evernote public notebooks really flopped. No RSS, annoying pop-up for non-logged-in users, un-blog-like format. I did love being able to edit "posts" at-will without a lot of rigamarole, and I also loved the Evernote integration, so let's try this out for a while and see what it's like.

Postach.io apparently just watches a particular notebook for the "published" tag on a note, and then slurps it up onto the blog. Editing on the fly works, there's an atom feed, and I'm writing this from Evernote. Apparent success!

Imported my Tumblr blog

As you can probably tell, I've imported scratch.danielpcox.info so I could try out blogging from here instead. It's not really a blogging platform, but since I use Evernote pretty heavily anyway, it seems like a nice idea to occasionally just send notes for publication rather than pasting them into Tumblr. It also suits the concept for "scratch": unfinished thoughts.

the-emergent-picture-of-the-chief-figure-in-the

#
The emergent picture of the Chief Figure in the campaign, so far from being that of a high-souled teacher patiently indoctrinating the multitudes with truths of timeless wisdom, is rather that of the Strong Son of God, armed with his Father’s power, spear-heading the attack against the devil and all his works, and calling men to decide on whose side of the battle they will be.
A. M. Hunter, Introducing New Testament Theology
This was posted 1 day ago. It has 0 notes and 0 comments.
Christian, husband, puzzle-enthusiast, and CTO at Decipher. Opinions are my own.

archived posts

Moral Law => God ?

I’m reading Mere Christianity and The Fellowship, and just finished the part of the latter that discusses Mere Christianity. I’m thinking at the moment about Lewis’ argument from the Moral Law.

Does the Moral Law really have to have come from a personal being? Could it have evolved? If it serves some survival purpose, what is it?

Lewis also calls it the “rules of decent bahavior", which I like because it’s more descriptive and evokes the substance of the thing at a glance for me. The only survival advantage conferred by the rules of decent behavior is their contribution toward society, though they are imperfect at best at promoting society. (E.g., it might help society more if we simply executed all criminals, outlawed anything damaging to our health, and gave the former group’s property to proven contributors to society, but this would offend our sense of the moral law. Or am I just arguing from my own revulsion at that idea, since it does seem pretty common for people to believe in the greater value of people who contribute to society - their lives are considered to be worth more than others?)

Lewis is mostly talking about “oughts". You ought not to move my stuff and take my seat in a crowded theater when my back is turned. If anyone thinks that’s right, they feel compelled to explain why the usual rules don’t apply there, which is to acknowledge their existence. (Interesting that we also have a sense of the ways in which the rules might be suspended.) So can there be oughts without God? My knee-jerk reaction is to say yes, because oughts might just be part of a system evolved in us to promote the good of society, which is ultimately better at keeping our genes around than the alternatives. Groups of humans that cohere form civilized societies, and groups are better at survival.

One might ask at this point whether this argument isn’t too strong: Why don’t we all have the same opinions about everything, then? We would certainly cohere a lot better if we didn’t disagree. I think the answer there is that diversity is also essential to surviving unexpected events, so any truly resilient solution would have to balance diversity and unity, and this, it is postulated, is the source of our common understanding of the rules of decent behavior.

Lewis may be oversimplifying the “herd instinct" as he calls it. Impulses are uncomplicated in his view. I’m not sure he’s wrong either. He says herd instinct tells you to do right by your neighbor, and is one of several instincts we have, but that the moral law cannot itself be any of these because it sits in judgement upon them. This is intriguing. He treats them as notes on a piano, and the moral law as advising the piano player. But what if the moral law is just a more complicated instinct? He says that it can’t be because it’s not consistent, so to speak: it doesn’t always advise the same notes to be played. In fact, any of them can be regarded as “bad" by the moral law, and any can be regarded as “good", depending on the circumstances. This, he says, shows that the moral law is not itself an instinct.

I’m not sure. People have tried to write down the rules it follows, and in fact, this is how we teach one another what morality is and how to live by it. It is true though that none of its codifications feel like they capture the whole thing, and those that feel like they capture it better seem a bit vague, or mysterious (e.g., the Sermon on the Mount).

I’m reminded here of an argument I make for why we perhaps should be able to discover the workings of our own consciousness: that God has no parts and we are created beings, so therefore there must have created us by some means, and therefore we ought to be able to discover them. The relevance for the current topic is that similarly, if we are actually capable of following the moral law, we ought to be able to write it down.

An argument I have against my argument above is a common one with me: we may be, loosely speaking, part of God’s imagination, and therefore we don’t actually have to follow discoverable rules, since he’s infinite and therefore necessarily largely undiscoverable. It therefore seems possible that the rules of our own consciousness and the rules of the moral law both belong to the wider world of God’s infinite understanding, and that the discoverable rules of the universe make up a finite subset of the rest of God’s mind.

Anyway, back to the question of whether the moral law could simply be some useful behavior for survival, and therefore no evidence of God’s hand on us. It seems suggestive that I feel like I can’t just throw off the question with an “of course". Why not? Just because morality seems elusive as well as common and clear? To summarize Lewis, we all find in ourselves a common understanding of the rules of decent behavior, even accounting for our variations on the subject and for the fact that we often break them and excuse ourselves, and that it can’t itself be merely due to the herd instinct because it sits in judgment of the herd instinct. (And all others, deciding which of our instincts prompts we ought to obey: “But feeling a desire to help is quite different from feeling that you ought to help whether you want to or not.")

More quotes:

“The Moral Law tells us which tune we have to play: our instincts are merely the keys."

“If two instincts are in conflict, and there is nothing in a creature’s mind except those two instincts, obviously the stronger of the two must win… But at those moments when we are most conscious of the Moral Law, it usually seems to be telling us to side with the weaker of the two impulses… And surely it often tells us to make the right impulse stronger than it naturally is? I mean, we often feel it our duty to stimulate the herd instinct, by waking up our imaginations and arousing our pity and so on, so as to get up enough steam for doing the right thing. But clearly we are not acting from instinct when we set about making an instinct stronger than it is."

“If the Moral Law was one of our instincts, we ought to be able to point to some one impulse inside us which was always what we call ‘good’, always in agreement with the rule of right behavior. But you cannot. There is none of our impulses which the Moral Law may not sometimes tell us to suppress, and none which it may not sometimes tell us to encourage… Think once again of a piano. It has not got two kinds of notes on it, the 'right’ notes and the 'wrong’ ones… The Moral Law is not any one instinct or set of instincts: it is something which makes a kind of tune (the tune we call goodness or right conduct) by directing the instincts."

But, I think to myself, what if the Moral Law is the instinct to bring up the tune, plus the tune itself, and the tune has been bred into us through natural selection? What if the tune is encoded in our DNA, and its particular pattern cultivated by mutation and natural selection to improve our chances and give us an edge over other species and the environment?

Firstly, evolutionary arguments are either too hard or too easy to make. It’s quite easy to say that the moral law must confer some survival advantage, but quite hard to explain how. The engineer in my says that you shouldn’t claim to understand something until you can build one yourself.

Secondly, is it explaining or explaining away the very strong feeling that something is really wrong (e.g. genocide)? And once we’ve made that argument, that we only think it’s wrong because, e.g, we’re on the whole averse to anything that would reduce the genetic diversity of the planet by so much, why do we largely disbelieve that that excuses us from following it? Materialists disbelieve in the evil of genocide, but feel very strongly compelled to make arguments against it on other grounds. I think this is double-talk: It’s not wrong (because there’s no such thing as right and wrong) but you shouldn’t do it anyway.

On that note, if Mind really is a fundamental thing about the Universe we live in, and not merely some late emerging property, how would we even go about convincing ourselves of it? Couldn’t we always come back to saying, “well, I just feel that way because I am a mind and naturally want to turn everything else into one."

At this point, it just seems more honest to me to say that the Moral Law and Mind in us really are pointers to something fundamental about the Universe. I can understand a distate for the thought, since it seems unapproachable in the way that we’ve grown used to approaching things since Science came on the scene. It also seems a bit inelegant once you’ve tasted the beauty of mathematics and physics. But when I’m not troubled by this, it’s because beauty itself is supposedly rooted in God, and a pointer to him.

To make that a bit more precise, God is simple. He has no parts. All that is good and right in the world is a projection into the finite and multidimensional what to him is infinite and singular. Hard to explain quite what I mean, but I’ve heard it said that we talk of God having characteristics and aspects like we seem to, but in actuality he is a single, simple… Someone. Elegant and beautiful not even at an extreme, but fundamentally. Elegance Himself.

When am I allowed to just give up and believe these things? I run myself around in circles, and even come back to the same conclusions again and again. God is who he is. Mind came before Universe. It’s just the best explanation in a world of uncertain explanations. Perhaps I distrust it because I feel like a creature of supernatural meaning and purpose, and the world feels created. Or perhaps I distrust it because I often feel like a meaningless, accidental creature in a cold mechanistic Universe.


For the moment, though, I’ve convinced myself. I wonder if the spark of belief here can be fanned into flame. As I say often, God has much more to do than merely exist, so whatever effort I’ve already expended, if I conclude that he’s there, my work has only just begun.

Encrypted creds in Leiningen for Maven/Nexus/Archiva repos

Leiningen can use credentials for an artifact repository stored in a GPG-encrypted file. Make ~/.lein/credentials.clj, fill it with the following,
{#"url-to-match.com" {:username "username" :password "password"}}

encrypt it with gpg,

gpg --default-recipient-self -e \
    ~/.lein/credentials.clj > ~/.lein/credentials.clj.gpg

delete the original,

rm ~/.lein/credentials.clj

and then refer to it in your project.clj like this:

:repositories [["releases" {:url "https://url-to-match.com/repository/internal"
                            :creds :gpg}]
               ["snapshots" {:url "https://url-to-match.com/repository/snapshots"
                             :creds :gpg]]

https://github.com/technomancy/leiningen/blob/master/doc/DEPLOY.md#gpg

I had a bit of trouble at first connecting to gpg-agent, but solved it by putting this in my shell startup script (~/.zshrc for me):

gpg-agent --daemon --enable-ssh-support \
  --write-env-file "${HOME}/.gpg-agent-info"
if [ -f "${HOME}/.gpg-agent-info" ]; then
   . "${HOME}/.gpg-agent-info"
  export GPG_AGENT_INFO
  export SSH_AUTH_SOCK
  export SSH_AGENT_PID
fi

GPG_TTY=$(tty)
export GPG_TTY

https://gpgtools.tenderapp.com/discussions/problems/4133-how-do-i-automatically-start-gpg-agent-for-use-with-ssh


Play


I was just thinking to myself yesterday that play is extremely important. The best people in any creative vocation seem to be the playful ones: those people who enjoy messing around with new (to them) ideas. Tinkerers, explorers, experimenters, dabblers.

There are two kinds of play, and both are important, but they exist in a tiny hierarchy of usefulness, and the lower kind of play is strictly less useful than the higher kind.

The lower kind of play is merely to recharge, and the activity itself doesn’t leave me enriched in any real-world way once I’ve disengaged. For me, video games and candy books (merely fun page-turners without insight or other take-aways) fall into this category. They’re _extremely useful_ for when I cannot make my mind focus,

The higher kind of play is still undirected and without deadlines, so it still _is_ play, but there are take-aways. A good example would be biographies, which are extremely entertaining to me, but also require more brain power than candy books. From biographies I take away inspiration and perhaps some advice in a useful form (demonstrated human behavior). Tinkering with electronics or software projects or _anything_ really that captures my curiosity leaves a residue of value after I’m done.

I think I should never engage in low play when I’m capable of high play, or I’m just wasting an investment. Time is precious, and play (both kinds) is important for maximizing it.


Apollo Computer Science


At the start of the Apollo program, the onboard flight software needed to land on the moon didn’t exist. Computer science wasn’t in any college curriculum. NASA turned to mathematician Margaret Hamilton, of the Massachusetts Institute of Technology, to pioneer and direct the effort. With her colleagues, she developed the building blocks for modern “software engineering," a term Hamilton coined. What later became the foundations for her Universal Systems Language (001AXES) and Development Before the Fact (DBTF) formal systems theory, allowed the team to create what she called ultra-reliable software for the moon trip. In addition to creating the concept of priority displays, where the software in an emergency could interrupt the astronauts so they could reconfigure in realtime, Hamilton established hard requirements on the engineering of all components and subsystems, insisted on debugging all component and testing everything before assembly, then simulated every conceivable situation at the systems level to identify potential problems before releasing the code.

“There was no second chance. We all knew that," Hamilton said. “We took our work very seriously, but we were young, many of us in our 20s. Coming up with new ideas was an adventure. Dedication and commitment were a given. Mutual respect was across the board. Because software was a mystery, a black box, upper management gave us total freedom and trust. We had to find a way and we did. Looking back, we were the luckiest people in the world; there was no choice but to be pioneers; no time to be beginners." Hamilton’s integrity and ability to balance fearlessness with attention to detail may have ensured Apollo 11’s success.


i-dont-know-what-a-business-is


I don’t know what a business is. All a company is is a bunch of people together to create a product or service. There’s no such thing as a business, just pursuit of a goal—a group of people pursuing a goal.
Elon Musk