タグ

ブックマーク / gihyo.jp (12)

  • さらなる進化を遂げた「uv」の新機能 | gihyo.jp

    福田(@JunyaFff)です。連載Python Monthly Topicsで2024年3月に公開したRust製のPythonパッケージ管理ツール「uv」を使ってみよう で紹介した「uv」が、さらなる進化を遂げました。今回は、その新機能を紹介します。 はじめに Astral社が開発するRust製の高速なpipの代替ツール「uv」がパッケージマネージャーとして8月にアップデートされました。pipの代替ツールとしてだけでなく、Pythonプロジェクト、コマンドラインツール、単一ファイルスクリプトさらにPython自体を管理できるようになりました。uvは、pipやpipx、venv、poetryやpyenvのような機能を包括していると言え、そしてそのすべてが非常に高速に動作します。 記事では、アップデートした「uv」の新機能を中心に紹介します。 基的な使い方は Rust製のPython

    さらなる進化を遂げた「uv」の新機能 | gihyo.jp
  • SQL緊急救命室 ──非効率なコードを改善せよ!

    2024年9月14日紙版発売 2024年9月14日電子版発売 ミック 著 A5判/432ページ 定価3,520円(体3,200円+税10%) ISBN 978-4-297-14405-0 Gihyo Direct Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 2011~2012年に『Web+DB Press』誌上で連載された「SQL緊急救命室」の書籍化です。病院を舞台としてダメなSQL文が毎回持ち込まれて,どこが非効率なのか,どこが間違っているのかをコミカルな対話形式で議論しながら効率的で正しいSQL文の書き方を学びます。中級者向けのSQL解説書は内容が難しく読者にと

    SQL緊急救命室 ──非効率なコードを改善せよ!
    red_tanuki
    red_tanuki 2024/08/29
    秒で予約した
  • Rust 1.80がリリース ―遅延初期化が安定して利用可能に | gihyo.jp

    The Rust teamは2024年7月25日、プログラミング言語Rustの最新バージョンRust 1.80をリリースした。 Announcing Rust 1.80.0 | Rust Blog Rust 1.80では遅延初期化を行うLazyCell型とLazyLock型が標準ライブラリで採用される。これらの「遅延」型は、リソースへの最初のアクセスまでデータの初期化を遅らせることができる。これによりプログラムの実行時間を短縮し、無駄な計算やメモリの確保を抑えることができる。1.70で採用されたOnceCell型とOnceLock型に似ているが、LazyCell/LazyLockでは初期化関数がセルに含まれているためこれまでの遅延型よりも安定化されている。 LazyLockはスレッドセーフなので同じ初期化を何度も行わず、最初の1度だけ初期化を実行する。LazyCellもスレッド同期なしで同

    Rust 1.80がリリース ―遅延初期化が安定して利用可能に | gihyo.jp
  • 第223回  MySQL Shellをいろいろな環境にインストールしよう | gihyo.jp

    今回は、今まで紹介してきたMySQL ShellをWindowsmacOSLinux(Ubuntu、OracleLinux)にインストールしてみようと思います。今まではDockerコンテナ内にあるMySQL Shellを活用していましたが、今回はローカル環境にインストールする方法を紹介します。 この記事は2024年6月時点のものとなりますので、最新情報が必要な場合は、必ず公式のドキュメントを確認してください。 検証環境 今回はMySQL環境として、Dockerで建てたMySQLを使用します。以下のコマンドでDockerを建てて、ローカルからアクセスをします。 % docker run --platform linux/x86_64 -p 127.0.0.1:3307:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_USER=kk217

    第223回  MySQL Shellをいろいろな環境にインストールしよう | gihyo.jp
  • Threads APIの一般提供がはじまる ~API経由で投稿や返信管理、インサイトの取得などが可能に | gihyo.jp

    ユーザーはAPI経由で投稿の作成やユーザー自身のコンテンツの取得ができるほか、返信管理機能を利用して返信と引用をコントロールすることができ、特定の投稿にについての返信を非表示/表示にしたり、返信できるように設定できる。また、APIのうち最も要望の多い機能の1つだったインサイト(指標)については、メディアおよびアカウントレベルでの閲覧数、いいね!の数、返信/再投稿/引用の数、およびフォロワー数とその属性を確認できるものが用意されている。 Threads APIの詳細は、Metaの開発者向けドキュメントを参照。また、Threads APIユースケースのページでは、実際にAPIを利用してアプリを作成、カスタマイズする方法を紹介している。 このほか、APIの使い方を参照・学習するために、GitHub上でThreads APIを使ったサンプルアプリをオープンソースで公開している。

    Threads APIの一般提供がはじまる ~API経由で投稿や返信管理、インサイトの取得などが可能に | gihyo.jp
  • Threadsがfediverseへの統合機能をベータ版として提供開始 ―Mastodon、Misskeyなどと投稿共有可能に | gihyo.jp

    Threadsがfediverseへの統合機能をベータ版として提供開始 ―Mastodon⁠⁠、Misskeyなどと投稿共有可能に Metaは2024年3月21日、同社のソーシャルサービスThreadsでfediverseへの投稿やプロフィール共有などが可能になったことを発表した。これはベータ版エクスペリエンスの一環で、米国をはじめいくつかの国で公開プロフィールを持つ18歳以上のThreadsユーザーが、Threadsへの投稿を他のActivityPub準拠サーバーで共有することが選択可能となった。 Threads has entered the fediverse - Engineering at Meta Threadsとフェディバースについて | Instagramヘルプセンター Threadsでフェディバースでのシェアをオンにする | Instagramヘルプセンター fedive

    Threadsがfediverseへの統合機能をベータ版として提供開始 ―Mastodon、Misskeyなどと投稿共有可能に | gihyo.jp
  • 2023年Misskey開発まとめ | gihyo.jp

    連載では分散型マイクロブログ用ソフトウェアMisskeyの開発に関する紹介と、関連するWeb技術について解説を行っています。 今回は2023年のMisskeyの開発についての振り返りとまとめを行いたいと思います。 Note:全体的な視点での2023年のMisskeyをまとめた記事は、Misskey Advent Calendar 2023のほうに「Misskey 2023 recap」と題して投稿しています。興味のある方はそちらをご覧ください(一部内容が重複しますがご容赦ください⁠)⁠。 2023年のMisskey開発 今年も残りわずかとなりました。Misskeyは2014年ごろから開発を始めたので、来年で10年目突入ということになります。ここまで開発を続けられているのは皆様のサポートのおかげです。当にありがとうございます。 ロードマップに対しての進捗 Misskeyでは簡単なロードマ

    2023年Misskey開発まとめ | gihyo.jp
  • すべてのフェーズでミスが重なった ―全銀ネットとNTTデータ、全銀システム通信障害の詳細を説明 | gihyo.jp

    すべてのフェーズでミスが重なった ―全銀ネットとNTTデータ⁠⁠、全銀システム通信障害の詳細を説明 全国銀行資金決済ネットワーク(以下、全銀ネット)とNTTデータは12月1日、2023年10月10日~11日にかけて全国銀行データ通信システム(以下、全銀システム)で発生した通信障害に関する報道関係者向けの説明会を開催しました。件についてはNTTデータが11月6日に行った途中経過報告の内容をもとにレポートしましたが、今回、全銀ネットとNTTデータが揃って会見を行ったことで、より詳細な障害の原因が判明したので、あらためてその内容を検証してみたいと思います。 説明会の登壇者。左から、全銀ネット 企画部長 千葉雄一氏、事務局長兼業務部長 小林健一氏、理事長 辻松雄氏、NTTデータ 代表取締役社長佐々木 裕氏、取締役副社長執行役員 鈴木正範氏 なお、全銀ネットとNTTデータは、今回の障害に関して金融

    すべてのフェーズでミスが重なった ―全銀ネットとNTTデータ、全銀システム通信障害の詳細を説明 | gihyo.jp
    red_tanuki
    red_tanuki 2023/12/06
    ここまで詳細に追いかけてもらえると、一つ一つは些細でも積み上がると爆発するという恐怖を思い知る。こんなの単純なミスといえるほど傲慢にはなれない。
  • Misskeyのパフォーマンス改善の取り組み⁠⁠・2023年11月 | gihyo.jp

    連載は分散型マイクロブログ用ソフトウェアMisskeyの開発に関する紹介と、関連するWeb技術について解説を行っています。 Misskeyでは、新機能の追加や改修・バグ修正はもちろんですが、運営者がより少ないコストでサーバーを維持できるよう、Misskeyのスケーラビリティ改善も継続して行っています。 今回はそういった最近のMisskeyのパフォーマンス改善の取り組みについて紹介します。 Fan-out Timeline Misskey v2023.10.0[1]では、以前より検討を重ねていた、タイムラインのアーキテクチャをPull型からPush型に変更する改修を行いました。 NoteMisskeyではこのPush型アーキテクチャ実装を「Misskey®︎ Fanout Timeline Technology™︎ (FTT)」と名付けています。お察しのように、Intel社の技術のネーミ

    Misskeyのパフォーマンス改善の取り組み⁠⁠・2023年11月 | gihyo.jp
  • バグは“数千パターンのテスト”をすり抜けた ―NTTデータ「2023/10/10 全銀ネット障害」について説明 | gihyo.jp

    バグは“数千パターンのテスト”をすり抜けた ―NTTデータ「2023/10/10 全銀ネット障害」について説明 NTTデータグループは2023年11月6日、10月10日に発生した全国銀行データ通信システムの障害に関する記者説明会を実施、現時点で判明している障害の概要について説明を行うとともに、再発防止策に向けたタスクフォースの設立などについて明らかにしました。会見の冒頭、NTTデータグループ 代表取締役社長 間洋氏は、今回の障害により全国の預金者や金融機関をはじめとする社会全体に大きな混乱をもたらしたことを謝罪し、今後の原因究明と再発防止に向け、全国銀行試験決済ネットワーク(以下、全銀ネット)とともに全力をかけて取り組むことを明言していました。 記事では会見の内容をもとに、現時点で判明している10月10日の事故の原因についてレポートします。 2023年10月10日 ―なにが起こったのか

    バグは“数千パターンのテスト”をすり抜けた ―NTTデータ「2023/10/10 全銀ネット障害」について説明 | gihyo.jp
    red_tanuki
    red_tanuki 2023/11/10
    網羅テストは難しい。複雑なシステムほど組み合わせが爆発するのでなあ。しかもこの場合、該当のデータが適切かどうかはほかに検証方法難しそうだし
  • Misskeyのパフォーマンス改善の取り組み・2023年7月 | gihyo.jp

    連載は分散型マイクロブログ用ソフトウェアMisskeyの開発に関する紹介と、関連するWeb技術について解説を行っています。 ここ最近でMisskeyのユーザー数がさらに急激に増えています。そのため、運営者がより少ないコストでサーバーを維持できるよう、Misskeyのスケーラビリティ改善を急いでいます。 今回は、そういった最近のMisskeyのパフォーマンス改善の取り組みについて、検討中のものも含めて紹介したいと思います。 misskey.ioの登録ユーザー数の推移 Identicon生成の無効化オプション Identiconはユーザーが自身のアイコンを設定していないときに代わりに表示されるアイコンで、これはユーザーごとに異なるようになっています。 仕組みとしては、https://misskey.example.com/identicon/hogeにリクエストされた際に、hoge部分をシー

    Misskeyのパフォーマンス改善の取り組み・2023年7月 | gihyo.jp
  • ChatGPT APIを取り巻くライブラリ 〜LangChainとguidanceの紹介 | gihyo.jp

    こんにちは! 逆瀬川(@gyakuse)です! 前回はOpenAIが公開しているChat APIWhisper APIを用いて議事録文字起こしアプリケーションを作ってみました。今回は、Chat APIを便利に使うためのライブラリであるLangChainとguidanceを紹介していきます。 なぜ便利に使うためのライブラリが必要なのか? 単純にChat APIにリクエストを送るだけであれば、各言語に用意されたライブラリを使うだけで良いでしょう。たとえば、Pythonにおいてはopenai-pythonが用意されています。前回紹介したとおり、Chat APIを使うだけなら以下のようなリクエストを作るだけで済みます。 import openai openai.api_key = "sk-..." # APIキー completion = openai.ChatCompletion.create

    ChatGPT APIを取り巻くライブラリ 〜LangChainとguidanceの紹介 | gihyo.jp
  • 1