はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    ブラックフライデー

『kouki.hatenadiary.com』

  • 人気
  • 新着
  • すべて
  • iOSアプリ開発で実装中の機能をTestFlightだけで表示して本番では隠したい - Lento con forza

    31 users

    kouki.hatenadiary.com

    アプリ開発をしていると、実装完了までに時間がかかる大きな機能を作ることがあります。そういう時にはいくつかの戦略がありますが、僕はフィーチャーフラグでユーザーには見せない状態で少しずつ実装して、mainブランチにマージしていく方法が好みです。 OpenFeatureを入れたりしてもいいですが、もっと気軽に入れたいと思っていて色々考えていました。僕のユースケースでは、TestFlightとローカルビルドかどうかを判断できると良さそうです。TestFlightの時だけtrueになるフラグを準備できれば、まだ実装中の機能の動作確認が行えます。 調べてみると、appStoreReceiptURLを使う方法が出てきます。これを参考に実装しても良いのですが、iOS 18でDeprecatedになってしまいました。 stackoverflow.com 代わりに、AppTransactionが使えるようです

    • テクノロジー
    • 2025/09/30 15:46
    • iOS
    • あとで読む
    • SSGで最新のはてなブログ記事を表示する部分をWebhook機能で常に最新にする - Lento con forza

      19 users

      kouki.hatenadiary.com

      最近AIに自分のポートフォリオサイトを作ってもらいました。 kouki.hatenadiary.com このサイトに最新のブログ記事も表示したいなぁと思って、Copilot Agentにお願いしたら、これも一瞬でAIが作ってくれました。 技術ブログと日常ブログで最新3件のブログをコンパクトに表示してとお願いしたらこれが出来上がりました。ブログのURLは元からリポジトリにあるものを勝手に持ってきたし、feedのURLも特に与えず勝手にAgentが見つけてきました。すごいですね。 さて、このウェブサイトはAstroで作られていて、ブログ記事はビルド時に更新フィードを叩いてSSGする形で書かれています。多分よくある構成だと思います。 こうなると、ブログ記事を更新したとしても、次のビルドまでは少しの間古い情報が表示されることになってしまいますね。 そんな時に使える、はてなブログのWebhook機能

      • テクノロジー
      • 2025/04/05 22:50
      • はてなブログ
      • あとで読む
      • eyJから始まらないJWTを作りたい - Lento con forza

        4 users

        kouki.hatenadiary.com

        eyJから始まる文字列を見たら https://jwt.io/ を開きたくなる id:kouki_dan です、こんにちは。 この記事ははてなエンジニア Advent Calendar 2024の8日目の記事です。 さて、JWTといえば、eyJから始まる文字列です。なぜかというと、JWTはJSON文字列のBase64URLエンコードを元に作られていて、JSONの最初の3文字になりがちな {"(a-zA-Z)は、どれもBase64エンコードするとeyJから始まる文字列になるからですね。 % echo "{\"a" | base64 eyJhCg== % echo "{\"z" | base64 eyJ6Cg== % echo "{\"A" | base64 eyJBCg== % echo "{\"Z" | base64 eyJaCg== JWTの最初の方の文字列はヘッダ部で、Base64をデ

        • テクノロジー
        • 2024/12/08 00:47
        • 開発
        • App Storeでサブスクリプションのアプリ内課金を審査に通すまで - Lento con forza

          9 users

          kouki.hatenadiary.com

          アプリ内課金の経験を増やしたいな、と思って、個人でアプリ内課金の実装をしてみたいな、と思っていました。アプリ内課金、特にサブスクリプションは審査に通す難易度が高いと言われています。 作ったアプリの宣伝 PhotoGuesserというアプリを作りました。 PhotoGuesser Kouki Saitoエンターテインメント無料apps.apple.com 動画を撮ったので見てみてください!もしくはインストールして触ってみてください! www.youtube.com 実はiPadで開発しています。どうやってやっているの?と思った方はこちらもみてください! kouki.hatenadiary.com サポートURLはちゃんとしたものを使う App Storeではアプリごとに、サポートURLが必須になっています。これは開発者に連絡を取るための手段で、これまではXなどのURLで通っていたので、今回も

          • テクノロジー
          • 2024/10/09 17:35
          • アプリ
          • あとで読む
          • CI/CDサービスのOpenID Connect対応 Dive Into - Lento con forza

            78 users

            kouki.hatenadiary.com

            これははてなエンジニアアドベントカレンダー2022 39日目の記事です。 昨日は id:nakaoka3 の ミーティングの時間になると勝手に議事録を開いてほしいでした 先日あった、CircleCIのインシデントのAdditional security recommendationsとして、OIDC Tokenを使うことが推奨されていました。GitHub ActionsやCircleCIなどのCI/CDサービスでは外部サービスへの認証を行うために、OpenID Connectに対応しています。OpenID Connect対応がされていることは知っていたのですが、OpenID Connectといえば、外部サービス連携をしてログインに使うイメージだと思います。たとえば、Googleの認証情報で、はてなアカウントにログインするなどといったようにです。僕の中で、ユーザー認証に使うOpenID Co

            • テクノロジー
            • 2023/01/08 00:08
            • 認証
            • ci
            • 認可
            • OIDC
            • 継続的インテグレーシ
            • github
            • あとで読む
            • CD
            • cloud
            • 僕が全ての記憶を失った時に今のレベルのiOSエンジニアに戻るための道標 - Lento con forza

              6 users

              kouki.hatenadiary.com

              この記事は はてなエンジニア Advent Calendar 2022の15日目の記事です。はてなではモバイルアプリのエンジニアとして働いていて、主にiOSアプリを主領域としています。最近記憶がなくなったらどうしようと考えていたので、突然記憶喪失になっても仕事に困らないように記事にしてみました。僕ならこうしたい、ということなので、全ての人に再現性のあるわけではないとは思いますが、プログラミングをゼロから勉強するときの参考にも、少しはなると思います。 プログラミングを覚えた頃 プログラミングを覚えた頃の話は覚えていますか?僕はあまり覚えていません。 最初に触ったプログラミング言語は覚えていて、それはC言語です。モノづくりが好きだった僕がプログラミングに出会い、プログラミングの面白さと可能性を感じて、猫でもわかるプログラミングのC言語編をやりました。 猫Cは途中でCGIをC言語で実装する章があ

              • テクノロジー
              • 2022/12/15 08:33
              • Dynamic IslandがあるiPhone 14 ProなどでナビゲーションバーのminYとsafeAreaInsets.topが一致しなくなっている - Lento con forza

                7 users

                kouki.hatenadiary.com

                こういうツイートをしたんだけど何も反応がなかったのでブログにも・・・・ お客様の中にNavigation BarのY位置がDynamic Islandを持つデバイスでhttps://t.co/IZANgdh7Fwと一致しなくなっていることにお困りの方はいらっしゃいませんか〜〜〜— こーき@だん (@kouki_dan) 2022年10月17日 iPhone 14 ProにおけるSafe areaとナビゲーションバーの扱い iPhone 14 ProでDynamic Islandが導入されましたが、Safe areaの扱いも色々と変わっていそうで、以下のスクショを見てもらえるとわかります。 view.safeAreaInsets.topと ---------- の下の計算結果は、これまでのデバイスでは一致していました。つまり、ナビゲーションコントローラーなしのSafe areaにナビゲーショ

                • テクノロジー
                • 2022/10/19 10:33
                • iOS
                • GitHub Actionsで次のリリースにどんな変更が含まれるかを可視化する - Lento con forza

                  164 users

                  kouki.hatenadiary.com

                  この記事は はてなエンジニア Advent Calendar 2021 の16日目の記事です。昨日は id:masayosu の はてなにおけるCloudNative推進会の活動について でした。 サブ会という仕組みで専門領域における情報共有や深い議論ができるようになっていて、僕もスマート会*1に所属しています はてなではリリースブランチへのマージPRの管理にgit-pr-releaseをよく使っています。 git-pr-releaseは現在のリリースブランチのheadとの差分にあるPull Requestを一覧して、リリース前にチェックできます。このgit-pr-releaseはとても便利で、git-flowのようなブランチ戦略に非常にマッチしています。 一方、リリースブランチのないGitHub Flowのようなブランチ戦略を取った場合、リリースブランチが作られないため、マージ先のブラン

                  • テクノロジー
                  • 2021/12/16 00:23
                  • github
                  • github actions
                  • git
                  • あとで読む
                  • release
                  • はてな
                  • techfeed
                  • CI
                  • ブランチ
                  • 運用
                  • iOS 13でもStateObjectが使いたい! - Lento con forza

                    5 users

                    kouki.hatenadiary.com

                    iOS 14から使えるStateObject、とても便利ですよね developer.apple.com ObservableObjectなどを初期化するときに便利です。 class Object: ObservableObject { @Published var value = "value" } struct Content: View { @StateObject var object = Object() var body: some View { Text(object.value) } } ただ、これはiOS 14以降でしか使えないため、iOS 13に対応が必要な場合は使えません。代わりにObservedObjectを使います。 struct Content: View { @ObservedObject var object = Object() var body: som

                    • テクノロジー
                    • 2021/06/22 23:06
                    • SwiftUI
                    • WEB+DB PRESSでiOS開発の特集を執筆したのでiOSアプリ開発を振り返ってみます - Lento con forza

                      40 users

                      kouki.hatenadiary.com

                      最近iOSアプリ開発を振り返るタイミングがありました。どういうことかというと、いきなり宣伝になるのですが、先日発売したWEB+DB PRESSでiOSアプリ開発の最前線についての特集を同僚のid:cockscomb、id:yutailang0119と一緒に執筆しました。 gihyo.jp Macを手に入れてiOSアプリの開発を始める iOSアプリ開発を始めるにはMacを手に入れる必要がありますね。僕がiOSアプリ開発を始めたきっかけは、2011年ごろにスマホブラウザゲーム開発コンテストの9leap*1で入賞して、MacBook Airをもらったことでした。iOSアプリ開発の最初の壁とも言えるMacを手に入れることができて、Macの快適な操作性、SSDによる爽快な動作、美しいフォント、統一された体験を感じ、一瞬でAppleのファンになりました。 当時からプログラミングは好きだったので、当然の

                      • テクノロジー
                      • 2021/02/24 17:33
                      • iOS
                      • あとで読む
                      • アプリ
                      • Mac
                      • 開発
                      • まとめ
                      • ソースコードをパッと見せられてアルゴリズムの名前を答える早押しクイズをやりたかったので作った - Lento con forza

                        4 users

                        kouki.hatenadiary.com

                        ソースコードをパッと見せられてアルゴリズムの名前を答える早押しクイズやりたい— こーき@だん (@kouki_dan) 2021年2月5日 最近アルゴリズムの話題をよくTwitterで見かけるので、こういうクイズあったら面白いかも?と思ったので作ってみました こちらから遊べます! アルゴリズム検定!ソースコードを見て正しいアルゴリズムを選んでね! リポジトリはこちらです: GitHub - kouki-dan/algo-q 僕はアルゴリズムプロではないので間違ってたらPRください!*1 編集後記1 1問目、めっちゃコードの量を短くしていて読みにくくしてるだろ!って思った方もおられるのかもしれないですが、最初はニコニコQのテキスト入力機能を使って実装しようとしていたので、100文字制限がありコードゴルフをしていました 2乗の枝刈り削除や、if文の省略などにより、100文字以下を達成できたので

                        • テクノロジー
                        • 2021/02/06 21:34
                        • Next.jsのアプリをFirebase Hostingでいい感じに連携する - Lento con forza

                          7 users

                          kouki.hatenadiary.com

                          最近Next.jsとFirebaseばかりやっています。って書きましたが、本当はこの一ヶ月どうぶつの森しかやってませんでした。どうぶつの森のプレイ時間は200時間を超えました。 そろそろエンジニアとしても生活したくなってきたのでエンジニアっぽい話をします。Next.jsで作ったアプリをデプロイする先の選択肢として、Verselを使うと便利です。 SSRが必要なく、静的ファイルをデプロイすれば良い場合はFirebase Hostingなども選択肢に入ります。Firestoreなどと組み合わせて使っている時は、設定を工夫することで便利に使うことができます。今回の記事ではNext.jsで作ったアプリをFirebaseと組み合わせて使う方法を紹介します。 Firebase HostingにNext.jsの静的生成機能を使ってデプロイする まずは、npm initから始めます。 npm init n

                          • テクノロジー
                          • 2020/07/06 21:08
                          • 開発
                          • *あとで読む
                          • GolangはテストのためにInterfaceで公開しない - Lento con forza

                            6 users

                            kouki.hatenadiary.com

                            最近は趣味でGolangとTypeScriptを書いています。Golangのドキュメントを見ていると気になる記述を見つけたのでブログに書き残します。 ここに書いてあることです。 github.com あるモジュールをテストしたい時に、モックのためにインターフェースで公開する場合があります。 ここではwikiの例をお借りして、Thingerという型がThingというメソッドを持っている場合について記述します。 // DO NOT DO IT!!! package producer type Thinger interface { Thing() bool } type defaultThinger struct{ … } func (t defaultThinger) Thing() bool { … } func NewThinger() Thinger { return defaultT

                            • テクノロジー
                            • 2019/12/09 16:02
                            • golang
                            • interface
                            • test
                            • SlackでクイズができるSlack Appsを作った - Lento con forza

                              43 users

                              kouki.hatenadiary.com

                              こんばんは! id:kouki_dan です! この記事は、はてなエンジニア Advent Calendar 2019の8日目の記事です。 昨日は id:hokkai7go さんのはてなSREチームにおけるスクラムの実践というタイトルでJuly Tech Festa2019に登壇しますでした。July Tech Festa2019はちょうど今日行われているみたいなので、どんな発表が行われるか楽しみですね。 今日はSlackで遊ぶ話をします。 僕とSlack 僕はSlackで遊ぶのが好きで、これまでSlack上で将棋ができるようにしたり、Slack上でボンバーマンで遊べるようにしたりしてきました。今日はSlackで遊ぼうシリーズ第三弾として、最近作ったものの紹介と技術的な話をします。 ところで、僕は最近クイズにハマっています。みんなで早押しクイズという早押しクイズのアプリでは、Aランクまでや

                              • テクノロジー
                              • 2019/12/08 10:32
                              • slack
                              • あとで読む
                              • GitHub Actionsをクリックして発行できるGitHub Appsを作った - Lento con forza

                                5 users

                                kouki.hatenadiary.com

                                GitHub Actionsがマイブームです。とても便利なGitHub Actionsですが、「ボタンを押してデプロイ」のようなことができないのが不便でした。 GitHub Actionsをトリガーするボタンを作るサービスを作りたいって思ってるけどこれあと5分待てば公式から出るでしょと思い続けて2週間近く経ちました— こーき@だん (@kouki_dan) September 4, 2019 5分待てば公式のものができると思いつつ、なかなか出ないので作ってしまいました。 作ったもの Action Buttonというサービスを作りました。 リポジトリはこちらです GitHub Actionsのトリガーには外部イベントをトリガーとする repository_dispatch というものがあります。 ワークフローをトリガーするイベント - GitHub ヘルプ 任意のリポジトリに対し、この re

                                • テクノロジー
                                • 2019/11/27 20:49
                                • GitHub Actionsを使ってFirebase App Distributionへ配布する - Lento con forza

                                  10 users

                                  kouki.hatenadiary.com

                                  FirebaseとGitHub Actionsがマイブームの id:kouki_dan です。 つい先日Firebase App Distributionがリリースされましたね! firebase.google.com FirebaseはFabricの機能を順次Firebaseで扱えるようにしていますが、App Distributionは今までFabric Betaで行なっていたBeta版、テスト版のアプリを社内やテスターの方に配布できるサービスです。 似たようなサービスとしてはDeployGateが有名ですね。 そんなFirebase App DistributionをGitHub Actionsで使ってみようというのが今回の記事になっています。GitHub Actionsのおかげで、外部CIを使うことなくビルドの自動化が行えるようになりました。 iOSアプリのDistribution

                                  • テクノロジー
                                  • 2019/10/04 08:57
                                  • fastlane
                                  • GitHub Actions
                                  • firebase
                                  • git
                                  • app
                                  • github
                                  • .appという画期的でセキュアなgTLDについて - Lento con forza

                                    255 users

                                    kouki.hatenadiary.com

                                    .appというgTLDをご存知でしょうか。gTLDはgeneric top-level domainの略後で、ICANNが管理しているトップレベルドメインのことです。 有名どころでは.comや.net等があります。このブログのURLは https://kouki.hatenadiary.com ですが、この.comの部分がトップレベルドメインです。*1 このトップレベルドメインはICANNという組織が管理しています。2012年までは限られたトップレベルドメインしか存在しませんでしたが、2012年の公募では基準を定め、その基準を満たした団体は自由にgTLDを作ることができるようになりました。これ以降大量のトップレベルドメインが登録され、今では様々なドメインを利用することができます。 その中の一つ、appドメインが去年話題を呼びました。 appドメインはセキュアなドメイン そんなappドメイン

                                    • テクノロジー
                                    • 2019/02/11 01:51
                                    • ドメイン
                                    • security
                                    • https
                                    • あとで読む
                                    • セキュリティ
                                    • gTLD
                                    • network
                                    • サービス
                                    • Web
                                    • Slackで将棋を動かしてみる - Lento con forza

                                      34 users

                                      kouki.hatenadiary.com

                                      土曜日の夜のことです。ふと友達とslackで話していて将棋がやりたいね。という話になりました。 当然将棋をやるためには、将棋盤と駒が必要で、それらを動かし、更にその状態を最低2者間で共有する必要があります。手軽に無料でこれらの事がどのような環境でもできるサービスは私達の知るところ存在しません。近いところで言えば、将棋倶楽部24や、将棋ウォーズでしょうか。それらでさえも、有料であったり、時間制限が強要され友達同士で自由に対局を行いにくいという問題を抱えています。幸いにも僕たちはエンジニアで、ないものは創りだす事ができます。当然今回も手軽にできてマルチプラットフォームの将棋を作ろうという事になりました。 Slackというプラットフォーム 皆さんはSlackというサービスをご存知でしょうか。社内チャットとして有用だと言うことで広まったこのサービスですが、現在においてはオープンソースコミュニティで

                                      • アニメとゲーム
                                      • 2016/07/19 00:54
                                      • slack
                                      • game
                                      • shogi

                                      このページはまだ
                                      ブックマークされていません

                                      このページを最初にブックマークしてみませんか?

                                      『kouki.hatenadiary.com』の新着エントリーを見る

                                      キーボードショートカット一覧

                                      j次のブックマーク

                                      k前のブックマーク

                                      lあとで読む

                                      eコメント一覧を開く

                                      oページを開く

                                      はてなブックマーク

                                      • 総合
                                      • 一般
                                      • 世の中
                                      • 政治と経済
                                      • 暮らし
                                      • 学び
                                      • テクノロジー
                                      • エンタメ
                                      • アニメとゲーム
                                      • おもしろ
                                      • アプリ・拡張機能
                                      • 開発ブログ
                                      • ヘルプ
                                      • お問い合わせ
                                      • ガイドライン
                                      • 利用規約
                                      • プライバシーポリシー
                                      • 利用者情報の外部送信について
                                      • ガイドライン
                                      • 利用規約
                                      • プライバシーポリシー
                                      • 利用者情報の外部送信について

                                      公式Twitter

                                      • 公式アカウント
                                      • ホットエントリー

                                      はてなのサービス

                                      • はてなブログ
                                      • はてなブログPro
                                      • 人力検索はてな
                                      • はてなブログ タグ
                                      • はてなニュース
                                      • ソレドコ
                                      • App Storeからダウンロード
                                      • Google Playで手に入れよう
                                      Copyright © 2005-2025 Hatena. All Rights Reserved.
                                      設定を変更しましたx