Friday, August 17, 2018

macOS Screenshots and the Touchbar

tl;dr  If you change the screenshot destination setting to anything besides Desktop on the Touch Bar it will override the default behavior of the keyboard shortcut and use your setting from the Touch Bar.

I recently got a 2018 13" MacBook Pro with the Touch Bar and it has been an amazing machine.  At first I didn't really love the Touch Bar, but the more I try to use it the better it gets.  The idea of replacing those old function keys with a dynamic display is smart, although I would prefer a physical button for the escape key. 

I was taking a selection screenshot (command-shift-4) today and noticed that the Touch Bar had a couple options on it for the destination of the image (Desktop, Documents, or clipboard) and the thing to capture (selection, window, screen).  I always struggled with the keyboard shortcut for copying to clipboard (ctrl-command-shift-4), so I was delighted to be able to trigger the "file" destination shortcut, but change it to the clipboard using the Touch Bar.

Fast forward to later in the day... I was using an external monitor with the MacBook closed and tried to do a selection screenshot (command-shift-4).  I selected the area to capture, let go and waited for the file to appear on the desktop, but nothing happened.  I tried again, but tried pasting into Messages and to my surprise the image showed up.  Turns out if you change the screenshot destination setting to anything besides Desktop on the Touch Bar it will override the default behavior of the keyboard shortcut and use your setting from the Touch Bar.

In order to change it back you have to get the screenshot controls to appear on the Touch Bar and set the destination to Desktop.

Saturday, June 23, 2018

Iceland in a Couple Days

If you find yourself in Iceland for a couple of days here are my recommendations based on my trip there in 2014.

Blue Lagoon

If your time is very limited the closest attraction to Keflavik airport is Blue Lagoon It is a little pricey, but is an amazing and unqiue experience.

Downtown Reykjavik

The next closest attraction is downtown Reykjavik main shopping area, Laugavegur street. It is about a 40 minute drive from the airport and has lots of shops and a few different attractions. I highly recommend a little bakery called Sandholt. The food was great and it ended up being our go to place for starting our day.

The other stop we made each day was for coffee, of course, and the best place we found was Reykjavik Roasters. The espresso was fantastic and their croissants were very tasty.

While wandering downtown you should walk out to the harbor and check out the modern looking Harpa Concert Hall

Up the hill from the harbor is a statue of Leif Eriksson next to the Church of HallgrĂ­mur

Finally, if you happen to be downtown in the evening or late night you should check out the amazing hot dogs at Bæjarins beztu pylsur.

Golden Circle

Besides the Blue Lagoon the second thing you are most likely to hear about Iceland is the Golden Circle. It is a tourist loop that starts near Reykjavik and takes people to several different geologically significant features.

One of the attractions on the northern end of the loop is Gullfoss. It is a huge waterfall with a great visitor center and a nice lunch spot.

Heading back towards Reykjavik on the loop you will come to Geysir. It is a pretty small area with several different hot spring related features include a couple different geysers and multiple boiling mud pits. Here is an image of one of the larger geysers.

One of my favorite stops on the Golden Circle was Althing in Thingvellir National Park. It is the boundary of the North American and European tectonic plates and makes for some dramatic terrain.

Southern Iceland

If you choose to skip the Golden Circle, but want to check out something slightly less touristy head a couple hours east of Reykjavik towards Skogar. The road there will let you experience many different types of terrain you will find in Iceland. After driving across a long flat plain you will see your first big waterfall, Seljalandsfoss. It is a great place to stop and take some photos before continuing along the shore in front of one of the large glaciers on the island.

A little further east of there is the waterfall you have probably seen in every video about Iceland, Skogafoss It is huge and has a long staircase you can climb to get to the top of it. However, if you have some extra time once you are at the top of the big waterfall you can climb over a little barrier and follow a hiking trail that follows the river uphill with some amazing views of some smaller waterfalls.
Finally you will arrive at the Skogar Museum, where you can learn about Iceland and explore some classic Icelandic structures.

