「出来事」カテゴリーアーカイブ

インフラの重要性

ここ最近の、知床観光船の話。

通信機器が動かなかったり、船が破損していたりとか。

インフラを軽視すると講じたいが起こるよ、

と言うことがよく分かった事件でした。

オイラの仕事でもインフラ関連の業務が増えてきて(AWSで開発しているので)

ポチポチやって設定を変えていく、という仕事じゃ無くて、

顧客の要求で設定を変えたり、

トラブルが発生したらその復旧をしたりするのもインフラのお仕事です。

とにもかくにも、我々ITエンジニアはインフラエンジニアがいないと仕事できません。

みなさんの日常にも例えてみましょうか。

皆さんの生活で言うと、電気、水道、ガス、スマホの電波などがインフラに相当します。

これらがどれか1つでも無くなると大変ですよね?

そして、インフラ投資をケチる貴方の会社。

間違いなくブラックです。

ゴールデンウィーク2022!

今年もGWが始まりました!

今年のGWは特に行動制限はありません。

そして、北海道は今が桜の季節です。

まさしく満開。

まず、今日は4/29、羊・肉ということでジンギスカンの日。

お馴染みのロイン亭に行ってきます。

そして、今年はもう一つ大きな行動を起こします。

大自然の中で2泊3日過ごそうかと思います。

ただ、何をするかはノープラン。

まぁ、自然の中で読書しながら過ごすのも悪くないかなって。

それでは皆さんも、よいGWをお過ごしくださいませ~

RUST勉強中、4/23の積み上げ

前回の続き。

逆ポーランド記法の計算処理を実装します。

use clap::Parser;
use std::fs::File;
use std::io::{stdin, BufRead, BufReader};

#[derive(Parser, Debug)]
#[clap(
    name = "My RPM program",
    version = "1.0.0",
    author = "Your name",
    about = "Super awesome sample RPM calculator"
)]
struct Opts {
    #[clap(short, long)]
    verbose: bool,

    #[clap(name = "FILE")]
    formula_file: Option<String>,
}

struct RpnCalculator(bool);

impl RpnCalculator {
    pub fn new(verbose: bool) -> Self {
        Self(verbose)
    }

    pub fn eval(&self, formula: &str) -> i32 {
        let mut tokens = formula.split_whitespace().rev().collect::<Vec<_>>();
        self.eval_inner(&mut tokens)
    }

    fn eval_inner(&self, tokens: &mut Vec<&str>) -> i32 {
        let mut stack = Vec::new();

        while let Some(token) = tokens.pop() {
            if let Ok(x) = token.parse::<i32>() {
                stack.push(x);
            } else {
                let y = stack.pop().expect("invalid syntax");
                let x = stack.pop().expect("invalid syntax");
                let res = match token {
                    "+" => x + y,
                    "-" => x - y,
                    "*" => x * y,
                    "/" => x / y,
                    "%" => x % y,
                    _ => panic!("invalid token"),
                };
                stack.push(res);
            }

            if self.0 {
                println!("{:?} {:?}", tokens, stack);
            }
        }

        if stack.len() == 1 {
            stack[0]
        } else {
            panic!("invalid syntax")
        }
    }
}

fn main() {
    let opts = Opts::parse();

    if let Some(path) = opts.formula_file {
        // ファイルから読み出す
        let f = File::open(path).unwrap();
        let reader = BufReader::new(f);
        run(reader, opts.verbose);
    } else {
        // 標準入力から読み出す
        let stdin = stdin();
        let reader = stdin.lock();
        run(reader, opts.verbose);
    }
}

fn run<R: BufRead>(reader: R, verbose: bool) {
    let calc = RpnCalculator::new(verbose);

    for line in reader.lines() {
        let line = line.unwrap();
        let answer = calc.eval(&line);
        println!("{}", answer);
    }
}
$ cargo run -- -v
   Compiling samplecli v0.1.0 (/home/taki/rust/samplecli)
    Finished dev [unoptimized + debuginfo] target(s) in 0.76s
     Running `target/debug/samplecli -v`
1 1 1 + +
["+", "+", "1", "1"] [1]
["+", "+", "1"] [1, 1]
["+", "+"] [1, 1, 1]
["+"] [1, 2]
[] [3]
3

電動歯ブラシ、導入。

ついに我が家にも電動歯ブラシを導入しました。

歯ブラシの部分を歯と歯茎の間に当ててスイッチオンで、

振動で歯を磨いてくれます。

あとは、なでるようにブラシを移動させていくだけ。

手動だと、腕が疲れたり、力が入りすぎて歯を痛めたりするので、

力の加減もしやすい、というメリットもあります。

それが6000円程度の投資でできるとは。

ほー。

もっと早く使い始めても良かったな。

このPCは相当ヤバイ物だったのか?

こちらの記事で紹介した、

楽天市場で購入した中古のノートPC。

吉田製作所のチャンネルがこんな動画を出していたんですが、

たぶん、今回購入したのも、この手のヤツです。

ただ、オイラの場合は、メモリ増設のSSD換装したものなので、

動画の中でも、パーツを交換すればある程度は快適に動くとのことでした。

そもそも、このショップの出品物は価格帯によってスペックが違いますからね。

吉田さんの購入したのは最低ランクのものなのでしょう。

オイラのは13800円のものがベースですからね。

CPUも第四世代のCore i3ですからね。

だいたいこのあたりの世代のものは、まだまだ職場でも現役だったりするので。

