文字っぽいの。

文字を書いています。写真も混ざります。

#esa の記事が古いものか一発で分かるChrome拡張「esa鮮度」をリリースしました。

様子 こんな感じで、よくある「最終更新日からn日経ってます」という表示が出ます。便利。 なお、README更新されてないやんみたいな意図は全く無いのであしからず。 インストール こちらからどうぞ。 chrome.google.com 実装 github.com 簡単なコードですが…

UIScrollViewがスクロール中かどうか判定する

やりたいこと UIScrollView, UITableView, UICollectionViewなどがスクロール中かどうか知りたい タップはしてないけどまだ慣性スクロールが続いてるとか 見た目上動いてないけどユーザーが指を置いていてスクロール状態だとか 解決コード こんな感じのコー…

MTGで良い質問をしてもらうためのテクニック

結論まとめ MTG後に「あの場では言い出せなかったんですけど〜」と個別に相談やDMが飛んできたら良くないことなのでやめるように指導する 質問の仕方を工夫して、「さて、これを実行するにはどういう順序かな?」と考えてもらえるようにする 内容 MTGなど一…

株式会社はてなに入社しました

株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 ことしもこの季節かと思うと、1年が過ぎるのは早いなぁと感じます。

Sora iOS SDKがちゃんと導入されているのに Module 'Sora' has no member named 'hoge' となる問題の解決法

import Sora struct Test { init() { Sora.shared.audioEnabled = false } } と書くと使えるはずなんですが、Module 'Sora' has no member named 'shared' とエラーが出てしまいます。これを直すのは簡単で、 こういう感じにSimulatorではなくて こうする。…

マネジメントとエンジニアリングの両立が難しいのはなぜか?のたとえ話

与太話です。 数ヶ月前、マネジメントをしながらメイン機能の開発をしていたら完全にタスクがオーバーフローして大変なことになったんですよ。 その時に「両立が難しいのは分かったが、なぜ両立が難しいんだろうか。」をひたすら考えていたら思いついた「た…

iOS 12以降のAPIで "NSKeyedArchiver" と "NSKeyedUnarchiver" を使う

環境 Swift: version 4.2.1 やりたいこと NSKeyedArchiver と NSKeyedUnarchiver を使って、UserDefaultsやKeyChainに色々入れたり出したりすることがあると思います。iOS 11まではこうやって書いていました。 // ArchiveしてUserDefaultにセット let rootOb…

「いい温泉に入る」を目的としたストイック家族旅行に行ってきました。

背景 嫁の友人4人が泊りがけで我が家に遊びに来ることに。コミュ障な旦那は家から逃げ出すため、弟を召喚して温泉旅行を計画。せっかくだからと両親も誘って家族旅行にした。 takachi.hatenablog.jp この記事をよんで「山梨ええやん」となったので、 日帰り…

2018年に買ってよかったもの

年末ですね。 BOSE QuietComfort 35 wireless headphones Ⅱ Bose QuietComfort 35 wireless headphones II ワイヤレスノイズキャンセリングヘッドホン Amazon Alexa搭載 快適な装着感 20時間連続再生 通話マイク搭載 ブラック出版社/メーカー: BOSE発売日: 2…

Storyboardを利用したViewControllerのインスタンス生成を楽にする

背景 1つのStoryboardに1つのViewControllerという運用をしていると、ViewControllerのインスタンス生成するコードを書くことが多くなると思います。雑に書くと、 let storyboard = UIStoryboard(name: "SomeViewController", bundle: .main) let vc = story…

Slackのstatusに六曜を表示してデプロイの無事を祈る

六曜とは 六曜(ろくよう、りくよう)は、暦注の一つで、先勝(せんしょう)・友引(ともびき)・先負(せんぷ/せんぶ)・仏滅(ぶつめつ)・大安(たいあん)・赤口(しゃっこう)の6種の曜がある。 日本では、暦の中でも有名な暦注の一つで、一般のカレン…

Swift 4.2でコマンドラインツールを作るときに外部ライブラリを使う方法

開発環境 Swift 4.2 Xcode 10 手順 $ mkdir SwiftCommandSample $ cd !$ $ swift package init --type executable 中身はこうなっている。 . ├── Package.swift ├── README.md ├── Sources │ └── SwiftCommandSample │ └── main.swift └── Tests ├── LinuxMa…

Macで英語入力時にキーを長押ししたときに出るウムラウトとかのポップアップを出さなくする

新しいMacをセットアップする度に、方法を忘れるので書いておく。 $ defaults write -g ApplePressAndHoldEnabled -bool false を terminal.app とかで入力してから、再起動すると消える。

#iOSDC Japan 2018 に参加して、発表もして、感情になりました。

iOSとその周辺技術に関するエンジニアのためのカンファレンスである、iOSDC Japan 2018(iOS Developers Conference Japan 2018)に参加・発表してきました。 iosdc.jp 参加者として 去年初めて参加してとても楽しかったので、今年も参加しました!もちろん…

#iOSDC Japan 2018 で『複数のライブ映像を同期再生するのが大変だったので知見をお伝えします』というお話をします。

今年もiOSDC Japanの季節がやってきましたね!ありがたいことに15分トークが採択されたので、登壇します! プロポーザルには、 ライブ配信サービスが流行っている中、WWDC2017で EXT-X-PROGRAM-DATE-TIME タグのサポートが発表されました。これにより、複数…

