2022新入社員ブログ 山本第2回

改めましてこんにちは!2022年度入社の山本慎太郎と申します!
(前回のブログの、挨拶が抜けていたみたいで…失礼いたしました…)

早速ですが、ブログ第2回目は、研修ってどんなことを学んだの?というテーマで書いていきたいと思います!

前回のブログにも書いた通り、1日のスケジュールでは座学がほとんどです。

・IT基礎:1日

・Linux入門:2日

・プログラミング入門:3日

・MySQL:3日

・PHPプログラミング:7日

・Laravel:7日

・Git入門:1日

・開発演習:10日

↑のようなカリキュラムで授業は進んでいきます。初日はIT基礎という名前の通り、そもそもITとは何ぞや?というように、基本的なところから進んでいきました。

2日目からはリナックスについてです。リナックスとはWindowsのようなOSの一つですが、Windowsと異なるのは、コマンドでコンピューターの操作を行います。私は(というか皆さんも?)今までWindowsを使うことが多かったので、Linuxコマンドの操作にあまりピンとこなかったのですが、今私がやっているOJT研修の案件では、Linuxのコマンドを操作したりと、業務では何かと使うことが多いOSなのです。

そして、次にプログラミングに入門です。HTML、CSS、Javascriptを本当にプログラミングの基礎的なところを学びます。

次に、MySQLというデータベースについて3日間学んでいきます。データベースの更新、新規作成、検索などのやり方を学びます。

PHPプログラミングでは、データベースとWebページの連携を行うようなプログラムを作ったりと、プログラム入門よりも本格的になってきました。

laravelは、PHPのフレームワークと呼ばれるもので、一言でいうならばPHPプログラミングを楽にする道具のようなものです。PHPで難しいと思っていたものが、laravel使えば1発で解決!!みたいな感じです。

 gitを1日学んだのち、最後の10日間は、研修の受講生でチームを組んで、開発演習です。

私たちのクラスは、同期のHさんや別会社の方々合わせて6名のクラスだったので、3人組の2チームに分かれて開発演習を行いました。phpのフレームワークであるlaravelを使って、1つのwebサイト作ります。

私たちの班は「教科書売買システム」を作ることになりました。画面の遷移や、レイアウト作成、DBの設計、細かい仕様の定義など、自分たちで決めます。サイトの実装に入る前に、設計や、その資料の作成などやることたくさんです。数日かけてどんなシステムを作るのか決めて、ようやく実装に入ります。

いざ、実装に入ると今度はエラーとの闘い…自分たちで解決できないものは、講師の方のヒント(答え)ももらいながら、何とか完成にまで導きました。

そして、最後は企業の方向けに発表会をして終了!!

そんな感じで2か月はあっという間に流れていきました。

研修を終えて感じたことは、とにかく早い!とにかく多い!

とにかく早く、非常に覚えることの多い2か月間でしたが、得られるものは大きかったと思います。入社前はまともに書けなかったプログラムが書けるようになり、自分たちで、1つのサイトを完成させられるようになったのだから。

入社後の2か月の外部研修は終わり、6月からは社内での学習期間となります。次回以降はそのことについても書いていきたいと思います。

それでは失礼いたします。

最後まで読んでいただきありがとうございました!

鹿倉の新入社員活動記録・第2回

こんにちは! 社会人、1年目の鹿倉 圭斗です。

今回は前回の外部研修に続いて昨年5月に行われた、研修内容の内容を更新します。

★5月の研修内容

■研修内容

 5月の研修内容は、phpのフレームワークの1つ、Laravelとバージョン管理入門であるgitを学びました。また、5月には、研修の理解度を図る為に中間テストと終了テストを実施しました。

 内容としては、研修内容からほとんど出題されました。テキストを読んだり、プログラムを書いたりして復習をしていれば問題ないですよ。

 5月下旬の2週間は、研修の集大成のシステム開発演習が有りますが、今回では収まり切れないので、次回の3回目にピックアップします。お楽しみに!?

