ksメモ

私がプログラミング関連で学んだことを記載したメモです

swiftで_values:compvalues:10: not enough argumentsなエラー

問題

oh-my-zshコマンドラインからswiftを使っています。「swift」と入力した後にファイル名を補完しようとすると、以下のようなエラーが出てしまいます。

$ ls
main.swift

$ swift ma
_values:compvalues:10: not enough arguments                                                                               
_values:compvalues:10: not enough arguments                                                                               
_values:compvalues:10: not enough arguments

暫定の解決

正直、私はかるーくswiftを触ってみたいだけなので、ShellScriptでラップして対応した。

#!/bin/bash
cmd="swift"

for i in `seq 1 ${#}`
do
    cmd=${cmd}" "${1}
    shift
done

eval ${cmd}
# 適当なファイル名、aliasを付ける
$ alias sw="sw.sh"

# zsh側の補完がうまくいく
$ sw main.swift

軽く調べた結果

ここで同じエラーについて語られてる。みんなXcodeで開発するから、zshから使ったりしないのかな? http://www.zsh.org/mla/workers/2017/msg00183.html

ちょっと長い休暇。そして新しい仕事へ

僕はブログを更新する頻度もそんなに高くないし、文章力もたいした事がないんだけど、なぜかそれなりにPV数があったりするみたい。はてなから「PVは〇〇を超えました」とプッシュ通知が来る。

テクニカルな記事のPVがほとんどだけど、それでもある程度の人が僕の文章を読んでくれているというのは嬉しく思う。

近況

前職は2ヶ月前に辞めました。前職はそれなりに楽しかったし、それなりに辛い仕事もしたし、まぁ72点くらいの楽しさはあった気がします。ここまで僕を育ててくれた事には感謝しつつ、でも特に名残惜しい感じもせず、「会社辞めるわー」と去りました。今は6月からの新しい仕事に向けて今は休暇を楽しんでおります。

はてなブログはほとんど更新してませんが、QiitaやMediumなどはぼちぼちやったりしてます。Mediumは英語で記事を書いていて、英語をアウトプットする場として使うつもりです。たぶん僕の英文は間違っている点があると思うけど、気にせず書いていくつもりです。(というかはてなブログは相変わらず書きにくいですね)

あとはlinux-insidesを読んでいます。こういった休暇くらいでしか情報工学の根っこの部分を学ぶ機会がないと思ったので。アプリケーションの開発の勉強は仕事しながら学べるし。

自由をつくる、自在に生きる

さて。社会人になって5-6年になる僕ですが、そろそろ30代という事もあって、いろいろと将来について考えるようになりました。 まぁぐだぐだ悩んでも答えは出ないので、相変わらずいろいろな書籍を読んでいます。ほとんどは技術書ですが。

自由をつくる自在に生きる (集英社新書 520C)

自由をつくる自在に生きる (集英社新書 520C)

これは森博嗣さんが書かれた書籍で、僕の社会人人生にかなり影響を与えているものです。

すごく面白い視点で自由と支配について説明をされていて、僕は読むたびに「なるほどな〜」と感心します。そして休暇をして2ヶ月ですが、僕ははやく仕事がしたい(支配を受けたい)という気持ちでいっぱいなわけです。

別に「仕事=支配」とは思っていませんが、「仕事=自由な時間の減少」くらいには思っています。2ヶ月も休暇をして気づいたのですが、自分は追い詰められない(締切ドリヴン)と、モチベーションが湧いてこないタイプだと改めてわかりました。決してこの休暇でずっと暇してたわけじゃないのですが、仕事をしていた時の方が楽しかったです。この本では、人間はある程度は支配される事を望んでいると記載がありますが、まさに僕の事だなーと思います。

というわけで、年明けからブログをまったく更新してませんでしたが、ぼちぼちやってます。

冬休み日報 1/6

久々の日報になります。大晦日と三ヶ日はお正月とゼノブレイド2を満喫していました。1/4から勉強を再開したのですが、ちょっとReact Nativeに夢中になって、日報をつけることを忘れていました。。

この3日間の作業

React Nativeでアプリケーションを開発する

  • ToDo管理アプリを作成中
  • それなりに動くものができている
  • iOSAndroidで挙動が違うポイントが出ているので、それが困っている

感想

React Nativeすごい…。簡単にモバイルアプリが開発できた。UIを変更するのが一瞬なので、これは開発スピードあがるなーって感じです。

ゼノブレイド2の感想(途中までプレイした)

背景

冬休みの日報の番外編です。今日はずっとゼノブレイド2をやっていたので進捗がない…。だから今回はゲームの感想を書こうと思います。

以下、ネタバレ注意です。

