webエンジニアの日常

RubyやPython, JSなど、IT関連の記事を書いています

小学校で習った「相似や合同」が実はすごく重要だった

いきなりですが、合同って覚えていますか? 二つの三角形があって、辺の長さとか角度が与えられるので、それらを使って確かに同じ三角形であることを証明するみたいな問題です。 覚えていないですけど、合同という言葉は小学校5年生で習うみたいです。その時…

生命保険を見直す時に考えたこと

最近働き方や収入が変わったこともあり、加入している生命保険を見直す機会がありました。 今入っている保険は社会人に入って1年目で加入したので、正直全くお金の知識もなく、ほとんど言われるがままの保険に加入したのですが、今回は保険の意味から見つめ…

2年間の育児休業が終わりました。

はじめに タイトルの通りです。2年前の今日、育児休業が始まりました。 子供に怒ったことも、妻と喧嘩したこともありました。怖いマンションのオーナーと真下の階の住人に悩まされたりもしましたが、ほとんど毎日爆笑しながら過ごした2年間でした。 これから…

脳とは何か。家で簡単にできる実験

はじめに 比較的最近出版されている習慣や学習の本を見てみると、脳科学のデータや論文を引用し応用することが主流になってきているように思える。 脳科学というと心理学と似たような学問のように考えてしまうが、興味を持って最近出版された脳科学の本を何…

AIってそもそも何?AIにまつわる疑問に答えてみます。

はじめに 2016年ごろからITエンジニア業界では(第3次)AIブームが起こりました。第3次と書いたのは、実はブームになるのはこれで3回目です。 その後、数年かけて実験・開発が繰り返され、2018年ごろから様々なAI関連商品やサービスが誕生しました。 みなさ…

アルゴリズムってなんだろう?

はじめに プログラミングスクールの講師をやっている中で、基本的な構文は分かったけど、いざプログラムを書くとなったら何をしていいかわからない。手が動かない。と言う方がほとんどです。 そこで今回は、まずそもそもプログラミングって何?という話をし…

子供に図鑑をプレゼントするときに私が考えていること

はじめに 自分の子供や親せきのお子さんの誕生日やクリスマスにプレゼントするものって迷いますよね。クリスマスはお子さんが欲しがってるものでしょうか。 誕生日は年齢も上がるし、お兄ちゃんお姉ちゃんになっていくので、おもちゃ以外のものを送りたい。…

これからプログラミングスクールに通う方へ

はじめに 最近では、〇〇Techや〇〇Academyのようなプログラミングスクールが数多く出現し、ITエンジニアへの転職ブームが起きつつあります。 スクールを比較したブログ記事もこれまでたくさん見てきましたし、実際に転職された方、スクールに通いながら自分…

育児休業を最長の2年まで延長することにしました

仲良く机の下にもぐる兄弟 タイトルの通りですが、私は2018年の5月から育児休業を取得し、これまで1年半仕事をせずに育児・家事をしてきましたが、さらに半年間育児休業を延長することにしました。 少しずつ男性でも育児休業を取得される方が増えてきたみた…

面白すぎる人体の構造~胃から大腸まで~

うんちと黄疸は同じ色?! 「カラダを大切にしたくなる人体図鑑」という本の中で解説されている体の仕組みが面白かったので、 かいつまんでまとめてみました。 カラダを大切にしたくなる人体図鑑 知っておきたい96のしくみとはたらき (サイエンス・アイ新書)…

数学の入門書を選ぶ3つのコツ

微分方程式をしっかりと学んだことが無く、何か手ごろな入門書はないかと本屋さんに出向いたあなたは、きっと驚くはずだ。 微分方程式の入門書はとても多いからだ。さらに、ぱらぱらとめくってみたり、目次を見てみても、中身はほとんど同じだったりする。 …

すごいH本のToDoリストのコードを修正する

すごいHaskell楽しく学ぼうという本でHaskellを勉強しているのですが、ToDoリストをもっと楽しむという章に書いてあるコードをそのまま写経して実行してもエラーが出る(コンパイルエラーなので実行もできない)ので、正しいコードを載せておきます。 import S…

なぜ線形代数ではn次元を学ぶのか

はじめに 理系大学生や機械学習を学ぶ社会人にとって線形代数は必須教科です。 大学に入るとまず習うのが線形代数だし、ディープラーニングの教科書をのぞいてみると線形代数を知っていることが前提に書かれています。 線形代数は簡単に言えば、高校で習った…

【p5.js】transformを正しく理解するためのベクトル・行列講座

Qiita Processing Advent Calendar 2018 12月12日に投稿した記事です はじめに scaleやtranlateは書く順番によって結果が異なるって知ってましたか? 本記事は、transform系関数(scale,translate,rotate)を行列で表現し、深く理解することで正しく使えるよう…

マクローリン展開とテイラー展開と違い

はじめに 先日社内の方が「テイラー展開とマクローリン展開の違いがあるはずだけど、ネットで調べてもよくわからない」と質問していて、それに回答しました。 質問された方から僕の解説が「分かりやすい!」と言っていただけたので、もう少し詳しく説明を加…

あなたのWEBコーディング力を向上させる模写参考サイトまとめ