■Laravelを始めて触りました。

 4月でPHPの研修が終わり、Laravelの研修を行いました。Laravelと聞いて最初は、何だろう、難しいそうと内心怖がっていました。ಥ_ಥ

 しかし、Laravelを使用してみるとPHPの時と比べて便利だと実感しました。

 例えば、ページリンクを設定する際、phpでは、データベースの接続から前ページ、次ページのコードを一からコーディングしなければなりません。一方でLaravelでは、データベース自動生成があるので数行のコーディングでページリンクを実装する事が出来ます。

 この様にLaravelでは、phpで実装に時間が掛かる所を短縮する事が出来ます。実際にページリンクを実施してみたら、本当に楽でまるで、魔法使いになったと実感しました。?‍♂️

 Laravelとphpと比べる事で、Laravelで何が便利なのかを学習することでLaravelを深く学べるので比較するのもいいかもしれませんね。?

■Git を使用しました。

 Laravelより、苦労したのは、Gitと呼ばれるバージョン管理です。

 バージョン管理とはシステム開発中に更新されていくファイルの変更、更新を記憶する事です。読むだけでは、イメージがわくのが難しいですよね。

 システム開発は、1人で作業するものではありません。実際は,複数のメンバーで作業します。作業中では、メンバーが作成したプログラムのファイルを編集します。編集した内容を更新して、他のメンバーにも反映させる時にGitを使います。

 Gitの使用が難しい点は、以下の点があります。

  • gitは、Linuxと同様にコマンド操作で、コマンドを覚えなければならない。
  • コマンドの意味を理解して、実行後どの様な姿になるのか想像する必要があります。

 私も、gitの使い方には、本当に苦労しました。

 特に、Gitは、覚えるコマンドの数が多いので、実行するためにどのコマンドを使わなければならない所に苦労しました。?

★4月と比べて成長出来た点

■寿司打、4000円以上行きました。

 5月初頭のタイピング練習、寿司打で、自己ベスト更新の4620円まで到達しました。最初の時は、2000円代後半のスコア時と比べて進歩しました。中々,4000円代の壁が超える事が出来ず、苦労しましたが、研修終了前に、超えられて本当に良かったです。?

 スコアを超えるために以下の事を行いました。

  • 寿司打を毎日、15分やり込む事。
  • 打ちにくいまたは、時間が掛かった所を練習を行いました。

 タイピングは、作業効率を上げる事が出来るので、今からでもタイピングして作業効率を上げて欲しいです。

★お役立ち情報

 皆様は、ショートカットキーを使用していますでしょうか。学生の一部では、ファイルをコピー、削除する際にマウスで操作している人も多いはずです。

 実は、マウスで操作するより、ショートカットキーで操作した方が作業効率は上がります。

 例えば、Excelで毎回上書き保存のボタンをクリックする場合とshift+Sでショートカットキーを使用するのどちらが効率的でしょうか。ショートカットキーを使用した方が早いと実感するはずです。

 この様にショートカットキーは、作業効率を早くなるので、みなさんも、社会人になる前にパソコンの基本操作やショートカットキーの操作を慣れておきましょう。

★まとめ

 5月中旬までの研修を振り返って見て、いよいよ研修内容も佳境になってきました。

 研修を始めた時と比べると、徐々にですが成長したと実感しました。特に,最初の頃は、コードを書くことが出来るのか不安でしたが,日々の学習をする事によって出来る様になって成長していると思いました。

 しかし、全てを理解してはいないので、研修後も、学習を怠らずに一人前のプログラマーに成長したいと思いました。

次回の第3回は、外部研修の集大成、システム開発演習について語ります。

それでは、皆様、またお会いしましょう。 アドゥー!!

COCOAについて

こんにちは。
今回は新型コロナウィルス接触感染アプリCOCOAについて調べました。

COCOAとは?

日本の厚生労働省が提供するスマートフォン向けCOVID-19アプリである。
略称はCOCOA。
濃厚接触の疑いのある本アプリ利用者間の接触をBluetoothによって検知・記録し、接触者から新型コロナウイルスの陽性者が発生したときに、その旨を通知する。アプリの通知を受けた利用者は、自主的な隔離生活や、医療機関への受診を各自で検討できるようになる。

仕組みについて

