chiwata’s blog

たまに技術の話をします。

WSLのUbuntuでVagrantを使いたい

表題の通りです。

ちなみに私はhyper-vを有効にしていた状態だとうまくいかなかったので無効にしました、 そんなの知らんという人はそのままで大丈夫ですが、有効にした記憶がある人は無効にしてください

virtualboxWindows側にインストールして置いて下さい

vagrantをインストールします

$ curl -LO https://releases.hashicorp.com/vagrant/2.2.4/vagrant_2.2.4_x86_64.deb 
$ sudo dpkg -i vagrant_2.2.4_x86_64.deb

.bashrcにいろいろ追記します

export VAGRANT_WSL_WINDOWS_ACCESS_USER=user
export VAGRANT_WSL_ENABLE_WINDOWS_ACCESS="1"
export VAGRANT_WSL_WINDOWS_ACCESS_USER_HOME_PATH="/mnt/c/Users/user" 
export PATH="$PATH:/mnt/c/Program Files/Oracle/VirtualBox"
export PATH="$PATH:/mnt/c/Windows/System32/"
export PATH="$PATH:/mnt/c/Windows/System32/WindowsPowerShell/v1.0/"  

一番上の行は各自の環境に合わせてwindowsのユーザー名を入力してください windowsのユーザー名はcmdでwhoamiコマンドを打てばわかります

C:\Users\user>whoami
desktop-v07tv83\user

vagrantを起動してみます

$ vagrant init centos/7
$ vagrant up

hyper-vを有効にしたままにしてると駄目なことに気が付かずはまってしまったあほなので、反省しております。

GMOペパボを退職しました。

まず、お世話になった皆様に御礼を申し上げます。
大変お世話になりました。ありがとうございました。

ペパボでの仕事内容

僕はホスティング事業部インフラチームで2017年5月から2018年12月まで、1年8ヶ月ほどお世話になっていました。 主な仕事内容は、サーバの構築やデータの回収、たまにコードを書いたりしながら、日々の業務のお手伝いをさせていただきました。  

退職理由

大学を卒業するためです。 留年したら帰ってきます!と言いましたが、流石に留年は怒られるので卒業できるように頑張ります。

ペパボに入ったきっかけ

大学サークルの大先輩から、「興味あるなら見に来てみたら?」と誘われたことが始まりです。 ペパボのエンジニアさんとお話しさせていただき、ペパボって面白そう!と思って入社しました。

ペパボで働いた感想

全くの無知の状態から入社して、毎日いろいろな事を教えてもらいました。 本当にご迷惑をおかけすることの方が多かったと思います。 知らないことがたくさんあって、最後の日まで質問をしていました。 少しずつレベルアップ出来ていたと思います。
これからも、インフラチームの皆さんに少しでも追いつけるように、頑張ります。
ペパボ で働かせて頂いた期間、大変なこともありましたが最高に楽しかったです。
またいつか、ペパボ に帰ってきたい!と思います。

これから

来年の春からはGMOインターネットでインフラエンジニアとして働きます。
ペパボを離れることにはなりましたが、来年からもGMOグループのパートナーです。
そんなこんなで来年からは東京勤務です。 初一人暮らしですが、いまだに住むところを決めていません。少し焦っています。

最後に

ペパボ で働いてた間、超最高でした!

 

函館

はこだて未来大学さんにお邪魔するために、福岡から函館へ、
今回は福岡工業大の先生の助手として

新千歳経由と言う若干戻るルートで向かうことに
移動時間は四時間少々、大変疲れた

1日目は移動だけ、

2日目ははこだて未来大学で、多くの先生にご挨拶させていただき、未来大学の先生が主催されている研究室イベントに参加させていただきました。
人生初羊肉、北海道では鳥高くて豚より安い、たまに食べるけど、別に日頃は買わないかなーと、そんな食品だそうです。
羊肉って、福岡だと結構高いんですよね。地元のものはやはり安く手に入るのだろうか。

3日目は函館観光、函館駅前よりも、五稜郭周辺の方が栄えてるんですね。イカ、食べましたよ。美味しかった。
今年は不漁だからあんまりないかもねーと出発時は話していたのですが、難なくありつくことができてよかった。

あ、あと、函館山
山頂で夜景を見ながら、「なんで私たちはおっさん二人できているのだ。。。」と虚しくなりましたが
ものすごい絶景でした、函館の形がしっかりわかる夜景、三大夜景に数えられるだけはあるなと。
次は女の子とデートで来たいなと、男二人固く心に決め、下山。
登山バス、ガイドさんが様々な観光情報を教えてくださるので、おすすめです。

さて、いまから福岡に帰ります。月曜から普通にアルバイト生活です。
飛行機、長時間はきついなぁ。。。

福岡工業大学 情報工学科 就業力育成講座レポート!

私の通っている大学(福岡工業大学)には三年生の実験の時間を一コマ使った

「就業力育成講座」という講義があります。

この講義では、様々な企業の方に来ていただき、

「実際にどのような仕事をされているか」

「仕事をする上で何を大事にしているか」

「新卒者に何を期待しているか」

