Posts

Showing posts from 2018

2018 iPad Pro 12.9" Report

After weeks of research and thought, I bought a iPad Pro 12.9" 3rd Generation.
My impressions, based on a week's use: It's too expensive, especially once you include the pencil and keyboard case.It's a significant improvement over the 1st generation iPad Pro 12.9".It's physically much smaller.The new keyboard is nicer.The new pencil's magnetic charger makes it much more useful than before, because now it's always charged when I want to use it.FlawsThe magnets holding the pencil to the iPad are too weak. It's easy to knock the pencil off the edge of the iPad when picking it up or carrying it.When the keyboard case is folded back, your hands touch the keys. This feels weird at first.The hardware is held back by iOS 12 and Apple App Store limitations. FWIW I think for most people the ordinary 2018 iPad, with a Logitech Crayon, would be a better purchase.
But I do enjoy using it!

Solving the anemone puzzle in Botanicula

Botanicula is a whimsical graphical adventure game for the iPad and other computers. One of the puzzles near the end of the game requires a bit of thinking to solve. When I came upon it, after a couple of hours of play, I was too tired to think. So I wrote some code to brute-force the solution. I'm unreasonably pleased that it worked the first time. Here's the code, cleaned up and commented:



Computer History Museum Oral Histories

Image
The Computer History Museum Oral Histories are a wonderful project. They are deep, long, interviews with many different programmers. Lots of never-before-made-public details about important projects.

For example, this oral history by Oral History of Kenneth Kocienda and Richard Williamson goes into details of how iOS was designed:




Or if you prefer PDFs:

Oral History Part 1

Oral History Part 2

One of the interesting things I found out was that there was an attempt to use HTML/Web APIs to write iPhone apps, and that for the first two or three iOS releases some of the apps, including the Stocks and Weather apps were implemented as HTML/Web apps.

Girls Who Code iPhone App Development Course Review

One of my daughters recently took the Girls Who Code iPhone App Development course.

This was a two-week summer course, taught 9 am to 4 pm in a high school computer science classroom. The first week the girls were taught the basics of the Swift programming language and iPhone App development. The second week the girls formed into 4-person teams and wrote their own iPhone apps.

The girls learned how to use modern software development tools like Stack Overflow, GitHub, and Trello.

Much of the instruction during the first week was by way of working through examples from a private Girls Who Code website.

What worked well:
The girls learned the basics of iOS app development, especially the Interface Builder.The girls learned how to work in small teams, how to design apps, how to meet deadlines, etc.The girls were motivated by the assignment of writing an app to improve society/the world.The girls learned how to present their final project to a group. What could have been better: From watchin…

On-the-cheap Machine Learning, revisited

A short update on my On the Cheap Machine Learning blog post. After almost a year of use, I’m still pretty happy with the setup. The hardware has worked well. I haven’t done as much independent ML research as I had hoped, but I have contributed many hours of night-time GPU cycles to the Leela Zero open-source Go-game-AI project. I don’t think I would change anything about the build, and there’s nothing about it I want to upgrade yet.

However, in the past year a new option has appeared for on-the-cheap machine learning: Google’s Colaboratory project. Colaboratory is a free web-based IDE for writing machine learning applications. What’s especially cool about it is that comes with access to a cloud-based GPU. The GPU they provide is the NVIDIA K80, which is not the fastest GPU, but it’s still plenty fast for experimenting with machine learning. [Disclosure: I work for Google, but not in any groups related to Google Colaboratory.]

Colaboratory puts machine learning within the reach of any…