AWSの環境構築(EC2)

現在追記中 インスタンスの作成 コンソール画面からGUI経由で5分もかかわらず作成可能! キーペア キーペアをダウンロードは初回しかできないことに注意。 EC2インスタンスの確認 CLIで作成したインスタンスの確認が可能なはずがなぜかできない。 結局コン…

AWSの環境構築(S3)

S3(Simple Storage Service)へのファイルのアップロードはCLI経由で行うため、最初にCLI環境の構築が必要。 S3の概要 S3はその名前の通りオブジェクトストレージ。 99.999999999%(ナイン・イレブン)の耐久性を実現する。 S3は単純なKVS(Key-Value型デー…

AWSのアカウント管理

AWSのアカウント管理は複数機能あるためまとめた。現在加筆中。 ベスト・プラクティス ルートアカウントはアクセスキーおよびシークレットアクセスキーを利用しない(ルートアカウント自体を普段利用しないため問題ない)。

認証の種類

記載中 ベーシック認証 IDとパスワードをサーバに送信することで認証する。 IDとパスワードが漏洩した場合は第三者によるなりすましが可能となる。 パスワードを暗号化した場合でもリプレイアタックの恐れがある。 チャレンジ・レスポンス認証 サーバ側から…

Gitコマンドチートシート(commit/push取り消し)

Git

焦らず少しづつマスターしていこう!! commitの取り消し resetとrevertの2通りが存在する。revertのほうが安全ではあるが不要な履歴がログに残ってしまう。resetはその逆。 resetはcommit履歴および修正履歴自体が削除される。 revertはcommit履歴および修…

汚いソースコードの分類と対策

「綺麗なソースコードはどれも似ているが、汚いソースコードは千差万別だ」by トルストイ 「良いソースコードは短いけど理解に時間がかかるソースコードではなくて、長くても理解するまでにかかる時間が短いソースコード」というのが私の哲学です。 たまには…

AWSの環境構築(VPC)

現在加筆中。 VPC(Virtual Private Cloud) VPCの構築自体では料金は発生しない。 VPNおよびNatGateway利用時に料金が発生する。 リージョン・AZ AWS → 複数リージョン → AZ(Availability Zone) サービス単位 サービス毎にスコープが異なる。 グローバル…

PEP8(命名方法)

一番知りたかったところ。実装時にここに最も頭を使います。 原則 公開されている API の一部としてユーザーに見える名前は、実装よりも使い方を反映した名前にすべきです。 l(小文字L),O(大文字O),I(大文字I)を変数に利用しない。 実践されている命名…

AWSの環境構築準備(ユーザの作成まで)

AWS

qiita.com とりあえず設定は完了した。MFAは初回登録時以降は入力数値は1パターンのみでよい。 次回以降はいよいよ実際にクラウド上に環境の構築!!! IAM (AWS Identify and Access Management ) AWSのユーザ管理やリソースのアクセス管理を行うサービス…

PEP8(import関連)

読んでみたらプログラムの書き方の参考になりました。これから実装するときはコーディング規約の公式ドキュメントも参考にしよう! 以下に気になったことをまとめました。 はじめに — pep8-ja 1.0 ドキュメント import import文は通常は行を分けるべき。 #OK…

AWSの料金確認

AWS

超重要なので基本毎日確認すべき。 docs.aws.amazon.com

AWSの環境構築準備(ルートアカウントの作成まで)

AWS

クラウド上にマシンを作成するまでの道のりがそもそも長かったりする。。。 1.メールアドレスの取得 Gmailアカウントを作成した。 2.AWSアカウントの作成 マネージメントコンソールにログインできるところまで確認した。 特に難しいことはなく流れにそってい…

変数・メソッドの命名法

順次加筆予定 原則1:抽象的な命名は避ける 例1(Memoryとは?) writeMemoryのMemoryが何を指すのかが不明瞭。USBメモリ?キャッシュメモリ?メインメモリ? メモリという名前のつく単語はコンピュータ関連では複数あるため不明瞭になってしまう。 個別の…

コメントの書き方

順次加筆予定 コメントの減らし方 そもそもコメントを大量に書く必要がある場合は何かが間違っている可能性を疑う コメントのためのコメントは書かない 変数やメソッド名から内部処理がある程度推測できる名前を利用する 何をコメントとするか ソースコード…

エラーの分類

大きく分けてコンパイルエラーとランタイムエラーからなる。 実際問題としてはソフトウェア試験で問題になるのはランタイムエラーに対して適切なエラー処理の実装がなされているかである。 コンパイルエラー(シンタックスエラー) コンパイル時に発生するエ…

メモリ管理(セグメント)

セグメント(セクション) 通常プログラムやデータはメインメモリの連続した領域を単位として管理される。 このプログラムやデータの管理単位となる連続した領域のことをセグメントと呼ぶ。 Programセクション(Pセクション) プログラムコードが格納される…

x86系CPU

「x86系CPU」といった場合インテル製の CPU に加えアスロンなどのインテル互換CPU も含まれる x86のここがすごい 世界中のPCとサーバの90%以上で使われているx86系 1970年代後半のコンピューティング技術で残っているのはコンピュータの命令セット でもスマ…

CPUのbit数

CPUのbit数の定義 CPUに関連するbit数は多岐に渡る。 CPUを表現する場合のビット数の意味は以下の通りである。 - アドレス幅(内部のアドレスレジスタ幅、外部アドレスバス幅) - データバス幅(内部データ幅、外部データバス幅) - 内部演算幅(=演算装置…

教師あり学習の分類

どれも昔大学院でお世話になった懐かしい名前です。ベイズ推定とかもう一度勉強しなおしたいなぁ。 決定木 遺伝的手法 ニューラルネットワーク サポートベクターマシン ⇒分類境界とデータの距離が最大になるようにするモデル ベイズ学習

機械学習の分類

大きく分けると教師あり学習と教師なし学習と強化学習の3つに分類される。 教師あり学習 教師データ*1を用いて学習する。 教師なし学習 教師データを用いずに学習する。 強化学習 環境とのフィードバックから教師データを得る。 転移学習 学習済みモデルを…

CPUモード

CPUにはカーネルモードとユーザモードの2つのモードがある。 CPUモードはCPUとしての機能(アセンブラとして提供)ではなくて、プログラムとしての機能だと思うのだが実際はどうなのだろう? カーネルモード(OSの核となる処理) デバイスドライバ プロセス…

メソッドの実装方法

okn-yu.hatenablog.com 補足 上の以前書いた記事の中で1メソッド中のステップ数は10行未満が望ましいと記載した。 ⇒これを実現するには1メソッド1機能という方針を貫徹する必要がある。 ⇒そうすると必然的にメソッド名=機能名となるのでメソッド名から実装…

Gitコマンドチートシート(merge)

Git

リモートリポジトリにはマージ後にコミットしないとマージの反映がなされないことに注意!! merge手順 マージ先のブランチにチェックアウト マージ元のブランチを指定してマージ 【コマンド】 git checkout <マージ先ブランチ名> git merge <マージ元ブラン…

参照透過性と副作用

難しそうなんだけど参照透過性とか当たり前のようで実はそんなことなかったりする。 多分大多数の関数は参照透過性を満たしていない。 関数でも疎結合を意識していれば自然と副作用も減るし参照透過性も強まるのではないだろうか? 参照透過性 関数が同じ入…

Ubuntu16.04でvncserverの利用

前提条件は以下と同じ。 okn-yu.hatenablog.com VNCサーバの設定 vnc4serverのインストール sudo apt-get install vnc4server ~/.vnc/xstartupを以下のように編集 #!/bin/sh def export XKL_XMODMAP_DISABLE=1 unset SESSION_MANAGER unset DBUS_SESSION_BUS…

GPU関連

グラフィックボード 主にパソコンンのグラフィック処理を担当する拡張ボード。 GPU グラフィック機能を制御するプロセッサ。 マザーボードにCPUが搭載されるように、グラフィックボードにGPUが搭載される。 統合型GPU CPUにGPUコアがパッケージ化されている…

インスタンス変数・カプセル化・グローバル変数

インスタンス変数とカプセル化 グローバル変数は便利だが多用するとモジュール間の密結合化によりバグの温床となり、またスコープが広すぎるためデバッグが困難となる。 クラス内のどこからでもアクセスできるインスタンス変数は疑似グローバル変数と同じ振…

解像度

ピクセル・画素数・解像度の違いがよくわかっていませんでした...。 ピクセル 画像をデジタルデータで表すためには、画像を細かく分割して、その分割したものを1つの色で表示す。この分割した領域(面積)が画素。 別の言い方ではコンピュータで画像を扱うと…

Ubuntu16.04でxrdpの利用

Ubuntu16.04のUnityとXRDPは相性が悪いらしい...。 前提条件 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu 16.04.4 LTS" $ uname -a Linux ***-VirtualBox 4.13.0-39-generic #44~…

Pythonのプチメモ

何度も同じことを確認してしまうので。。。 Privateメンバ __でPrivateメンバとなり原則外部アクセスができなくなる。