Z


ログイン | アカウント作成

ちまちま更新

tokeisan4 tokeisan4

イイネで画面がリフレッシュされるのを改善したよ

テスト

tokeisan4 tokeisan4

動画投稿

マイナーアップデート 動画投稿解禁

tokeisan4 tokeisan4

動画投稿解禁しましま

人類学徒からみた婚活

tokeisan4 tokeisan4

『恋は文化的ミームの中で育つ──オタク的連帯と進化心理学から見た婚活戦略』 サピエンスの恋愛は、実は「趣味の共通性」という文化的ミームの中でこそ発芽する。無数の異文化の中から、あなたが属する部族を見つけること。それが婚活という儀礼の第一歩なのだ。 ■ ホモ・サピエンスの婚姻行動の特徴とは? 進化人類学・文化人類学の観点から、ホモ・サピエンスには以下のような傾向がある。 1. 長期的なペアボンド形成:一夫一妻的な傾向が強い(ただし多様性あり) 2. 性的二型性の弱さ:外見的な男女差が小さく、行動面でも分業が柔軟 3. 象徴行動・装飾の使用:自分の社会的価値や所属を示すための言語、服装、文化資本の使用 4. 協力的子育て(alloparenting):血縁以外も含む共同育児が重要視される 5. 匂い・顔・対称性などの生理的好みに加え、文化的・象徴的な適合性(言語、価値観、ステータス)を強く重視 ■ ホモ・サピエンスの進化的特徴を活かした婚活法 ①象徴資本の提示戦略:本を読んでいる姿や、歴史ある趣味をプロフィールに載せる。象徴行動の進化により、人類は見せたい自己像を構築・共有で…

IT産業における賃金上昇は企業内昇進よりも転職によって達成されるのか

tokeisan4 tokeisan4

ITエンジニアのキャリアについて語られるとき、よく言われるのが「給料を上げたいなら転職するしかない」という言葉である。 実際、多くのエンジニアが数年おきに転職を行い、そのたびに年収を上げている。一方で、同じ会社に長く在籍しているエンジニアは、昇進しても給与の伸びが緩やかであるケースが少なくない。 本稿では、なぜIT業界では「企業内昇進」よりも「転職」によって賃金が上がりやすいのか、その構造を整理してみたい。 ■ ITスキルは「持ち運びできる」 労働経済学では、人間のスキルを「人的資本」と呼ぶ。この人的資本には大きく二種類ある。企業固有のスキルと、他社でも通用するスキルだ。 ITエンジニアのスキルは後者の比率が高い。例えばLinux、Python、AWS、Kubernetes、SQLといった技術は、基本的にどの会社でも価値がある。つまり「その会社にいないと価値が出ないスキル」ではない。 このようなスキルは市場価値が外部で評価されやすい。そのため、会社の内部で昇給を待つよりも、転職市場で評価してもらった方が賃金が上がりやすい。 ■ 企業の給与テーブルは市場より遅れて動く …

祝㊗️累計訪問者数:20521 人

tokeisan4 tokeisan4

ありがとうございます

Apache設定まるわかり!よく使うディレクティブ解説

tokeisan4 tokeisan4

このサイトを自宅サーバー(RHEL + Apache httpd)で運用する中で、実際に使ってきたApacheの設定項目(ディレクティブ)を、体系立ててまとめてみます。公式ドキュメントは網羅的すぎて最初はとっつきにくいので、「実際に何のために使うのか」という視点で整理していきます。 ■ そもそもディレクティブとは Apacheの設定ファイル(httpd.confや、conf.d以下の個別ファイル)に書く、1行1行の設定項目のことをディレクティブと呼びます。「このURLパスにはこの権限が必要」「このドメインが来たらこのアプリを表示する」といった、Apacheの振る舞いを決める命令文だと考えると分かりやすいです。 ■ VirtualHost:1台のサーバーで複数サイトを扱う 同じサーバー上で、異なるドメインや異なるポートごとに別々のサイトを配信するための仕組みです。 <VirtualHost *:443> ServerName example.com ServerAlias www.example.com SSLEngine on SSLCert…

セキュリティ強化を実施

