朝日ネット 技術者ブログ

朝日ネットのエンジニアによるリレーブログ。今、自分が一番気になるテーマで書きます。

楽しく! AWSでウェブサイト構築(第2回)

初めましての方は初めまして。お久しぶりの方はお久しぶりです。jttest0です。 AWS触り始めてちょうど一年くらいの駆け出しインフラエンジニアです。毎日てんやわんやしていたら、いつの間にかこんなに月日が経ってしまっていました。

こちらは、全3回*1にわたる連載記事の記念すべき第二弾です。毎回が記念です。

既に前回の分を読まれた方! ありがとうございます!!!!! できればスターとブックマークといいねとポストもお願いします(強欲)。

まだ前回の分を読んでないというそこのあなた! 躊躇している暇はありません。今すぐ読みに行きましょう。↓

楽しく! AWSでウェブサイト構築(第1回) - 朝日ネット 技術者ブログ

今回は、予告通りウェブサイトをCloudFrontで公開するところまでを扱います。意味がわからなくても大丈夫です。いい感じになるということです。詳しくはのちほど説明します。

  • CloudFrontってなんぞ?
  • 現状を思い出そう
  • CloudFrontを作ろう
  • S3連携しよう
  • いざアクセス
  • 第2回まとめ
  • 採用情報

※相変わらず前置きが長いので、構築部分のみを読みたい方は目次の『現状を思い出そう』に進んでください。

*1:予定

続きを読む

Haskellのつまづきやすいポイントを解説 ~モナドと effect system ~

こんにちは、開発部のjiweenです。

本記事では、Haskellについて誤解しやすい・つまづきやすいポイントである、Haskellにおける手続き型プログラミングについて紹介します。手続き型言語を書いたことはあるがHaskellを書いたことがない人を対象にしています。

  • 記事の目的
  • 用語
    • 手続き型プログラミング
    • 作用と副作用
    • 純粋 (pure) /不純 (impure) な関数
  • モナドを使ったコード例
  • モナドとして書くメリット
  • IOモナド
  • do構文
  • effect system を使ったコード例
  • まとめ
  • 補足 (おまけ)
    • モナドについて
    • なぜ flatMap と呼ぶのか
    • effect system におけるeffectの解釈
  • 採用情報

記事の目的

Haskellは純粋関数型言語です。関数型スタイル自体は近年関数型でない言語でも取り入れられており、ある程度イメージできる方も多いと思います。しかし、Haskellの特殊なところは"純粋"関数型であるところです。純粋関数型では基本的に副作用が起こせない (関数の入力と出力しか使えない) ため、通常の手続き型言語とは全く異なる方法で手続きを記述します。誤解されがちですが、Haskellでは手続き型プログラミングを完全に排除するわけではありません。必要に応じて、モナドという概念を使って手続き型プログラミングを行います。

Haskellのこの特殊性は他の言語から乗り換える際の障壁です。逆に、手続きの扱い方でつまづかなければ、Haskellを (他の言語と同程度に) 実用するのは比較的難しくありません。本記事ではその障壁を取り除くことを目指します。

更に、その手続きの扱い方は通常の手続き型言語と異なるメリットがあることについても説明します。

続きを読む

楽しく! AWSでウェブサイト構築(第1回)

初めまして。AWS触り始めて半年ちょいの初心者インフラエンジニア、jttest0です。 いつかAWSチョットデキルの境地に至れることを夢見て日々公式ドキュメントとにらめっこしています。

本記事は、htmlファイル等の自作は出来るけどインフラ系*1の知識が無くてウェブサイトの公開の仕方がわからない! というお悩みを抱えた方へお送りいたします。

こちらは、全三回*2にわたる連載記事の記念すべき第一弾です。

今回は、S3バケットで静的ウェブサイトホスティングするところまでを扱います。意味がわからなくても大丈夫です。自分の作ったウェブサイトが公開された状態になるということです。

  • そもそもウェブサイトってどう作るの……?
  • ウェブサイトのすゝめ
  • AWSアカウントを作ろう
  • ファイルの置き場所を作ろう
  • アクセス用のURLを作ろう
  • インターネット公開のための設定をしよう
  • 第1回まとめ
  • 採用情報

※構築部分のみを読みたい方は、目次の『ファイルの置き場所を作ろう』に進んでください。

*1:サーバーやネットワーク

*2:予定

続きを読む

インフラエンジニアを目指す学生のためのインターンメニュー! pfSense で PPPoE サーバーを構築してみる

朝日ネットのthrkrpです。 社会人としてもまだまだ勉強中のピヨピヨ技術者ですが、ブログを初めて書いてみます。

この記事では、pfSense 上で PPPoE サーバーを構築し、クライアントとの間に PPPoE セッションを張ってみた様子を紹介します。 学生向けのインターンメニューとして検討中のものですので、比較的初心者にもわかりやすい内容かと思います。

ぜひご覧ください。

  • 背景と目的
  • pfSense とは
  • PPPoE とは
  • 構築
    • サーバー・ネットワーク構成図
    • VirtualBox の設定
      • ネットワークの作成
      • pfSense の起動と初期設定
      • Debian の起動と初期設定
    • pfSense の設定
      • Interface
      • Gateway
      • Firewall
      • PPPoE Server
    • Debian の設定
      • Interface
      • pppoeconf
  • 検証
    • PPPoE セッションを確立させる
    • IPアドレスを確認する
    • pfSense で接続状況を確認する
    • 外部接続ができるかを確認する
    • ユーザー認証のパケットを確認する
    • 認証方法の違いを確認する
  • まとめ
  • 採用情報

背景と目的

当社では高専生や大学生を対象としたインフラ系インターンを2024年度に実施予定です。 ISP事業に関係のある技術を学習してもらいたという思いの下、主に情報工学系の学生を念頭に置きインターンで実施するメニューの検討が進んでいます。

今回取り上げるのは、メニュー候補の「pfSense というソフトウエア上で PPPoE サービスを提供するサーバーを構築する」というものです。 pfSense の PPPoE サーバーの機能はこれまで使用した例が無く、社内にノウハウがないため、この構築が実際にできるのかを検証してみました。

続きを読む

LibreChatの採用とGPT-4の開放(社内用ChatGPTクローンのアップデート)

朝日ネットで技術部門の執行役員をしている草場です。
前回に引き続き、社内用ChatGPTについての取り組みを紹介します。

前回記事はこちら techblog.asahi-net.co.jp

  • 6月以降のできごと
  • コスト
  • OSS選定(LibreChat選定)
    • Azure OpenAI Serviceでも言語モデルの変更が可能
    • 認証オプション
    • コンフィグでの機能制御
    • メンテナンス・更新頻度
  • システム構成
  • 苦労話
    • Azureでのモデル切替の設定方法
    • Automated Moderation System
    • Google認証
  • 今後について
  • 最後に
  • 付録(.env diff)
続きを読む

オブジェクト指向を5年間理解できなかった人間がオブジェクト指向を説明する(第6回)

こんにちは。朝日ネット社員のjiweenです。

前回までで重要なパターンは説明し終わりました。

最終回となる今回では、初学者にとって必要性が低いと判断し後回しにしていたパターンに触れます。 GoFパターンのマニアでなければ、読み飛ばしていただいても問題ありません。

最後では連載のまとめを行います。

続きを読む