前提

  • 私は前作もプレイしています。なるべく、前作のバイアスがかからないように感想を書くつもりです。
    • 前作のバトルシステムなどはもうゼノブレイドクロスまででやり尽くしたと思っています
    • だから今回の新しいバトルシステムは歓迎しています
  • また、あくまで途中までプレイした感想なので、全体を通すとまた違った感想になるかもしれません。
    • 半分くらいクリアした?

総合評価

文句なしに面白い作品だが、細かい不満点が多い。 点数をつけるなら68/100点くらいかな。いやー、もう少し細かいポイントに考慮してほしかった。 非常に不親切なゲームとなっている。 まぁゲーム制作も納期とか予算があるわけで、何を捨てて何を品質上げるかってことなのかな。

というわけで不親切(不満)ポイント一覧

  • チュートリアルがあとで読めない
    • あんな複雑なバトルシステムなのに1回で覚えろと…
    • せめて公式ホームページでもっと詳しい説明があれば納得したんですけど
    • このゲームの複数の不満ポイントは、これが本質的な原因だと思っています

マップ

  • ちょっと使いにくい
  • サルベージできる場所とか、移動中でもわかるようにしてほしいな
    • まぁこれは些細な問題かも

バトルシステム

  • ブレイドが増えて「お、前作より戦闘の幅が増えるのでは(わくわく」と思っていました
  • 実態はタイミングよくボタンを押すコンボゲーになっている感じです

ストーリー

  • 女性が性的に描かれすぎている
  • なんか日本人ならではの下ネタとか、そういったのがちょいちょい出てくる
    • 海外で売るつもりないのかな…
  • ストーリーが全体的に子供っぽい
    • ちょっとご都合主義なところ目立つかなー

不満ポイント多くない?

はい、多いです。たぶん前作をやってなかったら、辞めてたんじゃないかな。今までのバトルは前作の知識をつかってやってた感じがあります。そろそろ敵が強くなってきて、本格的にバトルシステムを覚えないといけなくなってきたので、wikiとか見て調べています。ほんといけてないなー。

続けるの?

ストーリーはおもしろいと思ってますし、基本的な戦闘システムはたのしいので続けます。

冬休み日報 12/29

本日の作業

React Native

  • こちらのコースを受講
    • 113から118まで完了済み
    • 開発環境の整備をしていて時間を取られた
    • 明日で一気に終わらせる

開発環境の整備

  • 冬休みの楽しみの1つ
  • 日報というより、商品レビューのノリで記載します

ディスプレイ

  • LGの31インチの4Kディスプレイを購入
    • コストパフォーマンスが良い
    • 今のところかなり満足している

USB Type-C --> HDMIの変換

  • ディスプレイがUSB Type-Cをサポートしてないので購入しました

Macのスタンド

  • 15インチを机の上に普通に置くのはスペースが取られるので、それを解消するために購入しました

Spinido® ノート PC スタンド silver (TI-Station)

Spinido® ノート PC スタンド silver (TI-Station)

無線マウス

  • 今まで有線マウスを使っていましたが、"線がないのは正義"だと思い始めました
  • レビューを見て良さそうだったので↓を購入しました
    • 値段の割には軽くていい感じです

その他

読書

こちらを読んで、もう少し自分の生活をスマートフォンに寄せてみようと思いました。具体的には以下のサービスを使っていこうかと。

  • IFTTT

    • 今まで知っていたが手を出していなかったもの
    • いろいろなデータを勝手に記録してくれたりして面白そう
      • →自分の現在地をEvernoteに記録していく機能を試してみる
  • Evernote

    • 2年ほど使うのを辞めていたが、改めて使ってみることにした
    • 勉強用のノートを取るには良い気がする

冬休み日報 12/28

背景

年末年始がやってきましたね。私はちょっと多めに休暇を取ることに成功し、12/27〜1/8までお休みです。

例年通り、私は年末年始の連休(冬休み)に、エンジニアとしてインプット・アウトプットを頑張ろうと考えています。今回はその内容をブログに書いていこうと考えています。このブログを見ている人なんてほとんどいないと思いますが、インターネットというパブリックな場に投稿するというプレッシャーがほしいのです笑。

ちなみに一昨年はPythonLLVM関連でアプリを1つ書き、夏コミに出したりしました。去年はFFXVで忙しくて何もやってなかったのですが…。

今回は何をやるのか

アプリケーションを何か1つ開発する

  • React、React Nativeを使ってみたい
  • 具体的なアプリはこれから考えます
    • 具体的な目標も考えないと

機械学習の勉強

  • Andrew Ngの講座が良いと評判なので、それを終わらせます
  • あのスーパープログラマであるhigeponさんがこういったツイートをされていたので!

その他

勉強とは関係ありませんが、興味があってやってみたいことを書きます。取り消し線は完了です。

  1. 自宅開発環境の整備
    • 対応中
    • 具体的には、4Kディスプレイをデスクに置く
    • USB Type-CをHDMIに4K/60Hzで変換するケーブルを手に入れないといけない
  2. メルカリを使ってみる
    • 古いディスプレイをメルカリで売ってみる
    • メルカリがどういう仕組なのか、使ってみて知りたい
  3. Xenoblade2を進める
    • これは気分転換に

今日のまとめ

  • メルカリを試した
    • 販売金額の10%を手数料として頂戴するビジネス
    • ファミリーマートでかんたんに配送できる
      • 取引完了後に配送料が引かれる
      • コンビニまで持っていくのがめんどくさい…
      • ちなみにローソンだと100サイズまでみたい
    • 学び→ 上記の手数料と配送料を考慮して売値を設定しないといけない
  • インプット
    • RailsでSPAをどうやって実装するのか調査
    • 機械学習はLinear Regressionまで完了

つぶやき

ここまでいろいろ書きました。今日は早速、忘年会があり出かけることに…。果たして全部終わるかな?

Macを修理に出した

背景

2ヶ月くらい前からキーボードの挙動がおかしくなってました。保証期間の内だったので修理を出して無事に戻ってきました。最新MacBook Proはキーボードの耐久性に問題があるみたいなので、ブログにて情報共有しておきます。

不具合の内容

私が使っているのはMacBook Pro 15インチ 2017年モデルです。Touch Barを搭載した2世代目のモデルですね。このパカパカするバタフライキーボードは気に入っているのですが、一方で耐久性に問題があるとよくネットで噂されているのは知っていました。

ある日、いつも通りMacを起動してプログラミングをしていると、入力の挙動がおかしいことがわかりました。JavaScriptで最初の一行を書いたらなんと以下のように。

immport React fromm 'react'

「"m"が2回入力になっている。。。こんなミスほとんどしないし、もしかしてチャタリングか?!」

不安は見事に的中し、キーボード入力を確認すると"m"と"n"で稀にチャタリングが発生してました。とりあえず他に同様の事象が報告されていないかぐぐってみました。

MacBook Pro 2016 (15インチ)のバタフライキーボードが購入後わずか1ヶ月で故障した件 - なすぶろぐ、弱火でじっくり。

MacBook Pro 2017モデルではキーボードが改良され、2016モデルで発生していたキー音の問題などが修正されているもよう。 - AAPL Ch.

↑2016年モデルでも同じ不具合が発生したというブログポストを見つけました。一方で、"2017年モデルはキーボードも少し改善されている"という記事も。たまたま運が悪いだけかな?

MacBook、MacBook Proのキーボード、一部が反応しない問題が多発か - iPhone Mania

↑いやいや、やっぱり問題は残っている様子。。いちおうエアダスターを購入してキーボードの掃除をしてみたのですが、あまり効果が見られなかったです。

Genius Barに行く

渋谷のApple Storeを予約して、さっそくGenius Barへ。予約していたのですぐに診てもらうことができました。5回中1回ほどの確率でチャタリングが発生するという再現性が怪しい不具合だったのですが、快く対応してもらえました。

店員さん「ちょっとおかしい感じですね。問題のキー2つのキートップを交換してみてもいいですか?」

私「お願いします」

待つこと15分くらい・・・

店員さん「交換しました。その際に掃除もしておきました。しばらくこれで様子を見てもらえませんか?」

私(お、確かに直ってる!)

というわけで、またしばらく使ってみることにしました。

しかし、また不具合が発生する

発生頻度は減少したのですが、やはり稀に"m"と"n"でチャタリングが発生しました。

「我慢できなくはないけど…。またGenius Barに持っていくか?めんどくさいなー」とちょっと渋っていました。

ところが、他のキーにも不具合が出始めました。具体的には"b"と"k"が反応したりしなかったり。不具合が発生するたびにエアダスターで掃除するのを繰り返していましたが、さすがに嫌気が差してきました。

そしてある日、またキーが反応しなくなったためエアダスターで掃除しようとOSを終了したら、終了時にOSがクラッシュ。ぼくのSierraはOS再インストールを要求してくるようになりました。High Sierraへ強制的に新陳代謝をさせられました。\(^o^)/

今度は修理に出す

渋谷のApple Storeは休業中のようで、Appleサポートに電話してビックカメラ渋谷東口の正規プロバイダーを案内されました。そこで修理に出し、5日で無事に戻ってきました。よかったよかった。もちろん保証期間内なので無償でした。

ただ、ちょっと気になった、というかショックだったのが「万が一、水濡れだったりすると修理の値段が上がりますので」と念を押されたことですかね。店員さんは説明しないといけない立場だと思うので、仕方ないとは思うのですが。。こっちは30万円も出した高級ラップトップが壊れてすごくがっかりしているのに。Genius Barで対応してもらったときは水濡れとかの話は出なかったし、キートップを変更してもらったときもそんな話題は出なかったし。