株式会社シベスピ 従業員ブログ

シベスピの社員ブログ。技術・想い・経験沢山書いていきます!

「判断」

こんにちは。11月に入っても、いまだ汗が止まらない古谷です。

今回は「判断」について、自分がどのように「判断」して失敗しているのかを書いてみようと思いました。

日常を考えると朝起きてから寝るまで判断しっぱなしです。
特に仕事では判断ミス、判断するタイミングを失敗して胃がきりきりすることが多くあります。どのような場合に失敗するのか振り返ってみました。

いざ書こうと思った時に、「判断」と「決断」はどう違うのだろうと気になりました。
調べてみると
判断:物事の真偽・善悪などを見極め、それについて自分の考えを定めること。
決断:意志をはっきりと決定すること。
どちらも決定するのですが、材料を集めて見極め考えを定める方にします。

1.材料を見落とす

判断する際には、判断する材料を並べて考えるのですが、そこで材料を見落としていては正しい判断ができるはずがありません。まずは落ち着いて判断する材料を集めるのがスタートになります。

2.材料の選択が間違っている

こちらも同様ですが、そもそも今回判断するにあたって必要のない情報に左右されて決めることになってしまい、失敗につながります。

3.そもそも判断していない

過去の経験上から同様の内容と決めてかかり、材料を見直すことなく決めてしまう。
他人の意見をそのまま採用してしまい、自身で考えることを放棄して決めてしまう。
期日が迫り、材料を集めずに決めてしまう。


他にもまだまだありそうですが、「何故そうしたの?そう思ったの?」と聞かれた際に答えることができない場合は3.の何も考えずに決めてしまった場合が多いですし、
そもそも立場的に知りえない情報や経緯などがあり1.の見落とした状態で判断を行い、正しい決定ができない場合もあります。あってはなりませんが、気分的、相性によって判断が鈍る場合もあるでしょう。

仕事では報告、相談して決めることが多いですが、無責任な丸投げにならないよう、どのようなプロセスで考えに至ったのかを説明できるようにする必要があります。
落ち着いて判断ができていれば、説明できますので、正しい、誤っているにかかわらず、まずは判断ができるように心がけようと思います。

【サーバー作ろう会】CentOS7でGit・GitLabのインストールと日本語化

0.はじめに

 こんにちは! サーバー作ろう会です。
 サーバー作ろう会でサーバーにGitLabを導入したのですが、その復習も兼ねて実施した手順をまとめてみようと思います。
 サーバー作ろう会での導入環境はXenServerにCentOS7を載せていたのですが、復習時はVirtualBoxにCentOS7を入れて実施しました。
 どちらも問題なく導入できました。次からが手順です。

1.Gitのインストール

(1)インストールするGitのバージョンを確認
 以下のサイトでGitのファイルが配布されています。
 
 https://mirrors.edge.kernel.org/pub/software/scm/git/
 
 今回はこの中で、git-2.17.0.tar.gzのファイルからインストールを進めます。

(2)CentOSにログイン
 インストール作業を行うため、今回はrootでログインします。
 本来であれば、rootではなく作業用ユーザーでログインし、sudoで作業を実施する方が好ましいですが、設定等が面倒なので今回は割愛してます。
 
 なお、作業はTera TermからCentOSを起動しているサーバーに接続し実施しています。
 サーバーは設定・インストールをほぼ何もしていない状態です。
 ネットワークの設定で、ipアドレスは設定しています。
※Tera Termは以下のような画面でコマンドが入力できるツールです。
f:id:chivsp:20180518122016p:plain

(3)Gitのファイルダウンロード
 wgetコマンドでファイルをダウンロードします。
 ダウンロード先は、この時参考にしていた資料と同様に「/usr/local/src/」にしています。
 
 実行コマンド:
  ※1 以下のコマンドの中で、「git-2.17.0.tar.gz」の部分はダウンロードしたいバージョンにします。
  ※2 インストール時の確認については省略していますが、[y]で進めています。

# wgetコマンドが使えるようにwgetをインストールします。
yum install wget
# 作業用のディレクトリに移動します。
cd /usr/local/src/
# Gitをダウンロードします。
wget https://www.kernel.org/pub/software/scm/git/git-2.17.0.tar.gz
# ダウンロードしたファイルが「tar.gz」で圧縮されているため、解凍します。
tar xzvf git-2.17.0.tar.gz