COCOAは、接触を確認する仕組みとしてBLE(BluetoothLow Energy)を使います。COCOAはBLEを使って定期的に近くのデバイスに信号を送り、信号の強さからお互いの距離を推測します。この距離を推測する機能はBLEの一部として既に実装されています。そして、1m以内に15分以上接近したデバイスとID(接触符号)を交換します。接触符号は、1日に一度ランダムに生成される日次鍵から(ハッシュ関数を用いて)生成されます。

※BLEについて
近距離無線通信技術Bluetoothの拡張仕様の一つで、極低電力で通信が可能なもの。
2010年7月に発表されたBluetooth 4.0規格の一部として策定されたものです。

調べて思った事

様々な記事を見たのですが接触通知があったからといって検査が受けられる訳ではないようです…地域、県によっては受けられる所もあるようです。
濃厚接触していたとしても症状が出ないと受けられないようです。
この事についてはなんで受けられないのだろうと考えたのですが症状が出てからではないと陽性と反応されないのではと考えました。

使用感について

個人的に思った事は、不具合は多いが入れていて損のないアプリだと思います。
アプリ入れてる人はまだあまり多くはないと思うが医療機関やイベント会場など様々なところで呼びかける事により沢山の人に使用されていくアプリになるのではないかと思います。

今回は、この辺で失礼いたします。
最後まで閲覧いただきありがとうございます。

iOS14について

こんにちは。白瀬です。
 つい先日、米国時間9月16日にリリースされたios14についてまとめてみました。

<対応機種について>

  • iPhone 6s ~ iPhone 11(Pro,ProMax,Plusを含む)
  • iPhone SE(1世代,2世代)
  • iPod touch(7世代)

<新機能について>

  • ウィジェット

 今まで一番左側にあったウィジェットをAndroidのようにホーム画面の好きな位置に置けるようになりました。また、時間帯によって自動で切り替わるウィジェットもホーム画面に置くことが可能になりました。

  • Appライブラリ

ホーム画面の最後のページにダウンロードした全てのアプリが表示するAppライブラリの追加。

 目的のアプリをシンプルな操作で探しやすいようにiOSが自動でカテゴライズしてフォルダに収納されます。フォルダ内のアプリでも、よく利用するアプリはワンタップで起動可能。アルファベット順および50音順に並べたリストから探したり、検索ワードで探すことも可能です。
 また、ホーム画面の特定ページを非表示にすることも可能になりました。

  • ピクチャ・イン・ピクチャ

 ビデオ通話のFaceTimeや動画を見ながら他のアプリを操作可能になりました。

  • 翻訳アプリ

 日本語を含む11言語のテキスト入力と音声入力に対応。iPhoneを横に向けると会話モードに移行し、言語を自動検出して会話内容をリアルタイムに翻訳し、オンライン機能も備えているため、ネット環境がない場所や重要な会話でもiPhoneで翻訳可能になりました。

  • CarKey

iPhoneとAppleWatchが車の鍵になる新機能。iPhoneをドアノブに近づけるだけでロックを解除できます。そのまま車のリーダーかワイヤレス充電器に乗せるだけでエンジンもかけられるため、自宅に車の鍵を忘れても安心。

鍵はiMessageを使って友だちや家族とも共有できるため、車の鍵を直接会って渡さなくても運転できます。紛失した場合はiCloud経由で鍵を無効にすることも。iPhoneのバッテリーが切れたあとも最大5時間動作します。
まずは今年中にNFCを使ったCar Keyの提供がスタート。はじめに来月発売(現在2020年9月)のBMW5シリーズが対応します。来年にはU1チップを搭載したiPhoneでポケットやカバンから取り出さずにロックを解除できるようになります。

  • AirPods

新機能「自動切り替え」では、利用しているデバイスに合わせて接続先が自動で切り替わります。例えばiPhoneで通話を終えてMacでテレビ会議に参加するとiPhoneからMacに自動で接続先が切り替わり、Macでテレビ会議を終えてiPadで映画を見ると自動でMacからiPadに接続先が変わります。

最大のアップデートは、上下左右前後から音を飛ばして臨場感のあるサウンドを実現する「空間オーディオ」と「ダイナミックヘッドトラッキング」の追加です。

