メインコンテンツまでスキップ

ご挨拶

· 約1分
kendopanda

本サイトをご覧いただき、誠にありがとうございます。

【備忘録】ブログサイトのデプロイ時に起きたエラー

· 約1分
kendopanda

今回のプロダクト

本ブログサイト

今回のエラー

エラー内容

変更を main branch にマージしてcloudflare pages でデプロイを実行したところ(実際にはマージすると自動でデプロイが実行されるのだが)、以下のように壊れたリンクがあったためデプロイに失敗

Broken link on source page path = /:
-> linking to
./docs/01-mypage (resolved as: /docs/mypage)

エラーの原因

docs ディレクトリの構成は以下の通り(名称等は変えています)である。

./docs
├── 01-mypage
│ └── test.md
├── 01-mypage.md
└── intro.md

このとき、正しいパスは /docs/mypage であるが、/docs/01-mypageなどのように本来不要な数字をつけてしまった(ページ番号を指定する)

【備忘録】自分好みのフォントに変更する方法

· 約1分
kendopanda

今回のプロダクト

本ブログサイト

やりたいこと

フォントがダサかったので、見やすいフォントに変更する

フォントの変更方法

  1. LINE Seed の公式ページから、 ウェブで使用するためにライセンスが適切なフォントファイルをダウンロードする(フォーマットは.woffや.woff2)
  2. .woff2 ファイルを fonts ディレクトリに配置する。
    ※今回は.woff2 ファイルが静的ファイルになるので、./static/fonts内にwoff2ファイルを配置しました。
  3. ./src/pages/index.module.cssに以下のコードを追加
@font-face {
font-family: "LINESeedJP_OTF_Rg";
src: url('../../static/fonts/LINESeedJP_OTF_Rg.woff2') format("woff2");
font-weight: normal;
font-style: normal;
}

【勉強記録】2進数で数を表現する方法

· 約2分
kendopanda

負の数

符号あり2進数

最上位の1ビットが0なら正の数、1なら負の数として表す。

補数による表現

1の補数による表現

その桁数で最大の数から、求めたい数を引き算する。

(例) 元の数が (28)10(-28)_{10} のとき
(28)10=(00011100)2(28)_{10} = (00011100)_{2} なので、1バイト(8ビットの場合)(11111111)2(11111111)_2から2進数を引く。

(11111111)2(00011100)2=(11100011)2(11111111)_2 - (00011100)_2 = (11100011)_2

2の補数による表現

その桁数で最大の数に1足した数から、求めたい数を引き算する。

(例) 元の数が (28)10(-28)_{10} のとき
→ 1バイト(8ビットの場合)(11111111)2+1=(100000000)2(11111111)_2 + 1 = (100000000)_2から2進数を引く。

(100000000)2(00011100)2=(11100100)2(100000000)_2 - (00011100)_2 = (11100100)_2

※1の補数の場合に1足してもOK

小数

固定小数点

特定の場所を小数点として定めるやり方

浮動小数点

数値aを仮数部f(符号を含む)・指数e・基数rを用いて a=frea = fr^e と表現する

(例) (0.5)10=5×101(0.5)_{10} = 5 \times 10^{-1}

名称符号指数仮数
単精度浮動小数点数1 bit8 bit23 bit
倍精度浮動小数点数1 bit11 bit52 bit

ChatGPT が先生になる時代

· 約7分
kendopanda

近況報告

ご無沙汰してます。この2か月くらい記事を書くモチベががくんと落ちて、コードを書いてはいたものの記事更新が滞っていました。定期的に更新できる人はすごいですね。ちょっとモチベが戻ってきたので、こっからまた記事を書いていきます。よろしくお願いします。

最近は小中学生向けの計算アプリを作ろうと日々奮闘しています。一応塾の先生でもあるので、子どもたちの学力が上がるものを作ってあげたい気持ちがやっぱりあります。特に理系科目は計算力が生命線になるので、計算を鍛えるサービスを作ろうと思います。

アプリ開発を支援してくれる ChatGPT

さて、このブログのタイトル通り、現時点で私はブログサイトの構築くらいならできるものの、自分一人でアプリ開発をした経験はまだない状態です。転職も考えるならポートフォリオとなるサービスを作る必要もあり、どちらにせよ技術を磨くためにも何かしらの使えるサービスを開発・運営する経験を積み重ねることが自分には求められていると感じてます。ですが、

アプリを作るのはわかるけど、何から取り掛かればいいかわからない……。

そんな方も少なくないはずです。本当は誰かに相談したい、でもそんな知り合いはいないし、かといってプログラミングスクールに行くのも不安がある。メンターを見つけるのも正直一苦労だ……。

そんなあなたにこそ、初期学習の段階ではChatGPTの力を借りてみることを提案します。私自身、ChatGPTをフル活用することで新しいことを勉強できているので、その有用性は身にしみて感じています。

ただし、ChatGPTが出力する内容は必ずしも正確とは限りません。時として誤った情報を出力することもありますし、ChatGPTが書いてくれたコードをそのまま貼り付けても十中八九エラーが出ます。つまり、ChatGPT の出力した内容を100%鵜呑みにはできないということは頭に入れておく必要があります。

では、そんなChatGPTがなぜ有用といえるのでしょうか?一言でいうと、方針を提示してもらうことで0→1のハードルが一気に下がるからだといえます。確かにChatGPTの出力は100%正しいとは言えませんが、それでも大きな方向性は正確であることが多いです。そこで、基本的な方針や考え方をChatGPTに出してもらい、エラーを吐いた箇所やChatGPTがフォローしていない最新技術については自分で調べて改良するというサイクルを繰り返すことで、知識や経験を積み重ねることができるのです。勉強のハードルは総じて「何をしていいかもわからない」一番初めの段階にあるケースが多いですが、学習初期のハードルを下げてくれることはそれだけで大きな価値といえますよね。

AIが学習の可能性を大幅に向上させる

今回はプログラミングに焦点を当ててChatGPTがもたらす好影響を評価しましたが、この流れは老若男女問わず学習のあり方を大きく変えるでしょう。特に大きな変化にさらされるのが、学校や塾といった子どもの教育に関わる領域です。AIと教育の関わりについては機会を見て追々論じていきたいと思いますが、少なくともAIが出てくる前の教育と、AIが普及した後の教育では、子どもたちに求められる力が大きく変化するはずです。そのあたりの変化を踏まえて教育指導要領の変更などもいずれ行われるのでしょうが、今は各個人が個々の学習に利活用することでChatGPTという新技術への理解を深めるフェーズなのだと思います。

(おまけ:YOASOBIのUNDEADを聞きながら記事を書いてました。軽快なリズムが心地いい曲で、キーボードを叩く手がリズミカルになってました(笑))