そこら辺も見込んだ上で、オイラは購入しました。

もちろん後悔していません。

あ、いや、楽天カードが限度額に達した・・・

どうせ歩くならポイントを貯めよう。

ダイエットのために、週末はできるだけ歩こう、としているのですが、

どうせ歩くなら、歩いた分だけポイントになる、というアプリもありまして、

こういうのは積極的に活用した方が良いです。

運動のモチベーション維持にもなりますしね。

トリマ

移動した距離と歩いた歩数がタンクに貯められ、ポイントに交換することができます。

広告を見ればさらにポイントが。

貯めたポイントは電子マネーなどに交換できます。

実際オイラもこのポイントでGoogle Playギフトに交換してゲームに使ったりしています。

招待コードあります。招待コード【0TbwTN8Ct】

dヘルスケア

こちらはドコモ提供のヘルスケアアプリです。

このアプリはデイリーミッションが用意されていまして、

そのミッションをクリアすると、dポイントが貰えます。

オイラは有料版を使用しているのですが、有料版の方がポイントが貯まりやすいらしい。

獲得したポイントはそのままお買い物に使用することができるので、かなりお得です。

【KEYKEEPA】購入しました。

こちらの記事で紹介したカッコイイキーホルダー

買いました。

一番安いヤツです。

デフォルトで栓抜きも付いています。

オプションでUSBメモリやナイフも装着できるみたい。

こんな感じで鍵を取り付けます。

デフォの状態でも沢山の鍵を取り付けられそうです。

一番安いクラシックモデルでしたが、かなりしっかりできていて、しかもジャラジャラしません。

これだよ、欲しかったのは。

言い買い物した!

サブPC、購入

サブ機が欲しいと思ったのは、

メインPCをアップグレードさせようとして、自作PCのパーツを購入したものの、

見事に失敗し、メインPCも使えなくなってしまった時。

メインPC(Windows)はお仕事でも週末に使用するので、

(会社に週報とか提出するのにExcelが必要)

Windows PCが無いとお仕事に支障が出てしまうのです。

で、そのときは運良くLinux PCがあったので、

急遽そちらのPCでインターネットに接続し、

Windows PCを発注することができたのですが、

それでも少しの空白期間ができてしまうので、

そうならないように、サブ機を用意するべし、と思ったわけです。

とりあえずWindowsやOfficeが使えればいいやーでもそれなりにサクサク動くスペックが欲しいなぁ

と思って、探してみたところ、

楽天市場でこんなのを見つけました。


機種はお任せですが、ある程度のスペックもカスタマイズできる中古PCを購入することができます。

ここで、メモリを8GB、ストレージをSSD256GBに換装してもらう形で発注しました。

届いたのは富士通のPCでした。

Lenovoじゃなくて良かった。

初期状態ですぐに使用できる状態になっていたので、

アカウント連携してセットアップ。

当然ながらWindows11の要件を満たしていません。

🤔Windows10のサポートが切れたら、会社のPCもスペックアップしてくれるのだろうか

少し画面が窮屈だと思ってたら、解像度がフルHDより少し小さかったです。

でも、Officeもサクサク動くので、サブPCには十分です。

あくまでもサブ機なので、使用する機会は少ないかもしれませんが、

ノートPCなので、外で作業するのにも使えると思います。

良い買い物をしたと思います。

【デリバリー】薩摩地鶏と地酒のお店 地鶏亭仁

ネタが無くなってきたので、デリバリーの写真を上げます。

ちなみに、オイラのデリバリーのエリアは札幌市白石区、南郷通付近です。

こちらは地鶏のたたき(たまり醤油)

少しレアです。

一般的に鶏肉の生食は危険なのですが、どこかで免疫力の弱い方は避けてくださいって書いてあった気がする。

スーパーの鶏肉では絶対真似するなよ。

オイラは特に腹痛とかなかったので、セーフです。

もも焼き(塩)です。

全体的に鶏皮の部分がコリコリして、自分はあまり好きでは無かった・・・。

まぁ、こういう日もあるさ。

【悲報】新人君が現場を去ります。

まだ現場に入ってきて間もないのですが、

本人のスキルが不十分と判断され、現場を去ることになりました。

言いたいところは沢山あるのですが、

大きく分けて2つかな。

プログラミング初心者だった

自分が聞いた話では、

開発未経験ではあるものの

スクールでJavaのコーディングを学んでいたという話だったんですが、

実際蓋を開けてみると、プログラミングも勉強中で、

しかもテキストだけ読んで、実際に組んだことがない、とのこと。

実際現場でもコードが組めず、現場を困惑させていました。

学ぶ姿勢が見られない

まず最初にシステムや開発環境についての説明を行うのですが、

それらを全く理解していない。

一生懸命メモを取っているのだけれども、

そのメモを生かせていない。

そして、自ら調べようともせず、指示が無ければ何もしていない、という始末。

何が分からないのかも分からないという状況なのだろうか。

とにかく、この状況が続くので、教える側の現場の負担も大きくなってきたという状況。

やっぱり、最低限のことはできて欲しい

まず、プログラミングは、コードぐらいは書けて欲しいし、

現場のシステムのこともきちんと理解してほしい。

まぁ、正直なところ、この状態では開発の現場に入ったとしても何もできないということ。

使い物になるためには、社内での教育が必要だろう。

ただ、そのためのコストをかけることができるかどうか、というのが、小さい会社の問題ではある。

そして、こんなド素人を現場に送り込むのは止めて欲しい。

という愚痴でした。