声や音が飛んでくる方向に横に向けると、通常は音の出力位置も変わるため何も変わりませんが、ダイナミックヘッドトラッキングでは顔を横に向けると音が自分に向かって飛んでくるため、リアルなサウンドを楽しめるようになります。

※この機能は『AirPods Pro』のみ利用可能。

ダイナミックヘッドトラッキングについては説明がとても難しいため是非、ご自身で体験してみてください。

そのほかに追加された機能もありますので気になった方はぜひ、チェックしてみてくださいね。

今回は、この辺で。
最後まで閲覧いただきありがとうございます。

AWS Lambdaを使った外形監視

福岡拠点の野田です。
AWSを使ったサーバー構築が最近増えてきました。今回は、AWS Lambdaを使った外形監視の方法を紹介しようと思います。

AWS Lambdaは、軽量なアプリケーションを動作するときに活躍するサービスです。5分おきのバッチサービス、管理画面でのSSRサービスなど、 常に常駐しておく必要がないプログラムを動かすのに適しています。 今回紹介する監視系のバッチもLambdaと相性のよいアプリケーションの1つとして考えています。

AWS Lambdaを使った外形監視の作成を以下の手順ですすめていきます。

  1. 関数の作成
  2. 関数コードの作成
  3. トリガーの追加

関数の作成

「1から作成」を選択します。関数名は「check_http」のような名前を付けます。ランタイムは、javascriptサーバーの「node.js12.x」を選択して関数を作成します。

アクセス権限については、「基本的な Lambda アクセス権限で新しいロールを作成」を選ぶとAmazon CloudWatch Logsの権限が付与されるので、これを選びます。

関数コードの作成

index.jsに以下をコピペします。

[/crayon]

ページ末尾の環境変数に以下のような監視対象URLを指定します。

ENV_URL https://(監視対象URL)

トリガーの 追加

EventBridge(CloudWatchEvents)を追加します。
ルールは、新規ルールでルール名を「every5min」を指定します。ルールタイプはスケジュール式で以下を設定します。

説明: 5分毎
イベントバス: default
スケジュール式: cron(0/5 * * * ? *)

あとは、CloudWatch側で以下のようなアラートルールを設定することで監視完了です。

Lambdaはいろいろな使い方ができると思うので、引き続き使っていこうと思います。

さくらクラウドVPCルータ(サイト間VPN)とOpenVPNを利用したVPN拠点の構築

昨今、コロナ禍により業務を遂行するにあたり、テレワークを余儀なくされてます。

社内のNASやら、運用・保守業務で「IPアドレス制限されている」サーバにアクセスするために、会社ルータ(RTX-1210)にVPN接続をすることが多々発生しています。

そうした中、RTX-1210にVPN(L2TP)接続ができないというスタッフが続々と発生するという問題が顕著化しました。(以前よりそういった問題がちょくちょくありましたが、特に業務への影響は軽微であったことから、放置していました。)

ログ、コンフィグなどを見直して、ある程度あたりはつけましたが、業務に影響がでるかもしれない作業を実施する時間的余裕もないのと、本当にそれで問題が解消する保証もないのと、別件で使ってる拠点間接続だと、通信が安定しているという事もあり、 外部にVPNサーバを立てて、そいつと、会社のRTX-1210を拠点間接続でつないでしまえばいいのじゃなかろうかと思い立ったが吉事。さっそくやってみました。

さくらクラウドのVPCルータにもVPN(L2TP)サービスがあるので、最初これが使えるか?と試したのですが、VPCルータから全パケットを拠点間接続の接続先に転送するルーティングを入れると、VPN(L2TP)サービスに接続できなくなってしまうという問題(というかあたりまえなんですが。。)があり、以下のようなネットワークを作ってみました。

簡単に説明すると、さくらVPCルータを拠点間接続だけに利用して、VPNサーバは別にサーバを立てて、VPNクライアントから接続されたパケットはすべて、VPCルータ経由・拠点間VPN接続を得て会社のRTX-1210から出ていくルーティングを設定するというものです。

つまり、以下のような通信ラインを確保しようという試みです。

以下構築の手順メモ

OpenVPNを設定する

【設定前提情報】