tokeisan4 tokeisan4

何かバグがあれば教えてください

Red Hatデベロッパーアカウント作成からApache構築までの手順まとめ

tokeisan4 tokeisan4

自宅サーバーでRHEL(Red Hat Enterprise Linux)を使ってWebサイトを公開したい人向けに、Red Hatデベロッパーアカウントの作成から、Apache httpdでのWebサーバー構築までの手順を、実際に使ったコマンドを交えてまとめます。一般的な環境を想定していますので、細部は自分の環境に合わせて読み替えてください。 ■ Red Hatデベロッパーアカウントの作成 まず、以下のサイトにアクセスしてアカウントを作成します。 https://developers.redhat.com/ メールアドレス、氏名などの基本情報を入力し、確認メールのリンクを踏めば登録完了です。法人名の入力欄がありますが、個人利用の場合は「Personal」や自分の名前を入れておけば問題ありません。 このプログラムで利用できるのは、正確には「Red Hat Developer Subscription for Individuals」という個人向けのサブスクリプションです。商用の本番環境での利用は想定されておらず、あくまで開発・学習目的での利用が前提となっている点は理解しておく…

アプリ版アップデート

tokeisan6 tokeisan6

最新版のAndroidに対応し申した 自撮り顔バーン

広告

アクセス増えてるの?

miwakong777 miwakong777

顔出しバーン💥

祝㊗️サポート会員機能実装完了(課金会員)

tokeisan6 tokeisan6

ようやく課金周りが実装できました! じゃんじゃん投げ銭してくれよな!

ぬお来訪者増えた

tokeisan6 tokeisan6

祝㊗️累計訪問者数:16390 人 ありがとう〜嬉しい

サポート会員機能実装

tokeisan6 tokeisan6

500円課金すると、このアプリを共同開発する権利と 最新の仕様書をもらえる権利、 最新の機能を先行利用可能です。 電気代にしますw

サポート会員機能(月500円)の開発中

tokeisan6 tokeisan6

サポート会員機能で課金した人は機能追加の要望やメッセージ💬機能を利用可能になる予定なのだ

祝㊗️累計訪問者数:11389 人

tokeisan6 tokeisan6

皆さんにささえられてこのサーバーは生きながらえています

クローズドベータテスト開始

tokeisan6 tokeisan6

あと14日間アンインストールせずに放置でいいですよー

iPhoneだから

miwakong777 miwakong777

Zインストール出来ないから 「ホーム画面に追加」で ショートカットにしてる。 手動で「Z」に名前を変えた!

ごあいさつ

tsubutaro_sub tsubutaro_sub

よろしくお願いします!!🙇

マイナーアップデート

tokeisan6 tokeisan6

投稿画面からバツボタンで抜けられるようになりました

広告

IMONOPAN角型 買った!

miwakong777 miwakong777

大きすぎず小さめグリルにも入るし 使いやすい~

【お願い】Google Playクローズドテストにご協力ください!

tokeisan4 tokeisan4

いつもZを使ってくださりありがとうございます。 このたび、AndroidアプリをGoogle Playで正式に公開するため、Googleの審査プロセスの一環として「クローズドテスト」を実施する必要があります。 条件は「12人以上のテスターが、14日間以上テストに参加していること」。皆さんのご協力が必要です! ■お願いしたいこと お使いのGoogleアカウントのメールアドレスを、このスレッドまたはDMで教えてください, 私の方で、テスト参加用の招待リンクを発行します, リンクからテストに「参加」ボタンを押していただくだけでOKです(実際にアプリをインストールしなくても構いません), あとは14日間、そのまま置いておいていただければ大丈夫です, 個人情報は審査対応のためだけに使用し、他の目的では使用しません。ご協力いただける方は、ぜひよろしくお願いします

マイナーアップデート

tokeisan4 tokeisan4

呟きに4件まで写真を載せられるように機能追加しました😊

@tokeisan4

tokeisan4 tokeisan4

@tokeisan4

PWAサイトをAndroidアプリ化した話(TWAでGoogle Play配布まで)

tokeisan4 tokeisan4