Assorted travel tips:
  • The exchange rate at the time of this post is about 108 Krona to 1 dollar, so just drop the last two numbers of the krona price to get a comparable dollar value. 500 krona pastry would be 5 dollars.
  • We rented a car so we could “choose our own adventure”, but there are many tour groups that can take you to all of the above attractions.
  • Most people speak English, but as always it helps to learn some words, Icelandic Phrasebook

Thursday, April 19, 2018

Creativity Drought

Over the last couple years I have spent a lot of spare time working on various creative projects including this blog, setting up and hosting my own website, drone videos, and the Kilobyte podcast. They each managed to challenge me in different ways, whether it was finding the right equipment for podcast recording, learning about setting up a Linux server, or understanding how to build and pilot a quadcopter. It was also difficult trying to find enough time in my schedule to work on each thing in a meaningful way. Somehow I managed to find the time and was quite happy with my first pass at all of it.

Going into this year I hoped to adopt a yearly theme as was discussed on Cortex #62: 2018 Yearly Themes. The basic idea is to find a theme for the year (or season) and use it as a guide for decisions throughout the year rather than setting a bunch of goals for the year you are likely to break. I spent several days thinking about the past year, what I had accomplished and the direction I wanted to head for the upcoming year. It was really important that I build on the previous year’s learning, but step it up in some way. Initially I was leaning towards creating content more consistently, but I think before that I need to make it easier for me to actually create and post the content.

I was getting close, but just as I started to narrow down on a theme something happened and I got distracted. It is hard to say for sure what happened, but my creative output went down to zero. Thankfully I have recognized it and have started down the road to correcting course. Here is my first step in creating more content again with hopefully more to come soon.

Thursday, April 12, 2018

MacOS, Maven and Tilde Folders

I recently set up a new MacBook Pro for development and installed some developer tools like Java and Maven.  After checking out my source code from Subversion and building it using Maven a folder with the name tilde (~) appeared in the same directory as my source code.  I deleted the folder and a little while later I noticed it was back.  After some digging around I found that setting the path of my local maven repository in my settings.xml file so it started with a ~ for my home directory was the problem.  Every time I ran a build it was trying to put a new local repository in a tilde directory of the working directory.  After updating the path to use /Users/{username} it stopped creating the tilde folder.

Monday, February 26, 2018

Angular CLI Upgrade 'Cannot find module' Error

Every couple months I try to upgrade to the latest version of the Angular CLI and every time I run into this error.

Cannot find module 'webpack/lib/dependencies/ContextElementDependency'
Error: Cannot find module 'webpack/lib/dependencies/ContextElementDependency'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (C:\Users\\node_modules\@ngtools\webpack\src\plugin.js:8:34)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)

Every time I realize I miss a step so I want to document the steps I ended using so I don't have to search for the solution again.  All the steps below are recommended by the Angular CLI Upgrade page, except the highlighted step below that removes the package-lock.json file.

Global install upgrade
NPM will keep a globally installed version of the Angular CLI that will be used across the system. It is updated using these steps, which will uninstall the current version and then install the new version.

npm uninstall -g @angular/cli
npm cache verify
# if npm version is < 5 then use `npm cache clean`
npm install -g @angular/cli@latest

Local install upgrade
The Angular project itself will have its own version of the CLI installed in the node_modules folder of the project.  It is updated using these instructions, which will remove the node_modules directory, update the version of the dependency in package.json and then reinstalls all the dependencies.  

rm -rf node_modules dist 
rm package-lock.json # deletes the package.json lock file
npm install --save-dev @angular/cli@latest
npm install

Friday, February 2, 2018

Windows 10 Hyper-V and Samsung 960 SSD Issue

I was following these great instructions, How to Create a Linux VM Using Hyper-V and when I got to the part where you actually create a new VM the computer frozed and restarted.  I tried this a couple more times with the same result.  I did a quick Google search and found this, Microsoft Forum Discussion on Samsung NVME Driver Issue .

