helloworlds

not a noun, it's a verb

【VR】VRをおさらい

ちょーーっと最近VRに関心が湧いてきました。 なのでちょっと歴史なんかを勉強しようかと思います。 参考にしたのはこちらの技術書。 VRとは VR (virtual reality)とは、 一般的にコンピュータによって生成された3D環境のシミュレーションのことです。 VR自…

【CTF】Pythonで暗号を解く?!

過去に中古で購入したとある本で見かけたCTFという、 コンピュータ分野におけるセキュリティ分野における競技があること知った。 その中からおもしろい問題を見つけたので、 今回はそちらを取り上げてみる。 使用する言語は、Python。 なかなか問題のファイ…

【vim】NERDTreeでディレクトリをツリー表示する

vim

最近Twitterなどでvimの需要が低くなってきているなんてことを見聞きします。 私も若い方なので、Atomとか近年リリースされている新しいエディタを使用することが多々あります。 操作を熟知したり、プラグイン追加したりすれば、ほんと便利に使用できますね…

【localstack】AWSサービスをローカル環境へ

少し更新が途絶えてしまいました... まあ、気を取り直してまた更新を続けます。 今回は、localstackというクラウドアプリを開発する際のテスト/モックツールです。 画像元(https://localstack.cloud/) ここに公式 こちらにDockerHubのページ 簡単に言ってし…

【Python】PandasでExcelファイルを読み込んでtsvファイルにおこす

今回はタイトル通り、 Excelファイルから新たにtsvファイルを生成させるコマンドラインツールなるものを作成しました。 よく会社でG suiteでデータをスプレッドシートなんか管理されているかと思います。 だんだんデータが溜まっていくと、開くのに時間がか…

【Go】helloworldで最も基本的な構文を抑える

Golangの"HelloWorld"で最も基本的な構文を覚えていきたいと思います。 今回参考にするのはこの技術書です! スターティングGo言語 (CodeZine BOOKS)作者: 松尾愛賀出版社/メーカー: 翔泳社発売日: 2016/04/15メディア: 単行本(ソフトカバー)この商品を含…

【Kali Linux】をインストール

以前Kali Linuxをインストールしていましたが、久々なのでまた再度インストールし直そうかと思いました。 なので、手順なんかをメモがてらメモっていきます。 環境: macOS virtualboxをインストール 以下のURLをからインストールします。 Oracle VM VirtualB…

【Python】pyenvをインストール&おまけhomebrew

pyenv pyenvとは、pythonの環境管理ツールの1つで、 バージョン管理が容易に行えます。 macにはdefaultでPythonが入っていますが、pyenvを導入することで プロジェクト単位でのヴァージョン管理などの手助けになりそうですね。 pyenvのインストール元はこち…

【Go】gvm installができん...

ちょっといつもと違うPCでGoの環境を整えていたんだけど、 何故か gvm install ができない.... ERROR: Failed to compile. Check the logs at /Users/username/.gvm/logs/go-go1.9.2-compile.log ERROR: Failed to use installed version あれーと思って調査…

【AWS】IAMユーザー&グループちゃちゃっと

AWSアカウントを作成してまずやりたいこと... ユーザーを作成することですね!はい IAM IAM グループ 新しいグループの作成 グループ名を入力 任意のポリシーをアタッチする ※ 最初はadminグループを作成したらいいかもしれません。 ポリシーは、Administrat…

【macOS】Terminalの気になった挙動

かつて使用していたmacbookがあって、久しぶりの起動して整理をしていた。 開発環境も整えようとしてTerminalとかiTermとか色々設定していたのだが、 なんか不自然だなと違和感があった。 環境変数 $TERM あんまり普段気にしたことなかった$TERMという環境変…

【Golang】vim-goをインストールしてみた

ちょっと今年はだいたいvimとgolangを学びたいと思っているので、 ひとまずvim-goをいれてみました! vim-go vim-goの詳細については、こちら。 NeoBundle vim-goを使用するのは、まずvimのプラグインを導入するためのNeoBundleを設定する必要があります。 …

【SSL/TLS通信】Tips

SSL通信(SSL/TLS通信) SSL通信とは、PKI (Public Key Infrastructure)認証方式の仕組みで実現されている、 公開鍵暗号方式を使ったインターネット上で安全にやり取りを行う公開基盤のことです。 第三者機関である認証局(Certification Authority)が電子証明…

【AWS】DynamoDB Streams & Lambdaの関係

SQSのメッセージについて更新しました(記事下部に記載) LambdaとSQS,DynamoDBの連携について、メモがてら実際試したことを書きます。 よく構成としてEC2を起動させて、SQSをポーリングしたりするかと思いますが、 近年だとLambdaのCLoudwatch Eventsなどを使…

【Python】勉強がてら簡単なWeb Scrapingやってみた

今年はPythonを少し勉強しようと思っていたので、簡単にできそうな「Web Scraping(Web スクレイピング)」のコードを書いてみた。 (勿論ググって参考参考しましたけど) コマンドラインから $ python3 filename http://domain/page みたいにして任意のURLを引…

DBの高度な機能について

近頃DBにまわりの業務を担当することが多いので、DBの業務を行うにあたって 基本的なDBの機能について復習していきます。 物理サーバでもクラウドサービスを使用していても基本的な概念を精通していることが多いので、 機能ベースで確認していきます。 基本…

メモリの管理について

MMU MMU(Memory Managemant Unit)とは、ハードウェアベースのメモリ管理ユニットです。 物理メモリと仮想メモリとのマッピングは、CPUに組み込めれているMMUで行われます。 TLM(Translation Lookaside Buffer)と呼ばれるバッファメモリもMMUの中にあります。…

OS上のプロセスについて

プロセス OS上での処理の最小単位がプロセスです。 すべての操作などはプロセスの単位で実行されると覚えておきましょう。 PID (プロセスID) プログラムの実行命令コード 変数など データ ファイルの記述子 コンテキスト(CPUの状態) スレッド プロセスには親…

TCP/IPまわりについてメモしてみた

プロトコル まずWikipediaにはこう書かれている。 プロトコル - Wikipedia もともとは「人間どうしのやりとり」 ITの分野で生まれた言葉ではないようですね、なるほど。 現在では、電子機器が相互に通信する際に用いられる通信規約としてプロトコルという言…

【AWS】EMR とDynamoDB間のキャパシティについて

とある業務でとても悩んでいたことがあります。。。 簡単に説明すると、AWSのサービスEMRを使用してDynamoDBのテーブル、レコードへ更新処理を行っていました。 大量の更新があったので、DynamoDBの書込キャパシティ(WCU)を上げて、処理に耐えられるように設…

【SQL】DBのインデックスについて

今回は第八章「SQLにおける順序」についてですが、 このブログでは、今までの記事で賄えることと、機能も進化している点があるかと思いましたので割愛させて頂きます。 本では主に今までのノウハウを用いて、ナンバリングなどを解説しています。 抑えておく…

【SQL】サブクエリの基礎

前回の続きで第七章の主要点をまとめていきたいと思います。 (※具体的なテーブル表など割愛させてもらうことが多いです) 今回は「サブクエリ」についてです。 サブクエリとは、SQLの中で作成される一時的なテーブルということを抑えましょう。 業務中では、…

【SQL】RDBの結合について

前回の続きで第六章の主要点をまとめていきたいと思います。 (※具体的なテーブル表など割愛させてもらうことが多いです) 今回は「結合(JOIN)」についてです。 正規化というプロセスを踏むために、必然的にRDBではテーブルが増えることになります。 散在する…

Alexaでお金を稼ぐことはできるのか?

スマートスピーカーといわれる、音声操作に対応したデバイスがここ数年話題になっている。 この記事では、Amazonが提供しているAmazon Alexaについて、 マネタイズができるのか、ということを調査してみた。 ※この記事の情報は、12月2017年ころのものを参考…

【本】ニューエリート グーグル流・新しい価値を生み出し世界を変える人たち

先々週くらいに書店で目についた本があります。 その時は購入しなかったのですが、気になったので翌日購入しました。 「ニューエリート グーグル流・新しい価値を生み出し世界を変える人たち」 ニューエリート グーグル流・新しい価値を生み出し世界を変える…

【SQL】SQLのループは?

前回の続きで第五章の主要点をまとめていきたいと思います。 (具体的なテーブル表など割愛させてもらうことが多いです) ※今回の五章はけっこう割愛しています。 o21o21.hatenablog.jp 今回は、SQLにおいてどうしてループがないのか? といったところを考察し…

【SQL】集約とカット

前回の続きで第四章の主要点をまとめていきたいと思います。 (具体的なテーブル表など割愛させてもらうことが多いです) o21o21.hatenablog.jp 今回は「集合指向」についておってみます。 SQLの考え方として、行単位でなく、行の集合単位でまとめて記述すると…

Luaをサクッと

Luaという拡張プログラミング言語を知ったので、とりあえずどんな書き方するのかなと思い まずサクッとLuaを動く環境を作成。 ※本当にただ動かすだけですww Luaとは オブジェクト指向プログラミング、関数型プログラミング、データ駆動型プログラミングもサ…

【SQL】SQLにおける条件分岐とは

前回の続きで第三章の主要点をまとめていきたいと思います。 (具体的なテーブル表など割愛させてもらうことが多いです) o21o21.hatenablog.jp 今回は、「条件分岐について」です。 少しSQLが書けるようになるとパフォーマンスの考慮が気になってしまいます。…

【SQL】SQLの基礎

前回の続きで第二章の主要点をまとめていきたいと思います。 (具体的なテーブル表など割愛させてもらうことが多いです) o21o21.hatenablog.jp 今回は、「SQLの基礎」です。 IT系の業務をしていることがあれば1度は絶対見聞きしたことのあるものばかりでしょ…