はじめに Progateやドットインストールの登場で、多くの方がhtml&cssの入門されてるのを twitterやブログで見かけるようになりました。 僕もどちらにも登録してます。 ドットインストールでは、htmlやcss, railsなどなど様々なプログラミング言語を学ぶこと…

エンジニア、アーティスト、学生、主婦。全ての人に届けたいProcessingの魅力

暑さも和らぎ、ようやく僕の大好きな季節「秋」が訪れました。 芸術の秋、食欲の秋、読書の秋・・・ 暑くて何もしたくなかった夏が終わって、様々な活動に活発になる時期です。 Processingをご存知でしょうか? さて、みなさんはProcessingをご存知でしょう…

育休が始まって4か月。育休中の過ごし方や助成金の話。

こんにちは、1年間育休中のWEBエンジニア「さも」です。 2018年5月14日から育休が始まり、4か月が経ちました。 助産師さんやほかのママ(妻伝い)、区役所の職員の方からよく聞くんですが、男性が育休ってやっぱり珍しいことなんですね。 そろそろ…

簡単おいしいアクアパッツァのレシピを紹介します

今回はフライパン一つでささっと作れて、とっても美味しいアクアパッツァのレシピを紹介します。 あまり魚が好きじゃない妻が「また作って」と言うぐらい美味しいです!すっかり我が家の定番料理になりました。 アクアパッツァとは アクアパッツァはイタリア…

ハッシュにデフォルト値を付けれるって知ってました?!

Effective Rubyの勉強メモです。 Hashクラスのオブジェクトに対して無効キーを渡すとnilが返ってきます。 nilが返ってくることを期待して(利用して)書いたコードもありますが、nilが返ってくるためnilガードで値を設定するコードが増えたり、思わぬところに…

何度見てもよく分からないreduceメソッドをマスターする!

Effective Rubyの勉強メモです。 どう使えばいいのかわからない。使い方もいまいち難しいメソッドの一つにreduce(inject)があります。 コレクションオブジェクトを操作するのにmapやeachはよく使いますが、reduceを使うと要素の合計の計算などmapやeachで書…

Setクラスはこう使え!要素の存在確認をするならSetクラス

Effective Rubyの勉強メモです。 Array, Hashで存在確認する コレクションにある指定された要素が存在しているかどうかのチェックには、通常Array#include?メソッドを使うかと思います。 例えば、次のような権限クラスを考えます。権限クラスはパーミッショ…

至れり尽くせりArrayメソッドで配列に簡単変換

Effective Rubyの勉強メモです。 Rubyではメソッドの引数の型を指定しないため、さまざまな引数が与えられます。 もし配列が引数に与えられることを想定して実装すると、引数に単一のオブジェクトやnilが送られてきた場合に困ってしまいます。 そこで、Array…

コレクションの取り扱いあれこれ

Effective Rubyの勉強メモです。 【目次】 コレクションをメソッドに渡すときの注意 破壊的メソッドを使わない対処法 コレクションをコピーしておく ディープコピーする コレクションをメソッドに渡すときの注意 rubyでは、コレクション(例えば配列)をメソ…

クラス変数の罠。これからはクラスインスタンス変数を使おう

Effective Rubyの勉強メモです。 インスタンス変数とクラス変数 クラス内で@が先頭につく変数はインスタンス変数を表します。 インスタンス変数はオブジェクト一つ一つが持つプライベートな変数です。オブジェクトのあるインスタンス変数に値をセットしても…

とりあえず何か書きたい人のための、ブログが続かないときの4つのアイデア

ブログを始めたけど、なかなか続かない。書くことがない。アクセスが伸びないと悩んでいる方は多いと思います。 僕も始めて数か月は1日に1PVあるかどうかという感じでしたが、1年経った今は1日に平均200PVぐらいあります。 他のブロガーに比べると200PV…

Progateに出てくるHTML/CSSの文法まとめ

文法・テクニックまとめ 【目次】 文法・テクニックまとめ リストのドットをなくす リスト含む要素の横並び padding・marginの値の指定 border 背景画像 透明度 文字間隔 ブロックスタイル カーソル 角丸 marigin: autoとtext-align: centerの使い分け font-…

秘密のprivateと秘伝のprotected

Effective Rubyの勉強メモです。 オブジェクト指向はカプセル化によって公開するpublicメソッドと非公開なprivateメソッドを分けています。 最初の頃はすべて公開したら後で楽じゃないかって思っていたのですが、公開するものを制限することでテスト対象が減…

あっ!UFO演算子!Comparableモジュールの実装方法をご紹介します。

Effective Rubyの勉強メモです。 13章はUFO演算子とComparableモジュールについてです。 この二つは以前記事にしたことがあるのでササっと流していきます。 www.uosansatox.biz 簡単に言うと、UFO演算子(<=>)を定義するだけでsortやminメソッドが使えるよう…

4つもあるの!!Rubyの等値演算子を徹底解説

変数同士が等しいかどうかRubyで調べる手段をご存知でしょうか。 数値同士、文字列同士なら言わずと知れた==を使えばいいですね。ほかにもRubyにはeql?メソッドなどが存在します。 ですが、すべて同じ結果を返すわけではありません。何をもって等しいとする…