並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 296件

新着順 人気順

*Programの検索結果1 - 40 件 / 296件

*Programに関するエントリは296件あります。 プログラミングprogrammingAI などが関連タグです。 人気エントリには 『正規表現の"正規"とは何か気になったら正規表現の歴史を紐解くことになってしまった話』などがあります。
  • 正規表現の"正規"とは何か気になったら正規表現の歴史を紐解くことになってしまった話

    正規表現の"正規"って何 ある時ふと思いました。 「正規表現の"正規"って何だろう?」 「何を根拠に"正規"を名乗っているのか?」 と。 「誰かが『これが正規の表現だ』と言ったはず」で、 「それは周りにどうやって"正規"だと認められたのだろう」 ということが気になったので調べてみました。 "正規表現"という名前でなくて、"ジャックさんの表現"とか"記号ごちゃごちゃ表現"だったらこんな疑問も持たなかったのですけど。 数学における"正規"とは 一般に"正規"というと、"正規品"や"正規の手順"といったように"本物の(genuine)"や"公式な(official)"といった意味がありますが、数学の"正規"はちょっと違います。 数学で"正規"(および"正則"、英語では"regular"または"non-singular")は、ある概念に強い制限をかけたもの、という意味です。強い制限をかけたものは取

      正規表現の"正規"とは何か気になったら正規表現の歴史を紐解くことになってしまった話
    • GitHub、「Copilot Workspace」テクニカルプレビューを開始。ほとんど全ての開発工程をAIで自動化

      GitHub、「Copilot Workspace」テクニカルプレビューを開始。ほとんど全ての開発工程をAIで自動化 テクニカルプレビューは上記のCopilot Workspaceのページからウェイトリストボタンをクリックして申し込みます。 Copilot Workspaceはほとんど全ての工程を自動化 Copilot Workspaceは、自然言語で書かれたIssue(課題)を基に、Copilotが仕様案と実装計画を示し、コーディングや既存のコードの修正を行い、ビルドをしてエラーがあればデバッグも行うという、プログラミングのほとんど全ての工程をCopilotが自動的に実行してくれる、というものです。 人間は各工程でCopilotから示される内容を必要に応じて修正するか、そのまま見守ることになります。 GitHub CEOのThomas Dohmke(トーマス・ドムケ)氏は、Copilot

        GitHub、「Copilot Workspace」テクニカルプレビューを開始。ほとんど全ての開発工程をAIで自動化
      • Software Design連載 2021年9月号 「テストが無い」からの脱却 - MonotaRO Tech Blog

        こんにちは、鈴木です。 「テストが無い」状態を脱却しました。 「いつの時代かよ!」と突っ込まれるかもしれませんが、モノタロウは創業から 20 年ほど EC をやっています。昨日書いたコードも、15 年前に書いたコードも、元気にビジネスを支えています。 本記事ではモノタロウの EC を支える API の話をします。「テストが無い」状態がスタートラインでした。そこから、CI を導入して、ローカル開発環境の整備して、テストコードを書いて、リリースマネジメントを導入しました。 目新しいことは書きません。長寿の大規模システムであっても、愚直に数年取り組むことで、「前進できる!」「変えられる!」という実例を書きます。 ※本記事の初出は、 Software Design2021年9月号「Pythonモダン化計画(第2回)」になります。第1回の記事は「Software Design連載 2021年8月号

          Software Design連載 2021年9月号 「テストが無い」からの脱却 - MonotaRO Tech Blog
        • パケットキャプチャツールをつくる - Qiita

          はじめに ネットワークと C 言語の勉強を兼ねて、簡易的なパケットキャプチャツールをつくってみました。参考にしたのは「ルーター自作でわかるパケットの流れ」という書籍です。 表紙に書かれている「ネットワークはどのようにつながるのかパケットの気持ちになって考えてみたことはありますか?」というコメントに妻が若干引いておりましたが、こういったディープな内容の本は中々ないので有り難かったです。なお、この本はタイトルのとおりルータを自作することがゴールになっていて、パケットキャプチャツールの作成はそのための練習という位置付けです。 また、特別講座 ネットワークプログラミング ( FWをつくろう )というサイトも非常に参考になりました。図入りで説明されていてとても分かりやすかったです。 ちなみに、C 言語は大学の時に少しかじったものの、ほぼ初心者に近い状態だったので Udemy の「イメージでわかる!基

            パケットキャプチャツールをつくる - Qiita
          • Goで作るテキストエディタ - Sansan Tech Blog

            はじめに みなさんこんにちは。Sansan事業部プロダクト開発部のiOSエンジニア荒川です。 以前はRDBMSの記事*1を寄稿し、好評いただいたこともあり、定期的に車輪の再発明系の記事を書いていこうと思います。 さて本日はタイトルの通り、VimやEmacsに代表されるターミナルで動作するインラインテキストエディタをGoで開発してみました。 ソースコードは以下のリポジトリに置いているため、ぜひ参考にしてください。 github.com 完成品 文字だけだとイメージも湧きにくいので、まずは完成品をお見せします。 最低限エディタの動きは出来ている、というレベルの完成度ですね🙏 特徴 1000行インラインエディタ 文字入力/挿入/削除 画面スクロール キーボードショートカット ファイル読み込み/保存 Goのコードハイライト機能 実装の方針 今回はただ開発するだけではなく、いくつかのこだわりポイン

              Goで作るテキストエディタ - Sansan Tech Blog
            • COVID-19 日本国内の潜在的な陽性者数を推定する試み - StatModeling Memorandum

              日本国内の潜在的な陽性者数を推定することは有益ですが、簡単ではありません。PCR検査がランダムになっていないことが推定を難しくしています。有症状者が検査されやすいというselection biasがあるからです。この記事ではいくつか仮定を置いて潜在的な陽性者数を推定したいと思います。 仮定 全国民のうち潜在的に陽性になっている割合 この割合は年代によらず一定と仮定します。ここでは と書きます(posはpositiveの略)。例えば0.0001なら日本人約1億2千万人中、おおよそ12000人が潜在的に陽性になっている計算です。 なお、国民の年代別人口の値はこのページの令和2年3月報 (令和元年10月確定値,令和2年3月概算値) (PDF:301KB) の「2019年10月1日現在(確定値)」の総人口 男女計の値を使用しました。 陽性者中の有症状者の割合 若年層で無症状が多いなど、年代で異なる

                COVID-19 日本国内の潜在的な陽性者数を推定する試み - StatModeling Memorandum
              • 論理プログラミング言語Logicaでデータサイエンス100本ノック

                Googleが発表したOSSプロジェクトである論理プログラミング言語Logicaを使って、データサイエンス100本ノック(構造化データ加工編)の設問を解きながらどのような言語かを確認していく。 (BigQueryのクエリとして実行していく) 最初に、プログラミング言語Logicaの特徴を纏めておく。 論理型プログラミング言語: このカテゴリではPrologが有名 SQLにコンパイルされる: 現状BigQueryとPostgreSQLに対応 モジュール機構がある: SQLと比較した強み コンパイラはPythonで書かれている: Jupyter NotebookやGoogle Colabですぐ始められる Colabでチュートリアルが用意されているので、まずこちらからやると良いと思う。 コードの見た目は関係論理の記述に似ている。 事前に、データサイエンス100本ノックのテーブルデータをBigQu

                • バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境

                  @July Tech Festa 2020

                    バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境
                  • Goのソースコード内のトリビア - YAMAGUCHI::weblog

                    はじめに こんにちは、StackdriverあらためGoogle Cloud Operations担当者です。Google Cloud Operationsもさることながら、Go Conferenceの運営など、長らくGoコミュニティに関わってきましたが、まだまだ知らないことがあったということを昨日今日で知ったので共有します。 time.minWall time.minWall という値があります。 src/time/time.go - go - Git at Google const ( hasMonotonic = 1 << 63 maxWall = wallToInternal + (1<<33 - 1) // year 2157 minWall = wallToInternal // year 1885 nsecMask = 1<<30 - 1 nsecShift = 30 ) こ

                      Goのソースコード内のトリビア - YAMAGUCHI::weblog
                    • アセンブラをゼロから作って自作コンパイラをアセンブルするまで(日記)

                      GNU Assembler互換(サブセット)のアセンブラをGo言語でフルスクラッチで作ってみました。 開発22日目で自作Goコンパイラ(をセルフホストしたときに出力される20万行のアセンブリ)をアセンブルすることに成功しました。 どうやって作ったかというと、小さいコードを GNU Assembler (以下 as) に食わせて出力されたバイナリを観察する、を繰り返して中のロジックを推定し再現しました。as の実装は見ていません。(一瞬見たけど巨大すぎて何もわからなかった) アセンブラ自作は、やってみるとコンパイラ自作よりだいぶ簡単でハマりポイントも少ないので、学習テーマとしてはおすすめです。2箇所ほど難所(命令エンコーディングのルールを理解するのと、ジャンプ命令の最適化)がありましたがそれ以外はさくさく楽しく作れました。 作ってみた結果、アセンブリ言語の理解が深まったのはもちろんのこと、E

                        アセンブラをゼロから作って自作コンパイラをアセンブルするまで(日記)
                      • TypeScriptで世界一型安全な型レベルSQL Interpreterを作っている話

                        こんにちは。DevOps芸人と化して久しいAndyです。 2020年の秋にTypeScript 4.1へTemplate Literal Typesが導入され、そのインパクトに俄かに一部の界隈がザワついたのは記憶に新しいかと思います。 今回は型プログラミングの可能性を大いに押し広げたTemplate Literal Typesを用いてSQL文を型レベルで解析し、その実行結果を型情報として導出するためのsqlptureというライブラリを作ったので紹介します。 Embedded content: https://github.com/andoshin11/sqlpture SQLの実行/検証対象はPostgreSQL v13です。 tl;dr SQL文を型レベルで解析・評価して返り値型を取得できるmini interpreterを作ったよ 型レベルのSQL validatorも作ってるよ 実際

                          TypeScriptで世界一型安全な型レベルSQL Interpreterを作っている話
                        • V8エンジンによる内部変換コードでasync/awaitの挙動を理解する

                          はじめに JavaScript の「非同期処理」ってやっぱりかなり難しくないですか? 自分も色々試行錯誤しましたが、結局「完全に理解した🤓」→「やっぱり何も分からん😭」っていうループの中で泥臭く理解を深めていくしかないようです。 さて、非同期処理の制御をある程度予測できるようになるには、非同期 API を提供する環境のことやイベントループ、マイクロタスクなどの仕組みについて理解する必要があります。 そして環境に埋め込まれた JavaScript Engine のことも理解する必要があります。 今回の記事では、JavaScript Engine の1つである V8 が内部で変換するコードから async/await の挙動を理解するための解説を試みたいと思います。V8 エンジンからアプローチすることで async/await の分かりづらい挙動を掌握して非同期処理を打倒します。 今回の記

                            V8エンジンによる内部変換コードでasync/awaitの挙動を理解する
                          • 最近のポケモンはデザインが複雑になったのか?【Python】【OpenCV】 - Qiita

                            はじめに 先日、ポケモンたかさおじさんこと、生㌔Pのブログにて次のような記事が投稿された。 ポケモンらしさ-2_意見分析 マスコット感検証 https://pkmnheight.blogspot.com/2020/04/2.html ざっくり引用すると、以前バズってた以下の海外の分析画像を、転載したTweetがあった。 ポケモンのデザインはどんどん生物的じゃなくなって行ってて、色んな部位が丸みを帯びてただの可愛いマスコットキャラクターと化してるっていう海外の分析画像が凄い pic.twitter.com/qHHVaHzEue — Χ十 ◤カイジュー◢(⃔ *`꒳´ * )⃕↝♡ (@KaijuXO) June 13, 2019 このTweetに対して、ポケモンたかさおじさんが 猛撃 していたというものである。 ざっっっくり要約すると、各世代ごとに幼虫・昆虫ごとに部位をピックアップし、 そう

                              最近のポケモンはデザインが複雑になったのか?【Python】【OpenCV】 - Qiita
                            • ゼロから学んだ形式手法 - DeNA Testing Blog

                              2020年1月に入社し、SWETの仕様分析サポートチームに加わったtakasek(@takasek)です。 仕様分析サポートチームでは、社内のプロダクト開発に対する形式手法の活用可能性を模索しています。当ブログでも、継続的に形式手法に関する情報発信をしています(形式手法 カテゴリーの記事一覧)。 この記事では、加入3か月を経てようやく形式手法の輪郭が掴めてきた私の視点から、学習前後での理解の変化について振り返ります。想定読者として学習前の私と近い属性——すなわちコンピュータサイエンスや数学の専門教育を受けておらず、主に現場での実務と自習に頼ってきたソフトウェアエンジニアを想定しています。 形式手法を学ぶ前の認識と疑問 ソフトウェアエンジニアとしての私の一番の興味関心は設計手法です。設計は、なんらかの解決したい問題に対して、ある一面を切り取った構造(モデル)を与え、そのモデルを解決の機構に落

                                ゼロから学んだ形式手法 - DeNA Testing Blog
                              • ChatWP: WordPressをAI化しておしゃべりする

                                今は日記をScrapboxに移行(scrapbox.io/kentaro/)したのですが、その前の20年分ぐらいのブログはWordPressに入っています(kentarokuribayashi.com)。長い間書き続けてきたブログには、僕の人格のかなりの部分が注ぎ込まれているでしょう。そうであれば、ブログそのものをAI化することで、自分自身の代理=エージェントを作れるはずです。 そこで、WordPressをAI化して、自分の代理人格としておしゃべりできるようにしてみました。 できたもの こんな会話ができるようになりました。自分で読んでみても、そこそこ自分っぽい感じがします。 python ./chatwp.py Question: お名前はなんですか? Answer: 私の名前はケンタロウ・クリバヤシです。 Question: 職業は何をしていますか? Answer: 私はソフトウェアエン

                                  ChatWP: WordPressをAI化しておしゃべりする
                                • レトロゲームエンジンPyxelでプログラミングを始めよう!(2020.4.4版) - kitao's blog

                                  在宅勤務、週末の外出自粛と、何かと家にいることが多くなりました。 厳しい状況が続きますが、まとまった時間を確保して、新しく何かを身に着けるにはいい機会と言えるかもしれません。 そこで、在宅の時間を活用して、Pythonの使い方やゲームプログラミングを覚えたいという方に向けて、最新版に対応したレトロゲームエンジンPyxelの紹介記事を再作成してみました。 古い紹介記事を読んで、以前のインストール方法を試して詰まっている方もたまに見かけますので、こちらの最新版の紹介記事を参考にしていただければと思います。 Pyxelとは Pyxel(ピクセル)は、昔ながらのドット絵タイプのゲームを簡単に作れる「レトロゲームエンジン」です。 GitHubでオープンソースとして公開されており、2018年7月30日のリリース後4日で、GitHubのデイリーランキングで1億プロジェクト中1位を獲得。現在は6800スタ

                                    レトロゲームエンジンPyxelでプログラミングを始めよう!(2020.4.4版) - kitao's blog
                                  • ArmにあるというJavaScript専用命令とは何か、あるいは浮動小数点数を整数に変換する方法について - Qiita

                                    // gcc-10 -march=armv8.3-a arm-jcvt.c という風にコンパイル #include <stdio.h> #include <math.h> #include <inttypes.h> #include <arm_acle.h> // Prototype: // int32_t __jcvt(double); #if defined(__GNUC__) __attribute__((noinline)) #endif int32_t cast_double_to_i32(double x) { return (int32_t)x; } int main(void) { printf("(int32_t)(-2.8) = %" PRId32 "\n", cast_double_to_i32(-2.8)); printf("(int32_t)1.99 = %" P

                                      ArmにあるというJavaScript専用命令とは何か、あるいは浮動小数点数を整数に変換する方法について - Qiita
                                    • マシな作り方の作り方を作る | 麦 Baku

                                      ここ最近、Glispというアプリをつくっています。Lisp ベースのベクタードローイングツールで、Creative Coding と伝統的なチマチマやるデザインとの合わせ技っぽい使い勝手を目指してます。 ひとまずCuusheさんのビデオに手入れ続けて止まらないのが気が済んでからなのですが(ごめんなさい…)、終わったら本格的にこれに注力してみたいなと思っとります。だから助成金やファウンディング含めてみなさんに色々ご相談したいです。 #glisp – Twitter Search / Twitter これが実現したらようやく「こいつなんか意味分からん事言って Adobe に因縁つけてるな」みたいなんがもう少し多くの人に理解してもらえる気がしています。少なくともベクターグラフィックに関しては、ソフトの使い勝手に気が散ってツール開発をしないとしんどくなる体質が改善して実制作に集中出来るようになれま

                                        マシな作り方の作り方を作る | 麦 Baku
                                      • GraphQLとクライアントサイドの実装指針.md

                                        GraphQLとクライアントサイドの実装指針.md GraphQLとクライアントサイドの実装指針 GraphQLって何 Facebookが開発した クエリ言語 今はGraphQL Foundationに移管されている https://quramy.github.io/graph-api-note/#/ GraphQLの特徴 スキーマと静的な型 Demand Driven Architecture Composition 1. スキーマと静的な型 スキーマには可能なクエリや操作の全てが記述されている。 表現方法はいくつかあるが、SDL(Schema Definition Language)で表現されることが多い。 type User { id: ID! name: String! age: Int friends: [User] articles: [Article] } type Arti

                                          GraphQLとクライアントサイドの実装指針.md
                                        • 完全栄養マクドナルド食の線型計画による実装~もしマクドナルドだけで生活すると栄養バランスはどうなるのか?~ - Qiita

                                          完全栄養マクドナルド食の線型計画による実装~もしマクドナルドだけで生活すると栄養バランスはどうなるのか?~PythonMacデータ分析データサイエンスマクドナルド 背景と概要 マクドナルドが大好きである。 しかし、ジャンクフード、健康に悪い、 などという話は以前よりよく見かける。 では本当にマクドナルドを食べ続けると、 健康に悪いのだろうか? マクドナルドだけで生活する場合本当に、 栄養の偏りやカロリー過剰などが発生するのだろうか? 本稿は、マクドナルドだけで 一日に必要なすべての栄養素を摂取する食事 をする場合に、どのようなメニューを選ぶべきで、 その結果どのような栄養問題が生じるのか、 PuLPというPythonの線型計画ライブラリを用いて 研究した結果をまとめたものである。 すなわち、マクドナルドだけで 完全栄養食としてのメニューを組み立てるには 何をどれだけ食べればいいの? そして

                                            完全栄養マクドナルド食の線型計画による実装~もしマクドナルドだけで生活すると栄養バランスはどうなるのか?~ - Qiita
                                          • Real World GraphQL on Next.js SSR

                                            tl;drNext.jsはv9.3.0以降Initial Loadingの扱いが変わったクライアント側ではApolloを利用することができるが、Authorization Headerを設定するなら一工夫必要SSR時にはfetchによるシンプルなAPIリクエストをすると良い昨今のWebフロントエンド昨今のWeb開発において、React、TypeScriptとかのベース知識は当然として、やはりNext.js(あるいはNuxt.js)のような、SPA/SSR両方のニーズを汲み取りながら、dynamic routingを提供してくれたり、ビルド環境を高速に整備してくれるフレームワークが重宝されるようになってきていると感じます。 また、Reduxもアリですが、スキーマ駆動開発が推進できるGraphQL、特に尋常じゃなくステート管理が用意になるHooksとApolloクライアントの組み合わせは、フロ

                                              Real World GraphQL on Next.js SSR
                                            • ChatGPTを賢くする呪文 - 日本経済新聞

                                              米オープンAIのChatGPT(チャットGPT)は高性能な対話型AIとして世界中で注目を集めた。ChatGPTは大量のテキストを学習した「大規模言語モデル」というタイプのAIだ。このAIは自然な文章を作るのが得意だが、数学のように論理的な思考を組み合わせるのが苦手だ。ところが問題文の最後にある「呪文」を付け加えると、見違えるように問題の正答率が上がる。その呪文はこうだ。「Let's thin

                                                ChatGPTを賢くする呪文 - 日本経済新聞
                                              • 達人プログラマー 第2版はいいぞ

                                                名著中の名著である達人プログラマーの第2版が2020年11月に出版されました。 原著であるThe Pragmatic Programmerは、1999年の出版で、第2版(英語版)の出版が2019年なので20年ぶりの改定ということになります。 この書籍にある個人的に響いたTipsと、ちょっとした感想をこの記事に書いていますので、書籍購入の参考になれば幸いです。 個人的に響いたTips8選 本書にはありがたいTipsがたくさんありますが、その中でも自分に特に響いたTips8つを紹介します。 割れた窓を放置しない 環境犯罪学の理論で有名な「割れ窓理論」はエンジニアリングの世界でも 当てはめることができるようです。 この書籍では悪い設計や質の低いコードを「割れ窓」とみなし、 それを放置することはクリーンなシステムの崩壊を加速させると言及しています。 これに関しては自分の心のなかで「割れ窓」が種とな

                                                  達人プログラマー 第2版はいいぞ
                                                • ChatGPTで作るSQLがヤバい※Oracleの話多め - Qiita

                                                  n番煎じ、今更ながら…。 ChatGPTは過去遊びでしか使ったことがなかったのですが、 今、超長文SQL群を改修してまして、何重にもなった副問合せと集計関数を読み解くのに疲れて…ChatGPTに手を出しました。 そして、 え!!ChatGPTやばい!! 介護は必要だけどすぐ形にしてくれるしなんなら私より知識あるわ!! 只今、職を失いました!! ってなったので、この衝撃を書き残しておこうと思います。 やりたいこと 作るSQLの要件はざっくり、 dba_hist_sysstatから、physical readsなど各統計情報のvalueの増分値を取得する 統計情報種別毎・1日毎に、1ヶ月間集計 日時判別のために、dba_hist_snapshotと結合する valueには累積値が入っている。ただし、インスタンス再起動があるとリセットされる。 つまり、「累積だから」と直前のスナップショットのva

                                                    ChatGPTで作るSQLがヤバい※Oracleの話多め - Qiita
                                                  • 書き捨てるためのRust - Qiita

                                                    はじめに Rustは「きちんとしたプログラムを書く時にはいいけど、書き捨てのプログラムを書くには向いていない」と言われることがあるようです。「一般論としては全くその通り」と思う一方で、自分自身を振り返ってみると、これまでPythonで書いていたような書き捨てに近いプログラムも全部Rustで書くようになっています。 なぜ書き捨てのプログラムもRustで書くのかを考えてみると 最初は書き捨てだと思っていても、手直ししながら使い続けることは意外と多い コンパイラが割と多くのエラーを捕捉してくれるのでデバッグの時間が短くて済む 記述量の多さはエディタの補完があってあまり気にならない といったあたりが理由になっています。 そうはいってもRustがいろいろと面倒な言語であることには違いないので、書き捨てるときは普段のRustプログラミングとは少し違った書き方をした方がより早く書けるのではないかと思いま

                                                      書き捨てるためのRust - Qiita
                                                    • ChatGPT APIで「素人質問で恐縮ですが…」と鋭い質問してくるSlack Botを作った - Platinum Data Blog by BrainPad

                                                      本記事は、当社オウンドメディア「Doors」に移転しました。 約5秒後に自動的にリダイレクトします。 このたびブレインパッドは、LLM/Generative AIに関する研究プロジェクトを立ち上げ、この「Platinum Data Blog」を通じてLLM/Generative AIに関するさまざまな情報を発信をしています。 今回は、議論を活性化する質問をLLM技術によって生成できないかと考え、『この分野は素人なのですが…Bot』を開発した内容を、ご紹介します。 こんにちは、アナリティクスサービス部の藤田です。 ブレインパッドでは、有志による社内勉強会がとても活発で、ほぼ毎日何かしらの勉強会が開かれています。社内勉強会では、参加者による質問が重要な役割を果たします。質問によって、質問者は理解を深めることができ、他の参加者や発表者にとっても新しい視点を得ることができます。しかし、参加者が多い

                                                        ChatGPT APIで「素人質問で恐縮ですが…」と鋭い質問してくるSlack Botを作った - Platinum Data Blog by BrainPad
                                                      • Next.js + Tailwind UI を使うとたった6時間で技術ブログのプロトタイプを作れる - パンダのプログラミングブログ

                                                        Gatsby から Next.js に載せ替えた動機 本ブログを Next.js でリニューアルしました。 元々このブログは Gatsby で作っており、2019年3月にリリースしましたが(最初の投稿)、ついに Next.js に移行しました。移行のモチベーションはバージョン追従を避けたこと、デザインを一新したいこと、また記事が表示されないというバグが発生する事象があったことです。 まず Gatsby のバージョンアップについて。現在、Gatsby の最新バージョンが4系です。しかし、自分が使っていたテンプレートは3年前に1系から使い始めて、2年前に2系にバージョンアップしました。その後、自分は業務と個人開発で Next.js を使い始めたため、このブログでしか使っていなかった Gatsby の情報を追うのを止めて、記事だけ追加する運用をしていました。 その頃にはバージョンアップをするより

                                                          Next.js + Tailwind UI を使うとたった6時間で技術ブログのプロトタイプを作れる - パンダのプログラミングブログ
                                                        • 大規模言語モデルと外部リソースとを融合させたアプリケーションを作ろう-langchainのご紹介- - Qiita

                                                          はじめに 近年、深層学習を用いた自然言語処理技術の進展が目覚ましいです。 その中でも、GPT-3をはじめとする大規模言語モデル(LLM)には大きな可能性を感じています。 最近ですと、AI技術者以外にも大きなインパクトを与えたChatGPTが記憶に新しいでしょう。 今後もLLMの進化は止まらないと予想されており、私たちもどうやって活用するかを具体的に検討すべきフェーズに入ったのではないでしょうか。 しかし、LLMを実業務に適用するとなると、越えなければならない課題がいくつも出てきます。 今回は、以下にあげた第2・第3のハードルを越えるために役立つlangchainというライブラリをご紹介します。 第1のハードル:機密データの扱い LLMはOpenAPIのGPT-3等、モデル自体は公開されておらずWebAPIだけが提供されているというパターンが多いです。 そのため、機密データを社外に送信すると

                                                            大規模言語モデルと外部リソースとを融合させたアプリケーションを作ろう-langchainのご紹介- - Qiita
                                                          • Goコンパイラを自作して93日でセルフホストを達成した(2回目) · DQNEO日記

                                                            Goコンパイラをゼロから書いてセルフホストを達成しました。(1年ぶり2回目) https://github.com/DQNEO/babygo (ちなみに 前回の話はこちら 「Goコンパイラをゼロから作って147日でセルフホストを達成した」 ) 主な特徴 全部手書き。標準ライブラリも自作。system call 呼び出しも自作。libc非依存。 コンパイルするとアセンブリを吐きます。これをビルドすると単一静的バイナリになります。 設計は、go/parser + chibicicc + α かかった期間 2020/3/29に開始、2020/7/28にセルフホスト達成。 コミットした日 (Author date)を数えたら93日でした。 平均1日2-3時間としてざっくり240 時間 ほど。 前回は500時間かかってるので、今回は半分の期間で達成できたことになります。 なんでまたやろうと思ったの?

                                                            • DevTools の Web 技術でできている部分を覗き見る - polamjaggy

                                                              この記事ははてなエンジニア Advent Calendar 2021 の 22 日目の記事です。 昨日の記事は id:shimobayashi さんの アジャイル推進活動にここ1年で吉兆がみえてきた要因について - 下林明正のブログ でした。 Chrome の DevTools の UI 部分は Web 技術でできています。Web 技術でできているので、DevTools を DevTools で inspect することもできます。 example.com を inspect している画面を inspect している様子 このことを知ったのは、10MB くらいある JavaScript ファイルにブレークポイントを貼りつつデバッグしていたら DevTools が固まるようになってしまい、ブレークポイントを解除しようにもその前に DevTools がフリーズしてしまうので詰んだ……、という出

                                                                DevTools の Web 技術でできている部分を覗き見る - polamjaggy
                                                              • Rustから目覚めるぼくらのゲームボーイ! - undefined

                                                                Conway氏についてですが、公式にアナウンスがでたようです。ご冥福をお祈り申し上げます。 www.math.princeton.edu 2003年に発売された「Linuxから目覚めるぼくらのゲームボーイ!」というC言語でゲームボーイアドバンスで動作する自作ゲームを作成していく書籍があります。 ゲームボーイアドバンスはARM7TDMIというコアを使用しており、Rustで自作ゲームを作ることも可能となっています。 この記事では「Linuxから目覚めるぼくらのゲームボーイ!」のステップをRustで実施するための準備としてライフゲームが動くまでを書いてみます。 動機は今作っているWasmインタープリタをGBAで動かすことができないかの調査です。(たとえLチカレベルでも)AssemblyScriptとかでGBAのゲームかけたら面白くないですか。 成果物 github.com I succeeded

                                                                  Rustから目覚めるぼくらのゲームボーイ! - undefined
                                                                • ChatGPTのプロンプトをLispで書く

                                                                  ChatGPTのプロンプトをLispで書けることに気づきました。プロンプトによって処理系としてふるまってもらうという話は聞いたことがありましたが、Lispの場合はそのようなプロンプトがなくても解釈されました。 モデルはGPT-4です。言語としてはClojureをベースにした擬似コードを書いています。 ※いくつか例を追加しました。思った以上にプログラミング的なことができるみたいです。 単純な生成と変換の例 子供っぽくする 静かなヤンデレっぽくする (しっぽりやんでれ?) 対偶を返す 小説を作ってそれを要約する 鶏の唐揚げのレシピのJSONを生成する Lispについて執事っぽく説明する クラムチャウダーのレシピを妹として箇条書きにする お兄ちゃんとツンデレの妹の誕生日ケーキについての会話を生成する Clojureの関数を使う例 3つの文を元気にする 犬の名前を5個生成してひらがなにする キリン

                                                                    ChatGPTのプロンプトをLispで書く
                                                                  • testing-library でユーザの気持ちになって書くフロントエンドのテスト

                                                                    TL;DR フロントエンドのテストが壊れやすく要因の一つは、ユーザがどのようにソフトウェアを使うかをクエリに反映できていないからかも testing-library はソフトウェアを使うユーザの気持ちを反映させやすいようにクエリの優先度をつけていて、それに従うほうがいい 優先度の低いクエリも役に立つことがある 運用しているアクセシビリティなどの実装のガイドラインに沿うようなテストを作るとき アクセシビリティの低い実装をリファクタリングするためのテストを作るとき はじめに フロントエンドのテストに用いるツールとして testing-library が知られています。testing-library は提供しているクエリに優先度をつけています。この優先度は、どういう基準でつけられているのでしょうか。 この記事では、 testing-library のガイドを読みながら、クエリの優先度を「ユーザの

                                                                      testing-library でユーザの気持ちになって書くフロントエンドのテスト
                                                                    • SQL等価性検証ツールCosetteを使ってみた - Qiita

                                                                      はじめに 皆さん、SQLチューニングしてますか?(唐突) 私は仕事柄RDBMSのSQLチューニングをすることが多いのですが、たまにチューニングの一環で SQL文の書き換え をすることがあります。 その際に問題になるのが、書き換えたSQL文が等価であるかどうかの確認が大変なことです。 SQL文を書き換えた場合には、想定通りの結果を取得できるか確認するために、テストをやり直す必要があります。 これが開発早期のフェーズならまだましなのですが、結合テスト以降だと手戻りも多くかなりコストがかかりますし、既に本番運用が始まったシステムともなると、テスト自体が困難なこともあります。 また、複雑なSQL文だと網羅的なテストケースを作成すること自体が困難であるため、完全に正しいと確信することはできません。 なので、SQL文の書き換えの正しさを証明する良い手段はないかと考えていました。 SQLチューニングとは

                                                                        SQL等価性検証ツールCosetteを使ってみた - Qiita
                                                                      • Pythonでデータの挙動を見やすくする可視化ツールを作成してみた - Qiita

                                                                        ※アンダースコアのpip install seaborn_analyzerでもインストール可能です。 インポート時はアンダースコアのimport seaborn_analyzerやfrom seaborn_analyzer となるのでご注意ください コード モジュールcustom_pair_plot.py内のクラスCustomPairPlotに、必要な処理をまとめました。 GitHubにもアップロードしています モジュール本体 import seaborn as sns import numpy as np import pandas as pd import matplotlib.pyplot as plt from scipy import stats class CustomPairPlot(): #初期化 def __init__(self): self.df = None sel

                                                                          Pythonでデータの挙動を見やすくする可視化ツールを作成してみた - Qiita
                                                                        • GoのWASMがライブラリではなくアプリケーションであること - 株式会社カブク

                                                                          はじめに がんばって書いた書籍が低評価で少々しょんぼりしているあんどうです。まぁ、つい力が入りすぎて袋小路に思い切り突っ込んだ結果抜けられなくなることってあるよね。あるある。そんなわけで今日はできるだけ力を入れずテンション低めにサクッと行きます。 で、GoのWASM。大道の真ん中をまっすぐに歩まれているみなさんはWASMするときはRustかいっそC/C++をemscriptenでってことになると思いますが、私はしょせん路傍の石の下で低評価が目に入らないように丸まっているダンゴムシ。せっかくだからオレはこのGoでWASMを選ぶぜって感じなんですが、ぶっちゃけあれ、めんどくさいすよね。 あ、ちなみに今回の話は「このめんどくささをまるっと解決!」みたいな気持ちのいい話ではなくて、ただただ「めんどくさいよね」っていうだけの話です。あーめんどくさい。 Rustの場合 まず比較のためにRustの例をあ

                                                                            GoのWASMがライブラリではなくアプリケーションであること - 株式会社カブク
                                                                          • SuikaというPure Rubyな形態素解析器を作成した - 洋食の日記

                                                                            はじめに Pure Rubyな形態素解析器Suikaを作成した。開発中でバッリバリにα版だが、思い切ってリリースすることにした。 suika | RubyGems.org | your community gem host 最も有名な形態素解析器であるMeCabもそうだが、形態素解析器は食べ物の名前がつくことが多い。「Rubyなので赤い食べ物が良いかな」と考えて、文字数とかわいらしさからSuika(スイカ)とした。 使い方 SuikaはPure Rubyで作られているため、MeCabをはじめ特別なライブラリを別途インストールする必要はない。 gem install suika バッリバリにα版なので、機能はないに等しく、オプションなしのMeCabコマンドと同様となる。 $ irb irb(main):001:0> require 'suika' => true irb(main):002:

                                                                              SuikaというPure Rubyな形態素解析器を作成した - 洋食の日記
                                                                            • Service WorkerとWasmを組み合わせてサーバー処理をブラウザーでリアルに再現する

                                                                              今回の話はWasmというよりもService Workerの話がメインになりますが、WasmとService Workerを組み合わせることで、ブラウザー上でサーバー処理をリアルに再現することができるので、このタイトルにしています。 まずは動画をご覧ください。 見ていただくと分かるように、ブラウザー上でPHPのコードを書くとその実行結果が右側に表示されています。 特に面白い点が、お問い合わせフォームのPOST後の処理までもブラウザー上だけで実行できているという点です。 これはWasmとService Workerを組み合わせて実現しています。 大体以下のようなプロセスで実現しています。 Wasmはブラウザー側でも実行可能ですが、あえてService Worker上で実行しているのは、URLへのリクエストに対してそのリクエストにインターセプト(介入)することで、POST後の処理などもブラウザ

                                                                                Service WorkerとWasmを組み合わせてサーバー処理をブラウザーでリアルに再現する
                                                                              • Mirrativ×Unity as a Library 活用事例と開発テクニック - Mirrativ Tech Blog

                                                                                こんにちは、Unityエンジニアの菅谷です。今回はUnity as a Libraryの活用事例と開発テクニックとして、以前のLTで紹介した内容をまとめました。Mirrativでの活用事例を通してUnity as a Libraryの強みや課題を共有し、他のプロダクトでの導入の参考になれば幸いです。2021/6〜2021/7にMirrativ×Unity as a Libraryのテーマで行った3本のLTをまとめた内容となっています。 mirrativ.connpass.com meetup.unity3d.jp mirrativ.connpass.com MirrativにおけるUnity Mirrativにはエモモという配信をサポートする3Dアバターが存在します。ユーザーは衣装やアクセサリーなどのアイテムを組み合わせてエモモを着飾ることができます。MirrativはiOSはSwift、

                                                                                  Mirrativ×Unity as a Library 活用事例と開発テクニック - Mirrativ Tech Blog
                                                                                • Concurrent Mode時代のReact設計論 (1) Concurrent Modeにおける非同期処理 - Qiita

                                                                                  Concurrent Modeは、現在(2020年3月)実験的機能として公開されているReactの新しいバージョンです。Reactの次のメジャーバージョン(17.x)で正式リリースされるのではないかと思っていますが、確証はありません。なお、React公式からもすでに結構詳細なドキュメントが出ています。 並列モードの導入(実験的機能) Concurrent Modeに適応したアプリケーションを作るためには、従来とは異なる新しい設計が必要となります。筆者はConcurrent Modeを使ったアプリケーションをひとつ試作してみました。この記事から始まる「Concurrent Mode時代のReact設計論」シリーズでは、ここから得た知見を共有しつつ、Concurrent Mode時代に適応したReactアプリケーションの設計を提案します。 なお、Concurrent Modeはまだ正式リリース

                                                                                    Concurrent Mode時代のReact設計論 (1) Concurrent Modeにおける非同期処理 - Qiita

                                                                                  新着記事