ぶうううん's Cafe

どうにかこうにか。備忘録に近い。

通常のブラウジングとChatGPTの個人的な使い分け

発端 ChatGPTが普及して少し経ってから私もChatGPTを積極的に利用するようになりました。最初は「ChatGPTやっぱり便利」と思っていたのですが、個人的には通常のブラウジングとChatGPTの使い分けに課題を感じるようになりました。「これは通常のブラウジング…

Railsのフォーマッタ調査

Web

最近Railsを書いていてRubocopを適用した際に、ここはifのほうがすっきりわかる気がするけど、||に直されちゃったな〜などと思うことが何度かありました(それはRubocop特有だと思います)。そもそも私はこれまでRubyのフォーマッタはRubocop(フォーマッタ機…

React開発についてChatGPTに聞いてみた記録

多くの方が試しておりn番煎じかは分かりませんが、React開発についていくつかChatGPTに聞いてみたので、記録として残しておきます。 Q. あなたへの質問でReactを用いた開発速度を速めたい場合、どのような質問が有効でしょうか? Q. 複数人での画像シェアを…

React useInsertionEffectについて

useInsertionEffectの用途 React Docsに以下の記述[1]がある通り、このHookはCSS in JS ライブラリの開発で用いるもの。DOM変更前に発火する。 useInsertionEffect is aimed at CSS-in-JS library authors. Unless you are working on a CSS-in-JS library a…

Svelteについて調べてみた。

Web

Svelteとは Webアプリケーションフレームワークの1つ。ただ、公式HPではSvelteはコンパイラ [1]という記述もあり、従来のWebフレームワークとは異なる軸を持っているように思える。 Svelteの特徴 テンプレート関連 ボイラープレートの無いコンポーネントを作…

Symfony UXについての調査

Web

Symfony UXとは Symfony UXは以下の説明[1]の通り、シームレスにJavaScriptをSymfony Applicationで扱うための取り組み・ライブラリとのこと。Stimulusをラップしているようです。 Symfony UX is an initiative and set of libraries to seamlessly integrat…

React.lazyについての調査

React.lazyとは Docsには次のように書いてあります。[1] React.lazy 関数を使用すると、動的インポートを通常のコンポーネントとしてレンダーすることができます。 ここでいう動的インポートとは、次のようにimport文を利用した通常のインポートのこと。 imp…

Docker利用時のReact動作改善(高速化)について

Web

Dockerを利用していると、ローカルでのコード変更がもっさりすることがあります。 そうした際の動作改善について調査する機会がありましたので、少しここに残しておきます。 ホットリロード有効化 以下の何れかの方法でホットリロードを有効化する。 docker…

CakePHPについて

Web

今回はCakePHPについて調べてみました。 CakePHPとは CakePHPはPHP用Webフレームワークの一種であり、MVCモデルを採用しています。個人的な印象では、Laravelに次いで人気なPHP用Webフレームワークという認識です。 初リリースは2005年4月とのこと[1]。Symf…

Symfonyについて

Web

Symfonyとは SymfonyはPHPフレームワークの1つである。ただ、個人的にSymfonyの存在をこれまで知らなかった。PHPフレームワークといえばCakePHPとLarabelのイメージが強く(特にLarabel)、Symfonyについては聞いたことがなかった。調べた限りではMVCを採用…

ReactとWeb Componentの違い

Web

Web Componentのおさらい Web Componentは、コンポーネントを可能な限り再利用可能な形にする手法のことであり、主に以下の3つの技術から成り立っている。 カスタム要素 カスタムされた要素とその動作を定義するためのJavaScriptコード。 シャドウDOM カプセ…

ESLintの部分的無効化について

ESLintは無効化しても良い? 原則的に、無効化すべきではないと私は考えています。当たり前ではありますが、ESLintが存在することによって担保されるコードの保守性等が、無効化によって担保できなくなります。 ただ、一時的な検証等で無効化するのは有りだ…

ReactのuseEffect()の第二引数

多分React初心者なら誰もが気になるuseEffect()の第二引数についてです。私が気になった部分について書きます。 useEffect()についておさらい 副作用に関する挙動を書くReact Hooksである。 レンダリングされたDOMが画面に反映された後に動作する。(同期的…

ReactとNext.jsの関係

ReactとNext.jsは良く比較されているが、よく分かっていなかった(そもそもNext.jsは使ったことがない)ので調査してみた。 Reactの特徴 JavaScriptライブラリである。フレームワークではないらしい。個人的にはフレームワークだと思うけれども...。 仮想DOM…

fetchとaxios

Web

フロントエンドからバックエンドAPIにアクセスする方法はいくつか存在する。今回はReactに限った話ではないが、代表的な手法であるfetchとaxiosについてまとめておく。 共通な部分 非同期通信を可能にする。 Ajaxの実装である。 Promiseを返却する。 fetch …

Reactの仮想DOMについて調べてみた。

仮想DOM(VDOM)とは メモリ上に保持された仮想なUIが、ReactDOMなどのライブラリによって実際のDOMと同期されるプログラミング上の概念である。仮想DOMの場合、実際のDOMはメモリ上に保持された仮想なUIとの差分を基に更新が行われる(差分検出処理)。 仮想DOM…

Remote Containersを導入してVSCodeでのコンテナ開発を快適にする。

pc

VSCodeでのコンテナ開発を快適にする VSCodeに拡張機能のRemote Containersを導入。Remote Containersを導入するとVSCodeからDockerのコンテナに接続ができ、VSCodeを用いたコンテナ開発が行い易くなる。 https://code.visualstudio.com/assets/docs/remote/…

RESTful APIについて

Web

RESTful APIの前提知識を盛大に勘違いしていたので、戒めとして書いておきます。 RESTとは アーキテクチャ上の成約の集合である。 RESTで情報をやり取りする際はHTTP上で、以下の形式で送受信を行う。 JSON HTML XLT Python PHP プレーンテキスト RESTfulで…

パスパラメータ・クエリストリング・リクエストボディの使い分け

Web

フロントからバックに値を渡すときの手段 フロントエンドからバックエンドに値を渡すとき、以下のような方法が存在する。 パスパラメータ クエリストリング リクエストボディ 本記事ではこれら3つの説明とその使い分けについて記述する。 パスパラメータ パ…

RSpecについて調べてみた。

Web

RSpecとは テストフレームワークの1つ。 rspec-railsがRails用。 Gemでインストールできる。 specによって、テストの対象がそれぞれ違う。 統合テスト用にsystem specとrequest specがある。 github.com Unitテスト model spec モデルをテストする。Railsに…

ありがとうべーちゃん

最近のべーちゃん 今朝起きると、我が家で一番長く飼っている熱帯魚のべーちゃんが亡くなっていました。べーちゃんは夏前ぐらいから腹水の症状が出ておりました。薬浴もしてみたのですが効果がなく、べーちゃん自体は元気に動き回っていました。ただ、8月後…

最近読んだ本 2021年6月

最近の私の本事情 最近家に籠もることが増えたので、技術書以外の本も読むようになりました(割と恋愛物が多い)。そこで、技術書以外で読んだ本とその感想を簡単に書き残していきたいと思います。 純猥談: 一度寝ただけの女になりたくなかった www.amazon.co.…

Mint60を作った。

pc

自作キーボードが気になった。 最近、自作キーボードが気になってしまい、先日秋葉原にある遊舎工房に足を運びました。前々から存在は知っておりましたが、そこまで興味はありませんでした。しかし、分割キーボードの良さに気づいてしまい、その延長で自作キ…

Punycodeとは

事の発端 たまたまFirefoxのアドレスバーで江頭2:50を検索しようとしました。数秒考えて気づいたのですが、アドレスバーにて検索してしまうと、江頭2の50番ポートにアクセスすることになります。アドレスバーに江頭2:50を入力した結果 しかし、アドレスバー…

ノートpcの修理を依頼された話

pc

話の発端 北海道に住む姉は昔から某ネトゲのランカーなのですが、ネトゲに使用しているdynabookが故障したとのこと。なんでも、起動時にBSoDが出てしまうらしい。初期化も試したが、それもエラーで出来なかったとのこと。 調査と修理 北海道からdynabookをク…

太鼓の達人CTF...?

CTF

太鼓の達人に面白い曲があった 大晦日になんとなくSwitchの太鼓の達人をDL購入したのですが、面白い曲がありました。 その曲の名はvoid setup 面白い曲というのはvoid setupというナムコオリジナル曲なのですが、歌詞がコードになっているのです。CTFみたい(…

2020年の反省と2021年の目標

2020年の反省と2021年の目標 ご挨拶 皆様、あけましておめでとうございます。今年も不定期で更新していきますのでよろしくお願いいたします。 2020年の振り返り さて、激動の2020年が終わり、2021年へと突入しました。厳しい年でしたね。大学の春季休業中に…

Control Flow Integrity(CFI)についてまとめてみた。

Control Flow Integrity(CFI) 大学の研究でリサーチしたので、こちらにも少し書いておきたいと思います。 CFIとは何か CFIとは、間接呼び出しの飛び先、リターンアドレスを検証するコードをプログラムに挿入する[1]ことによる防御機構である。CFIは対象とす…

ROP Emporium Writeup(badchars & fluff)

CTF

今回はbadcharsとfluffのwriteupです。もうすぐ終わりですね。

ATH-M50xを買いました。

思い立ったが吉日 昨日、スマホの修理の相談に秋葉原に行ったのですが、ついでにeイヤホンにも行ってきました。リモート講義が一般的になった今年、オーディオにも今まで以上に拘るようになってしまいました。ここ最近の私はあるイヤホンが欲しくて仕方がな…