を教えていただき、三年生の就職活動に対する意識を高めると言った内容の講義です。



今回はこの講義で、僕が所属するGMOペパボ株式会社より、エンジニア2名に来ていただき、講演をしていただきました!(僕は大学生アルバイトです)

後輩に自分の好きな会社のことを知ってもらい、意識を高めてもらえたという嬉しさと、 お二人の話を聞いて、僕も考えさせられることがあり、これからもどんどん考えてどんどんアウトプットしていこうという気持ちになりました!

講演をしていただいた Uchio KONDO (@udzura) | Twitter さん、 りょーま (@ryoma_123) | Twitter さん、そして様々な点でご協力していただいた びすこ (@biscoos) | Twitter さんに感謝!



追記 (2018/6/30)

りょーまさんも記事を書いてくださりました!

ryoma123.hatenablog.com

文字列から実数を取得する(C++)

後輩から「C++で、キーボード入力関数を作りたいんですけど、どうしたらいいですか?」と聞かれたので久しぶりにC++を書くことに。

ただお手伝いで書いただけだと勿体無いのでブログにする。

仕様は以下のようにして欲しいらしい。

引数: a,b
入力: a,b
戻り値: 正常なら 0 異常なら -1を返す

最終的に僕が書いたのはこちら

#include <iostream>
#include <sstream>
#include <vector>
using namespace std;

int keyin_double(double &a,double &b){
    int count = 0;
    string str;
    string buf;
    vector<string> input_buf;
    stringstream ss;
    try{
        if( ! ( getline ( cin , str ) ) ) {
            throw -1;
        }
        ss << str ;
        while ( getline (ss, buf, ',') ) {
            input_buf.push_back(buf);
            count++;
        }
        if( ! (count == 2 ) ){
            throw -2;
        }
        a = stod(input_buf[0]);
        b = stod(input_buf[1]);
    }
    catch(int error){
        cout << "ERROR! unexpected value was entered!" << endl;
        cout << "error code" << error << endl;
        return -1;
    }
    catch (const invalid_argument) {
        cout << "ERROR!invalid argument" << endl;
        return -1;
    }
    catch (const out_of_range) {
        cout << "ERROR!out of range" << endl;
        return -1;
    }
    return 0;
}

一行入力受け付けて、カンマ区切りでsprit、型があってないとき、入力された数がおかしい時時、引数が不正な時、引数が許容範囲外の時にエラーを返すようにする。

てきとーなmainを書いて、呼んで実行

[chiwata@HideyukiChiwatanoMacBook-Pro keyboard][keyboard_cout_input *]$ ./a.out
12.1,11.1
12.1 11.1
[chiwata@HideyukiChiwatanoMacBook-Pro keyboard][keyboard_cout_input *]$ ./a.out
11.1,22.2
11.1 22.2
[chiwata@HideyukiChiwatanoMacBook-Pro keyboard][keyboard_cout_input *]$ ./a.out
aa,bb
ERROR!invalid argument
0 0
[chiwata@HideyukiChiwatanoMacBook-Pro keyboard][keyboard_cout_input *]$ ./a.out
111,222,333
ERROR! unexpected value was entered!
error code-2
0 0

とりあえずこんなもんかね。。 getlineで文字列分割できるとしらなかったので、勉強になった。

スクリプトで月末の日を調べる

バイトで、半年前から先月まで、一ヶ月ごとのデータを調べる機会があった。

範囲を指定するときに、引数で月初月末の日付を渡していたが、なんかカッコ悪い。

せっかくの機会なのでどうやったら調べれるか試してみる。

環境はvirtualbox上のCentos7

dateコマンドの[d]オプションを使えば、いろいろできそう

[vagrant@localhost ~]$ date +'%Y-%m-%d' -d "2 month ago"
2018-03-27

なるほど

なら、月初の1日前を求めれば最終日になりそう(月初は絶対に1日だけど、月末は31,30,28などいろんなパターンがあるから)

[vagrant@localhost ~]$ date +'%Y-%m-%d' -d "2 month ago `date +'%Y-%m-01'` 1 days ago"
2018-02-28

ほうほう

で、何年何月からってやりたいから

[vagrant@localhost ~]$ date +%Y-%m-%d -d  "`date +'2017-03-01'` 1 days ago"
2017-02-28

で、あとはこれをいい感じにスクリプトにして

[vagrant@localhost ~]$ cat date_check.sh
#!/bin/bash

date +%Y-%m-%d -d  "`date +'$1-$2-01'` 1 days ago"

[vagrant@localhost ~]$ ./date_check.sh 2017 03
date: `$1-$2-01 1 days ago' は無効な日付です

あれ、変数が展開されない。。。。

調べたら、シングルクオートは変数展開されないらしい。 そして、入力した月の最終日がしりたいので、月に1をたしてから計算しよう

#!/bin/bash

YEAR=$1
MONTH=$(($2+1))

date +%Y-%m-%d -d  "`date +"$YEAR-$MONTH-01"` 1 days ago"
[vagrant@localhost ~]$ ./date_check.sh 2017 03
2017-03-31

できたできた。