このサイトを、Androidアプリとしても配布できるようにしました。今回は、PWA(Progressive Web App)として作っていたサイトを、TWA(Trusted Web Activity)という仕組みでAndroidアプリ化した手順を、実際につまずいた点も含めて書いていきます。 ■ そもそもTWAとは TWAは、既存のWebサイトを、ほぼコードを書かずにAndroidアプリとして包める、Google公式の仕組みです。アプリ内でChromeのエンジンをそのまま使い、通常のブラウザのようなアドレスバーを表示せずにサイトを表示できます。ネイティブアプリを1から書く必要がなく、今あるDjangoサイトの資産をそのまま活かせるのが最大の利点です。 前提として、TWA化する前にサイト自体をPWA化しておく必要があります。具体的には、アプリ名やアイコンを定義する「manifest.json」というファイルと、オフライン対応やプッシュ通知を担う「Service Worker」というJavaScriptファイルの2つを用意しました。 ■ Bubblewrapでのプロ…

【アプリβ版配布のお知らせ】

tokeisan4 tokeisan4

Zのコミュニティサイトを、Androidアプリとしても使えるようにしました! Google Play正式リリース前のβテストとして、まずはフォロワーの皆さんに先行配布します。 📱ダウンロード: https://community.tokeisanheaven.uk/static/downloads/app-release-signed.apk ※Google Play以外からのインストールになるため、警告出るよ

アプリ版からのテスト

tokeisan4 tokeisan4

テスト

𝕏じゃなくてZ~

miwakong777 miwakong777

どう使おうかな(ㆁωㆁ*)

通知機能実装

mieisan mieisan

ホームボタンに追加した人は通知を受け取るか選べるように更新

ペチーノ

tokeisan4 tokeisan4

ペチーノのんだ

広告

伸びろサンペドロ

tokeisan4 tokeisan4

サンペドロがすくすくと育っています。

ライターじゃないので…

tokeisan4 tokeisan4

内容がないよう… うす〜い記事になってごめんなさい だって例えばライブラリのバージョンとか公開すると攻撃されたら落ちそうなので意外と開示できる情報が少ないのよ

このサイトの作り方 (10) 自宅サーバーとクラウドの二刀流運用

tokeisan4 tokeisan4

これまでの連載の最後に、このサイトをクラウドと自宅サーバーの両方で動かすことにした経緯について書きます。 このサイトは元々クラウドサービス上で動かしていましたが、途中から自宅にあるサーバーでも同時に動かすようになりました。自宅のインターネット回線を使ってサイトを公開しようとしたところ、契約している回線の仕組み上、外部から自宅サーバーに直接アクセスできない制限があることが分かりました。ポートを開放するという、よくある方法が使えなかったのです。 そこで採用したのが、サーバー側から外部に向けて接続を確立するタイプの技術です。ルーターの設定を一切変更せずにサイトを公開できる仕組みで、これを知ったときは目から鱗が落ちる思いでした。固定のアドレスで運用するために、独自ドメインも取得しています。 コードの管理も、クラウド環境用と自宅サーバー環境用でリポジトリを分け、誤って片方の変更がもう片方に影響しないようにしました。画像の保存先も、クラウド環境は外部ストレージサービス、自宅サーバーは大容量の内蔵ディスクと、環境ごとに切り替えられるようにしています。 自宅サーバーは停電やネットワークの一時…

このサイトの作り方 (9) 監視と自動運用

tokeisan4 tokeisan4

今回は、サイトを24時間見張り、自動で保守してくれる仕組みについて書きます。 サイトの状態を見張るために「Zabbix」という監視ソフトを導入しました。サイトが落ちていないか、サーバーのCPUやメモリ、ディスクの使用率が高すぎないかを常にチェックし、異常があればメールで知らせてくれます。クラウド環境と自宅サーバー環境、両方のサイトを同時に監視できるようにしています。 さらに、週に1回、サーバー全体のセキュリティ設定を自己診断するツールと、ウイルスやルートキットを検知するツールを自動実行するようにしました。これらのツールが検知した異常も、監視ソフトのログ監視機能と連携させて、自動でメール通知が飛ぶようにしています。 パッケージの更新(セキュリティパッチ)も、毎週決まった曜日の深夜に自動で適用され、再起動が必要な場合だけ自動的に再起動する仕組みにしています。ログファイルについても、たまり続けて容量を圧迫しないよう、古いものは自動的に圧縮・アーカイブし、一定期間を過ぎたら削除する仕組みを組み込みました。 こうして、なるべく手間をかけずに、安全な状態を保てる運用体制を整えました。普段…

