2016-07-10

iOS 10のSwift Playgroundsを自分のプログラムのテストに使用するには

iOS 10とmacOS Sierra (10.12)のパブリックベータが始まりました。
早速両方をインストールしてみました。

Appleの規約上、おおっぴらにパブリックベータの内容に関して書けないことになっています。
スクリーンショットとかバンバン載せたいのですが、そうはいきません。

なので今回は、パブリックベータプログラムに参加しているお友達に向けての発信です。

私がiOS 10で一番気になっているのはSwift Playgroundsです。
XCodeにもPlaygrounds機能は、2バージョンつくらい前から付いてきていましたが、iOS版はプログラミング教育のツールとして機能を強化して紹介されました(Appleのページ)。
準備された課題を実行するだけではなくて、一から自分で作ったプログラムのテストにも使えるはずだと、にらんでいました。

少し試してみたところ、次のような感じのコードで、汎用的な使い方ができそうなことがわかりました。
もっとスマートな書き方があるのかもしれませんが、まずは第一報として、共有します。
//おまじない
import UIKit
import PlaygroundSupport
//ボタン生成
var button = UIButton(frame: CGRectFromString("0,0,150,50"))
button.backgroundColor = UIColor.gray()
button.setTitle("Buttonテスト", for: UIControlState.init(rawValue: 0) )
button.setTitle("Buttonハイライト", for: UIControlState.highlighted)
//Live Viewに表示
PlaygroundPage.current.liveView = button
Swift Playgroundsでは、コード入力の際も、いわゆるインテリセンスが今まで以上に効いていてXCodeでコーディングするよりも気持ちよくできると感じました。

2016-07-05

MacBook Airから取り出したSSDをMac miniに装着 - 実行編

Mac miniの上段に無理やりおさめて接続した、
MacBook AirのSSD+SATAアダプタ
先日予告しました通り、この週末にやっちゃいました。
万人にお勧めできる内容では全くないですが、自分的には有効利用が出来てよかったと思います。

MacBook Airから取り出したSSDは2.5"ドライブに比べて長さがかなり長いので通常の位置には組み込むことはできません(MacBook AirのSSD交換レポートその1、その2)。
これを何とか活用しようというのが、今回の記事です。

SSD/HDD用の接続アダプタのフラットケーブルはもともと自由に曲げられるので、Mac mini上段の空いているすきまに潜り込ませた寸法の長いSSDに接続するのにとても都合が良かったです。
この下段にHDDを取り付け、何の不信感もなく収まってしまいました。

移行には、元々HDDを700GBほども使用していたので、ものすごく時間がかかってしまいました。
  • 最初に内蔵HDD(すでにSegateのSSHDに入れ替え済み)からUSB 3.0外付けHDDへのバックアップ(リカバリモードで立ち上げてディスクユーティリティで複製):5時間
  • 内蔵Fusion DriveへのOS Xのクリーンインストール:30分
  • バックアップを取ったUSB 3.0外付けHDDから、移行ウィザードを使ってアプリやデータの復元:5時間
MacBook Airの128GBのデータ移行が15分だったので計算上は妥当な時間ではあります。
バックアップ用HDDを上段に内蔵してコピーすればもっと速くできたはずですが、あいにく厚さ15mmのHDDしか手元になく、内蔵不可能でした。

Fusion Driveにした結果、OS Xの起動時間は、
  • 内蔵SSHD:35秒
  • USB 3.0外付けHDD:1分25秒~2分20秒
  • 内蔵Fusion Drive:15秒
となり、効果てきめんです。
内蔵HDDの時は1分以上かかっていたと記憶しているので、いまさらながらSSHDが実はかなり健闘していたのが良く分かりました。

Fusion Drive自体の設定は、Mavericksを外付けHDDから起動し、ディスクユーティリティでオンラインで行いました(Fusion Driveに設定すると内容が消えるので、上に書いたバックアップを慎重にやりました)。
内蔵ディスクがSSD+HDDの状態でディスクユーティリティを起動すると、SSDとHDDが赤い文字で表示され、ディスクを修復するか、と聞いてきて、Fusion Driveの設定がオートマチックに流れます。
今回私はたまたま古いOS Xを使用したのでよかったのですが、ディスクユーティリティのFusion Drive設定機能はEl Capitanでは無くなっている(コマンドでは設定可能)とのことなので、注意が必要です。