(4)Gitのインストール
 makeコマンドでGitをインストールします。

 実行コマンド:

# tar.gz解凍後のディレクトリに移動します。
cd git-2.17.0
# Gitのインストールに必要なツールをインストールします。
yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# ファイルのビルドに必要なツールをインストールします。
yum install gcc
# ファイルをビルドします。
make prefix=/usr/local all
# ビルドしたファイルをインストールします。
make prefix=/usr/local install
# profileの反映をします。
source /etc/profile

 
(5)インストール状況確認
 インストールされたGitのバージョンを確認します。

 実行コマンド:

# Gitのバージョンを表示する。
git --version

2.GitLabのインストール

(1)インストールするGitLabのバージョンを確認
 以下のサイトでGitLabの日本語化パッチが配布されています。
 
 https://github.com/ksoichiro/gitlab-i18n-patch
 
 今回は、日本語化対応がされているv9.1.4のインストールを進めます。
 
(2)CentOSにログイン
 「1.Gitのインストール」の続きで、引き続きrootで実施します。
 
(3)GitLabのインストール
 
 実行コマンド:
   ※1 OSがCentOS7なので、「el7」のものをインストールしています。
   ※2 GitLabインストール時はパッケージの署名がなくエラーとなるため、
      「--nogpgcheck」を付けて実行します。

# 作業用のディレクトリに移動します。
cd /usr/local/src/
# インストールに必要なパッケージのインストールをします。
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash
# GitLabをインストールします。
yum install gitlab-ce-9.1.4-ce.0.el7.x86_64 --nogpgcheck

(4)ブラウザからGitLabに接続
    
 実行コマンド:

# GitLabの設定を反映する。
gitlab-ctl reconfigure
# firewallの設定をする。
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=443/tcp --permanent
firewall-cmd --reload

 コマンド実行後、IEで画面を開くと以下のような画面が表示されます。
 ※画面を開く場合は、ブラウザでURL「http://「IPアドレス」/」を入力します。
  作業中の環境でIPアドレスは「192.168.56.101」を設定しています。
f:id:chivsp:20180518122025p:plain
この画面でパスワードを設定し、rootでログインのうえヘルプを開くと、GitLabのバージョンを確認できます。
f:id:chivsp:20180518122038p:plain

3.GitLabの日本語化

(1)日本語化パッチの適用

 実行コマンド:

# patchをインストールする。
yum install patch
# unzipをインストールする。
yum install unzip
# 作業用のディレクトリに移動する。
cd /usr/local/src/
# 日本語化パッチをダウンロードする。
wget https://github.com/ksoichiro/gitlab-i18n-patch/archive/master.zip
# ダウンロードしたファイルはzipで圧縮されているため、unzipで解凍する。
unzip master.zip
# GitLabのディレクトリに移動する。
cd /opt/gitlab/embedded/service/gitlab-rails
# 日本語化パッチを適用する。
# ※1 今回は「v9.1.4」を適用しています。
#    日本語化パッチは「/usr/local/src/」で解凍しているため、パスも「/usr/local/src」からとなっています。
patch -p1 < /usr/local/src/gitlab-i18n-patch-master/patches/v9.1.4/app_ja.patch

(2)日本語化の状況確認
  
 実行コマンド:

# GitLabの設定を反映する。
gitlab-ctl reconfigure

コマンド実行後、IEで画面を開くと以下のように日本語化された画面が表示されます。
※キャッシュクリアが正しくできていないと英語のままのため、注意です。
 キャッシュクリアをしてから画面を開きましょう!
f:id:chivsp:20180518122051p:plain

以上になります!

某資格の勉強方法について考えてみました

皆様こんにちは。鴨志田です。

シベスピでは、IPA基本情報技術者試験(以下、基本情報)の取得に積極的に取り組んでいます。
報奨制度もあります! 逆に取得できないと、いろいろ言われます。。。

大学時代には、私、資格ゲッターズという様々な資格取得に取り組むサークルに所属しておりましたので、僭越ながら資格取得全般の勉強方法や考え方を、基本情報寄りにご紹介しようと思います。
合格の一助になれば、と以下書いております。

