並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 1022件

新着順 人気順

jsonの検索結果241 - 280 件 / 1022件

  • Apple、コンフィグレーション生成用の静的型付き言語「Pkl」をオープンソースで公開、単一コードからJSONやYAML、XMLなどを生成

    Appleは、さまざまなコンフィグレーションファイルを生成するための静的型付言語「Pkl」(発音はPickle=ピックル)をオープンソースで公開しました。 ソフトウェアやクラウドサービスなどの設定に用いるコンフィグレーションファイルはどんどん複雑になってきており、利用者が望む詳細な設定を、一般的なコンフィグレーションファイルのフォーマットとして使われているJSONやYAML、XMLプロパティリストなどの形式で正確に記述することは難しくなってきています。 Pklはそうしたコンフィグレーションを正確かつ分かりやすく記述するために開発された、特定目的用のプログラミング言語だと説明されています。 Configuration-as-Codeを実現するための豊富な型やバリデーション機能、VSCodeやIntelliJ、NeoVimなどのコードエディタのプラグインを提供します。Language Serv

      Apple、コンフィグレーション生成用の静的型付き言語「Pkl」をオープンソースで公開、単一コードからJSONやYAML、XMLなどを生成
    • APIシナリオテストの新ツールrunn

      runn is 何? 3行まとめ 今回はAPIシナリオテストツールのrunnをプロジェクトに導入し、一部機能のコントリビュートしながら3ヶ月間触ってみておすすめだと感じたことを記事にまとめたいと思います。 runnとの出会い 4ヶ月ほど前にスキーマ駆動開発を行っているプロジェクトでいい感じのAPIのテストをしようと色々 調査 をしていました。 その当時はOpenAPIでスキーマ定義してswagger-uiからポチポチ手動テストをしていましたが、APIの数も増えるし同じAPIでもパターンが結構あり、流石に手動でのテストでは限界があるなーと考えていました。 パラメータ数も多いのでControllerテストで書くにしてもコード量が多く、レビューが辛いと感じていました。 APIをE2Eでテストしたい、最終的にはCIで自動テストまでもっていきたいと思いました。 しかし、いざ調べてみると案外ニーズにマ

        APIシナリオテストの新ツールrunn
      • AWS Amplifyを無理して使わなくてもいいケースについて挙げてみる - Sweet Escape

        AWS AmplifyといえばAWSが提供しているフロントエンド開発者向けのライブラリやツールセットです。今回はそんなAWS Amplifyについてです。 はじめに おさらい AWS Amplifyはフロントエンド開発者にとっての銀の弾なのか 無理して使わなくてもいいケース バックエンド側のライフサイクルや開発部隊が分かれてる場合 AWSのリソースに直接アクセスしない場合 認証・認可の手段としてCognito使わない場合 Server Side Rendering(SSR)の場合 AWS WAF使いたい場合 Amplify CLIに対応していないバックエンドを利用したい場合 AWS Amplifyがおすすめのケース まとめ はじめに この投稿は2020年10月22の21時から開催予定のイベント(ライブストリーミング)で話す内容です。 serverless-newworld.connpass

          AWS Amplifyを無理して使わなくてもいいケースについて挙げてみる - Sweet Escape
        • 30分でGoogleスプレッドシートを使ってgeojsonを返すAPIを公開する - Qiita

          サンプルデータの準備 データはおでかけマップさんのデータをお借りしました https://www.odekakemap.com/station/ A列を駅名,B列を緯度、C列を経度とします Google Action Script スプレッドシートのツール -> スクリプトエディタを選択します 以下のコードをコピペ function getData(sheetName) { var sheet = SpreadsheetApp.getActive().getSheetByName(sheetName); var rows = sheet.getDataRange().getValues(); return rows.map(function(row) { var obj = {}; obj.type = "Feature" obj.properties = {}; obj.properti

            30分でGoogleスプレッドシートを使ってgeojsonを返すAPIを公開する - Qiita
          • Optics: 「パス」に型を付ければ、データ全体に型を付ける必要はない - Lambdaカクテル

            あまり知られていない関数型言語のおもしろ概念として、Opticsというものがある。 Opticsとは、オブジェクト指向言語で言うところのSetter/Getterを一種の関数として捉え、いくつかの便利な特性を付与したものの総称だ。この便利な特性によって、Setter/Getter以上のことをパワフルにこなせる。 最も有名なOpticsはLensであり、色々な解説資料が(主にHaskell向けに)出ている。 blog.recruit.co.jp さて、これまでのOpticsを紹介する資料はSetterとGetterとしての側面に注目しがちだったので、じゃあOpticsの何が良いのか、Scalaでやる意義は何か、という側面をこの記事で紹介しようと思う。 Optics -- vs. copyメソッド地獄 Opticsは合成可能である Opticsはボトムアップのアプローチである Opticsがう

              Optics: 「パス」に型を付ければ、データ全体に型を付ける必要はない - Lambdaカクテル
            • Site Isolation 及び Web のセキュリティモデルの更新 | blog.jxck.io

              Intro Origin は Web におけるセキュリティモデルの一つとして、コンテンツ間の Communication に関する境界を定義し、リソースを保護してきた。 しかし、 Spectre の発覚以降、 Communication に関する制限だけではなく Isolation によるメモリレベルでのアクセス制御が必要となった。 そこで現在作業されているのが、 CORB, CORP, COEP, COOP といった仕様群であり、これは Web におけるセキュリティモデルの更新作業と見ることができる。 概要と現状について解説する。 DEMO & Resources 量が多いため、動作する DEMO と関連リソースは、ページ下部にまとめてある。 CORS による Cross Origin Communication の制限 CORS は、平たく言えば、リソース提供元(サーバ)が、クライアン

                Site Isolation 及び Web のセキュリティモデルの更新 | blog.jxck.io
              • IMI 情報共有基盤 コンポーネントツール

                URLが「https://」で始まるサイトは、セキュリティ確保のためSSL(Secure Sockets Layer)技術を利用しています。当サイトを利用の際には、SSL技術対応のブラウザをご利用ください。

                • 未来の自分に対し「こんなDB設計にして申し訳ない」とツイート→その通りになってしまった人の話

                  補足説明: MySQLには、バージョン5.7から「JSONデータ型(JSON Data Type)」と呼ばれる概念が登場しています。これにより、JSON型を直接入れられるカラムを作成できます。 便利な一方、一般的なRDBの正規化を崩すことになりますので、仕様には注意が必要です。詳しくはこちらをご覧ください。 リンク WPJ もう知ってた? MySQL 5.7でNoSQLっぽくJSONデータを扱う方法 MySQL 5.7では、JSONデータを「JSON型」としてネイティブで扱えます。サンプルを見ながら、基本的な使い方を確認しましょう。 ※本記事は2016年5月31日に掲載した記事を一部再編集して更新したものです。執筆時点の技術情報をベースにしています。 「SQL vs NoSQL: The Differences」で紹介したように、SQLとNoSQLの境界線は、両言語が他方の特徴を取り入れる

                    未来の自分に対し「こんなDB設計にして申し訳ない」とツイート→その通りになってしまった人の話
                  • オブジェクトのクローンにJSON化を使う時代は終わった!【JavaScript】 - Qiita

                    const obj = { hoge: [new Date(2023, 3, 12), 1], fuga: 'foo' }; const objClone = structuredClone(obj); // ディープコピー obj.hoge[1] = 10; console.log(objClone.hoge[1]); // 1 objClone.hoge[0].setFullYear(2050); console.log(obj.hoge[0].getFullYear()); // 2023

                      オブジェクトのクローンにJSON化を使う時代は終わった!【JavaScript】 - Qiita
                    • UnJS にどんなツールがあるのか、上位30件すべて紹介してみた

                      タイトル通り、JavaScriptツール群「UnJS」にどんなライブラリが存在するのかをひたすら見てみよう! という記事です。 本当は全て紹介しようと思ったのですが、全75個あり、1つの記事に入れるとあまりにも多すぎるので、この記事では2023年11月4日時点のStar数の順に沿って上位30個を紹介していきます。 UnJS とは UnJSは、Nuxt 開発チームが中心となって開発・メンテナンスされている、あらゆるJavaScriptフレームワーク上で統一的に動作するユーティリティーツール・ライブラリ群です。 UnJSというプロジェクトが何であるかについては、2022年11月に公開された講演映像「UnJS: Nuxt 3 behind the scenes by Pooya Parsa」を観て頂くのが最もわかりやすいと思います。Nuxt 3 正式リリース直後ということもあって、かなり詳細な背

                        UnJS にどんなツールがあるのか、上位30件すべて紹介してみた
                      • "CSS Module" をめぐる混乱

                        "CSS Module" が指すもの 2つある 従来のコミュニティベースのもの これのこと。そしてその実装。 現状フロントエンドエンジニアが指すものはだいたいこれ。 Web 標準になりつつあるもの Import Assertions で実現しそうな Synthetic Module としての CSS Module 標準になりそうな所まで来ている。 この2つに関して話がごちゃごちゃになるんで整理する。 コミュニティベースの CSS Module https://github.com/css-modules/css-modules コレ自体は概念的なもの。 その実装 として Webpack の CSS Loader などがある。 なので、一般的に「CSS Module か Styled Component か」みたいな議論ででてくるものの場合、 Webpack の CSS Loader を入れ

                          "CSS Module" をめぐる混乱
                        • Zig で簡単な JSON パーサを書いてみた。

                          #include <stdio.h> int main(int argc, char* argv[]) { int i; for (i = 1; i <= 100; i++) { if (i % 15 == 0) puts("FizzBuzz"); else if (i % 15 == 0) puts("FizzBuzz"); else if (i % 3 == 0) puts("Fizz"); else if (i % 5 == 0) puts("Buzz"); else printf("%d\n", i); } return 0; } fn main() { let mut x = 1; while x <= 100 { if x % 15 == 0 { println!("FizzBuzz"); } else if x % 3 == 0 { println!("Fizz"); } e

                            Zig で簡単な JSON パーサを書いてみた。
                          • SQLite is not a toy database

                            English • Russian • Spanish Whether you are a developer, data analyst, QA engineer, DevOps person, or product manager - SQLite is a perfect tool for you. Here is why. A few well-known facts to get started: SQLite is the most common DBMS in the world, shipped with all popular operating systems.SQLite is serverless.For developers, SQLite is embedded directly into the app.For everyone else, there is

                              SQLite is not a toy database
                            • GoCLIツール職人のためのRust入門

                              三連休中にこんなツールを作った。 普段はGoでCLIツールを書いているけど、このツールで初めてRustを本格的に使ったのでその際に得た知見を元にGoでCLIを作っている人向けにとりあえずRustでツールが作れる状態になれることを目指して、CLIツールを作るときによく使っている処理やRustならではの構文などを中心に書いてみた。 この記事を通して「なぁ~んだ。案外Rustでもサクッとツール作れそうじゃん」とか「Rustにも意外とツール向けのライブラリとかあるんだなぁ」とか思って貰えると嬉しい限り。

                                GoCLIツール職人のためのRust入門
                              • データフェッチはuseEffectの出番じゃないなら、結局何を使えばいいんだ

                                ショートアンサー React 18 からのフックである、useSyncExternalStore を使えばいいようです。 ※ useEffect がまったくだめだというわけではありません。 ※ クライアントサイドレンダリングのみを考えています。サーバーサイドレンダリングを考慮すると違った答えになるかもしれません。 サンプルコード 次のような useData フックを作ってみます。 JSON API の GET レスポンスを返すシンプルなものです。 実験をしやすいように、リクエスト URL を変えるボタンを置いてあります。 import { useEffect, useState } from "react" export function SearchResults() { const [id, setID] = useState(1) const todo = useData(`http

                                  データフェッチはuseEffectの出番じゃないなら、結局何を使えばいいんだ
                                • Postman, Newman で始める E2E テスト - Techtouch Developers Blog

                                  バックエンドエンジニアの misu です。最近はブンブンチョッパーでチャーハンやドライカレーばっかり作ってます。 この記事について 内容 Postman と Newman について モチベーション 実行例 テストの設定 Github Actions にのせる E2Eテストを陳腐化させないために その他 参考 この記事について 弊社では REST API 定義置き場やクライアントとして機能する Postman を使っています。Postman は、登録してある定義に基づいて API リクエストを投げる Newman というライブラリが提供されており、E2E テストのセットアップが簡単にできます。今回は、これらのライブラリを使って E2E 環境を Github Actions 上に作ってみたので簡単なサンプルと一緒に使用感を見ていただけたらと思います。 内容 Postman と Newman に

                                    Postman, Newman で始める E2E テスト - Techtouch Developers Blog
                                  • 75億ドキュメント以上のデータを保持するMongoDBを、Amazon EC2からMongoDB Atlasへ約3ヶ月で移設した方法 | CyberAgent Developers Blog

                                    75億ドキュメント以上のデータを保持するMongoDBを、Amazon EC2からMongoDB Atlasへ約3ヶ月で移設した方法 はじめに タップル SREの赤野、CAM SREの庭木です。 タップルは2021年3月頃にMongoDB on Amazon EC2(以下EC2 MongoDB)からMongoDB Atlas(以下Atlas)への移設を行いました。 今回はこの移設での取り組みについて紹介します。 Atlasへ移設することになった経緯・目的 タップルでは定期的にキャパシティプランニングを目的とした負荷試験を実施しており、今後のDAU増加のシミュレーションに対してシステムのキャパシティが確保できるかを定期的に確認しています。 タップルSREのキャパシティプランニングの取り組みについては、以前発表させていただいた資料があるのでこちらにも目を通していただけると幸いです。 2020年

                                      75億ドキュメント以上のデータを保持するMongoDBを、Amazon EC2からMongoDB Atlasへ約3ヶ月で移設した方法 | CyberAgent Developers Blog
                                    • GPT-3のAPIを使ってエヴァンゲリオンのMAGIシステムを実装してみた。(Pythonで解説)|es

                                      ChatGPTが話題沸騰ですね。今回はエヴァンゲリオンに登場するMAGIシステムをGPT-3のAPIで実装した有料記事を書いてみました。ぜひチェックしてみてください!(サンプルコードはPython) MAGIシステムを一言で言うと 性格の異なる3体のAIが、それぞれ独立に見解をだし、それを集約して1つの結論をだすという合議制のシステム エヴァのMAGIシステムをGPT3で作ってみた 深津氏の記事に触発され、GoogleColabで実装してみました。(面白い記事を書いてくれた深津氏に感謝です。)詳しくは↓ 以下が手順 OpenAIのアカウントにログイン。 2.API keysを発行しましょう。 ここからがコード。 3.openaiをインストール pip install openai4.まずはサンプルコードで疎通確認をしましょう。ちなみに、今回使用するコードは以下の繰り返しになります。 imp

                                        GPT-3のAPIを使ってエヴァンゲリオンのMAGIシステムを実装してみた。(Pythonで解説)|es
                                      • JSON色付けたいへん問題 - 旧gaaamiiのブログ

                                        この前、以下のツイートを目にして、面白いな〜と思いました。たしかにフロントエンドの仕事は、サーバーからJSONとして返ってきたデータを人向けに表示するという仕事が多く、雑に言い表せてる感じが面白い。 湯婆婆「フン。フロントエンドエンジニアというのかい?」 フロントエンドエンジニア「はい」 湯婆婆「贅沢な名だねぇ。今からおまえの名前は "JSON色付け係" だ。いいかい、 "JSON色付け係" だよ。分かったら返事をするんだ "JSON色付け係" !!」— ぷーじ (@YuG1224) 2019年9月15日 上のはジョークだと思うんですが、とはいえ真面目に考えてみると、JSONを人に見やすくする作業をひたすらやっているのだから、もう少し仕事楽になってもいいんじゃないか?なんでJSON色付け係は相変わらず大変なんだ?という疑問が湧いてきます。それについて、自分なりに考えを整理しておきたいと思い

                                          JSON色付けたいへん問題 - 旧gaaamiiのブログ
                                        • Swaggerを使ったAPIドキュメントの作成と、バックエンドとフロントエンド間の連携

                                          こんにちは。LINE Growth Technology福岡開発室でサーバーサイドエンジニアをしている中村です。 この記事では担当していたプロジェクトで実施した、Swaggerを使ったAPIドキュメントの作成と、BE(バックエンド)とFE(フロントエンド)間の連携について紹介します。 プロジェクトの説明 はじめに、今回LINE Growth Technology福岡開発室(以下「GT」)がシステムの設計開発を担当した、LINE公式アカウント審査ツールのプロジェクトについて説明します。 LINE公式アカウント審査ツールとは、LINE公式アカウントで認証済アカウントが申請された際に、申請内容が適切であるか審査するシステムです。 このシステムは、LINE公式アカウントが利用されている各国に存在する審査パートというチーム(以下「審査チーム」)によって利用され、日本以外の国家も含め、一日あたり平均約

                                            Swaggerを使ったAPIドキュメントの作成と、バックエンドとフロントエンド間の連携
                                          • OpenAPI GeneratorでPython Web API構築 | フューチャー技術ブログ

                                            この記事はPython Advent Calendar 2022 カレンダー2の3日目です。昨日はtttakehさんのじゃんけん画像を分類してみたでした。 はじめにこんにちは。TIG DXユニットの村上です! さて、私の所属しているプロジェクトではバックエンドシステムに主にGo言語を用いており、Go言語によるWebAPIを構築しています。 例えばLambdaとGoを使ったサーバーレスWebAPI開発実践入門など、Future Tech Blogには多くのノウハウが投稿されていますので是非ご覧になっていただければと思います。 今回はGo言語ではなくPythonでWebAPIを構築しました。その際にOpenAPI Generatorが便利だったのでご共有します。 OpenAPI GeneratorOpenAPI GeneratorはAPIリクエストやレスポンスの内容を定義し、それを元にプログラ

                                              OpenAPI GeneratorでPython Web API構築 | フューチャー技術ブログ
                                            • TypeScript で記述した Google Apps Script を clasp と GitHub Actions を使ってデプロイする | DevelopersIO

                                              TypeScript で記述した Google Apps Script を clasp と GitHub Actions を使ってデプロイする TypeScript で記述した Google Apps Script を clasp と GitHub Actions を使ってデプロイし、トリガーを使った定期実行をしてみました。 @google/clasp を使うことで CLI で Google Apps Script (GAS) を扱えるため、コードを Git で管理できるようになります。 今回はコードを GitHub で管理し、テストと clasp push を Github Actions で実行できるようにしてみます。 最終的な完成物は下記のリポジトリになります。 https://github.com/hbsnow-sandbox/clasp-github-actions-exampl

                                                TypeScript で記述した Google Apps Script を clasp と GitHub Actions を使ってデプロイする | DevelopersIO
                                              • Python 3.11から追加された標準パッケージtomllibの紹介 | IIJ Engineers Blog

                                                2018年新卒入社し、SOCにてインフラ管理を担当。その後、マルウェア解析や検証業務などに従事。2022年度からは、社内のSREチームにて兼務を開始。主な保持資格は、CISSP, OSCP, GREM, GXPN, RISS, CKA, CKSなど。バイナリを読むのが好きで、一番好きな命令はx86の0x90(NOP命令)。 はじめに 私は、業務でマルウェア解析のようなリバースエンジニアリングをしており、業務効率化のために自作ツールを作ることがあります。皆さんは自作のツールの設定ファイルに、どのようなファイル形式を利用していますか。昨今は、KubernetesやAnsibleなどで用いられるYAMLや、フロントエンド界隈で頻繁に利用されるJSONなどが多い印象です。そんな中、今回はTOMLと呼ばれるファイル形式の紹介をします。プログラミング言語Rustのパッケージ管理ファイルに利用されていた

                                                  Python 3.11から追加された標準パッケージtomllibの紹介 | IIJ Engineers Blog
                                                • Vue.jsを習得するためにやった事 まとめ(随時更新) - Qiita

                                                  JSフレームワーク「Vue.js」を習得するためにやったことをここにまとめます。2019年現在、最優先で取り組んでいるテーマです。随時更新中!! ※2020/01/07追記:vuex-persistedstateでローカルストレージにデータを保存 Vue.js基本 三大フレームワーク比較とHello world そもそもJSフレームとは何か?どんなことができるのか?三大フレームワークと言われるReact、Angularなどと比較した結果、Vue.jsを最初にやってみることにした。 ※参考:三大フレームワークとかSPAとか仮想DOMとかわかりにくかったのでHellow Vue.jsしてみた! イベント(v-on)、分岐(v-show、v-if)、ループ(v-for) イベント設定の「v-on」、条件分岐の「v-show」と「v-if」、ループの「v-for」でどんなことができるのか実際にやっ

                                                    Vue.jsを習得するためにやった事 まとめ(随時更新) - Qiita
                                                  • Perlの依存モジュールのアップデートを自動化するためのCLIツールを作った。GitHub Actions上で動かしてPull Requestも送れる - hitode909の日記

                                                    近年のソフトウェア開発では、RenovateやDependabotといった依存関係更新のためのツールが普及していて、ツールの支援を借りながら依存ライブラリを更新していく開発フローが広まってきている。 これらのツールは、package.jsonで管理されているライブラリだったり、Dockerfileで指定しているイメージだったりを自動的に最新版に更新してPull Requestを出してくれるので、人間は内容を確認してマージボタンを押すか、変なところがあったら手直ししてからマージしていくだけでよい。 はてなでの開発フローでも使い倒していて、先月くらいにも、社内で共有して使ってる設定を公開したりしていた。今ではRenovateのない暮らしに戻ることは考えられないくらいに広まっている。 developer.hatenastaff.com 普段、仕事ではPerlやTypeScriptを書いていて、T

                                                      Perlの依存モジュールのアップデートを自動化するためのCLIツールを作った。GitHub Actions上で動かしてPull Requestも送れる - hitode909の日記
                                                    • package.json dependencies メンテの仕方 最短ルート - Qiita

                                                      package.json の dependencies を最新に保って脆弱性を解消するために、どこから手を付ければいいのか。 「半年前に npm install で追加したっきり。パッケージのアップデートなんて考えたことなかった」という人や「GitHub から security alert が届いてるけども見て見ぬふりをしている」という人向けに、package.json の dependencies をメンテ方法について個人の考えを書いてみます。 Node.js を使っている人にはおなじみ package.json。 package.json の中で一番よく見るのが dependencies(個人の感想、次点で scripts)。 そして、依存パッケージが着々とバージョンアップしていくにも関わらず放置されてしまって後々問題になりがちなのも dependencies 。 npm instal

                                                        package.json dependencies メンテの仕方 最短ルート - Qiita
                                                      • コードフォーマッターをPrettierからdprintにしたら10倍以上速くなった話🚀 - KAKEHASHI Tech Blog

                                                        はじめに こんにちは!ソフトウェアエンジニアの種岡です。 私たちのチームでは、TypeScriptを使用して開発を行っており、Prettierというコードフォーマッターを利用し、チーム内でコーディングスタイル統一に大変重宝しています。 そんなフォーマッター界隈で、Rust製で爆速で動作すると噂のdprintが良いということで試してみたところ、驚くべきことが起きました! Prettierでは、コードフォーマッティングに 7.69秒 かかっていたのですが dprintを使うことでわずか 0.47秒 で完了するようになりました🚀🚀🚀 なんと、 10倍以上速い とういう結果に! コードフォーマットは、Gitのpre-commitフックやGitHub Actionsで日々活用しており、普段の開発作業の裏側でコードの品質を支えてくれているありがたい存在です。 この速度改善により、開発プロセスの中

                                                          コードフォーマッターをPrettierからdprintにしたら10倍以上速くなった話🚀 - KAKEHASHI Tech Blog
                                                        • URLにデータを載せつつ、できるだけ短いURLにしたい - 私が歌川です

                                                          sugarheart.utgw.net イベント支出記録君は、同人誌即売会などでの支出をすぐに記録するためのツール。プリセットに金額を登録しておけば、ワンボタンで支出を記録することができる。CSVダウンロード、TSV形式でのコピー、URLシェアなど、いろいろな方法でデータをエクスポートできる。 下にあるのは、先日のイベントでの自分の支出記録が確認できるURL。 https://sugarheart.utgw.net/event-expenses-tracker/#3AAtzwAAAYeIkjSMzQH0oM8AAAGHiIwcRM0B9KDPAAABh4iIiQ3NAligzwAAAYeIhB9GzQH0oM8AAAGHiEjof80B9KDPAAABh4hGZ8LNA+igzwAAAYeIRHAXzQH0oM8AAAGHiELJ080B9KDPAAABh4hAf3jNASygzwAAAY

                                                            URLにデータを載せつつ、できるだけ短いURLにしたい - 私が歌川です
                                                          • Ruby の JSON ライブラリ Oj のパフォーマンス改善を行いました - Repro Tech Blog

                                                            Development Division/Repro Team/Feature 1 Unit の Watsonです。Feature 1 Unit は Repro Tool の機能開発と保守を担っています。 弊社でも利用している Oj gem のパフォーマンス改善 PR を送った話と、その PR の内容について共有します。 ことのはじまり 以前、同僚が Ruby on Rails で JSON を返す REST API を作成した際、JSON のエンコード部分のパフォーマンス計測をしていました。JSON のエンコード方法は JSON.generate、ActiveSupport::JSON.encode、Oj gem を利用する方法など色々ありますが、私としては Oj gemの ほうがパフォーマンス的にいいだろうからそちらを利用したほうが良いのではと思っておりました。 計測結果を拝見したら確

                                                              Ruby の JSON ライブラリ Oj のパフォーマンス改善を行いました - Repro Tech Blog
                                                            • Next.js + esa.io + VercelでJAMStackな爆速ブログを構築する - パンダのプログラミングブログ

                                                              追記: 本記事がesa.ioの公式Twitterに取り上げられました! esaに書いた記事をNext.jsで公開する Next.jsのバージョン9.3から、ビルド時に外部ソースからデータを取得するgetStaticPropsというAPIが公開されました。 ブログは静的なコンテンツです。ブログの内容はユーザーに応じて動的に変わるということはありません。そして、getStaticPropsは静的なページを構築するために最適なAPIです。 そこで、esaにmarkdownで書いた記事をNext.jsで表示するサイトを構築しました。 実際にサイトにアクセスして記事を開いてみてください。爆速で遷移するのが体験できます。Lighthouseの成績もバツグンです。(blog-starterをベースに利用したため、コンテンツはそのレポジトリの内容を踏襲しています) デモサイトのコードはGitHubにアップ

                                                                Next.js + esa.io + VercelでJAMStackな爆速ブログを構築する - パンダのプログラミングブログ
                                                              • Pkl :: Pkl Docs

                                                                <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>name</key> <string>Swallow</string> <key>job</key> <dict> <key>title</key> <string>Sr. Nest Maker</string> <key>company</key> <string>Nests R Us</string> <key>yearsOfExperience</key> <integer>2</integer> </dict> </dict> </pl

                                                                • VS Code 拡張機能を実装する第一歩を踏み出すために「Get Started: Your First Extension」を試した - kakakakakku blog

                                                                  「VS Code 拡張機能」ってどう実装するんだろう.最近 VS Code を使う場面が多いため,便利な拡張機能にコントリビュートしたり,自分用に拡張機能を作ったりする機会もありそう.さらに今まで TypeScript をほとんど書いたことがなく,書く機会を探していたという側面もある.今回は VS Code ドキュメントに載っている「Get Started: Your First Extension」を試してみた. code.visualstudio.com 雛形を自動生成する まず,Yeoman を使って雛形となる「Hello World Sample」を自動生成する.今回はドキュメントの通りに TypeScript で HelloWorld という名前の「VS Code 拡張機能」を作ることにした. $ npm install -g yo generator-code $ yo cod

                                                                    VS Code 拡張機能を実装する第一歩を踏み出すために「Get Started: Your First Extension」を試した - kakakakakku blog
                                                                  • Go言語で高速JSONライブラリをメモリ安全にしたらさらに速くなった話

                                                                    はじめに こんにちは。Sugawara Yuutaです。"Go言語で最速のJSONデコーダーを作った話", "それでも僕はGoで最速のJSONデコーダーを作りたかった"...以来の方はまた読んでいただきありがとうございます。まだの方は、経緯を伝えやすくなると思うので、そちらの方も読んでいただけたら幸いです。 その後 Go言語チームのメンバーが取り組んでいる新しいバージョンのJSONライブラリであるgo-json-experiment/jsonというレポジトリを発見しました。(厳密に言うと、知ってはいたのですが中身等は見ていない状態でした。) そこで学んだことが少しでも役に立てばとissueを提出したところ、そのときのJSONデコーダーに足りないものが見えてきたため、今回は僕の見つけた課題と、どのように解決しようとしたか・したかを話せればと思います。 見つけた課題 パフォーマンスも重要ですが

                                                                      Go言語で高速JSONライブラリをメモリ安全にしたらさらに速くなった話
                                                                    • tsconfig.json 設定項目備忘録

                                                                      型推論オプション 型推論の結果が変わるもの。 ⭐strict ... 以下のセット alwaysStrict strictNullChecks T | null や T | undefined が T に縮退しなくなる。 例 strictBindCallApply Function の各種メソッドが any に縮退しなくなる。 例 strictFunctionTypes コールバック関数の引数が共変でもunifyするようになる結果、型変数の推論優先度が変わることがある。 例 strictPropertyInitialization noImplicitAny 宣言型がない場合にflow typeが使われる機会が増える。 例 noImplicitThis thisの宣言型がない場合に文脈から型が決定される機会が増える。 例 useUnknownInCatchVariables catch (

                                                                        tsconfig.json 設定項目備忘録
                                                                      • 【Streamlit】JavaScriptが嫌いだからPythonだけでWebアプリをつくる - Qiita

                                                                        フロント(SPA)開発案件2つのプレイングマネージャーと開発リーダーやってますが、JavaScriptが死ぬほど嫌いです。 ブラウザ上で動作するスクリプトなので仕方ないし、async-awaitで大分便利になったけど、非同期処理がやっぱり好きじゃないです。 JavaとかPythonとかそれなりの期間触った言語は大概「みんな違ってみんないい」みたいな感じになるんですが、JavaScriptだけそうならないので本当に嫌いなんだと思います。 因みにCSSはもっと嫌いです。 機械学習モデルの構築をPythonで実装することは多いと思いますが、ちょっとしたデモアプリでも作るとなると、フロント側はどうしてもHTML、JavaScript、CSSで組まないといけないです。 Jupyter Notebookも選択肢に入るかもしれませんが、Webアプリと比べると表現の自由度は下がるし、コードセルが見えるのは

                                                                          【Streamlit】JavaScriptが嫌いだからPythonだけでWebアプリをつくる - Qiita
                                                                        • Terraformで予防的ガードレールを実装したい!「Terraform-Compliance」のご紹介 | DevelopersIO

                                                                          Terraformで予防的ガードレールを実装したい!「Terraform-Compliance」のご紹介 7月7日はクラスメソッドの創立記念日です。今日は次々にブログ記事があがってくることでしょう! また、わたくしゴトですが 18 期からコンサルティング部の部長を務めさせていただくことになりました。「あいつ、部長になったらブログ書かなくなったよな」と後ろ指さされないように、ブログの書ける部長として頑張っていきたいと思います。 ここから AWS が一般的に利用されるようになった昨今最近では単に AWS を使いたいという相談よりも、どうやって AWS 環境をうまく運用するべきか?というご相談が多くなっているように感じます。よくある相談の 1 つが「ガバナンス」です。 ある程度ユーザーに権限をもたせ自由にリソースを作成できるようにした結果、 「パブリックアクセスで S3 を公開してました、、」

                                                                            Terraformで予防的ガードレールを実装したい!「Terraform-Compliance」のご紹介 | DevelopersIO
                                                                          • anypicks.jp - anypicks リソースおよび情報

                                                                            This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

                                                                              anypicks.jp - anypicks リソースおよび情報
                                                                            • OpenAPIにおけるundefinedとnullの設計 | フューチャー技術ブログ

                                                                              はじめにOpenAPI仕様に則ってREST APIの設計をする際に、値が存在しないという状態をどのように表現するかというお話です。 undefinedとはまずはじめに、ここでundefinedと言っているのは、OpenAPIの仕様において、リクエスト/レスポンスのデータ型を定義するSchema Objectのプロパティの1つであるrequiredが指定されていない状態を指します。 OpenAPIにおけるrequiredの定義を確認してみましょう。 OpenAPIの仕様を参照すると、Schema ObjectはJSON Schemaの仕様に従うと記載されています。 The Schema Object allows the definition of input and output data types. These types can be objects, but also primit

                                                                                OpenAPIにおけるundefinedとnullの設計 | フューチャー技術ブログ
                                                                              • TypeScript 4.5でますます便利に! better-typescript-lib v2

                                                                                今日リリースされた TypeScript 4.5 Beta の新機能として、標準ライブラリの差し替えが従来よりも簡単になるというものがあります。 筆者は TypeScript の標準ライブラリからanyを排除してより安全にしたbetter-typescript-libを開発していましたが、このたび TypeScript 4.5 に対応した v2.0.0 のベータ版を用意しました(2.0.0-beta)。 この記事では better-typescript-lib の簡単な紹介に加えて、TypeScript 4.5 の機能の解説やそれによって better-typescript-lib に起こった変化を紹介します。 better-typescript-lib について better-typescript-lib は、TypeScript の標準ライブラリをより型安全にしたものです。better

                                                                                  TypeScript 4.5でますます便利に! better-typescript-lib v2
                                                                                • 究極のシンプルさ!わずか3つのコマンドでブログを構築できる「1POST」を使ってみた! - paiza times

                                                                                  どうも、まさとらん(@0310lan)です! 今回は、超ミニマムなシンプルさがウリのブログ構築ツールをご紹介します! 面倒な依存関係は一切なく、自動生成されるファイルは編集しやすい単純なHTMLというのが大きな特徴です。静的サイトジェネレータのように機能しますが、プログラミングは不要でHTML&CSSの知識があれば誰でも使いこなすことができます。 ブログやWebサイトの構築に興味がある方は、ぜひ参考にしてください! 【 1POST 】 ■「1POST」の使い方 それでは、「1POST」をどのように使えばいいのか詳しく見ていきましょう! Node.jsの開発環境をお持ちであれば、以下のコマンドから「1POST」をインストールしてすぐにでもブログを始められます。 $ npm install -g 1post Node.jsの環境がない方や、ちょっと試してみたいだけ…という場合は、ログイン不要で

                                                                                    究極のシンプルさ!わずか3つのコマンドでブログを構築できる「1POST」を使ってみた! - paiza times