In summary there was an issue with the Samsung Storage Controller driver version 2.1 that was causing the OS to crash when creating a new VM using Hyper-V.  You can check your current driver version by
1. Go to Start
2. Search for Device Manager
3. Expand the Storage Controllers node in the Device Manager
4. Double click on Samsung NVMe Controller to launch the details
5. Go to the Driver page and look at the Driver version.

The good news is that Samsung has released a fix for the issue with version 2.2 which you can download directly from Samsung at http://www.samsung.com/semiconductor/minisite/ssd/download/tools.html (just go to the Driver section for the installer and instructions).

After running the installer and restarting my machine the Hyper-V Manager successfully created my new VM.

Tuesday, January 23, 2018

An iOS Laptop

The one device I would like Apple to release in 2018 is a laptop that runs iOS. I have been thinking about this a lot since reading Jason Snell’s piece at MacWorld, Why Apples Next Laptop Should Run iOS and the related discussion on Upgrade #168: Hail Hydrant. The addition of the Files app and better multi tasking in iOS 11 has made the iPad an even better alternative for those looking to get rid of their Windows or Mac laptop. However, I haven’t seen a lot of people switching out there laptops for an iPad, but instead moving towards Windows or Chrome OS convertible devices. I think the tablet form factor of the iPad combined with some out of date understanding of the capabilities of iOS coupled with the adoption of Chromebooks in schools is keeping people from making the switch.

It seems strange, but I think one of the big things keeping the iPad out of the conversation is the tablet form factor. If a person is looking to replace their old laptop or desktop they look at the iPad and it just does not seem like a replacement because it is perceived as just a tablet. They may see the Smart Keyboard attached to it in the store, but that is just an accessory for a tablet. People seem to have an association with the first class keyboard and a “main” computing device. The laptop form factor provides an extra level of comfort and consistency users may not feel with a tablet. The Smart Keyboard is also limited to being used on hard surfaces, which might also turn some people off.

The next thing holding back the iPad as a person’s main computer is the misconception that you can’t do a lot of “computer” things on them. It is probably just a hold over from the early days of the iPad when it was the next big thing and not only was the operating system pretty limited, but the quality of apps in the app store was also very low. Most people held on to their iPad 1 or iPad 2 for several years and never got to experience the more powerful iPads of the last few years or the new crop of apps that pushed the limits of tablet computing. If it was not for the last two years of daily iPad use and hours of podcasts helping me retrain my brain to work with a different style OS, I might also disregard the iPad Pro too.

Chromebook adoption in school’s could also be a factor as children start to get their own devices at home. My son has been using Chromebooks in school for a couple years now and has become very proficient navigating Chrome OS. Last fall, his homework required a device at home and he asked for a Chromebook. After a little research I found that while the low end Chromebooks are cheap; in order to get something with a little more longevity and higher quality you have to spend quite a bit of money. I briefly considered getting a MacBook for him, but then realized if anybody could make an iPad work for his tasks it was my son. I explained to him how his iPad Air could do all of the things the Chromebook could do and more. Of course the lack of a keyboard was an issue so I bought the Element Digital bluetooth keyboard case and despite the smaller keys he is quite happy with his setup. Unfortunately I think we are the exceptional case and most parents would purchase a $200 Chromebook and call it a day instead of spending twice as much for an iPad and a keyboard.

The combination of iOS and the iPad is now mature enough to be used by most people as their non-smartphone device. The first step Apple should take is to create an iOS device with a more familiar laptop form factor for iOS. The device would still support touch for some activities, but the keyboard would be the main input device. It would require a little more polish to keyboard shortcut on iOS, but for the most part it should be compatible out of the box. The next part is a bit trickier and involves Apple getting the word out that iOS on iPad can now do much more than it could back in the iOS 5 days when they owned their first iPad. Finally the new lower price point for the regular iPad should help make the iOS on iPad experience much more affordable when compared to other devices and the iPad Pro. I am convinced that iOS is the future of Apple devices and now is the time to start to expand beyond the old tablet form factor and into more interesting form factors like a 13” laptop or maybe even something as boundary pushing as a 21” desktop machine.