ゴールまでの自分の立ち位置を知ろう

資格取得・試験合格というゴールに向かうにあたって、どれくらいの道のりなのかを知りましょう。
各資格の所要勉強時間を調べ、確保できる時間から逆算して試験の〇月前をスタート地点とするのが簡単です。
「過去に少しは勉強したよ。過去に試験を受けたよ。」という人であれば、直近の試験結果をもとに、合格までのギャップを測ります。
これによって「私は、あと〇ヶ月で、〇時間勉強して、午前問題をあと〇点UPして(6割と言わず余裕を持って)7割取得、午後問題を〇点UPして7割取得して、合格する」という目標と指針を立てます。

点数を上げるための勉強をしよう

点数を上げるための勉強で一番効果的なのは、過去問題を解けるようにすることです。
分厚いテキスト全体を網羅的に理解するよりも、出題された近辺を理解するほうが近道です。(※実践的な知識としては正しい方法ではないかもしれませんが。)
資格にもよりますが、選択式では、大体3、4割は、過去問題から文章も答えもそのまま出題されます。また、計算が少し変わっただけだったり、過去問題の周辺で解説されている内容が出題されたりもします。それらを合算すると、過去問題とその周辺理解だけで十分に合格率に達することが出来ます。

過去問題集(問題とすぐ直後に解説がある)と、テキストを用意するのがおすすめです。問題を見て、何となく答えを予測して、意味不明ならすぐ解説を読みます。解説を読んで、4択であれば、3つの選択肢を消す理由と、答えを導く理由を確認します。
その後、テキストから答えの用語が記載されている箇所を探して、用語の周辺も理解しましょう。

量があるので多少の根気はいりますが、この繰り返しで選択式の問題はクリアできると思います!
試験数回分~数年分実施することが望ましいです。

ゴールまでの位置を再確認しよう

今一度過去問を一回分解いてみて、今度は分野別の弱点を見つけましょう。
基本情報の午前問題であれば、ストラテジ・マネジメント・テクノロジで弱いところはどこか。もっと明らかならデータベースとかネットワーク、法務などの分類まで把握しましょう。
午後問題も同様です。
苦手な分野の勉強は、苦手なだけあって少し大変ですが、少しやるだけで点数が伸びる箇所でもあります。

直前でもあきらめず午後問題対策

午後問題は、文章を全部見ないといけないので、解くのが億劫です。
ただ、解かなくてもよいです。過去問の答えとその問題を見るだけでも、傾向がつかめます。
これは試験の前日でも十分間に合いますし、得点に直結します。
出来れば、選択する問題ごとに試験5~10回分くらいは見るとよいと思います。
きちんと全部文章を読んで解くのが理想ですが、上記をやらないよりはやったほうが余程良いです。

何より計画的に

どんなに早く走れても、時間がないと長い距離は走れません。
ここまでの作業を一日ですべてやることも出来ません。
目標の話に戻ってしまいますが、あらかじめ計画表を作って、「このくらいの時期には、この分野で合格点を取りたいな。。。」というマイルストーンも設けましょう。
マイルストーンがあると、直前に慌てるのではなく、途中で慌てることが出来ます。途中であれば、まだ挽回の余地があります。

周りの人にコミットメントしたり、得点状況を報告するのも効果的です。
どうせなら試験に振り回されるより、試験をコントロールしてやりましょう。

秋の試験が終わったばかりで、一息つきたいところでもありますが、計画を立てるだけなら今以上のタイミングはありません。
仮に今月2時間だけやる計画でも、やらないよりテキストを開いたほうがゴールに近づいた分偉いです。
「のんびりやってたけど、受かっちゃったぜ」を目指してみるのもいかがでしょうか。

JavaのJDK有償化について

こんにちは、岡崎です。

先日、Javaに詳しい友人と飲んでいたときに「Java有償になるよ!」と聞きました。
皆さんはご存じでしたか。

私は、オープン系言語で「そんなことあるの?」ってなったので、いろいろと調べてみました。

JavaJDKについて

Java有償化の話をする前に、JDKについて簡単に紹介しておきます。