ローカルスイッチネットワーク情報: 192.168.100.0/23
接続先スイッチ: local-switch(1)
サーバのNetwork: eth0 (Global側) 30.30.30.1
サーバのNetwork: eth1 (Loal側) 192.168.100.2
OS: CentOS 7.6

【手順】

STEP1) 必要パッケージをインストールする

STEP2) 各種設定準備を行う
※パスワード、CAのcommonnameは好きな値を設定の事

STEP3) server_r.confの設定を行う

デフォルト値から以下を変更する

STEP4) net.ipv4.ip_forward の設定を行う

STEP5) iptablesの設定を行う

※ボールドの部分がポイント

STEP6) OpenVPN起動

STEP7) ルーティングの設定


※このルーティングがポイント(10.8.0.0/24からのパケットは全部、192.168.100.1へルーティングするという内容を用意する)

STEP7) ルーティングの永続化

※設定方法確認中
 とりあえずいまは起動時にスクリプトで実行させておく。

STEP8) クライアントで利用するcert / keyは以下ファイルを利用する

/etc/openvpn/easy-rsa/pki/ca.crt
/etc/openvpn/ta.key
/etc/openvpn/easy-rsa/pki/issued/client1.crt
/etc/openvpn/easy-rsa/pki/private/client1.key

.ovpnファイルを作ると接続設定するのが楽になります。
以下のようなファイルを作る

さくらクラウド VPCを利用した「拠点間VPN接続」の設定を行う。

さくらクラウドVPCの設定を行う

■さくらクラウド ネットワーク情報

【設定前提情報】
ローカルスイッチネットワーク情報: 192.168.100.0/23
接続先スイッチ: local-switch(1)
VPCルーター(インターフェース:プライベート1)に割り当てるIP: 192.168.100.1
対向IPアドレス: 10.10.10.1
対向ID: 192.168.100.1
Pre Shared Secret: unko123
対向Prefix: 0.0.0.0/0
ローカルPrefix: 192.168.100.0/23

【手順】

STEP1) VPCルーターを追加する
    プラン: スタンダード
    インターネット接続: 有効
    そのほかの項目は任意で入力する
    
STEP2) VPCルーターのインターフェースの設定
    スイッチ: 既存スイッチを接続
    接続先スイッチ: local-switch(1)
    IPアドレス: 192.168.100.1
    プレフィックス: /23

STEP3) サイト間VPNの設定
    対向IPアドレス: 10.10.10.1
    対向ID: 192.168.100.1
    Pre Shared Secret: unko123
    対向Prefix: 0.0.0.0/0
    ローカルPrefix: 192.168.100.0/23

STEP4) 「反映」を行う

RTX-1210側の設定を行う

【設定前提情報】
■RTX-1210ネットワーク情報
Global-IP:  10.10.10.1
LAN-IP: 172.16.100.1 (NetworkAddress: 172.16.100.0/23)
■さくらクラウド VPC(サイト間VPN設定情報)
Global-IP: 20.20.20.1
対向IPアドレス: 10.10.10.1
対向ID: 192.168.100.1
Pre Shared Secret: unko123
対向Prefix: 0.0.0.0/0
ローカルPrefix: 192.168.100.0/23

【手順】

★RTX-1210側への設定手順
参考: https://knowledge.sakura.ad.jp/7051/

1) RTX-1210のGUIツールにて、拠点間VPNの設定を行う。 (簡単設定→VPN→拠点間接続)
 接続種別の選択: IPSec
 ネットワーク環境: 自分側と接続先の両方とも固定のグローバルアドレスまたはネットボランチDNSホスト名を持っている
 自分側の設定(設定名): SAKURA VPN
 接続先の情報(接続先のホスト名またはIPアドレス): 10.10.10.1
接続先と合わせる設定(認証鍵 (pre-shared key)): unko123
接続先と合わせる設定(認証アルゴリズム): HMAC-SHA
接続先と合わせる設定(暗号アルゴリズム): AES-CBC
 経路に関する設定: 接続先のLAN側のアドレス
192.168.100.0 / 255.255.254.0(23bit)
10.8.0.0 / 255.255.254.0(24bit)
2) CONFIGを取得して、「description tunnel “SAKURA VPN”」の設定部分を探して、設定情報を変更する