今更ながらMavericksを再インストールしたのですが、昔に保存していたインストーラは、Appleが証明書で問題を起こしているらしく、エラーになって使用できませんでした(2016年2月以前にダウンロードしたインストーラがダメになったとのこと、Apple Ch.さんの記事)。
再度ダウンロードすればよいのですが、MarvericksのApp Storeではなぜか「インストール済み」となっていてダウンロードできず、仕方なくFusion Driveに一度El Capitanをインストールした上で、App Storeの購入済みからダウンロードしました(Apple Ch.さんの記事にあるmas-cliはMavericksは古すぎて動かなかったので)。
その上で、El CapitanからMavericksのインストーラを起動しても、「古いのでダメ」 だったので、再度外付けHDDからMarvericksを起動し、ダウンロードしなおしたMavericksのインストーラでFusion Drive上にインストールしました。

いろいろありましたが、最終的にはしっかり動いています。

2016-06-30

MacBook Airから取り出したSSDをMac miniに装着 - 予告編

先日MacBook Air Mid 2012のSSDを交換しましたが(その1、その2)、取り出したSSDをUSB 3.0外付けディスクとして有効利用するだけでは飽き足らないのが私の悪い癖。
他方、私のMac mini 2012はSSHD 1TBに入れ替えて何とかしのいでいたのですが、この際、MacBook Airから取り出した128GB SSDを増設して、大容量Fusion Diskにしてやろうと思い至りました。

実は、取り出したSSD、専用のケースに収めるのなら良いのですが、SATA変換アダプタをつけると、通常の2.5インチHDDよりもかなり長くなってしまい、通常のケースには全く入らないのです。
さらに、Mac miniの方のふたを開けて中をのぞいてみると、上段のエリアに、通常のHDDとは向きが違うのですが、ちょうどスペースが空いているではありませんか。
空中結線かつケーブルをひねって接続することにはなりますが、このスペースにMacBook Airから取り出したSSDを詰め込んでみようと思います。

ソフトウェア的には、Fusion Driveを構成するにはドライブの初期化が必要なので、現状の内容をどう移行するかが、悩みどころの一点です。

ということで、上段HDD用の接続ケーブルを発注しました。
ちゃんと接続できるか、またレポートしたいと思います(こんなレアな組み合わせの使い方を人がほかにどれだけいるのかは分かりませんが。。。)。

[2016-07-05] 実際に取り付けました。

2016-06-15

WWDC2016の感想

私の事前の願いもむなしく、今回のWWDCでは新しいハードウェアの発表は(まだ)ありませんでした。
4つのプラットフォームの新しいバージョンの紹介に終始したキーノートでした。
私が気になった点は3点です。
  • Apple Watchのアプリ起動が7倍速くなる。 アプリ一覧はデジタルクラウンを押して出すホーム画面の小さなアイコンではなくて、Dockになる? (現状のApple Watchユーザガイド)
  • メモアプリのコラボレーション機能(一言だけ紹介されていました)。
  • Swift Playground。これが単に課題を解くだけのアプリではなくて、自由に任意のコードでアプリを開発できるようになっていたら、いよいよセルフ開発が出来てしまいます。
WWDCは正に継続的にアプリを開発・保守している人たちに、必要なことを伝えるのが趣旨なので、ハードウェアの新製品は別途スペシャルイベントが開かれるのでしょう。

2016-06-13

FONルータの新型Fonera mini

ちょっと見ないうちに、新しいFON Wi-Fiルータが発売されていました。
今度はFonera mini。
一世代前の(カスタマイズ版がSoftbankで配られていたもの)に比べてさらに一回り小さくなっています。
FONは自分のWi-Fiを共有して、世界にWi-Fiをもっと広めようと言う活動。
FONルータを購入すれば、世界中のFONにアクセスできるようになります。
今日時点でamazonで2,830円なので、そこそこお手軽じゃないかと思います(夢の代金込み)。
FONについて詳しくは、http://fon.ne.jp/ をどうぞ。

WWDC2016直前のお願い - iPod touch Plus with VR

恒例の、お願いタイムです。
私のお願いは、ずばりiPod touch Plus with VRです。
iPod touch 6th genは去年2015年に出たばかりですが、なんのその。
最新のVR機能搭載は、まずiPod touchから、というのはどうでしょうか。
3Dカメラも搭載し、ARもこなしちゃってください。
今回発表される「これなしには生きて行けない」の答えはVR、無理ですかね。
何かしら新しいデバイスが出て来ないと、あまりにも寂しいですよね。