JavaJDKには、「Oracle JDK」と「OpenJDK」という2つのJDKがあります。
上記2つから派生した「IBM SDK」、「Java Technology Edition」というのもあるようですが、今回は「Oracle JDK」と「OpenJDK」について紹介します。

Oracle JDK」は、オラクル社が提供するもので、
「OpenJDK」は、オープンソースです。

はい、本当に簡単な紹介です。
ここで言いたかったのは、2つのJDKがあるよ。と、いうところだったので、詳しくは割愛します。
気になる方は、ググってみてください。

今までは、どちらのJDKも無償で使えていました。

JavaJDK有償化ってどういうこと?

では本題に入っていきましょう。

現在(2018年10月現在)のJavaの最新バージョンは、2018年9月26日にリリースされたJava11です。

このJava11から、Oracleと有償サポート契約を結んだユーザーでなければJDKが使用できないようになるようです。

厳密には、開発する(プログラムソースを書く)こと自体はできます。
ダウンロードできたと、記事に書いている方がいました。
商用目的のシステムで使用する場合に、おカネを払わないとライセンス契約違反となるようです。

勉強は無料でできるようですよ!

また、先ほど紹介したJDKのうち「Oracle JDK」のみが有償サポート契約の対象のようです。
つまり「OpenJDK」は、今までどおり無償で使えるということです。

機能や品質は「Oracle JDK」と「OpenJDK」で違いがないようなので、商用目的かつ無償で使い続ける場合は、「OpenJDK」を使えば問題なそうです。

Java10以前のバージョンはどうなるの?

Java11から有償ということで、Java10以前のバージョンのサポートが、いつまで保障されるのかが気になったので、こちらも調べてみました。

普通にサポート終了していました。

Java11のリリースタイミングでJava10のサポートは終了。
Java9も同様にJava10のリリースタイミングでサポートが終了しています。

Java8だけは、2019年1月まで無償のままサポートが提供されるようです。
Java8からJava9にバージョンアップしたときに大きな変更があったため、Java8からJava9以降のバージョンにするための難易度を考慮した上の期間だそうです。

Java8とJava9の間に大きな変更があったんですね。
別の勉強にもなりました。

まとめ

Javaというプログラム言語は多くのシステムで使用されているため、有償化になったら社会問題レベルではないかと思ったのですが、無償で使い続けることもできそうですね。

我々、システムエンジニアとしてはお仕事が増えそうな案件だったのですが、少し残念です。


そういえば、Javaに続いて、MySQLも有償化するのではないかと予想している方もいました。

Oracle社のビジネス恐るべしですね。

Gitサーバー構築 CentOS7インストールまで

今回はサーバー作ろう会として、
Gitサーバーを構築していくことになりましたので、その作業過程を記事にしていきたいと思います。

一度目のGitサーバー構築

構築にあたって、もともとあったXenServerへの仮想OSインストールから実施していくことになりました。
しかしXenServer上でストレージが認識されず、構築ができませんでした。
認識されなかった原因はカーネルをインストール後アップデートしていなかったこと、
またはリポジトリのパスが違っていた事だと考えられます。

Xenの再構築

作業中には原因が特定できなかったこともあり、XenServerを再構築していくことになりました。
まず、ホストサーバーに対してCentOS7をインストールを実施します。
続いてインストールしたCentOS7にXenServerのインストールを実施します。
しかし、手順書と実際の画面が異なっていてXenのインストールをすることが出来ませんでした。

ここまでが一度目の作業となります。
二度目の作業に備え、各々ストレージが認識されなかった理由や、手順書と実際の画面が異なっていた原因を調べて来ることになりました。

二度目のGitサーバー構築

二度目はホストサーバにXenをインストールから始めていきます。

キーボードの選択画面が表示されるので、使用するキーボード言語を選択します。
次にインストールを続行して良いか?と聞かれますので、OKを選択します。
enterキーを押すとライセンスに関しての確認画面が出ますので、「Accept EULA」を選択しEnter。
すると、インストール先のストレージを選択する画面になるので、選択しEnter。
次はインストール元のメディアを選択する画面になります。今回はDVDから行うので、「Local media」を選択し「OK」。
ここから先はrootのパスワード設定、固定IPアドレスの設定を行い、ホスト、DNSサーバ、タイムゾーン、NTPサーバなど
自身の環境に合わせて設定します。
そうするとインストールを行うか確認画面が出るので、「Install XenServer」を選択。
f:id:chivsp:20180321203027j:plain
インストールが成功しました。
f:id:chivsp:20180321201124j:plain
次はインストールしたXenに、CentOS7をインストールします。

