KaQiita

新米 Web エンジニアが適当なことを書いてます。温かく見守ってやってください。

ネットワークの基礎知識についてまとめる

はじめに 今回はネットワークについてまとめようと思います。 ネットワークを構成するものは通信機器と通信プロトコルです。 この記事では、通信機器を中心に説明できればと思います。 通信プロトコルについては、以前に記事を書いたのでこちらをご覧くださ…

Google アナリティクス個人認定資格(GAIQ)を取得したので勉強法についてまとめる

はじめに Google アナリティクス個人認定資格(GAIQ)を取得しました。 普段から業務で Google アナリティクスを触っていたので、どれくらい理解できているのかを確認したいと思い受けてみることにしました。 ちなみに業務でどんな感じで使っているかを以前…

【React】useLayoutEffect とは?useEffect との違いについて

はじめに 業務で React を書いていて久しぶりに useEffect を使う機会があり、ドキュメントを読んで確認していると useLayoutEffect という似たような hooks があることを知りました。 そこで、せっかく出会ったので少しまとめてみることにしました。 useEff…

社内 ISUCON に参加した話

はじめに 先日、このイベントに参加してきました。 www.wantedly.com いわゆる社内 ISUCON というやつです。 ※ ISUCON お題となる Web サービスを決められたレギュレーションの中で限界まで高速化を図る LINE 株式会社主催のチューニングバトル、それが ISUC…

Google Analytics を導入しようとなった時にエンジニアがやるべきこと

この記事は『LITALICO Engineers Advent Calendar 2019』の 16 日目の記事です。 qiita.com はじめに 弊社では、LITALICO 発達ナビ・LITALICO 仕事ナビ・LITALICO キャリアという複数の Web サービスを運用しています。 各サービスにはエンジニアだけではな…

SEO 検定 1 ~ 4 級全て制覇しました

はじめに SEO 検定なる資格を取得しました。 4 級 ~ 1 級まであるのですが、全て取得したのでそのことについて書いていけたらと思います。 SEO 検定とは? Google 検索をすると、以下のような説明が出てきます。 SEO検定は、一般社団法人全日本SEO協会が認定…

【OS】基本的なメモリの仕組みとメモリ管理について

はじめに 最近 OS について勉強していて、今回はメモリについてまとめました。 以前はプロセスについてまとめて、今回の話とも関係あることなので良かったら併せてどうぞ。 www.kaqiita.com 勉強のまとめとして書いている記事となります。 間違ったことを書…

【OS】プロセスとスレッドに関する基礎知識のまとめ

はじめに プロセスとスレッドについて少し勉強したので、まとめてみたいと思います。 勉強のまとめとして書いている記事となります。 間違ったことを書いている可能性があるため、是非別のドキュメントにもあたってご確認いただければと思います。 プロセス…

3Way-Handshake による TCP 通信コネクションの切断

はじめに 以下の「アドレスバーに URL を打ち込んでからページが表示されるまで」の記事のステップ6の記事です。 www.kaqiita.com 今までのステップのおさらいと今ステップで行うこと 今までのステップで既にブラウザからサーバーにリクエストを送り、サー…

Render Tree 構築

はじめに 以下の「アドレスバーに URL を打ち込んでからページが表示されるまで」の記事のステップ5の記事です。 www.kaqiita.com 今までのステップのおさらい まずはブラウザがサーバーにリクエストを送るために通信コネクションを確立する必要がありまし…

TLS による通信の暗号化

はじめに 以下の「アドレスバーに URL を打ち込んでからページが表示されるまで」の記事のステップ3の記事です。 www.kaqiita.com 今までのステップのおさらい TCP で通信するために、ステップ1で「DNS による名前解決」を行い、URL から IP アドレスへの…

3Way-Handshake による TCP 通信コネクションの確立

はじめに 以下の「アドレスバーに URL を打ち込んでからページが表示されるまで」の記事のステップ2の記事です。 www.kaqiita.com ステップ1のおさらい ステップ1では「DNS による名前解決」について書きました。 ここで行ったことは、ユーザーが入力した…

DNS による名前解決

はじめに 以下の「アドレスバーに URL を打ち込んでからページが表示されるまで」の記事のステップ1「DNS による名前解決」について書きます。 www.kaqiita.com 上記の記事の各ステップについて、1ステップ1記事書いていき、全ての記事が揃うと「アドレス…

アドレスバーに URL を打ち込んでからページが表示されるまで

はじめに 「アドレスバーに URL を打ち込んでからページが表示されるまでに何が起こっているのか」を最近勉強したので、ここにまとめておこうと思います。 このテーマは、その人の技術への理解度によって「どれぐらい深く説明できるか」が大きく変わってくる…

プロトコル・TCP / IP について勉強してみる

web

はじめに ネットワークのついて最近少しずつ勉強を始めたので、少しまとめてみようと思います。 まだ質の高い記事を書けるほど理解できていませんが、少しずつ書き足していって、より詳細にしていこうと思います。 プロトコルとは? プロトコルとは、「ネッ…

