見出し画像

次の連載予定<個人サイトの作り方>

ご無沙汰しています。Suipediaです。

前回2020年初頭にマガジン「自作CMSの作り方」をリリースさせていただきました。あれから3年弱の月日が経ち、いよいよ次に連載するシステムが完成しましたので、連載予定と併せて紹介させてください。

もう一つ、これを期に私のアカウント名をSuipediaから変更しようと思います。その点についてもご案内させてください。

記事をおやすみしていた期間について

2021年の夏ごろにPHPプログラミングの学習の前段となるVBAの記事を連載形式で書いていたのですが、本業が忙しくまた、記事執筆のモチベーションを保ち続けることができず、断念してしまいました。

もしも続きを楽しみにされていた方がいらっしゃいましたらごめんなさい。あれは打ち切りということになります。

では記事を書いていない間はのらりくらりと娯楽にふけっていたのかというと私、そんなことはありません。

実はこのあとご案内する次のプログラミング講座の構想は結構前、それこそ自作CMSの連載が終わった2020年初頭くらいからずっと考えており、いろいろ手を動かしてはいたのですが、なかなか形が定まらず悪戦苦闘する日々を送っていました。

で、2021年の11月からそれまでの経緯も踏まえて作り出したものが次にプログラミング講座としてお伝えするwebサイト制作の舞台として成立する運びとなりました。

このnoteにおいて、私のことをフォローいただいている方、感謝しています。私も肝っ玉の小さい人間ですので、フォロワー数というただの数字に一喜一憂し、増え行く数字に小躍りをする勢いです。

ロクに更新されない中でもフォローを解除せずにお待ちいただきありがとうございます。アクティブユーザは何割かわかりませんが、それでもありがたいことです。

それではこの記事では残りの章で次の連載計画と、アカウント名の変更についてお知らせさせてください。

次の連載計画とそのシステム

今、次にあなたに作っていただくシステムが完成した、というところで連載そのものの準備はまだこれからという状態です。

早速そのシステム(webサイト)をご覧に入れましょう。

こちらです。

リンク先を参照いただけるとわかるのですが、ぶっちゃけ拍子抜けしたと思います。見た目、全然大したことないですからね。

ただ、それにもわけがありますので、順を追って説明します。

どんなシステム?

まず、このシステムの概要ですが「個人サイト」と命名しています。

個人サイトという言葉自体はインターネット創世記のころからあるのですが、この2022年においてあの時代と同じレベルの「個人サイト」ではどう頑張っても世間に数多あるサービスやブログには太刀打ちできないでしょう。

あの時代と同じレベル、というのはテキストが打てて画像が挿入できるだけの体裁もへったくれもないようなサイトのことです。

今はどこを見渡してもトップページには更新情報が記事のアイキャッチ画像と共に並んでおり、サイドメニューには人気記事ランキングがあり、アーカイブやタグからの記事アクセスも可能、おまけにお問い合わせフォームまでついていたり、記事にはコメントフォームも完備ときたものです。

ここは抑えておかないと時代についていけないでしょう。

ですので、これらのことを個人の開発で実現していくのが次にお送りする連載「個人サイトの作り方」というわけです。

実際は「自作CMSの作り方 version2」と言い換えても良いです。

結局、ブラウザから記事を作成したり更新したりする機能を提供する、という意味ではCMSとなんら変わりはありませんので、対外的には「CMSの開発をしています」と言った方が通じやすいまであります。

今回新しくできるようになったこと

先ほども「前回は2020年初頭にマガジン「自作CMSの作り方」をリリースしました」と説明したのですが、このマガジンをご購入いただいた方には本当に感謝しています。

ご購入いただいた方に背くような真似はしたくない・・・でも言わせてほしい。やっぱり私、あの頃はまだまだ青かったです。もういい年ですけど。

今になって読み返すとCMSの作りも稚拙ですし、連載の流れや説明にも無理があるな、と思われる箇所がままありました(最近読み返したんです)。

そのあたりの後悔や反省を自身の血肉に変え、同じ轍を踏まないという熱い覚悟でもってして次の連載には挑もうと思います。

・・・と気持ち的な話はここまでにして、自作CMSではできなかったけど、今回新しく何ができるようになったのか?知りたいですよね。

列挙します!