このサイトの作り方 (8) セキュリティ対策

tokeisan4 tokeisan4

個人で運営するサイトでも、公開する以上はセキュリティ対策が欠かせません。今回は、このサイトを守るために導入した仕組みについて書きます。 まず入れたのが「fail2ban」というソフトです。ログインを何度も間違えたり、明らかに不審なアクセスを繰り返すIPアドレスを、自動的に一定時間ブロックしてくれます。自分自身の作業用アドレスまで誤ってブロックされないよう、自宅のネットワークだけは対象外にする設定もあわせて行いました。 次に「ModSecurity」というWebアプリケーションファイアウォールを導入しました。SQLインジェクションやXSSといった、Webサイトへのよくある攻撃パターンを検知する仕組みです。まずは検知だけを行うモードで様子を見て、誤検知が少ないことを確認してから、本格的な防御に切り替えていく方針にしています。実際、長文投稿への対応中に、正規のリクエストまで誤検知されてしまう場面もあり、ルールを個別に調整しました。 管理画面についても、自宅のネットワークからしかアクセスできないよう制限をかけるなど、外部に露出させる範囲を最小限にする工夫も加えています。サーバー自体も、…

このサイトの作り方 (7) 検索エンジン対策

tokeisan4 tokeisan4

どれだけ良いサイトを作っても、検索エンジンに見つけてもらえなければ意味がありません。今回は、このサイトに施したSEO(検索エンジン最適化)対策について書きます。 まず基本として、各ページに「メタディスクリプション」という、検索結果に表示される説明文を設定しました。投稿詳細ページでは、その投稿の本文の冒頭が自動的に説明文として使われる仕組みにしています。 次に、SNSでシェアされたときの見た目を整えるOGPタグを設定しました。これにより、LINEやX(旧Twitter)にリンクを貼ったとき、タイトルや画像がきれいなカード形式で表示されます。この設定を入れる前は、リンクを貼ってもただの文字列にしか見えなかったので、見た目の印象がかなり変わりました。 検索エンジンに正しく認識してもらうために、サイトマップという一覧ファイルも自動生成しています。投稿やタグが増えるたびに、内容も自動で更新される仕組みです。さらに、投稿詳細ページには「構造化データ」という、Googleが記事の内容を理解しやすくするための特別なデータも埋め込みました。画像がない投稿でエラーになるという不具合が一度起きました…

このサイトの作り方 (6) 収益化とアフィリエイト

tokeisan4 tokeisan4

個人サイトを長く続けるには、多少なりとも運営費をまかなえる仕組みがあると助かります。今回は、このサイトに組み込んだ収益化の工夫について書きます。 まず取り入れたのは、Amazonアソシエイトともしもアフィリエイトという、アフィリエイト広告の仕組みです。紹介した商品がリンク経由で購入されると、紹介料の一部を受け取れます。Amazonアソシエイトは、登録してすぐに正式参加になるわけではなく、一定期間内に第三者による購入実績が必要という審査の仕組みがあることも、実際に申し込んでみて初めて知りました。 サイト内には「おすすめ商品」という管理用の仕組みを作りました。商品名・リンク・画像に加えて、提携先が発行するバナーコードをそのまま貼り付けられる欄も用意し、柔軟に広告を差し込めるようにしています。もしもアフィリエイトのように、広告ごとに掲載条件が細かく決まっているケースもあるため、規約を都度確認しながら組み込みました。 表示場所は2箇所です。1つはサイドバーで、タグページを見ているときはそのタグに関連する商品を表示します。もう1つは投稿の一覧で、10件ごとに「広告」と明記した形で自然に挟…

このサイトの作り方 (5) アクセス解析と訪問者数の記録

tokeisan4 tokeisan4

