In Vim, there’s a variety of commands that let you accomplish tasks in different ways. This can be overwhelming for beginners trying to figure out the most efficient keystrokes for editing. In this tutorial, I’ll share my approach to using Vim commands and offer some real life examples to help you improve your workflow. Guidelines Here are some general rules of my workflow: Don’t use mouse and arr
ChatGPT(など)にIllustrator用のスクリプト作成を依頼するときのテンプレート(と、JSXファイルの作成) ChatGPT(など)にIllustrator用のスクリプトを依頼するとき、こちらをテンプレートとして使うとよい感じです。 Adobe Illustrator用のExtendScript開発を依頼します。 以下の要件に基づいたスクリプトの作成をお願いします。 # スクリプトの目的: [実現したい具体的な機能や自動化したい作業内容を記述] # 使用言語とバージョン: - ExtendScript(ECMAScriptのバージョン3に基づくAdobe固有の拡張を含む) - Adobe Illustrator 2024対応 # スクリプトの機能要件: [実装してほしい機能の詳細リストを記述] # 制約条件: - ExtendScriptの仕様に準拠し、ECMAScriptのバ
本レポートでは、2024年3月中に発生した観測情報と事案についてまとめています。 目次 DDoS攻撃の観測情報 IIJマネージドセキュリティサービスの観測情報 Web/メールのマルウェア脅威の観測情報 セキュリティインシデントカレンダー DDoS攻撃の観測情報 本項では、IIJマネージドセキュリティサービスやバックボーンなどでIIJが対処したDDoS攻撃のうち、IIJ DDoSプロテクションサービスで検出した当月中の攻撃を取りまとめました。 攻撃の検出件数 以下に今回の対象期間で検出した、DDoS攻撃の検出件数を示します。 図-1 DDoS攻撃の検出件数(2024年3月) 今回の対象期間で検出したDDoS攻撃の総攻撃検出件数は222件であり、1日あたりの平均件数は7.61件でした。期間中に観測された最も規模の大きな攻撃では、最大で約6万ppsのパケットによって612.30Mbpsの通信が発
ウェブページ上には「クレジットカード番号」「郵便番号」「電話番号」といった数値の入力欄が存在することがありますが、実装方法によってはブラウザの挙動によって入力内容が変化してしまったり、テンキーでの入力を受けつけなくなってしまったりします。そこで、数値入力欄の実装時に気を付けるべき点をまとめてみました。 KeyboardEvent - Web API | MDN https://developer.mozilla.org/ja/docs/Web/API/KeyboardEvent Why the GOV.UK Design System team changed the input type for numbers – Technology in government https://technology.blog.gov.uk/2020/02/24/why-the-gov-uk-desig
The article is also available in Chinese. Disclaimer: This post is a very long collection of thoughts and problems I've had over the years, and also addresses some of the arguments I've been repeatedly told. This post expresses my opinion the has been formed over using Rust for gamedev for many thousands of hours over many years, and multiple finished games. This isn't meant to brag or indicate su
As someone building a browser I need to parse a lot of URLs. Partially to validate them, but also to normalize them or get specific parts out of the URL. The URL API in browsers lets you do that, but it’s ergonomics aren’t ideal. The problem with new URL() The “new” in front of new URL() indicates that it’s used as a constructor: calling it creates a new URL instance for you. When you give it a ma
JavaScriptは、長い歴史を持ちながらも常に進化を続けている。最新動向を踏まえて筆者の個人的な見解を交えつつ、Q&A形式でJavaScriptにまつわる素朴な疑問に答える。 JavaScriptの構文では、文末のセミコロンは付けても付けなくてもよいことになっています。ここで注意したいのは、セミコロンは“省略可能”ではなく、「セミコロンが見付からない場合は、自動的に挿入される」という点です。この自動挿入に関しては、ECMAScriptで「Automatic Semicolon Insertion」(ASI、自動セミコロン挿入)として、きちんと細かく仕様が決められています。 自動挿入のルールを大まかに言うと、文末で改行されているところにセミコロンがない場合はセミコロンが挿入される、というとても当たり前なものです。例えば、セミコロンのないリスト15は、文末の改行部分でセミコロンが自動挿入さ
週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙏 TechRachoではRubyやRailsなどの最新情報記事を平日に公開しています。TechRacho記事をいち早くお読みになりたい方はTwitterにて@techrachoのフォローをお願いします。また、タグやカテゴリごとにRSSフィードを購読することもできます(例:週刊Railsウォッチタグ) お知らせ: 来週および再来週の週刊Railsウォッチはお休みをいただき、通常記事を公開します。 🔗Ruby 🔗 Steepの"narrowing"実装の内
高度解析部アプリケーションセキュリティ課の金子です。 パストラバーサル(またはディレクトリトラバーサル)はXSSやSQLインジェクションに並んでWebアプリケーションに対する代表的な攻撃手法のひとつです。本記事では、パストラバーサルの中でもURL正規化によるパストラバーサルに焦点を当てて攻撃の発生原理やよくある事例について解説します。関連して、PHP向けのAWS SDKで発見したS3バケットに対するパストラバーサルの脆弱性CVE-2023-51651についても紹介します。 2種類のパストラバーサル パストラバーサルは../のような文字列を含んだ文字列の正規化処理(normalization)を悪用して、アプリケーションが予期しない"領域"に対してアクセスを行う攻撃です。正規化処理を行う対象によって分類することが可能で、次の2種類のパストラバーサルが代表的です: ファイルシステムに対するパス
こんにちは! 2023年度エンジニア新卒の、吉田です。 株式会社リクルート 新卒エンジニアコースでは、部署への配属前に、BootCampと呼ばれる新人研修を行っています。 本日は2023年度の研修の内容を、実際に受講した新卒の立場から紹介させていただきます。 研修の内容については毎年反響をいただいていますが、今年度も一段と進化し、より充実した研修でした。 ページ下部に研修資料を公開していますので、ぜひ研修の雰囲気を感じ取っていただけると嬉しいです。 研修の概要 エンジニアコースの新人研修は、配属後にスピード感を持って成長できるようになることを見据え、 「さまざまな技術領域の講座を受け、興味関心を広げて、知らなかった好奇心に出会う」 「現場で求められる『仕事への取り組みスタンス』をつかむ」 「気軽に相談できる仲間(同期)をつくる」 の3点が目的とされています。 今年度は、入社前に行われたスキ
JSer.info #690 - Electron 30.0.0がリリースされました。 Electron 30.0.0 | Electron V8 12.4、Chromium 124、Node.js 20.11.1へアップデート。 File System APIをサポート、Cross Origin iframeにPermission Policyを使うように変更、WebContentsView/BaseWindowの廃止などの変更が含まれています。 Firefox 125がリリースされました。 Firefox 125.0.1, See All New Features, Updates and Fixes Firefox 125 for developers - Mozilla | MDN Intl.Segmenterのサポート、Popover APIのサポート、AV1コーデックのサポート
Today we are excited to announce the availability of TypeScript 5.5 Beta. To get started using the beta, you can get it through NuGet, or through npm with the following command: npm install -D typescript@beta Here’s a quick list of what’s new in TypeScript 5.5! Inferred Type Predicates Control Flow Narrowing for Constant Indexed Accesses Type Imports in JSDoc Regular Expression Syntax Checking Iso
This proposal is an early design sketch by the Chrome translate API team to describe the problem below and solicit feedback on the proposed solution. It has not been approved to ship in Chrome. Browsers are increasingly offering language translation to their users. Such translation capabilities can also be useful to web developers. This is especially the case when browser's built-in translation ab
Attributes and properties are fundamentally different things. You can have an attribute and property of the same name set to different values. For example: <div foo="bar">…</div> <script> const div = document.querySelector('div[foo=bar]'); console.log(div.getAttribute('foo')); // 'bar' console.log(div.foo); // undefined div.foo = 'hello world'; console.log(div.getAttribute('foo')); // 'bar' consol
Safariのレンダリングエンジン「WebKit」の公式ブログにて、CSSグリッドレイアウトLevel 3で実装される予定のメイソンリーレイアウトの使用例が掲載されました。 Help us invent CSS Grid Level 3, aka “Masonry” layout | WebKit https://webkit.org/blog/15269/help-us-invent-masonry-layouts-for-css-grid-level-3/ メイソンリーレイアウトは下図のように、コンテンツがレンガや石の壁のように積み上げられているレイアウトです。コンテンツがページ上を滝のように流れていくためウォーターフォールレイアウトとも呼ばれています。 メイソンリーレイアウトを使用することでさまざまなアスペクト比のコンテンツをきれいに配置したり、ページをスクロールするときの自然な読み
OpenJS Foundationは2024年4月25日、Node.jsの新バージョン「Node.js 22」をリリースした。 Node.js 22 is now available! -Node.js Node.js 22 Available Now | OpenJS Foundation Node.js 22 is here 😎 Featuring: require()ing ESM graphs, WebSocket client, updates of the V8 JavaScript engine, and more. Big thank you to @_rafaelgss and @satanacchio for their work on this 🎉 pic.twitter.com/yXgR8fsMqt — Node.js (@nodejs) April 24, 2
We're excited to announce the release of Node.js 22! Highlights include require()ing ES modules, a WebSocket client, updates of the V8 JavaScript engine, and more! Node.js 22 will enter long-term support (LTS) in October, but until then, it will be the "Current" release for the next six months. We encourage you to explore the new features and benefits offered by this latest release and evaluate th
This guide is open source, please go ⭐️ it on GitHub and make suggestions/edits there! https://github.com/FrontendMasters/front-end-handbook-2024 1. Overview of Field of Work This section provides an overview of the field of front-end development/engineering. 1.1 — What is a (Frontend||UI||UX) Developer/Engineer? A front-end developer/engineer uses Web Platform Technologies —namely HTML, CSS, and
Hello! I'm Ben, a software engineer who's fond of the Gleam programming language interested in learning OTP. If you haven't heard: Gleam is a programming language that is statically typed, has great tooling, and an even better community. Gleam can compile to Erlang or JavaScript, depending on your needs. Because the concurrency models of these languages are fundamentally different, concurrency is
Over the past years, new package managers like yarn and pnpm have emerged, enhancing how packages are downloaded. However, the npm package registry, a cornerstone of the JavaScript ecosystem, has barely evolved. Its last notable update was a “files” tab added years ago. The JavaScript language, known for its vibrant evolution, seems paradoxically mired in a distribution model that hasn’t kept pace
<この記事の著者> 大谷大 - Tech Team Journal ウェブデザイナー/映像クリエイター/作曲家/ギタリスト/ブロガー/YouTuber BGMや効果音を無料でダウンロードできるサービス「タダオト」を運営し、自らが作曲した楽曲を掲載。2023年に生成AIにハマり、さまざまな仕事でフル活用しながらそのノウハウをYouTubeやブログで情報発信している。 「普段ChatGPTで何してるの?」という質問を受けることがあります。 さまざまなことができる自由度の高いツールであるが故に、どう使っていいか迷ってしまうんでしょうね。 今回は、ChatGPTを一年以上使ってきた僕なりにいま特に使用頻度が高い使い方を羅列してみます。 【目次】 コードを書いてもらう ブログ記事でHTMLのマークアップ 画像生成AIのプロンプトを書いてもらう 誰かに相談をする前にChatGPTで要件を整理 雑なメモ
こんにちは、CyberFight DX 事業本部で web フロントエンドエンジニアをしている久保です。CyberFight DX 事業本部は複数のエンタメサービスを開発、運用するFANTECH本部に所属しています。今回は、管理画面を対象に WebAssembly ( Wasm ) を導入した事例をご紹介します。 FANTECH 本部では技術ブログでの発信を強化しており、最近では下記のような記事を投稿しています。ぜひご一読ください。 Cloud Run サイドカーで Fastly の Prometheus Metrics を収集して Grafana で可視化する reminder-lintでFeature Flagsの削除漏れを防ぐ マルチリージョンで稼働する内製Feature Flagsの実装 私たちのプロダクト WRESTLE UNIVERSE では、ユーザー対象のキャンペーンを実施す
4月23日、Angularチームが「Event Dispatch in Angular」と題した記事を公開した。この記事では、Angularの新しいイベントディスパッチシステムの裏側の詳細について詳しく紹介されている。 4月23日、Angularチームが「Event Dispatch in Angular」と題した記事を公開した。この記事では、Angularの新しいイベントディスパッチシステムの裏側の詳細について詳しく紹介されている。 イベントディスパッチの導入 Angularは、 JSAction というライブラリを使用して、 発生したイベントをアプリケーションのルートで捕捉し、完全なハイドレーションが完了したあとに再生する 機能を導入した。この機能により、ページがインタラクティブに見えるが反応しないという問題を解決している。 例えば、クリック時に onSave() を呼び出す、以下のよ
TOPフォーカスCSS嫌いがあえてフレームワークまでつくった理由。 NES.css開発者流、「嫌い」を「好き」に変える勉強術【フォーカス】 CSS嫌いがあえてフレームワークまでつくった理由。 NES.css開発者流、「嫌い」を「好き」に変える勉強術【フォーカス】 2024年4月24日 「NES.css」開発者 ダーシノ SIerでの業務アプリ開発や職業訓練校でのプログラミング講師を経て2015年にさくらインターネット株式会社にフロントエンドエンジニアとしてジョイン。2018年にファミコン風CSSフレームワーク「NES.css」を開発、公開する。人生の目標に「笑って死ぬ」を掲げている。柔道初段。 X ブログ GitHub ファミコン風のデザインのWebページをすぐにつくれる、オープンソースのCSSフレームワーク「NES.css」。フロントエンドエンジニアのダーシノさんが2018年にGitHu
最近、このブログのお問い合わせフォームや、Webスクール体験レッスン、メルマガ登録などのフォームにスパムボット(広告・宣伝などを自動で送信するプログラム)と思われる送信があまりにも多いため、対策をしています。 メールフォームのスパムポット対策と言えばGoogleの「reCAPTCHA」が有名ですが、 そういったものは使用せず、HTMLとサーバー側のPHPを工夫することで対策をしました。 reCAPTCHAを使わない理由 スパムボットを防ぐ有名な方法にGoogleのreCAPTCHAがありますが、以下の理由から私はできれば使用したくありません。 理由1: ユーザーに負担をかける reCAPTCHAでは、ボットかどうか疑わしい場合、人間であることを確認するためのパズルが表示されます。 しかし、例えばメールマガジン登録フォームにメールアドレスを入力して送信しようとした際に、そのようなパズルが現れ
超個人的なJavaScriptの便利ツールをご紹介します。 走り始めてから何日だったっけとすぐに振り返れるような日数計算ツールです。私以外の誰が得するのか謎なツールですが、日付とタイトルを変更すればみんなに便利になツールになりそうです。 用途に合わせてでカスタマイズできるように、下記にコードを貼っています。日付とタイトルを変更すれば、そのままのブログに貼り付けることが可能です。 走り出してから今日で何日? コードの改変方法 コード コードの修正(2024年4月24日) まとめ 走り出してから今日で何日? ↑ JavaScriptによる自動計算数値です (2024年2月27日からランニング再開) △や□のマークが走った日。 コードの改変方法 コードの下記の部分を変更してください 開始日を変更(月は0が1月を、1が2月を示すそうです。謎仕様です) 開始日を日数に含めないときは-1をけす 表示す
はじめに 普段はJavaScriptを主に開発を進めているのでPythonで開発を進めると様々な問題に悩まされます。 その中でもパッケージの管理については個人的に不自由をすごく感じています。Pythonのバージョンを設定するpyenv, プロジェクトごとのパッケージを管理するために仮想環境の構築、さらにパッケージのバージョンを設定するためのrequirements.txtと開発までのハードルが高すぎます。 良い方法がないかと調べていく中で全てを解決できそうなRyeというツールを見つけましたので導入方法をメモ程度に記事にしました。 導入環境はAWSのSageMaker上です。 ライブラリ管理簡単にできるようになったのでLinterとCode Formatterも追加してみました。 Ryeとは RyeはPythonのWebアプリケーションフレームワークFlaskの開発者が作ったPythonパッ
[2024年4月25日 追記] Safariの動作について考慮漏れがありましたので、一部追記・編集しました。 新宿にオフィスのあるClassiは、岡山在住の私のような地方在住者だけでなく、いわゆる通勤圏内に在住していてもリモートワークで働いている人が多い会社です。必然的にミーティングはいわゆるオンラインミーティングとなり、主にGoogle Meetが利用されています。 そのGoogle Meetのチャット機能、ここ1週間ぐらい「IMEで日本語に変換のために押すエンターキーで送信されてしまう」という現象が発生しています。このエントリーを読まれている時点では対応しているかも知れませんが、2024年4月22日17時時点ではその現象は続いています(Windowsでは再現しないという情報もあります)。 入力開始 変換して確定のエンターキーを押すと 送信される エンターキーに頼らない日本語入力を頑張り
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く