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

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

アプリで開く

はてなブックマーク

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

はてなブックマーク

トップへ戻る

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

    WWDC25

『qiita.com』

  • 人気
  • 新着
  • すべて
  • WIP: Oracle JDK は Java 17 以降も本番環境では有償の可能性あり - Qiita

    3 users

    qiita.com/oohira

    この記事は、誤った内容を含む可能性があります。 2022/05/14 時点での筆者個人の見解に基づいて記載されており、筆者の所属組織の見解や、筆者自身が Oracle 社に直接確認した情報を表すものではありません。 この記事は、確定的な情報を提供することはできませんが、そもそも懸念があることにすら気付けていない人への注意喚起になればと思って公開します。願わくば、今後誤解が起きづらい状態に何かしらのアップデートがあることを期待します。 Java 17 のリリースとともにアナウンスされた Oracle JDK の NFTC (Oracle No-Fee Terms and Conditions) ライセンス により、乱立する JDK ディストリビューション問題に決着をつけ、今後は Oracle JDK でいけると思った人も多いのではないでしょうか。 Webでもこのライセンス変更が大きく取り上げ

    • テクノロジー
    • 2022/05/25 08:00
    • 定期スクリプト実行環境としてのGitLab CIのススメ - Qiita

      4 users

      qiita.com/oohira

      ラクスAdvent Calendar 2021 の2日目は、スプリットキーボードならぬデュアルキーボード歴2ヶ月の @oohira が、左手に Magic Keyboard、右手に REALFORCE というごった煮環境からお送りします。 昨日は「初日取ったった!」してくれた @Y-Kanoh さんの「GASでカユいところに手が届いたTips3選」でした。勢い、大事ですね。 はじめに これまで定期実行したいちょっとしたスクリプトは、個人PCやプロジェクト共用サーバー、Jenkins などを使って実行していましたが、ここ数年で GitLab CI を使って実行する方法に完全に落ち着きました。この記事では、社内のメンバーも読者に想定しつつ、GitLab CI のよさと簡単な始め方を紹介したいと思います。 背景と前提 GitLab CI(や GitHub Actions)が登場する前の世界では、

      • テクノロジー
      • 2021/12/04 21:25
      • GitHub
      • あとで読む
      • JUnit 5 のパラメーター化テストは超便利 - Qiita

        6 users

        qiita.com/oohira

        JUnit 5 といえば @Nested テストが一押しかなと思っていた時期もありましたが、 @ParameterizedTest を使い始めたら「JUnit 4 のあれは何だったんだ」と思えるくらい手になじんでとてもいい感じです。これだけでも移行をオススメできます。 確認環境 JUnit 5.3 AdoptOpenJDK 11.0.3+7 macOS 10.14.3 ValueSource パラメーターは、@ValueSource アノテーションを使って指定します。パラメーターの型に応じて、ints や strings、 doubles プロパティなどがあります。

        • テクノロジー
        • 2020/01/27 15:45
        • java
        • PDFの画像比較をリファクタリングに活かす - Qiita

          3 users

          qiita.com/oohira

          今年で2回目となるラクスのアドベントカレンダーです 言い出しっぺの法則により今年もトップバッターになってしまいましたが、今年は新たに RAKUS Developers Blog が始まるなど少しずつ情報共有の取り組みが進んできたので、来年こそは別のメンバーに譲りたいなと目論んでいます。何はともあれクリスマスまでお楽しみに さて、サービスが5年あるいは10年と成長を続けると、いわゆるレガシーコードとの闘いは避けて通れません。これから新たに開発するサービスであれば違うかもしれませんが、5年前、10年前に開発したサービスであれば自動テストも十分でない(そもそも書けない)ことも多く、かといってお金を生んでいる大事なコードだけに捨てることも難しく、うまく付き合っていくしかありません。 そんな中、今回 PDF の出力処理をリファクタリングするシーンで、「ユニットテストの代わりにリファクタリング前後の

          • テクノロジー
          • 2018/04/12 18:48
          • PDF
          • Java 9時代のAES 256暗号 - Qiita

            27 users

            qiita.com/oohira

            もうポリシーファイルは要りません。 大事なことなのでもう一度言います。もうポリシーファイルは要りません。 背景 Java では標準ライブラリの Cipher クラスを使えば、サードパーティのライブラリを使うことなく AES 暗号を扱うことができます。しかし、AES 暗号はアメリカの輸出規制の対象になっているらしく、標準では 128bit までの鍵しか扱えません。日本のようにこの輸出規制の対象にならない国では、別途 Oracle から無制限強度のポリシーファイルをダウンロードして、システムに上書きする必要があることは有名な話です。 JavaでAES256を使用できるようにする ポリシーファイルを差し替えれば AES 256 暗号を使えるのでよいのですが、よいのですが、...正直いって非常に面倒です。このあたりの経緯を知らない人に説明するのも面倒ですし、JDK を更新するたびに差し替えるのも面

            • テクノロジー
            • 2017/12/08 16:45
            • java
            • java9
            • 暗号化
            • security
            • セキュリティ
            • あとで読む
            • JSON-RPCって何? - Qiita

              19 users

              qiita.com/oohira

              この記事は、JSON-RPC 2.0 を調べたことを走り書きしたレベルものです。実際の利用経験に基づいた情報でもなければ、しっかり時間をかけて裏付けをとった情報でもないため、誤った理解が含まれている可能性がある点にご注意ください。ツッコミや編集リクエストは歓迎します。 概要 JSON-RPC は、 RPC (Remote Procedure Call) を実現するプロトコルの1つです。その名の通りJSON形式でリクエスト&レスポンスを表現するシンプルな仕様となっています。 例えば、次のようなリクエストをJSONで送ると、別のマシンで subtract(42, 23) が実行され、結果の 19 がレスポンスとして返ってきます。

              • テクノロジー
              • 2017/10/07 16:30
              • json
              • Javascript
              • あとで読む
              • カンバンの担当者マグネットの作り方 - Qiita

                11 users

                qiita.com/oohira

                ちょっと前からチームでカンバンを始めたのですが、担当者の表示がテキストだとやっぱり味気ないということで、プロフィール写真を使ったマグネットをDIYすることにしました。ちょっと技術ネタとずれてしまいますが、新しいメンバーが加わったらまた増産しなければいけないので、自分用のメモとして残しておきます。 はじめに アバター付きのマグネットを作る方法はおそらく3つ考えられますが、ここで紹介するのは3.の方法です。 プリンター印刷可能なマグネットシートに直接印刷する シール付き写真用紙に印刷し、マグネットシートに接着する ただの写真用紙に印刷し、マグネットシートにのりや両面テープで接着する 1.が最も手軽なはずで、「ぴたえもん 光沢A4 4枚入 MSPG-03-A4-1(マグエックス)」などが使えると思います。ただ、薄くて磁石が弱そうだったので、今回は採用を見送りました。 そこで、2.のつもりで「手作

                • テクノロジー
                • 2017/09/20 10:13
                • あとで読む
                • gRPCって何? - Qiita

                  96 users

                  qiita.com/oohira

                  // Code generated by protoc-gen-go. DO NOT EDIT. // source: helloworld.proto ... package helloworld ... // The request message containing the user's name. type HelloRequest struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` } func (m *HelloRequest) Reset() { *m = HelloRequest{} } func (m *HelloRequest) String() string { return proto.CompactTextString(m) } func (*HelloReq

                  • テクノロジー
                  • 2017/09/07 14:52
                  • grpc
                  • RPC
                  • API
                  • google
                  • Qiita
                  • ESLintで特定ルールの警告だけ修正する - Qiita

                    7 users

                    qiita.com/oohira

                    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

                    • テクノロジー
                    • 2017/06/15 10:09
                    • eslint
                    • javascript
                    • JavaでJPEG画像の保存品質を変更する - Qiita

                      3 users

                      qiita.com/oohira

                      JPEG画像をリサイズして保存したいことはたまにあると思います。ImageMagickを使っていいなら話は早いのですが、どうしてもJavaだけで完結させたい場合は、ImageIOを使うことになります。 ただし、一番シンプルな実装方法ではJPEG画像の保存品質が自動的に「75」にされてしまうようなので注意が必要です(Java 8で確認)。見事にハマりました。 保存品質を指定できない方法 実装自体はシンプルだけど、保存品質を変更したい場合には NG です。 public static byte[] resize(final byte[] src, final double scale) throws IOException { try (ByteArrayInputStream is = new ByteArrayInputStream(src); ByteArrayOutputStream

                      • テクノロジー
                      • 2017/04/16 08:14
                      • 画像
                      • java
                      • Pythonのargparseでサブコマンドを実現する - Qiita

                        9 users

                        qiita.com/oohira

                        Python 3 で argparse を使ってサブコマンドをパースする方法を説明します。が、Python に詳しくないのでもっといい方法があるかもしれません。標準ライブラリだけで済ませたいけど、argparse は高機能過ぎて使いづらい… やりたいこと git コマンドのように git add や git commit を作る サブコマンドごとのヘルプを見る git help を作る サンプルコード ポイントとしては次の通りです。 parser.add_subparsers() で parser を入れ子にする parser_〇〇.set_defaults(handler=関数名) でサブコマンドごとの処理をハンドラ関数に移譲する 未知のサブコマンドが指定された場合はヘルプを表示する # !/usr/bin/env python # coding: utf-8 import argpar

                        • テクノロジー
                        • 2017/01/09 12:28
                        • argparse
                        • python
                        • IntelliJ IDEA でクリップボードと diff をとる - Qiita

                          5 users

                          qiita.com/oohira

                          diff 大好きエンジニアの @oohira です。コードにしろドキュメントにしろ、目的の修正と関係ない差分が混ざっているとテンションが下がりますよね。特に、空白やタブが意図せず混入していた暁には、「コミット前に diff は確認したのか!」と叫びたくなります。 そんな私が好きな IntelliJ IDEA のニッチ機能が、編集中のコードとクリップボードのテキストを比較できる 「Compare with Clipboard」 機能です。 使い方 あらかじめ比較対象のコードをコピーしてクリップボードに入れておく IntelliJ IDEA でクリップボードと比較したいコードを範囲選択する 右クリックから Compare with Clipboard を実行する 何が嬉しいのか エンジニアであれば誰しも次のようなシーンで diff を使ったことがあると思います。 あるファイルをコミットする前に

                          • テクノロジー
                          • 2016/12/24 09:15
                          • ~/.ssh/config による快適 SSH 環境 - Qiita

                            7 users

                            qiita.com/oohira

                            言いだしっぺの法則により、Advent Calendarのトップバッターになってしまったので、Web開発で便利なTipsを紹介したいと思います。 概要 ~/.ssh/config にサーバーごとの接続設定を書いておくと、ssh コマンドや scp コマンドを実行するたびにいちいち引数を指定する必要がなくなり、幸せになれます。 初級編 ユーザー名やポート番号の指定 通常、ログインユーザーとは異なるユーザーや、22番以外のポートを使ってSSH接続する場合は、次のようにコマンドライン引数で指定してあげる必要があります。

                            • テクノロジー
                            • 2016/12/02 12:28
                            • ssh
                            • config
                            • tips
                            • Gitのコミットグラフを可視化できるGitGraph.jsがおもしろい - Qiita

                              138 users

                              qiita.com/oohira

                              プレゼン資料を作っている時に「このコミットグラフをMarkdownかテキストで書けたらな」と思ったことがある人、結構いるのではないでしょうか。 GitGraph.js を使うと、JavaScriptで記述したコミットログをcanvasを使って可視化できることを知りました。なかなかおもしろいです。 準備 まず GitGraph.js の JavaScript と CSS ファイルを読み込みます。GitHub からソースをcloneするなり、bowerを使うなり、CDNを使うなり、お好みで。ここではコミットグラフを定義するコードも別ファイル index.js に書くことにします。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>GitGraph.js</title> <link rel="stylesheet" type=

                              • テクノロジー
                              • 2016/09/29 21:02
                              • git
                              • JavaScript
                              • visualization
                              • canvas
                              • graph
                              • コミット
                              • あとで読む
                              • グラフ
                              • Markdown
                              • js
                              • ESP-WROOM-02 でつくる IoT ハト時計 - Qiita

                                3 users

                                qiita.com/oohira

                                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? IoT シロウトが社内ハッカソンでプログラマブルなハト時計を作ろうとして、あれこれ分からなさ過ぎて困ったので、大したことではないですが分かった範囲のことを記録として残しておきます。 作ったもの Web 上の API サーバーから会議の情報を取得して、会議の終了が近づくとハトが動いてお知らせする、というもの。いわば、鳴くタイミングをプログラムで制御できるハト時計(鳴かないんだけど…)。 (動画) https://www.youtube.com/watch?v=JB2AUmH3zAM 社内ハッカソンで @radiocatz と作った「KAI

                                • テクノロジー
                                • 2016/07/11 10:06
                                • npm shrinkwrapで依存モジュールのバージョンを固定 - Qiita

                                  12 users

                                  qiita.com/oohira

                                  Node.jsで作られたアプリケーションをデプロイするときに、npm shrinkwrapを使って依存モジュールのバージョンまで固定した状態でインストールする方法を紹介します。 背景 npm install で依存モジュールをインストールするとき、package.json で ^1.2.3 や ~1.2.3 といったバージョン指定をしているモジュールが1つでもあると、semver に従って 1.2.5 などのより新しいバージョンがインストールされる可能性があります。 セマンティックバージョンの意味からすれば、1.2.3 が互換性のある 1.2.5 に置き換わっても同じように動作すべきですが、現実問題としてテストしたバージョンと本番にデプロイされるバージョンが意図せず変わってしまうのは気持ちが悪く、依存モジュールを含めてバージョンを固定する方法を調べました。 実現方法 まずは npm ins

                                  • テクノロジー
                                  • 2015/08/29 14:28
                                  • node.js
                                  • npm
                                  • javascript
                                  • JavaScript Consoleに面白い出力をしているサービス - Qiita

                                    8 users

                                    qiita.com/oohira

                                    社内のもくもく勉強会でちょっとしたネタとして紹介した話。勉強会のときはネタバレしないように資料なしで発表したのだけど、せっかくなので簡単にまとめておきます。 そもそものきっかけは、ChromeのDevToolsが便利すぎるんだけど、意外に知らない機能が多いから調べて共有しようということでした。そしたらJavaScript Consoleにはただのログだけじゃなく、CSSでスタイル付きのログを出力したり、テーブルまで出力したりできることが分かったので、これはきっと面白い出力をしているサービスがあるに違いないと脱線してしまったのが発端です。 https://developer.chrome.com/devtools/docs/console-api https://developer.chrome.com/devtools/docs/commandline-api 採用系 定番な使い方は採用メ

                                    • テクノロジー
                                    • 2015/06/30 18:18
                                    • javascript
                                    • JavaScript でタイムゾーン名を取得する方法 - Qiita

                                      7 users

                                      qiita.com/oohira

                                      JavaScript で Asia/Tokyo や America/Los_Angeles のような IANA Time Zone Database で定義されたタイムゾーン名を取得する方法ですが、 結論 結論から言うと、正確に取得する方法はありません。 JavaScript の Date には、タイムゾーン名を取得する API がないからです。 var date = new Date(); date.toString(); // => "Fri Sep 19 2014 04:49:59 GMT-0700 (Pacific Daylight Time)" date.getTimezoneOffset(); // => 420 Date を文字列化すると夏時間も考慮したタイムゾーンの名前が出力されて惜しい感じですが、仕様が決まっているわけではないのでブラウザ毎に違っていて使えません Date

                                      • テクノロジー
                                      • 2015/06/18 15:18
                                      • timezone
                                      • javascript
                                      • Java 8 新機能つまみぐい - Qiita

                                        37 users

                                        qiita.com/oohira

                                        Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

                                        • テクノロジー
                                        • 2015/05/28 20:34
                                        • java8
                                        • java
                                        • ラムダ式
                                        • lambda
                                        • 技術
                                        • 資料
                                        • 開発
                                        • programming
                                        • 続:今さらだけどIntelliJ IDEAで使えるJavaのブレークポイントあれこれ - Qiita

                                          4 users

                                          qiita.com/oohira

                                          以前、IntelliJ IDEAでJava開発するときに使える基本的なブレークポイントについて紹介しました。 今さらだけどIntelliJ IDEAで使えるJavaのブレークポイントあれこれ 今回は、そのときに力尽きて書けなかった「条件付きブレークポイント」機能について紹介したいと思います。条件付きブレークポイントを使うと、ブレークポイントで実行中断する条件をより柔軟に制御できるようになります。毎日使うような機能ではありませんが、いざというときに知っておいて損はないと思います。 条件式が成立したときだけストップ 一定回数ごとにストップ 別のブレークポイントにヒットした後でストップ ストップせずにログ出力 条件式が成立したときだけストップ 繰り返し実行される処理にブレークポイントを設定するときに、毎回無条件でストップするのではなく、ループカウンタの値やノードの種類が特定の条件(ex. i =

                                          • テクノロジー
                                          • 2014/05/12 15:11
                                          • Programming
                                          • 今さらだけどIntelliJ IDEAで使えるJavaのブレークポイントあれこれ - Qiita

                                            13 users

                                            qiita.com/oohira

                                            IntelliJ IDEAに限った機能ではありませんが、IntelliJ IDEAでJava開発する際に知っておくと便利なブレークポイントを紹介したいと思います。 「そんなの知っている」「今さらJavaか」という声はさておき、この記事をSくんとSさんにささげます。 ブレークポイントの種類 一口にブレークポイントと言っても実は様々な種類があり、色々な条件でプログラムの実行を中断できるようになっています。今回は、以下のブレークポイントを順に説明します。 Line Breakpoint Temporary Line Breakpoint Method Breakpoint Exception Breakpoint Line Breakpoint - 指定した行でストップ これは誰もがお世話になっているブレークポイントですね。ソースコードの横っちょのバーをクリックするなり、 Ctrl + F8 を

                                            • テクノロジー
                                            • 2013/12/06 20:47
                                            • IntelliJ
                                            • IntelliJ IDEA
                                            • debug
                                            • java

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

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

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

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

                                            j次のブックマーク

                                            k前のブックマーク

                                            lあとで読む

                                            eコメント一覧を開く

                                            oページを開く

                                            はてなブックマーク

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

                                            公式Twitter

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

                                            はてなのサービス

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