How Much Is Enough

I was driving back from lunch with a friend today thinking about Swift, its strongly-typed nature, and the arguments I've heard about why strongly-typed is so much better. I do not know how to explain my position very well to someone else because a lot of it is subjective.

But then I remembered a poem I've seen at Jimmy Johns.

The American investment banker was at the pier of a small coastal Mexican village when a small boat with just one fisherman docked. Inside the small boat were several large fin tuna. The American complimented the Mexican on the quality of his fish and asked how long it took to catch them.

The Mexican replied, "only a little while."

The American then asked why he didn't stay out longer and catch more fish?

The Mexican said he had enough to support his family's immediate needs.

The American then asked, "but what do you do with the rest of your time?"

The Mexican fisherman said, "I sleep late, fish a little, play with my children, take siesta with my wife, Maria, stroll into the village each evening where I sip wine and play guitar with my amigos, I have a full and busy life."

The American scoffed, "I am a Harvard MBA and could help you. You should spend more time fishing and with the proceeds, buy a bigger boat, and with the proceeds from the bigger boat you could buy several boats. Eventually, you would have a fleet of fishing boats. Instead of selling your catch to a middleman you would sell directly to the processor, eventually opening your own cannery. You would control the product, processing and distribution. You would need to leave this small coastal fishing village and move to Mexico City, then LA and eventually NYC where you will run your expanding enterprise."

The Mexican fisherman asked, "But, how long will this take?"

To which the American replied, "15-20 years."

"But what then?"

The American laughed and said that's the best part. "When the time is right you would announce an IPO and sell your company stock to the public and become very rich, you would make millions."

"Millions?" asked the fisherman, "Then what?"

The American said, "Then you would retire. Move to a small coastal fishing village where you would sleep late, fish a little, play with your kids, take siesta with your wife, stroll to the village in the evening, sip wine and play your guitar with your amigos!"

I'm the Mexican fisherman and you're the American telling me how great strongly typed languages are.

How Much Is Enough

Striving for Simplicity

When I was working on the my new blog layout, I had two primary goals in mind:

  1. Cleaner feel with better functionality
  2. Seamlessly integrate with the tools I enjoy

Tidy up the Mess

I think I've captured #1 well enough, for my tastes anyhow. I know that there are bugs in the site layout1, but in the spirit of my "ship early and ship often mantra", I think it's more important for me to get the results that are "good enough" out there so that I can improve the things that matter and to catch issues that I simply will not run into2.

Workflow Improvements

Another way to capture this is: "quality of life improvements".

My writing tool of choice is Ulysses. I think it's great. It offers nearly everything I want in a Markdown editor. However, I write technical content with code snippets. My previous workflow was a bit terrible:

  1. Write the initial post in Ulysses
  2. Apply the kramdown syntax using Brackets
  3. Run jekyll serve -w to view my blog update
  4. Go back to step 2 for any edits

You see, once I move from step 1 to step 2, I cannot actually use Ulysses to do the editing anymore. Some of this is because of quirks with the app, others because of limitations of not supporting the kramdown syntax, or fenced blocks well.

But here's the thing: I really like Ulysses and using that tool is more important.

So, with the new blog design, I set out on how I can remove step 2 from the process. It's going to be just me and my editor. I know exactly what the markdown should look like in Ulysses, so there is no need to "preview" the pages anymore. Simply write, edit, and push. Done.

Optimize for You

The moral of the story is quite simple: optimize for the things that are important for you. When you do that, realize that you need to make compromises in other areas.

That's OK.

Here's a sample of what my new layout should look like for a full content blog post:

With one exception, I am able to achieve all of what I want with standard markdown3. I find that very liberating4.

  1. Especially in IE11… oh man is that a train wreck. It's probably just some CSS prefix I forgot, I'll get to to it. =)
  2. I run with the OS X setting of "Show scroll bars: When scrolling" option. This means I never see those large fat scroll bars, even when I have an external mouse plugged in. Of course, others run with a different option and that exposed some bugs in my design.
  3. The actual standard…
  4. If you're interested, the exception is the need to apply a specific class to the blockquote I use for image captions. I cannot figure out how, with CSS only, to select that nested blockquote and style it how I want.
Striving for Simplicity

Migration from Medium

Well, today is finally the day I’m announcing my departure from and migrating to my own blog being hosted over at GitHub Pages. There are many reasons for the transition, but the big ones come down to:

  1. Medium is simply not a very good platform for technical blogs. Code samples are too hard to do and the gist support is a joke.
  2. It seems every time I log in to start writing a new blog, the interface has changed; and seldom for the better. I do not want to have to learn how to use the editor every time I want to write a blog.
  3. Better control over what my site and content looks like.

So with that, good-bye Medium, hello

Migration from Medium