【Ruby】メソッドの可視性(public・protected・private の使い分け)について

はじめに ふと「あれ、protected メソッドって何だっけ?」と思ったので、Ruby において public メソッドや private メソッドと何が違うのか、どう使い分けるのか、という観点でまとめてみようと思います。 public・protected・private まずは public メソッ…

新卒エンジニアの研修を担当したことで身に付けた 1 on 1 でのメンタリング技術

はじめに 4 月は今年入社した 2019 年新卒エンジニアの研修を担当しました。 今回の研修で、研修を行う立場であった私の方がかなり学びを得られたので、(まだ研修は GW 明けからも続くのですが)その学びをまとめておこうと思います。 タイトルの通り、「1 …

モダンな技術で Rails Tutorial の sample_app を作ってみる(環境構築編)

はじめに GW ということで普段できないことがしたいなと思ったのと、ちょうど 2019 年卒の新卒エンジニア研修を担当していて、題材として Rails Tutorial を使っているので、Rails Tutorial の sample_app をチュートリアルにはないモダンな技術で作ってみる…

【Ruby】カスタム例外クラスの活用法

はじめに 例外について、最近少し勉強しました。 特にプログラミングを学んだばかりの頃は、あまり例外に有り難みを感じなかったというか、重要性がよく分かっていなかったのですが、最近少しずつ分かってきました。 特にカスタム例外クラスを作る必要性を再…

【Ruby】inject・reduce を使ってリファクタリングする

はじめに Ruby には、畳み込み演算を行う Enumerable モジュールのメソッドとして inject と reduce というのがあります。 詳しい挙動はこちらを見ていただけると良いと思います。 docs.ruby-lang.org これらのメソッドはとても便利で、これらを使えば綺麗に…

RubyKaigi 2019 に行ってきた

RubyKaigi に参加した感想 先日、RubyKaigi 2019 に行ってきました。 rubykaigi.org 仕事の関係もあり、3日目のみの参加。 「多分何も理解できないだろうなぁ...」と思いながらも、「それでも行った方が良い」と会社の先輩に背中を押され、行ってみることに…

そもそも Web とは何なのか

web

はじめに 最近、「Webを支える技術」を始めとする Web 技術に関する本を何冊か読んだので、簡単に学んだことをまとめてメモしておこうと思います。 そもそも Web とは何なのか Web (World Wide Web) は、一言で言うと「文書の公開・閲覧のためのシステム」で…

【Rails & React】再利用性を意識してコンポーネントを切る

はじめに 以前、このような記事を書きました。 www.kaqiita.com view を書くときにはデザインの見た目通りではなく、それぞれのコンポーネントの役割を抽象化して書いた方が綺麗に書けるよ、というものです。 こんな記事を書いていたにも関わらず、先日先輩…

ビジネス志向の人はプログラミングに向いていない?

はじめに 先日、Qiita で以下の記事がトレンドに入っていたので読んでみました。 qiita.com プログラミングに向いていない人の 10 個の特徴が述べられていてとても面白い記事だったのですが、特に考えさせられたのは最後のボーナスの項でした。 ビジネス志向…

「共創 LT 祭」というイベントに行ってきた話

はじめに 昨日、このイベントに参加してきました。 noengineering-nolife.connpass.com イベントのコンセプトは以下のようなもの。 デザイナーとエンジニアは決して敵ではなく、共に価値を創造する「仲間」。 イベントを通じて、デザイナーとエンジニアが互…

【Rails】after_action に render の処理を書くことはできない

はじめに 先日、一緒に働いてくれているインターン生の子から以下のような質問をもらいました。 それは自分が書いた以下のようなコードに対してです。 class HogeController < ApplicationController def new @hoge = Hoge.new render 'form' end def edit @…

駅検索機能を実装・リリースして学んだ3つのこと

はじめに 普段、私はLITALICO仕事ナビというサービスのエンジニアをしています。 このサービスでは、働くことに何らかの障害がある方に向けた就職支援サービスの比較ができたり、専門家の監修を受けた専門性の高い記事を読むことができたりします。 先日、こ…

幸せになるためのお金の使い方

はじめに 以前 note に書いた備忘録をこちらに移行しようと思います。 私たちは仕事をすることでお金を稼ぎ、物欲を我慢することでお金を貯め、お金を使って欲しいものを買います。 つまり、お金について「①稼ぐ→②貯める→③使う」という3つのフェーズがあり…

Rails で id 以外を主キー(primary_key)に設定する

はじめに 通常 Rails では各テーブルの主キーを id カラムに設定します。 ただ、例えば既にあるデータを import するときなど、Rails の規約通りにテーブルを設計できないときには id カラムを作らずに別のカラムを主キーとしたいときもあると思います。 そ…

【HTML CSS】見た目と構造は分離すべし

はじめに 初心者にも取っ付きやすい HTML CSS。しかし学習したての頃は、難しいと感じるところが多々ありました。 単に「見た目を整える」だけ言えば、それほど難しくはないかもしれません。ググって何とか書くことができます。しかし、所謂「良いコード」を…