※例えば、

であった場合、以下のような設定情報を作成。

これを、RTX-1210の「コマンド実行」で実行する。

以上

プログラミング教育のテキスト yes!作りかけ。

だいぶん前から プログラミング教育を学校で開始するという話があり、2020年から義務教育で取り入れられるという事になりました。

そんな話もあり、Scratch+A4S+Arduinoを利用した教育用のテキスト(小学校高学年向け)を作ってみました。(ええ!もちろん作りかけです)

ScratchとA4s ( https://github.com/damellis/A4S )を組み合わせてArduino UNOを操作する環境を作り、その環境でのプログラミングを勉強するという内容にしています。

子供にプログラミングを教える、一緒にプログラミングを学ぶ時につかっていただければと思います。

#だれか資料を完成させてください!

テキスト

A4S-master2

 

 

[Laravel]環境構築編その2 Laravelとそのバックエンド

福岡拠点の香月です。

Laravel環境構築編その2はLaravelのインストールまでの実践記です。
今回インストールする環境は次の通り

      • MySQL5.7
      • PHP7.2
      • Comporser
      • Laravelインストーラ2.0.1

MVCモデルのM(Model)としてMySQLを使用します。
Laravelはphpアプリケーションなのでphpを入れて、Laravel構築に必要なComposerも入れます。Laravelの最新版は5.6、これを構築するためのLaravelインストーラを最後に入れます。

環境は前回Vagrantで構築したCentOS上です。
Windowsのコマンドプロンプトを立ち上げて次のコマンドでCentOSを起動。

ターミナルソフトでローカルポート2222にsshでアクセスします。
以降の操作はターミナル上で行います。

事前準備としてyumレポジトリの有効/無効を切り替えることができるようにユーティリティをインストールしておきます。

MySQL5.7のインストール

MySQLの公式からDOWNLOAD -> Yum Repositoryとたどり、今回のCentOS7用として「Red Hat Enterprise Linux 7」用のファイルをダウンロードし、インストールしていきます。
A Quick Guide to Using the MySQL Yum Repository

1行目で公式から最新のrpmファイルをダウンロードし、
2行目でyumレポジトリに追加します。
そのままインストールするとMySQL8.0がインストールされてしまうので、
3行目でレポジトリのMySQL8.0を無効にし、
4行目でMySQL5.7を有効にします。
5行目でインストール開始。
6行目で起動、
7行目でサービス登録です。

MySQLの初回起動時にはログファイルにrootの初期パスワードが出力されるので
それを使ってログインし、新しいパスワードを設定します。

PHP7.2のインストール

今回使用するLaravel5.6の公式ドキュメントでPHPの要件を確認すると、以下のようになっているので、それに合わせて拡張機能も一緒にインストールすることにします。またバックエンドのMySQLのための拡張機能も一緒にインストールします。

      • PHP >= 7.1.3
      • OpenSSL PHP拡張
      • PDO PHP拡張
      • Mbstring PHP拡張
      • Tokenizer PHP拡張
      • XML PHP拡張
      • Ctype PHP Extension
      • JSON PHP Extension

さらに、Laravel5.6の要件には書かれていませんが、zip拡張がないとLaravelインストールが失敗するため、これも一緒にインストールします。

PHPの公式ではソースしか公開されていませんが、yumレポジトリで使えるパッケージがRemi’s RPM Repositoryで公開されているのでそれを利用します。
CentOS用のURLからダウンロード、インストールします。

1行目でremi-release-7.rpmのインストールに必要なモジュールを事前にインストールします。
2行目でパッケージをダウンロードし、
3行目でレポジトリを追加。
4行目でレポジトリのPHP7.2を有効にし、
5行目で必要なモジュールを含めてインストールします。
この4行目のPHP7.2の有効化を忘れると、CentOSのbaseレポジトリにあるPHP5.4がインストールされるので注意しましょう。
これで必要なものが全部入りました。php -m と打って必要なPHPの拡張モジュールが入っているか確認できます。

mbstringも入ったのでPHPの日本語の設定を行っておきます。

今回Webサーバーにはapache2.4を使用しています。PHPの公式ドキュメントのApache2.x系へのインストールを見ると、apacheの設定ファイルにPHP7用のモジュールをロードするための設定の追加が必要と書かれています。

しかしそこはパッケージインストールの良いところ、yumでのインストールで以下のファイルが作成され、設定が行われています。

これを有効にするために、apacheを再起動します。また、これが正しく動作しているか確認するためにDocumentRootにファイルinfo.phpを追加します。

追加が完了したら動作確認のために、ホストOS(Windows)上のブラウザからこのファイルのURLを打ち込みます。http://localhost:8080/info.php

この画面が出れば成功です。mbstringの欄も設定どおりになっていることも確認できます。apacheでは起動時にphp.iniを読み込むため、php.iniを編集した際は必ずapacheを再起動します。

Composerのインストール

こちらも公式ページの「Getting  Started」と「Download」ページの記述に沿ってインストールします。引き続きrootでの作業です。

ComposerのインストールはPHPの構文をphp -rで処理させて実行するように記述されているので、その通りにやります。深い意味はないと思いますけど。
1行目でインストーラーをダウンロードし、
2行目でダウンロードしたものが正しいかハッシュ値の比較、
3行目の「Installer verified」で比較結果が正しいことが示されています。
4行目でインストーラー実行し、
5行目でインストーラーを削除しています。
ここまでで同じフォルダに「composer.phar」が出来上がっているので、6行目で全ユーザーにパスが通っている/usr/local/binに「composer」という名前で配置します。

Laravelインストーラのインストール

いよいよLaravelです。Laravelはそれを使用するユーザーごとにインストーラをインストールすることが求められています。

1行目でrootからvagrantユーザーに戻ります。
2行目でLaravelの最新をインストールし、
3行目で.bash_profileの編集を開始し、PATH=の行の最後に「:」をつけて、続けてLaravelのbinディレクトリを追加します。
7行目で設定を再読み込みして完了です。

正しくLaravelインストーラが実行できるか確認します。

バージョンが表示されればOK。

ということでインフラ構築はここまで。ありがとうございました。

Franzを使ってみた

作業を効率良く進めるためにツールは必要不可欠なものだと思います。
しかし多くのツールを立ち上げると配置に困ることもしばしば・・・

そこで今回は60種類以上のツールを一元管理できるFranzを紹介したいと思います。
FranzはSlack、Skype、GmailやGoogle Calendarなどのサービスを
クリック1つで切り替えることのできるすごいツールです。

インストールは
https://meetfranz.com/
から。

起動

無料アカウントを作成を選択します。

名・姓・メールアドレス・パスワードを入力します。

今回は無料プランを選択します。

招待したい人がいる場合はここで招待しましょう。

ぼっちなので後でを選択します。

あっという間に登録完了です。はじめる、または左下の+ボタンを選択します。

使いたいサービスを選択します。日本ではメジャーなものやマイナーなものまで揃っています。今回はGmailを選択してみます。

設定画面に遷移します。サービス名は好きな名前をつけることができます。

Gmailも複数アカウント登録できますので、アカウント名にするとわかりやすいかもしれません。

今回はそのままの設定でいきます!

Gmailを選択しました。右上のXボタンを押しましょう。

Gmailのログイン画面が表示されます。

あとはいつものようにログインするだけで、FranzでGmailが使えます。

サービスを増やしたい場合は、左下の+ボタンでどんどん増やせます。

  • 使ってみて

SkypeやGmailが1つのウィンドウで使用できるのは非常に便利です。

Webサービスを統合している感じなので、Web版とアプリ版を提供しているサービスが使えるのではないかと思っています。

Gmailはブラウザで使用している感じと同じなので全く違和感はありません。

未読の通知もわかりやすいですし、タスクバーにも未読数が表示されます。

SkypeはSkype for Web版になるため、アプリ版と設定画面も異なります。

改行はアプリ版がShiftとCtrlどちらも可能に対して、FranzではShiftのみのため、慣れるまでに時間がかかるかもしれません。

また、残念ながらYahooMailはありませんでしたが、今後に期待です。

メリット・デメリットはありますが、動作も軽く使いやすいツールだと思います。

今後もオススメのツールがあれば書いていこうと思います。