Posts

Draco Calculation Now Available

Aug 4, 2015

DracoCalcIcon 200

I like Calculation solitaire because skill is a major factor for winning. The game is easy to learn and may help the little ones with their arithmetic. For example: adding 4 to 11 results in 15, and subtracting 13 is 2, the next card in the 4s stack after Jack (Knave).

In Calculation, we build a foundation of four stacks to Kings counting by 1s in the first stack, 2s in the second, 3s in the third, and 4s in the last. The first stack is simply A - K. The second begins with 2 and reaches King counting by 2s. Cards may be discarded to four piles in any order with a strategy of counting backward by 2s, 3s, or 4s as to later play them in sequence to the foundation. See “How to Play Draco Calculation” for details.

Continue reading...

Upgrading to Windows 10 with VMWare Fusion

Jul 31, 2015

For those using VMWare Fusion 7 and upgrading to Windows 10 experiencing an issue with the video driver, Mike Roy at mikeroySoft.com has a nice guide. In short, use the Windows 10 ISO (available here) mounted as a drive to do the upgrade. After the upgrade, if you’re limited to low resolutions with the default Windows VGA driver, try “Reinstall VMWare Tools” on your virtual machine and restart Windows 10. Note that you may need to go to “This PC” in Windows and select the VMWare Tools to install. Then you should have the VMWare SVGA driver as seen in the screen capture below.

ScrVmwareWin10

###Reminders

  • Make sure you’re logged in on the Adminstrator account, else you might get the “Something Happened” error.
  • Take a snapshot first.
  • During upgrade, check the “customize settings” option to see if there’s anything you’d like to disable, such as sending data to Microsoft. Also accessible after upgrade in personalization.

iTunes Not-So-Bad Design

Jul 29, 2015

In response to a post on The Atlantic, “iTunes Really Is That Bad” by Robinson Meyer, I cover an issue I have with one of the given examples supporting the claim of poor design of Apple’s iTunes. The author asks the reader to examine the horizontal navigation bar starting within the music library.

So if you’re in your own iTunes Library, then click on “For You,” you’ll find the entire navigation bar has shifted under your mouse: Your mouse is now hovering over “Playlists,” as the software has inserted forward and back buttons on the far left.

I tried it on my Mac, and the buttons didn’t move. My mouse remained hovering over the “For You” button. As a software developer, I immediatly knew the reason my experience differed: the author’s iTunes window is much narrower than mine. I had to reduce my iTunes width to the mininum in order to duplicate the given example.

Continue reading...

Cards Art

Jul 15, 2015

I created these playing cards for Draco Calculation using Procreate and a stylus over the course of two months. Since the playing cards may appear small on a phone screen and larger on a tablet, my goal was a design that would scale well and have a playing card feel. The card lettering seen in the above collection of face cards (hi-res) is for the French deck. The game includes English lettering and also numbers with the same artwork.

Continue reading...

Programming in iOS: imageNamed vs imageWithContentsOfFile

Jul 14, 2015

One easy way to load an image by name (from assets or from nib) is to use imageNamed method from UIImage. Without reading the UIImage reference, it may not be immediately understood that this also places the image into a cache. For single-use images, this may lead to unnecessary memory growth, especially for large images such as backdrops that the user may update several times. Here I’m loading an image named, “MarbleWhite” from a PNG file.

UIImage *image = [UIImage imageNamed:@"MarbleWhite"];

Checking the “Quick Help” in Xcode or the reference for “+ (UIImage *)imageNamed:(NSString *)name” reveals the cache warning:

This method looks in the system caches for an image object with the specified name and returns that object if it exists. If a matching image object is not already in the cache, this method locates and loads the image data from disk or asset catelog, and then returns the resulting object.

The reference offers an alternative:

If you have an image file that will only be displayed once and wish to ensure that it does not get added to the system’s cache, you should instead create your image using imageWithContentsOfFile:. This will keep your single-use image out of the system image cache, potentially improving the memory use characteristics of your app.

If using our own cache for memory management, or for loading single-use image such as a backdrop, better to load from a file as suggested.

UIImage *image = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"MarbleWhite" ofType:@"png"]];

It always pays to check the programming documentation.