データバックアップの自動取得

取得から取得までの日付のスパンを指定すればシステムを動かす全テーブルのデータバックアップを自動で取得することができます。

例えば10日と指定したら10日に1回、自動でバックアップが記録されます。

これで不慮の事態でデータが消失したときや、とある時点まで戻したい!というときに困らなくて済みます。このデータバックアップファイルを使用すればいいので。

短いスパンがよければ毎日にすることもできます。

記事編集時の自動保存

記事を編集するときになんらかのトラブルで突然ブラウザが閉じたりすると「長いこと保存していない!」なんてことがあると困りますよね。

次に作るシステムでは一定間隔ごとに自動保存できる機能をつけています。この一定間隔も自分で指定できるので、15分に1回とか5分に1回などあなたの好みに合わせて設定することができます。

ユーザの管理

自作CMSでは「ユーザ」という概念がシステム中にありませんでした。あくまでデータベースで管理するのは記事の分類や記事、コメントといったものが中心でしたが、今回は「ユーザ」を管理できます。

ユーザを管理する、ということはユーザがいることに付随する必要機能も当然ついてきます。次の項でご紹介します。

ログイン・ログアウトができる

ユーザを登録すれば名前とパスワードでログインすることができます。

「個人サイト」と銘打っているのでそこでユーザを管理するのはちょっと軸がブレているように思われるかもしれません。個人だったら自分さえ使えたらいいわけですからね。

でも実際には組織や団体、小さなグループでシステムを使用してみたいというニーズもあるでしょう。それらを叶える方針がプログラミング学習の密度・精度を上げることとマッチしたのでご用意しました。

ユーザごとに権限レベルを設定できる

ユーザを管理できるようになったところで、それに付随した機能がログイン/ログアウトだけでは芸がありません。

今回は権限レベルというものがあります。個人サイトの運営者と利用者の関係性によっては「この情報は○○さんには見せてもいいけど○○さんには見せたくない」ということも出てくるかもしれません。

そんな悩みを解決するのがこの権限設定です。情報の可視範囲を調整することで、ユーザをレベル分けすることができます。

例えば、自分自身をブランディングし、文字通り「個人サイト」として運用する場合、ファンとしてのランクが高い人には権限レベルも高く設定、新参者の方には低く設定する、などもありです。

記事にタグを付与できる

今やタグを記事に付与するのはおなじみですよね。このnoteでもそういう機能があります。
タグを付与することで、類似記事のグルーピングをしユーザのアクセシビリティ向上に寄与します。

サイト内検索ができる

つけちゃいました。サイト内の検索機能。
これは結構プログラミングのお勉強にもってこいというか、便利だから実用性も高く素敵な機能です。

リッチテキスト形式で記事の編集ができる

リッチテキストというのは、実際にブラウザで記事を閲覧するときの形式のままで編集ができるもの、と捉えていただければいいのですが、今回はこれをご用意しました。

自作CMSでは技術的な未熟さ、青さゆえにできませんでしたが、今回は組み込むことができました。EditorJSというものを利用しており、実際に使ってみるとめちゃくちゃ便利です。

マークダウン記法による記事の編集ができる

マークダウン記法による記事の編集モードもご用意しました。

リッチテキストエディタがめちゃくちゃ便利という話をしたので頭に「?」を浮かばれるかもしれませんが、編集モードによって微妙にできること/できないことがあるんです。

例えば、リッチテキスト形式ではファイルを添付することができません。しかし、マークダウン記法による記事の編集にすればファイルを添付し、ユーザにダウンロードしてもらうことが可能です。

このように記事の目的に応じて編集モードを使い分けることができるようにしました。編集モードは全部で3つで、あともうひとつ「オリジナル形式」と呼んでいるものがあります。


ここまでが新しくできるようになったことです。

連載時期・レべルについて

現在はまだひとつも連載の記事を作っておらず、本当にこれからというステータスです。

サンプルサイトはご案内の通りなので、こちらは好きに触っていただけたらと思います。各編集モードの使い方はサイトの方で説明しています。

目標は来年中に連載開始・連載終了を狙っています。

また大事なのがレベル感ですね。
ここまで新たにできるようになったことがある中で、もうさすがに「初心者でも大丈夫」とは言えません。内容は中級者向けかろうと思います。

