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

並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 1026件

新着順 人気順

fileの検索結果281 - 320 件 / 1026件

  • 9年モノの Rails アプリで、古い Bootstrap を剥がして FLOCSS 化した話 - 弥生開発者ブログ

    こんにちは、弥生 Misoca チームでマークアップをする方のデザイナー @kanizmb です。 今回、約1年をかけて古の Bootstrap の撤去および CSS 設計手法の導入(FLOCSS 化)をやり遂げたので、これらの変更をどのように進めていったかについてお話しします。 どういった状況だったか Misoca ローンチは 2011年、当時最新であった Bootstrap 2.3.2 を用いて構築が始まりました。(*1) 当初は請求書の郵送に特化した非常にシンプルなサービスだったため、少しの上書きでスムーズに開発が進められ、Bootstrap のメリットを存分に生かせていたのだと思います。 しかし時は流れ、取引先管理、品目管理、外部サービスとの連携など、機能が増え続けるとどんどん綻びが出始めます。 設計方針もないままに野放図に差し込まれた CSS たちは、いつしか激しい詳細度バトルを

      9年モノの Rails アプリで、古い Bootstrap を剥がして FLOCSS 化した話 - 弥生開発者ブログ
    • 老舗音声編集ソフトのAudacityをインストール不要でブラウザでも使える「Wavacity」

      無料で提供されているオープンソースの音声編集ソフトウェア「Audacity」をフォークし、ブラウザ上で動作するようにした「Wavacity」が公開されています。 Wavacity https://wavacity.com/ 上記のリンクにアクセスすると、以下のような画面が表示されます。本家のAudacityは表示言語を日本語に設定する必要がありますが、Wavacityは最初から日本語で表示されるので、日本語ネイティブユーザーにとってかなり取っ付きやすくなっています。 記事作成時点で最新バージョンとなる本家Audacity(v3.3.3)の画面が以下。 比較するとこんな感じ。スライダーを右に動かすとWavacityが、左に動かすとAudacityが表示されます。 楽曲ファイルをインポートするには「ファイル」から「開く」をクリックし、ファイルを選択します。 タイムライン上でドラッグすると、編集

        老舗音声編集ソフトのAudacityをインストール不要でブラウザでも使える「Wavacity」
      • 同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々

        tl;dr git rev-parse HEAD^{tree} でツリーオブジェクトのハッシュ値が取れるので、ブランチが異なる場合でも同じソースツリーであるかどうかを判定できます。 これを利用して、すでにテストを通ったtreeのハッシュ値をどこかに記録しておいて、同一のソースツリーに対するテストをスキップできます。 本題 よく使われている、develop/mainブランチ運用をしている場合に、ちょっとした修正を本番に入れたい場合には以下のようなフローを踏むことになるでしょう。 featureブランチをdevelopブランチの先頭から切って修正を作ってテストが通るのを待つ developブランチにfeatureブランチにマージしてテストが通るのを待つ mainブランチにdevelopブランチをマージしてテストが通ったらdeployする さて、この時、他の作業が混ざらない限りにおいては1,2,

          同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々
        • 無料でページを保存&完全オフラインで動作&ユーザー登録不要のChrome・Firefox・Edge拡張「TagSpaces Web Clipper」

          ファイルにタグをつけて管理できるオープンソースのファイル管理ソフトが「TagSpaces」です。このTagSpacesのブラウザ拡張機能「TagSpaces Web Clipper」を使えば、ウェブページをタグ付けでローカルに保存でき、TagSpacesと併用することで保存したページの内容を強調表示したり、テキストを追加したりと、簡単に編集することが可能になります。 TagSpaces Web Clipper - Chrome ウェブストア https://chrome.google.com/webstore/detail/tagspaces-web-clipper/ldalmgifdlgpiiadeccbcjojljeanhjk TagSpaces Web Clipper – Get this Extension for ???? Firefox (en-US) https://addo

            無料でページを保存&完全オフラインで動作&ユーザー登録不要のChrome・Firefox・Edge拡張「TagSpaces Web Clipper」
          • styled-componentsの採用と既存資産を捨てた理由 - Cybozu Inside Out | サイボウズエンジニアのブログ

            こんにちは。フロントエンドエキスパートチームの@nakajmgです。 私が所属しているフロントエンドエキスパートチームでは、現在 kintone の脱レガシーの一環として React + TypeScript 化に取り組んでいます。この取組の中で Scss で定義されている既存のスタイルを styled-components で書き直していくという決定をしました。 今回は styled-components の採用を決定するまでの過程や、既存の Scss ファイルの扱いについて検討した内容などを紹介します。 スタイル定義方法の検討 kintone にはユーザーが JavaScript でカスタマイズできる機能があり、ユーザーが行っているカスタマイズの中には、DOM 構造や CSS のクラス名に依存しているものもあります。このようなカスタマイズはサポートの対象外ではありますが、ユーザーにでき

              styled-componentsの採用と既存資産を捨てた理由 - Cybozu Inside Out | サイボウズエンジニアのブログ
            • 動的解析を利用し、実働6日でレガシーコードを1/3削った話(Perl編) - CARTA TECH BLOG

              こんにちは!株式会社VOYAGE MARKETINGで働くエンジニアの yopidax です。 約20年ほど続くサービス、ECナビの技術的負債の返済に取り組んでいます。 ecnavi.jp 今回は直近で、レガシーコードを大量に削除したので、そのアプローチをご紹介したいと思います。 目次 目次 解析の対象と抱える課題 アプローチ 実行されるファイルを洗い出す ログを出力するモジュール 実行 ログのサンプル いざ、大量削除 Perlファイルをgrepする リリース単位を細かくする 結果 工数 実績 まとめ 合わせて読みたい 解析の対象と抱える課題 ECナビを長年支える、Perlで書かれたバッチが対象です。コードはGitLabのリポジトリで管理されていて、規模をまとめるとこんな感じです。 ファイルの数 バッチ関連全体 : 3,315 うち、Perlファイル(.pm, .pl) : 1,111 P

                動的解析を利用し、実働6日でレガシーコードを1/3削った話(Perl編) - CARTA TECH BLOG
              • リリース用のpull requestを自動作成し、マージされたら自動でタグを打つtagpr | おそらくはそれさえも平凡な日々

                常々GitHubにtag requestが欲しいと言ってきましたが、それを実現するツールを作りました。OSSなど、バージョニングとリリースが伴うソフトウェア開発のリリースエンジニアリングをとにかく楽にしたいという動機です。既に自分が管理している幾つかのOSSでは導入して便利に利用しています。 https://github.com/Songmu/tagpr アイデア 基本の発想は以下のようにシンプルです。 リリース用のpull requestがGitHub Actionsで自動で作られる バージョン番号が書かれたファイルやCHANGELOG.mdを自動更新 そのpull requestをマージするとマージコミットに自動でバージョンtagが打たれる semver前提 リリース用のpull requestを自動で作りマージボタンを以てリリースと為す、というのは、みんな(僕が)大好き git-pr

                  リリース用のpull requestを自動作成し、マージされたら自動でタグを打つtagpr | おそらくはそれさえも平凡な日々
                • 京大のスパコンでファイル約77TB分が消失、実行中のスクリプト更新で誤動作

                  2021年12月、京都大学のスーパーコンピューターがトラブルに見舞われた。学術論文に使う重要データなど、実に77テラバイト(TB)分のファイルが消失した。ITベンダーの担当者が実行中のスクリプトを不用意に更新したのが原因だった。本来はログ削除の処理が利用者のファイルを削除する誤動作を引き起こした。ミスを犯したITベンダーも問題だが、監督不十分だった京都大学の責任も重い。 「弊社100%の責任によりLustreファイルシステムのファイル消失の重大障害を来し、多大なるご迷惑をお掛けしたことを深くお詫び申し上げます」 京都大学が2021年12月28日に公表した「スーパーコンピュータシステムのファイル消失のお詫び」のお知らせには、大規模なデータ消失を引き起こした日本ヒューレット・パッカードが同大学宛てに提出した報告書がリンクされていた。「弊社100%の責任」という説明は、ITベンダー側の「完全降伏

                    京大のスパコンでファイル約77TB分が消失、実行中のスクリプト更新で誤動作
                  • FAT32ファイルシステム読解

                    1. はじめに FAT32 ファイルシステムを実装する必要があった (趣味) ため、本記事では FAT ファイルシステム (メインはFAT32) の仕様を出来るだけ分かり易くまとめました。 なぜ FAT32 なのか? 全てのOS (Windows, Linux, MacOS) や Raspberry Pi4 のブート用ファイルシステムでもサポートされおり、非常に使い勝手が良い 少なくともファイルのリード操作だけに限定した場合に実装がとても簡単で、Raspberry Pi4 のデバイスで SD カード上のファイルにリードアクセスする場合に便利 ただし、FAT は暗号系の機能がサポートされていなかったりするので、実際の組み込み機器の Linux 系で利用するファイルシステムだと Ext2/Ext3/Ext4 など他のファイルシステムの利用が多いとは思います。 2. FATファイルシステム概要

                      FAT32ファイルシステム読解
                    • ExcelでCSVファイルを「0落ち」や「文字化け」なしで開く方法 - Qiita

                      はじめに CSVファイルをExcelで開こうとしたとき、電話番号や郵便番号の先頭のゼロ(0)が自動的に消えてしまったり、文字化けしてしまう...。そんな悩みをお持ちの方はいませんか?この記事では、データを正確に保持しながらCSVファイルを開く方法を簡潔にご紹介します。 1.CSVファイルとは そもそもCSVファイルって何?というところから説明します。 CSVはComma Separated Value(カンマで区切られた値)の略であり、CSVファイルはテキストデータの各項目を、カンマ(,)で区切って表現したファイルです。 言葉では理解しにくいので、画像で見てみましょう。 まず、こちらがExcelでCSVファイルを開いたときの画像です。 普段、Excelでデータを作成・編集しているときと同じように見えますよね?CSVといっても、特に変わったことはなさそうです。 では、Windowsの「メモ帳

                        ExcelでCSVファイルを「0落ち」や「文字化け」なしで開く方法 - Qiita
                      • Bootstrap 5の作業環境の構築方法、jQueryを使用しないJavaScriptでの実装方法を解説

                        Bootstrap 5の作業環境の構築方法、依存関係のインストール手順、ページやコンポーネントの実装、jQueryを使用せずにシンプルなJavaScript(バニラJS)でコンポーネントを実装する方法などを紹介します。 Bootstrap 5 tutorial: learn how to get started without jQuery by @zolidev 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに Bootstrap 5の作業環境を用意する方法 npm依存関係のインストール Sassファイルをコンパイルするためのgulpfileを作成し、BrowserSync経由でローカルサーバーを作成 BootstrapのSassファイルをワークフローに含める 新しいマークアップで簡単なブログページを作成する ナビゲー

                          Bootstrap 5の作業環境の構築方法、jQueryを使用しないJavaScriptでの実装方法を解説
                        • `*.d.ts` ファイルをコミットする前に知ってほしい4つのこと

                          export type Bookmark = { id: number; url: string; comment: string; }; このファイルには型しか書いてありませんね。ということは、「型定義ファイル」として bookmark.d.ts という名前にするべきでしょうか。実はそうではなく、この場合は bookmark.ts とするべきです。 「型定義ファイル」とは、「どこか別の場所にある実装に型をつけるためのファイル」です。たとえば、以下のファイルは「どこか別の場所にある実装」に型をつけているから、 *.d.ts にするのは自然です。 いっぽう、 type Bookmark は別のどこかにある *.js の型を与えているわけではないので、 *.ts でよいです。 このように本来 *.ts であるべきものを *.d.ts にしてしまうことには問題があります。代表的な問題として型エラ

                            `*.d.ts` ファイルをコミットする前に知ってほしい4つのこと
                          • GitBookをForkしてHonKitを作りました

                            GitBookはMarkdownからドキュメントページや書籍を作成するツールですが、 以前OSSで公開されていたGitBook(legacy)はDeprecatedとなって開発は止まっています。 ⚠️ Deprecation warning: As the efforts of the GitBook team are focused on the GitBook.com platform, the CLI is no longer under active development. All content supported by the CLI are mostly supported by our GitBook.com / GitHub integration. Content hosted on the legacy.gitbook.com will continue worki

                              GitBookをForkしてHonKitを作りました
                            • Content-Disposition の filename という地雷。 (1個の観点で17個の脆弱性を見つけた話) - ぶるーたるごぶりん

                              English ver: https://gist.github.com/motoyasu-saburi/1b19ef18e96776fe90ba1b9f910fa714#file-lack_escape_content-disposition_filename-md TL;DR 1つのブラウザ、1つのプログラミング言語、15個の { Web Framework, HTTP Client ライブラリ, Email ライブラリ / Web Service 等} で脆弱性を見つけました。 見つけた脆弱性は、全て 1つの観点で発見した (多分 50-80 くらいのプロダクトの調査をした)。 RFC の記載では、(かなりわかりにくく)この問題に対する要件が記載されており、WHATWG > HTML Spec の方はしっかりと書かれているといった状況にある。 この問題は、 Content-Dispo

                                Content-Disposition の filename という地雷。 (1個の観点で17個の脆弱性を見つけた話) - ぶるーたるごぶりん
                              • ファイルストレージ・ブロックストレージ・オブジェクトストレージの違いと、AWSのストレージサービスとのマッピング - プログラマでありたい

                                こんにちは。仕事でAWSの構築し、プライベートでAWSの研究と技術書の執筆をし、Amazonで本を売っているAmazon依存症疑惑のある佐々木(@dkfj)です。 AWS使い始めてまず悩むことのベスト10の一つが、ストレージサービスの選び方です。AWSにはS3やEBSの他に、EFSやFSxなど多種多様なストレージサービスがあります。今回は、ストレージサービスの種類から、AWSのサービスの使い分けを説明したいと思います。 ストレージサービスの種別 一口にストレージといっても、用途に応じて幾つか分類できます。代表的なのが、ファイルストレージ・ブロックストレージ・オブジェクトストレージです。まずは、この3つの違いをみてみましょう。 ブロックストレージ まず一番イメージしにくいのが、このブロックストレージ。ブロックストレージは、ものすごくザックリいうとハードディスクのようなもので、ブロックと呼ばれ

                                  ファイルストレージ・ブロックストレージ・オブジェクトストレージの違いと、AWSのストレージサービスとのマッピング - プログラマでありたい
                                • ChatGPTにgitのリポジトリ渡すと全ソースコード.txtをダウンロードさせてくれるやつ〜〜〜〜(AIに食わせるコード一覧が欲しい時用)

                                  クレデンシャル含むソースコードをChatGPT等のクラウドLLMサービスにアップロードしないでください。 今回のプロンプトはオープンなリポジトリのみを対象としており、シェルスクリプトが実行される環境もChatGPT側のクラウド上のサンドボックス内のみを想定しています。 ローカル環境では以下のシェルスクリプトをそのまま実行せずに、ご自身が作成したシェルスクリプトを利用してください。 以下はソースコードのプロジェクトルートで実行することで、ソースコードのダンプを.txt形式でダンプするシェルスクリプトです。 \`\`\` #!/bin/bash # バイナリファイルかどうかを判定する関数 is_binary_file() { local file="$1" local file_output file_output=$(file "$file") if [[ "$file_output" ==

                                    ChatGPTにgitのリポジトリ渡すと全ソースコード.txtをダウンロードさせてくれるやつ〜〜〜〜(AIに食わせるコード一覧が欲しい時用)
                                  • VMware ESXiを狙ったランサムウエアキャンペーンESXiArgsについてまとめてみた - piyolog

                                    2023年2月3日(現地時間)、フランスのナショナルサートCERT-FRは、VMware ESXiを狙った脆弱性悪用のキャンペーンが確認されているとして注意を呼び掛けています。ここでは関連する情報をまとめます。 何が起きたの? ⚠️Alerte CERT-FR⚠️ CERTFR-2023-ALE-015 : Campagne d’exploitation d’une vulnérabilité affectant VMware ESXi (03 février 2023). https://t.co/KN6GDUdXcL— CERT-FR (@CERT_FR) 2023年2月3日 2月4日未明よりVMware ESXiを狙ったサイバー攻撃が発生しているとCERT-FRをはじめ複数のセキュリティ研究者などから報告があがっており、被害に遭ったとみられるホスト数が増加傾向にあることから攻撃が続い

                                      VMware ESXiを狙ったランサムウエアキャンペーンESXiArgsについてまとめてみた - piyolog
                                    • 2024年版最近の実装に合わせた、HTMLでWebページを実装するための必要最小限をまとめたテンプレート一式

                                      Webページを作成する時に役立つ、HTMLをはじめとする必要最小限のファイルをまとめたシンプルな基本テンプレート一式を紹介します。 最新版は、最近の実装に合わせた設計にアップデートされました。 HTML5 Boilerplate -GitHub HTML5 Boilerplateの特徴 HTMLの基本テンプレート HTML5 Boilerplateの使い方 HTML5 Boilerplateの特徴 HTML5 Boilerplateは、Webサイトやアプリを実装するためのプロフェッショナルなフロントエンド用のHTMLの基本テンプレートです。 実践的な基本のテンプレート 200人を超える貢献者による10年間の分析・研究・実験を元にしています。 ブラウザの見え方を最適化 プログレッシブエンハンスメントを念頭において設計されています。 インクルード 推奨されるmetaタグやその他の利点を備えたH

                                        2024年版最近の実装に合わせた、HTMLでWebページを実装するための必要最小限をまとめたテンプレート一式
                                      • VSCodeの新機能「Copilot Edits」、GitHub Copilotが複数ファイルにわたるコード変更や生成に対応。「ダークモードとライトモードのテーマに対応して」など複雑な指示も可能に

                                        VSCodeの新機能「Copilot Edits」、GitHub Copilotが複数ファイルにわたるコード変更や生成に対応。「ダークモードとライトモードのテーマに対応して」など複雑な指示も可能に マイクロソフトはVisual Studio Codeの2024年10月のアップデート版(version 1.95)を公開しました。 本バージョンでは、Copilot Chatセカンダリサイドバー、GitHubアカウントのマルチアカウント対応、Copilotコードレビューなどの新機能が追加されていますが、もっとも大きな新機能はCopilotがプロンプトの指示によって複数ファイルにわたるコードの変更や生成に対応する「Copilot Edits」でしょう。 Version 1.95 of @code is out now with Copilot Edits (in preview), docstri

                                          VSCodeの新機能「Copilot Edits」、GitHub Copilotが複数ファイルにわたるコード変更や生成に対応。「ダークモードとライトモードのテーマに対応して」など複雑な指示も可能に
                                        • JavaScriptだけでExcel風のスプレッドシートを開発できる「jExcel」を使ってみた! - paiza times

                                          どうも、まさとらん(@0310lan)です! 今回は、JavaScriptで簡単にExcelのようなスプレッドシートを作成できるライブラリをご紹介します! 基本的な操作はすべてJavaScriptから制御可能であり、自分の好きなようにカスタマイズできる強力な機能が多数提供されています。また、簡単なプログラムだけでファイルの書き出し機能が利用できるなど便利なメソッドも多く含まれています。 自作のWebアプリなどにも手軽に組み込めるので、ご興味ある方はぜひ参考にしてみてください。 なお、JavaScriptの基本はpaizaラーニングの「JavaScript入門編」で学ぶことができますので合わせてチェックしてみてください。 【 jExcel 】 ■「jExcel」の使い方 それでは、まず最初に「jExcel」の導入方法から見ていきましょう! 全部で3通りの方法が以下のように提供されています。

                                            JavaScriptだけでExcel風のスプレッドシートを開発できる「jExcel」を使ってみた! - paiza times
                                          • Web フロントエンドにおけるコロケーション (co-location) という考え方について - mizdra's blog

                                            Webフロントエンド界隈の文献などにあたっていると、「コロケーション (co-location)」という考え方が時々登場します。 コロケーションを簡単に説明すると、関連するリソース同士を近くに置いておく、という考え方です。 FooComponent.tsx と同じディレクトリに FooComponent.test.tsx を置く GraphQL fragment は、クエリを発行するコンポーネントファイル (pages/user.tsx) ではなく、fragment を利用するコンポーネントファイル (components/UserInfo.tsx) の中で定義する pages/user.tsx からはサブコンポーネントのファイルで定義されている fragment を import してきて、クエリを組み立てて発行する API ドキュメントは API.md に書くのではなく、コードの中にド

                                              Web フロントエンドにおけるコロケーション (co-location) という考え方について - mizdra's blog
                                            • Eagle で画像収集・管理が驚くほど簡単に!デザインワークを加速する私の使い方 - Techtouch Developers Blog

                                              はじめに デザイナーの toshi です。少しずつ暖かくなり畑仕事も捗ります。(この前、ジャガイモの植え付けとネギを 200 粒蒔きました。おいしく育つといいな 🌱 ) さて、この記事では私のデザインワークを格段に上げる「 Eagle 」とその使い方を紹介できたらと思います。 私は 2018 年頃から Eagle を使い始めてデザインワークの初速が上がったり、画像・素材管理のストレスが確実に減りました。 みなさんは、競合調査やベンチマークにするデザインなど参考にするデータはどのように管理していますか? ブックマークで管理?キャプチャ画像をフォルダで管理?画像管理アプリで管理? はじめに なぜベンチマーク管理と参照が大切だと考えているか 時間の有効活用 自分の基準「だけ」で判断しない 質より量でアイデア出しの初速を高める Eagleを使う前 Eagle とは Eagle の使い方 Eagl

                                                Eagle で画像収集・管理が驚くほど簡単に!デザインワークを加速する私の使い方 - Techtouch Developers Blog
                                              • [Rust] モジュールのベストプラクティス

                                                Rust のモジュールシステムは私の知る中でもトップクラスによくできた仕組みだと思います。特にリファクタリングによってモジュールを再構成するときのやりやすさは他の言語では経験できないものです。例えばそれなりの規模の Python プロジェクトを回帰バグを導入せずにモジュール構造のリファクタリングするのは不可能に近いですが、 Rust ではそのような不安を覚えたためしがありません。 Rust のモジュールシステムがどういうものかは、 The book にも書かれていますし、すでに大量のガイドが書かれていると思います。しかし、どのように使うべきかについては意外なほど情報が少なく感じます。 ベストプラクティスというのもおこがましいですが、数年使ってきて Rust のモジュールシステムを使う上でスムーズに感じる方法をまとめておきたいと思います。 Rust のモジュールシステム 本稿の主題はモジュー

                                                  [Rust] モジュールのベストプラクティス
                                                • わずか4GBの実行ファイル1つで大規模言語モデルによるAIを超お手軽に配布・実行できる仕組み「llamafile」をWindowsとLinuxで簡単に実行してみる方法

                                                  「llamafile」は大規模言語モデルのモデルやウェイトの情報が1つの実行ファイルにまとまった形式のファイルです。Linux・macOS・Windows・FreeBSD・NetBSD・OpenBSDという6つのOS上でインストール不要で大規模言語モデルを動作させることが可能とのことなので、実際にWindowsおよびLinuxディストリビューションの1つであるDebian上で動かしてみました。 Mozilla-Ocho/llamafile: Distribute and run LLMs with a single file. https://github.com/Mozilla-Ocho/llamafile#readme Introducing llamafile - Mozilla Hacks - the Web developer blog https://hacks.mozilla

                                                    わずか4GBの実行ファイル1つで大規模言語モデルによるAIを超お手軽に配布・実行できる仕組み「llamafile」をWindowsとLinuxで簡単に実行してみる方法
                                                  • OpenAPI Generator で API Client と型を自動生成した話 - BASEプロダクトチームブログ

                                                    フロントエンドエンジニアの @rry です。 自分は BASE の Sales Promotion というチームで主に新規機能開発を行っています。このチームでは主にオーナーさんの使う管理画面に新しく機能追加をしています。 そこで、管理画面で使っている API Client と型を、OpenAPI Generator を使って自動生成するようにしてみたのでそのお話を書きたいと思います。 そもそも OpenAPI とは? https://www.openapis.org/ OpenAPI とは、RESTful Web サービスを記述、生成、使用、および視覚化するための仕様です。 ※ 以前は OpenAPI ではなく仕様自体も Swagger と呼ばれていましたが、現在は仕様自体については OpneAPI と呼ばれており、Swagger というのは OpenAPI を使ったツール群のことをさすよ

                                                      OpenAPI Generator で API Client と型を自動生成した話 - BASEプロダクトチームブログ
                                                    • 『Rustで作るプログラミング言語』を読んで、かねてから構想していた自作言語を形にした - Islands in the byte stream

                                                      Rustで作るプログラミング言語という書籍が先日発売されました。簡単なプログラミング言語を作ってバイトコードに変換して実行したりネイティブコードに変換して実行してみよう、という本で、大変面白く読みました。最終的にまあまあ本格的な言語になるので、これを元にするとわりとちゃんとした言語を作れそうです。 この書籍で最終的に作られる言語はこちら: GitHub - msakuta/ruscal: Programming language implementation learning project ちょうど私も、以前から構想していた言語があったので、ちょっと作ってみました。というのも、TypeScriptを設定記述言語としてさまざまなプログラミング言語から使えると便利ではないかとずっと思っていたのです。 この設定言語で複雑なことができる必要はなく、最終的にはJSONに準ずるデータ構造になればよい

                                                        『Rustで作るプログラミング言語』を読んで、かねてから構想していた自作言語を形にした - Islands in the byte stream
                                                      • Python Web UIフレームワークで作るデスクトップアプリ | gihyo.jp

                                                        寺田 学(@terapyon)です。2024年4月の「Python Monthly Topics」は、Python Web UIフレームワークの1つであるStreamlitを使ってWindowsやmacOSのデスクトップアプリを作る方法を解説します。 目的⁠・モチベーション Pythonで自動化のスクリプトを作ったり、JupyterLabやColaboratoryでデータの可視化を行うことがあります。これらを作成者以外の多くの方に利用してもらう方法として、Webシステムやデスクトップアプリとして提供する方法が考えられます。 Webシステムの構築やデスクトップアプリの作成となると、技術的なハードルがあります。他には、時間的なコストに見合わないという状況もあり得ます。 Python Web UIフレームワークを使うことで、比較的少ないコードでWeb UIからスクリプトの実行や可視化をするアプリ

                                                          Python Web UIフレームワークで作るデスクトップアプリ | gihyo.jp
                                                        • FILE1:未知との遭遇 / COSMOS - 田村隆平 | サンデーうぇぶり

                                                          COSMOS 田村隆平 人の嘘が見抜ける高校生・水森 楓は 波風立てないようにドライに生きていた…… 謎の女子校生・穂村 燐に出会うまでは――― 『べるぜバブ』の田村隆平が描く、 シン・SFエイリアンドラマ!

                                                            FILE1:未知との遭遇 / COSMOS - 田村隆平 | サンデーうぇぶり
                                                          • 【HTML】知っておくと便利!短いHTMLコードで実装できる小技テク17選

                                                            この記事では、あまり知られていないHTMLの小技20個を実例サンプルと一緒にご紹介します。 CSSやJavaScriptなども使わずに、わずかなHTMLコードだけで実装可能な便利テクニックで、手軽に利用できるのもポイントです。 先日紹介したCSS小技テクと一緒に活用してみてはいかがでしょう。 【CSS】知っておくと便利!短いコードで実装できるCSS小技20選 たった1行のCSS!よく見かけるWebレイアウトを実現する凄技テクニック10個 そもそもHTMLってなに? HTML(Hypertext Markup Language)は、Webブラウザで表示するための基本となる標準的なマークアップ言語です。また、CSS(Cascading Style Sheets)などの技術や、JavaScriptなどのスクリプト言語によってサポートされることもあります。 ホームページを作るときは、まずHTMLを

                                                              【HTML】知っておくと便利!短いHTMLコードで実装できる小技テク17選
                                                            • 『GitUI』を使ってターミナルからでも直感的なGit操作を|NAVITIME_Tech

                                                              こんにちは、みみぞうです。 ナビタイムジャパンで『システムや開発環境、チームの改善』を担当しています。 今回はターミナルで動くGitクライアントツール『GitUI』を紹介します。 本稿は以下のいずれかに当てはまるような方をターゲットにしています。 ターミナルで動くGitクライアントツールを探している方 NeovimからシームレスにGitの操作をしたい方 Windowsで使えるGitクライアントツール探しに困っている方 ℹ️ Neovimは、Vimをベース拡張性を考慮してモダンな技術で作られたプロダクトです。 GitUIとは『GitUI』はターミナル上でもGUIのように快適なGit体験を提供するOSSのツールです。 GitUI provides you with the comfort of a git GUI but right in your terminal extrawurst/gi

                                                                『GitUI』を使ってターミナルからでも直感的なGit操作を|NAVITIME_Tech
                                                              • SQLite のおもしろ仕様 (2) : ファイルフォーマット - kawasin73のブログ

                                                                後方互換性って辛いね、どうもかわしんです。 最近 Rust で SQLite をフルスクラッチで再実装しています。 github.com 再実装するために SQLite の公式ドキュメントやソースコードを読み込んでいるわけですが、その過程で気付いたおもしろポイントを共有しようかと思います。 今回はその第二弾、ファイルフォーマット編です。第一弾はこちら:SQLite のおもしろ仕様 (1) : データ型 - kawasin73のブログ 前提知識 : ページ まず、この記事を面白いと思ってもらうための前提知識です。 大抵のデータベースはデータを保存するファイルをページという単位で管理します。SQLite ではデフォルトでは 1 ページ 4096 バイトです。これは、ファイルを保存するデバイス(HDD や SSD など)としてブロックデバイスを想定しているからです。ブロックデバイスとはデータの読

                                                                  SQLite のおもしろ仕様 (2) : ファイルフォーマット - kawasin73のブログ
                                                                • モダンな高機能ファイラー「Files」v2.4が公開 ~「Windows App SDK」移行で高速に/ファイルの展開・圧縮にかかわるコマンドも拡充

                                                                    モダンな高機能ファイラー「Files」v2.4が公開 ~「Windows App SDK」移行で高速に/ファイルの展開・圧縮にかかわるコマンドも拡充
                                                                  • ドキュメント執筆にもGit、ビルド、テストで再利用性や整合性を実現する「Writerside」、JetBrainsがプレビューリリース

                                                                    Kotlinなどの開発元として知られるJetBrainsは、テクニカルドキュメントのための一連のツールを統合したドキュメントオーサリングツール「Writerside」のプレビューリリースを発表しました。 ソフトウェア開発においては、テキストで記述されたソースコードをGitでバージョン管理し、ビルドによって複数のソースコードを1つのアプリケーションへとまとめ上げ、コンパイルし、テストをして本番環境へのデプロイによりアプリケーションを公開します。 そしてこのプロセス全体を、さまざまな機能を備えたツールチェンを用いて自動化することで、ソフトウェア開発の効率を高めています。 一方で、例えばアプリケーションのチュートリアル、SDKやAPIのリファレンスドキュメントなどのドキュメントの制作過程においては、複数のファイルをフォルダにまとめ、手作業で目次のページとリンクさせることや、ソースコードのサンプル

                                                                      ドキュメント執筆にもGit、ビルド、テストで再利用性や整合性を実現する「Writerside」、JetBrainsがプレビューリリース
                                                                    • Node.jsとJavaScriptアプリを単一の実行ファイルにする「Single Executable Applications」機能、Node.js 19.7.0で実験的機能として搭載

                                                                      2月21日にリリースされたNode.jsの最新バージョン「Node.js 19.7.0」で、Node.jsとJavaScriptアプリケーションを単一の実行ファイルにパッケージングする新機能「Single Executable Applications」が実験的機能として搭載されました。 一般にNode.jsのアプリケーションをデプロイするには、Node.jsのインストールや環境設定をするところから始めなければなりません。 今回新しく実験的に搭載されたSingle Executable Applications機能を使うと、そのまま実行可能な単一の実行ファイルを作ることができるため、それを配置するだけで簡単にデプロイができるようになる見通しです。 Single Executable Applicationsでは、postjectと呼ばれる新しいコマンドが用意されます。これを用いてNode.

                                                                        Node.jsとJavaScriptアプリを単一の実行ファイルにする「Single Executable Applications」機能、Node.js 19.7.0で実験的機能として搭載
                                                                      • Next.jsにおけるSSG(静的サイト生成)とISRについて(自分の)限界まで丁寧に説明する - Qiita

                                                                        この記事では、Web アプリケーションにおけるデータ取得(データフェッチング)やレンダリングに関する各手法について比較・整理することを目的として、特に最近注目度が高まっている Next.js における SSG(静的サイト生成)や ISR(インクリメンタル静的再生成)、それ以外の手法(SSR、CSR 等)を具体的なテーマとしてお話しします。 Twitter もやっているのでよかったらフォローおねがいします! @_thesugar_ 記事内の解説は正確性を期すよう注意を払っておりますが、誤っている部分などがございましたらコメント欄や Twitter 等でご指摘ください はじめに Web アプリケーションを作るとき、レスポンスの速さをはじめとしたパフォーマンスの問題は開発者にとって大きな関心事となります。 たとえば、最近では Google が Core Web Vitals という Web のパ

                                                                          Next.jsにおけるSSG(静的サイト生成)とISRについて(自分の)限界まで丁寧に説明する - Qiita
                                                                        • 【2024年夏】ブラウザ拡張機能開発を加速するフレームワーク・ツール3選をコードベース付きで紹介!

                                                                          本記事では、ブラウザ拡張機能開発を加速させる、個人的に注目な3つの拡張機能開発フレームワーク・ツール(WXT、Plasmo、Extension.js)を紹介します。 サンプル拡張機能の実装を通して、それぞれの特徴、セットアップ方法、実際の開発フローを見ていきます。お好みの拡張機能開発ツールが見つかれば嬉しいです。 各フレームワーク・ツールの紹介 WXT WXTは、Viteベースのブラウザ拡張フレームワークです。次のような特徴を持っています(トップページから抜粋)。 クロスブラウザ対応 Chrome、Firefox、Edge、Safari、その他Chromiumベースのブラウザ Manifest V2、V3の両方に対応 開発モードでのHMRと、開発用ブラウザの自動起動 内部的にChrome Launcher等を使用 ファイルベースのエントリーポイントでマニフェストを自動生成 Nuxt風の自動

                                                                            【2024年夏】ブラウザ拡張機能開発を加速するフレームワーク・ツール3選をコードベース付きで紹介!
                                                                          • Azure Open AI「Add your data」のシンプル設定方法、試した結果の比較と「4つの所感 & 解決案?」 - Qiita

                                                                            Azure Open AI「Add your data」のシンプル設定方法、試した結果の比較と「4つの所感 & 解決案?」AzureCognitiveServicesgpt-3AzureOpenAIServiceonyourdata Azure Open AIの新機能「Add your data」の使用方法の概説、試してみた結果、そして私なり感じた4つの所感とその解決策?を紹介いたします。 ※本領域は変化が激しいです。この内容は23年6月24日時点の情報となります 【記事の目次】 23年Buildでのデータサイエンス・AI系のアップデータについて Azure Open AI「Add your data」のシンプル設定方法 Azure Open AI「Add your data」を使用した結果と、ChatGPT、 Bing AIチャットの比較 私の4つの所感と解決案? 4.1 引用元の引用部

                                                                              Azure Open AI「Add your data」のシンプル設定方法、試した結果の比較と「4つの所感 & 解決案?」 - Qiita
                                                                            • 【速報】OpenAI APIでGPT-3.5-turboがfine-tuningできるようになりました!! | DevelopersIO

                                                                              ただし、GPT-4と比較すると安価にはなっていますので、性能比較をしながら良い塩梅を探すとコスト的にメリットがある可能性があります。 また学習のコストですが、以下のように学習データ全体のトークン数 x エポック数という形で費用が掛かるので注意が必要です。 (エポック数は後述するようにパラメータとして指定可能です) For example, a gpt-3.5-turbo fine-tuning job with a training file of 100,000 tokens that is trained for 3 epochs would have an expected cost of $2.40. 公式ページは以下となりますので、併せてご確認ください。 レート制限 fine-tuningのレート制限については、以下に記載があります。 fine-tuningについては以下のように

                                                                                【速報】OpenAI APIでGPT-3.5-turboがfine-tuningできるようになりました!! | DevelopersIO
                                                                              • Denoのフロントエンド開発の動向【2021年春】

                                                                                はじめに ここ最近、Denoのフロントエンド向けのエコシステムについて、色々試してみたり、調査などをしていました。 そこで、この記事では、2021年現在のDenoのフロントエンド開発の状況であったり、所感などについてまとめます。 フレームワークについて Node.jsにおけるフロントエンド開発では、以下のフレームワーク[1]が使われることが多いと思います。 React Vue.js Preact これらのフレームワークは、すでにDenoでも動作します。 またこれらをベースにしたフレームワークがいくつか開発されています。 Aleph.js Aleph.jsはNext.jsに影響を受けたReactベースのフレームワークです。 以下のような機能が提供されています: HMRをサポートするdevサーバを提供 ファイルシステムベースのルーティング SSR/SSGをサポート CSS Modules 開発

                                                                                  Denoのフロントエンド開発の動向【2021年春】
                                                                                • export {}; が使われるTypeScript特有の事情

                                                                                  TypeScriptのコードでは、export {}; という記述を見かけることがあります。これはECMAScriptの構文ではあるものの、これが使われる背景にはTypeScript特有の事情があります。この記事では、export {}; がなぜ使われるのか、どのような効果があるのかを解説します。 export {}; とは この構文は、exportというキーワードから分かるように、モジュールに関連する構文です。 一般に、export { ... };という構文は、既存の変数をモジュールからエクスポートするために使われます。例えば、次のようなコードが考えられます。 const foo = 42; const bar = "hello"; const banana = "banana"; export { foo, bar as hello, banana as "🍌", }; 変数をエク

                                                                                    export {}; が使われるTypeScript特有の事情

                                                                                  新着記事