Swift 4.1 で多重配列を Flatten する。

環境 Swift version 4.1.2 Xcode 9.4.1 背景 ※この記事は Sequence.flatMap を使って多重配列をFlattenしていた人向けの記事です。 Swift4.1になってから Sequence.flatMap がDeprecatedになり、かわりに map と compactMap を使うようになりました。これら…

ErgoDox EZに馴染めなかった男の末路

ErgoDox EZ買ってウキウキしてたんですよ。 ergodox-ez.com でも完全に馴染めずに埃をかぶり、前から使っていたHHKB Pro2を使い続けることになりました。馴染めなかった理由としては、 そんなに手がでかくないから完全に死ぬキーが生まれる 仕事で使いたいの…

Swiftでクソコードを認める文法をつくった

はじめに ジョークです 文脈 クソコードであることを認める構文ほしいkuso { // すみません}みたいなのでいいです— ぶんちょう (@yutopp) 2018年7月4日 これのF#実装が出てきた クソコードであることを認める構文をF#で実装してみたほんとにクソコードである…

CocoaPodsで入れたライブラリのWarningを消す方法

困りポイント CocoaPodsを利用してライブラリの管理をしている人は多いと思いますが、ビルド時にLibraryのWarningも大量にでて困ることがあると思います。こんな感じで これでは、自分の開発しているアプリのWarningが埋もれてしまいますね。 解決方法 inhib…

iOS 12でOpenGL ESがDeprecatedになったので、Metalを使うにはiOSいくつ以降をサポートすれば良いのか調べた。

結論 iOS 11以降のサポートにすればよい iPhone 5, iPhone 5c, iPad(4th) がMetal非対応だがiOS 10がインストール可能になっている Apple公式的には最新2つのメジャーバージョンのサポートを推奨している iOS 12が落ち着いたらiOS 10のサポート終了を準備し…

Comparable#clampがSwiftにも欲しいので作った

Comparable#clamp という便利メソッドを知った。 blog.bigbinary.com いままではこう書いていた let number = 100 let lowerLimit = 0 let upperLimit = 20 min(max(lowerLimit, number), upperLimit) // => 20 Swiftにもほしいと思って調べたけど、Rangeの …

「ずるい」ではなく「いいなぁ」って言うとすべてが上手くいく

気がする。 子供のしつけで「ズルいわけじゃないんだよ」って教えるってのよく話題になる気がする。そもそも「ずるい」って 《形》人をだしぬいて自分が得をするような、正しくないやりかただ。わるがしこい。こすい。 という意味なので、ネガティブなんです…

株式会社はてなに入社しました

株式会社はてなに入社しました 今年もよろしくお願いします。 株式会社はてなに入社しました - hitode909の日記

「新卒が今の発言をしても許されるか?」という基準で自分の発言を鑑みる

3年も働いていると地位や信頼値にも変化があり感覚が鈍ってくるので、思考ゲームをして遊んでいる。 自分の立場に甘んじた発言をしていないかが分かる(ときがある) 覚悟をもって発言しているかが分かる(ときがある) もし新卒がその発言ができない場合、…

『吉田類の酒場放浪記』で紹介されたお店をGoogle Mapにまとめました。

こちらをご覧ください。 初めていく駅で飲み屋で迷ったときは「吉田類 駅名」で検索しろって教えてくれた知らない人ありがとう— セキグチ (@sekigucheap) 2017年12月12日 そうです。酒飲みが愛する情報番組である『吉田類の酒場放浪記』は、最高便利なのです…

静岡は浜松に行ってきた。

大学時代の友人たちと浜松に行ってきた。 忘年会か新年会をする予定だったのだが、予定が合わずに、浜松(東京と大阪の中間ぐらいだし)に集まって飲もうという事になった。 浜松はうなぎ以外にもすっぽんが有名らしいので、1日目の昼はすっぽんを食べた。 …

嫁の転職を支える技術

嫁を面接した企業が「あれ、これって……。」となる画像 はじめに 最近嫁が転職活動をしていたのですが、デザイナーは転職活動をする際に「ポートフォリオ」なるものが必要になるそうです。Webデザイナーである嫁は、このポートフォリオをWebサイトとして製作…

"carthage-verify" を使って `carthage bootstrap` 忘れを防ぐ

CocoaPodsがビルド時に「`pod install` しないとだめだよ」とエラー吐いてくれるのが便利なので、Carthageでも同じことをやりたい。

【esa】社内ドキュメントツールのホッテントリを分かるようにしたら捗った話

この記事はピクシブ株式会社 Advent Calendar 2017の20日目です。 昨日はおしゃれな動画を作るマンであるまつらいの inside.pixiv.blog でした。かっこよくてずるいですね。 こんにちは、Atomです。普段はiOS EngineerとしてSwiftを書いたり、9%チューハイを…

iOS9以降では "NotificationCenter.default.removeObserver(_:name:object:)" をdeinitに書かなくても良いですよ。

表題通り。間違ってたら教えて欲しい。 iOS9以降をDeployment Targetにしている場合のみの話ですので、iOS8系をサポートしている場合は今まで通り明示的にremoveしましょう。 今までは NotificationCenter.default.addObserver(_:selector:name:object:) し…