ただ、私の目的はプログラミングに縁のなかった方や、まだ始めたばかりの方、もしくは一度挫折してしまった方にプログラミングの楽しさに気付いてもらい、あなた自身のシステム開発に羽ばたいてもらうところにあります。

ですので、内容は中級者向け、説明は初心者向け、という方針で記事を作っていきます。

つまり、初心者の方も大歓迎!ということです。

自作CMSの時と大きく異なるのは連載を通して開発のやり方を伝えていきたい、という点ですね。あのときはただ作り方だけを伝えていました。開発のやり方っていうのはまた少し違うんです。次はそれを伝えたい。

それから連載のゴールをどこに見据えるかという点ですが、それはあなたがあなたの作りたいシステムを開発できるようになること、です。

これが叶うようにここまで準備をしてきているので、連載記事の各文章に落とし込んでいきます。

その他

その他です。ここまででお伝えできていない情報。

次回も途中から記事を有料化します。ちょっと規模が大きく、レベルも高いので前回と比べると桁一つあがる予定でいますが、そこは様子を見つつになります。売れないと意味ないですからね。

あとは決意表明みたいなものですが、前回の自作CMSの作り方は「初心者の方でもがんばればいける」と言った割には説明が雑だったと本当に反省しています。

次回は時間がかかっても慎重に慎重に作っていきます。

ご質問等ありましたらコメント欄からお願いします。

・・あ、大事なこと言ってないです。サンプルサイトを開いたら割と地味な見た目かと思います。たぶん拍子抜けするでしょう。

これはサイトの改版、いわゆるバージョンアップを視野に入れているからです。スマートデバイスのOSでも、ブラウザでもバージョンアップというものがあること、そろそろ一般の方にも馴染みのある話ですよね。

そうです、システムにはバージョンアップがつきものなのです。

システム設計にあたっても、最初の段階でどんな機能を実装するかを考えるとき、初版でいれるか、改版で入れるか、重要度や優先度に応じて決めていきます。

今回はこれも味わっていただこうと思いまして。

ですので、まず作っていただくのは正式には「個人サイト version1.0」ということになります。

作りながらちょっと痒いところに手が届かないな・・と思われるところがあるかもしれませんが、それは私も重々承知しておりますので、ご安心ください。

それでは個人サイトに関するお話はここまでです。

アカウント名変更のお知らせ

これまで「Suipedia(すいぺでぃあ)」としてやらせていただいてきたのですが、これからは「Haguruma J」で行こうと思います。

「はぐるま じぇい」と読みます。

「Suipedia」といういうのはもともと「Suipedia」というwebサイトを運営しててそこから付けたのですが、だんだんそのサイトも下火になってきており、いずれは消すかもしれないので、変更することにしました。

まああとは、ネット上での活動名とかあったらいろいろ足を伸ばしていけるかもしれないし・・と思いましてね。

ちなみに命名は友人の力を借りましたが、由来としては何者かになりたくてアレコレ足掻いてみても結局自分は社会の歯車でしかないんだね、という皮肉から来ています。私もどでかいプログラムの一部なんですね。

でもいい動きしますよ~、この歯車は。

今はnote IDの方はsuipediaのままにしているので大丈夫ですが、そのうちnote IDもhagurumajに変えてしまうと思います。そうなると今ある記事もURLが変更になります。

お気に入りに登録したりどこかにリンクを貼っていただいたりした方にはご迷惑をおかけすることになります。申し訳ありません。ご容赦ください。

そうそう、noteのアイコンも変えました。歯車くんです。


おわりに

おわりです。

次のシステムの紹介はできたので、すこーしずつ、連載用の記事を準備していきます。

ある程度勉強を始められた方にはくどい内容かもしれませんが、やっぱり初心者の方が優しいレベルから入って、ひとつのシステムを完成させられるところまで能力向上していく筋道を綺麗に描けると楽しいと思うんですよね。

私はIT業界の人間ですが、開発に精通した人間が増えると回りまわって巡り巡って私も楽になるかもしれませんし・・・というくらいには人手不足です、この業界。

ま、いろいろ言いましたが楽しんでいきましょう。それが一番です。

それでは次の更新を待ってていただけますと幸甚です。

ありがとうございました。

この記事が気に入ったらサポートをしてみませんか?