2016-06-04

MacBook Air Mid 2012のディスクがいよいよ狭くなったのでSSD交換を決行 - その2こんどは500GB

上が今回の500GB、下が元の128GB。
少し見にくいですが、M.2 SSDと変換
アダプタの2段重ねなので、厚みが約2倍。
先日に引き続き、我が家のもう1台のMacBook Air 11" Mid 2012のSSDも増設に踏み切りました。
SSD交換は前回経験済み、かつ工具が揃っているので、今回は少し冒険してみました。
使用したパーツは以下です。
今回選んだSSDは500GBで2万円切り、アダプタと合わせても前回のTranscendの240GBの交換キットよりも2倍の容量なのに安く付きました!!。
前回のは美しい化粧箱、今回のはプラスチックのブリスターパックという違いもありました。

今回選んだアダプタはどのサイズのM.2 SSDでもMacBook AirのSSDのサイズにピッタリ変換してくれるものです(他に、短いタイプのアダプタもあるようですがそれより良いと思います)。
ただし、アダプタなので、MacBook Air専用SSDに比べてどうしても分厚くなります。
最初にものを見たときには、ちゃんと入るか不安になりましたが、SSDが入る場所はちょうど底面が一番膨らんでいる場所なので、問題なし(ラッキー、結果オーライ)でした。

MacBook Proにはさすがにかないませんが、メモリ8GB、ディスク500GBの最強のMacBook 11インチに仕上がったと思います。
なお、MacBook Airは世代によってSDDの接続コネクタが全く違うので、交換するときは自分のマシンに厳密に合ったものを選ばないといけませんので、くれぐれも慎重におねがいいたします。

[2016-07-21] 取り出した128GB SSDはMac miniにいわば無理やり組み込んでFusion Driveにしました(その1、その2)。

2016-06-02

今日の一番星は火星

久しぶりに晴れましたね。
一番星といえば、西の空の宵の明星、そう金星が有名です。
ところが、いま話題の火星が、現在の一番星です。
何と言っても−2等級ですからね。
さすがの大接近です。
写真は、iPod touch 6genのカメラで、先ほど、2016-06-02 19:30に撮影。
手持ちですが、原寸大で見るとちゃん写っています。
この時間は、南東の空、30°くらいの高さでした。

2016-05-19

Google IO 2016キーノートで発表されたもの感想

AppleのWWDCとならんでコンピューティングの最先端を垣間見せてくれる、Google IO 2016のキーノートが先ほど終わりました。
ライブログはTechCrunchさんが記録してくれていますし、それよりもGoogleのYouTubeでキーノート終了直後からすでに!ライブビデオが公開されています(これはすごい技術ですよね)。

ライブで聞いていて感じたのは、Google、Amazon、Appleがそれぞれ提供する製品・サービスがどんどん似通ってきていて、良い意味での競合状態が活発になっているということです。
それぞれの製品・サービスはどんどんこなれて使いやすくなってきています。
ここから、今後1~3年くらいの間で、どこが突拍子もない新しいものを出してくるか、とても楽しみな時代だと思います。