f:id:chivsp:20180321201119j:plain
無事にCentOS7のインストールが成功しました。

残りの作業はGitとGitLabを入れる作業になります。こちらは別の記事で紹介していきます。

私のタスク管理の方法

シベスピに入社してから、もうすぐ1年が経とうとしています。
時の流れって早いなーとしみじみ感じているHirokiです。

さて今回は、私が普段行っているタスクの管理方法を書いていきたいと思います。
元々は他の方がやっていた方法を聞いて実践していきながら自分なりにアレンジしたものになります。

タスク管理が上手くいかず締切を過ぎてしまう、依頼されたものと違う事をやってしまうといった方の参考になれば幸いです。

方法は単純で、自分に依頼される業務をメモ帳やエクセル表に書き出す(可視化する)だけです。
タスク管理ソフト等を使っても良いと思います。

可視化する際に私が記載している内容としては、依頼日・依頼内容・目的・ゴール(依頼者が求めているもの)・締切を書いています
ゴールに関しては、依頼者と齟齬がないよう事前に認識合わせをしてから作業に取り掛かります。

これらを怠ると、依頼が複数あったときに締切を過ぎてしまう、依頼自体を忘れてしまう、また、別の作業を行っている間に依頼内容がうろ覚えになり、依頼者が求めていたものとズレた作業を行ってしまう、といった事態に繋がります。

またタスクを書き出した後にタスクを実施していきますが、その進捗状況を朝・昼・夕の1日3回書くようにしています。
進捗状況を書いて置くことで、作業内容がゴールとズレていないか、締切までに間に合うか等を確認しながら作業を進めることが出来ます。
その他にも作業完了後に、指摘された点・反省点・今後の対策方法等も書いておき、同じ過ちを繰り返さないよう気をつけています。
この方法を実施する事で、作業漏れ・スケジュール遅延等はほとんど起こしていないです。(今のところは)

タスク管理が苦手な方は是非一度試してみてください。

意志の疎通について

久々の投稿になります。山田です。

先日、意志の疎通の仕方についてのお話を聞いたので、
理解を深めるためにブログに書いてみようと思いました。

この業界は会話することが多く、正しく相手の意図を読み取ったり
自分の意図を伝えなければいけないタイミングが多くあります。
私が気を付けている箇所について書いていきたいと思います。

落ち着いて話し合いをする

先日聞いたお話でも「感情論」という言葉が出てきましたが、お互い感情的になってしまうと話を受け入れにくくなってしまうと思います。
話の着地点を明確にし、話が逸れてしまっている場合には、方向修正をするくらい落ち着けるといいと思います。

正しく相手の意図を読み取る

会話をしていると意見が割れる時が多くあると思います。そういう時に、私は出来るだけ相手の主張を理解するようにしています。発言は出来るだけ最後まで聞き、聞いたうえでわからない部分は詳しく聞くようにしています。
相手にこちらの意図を伝えるには、相手がどういった意図を伝えようとしていて、こちらのどの部分に納得いってないのかを理解することが必要だと思います。
頭ごなしに言われているよりも、お互いに意見をすり合わせているとわかっているほうが受け入れやすいと思います。

内容の確認を行う

相手から発信された情報は、自分の中の言葉に直して確認するようにしています。ひとつ前の正しく相手の意図を読み取ると似た内容になってしまいますが、相手の発信した情報が自分の理解と違う、ということはよくあります。お互い正しく情報を伝え合ったと思ったのにミスになってしまうパターンです。
同じ言葉でも意味や目的が違ってくる場合があるので、必ず相手に別の言葉で確認しなおすことで、認識祖語が生まれにくくなります。


聞いたお話とは少し方向の違う記事になってしまいましたが、意志の疎通について私が気を付けていることは以上です。比較的落ち着いて話ができる方だと思っているので、相手とよく勘違いが生まれてしまう人は意識してもらえるといいかもしれません。