Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 130件

新着順 人気順

*programの検索結果1 - 40 件 / 130件

*programに関するエントリは130件あります。 プログラミングqiitajavascript などが関連タグです。 人気エントリには 『論理プログラミング言語Logicaでデータサイエンス100本ノック』などがあります。
  • 論理プログラミング言語Logicaでデータサイエンス100本ノック

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

    • PythonでTableau風 BIツールによる視覚的データ探索をやってみよう 〜PyGWalker〜 - Qiita

      更新情報 -目次- はやくもUI改善等 Ver.upが図られています。以下内容の記事を追加しました。 1. データフレーム表示 2. ヒストグラムの描き方 3. ダークモード対応 4. オンライン版 5. 海外のデータイノベーション支援団体でも人気 はじめに Tableauはご存じでしょうか? 私は使ったことはありませんが、名前だけはよく耳にします。 これは、専門家でなくてもデータの収集・分析・加工ができるBI(ビジネス・インテリジェンス)ツールのひとつです。 なんと、Jupyter Notebook上(Google ColabもOK)で実行できる Tableau風 BIツール「PyGWalker」が登場しました。 Tableauそのものではありませんが、ドラッグ&ドロップの簡単な操作でデータ分析や視覚的な探索が実行できます。 こんなのが出てくるとは・・・すごい。 しかも、数行のコードで実

        PythonでTableau風 BIツールによる視覚的データ探索をやってみよう 〜PyGWalker〜 - Qiita
      • 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の挙動を理解する
          • 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
              • 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
                • 人はFat Modelを恐れサービスを求め ドメインモデルは貧血に至る - @ledsun blog

                  この文章は祈りです。 主にRuby on Railsアプリケーションを想定した話です。 Ruby on Railsアプリケーションでは、Fat Model問題という問題が起きることがあります。 ドメインオブジェクトが肥大化しメンテナンスしにくくなる問題です。 Fat Model問題に対応するためにサービスレイヤーを導入することがあります。 「ドメインモデル貧血症」と呼ばれているアンチパターンです。 ドメインモデル貧血症 ドメインのロジックをドメインオブジェクトの中に入れないという設計ルールに従っているのでしょう。その代わり、すべてのドメインロジックを含むサービスオブジェクト群が存在しているのです。 Fat Modelを恐れよ Fat Modelは「単一責任原則」を満たしていないモデルです。 単一責任原則 | プログラマが知るべき97のこと 1つのサブシステムやモジュール、クラス、関数などに

                    人はFat Modelを恐れサービスを求め ドメインモデルは貧血に至る - @ledsun blog
                  • 達人プログラマー 第2版はいいぞ

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

                      達人プログラマー 第2版はいいぞ
                    • 書き捨てるためのRust - Qiita

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

                        書き捨てるためのRust - Qiita
                      • 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
                          • SQL等価性検証ツールCosetteを使ってみた - Qiita

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

                              SQL等価性検証ツールCosetteを使ってみた - 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な形態素解析器を作成した - 洋食の日記
                                • 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

                                    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Concurrent Modeは、現在(2020年3月)実験的機能として公開されているReactの新しいバージョンです。Reactの次のメジャーバージョン(17.x)で正式リリースされるのではないかと思っていますが、確証はありません。なお、React公式からもすでに結構詳細なドキュメントが出ています。 並列モードの導入(実験的機能) Concurrent Modeに適応したアプリケーションを作るためには、従来とは異なる新しい設計が必要となります。筆者はConcurrent Modeを使ったアプリケーションをひとつ試作してみました。この記

                                      Concurrent Mode時代のReact設計論 (1) Concurrent Modeにおける非同期処理 - Qiita
                                    • 僕がRSpecでsubjectを使わない理由 - give IT a try

                                      はじめに 僕は折に触れて「RSpecではなるべくsubjectを使わない方がいい」という発言をしています。 Qiitaとか見てるとRSpecのsubjectを愛用している人が多そうな印象なんだけど、僕はほとんど使っていません。「subjectは原則使わない。明らかにメリットがあるときにだけ例外的に使用する」が僕のポリシーです。ほら、RSpecの(元)メンテナさんもそう言ってるし。 https://t.co/Rp5EiIxCVb #Qiita pic.twitter.com/pMlN35ihEG— Junichi Ito (伊藤淳一) (@jnchito) 2019年5月28日 そもそもの話として、RSpecではsubjectは無理に使わない、というのが僕の持論です。なぜなら無理にを使うと、いびつなテストコードができやすいから。基本はsubjectなしで書く。明らかにsubjectが有効なと

                                        僕がRSpecでsubjectを使わない理由 - give IT a try
                                      • 今さら聞けないビジュアルリグレッションテストをChromaticで始める - Sansan Tech Blog

                                        Bill One Entry*1グループの秋山です。 1. はじめに 2010年代前半に登場したReactやVue.jsに代表される宣言的UI実装は、大規模なSPAの構築を可能にしました。その一方、フロントエンド領域に新たなアーキテクチャが導入されたことで、それまでWebアプリケーション開発で定石とされたテスト手法を適用しづらいケースが増え、新たなベストプラクティスが求められるようになりました。 その要請に応える形で、2010年代後半にはフロントエンドのテスト手法に緩やかなパラダイムシフトがありました。この記事ではそのパラダイムシフトを振り返りながら、フロントエンドで必要なテストについて考察し、最後にChromaticを用いたビジュアルリグレッションテストを紹介します。 2. Testing Pyramid と フロントエンド テストを語る際によく持ち出されるメタファとして、Testing

                                          今さら聞けないビジュアルリグレッションテストをChromaticで始める - Sansan Tech Blog
                                        • 【golang】sqlcコマンドで「SQLクエリから型安全なGoコードを生成」し、生産性を上げたい

                                          【golang】sqlcコマンドで「SQLクエリから型安全なGoコードを生成」し、生産性を上げたい by nao · 2022年6月25日 前書き:sqlcとは 本記事は、kyleconroy/sqlcの基本的な情報を紹介します。 sqlcは、DBスキーマ(DBテーブル定義)、SQLクエリ定義、設定ファイルの3点をインプットとして、型安全なCRUDコード + DBテーブルに対応したモデル(構造体)を自動生成します。ここでのモデルの自動生成には、複数テーブルをJOINしたクエリ用の構造体も含まれます。 個人的な視点では、sqlcは「SQLクエリを検証してから、そのクエリを実行するGolangコードを書いて、クエリ結果を受け取るための構造体を書くのが大変」という課題を解決するツールです。独自のDSL(Domain Specific Language)は殆ど登場しないので、SQLをゴリゴリ書ける

                                            【golang】sqlcコマンドで「SQLクエリから型安全なGoコードを生成」し、生産性を上げたい
                                          • AI画像生成とワールド制作|るら

                                            自宅用に使えるワールドをBoothで販売してたりします。 ワールド制作の役に立つかなー、と思ってAI画像生成に手を出してみた、という次第です。 DALL·E 以前からAI画像生成自体、ワールド制作の何かに使えそうだなー、とうっすら考えていたところ、DALL·EというAI画像生成のサービスの噂を聞き、Waitlistに並んで3ヶ月ほどが経ちました。 そして先日、ついにアクセス権を手に入れた…!! とりあえず試してみると… え……すご…(言葉を失う)いや、なにこれ、すご… もうなんにでも使えるじゃん。 よっし、いろいろ試すぞー!!! …となっていたところだったのですが、ベータテストと方針が変わり、無料体験分を使い切ると15$で115回分のチケットを購入する、という方式になっているようでした。 まー、そりゃそうだよねー。サーバー負荷とかすごそうだし… 凄い画像を生成できるならそれでも安いかー で

                                              AI画像生成とワールド制作|るら
                                            • RESTが日本で受け入れられていった頃の話( #mozaicfm の補足) | 栗林健太郎

                                              mozaic.fm第7話のRESTの話で、RESTが日本で広く受け入れられていった頃、というか、その端緒の頃の話が出ていて懐かしかったのだし、細部にやや不正確なところがあるのが気になったりもしたので、補足を書いておきますね。 まず、いわずとしれた@yoheiさんがRESTをまず知ったのが2003年とかそれぐらいの時期とおっしゃっていて、それから数年経ち、RESTがWebエンジニアに広く受け入れられていったのは、2007年末にリリースされ、resourcesという機能を取り入れたRails2からというのは、@t_wadaさんがおっしゃっている通り、事実だろうと思います。 また、Podcastの中では、主催のJxckさんが、それはそれと認めた上で、彼自身にとってはAjaxの登場が大きかったということを述べた上で、@yoheiさんの主催された第八回XML開発者の日での高橋征義さんとid:seco

                                              • さようなら、Node.js - 株式会社カブク

                                                はじめに こんにちは。JavaScriptの本を書いたりしているあんどうです。 JavaScript、流行ってますよね。より正確にはNode.js流行ってますよね。ぶっちゃけハンズオンなんとかもNode.jsの方がだいぶ・・・ゲフンゲフン。まぁハンズオンNode.jsはマジ名著なのでそのことは置いておくとして、そのNode.jsについて正直なところみなさんはどう思ってますでしょうか? 私はRails文化圏出身なので、開発に必要とわかりきっているツールを事前にわざわざあれやこれやと検証して設定してみたいなのが面倒くさくてしょうがないです。なんか思いついてキーボードに手を置いたらノータイムで機能の実装を開始したい。 しかもすぐ新しい同じようなツールが出てきて数年で主要ツール総取っ替え上等。ポジティブに捉えれば万物流転とか諸行無常とか人生のあれこれの現れかもしれないけど、正直回し車の中のハムスタ

                                                  さようなら、Node.js - 株式会社カブク
                                                • 【入門】Figmaで作ったデザインをReactアプリに連携する - Qiita

                                                  はじめに 今回はAWS Amplify Studioを利用してFigmaで作成したデザインをReactアプリに連携する方法について解説します。 「AWSなんて触ったことないよ!」「Reactも触ったことないでやんす!」って人でもサクッとできるような内容なので読んでいただければなと思います。 目標成果物 Figmaで作成したカードコンポーネントのデザインをReactアプリ上で表示させる Figmaで作成したボタンコンポーネントでクリックイベントを試す この記事でやること AWS Amplify Studioの解説 Figmaでのデザイン作成とコードの自動生成方法の解説 Reactアプリとの連携 この記事の対象者 AWSの初心者だけどFigmaで作成したデザインをReactアプリと連携してみたい人 将来的に流行りそうな技術をサクッと試してみたい人 AWS Amplify Studio AWS

                                                    【入門】Figmaで作ったデザインをReactアプリに連携する - Qiita
                                                  • Rust 製の全文検索システム Tantivy を Ruby で使える Tantiny を導入した

                                                    過去記事ページの UI 考察 ずっと過去記事をどうやって効率よく見せるか(自分自身が効率よく読むか)ばかり考えている。一つ前の記事では絞り込み UI について書いた。ブログというものが生まれたとき、誰も 10 年以上にわたっ... portalshit.net ブログのアクティビティダッシュボード Archive ページにこだわってしまう理由、グラフを表示させてみて(ブログ過去記事をカテゴリーごとに集計してグラフ化 - portal shit!)何となくわかった気がする。過去記事ページとい... portalshit.net このブログの維持管理で一番時間を割いているのが Archives ページだ。しかしアクセスログを見ると自分以外はほとんど利用していない。完全に自己満なのだが、過去の自分を振り返ることができてとても自分には有意義なページだ。 過去記事を振り返るときには検索をしたくなる。

                                                      Rust 製の全文検索システム Tantivy を Ruby で使える Tantiny を導入した
                                                    • 森羅万象に「いいね」するためのデータ構造

                                                      Kaigi on Rails 2022 にて『森羅万象に「いいね」するためのデータ構造』の発表をしました。 https://kaigionrails.org/2022/talks/pndcat/ ===概要=== サービス開発をしていると「いいね」の実装に対面することは多いでしょう。例えば EC サービスの場合、商品へのいいね、クチコミへのいいね、ブランドへのいいねなど、いろいろな対象に「いいね」をするケースが考えられます。さらには、ログインユーザーの「いいね」と、非ログインユーザーの「いいね」を作ることもあるかもしれません。 しかし、あらゆるものに「いいね」できるシステムを作るのは容易ならざることです。普通に実装するだけでは関連するコードは肥大化し、データベースのテーブルもどんどん増えていくばかりです。 似ているけど少し違う「いいね」を実装するにあたって、失敗してしまったデータ設計、そこ

                                                        森羅万象に「いいね」するためのデータ構造
                                                      • 最小共通祖先を求めるアルゴリズムの形式検証 | Wantedly Engineer Blog

                                                        競技プログラミングには概念を知っておかないと解きようがない、いわゆる覚えゲーのような問題が存在します。典型的な例が 10^9+7 といった素数で割った余りを求めろといったもので、普段業務で日常的に素数で割った余りを求めている人でもなければ、割り算がしたければフェルマーの小定理や拡張ユークリッドの互除法を使えば良いと直ぐには思い付けないのではないでしょうか。 最小共通祖先も覚えゲーで必要な概念の一種と言えます。これは読んで字のごとく、与えられた根付き木の下で2頂点に共通する祖先のうち、最も根から遠い頂点を指す概念で、例えば木の2頂点が与えられて、頂点間の経路について何かを求めろといった問題で威力を発揮することが多いです。これを用いて解ける例を挙げるとすると次の問題でしょうか。 https://atcoder.jp/contests/abc014/tasks/abc014_4 最小共通祖先を求

                                                          最小共通祖先を求めるアルゴリズムの形式検証 | Wantedly Engineer Blog
                                                        • シェルスクリプトの後ろにバイナリを埋め込む手法はPOSIXで考慮されているという話 - Qiita

                                                          思いっきり雑学レベルの話ですみませんが、思い出した今書かないと忘れそうだなと思ったのでw この手法で何が出来るかと言うと、シェルスクリプトを実行するとスクリプトファイルの後ろ(exit で終了されて実行されない領域)に結合されたバイナリ形式の圧縮ファイル部分を抜き出して /tmp 以下に展開してそこに含まれているバイナリ形式の実行ファイルを実行して、一見シェルスクリプトのように見えるのに実はバイナリファイルを実行してるじゃんなどという楽しいことができます。いかにもハックまがいの手法に見えますが、どうやらこの手法は POSIX で考慮されているようです。 これを知ったのは「シバン shebang がないシェルスクリプトはどのシェルで動くかわからない(からちゃんと書いとけ)」の記事を書いている時に見つけた fish の PR 7802 です。fish はシバンがないスクリプトを実行するとエラー

                                                            シェルスクリプトの後ろにバイナリを埋め込む手法はPOSIXで考慮されているという話 - Qiita
                                                          • すき焼きの写真にすき焼きの3Dモデルを埋め込む方法 - KAYAC engineers' blog

                                                            この記事は Tech KAYAC Advent Calendar 2021の14日目の記事です。 こんにちは!意匠部のおばらです。 今日は、知っていても役に立たないかもしれない、 WEBページでの画像の変な使い方をご紹介しようと思います。 題して「すき焼きの写真にすき焼きの3Dモデルを埋め込む方法」です。 すき焼きの写真にすき焼きの3Dモデルを埋め込む方法 WEBページで読み込んでいるファイルは全部丸見え! ブラウザのデベロッパーツール、便利ですよね。 特に Network や Source タブ。 読み込んでいるファイルがぜ〜んぶ丸見えです。 いけてるWEBサイトを見つけたら どうやって作ってるんだろう? ふむふむ、3D部分はThree.jsで、モデルはglTFか〜 お、テクスチャはKTXを使ってる! みたいに調べちゃいますよね?? そう、デベロッパーツールは 覗く側としては、すご〜く勉

                                                              すき焼きの写真にすき焼きの3Dモデルを埋め込む方法 - KAYAC engineers' blog
                                                            • 角度の平均や分散を複素数を用いて求める - Qiita

                                                              はじめに 角度の平均を単純に計算してはいけない 突然ですが、以下の角度値の平均を求める方法をご存知でしょうか? $$ \lbrace10^\circ, 30^\circ, 350^\circ\rbrace $$ これが普通の数値データであれば、$(10 + 30 + 350) / 3 = 130$のように平均が求まります。 しかし、角度の場合は平均10°となります。図示してみると、確かに10°を中心に分布しています。 なぜ単純計算では求まらないのでしょうか? これには角度の周期性が関係しています。350°は数値上大きく見えますが、実際には0°に近い角度です。本来連続して続いているものを1周期で切断しているため、角度に対して素朴な統計処理をすることはできないのです。 角度データを扱う統計の分野を「角度統計(Circular Statistics, Directional Statistics

                                                                角度の平均や分散を複素数を用いて求める - Qiita
                                                              • グラフニューラルネットワークでQiitaのタグづけをレコメンドする - Qiita

                                                                本記事はNTTドコモR&Dアドベントカレンダー2021の8日目の記事です. こんにちは、NTTドコモの橋本(@dcm_hashimotom)です. 業務ではレコメンド関連の技術開発・施策検討を行っており,主にPythonやBigQuery, Apache Sparkを触ってます. SNSなどで投稿したコンテンツの検索性を上げるためには,そのコンテンツへのタグ(またはハッシュタグ)の付与が重要です.Qiitaではタグは5つまで付与することができ,タグを指定した絞り込み検索や,マイページでのプロフィールに使われております.しかし,タグの付与はユーザ手動なものが多く(要出典),検索性が高いものを選択するためには,ドメイン知識が必要です.なので,タグを付ける際に「このタグがついた投稿では他にこんなタグもついてます」的なレコメンドがあれば有用そうです.また,レコメンドということですが,近年レコメンド

                                                                  グラフニューラルネットワークでQiitaのタグづけをレコメンドする - Qiita
                                                                • Storybook CSF3.0 時代のテストに備える

                                                                  CSF3.0 が間近に迫っているが、まだリリース前という状況。Storybook は、Component テストと Storybook の垣根を壊す事を目指しており、CSF3.0 は Storybook に閉じた話ではなくテスト戦略に関わってくる。 現状 Storybook 環境を整備するにあたり、どう備えておくべきかを考える。 npm i -D @storybook/react@next で beta を install し、.storybook/main.js に以下を追加すれば CSF3.0 を試す事ができる。

                                                                    Storybook CSF3.0 時代のテストに備える
                                                                  • パッケージマネージャを自作するときに考えること - gfnweb

                                                                    プログラミング言語を自前で創っていると,パッケージマネージャが欲しくなってくるものだ.既存パッケージマネージャやそのラッパーによる配布で事足りることも多いが,自前言語の要件とうまく合わなかったりして,真に自分で実装せねばならないこともある.そうした場合,パッケージマネージャをどんな設計にすべきだろうか? 言語固有の都合には触れずになるべく一般に考慮すべき事項を洗い出し,簡単な設計例も提示してみたい. なお,本稿はパッケージマネージャの設計に焦点を当てたものであり,効率的に依存制約を解消するアルゴリズムなど実装の詳細については解説しない.実際例えばOCamlでは 0install-solver というOPAMの裏でも使われているパッケージを利用すれば制約解消アルゴリズムそのものに踏み込まずとも制約解消処理を実装でき,(それ自体に興味があるときを除けば)必ずしもアルゴリズムを理解する必要はない

                                                                    • オノマトペ(擬音語)から環境音を合成するニューラルネットワーク(Onoma-to-Wave)をPyTorchで実装した - 備忘録

                                                                      はじめに 事前準備 ソースコード 実装の概要と動かし方 補助的に作成したモジュールの概要 おまけ:訓練済みモデルのリリース 環境音合成実験 音響イベントによる条件付けなし 音響イベントによる条件付けあり 実装の舞台裏とかTIPS おわりに 参考文献 はじめに 下記の雑誌論文が最近出版された。 Yuki Okamoto, Keisuke Imoto, Shinnosuke Takamichi, Ryosuke Yamanishi, Takahiro Fukumori and Yoichi Yamashita, "Onoma-to-wave: Environmental Sound Synthesis from Onomatopoeic Words", APSIPA Transactions on Signal and Information Processing: Vol. 11: No.

                                                                        オノマトペ(擬音語)から環境音を合成するニューラルネットワーク(Onoma-to-Wave)をPyTorchで実装した - 備忘録
                                                                      • 「The Art of WebAssembly」を読んだ - dackdive's blog

                                                                        The Art of WebAssembly: Build Secure, Portable, High-Performance Applications 作者:Battagline, RickNo Starch PressAmazon 読んだので簡単なまとめを。 この本について 前半は WebAssembly の基本的なしくみや Node.js・ブラウザで動かす方法、後半はパフォーマンス測定やデバッグ方法について学べる本。 また、特定の言語やツールチェイン(たとえば Rust だったら wasm-pack とか)に依存した内容ではなく、WAT と呼ばれる WebAssembly のテキスト表現を書きながら実装する。 構成 ざっくり Chapter ごとにやってることを書く。 Chapter 1: Introduction to WebAssembly WebAssemblyとは何か、その

                                                                          「The Art of WebAssembly」を読んだ - dackdive's blog
                                                                        • Rustで3Dサンドボックスゲームを作る #1 Bevy

                                                                          続編が書かれるかは未定です。今回は平面を表示しその上をカメラが移動するところまでです。 完成品 Wasm化してブラウザで動かすこともできます↓。 ただしSafariでは上手く動作しないようなので、最新版のGoogle ChromeやFirefoxでお試しください。操作はキーボードのみ(WASD/矢印)です。 ソースコードはGitHub上で公開しています。 はじめに: Bevy BevyはRustで書かれているゲームエンジンです。現在はまだ開発初期段階でAPIが不安定ですが、活発に開発が進められており今後が楽しみなプロジェクトでもあります。 ソースコードはオープンソース(MIT OR Apache 2.0)となっており、もちろんライセンス料なしで使えます。 現在サポートされているプラットフォームは、 Windows macOS Linux Web ですが、現在、 iOS Android のサ

                                                                            Rustで3Dサンドボックスゲームを作る #1 Bevy
                                                                          • Rust でもできる!RISC-Vシミュレータの作りかた 〜 From Ruby To Rust 〜 - ESM アジャイル事業部 開発者ブログ

                                                                            最近 ESM と RISC-V のロゴの配色が似ていると感じている @wat-aro です。 はたけやまさん の blog.agile.esm.co.jp はおもしろい記事でしたね。 この記事は最後こう締めくくられています。 以上、Rubyを使ったシンプルなRISC-Vシミュレータの作り方のご紹介しました。 皆さんも梅雨の時期のおうち時間にお好きなプログラム言語でCPUシミュレータ自作なんていかがですか? なのでこの記事を参考に Rust で RISC-V シミュレータを作成しました。 https://github.com/wat-aro/rv32sim.rs 処理の流れはだいたい元記事と同じですのでもっと詳しく知りたい人は元記事からどうぞ。 メモリ まずメモリの定義です。 write と read と、初期データの読み込み用の initialize メソッドを持っています。 32 bit

                                                                              Rust でもできる!RISC-Vシミュレータの作りかた 〜 From Ruby To Rust 〜 - ESM アジャイル事業部 開発者ブログ
                                                                            • BigQueryのローカル検証用にbigquery-emulatorを触ってみた。ついでにPythonから接続してみる - Qiita

                                                                              BigQueryのローカル検証用にbigquery-emulatorを触ってみた。ついでにPythonから接続してみるPythonBigQueryemulatorGoogleCloud はじめに みなさん、BigQueryが絡む処理のローカル開発やテストどうしてますか?BigQueryは公式のエミュレーターが提供されていないのでけっこう困ること多いんじゃないでしょうか? 私はとりあえず、ローカルではなく専用の環境を用意してそこに接続する形にしていましたが、業務委託の方などに入っていただくことが増えると権限周りで少々悩ましいことも多いです。 ただ数ヶ月前に、goccyさんという方が開発されたGo製のOSSbigquery-emulatorが公開され、こうした問題に解消の兆しが見えてきました。(開発者の方にはリスペクトしかありません!) 少し前までは提供されていない機能も多かったのですが、開発

                                                                                BigQueryのローカル検証用にbigquery-emulatorを触ってみた。ついでにPythonから接続してみる - Qiita
                                                                              • LinkedInが開発した時系列モデル“Greykite”の理論と実装 - ぱぐみの部屋

                                                                                時系列データのモデリングとして、以下のような手法がメジャーかなと思います。 ARIMA Prophet 状態空間モデル RNN LSTM DeepAR 今回は、2021年に発表された比較的新しい手法であるGreykiteのご紹介をしていきます。 注意:本記事は2022年11月時点の情報をもとに記載しております。ライブラリの変更等により本記事の記載内容が古くなる可能性がありますが、ご了承ください。 Greykiteとは? LinkedInが2021年にOSSとして公開した時系列予測モデルです。機械学習分野の国際会議であるKDD2022でも発表されたようです。 KDD2022よりLinkedInによる時系列予測OSS Greykite (https://t.co/wpsCnuak2t) の紹介論文。コアとなるSilverkiteというアルゴリズムの紹介が中心で解釈可能性と速度が売り。Proph

                                                                                • 大規模サービスで効率よくレコメンドを提供するためにTensorflow Recommendersを活用する - DMM inside

                                                                                  はじめに こんにちは、DMMで機械学習エンジニアをしている二見です。 2020年に新卒で入社し、普段は検索やレコメンドの改善に従事しています。 DMMでは50を超えるサービスを提供しており、様々なデジタルコンテンツを取り扱っています。 また、各サービスには多くのユーザーの膨大なデータが日々蓄積されてます。 我々のグループでは、それらのビックデータを活用した改善施策を行うことで、各事業部の成長に日々貢献しております。 本記事では、新たにディープニューラルネットワークベースの先端的なレコメンドシステムを構築し、サービスに導入した事例を紹介したいと思います。 レコメンドエンジンの導入を検討している方・ニューラルネットベースのレコメンドに興味がある方の参考になれば幸いです。 目次 はじめに 目次 DMMにおけるレコメンドへの取り組み 背景 Tensorflow Recommendersとは 1.

                                                                                    大規模サービスで効率よくレコメンドを提供するためにTensorflow Recommendersを活用する - DMM inside

                                                                                  新着記事