Good Deed for the Day

I was heading to pick up dinner when I noticed a guy bumming money from anyone walking by. He started walking in the same direction I was going, just ahead of me.

I watched as he approached an elderly lady. She was at least ninety. He asked her for money, and she was startled by him. Then he noticed she had money in her hand.

He grabbed the money and started to walk away quickly.

I yelled at him, “HEY! WHAT ARE YOU DOING?!?!? GIVE HER BACK HER MONEY!”

He looked surprised. He immediately gave her money back.

I was in disbelief. I asked him, “why would you do that?”

He said, “I need money for beer.” Then he walked away.

I called 911 and asked them to drive around the neighborhood and look for the guy. He is an older white man with a white beard and looks homeless. This happened at Scott & Chestnut by Hole in the Wall Pizza around 8:30pm.

The lady stayed with me until the guy left. She told me she has lived in this neighborhood for a hundred years and had never seen anything like that.

Introducing DDD

One of my goals during this downtime is to work on a fun programming project and try to get it into a demo-able state. I am currently working on a project I call “DDD.”

I wanted a simple, short name that sets the focus of the project. Originally, I called it “3D.” I wanted to use the project name as the namespace for the project. The namespace must start with a letter, not a number. So how do you express “3D” starting with a letter? I could go with “ThreeD”, “Three-D”, “TD”, “IIID”…. but none of those felt right. Then it occurred to me that “3D” is equivalent to “DDD”. I like that it is a single character 3 times: easy to remember, easy to type, short.

So what is DDD? DDD is a command line tool to import/modify/view/export 3D data. Another way to put it…

ImageMagick is to Photoshop as DDD is to Maya

I want this project to work on Windows, Mac, and Linux.

Above you can see the logo I created for the project. I wanted the logo to imply 3D without drawing any 3D text. If you cover an eye, your brain uses other queues to determine depth. I tried to use several of those queues…

  1. Distant objects are smaller
  2. Distant objects are lighter
  3. Distant objects are closer to the horizon
  4. Distant objects have less detail
  5. Distant objects are overlapped by closer objects
  6. Linear perspective/vanishing point

Got the name.
Got the logo.
Next up: make it work!

More soon.

What I use: Text Editor

My previous choice for text editor was Sublime. I paid for it. I liked that I could learn one text editor and use it on Windows, Mac, and Linux. It came with dark mode by default and looked good.

Then Visual Studio Code happened. VS Code works on Windows, Mac, and LInux. It has a dark mode by default. AND…it is free and open source.

The pace of development is amazing. New features are released every month. It is hard to keep up with all the goodies they cram in.

When you start VS Code, it comes lean without any plugins. As you open different file types, you get recommendations to install plugins that will improve the experience for that particular file type. Just click “install” on the recommendation and the plugin is installed and enabled very quickly.

Here are the plugins I am currently using…

If you look at the most popular plugins, the top plugin is Python with 18 million downloads…

If you look at the Stack Overflow Developer Survey for “Most Popular Developer Environment,” Visual Studio Code is tops and growing quickly….

Year% of respondents that choose Visual Studio CodeRanking against all developer environments
201950.7%1st
201834.9%1st
2017 (calculated from original source data)19.0%6th
20167.2%13th

I use VS Code for Python, PowerShell, and C# development. I highly recommend Visual Studio Code.

Mini-Review: Song of the South

You know the music (Zip-A-Dee-Doo-Dah), but have you seen the movie Song of the South? Probably not. The movie has not been released to home video in the US out of fear of accusations of racism. It has been released to home video in European and Asian markets though. I bought a non-US DVD and watched it last night for the first time.

The mixture live action and animation is well done. It is hard to believe this was done in 1946. The music is great. Story was a little slow. I did not see any racism. I am glad I got to finally see it so I can have my own opinion about it.

2.5/5 Stars

Mini-Review: The Hunt

Even though “The Hunt” came out in theaters less than a month ago, it is streaming now $20. I watched it last night. I was afraid at first it was going to be overly political…it isn’t. It was a fun film to watch with some surprises.

3.5/5 stars

The Best (analog) Notebook

I prefer taking notes in meetings using paper/pen. I did some research and found the perfect notebook: The Oxford Black n’ Red Wirebound Notebook.

What I like about it…

  • Opens flat so you can write on two pages
  • Can store a pen in the wire binding
  • Paper is thick enough so that you can write on one side and the other side still looks blank
  • Elastic red band to use as a bookmark when closed
  • Protective plastic front and back covers
  • 5 3/8″ x 8 1/2″ size…small enough to easily carry around, but big enough to write notes
  • Perforated pages are easy to remove cleanly
  • 70 college ruled pages
  • Distinctive look: all have black cover with red binding, red elastic band, red title
  • Cost: $9.65 at Amazon

Long Paths on Windows

When you create a file path with Windows, you are limited to a length of MAX_PATH, which is defined as 260 characters.

That limitation was removed in Windows 1607 (Anniversary Update) released in July 2016. Now you can have a path with 32,767 characters. Each component of the path (directory/file name) can be at most 255 characters.

To enable long paths, open a PowerShell window and type:

sp HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem LongPathsEnabled 1

The setting will apply to any process started after you enable long paths.

Let’s see this in action. This PowerShell script takes the opening crawl of Star Wars and creates a directory for each line. Open a new PowerShell window to ensure you have the long paths enabled setting. Copy and paste this script:

$crawl = @"
LONG_PATH_TEST
Episode IV
A NEW HOPE
It is a period of civil war.
Rebel spaceships, striking
from a hidden base, have won
their first victory against
the evil Galactic Empire.
During the battle, Rebel
spies managed to steal secret
plans to the Empire's
ultimate weapon, the DEATH
STAR, an armored space
station with enough
power to destroy an entire
planet.
Pursued by the Empire's
sinister agents, Princess
Leia races home aboard her
starship, custodian of the
stolen plans that can save
her people and restore
freedom to the galaxy...
"@
$crawl -replace "[.']", "" -split "\n" |%{$d = $_.trim(); md $d -f; cd $d}
write-host "PATH LENGTH IS $((pwd).path.length)" -ForegroundColor Green