5.1さらうどん

@giginetの技術ブログ。ゲーム開発、iOS開発、その他いろいろ

macOSのβアップデートに失敗して吹き飛んだ話

まとめ メインマシンをmacOS 15.3 Betaに軽い気持ちで上げたら文鎮化 データは全て吹き飛んだが、Time Machineがあって事なきを得た。マジでバックアップとろう Apple Careも入ろう macOSのβアップデートに失敗して吹き飛んだ話 メインマシンにmacOSのβ版を…

iOSでLlama.cppを使ったローカルLLMアプリの構築2024

時代はローカルLLMということで、ちょっと興味があったので、iOS/iPadOS上でローカルLLMを動かしてみた。 MiniAIChat 習作として、ローカルLLMを使った質問応答型のmacOSアプリを作った。ネイティブで書かれており、Apple Platformなら大体動く(Mac/iPhone/i…

実録・モバイルアプリ領域の技術顧問は何をやっているか

これまで僕は何社かのiOS領域での技術顧問を引き受けてきた。技術顧問というと、Xで怪しいアカウントが「50社歴任!週末副業で楽に稼げる!」などと喧伝していることがあったり、いかがわしいイメージを持たれている方もいるかもしれない。 過去4年以上に渡…

『エンジニアチームの生産性の高め方』という書籍で開発者生産性について執筆しました

この度、『エンジニアチームの生産性の高め方』(技術評論社)という書籍の共著に携わり、無事に先日発売されました なんと、技術評論社の『エンジニアチームの生産性の高め方』という書籍を一部執筆しました!技術基盤チームのキャリアや、どうやって課題…

韓国のAppleカンファレンス、KWDC24でSwiftのCLIツール開発について話してきた

めっちゃ緊張した オーガナイザーの @unnnyong の紹介で韓国のAppleカンファレンス KWDC24にプロポーザルを出し、採択されたので参加してきた I talked about how to develop tools in Swift at #KWDC24 I was very nervous. #KWDC pic.twitter.com/lmWHR3w…

XCTestCaseをswift-testingに自動変換するswift-testing-revolutionaryを作った

swift-testing-revolutionary ほぼタイトル通りですが、先日XCTestで書かれたテストケースを、swift-testingのテストケースに自動変換する、swift-testing-revolutionaryというユーティリティを公開しました。Xだと流れてしまうため、せっかくなのでブログ記…

WWDC24に参加してきた

WWDC24に行った 今年は運良く当選したので、WWDC24に参加してきた。17, 19以来5年ぶり3回目の出場(23も会場には入れなかったが、現地にはいた) ✌️✌️ pic.twitter.com/JxDF3b0Jmp— giginet (@giginet) June 9, 2024 著者近影 23年は仕事で現地まで行ったが…

Swift MacroをSwift PackageなしでXcodeで扱う

Swift MacroってXcodeから使えないの? Swift 5.9からSwift Macroが実用段階になったが、WWDCの動画でも、公式ドキュメントでもSwift Packageから作成することが前提となっている。 targets: [ // Macro implementation that performs the source transforma…

ポケモンガチ対戦用パーティー管理アプリ『PokeBox』をリリースしました

まもなく『ポケットモンスター スカーレット・バイオレット』が発売しますが、先日、iPhone/iPad/Mac向けのポケモンパーティー構築管理アプリ、『PokeBox』をリリースしました。 ポケモンパーティー構築アプリの「PokeBox」をバージョン1.1にアップデートし…

クックパッド株式会社を退職して、LINE株式会社に入社しました

こんにちは、@giginetです。 先日、新卒以来7年3ヶ月勤続したクックパッド株式会社を退職しました。 本日、クックパッド株式会社の最終出社でした!新卒で入社してから7年3カ月お世話になりました。最高の職場だった! pic.twitter.com/VJLF3yh9UB— giginet…

try!Swift 2017でApple Watch上でファミコンエミュレータを動かす話をしました

try!Swift活動報告 try!Swiftお疲れ様でした。いろいろあったのでざっくり報告します。 トーク『&⌚️』 以前お伝えしたように『&⌚️』というタイトルでLTをしました。 内容は、watchOS上でファミコンエミュレータを動作させるという内容です。 & ⌚️ (LT) | tr…

try!Swift Tokyo 2017で『👾&⌚️』というトークをします

TOKYO - try! Swift 3/2, 3/3に行われるtry!Swiftカンファレンスで『&⌚️』(GAME AND WATCH)というタイトルでLTをさせていただきます!!! 3/3 18:00からの予定です。トリの1つ前です。 内容はApple Watch + SpriteKitについてです。 僕の仕事は愚か、おそら…

2016年にやったことを振り返ってみた

振り返る なんか流行ってるっぽいので今年の活動をまとめた 出したアプリ ふっかつのじゅもん(3月) 〜ふっかつのじゅもん〜gigi-net.netゲーム無料 今年のGGJ(48時間でゲームを作るイベント)で作ったアプリを手直ししてほぼそのまま出した。 プレイ時間は2…

あのゲームっぽく飯画像を撮るアプリ、『Camp Camera』をリリースしました

Camp Camera この度、あのゲームっぽくお飯の画像を撮るiOSアプリ『Camp Camera』を公開しました。 Camp Cameragigi-net.netFood & DrinkFree 思いついてシュッと1週間ぐらいで作った。 右下にウィンドウが付くほか、ゲーム画面っぽく見えるように良い感じに…

XcodeのPlaygroundを簡単に管理できるツール「Toybox」を作りました

Toybox このたび、Toyboxというコマンドラインユーティリティを作ったので紹介します。 github.com 普段、Swiftのコードを書いていて、 思いついた実装を試してみたい コードレビューで別の書き方を提案したときに、ちゃんと動くか動作確認したい バグっぽい…

バースデープレゼント2016

こんにちは、giginetです。 今年の誕生日はいろいろな方からいろいろいただいたのでお礼を兼ねてまとめます(到着順)。皆様ありがとうございました。 なお、プレゼントはいつでも大歓迎です しんでしまうとはなにごとだ 誕生日プレゼント第一弾が届いた。誠…

PyConJP 2016で『はじめて作るDjangoプラグイン』というトークをしました #pyconjp

こんにちは。@giginetです。 このたび、9/21, 9/22に開催されたPyCon JP 2016において、『はじめて作るDjangoプラグイン』という発表をさせていただきました。 詳細は以下。 giginet.hateblo.jp 内容としては、上記の記事で紹介しているようなプラグインの開…

PyCon 2016でPythonのライブラリ開発についてトークします

pycon.jp こんにちは、@giginetです。 9/21, 9/22に行われるPyCon 2016で『はじめて作るDjangoプラグイン』というタイトルでトークをすることになりました PyConには毎年参加していて、今年で4年目。 そろそろCFPでも出してみるか〜と思って、話せそうな内…

UITextFieldに簡単にカスタムキーボード貼るライブラリ作った+iOS UIライブラリのCI改善の話

最近、Swiftでライブラリを作るのが趣味なgiginetです。 最近は仕事でもSwiftを使う機会が多く、金曜の夜に仕事でアプリを作っていたら、突如良い感じの実装になってきたので、週末のやっていきでライブラリが誕生した。 github.com CustomKeyboardTextField…

XIBを読み込んで良い感じにViewを生成できるライブラリ作った

Macアプリを作ってて、XIBからNSViewを生成したいだけだったのになかなか面倒だったので簡単にできる奴を作った。 似たようなものはありそうなのに、探してみたら意外とちゃんと使える奴が少なかった。 github.com 自分で定義したCustomViewクラスとCustomVi…

SwiftでJSONのテストを良い感じにするJSONMatcher作った

この度、JSONMatcherというSwift向けのテストライブラリを開発しました。 github.com これは何? SwiftでJSONのオブジェクトや文字列を検査するマッチャーです。 JSONオブジェクトのテストがこんな感じで簡単に書けます。 import XCTest import Nimble impor…

pecoでrbenvとかpyenvを簡単に切り替える奴作った

peco-anyenv pyenvやrbenvのようないわゆるanyenv系のツールが大変便利で常用しているのですが、インタプリタの数が増えてくると切り替えるのが面倒になってくる。 $ rbenv global 2.3.0 rbenv: version `2.3.0' not installed このようにいちいちバージョン…

Djangoでgitのリビジョンを表示するプラグインを作った

django-debug-toobar-vcs-info Djangoにはdjango-debug-toolbarというプラグインがあります。 github.com このプラグインを導入すると、プロファイリングを行ったり、利用されているライブラリのバージョンを表示したりといった、デバッグに必要な情報を簡単…

cocos2d-x向けの究極のソーシャル連携プラグイン作った

この記事は cocos2d-x Advent Calendar1日目の記事です。 cocos2d-x Advent Calendar 2015 - Qiita 誰も立ててないので立ててみましたが、今年は参加者が少なく、炎上気味なのでご興味のある方はぜひ参加してみてください。 QiitaのAdvent Calendarなので、Q…

neovimが実用段階になったようなのでvimを置き換えてみた話

去る11月21日にmixiで開催されたVimConf 2015に参加してきました。 vimconf.vim-jp.org 僕はvimを使い始めてもう7年目になるけれど、最近はあまりvimを使っていません。 最近は主にモバイルアプリ開発をしているので、XcodeやAndroid StudioなどのIDEを使う…

fastlaneを使ってiOSアプリをブラウザから爆速確認できるようにした

今週のOSS活動 github.com この度、fastlaneに新しいアクションを追加して送ったところマージされました。 9月ぐらいに思いついて、コードは大分前に書き上げていたのだけど、テストを書くのが面倒で2ヶ月ぐらい放置した後、重い腰を上げてPRをこしらえた。 …

積読消化+開発合宿をしたら大失敗だった話

photo by EYLC 積読消化合宿というのをやりました - miyohide's blog この記事に憧れて「週末は温泉に行って開発したり積読を消化するぞ!!!」という気概で10/30 ~ 11/1にかけて箱根に行ってきました。 最高の環境で温泉に浸って、美味しいものを食べなが…

「watch OS2でゲーム開発した話」というセッションをしました

www.youtube.com 久しぶりにブログ書くかー、みたいな気概になったので書くことにする。 iOS 9 週連続 Bootcamp!5週目 MapKitとwatchOS2でゲーム開発!! - dots. [ドッツ] iOS9について何か話してー、とふわっと頼まれて、とはいってもiOS9の新機能でおも…

Global Game Jam5年目ガチ勢の僕がGGJ2015に参加してきた話(事前準備編)

Global Game Jamだ!!! 今年もやってきました、48時間でゲーム開発をするイベント「Global Game Jam」の札幌会場。 今年は過去5年で初めてオーガナイザー・運営メンバーではない一般参加での参戦。 今年の札幌会場は、なんと国内最大の会場に。ありがたい…

「cocos2d-xではじめるスマートフォンゲーム開発 」の発売と今後の展開

祝発売 cocos2d-xではじめるスマートフォンゲーム開発 [cocos2d-x Ver.3対応] for iOS/Android作者:三木 康暉技術評論社Amazon 『cocos2d-xではじめるスマートフォンゲーム開発』という本を出版します - 5.1さらうどん 単著でゲーム開発の技術書を執筆しての…