今回は、サイトの訪問者数や、投稿ごとの閲覧数を記録する仕組みについて書きます。 このサイトには、投稿ごとの閲覧数を記録する機能と、サイト全体のユニーク訪問者数を記録する機能の2つがあります。ログインしている人はユーザーIDで、していない人はブラウザに保存したCookieで、重複してカウントされないようにしています。 サイト全体の訪問者数は「同じ人が同じ日に何度訪れても1カウント」という数え方にしています。実装の初期段階では、ログイン済みかどうかで検索の条件を変えてしまっていたため、未ログインで訪れた人が後からログインした瞬間にエラーになるという不具合がありました。原因を調べたところ、データベースの一意性制約に違反していたことが分かり、常に同じ条件で検索するよう修正しました。 集計したデータは、サイドバーの「新着記事」「アクセス数順」「いいね順」や、フッターの「累計訪問者数」として活用しています。数字が伸びていくのを見るのは、運営者としても素直に励みになります。 こうした指標は、単に眺めて満足するためのものではなく、どの機能が実際に使われているかを把握し、次に何を改善すべきかを…

このサイトの作り方 (4) SNSログイン認証の実装

tokeisan4 tokeisan4

今回は、GitHub・Google・Discord・X(旧Twitter)・LINEでログインできる仕組みについて書きます。 パスワードを別途覚えてもらう必要がないよう、普段使っているSNSアカウントでそのままログインできる仕組みを用意しました。django-allauthというライブラリを使うと、複数のSNS認証を比較的簡単に組み込めます。 苦労したのは、各SNSごとにプロフィール情報の形式がまったく違う点でした。アイコン画像ひとつとっても、GitHubは直接URLを返しますが、Discordは画像のハッシュ値からURLを組み立てる必要があり、LINEは長い署名付きのURLを返してきます。それぞれに合わせて、ログイン時にアイコンを自動取得して保存する処理を書きました。 LINEログインを追加したときは、権限の指定が足りずにエラーになったり、返ってきたアイコンURLが長すぎてデータベースに保存できなかったりと、いくつもの壁にぶつかりました。ひとつずつエラーメッセージを読み解きながら直していく作業は根気が要りますが、直った瞬間の達成感は大きいです。 複数の環境(クラウドと自宅サ…

このサイトの作り方 (3) 匿名掲示板とトリップ機能

tokeisan4 tokeisan4

今回は、匿名でも書き込める掲示板機能について書きます。 掲示板は、2ちゃんねる風の匿名投稿ができる仕組みにしました。名前を入力しなければ「名無し」として投稿でき、「名前#秘密の文字列」の形式で入力すると、その文字列をもとにした「トリップ」という短い符号が名前の後ろに付きます。同じ文字列を使い続ける限り、名乗らなくても同一人物だと分かる、昔ながらの仕組みです。 この掲示板機能は、もともと投稿機能と同じアプリの中に間借りする形で作っていたのですが、役割が大きく異なるため、途中で独立したアプリとして切り出しました。切り出す際には、データベースのテーブルを新しく作り直す形をとり、幸い当時はまだ利用者がいなかったため、データ移行の心配なく進めることができました。 また、同じ人が連続で投稿しすぎないように、投稿後30秒間は再投稿できない制限も入れています。荒らし対策として、匿名投稿者のIPアドレスも記録するようにしました。 掲示板を独立させる作業の中で、テンプレート内のリンク先の指定がひとつだけ古いままになっていて、レス投稿ボタンを押すとエラーになる不具合も起きました。こうした「移行時の…

広告

このサイトの作り方 (2) 投稿とタグの仕組み

tokeisan4 tokeisan4

今回は、サイトの中心的な機能である「投稿」と「タグ」について書きます。 投稿機能では、タイトル・本文・画像・タグをまとめて登録できます。画像のファイル名は、そのまま保存すると日本語や特殊文字が原因でエラーになることがあったため、ランダムな文字列に変換してから保存する仕組みにしました。実際、開発の途中で特定の画像だけアップロードに失敗する不具合が起きて、原因を探ったところ、日本語混じりのファイル名がストレージ側で受け付けられていなかったことが分かり、この対策を入れることになりました。 タグは投稿作成時にカンマ区切りで入力するだけで、自動的に新しいタグとして登録されます。日本語のタグ名にも対応していて、タグごとの一覧ページも自動で生成されます。ここでも一度、日本語タグのページだけ表示されないという不具合があり、URLの設定を見直して直しました。 タグの入力欄については、テンプレート側で参照している項目名がずれていたせいで、しばらくの間タグが正しく保存されないという不具合が続いていたこともありました。地道に原因を切り分けていく作業も、開発の醍醐味のひとつだと感じています。 さらに、…

このサイトの作り方 (1) 企画とUIデザイン

tokeisan4 tokeisan4

このコミュニティサイトは、Djangoというフレームワークを使って1から作りました。今回から10回に分けて、その開発の記録を書いていきます。 まず最初に決めたのは「どんな見た目のサイトにするか」でした。ただの掲示板ではなく、投稿・タグ・いいねがある、Twitterのタイムラインに近い見た目を目指しました。文字だけがずらっと並ぶ無機質なページではなく、誰かの日常が流れているような、温かみのある画面にしたいと考えていました。 配色は、サイト名の「Heaven Portal」に合わせて、ラベンダーがかった白背景に、空色と後光のような金色をアクセントカラーにしています。見出しには明朝体、本文にはゴシック体を使い分けて、柔らかい雰囲気を意識しました。フォントの組み合わせひとつで、サイト全体の印象がかなり変わるので、ここは何度か試行錯誤しました。 投稿一覧のカードデザインは、影を薄くつけて浮かび上がるようにし、投稿者のアイコン・本文・タグ・いいねボタンを1つのカードにまとめています。長い投稿は500文字を超えると自動で折りたたまれ、「続きを読む」で全文表示できるようにしました。 サイドバ…

いろいろ実装してる

tokeisan4 tokeisan4

WEBフックとかね みんなもおいで https://discord.gg/fH7EWnzEJ

今回の一連の変更、まとめ

tokeisan4 tokeisan4

掲示板機能の分離 ├─ Thread/Reply → 独立したboardアプリへ移行 ├─ 匿名投稿の「名前#トリップ」機能を実装 └─ URL・テンプレート参照を全て更新 収益化の仕組み ├─ AffiliateProductにcustom_html対応(バナー広告の直接埋め込み) ├─ show_in_feedフラグで、フィード内広告の対象を制御 └─ 10投稿ごとに自動で広告を挿入

オペレーション全部自動化してしまい飽きた

tokeisan4 tokeisan4

セキュリティもパッチ適用もログ管理も監視もぜーんぶ自動化し終わった 飽きた…

つい影響されて…

tokeisan4 tokeisan4

本当このサイトに影響されてここ作ったからね https://taittsuu.com/home ガチのツイ廃というかタイッツー廃

投稿に界隈のおすすめ商品を乗せられる機能を実装!

tokeisan4 tokeisan4

おすすめから買われるとこのサイトの維持費とアップグレード費用が稼げるのだ! みんなどしどし買うのだ! おすすめするだけでもいいよ

定時後にやることリスト

tokeisan4 tokeisan4

・広告をちょびっと ・タグに応じた物販もしたい ・アクセス元の管理(違反者をBAN) あと何かあるか?

システム概要(興味があれば聞いてね)

tokeisan4 tokeisan4

セキュリティ ├─ fail2ban(SSH・Apache不正アクセス自動ブロック) ├─ ModSecurity + OWASP CRS(WAF、現在はDetectionOnly) └─ Cloudflare Tunnel(自宅サーバーを直接公開しない) 監視 └─ Zabbix(Web監視・CPU/メモリ/ディスク監視・メール通知) 運用自動化 ├─ ログ管理(/data/log/archive、90日保持、自動圧縮・削除) ├─ カーネル整理(installonly_limit=3) └─ 自動パッチ適用+必要時のみ自動再起動(毎週日曜AM2:00)

ペネトレーションテストなう

tokeisan4 tokeisan4

自分のサーバに攻撃を仕掛けてブロックされるを繰り返してる 虚無

広告 界隈の一押し商品!