発表されたもの一覧です。
  • Google Home - ちょうどAmazon Echoとそっくりの白いデバイスで、Apple HomeKitが目指しているように家の中の電源のコントロールとかもできるようです。
  • AlloとDuo - ちょうどAppleのMessagesとFaceTimeと同じもの、プラス @google でAssistantと会話できるようになっています。
  • Android N - Nで始まる名前を募集中(https://android.com/n)。
  • Daydream - VRを実現するための、VR Mode in Android N、ヘッドセットとコントローラ(Wii Uのような)、それと対応アプリを合わせた総称です。
  • Android Ware 2.0 - 時計の小さな画面でも文字入力しやすいように、手書き認識ができるようになります。
  • Android Studio 2.2
  • Firebase - クラウドをターゲットにしたサーバサービスとクライアントAPI(Android、iOS、Web)
  • Android Instant Apps - ちょうどWindowsのClickOnceをもっと使いやすくしたような、リンクをクリックするだけで専用のアプリが一時的に一瞬でインストールされ実行される仕組み。
今日はあまりどこのニュースサイトでもキーノートが取り上げられていないので、いち早く記録し共有しておきたく、ポストしました。

2016-05-07

iPhone 2016を大胆に予想

Tim Cookが『それなしには生きていけなくなり、想像もつかない新機能』を予告しました(Engadget日本語版の訳より、YouTubeではちょうど3:00のところ)。
この新機能について、私も予想しておきたいと思います。
  • ソーラドックとか、ソーラモバイル補助電源
  • 無線ヘッドホン(少し平凡)
  • カメラを活用した空中キーボード入力
  • 3D物体入力カメラ
さて、WWDCがますます楽しみになってきました。
Apple Watch 2も楽しみですね。

2016-05-05

MacBook Air Mid 2012のディスクがいよいよ狭くなったのでSSD交換を決行

Apple風の化粧箱に入ったTranscendのSSDキット
SSD交換後、元のSSDを外付けで接続した状態
使用量が50%弱に
我が家のMacBook Air Mid 2012のSSD 128MBはずっとひっ迫していて、写真をTime Capsuleに外出ししたりしてしのいでいたのですが、もう限界と判断。
SSDを交換することにしました。

運の良いことに、Mid 2012までのモデルはSATA接続で、いつくかの選択肢が提供されています。
おなじMacBook Airでも、より新しいMid 2013、Early 2014、Early 2015はPCIeに変更されていて、コストパフォーマンスの良い交換SSDはまだ出ていないようです。

Mid 2012用の交換SSDは、現時点で次のものを見つけることができました。
  1. Transcendの全部入り(交換用SSD、外付けUSB 3.0ケース、USB 3.0ケーブル、ねじ回し)のキット、容量は240GB、480GB、960GB(amazonリンク)。必要なものがすべてそろっているので安心。
  2. Vintage Computerの動作確認済み M.2 SSD+アダプタ、およびケース、ねじ回し(Vintage Computerリンク)。Mid 2012用は、比較的安価。
  3. Vintage Computerにならって、M.2 SSD+アダプタの例(ただし確実に動作するかどうかは人柱求む)。Samsung SSD+アダプタでの例、または、Transcend SSD+アダプタでの例。
今回私は、MacBook AirのSSD交換は初めてなので、確実安心な1番を選択しました(amazonで240GBが¥21,525でした)。
おそらく次回は、2番か3番を選びたいと思います。

手順は、USB外付けとして接続し、初期化、OS Xリカバリツールでクローニングし、SSDを入れ替えて再起動と至ってシンプルで標準的。
95%程度使用(空き数GB!)まで使用していた128GBのクローニングが15分ほどで終わりました。

「双六工場日誌」さんの情報通り、Microsoft Office Mac 2011のライセンスキーの再入力が必要な点が注意点でした。
Trimの有効化はsudo trimforce enableコマンドで行いました(El Capitan)。

あとは、Time Capsuleに退避していた写真ライブラリ60GBのコピーを6時間以上待っている状態です(有線LANアダプタが今ちょうど手元にないため)。

SSDの交換が容易にかつ比較的安価にでき、メモリも8GBが選べるMid 2012は、MacBook Airの中でも、当りの機種だったと満足しています。

[2016-06-04] もう一台のMacBook Air 11" Mid 2012にて、3番の方式で500GBに増設成功しました。
それと、Vintageコンピュータさんのリンクが変わっていたので更新しておきました。
[2016-07-21] 取り出した128GB SSDはMac miniにいわば無理やり組み込んでFusion Driveにしました(その1、その2)。

2016-05-04

新装EXPOCITYでの珍しいひとコマ

大阪の、エキスポランド改めEXPOCITYに行ってきました。
目的は、ニフレルと、オービと、日本一の観覧車。
そこで面白い光景2つに出会いました。

一つめは、観覧車。
実はまだ建設中で、円形が出来上がっていない期間限定の状態を見ることができました。

二つめは、無限に広い部屋?
ニフレルは、海遊館のプロデュースで作られているとこのとで、壁に埋め込んだ水槽ではなくて見る人の間近に水槽がある水族館と、檻のない小動物と直接同じ空気を共有できる動物展示をしている、特徴のある施設です。
その中で、「すがた にふれる」コーナーでは、薄暗い鏡張りのスペースに、面白い形の魚たちが展示されています。
もっと人が少ない時に 行くと、異次元の感覚を味わえるかもしれません。