Qstairs

現役AIベンチャーCTOの知見、画像認識(人工知能、Deep Learning)を中心とした技術ノウハウをアップしていきます

広告

M1 MacにDockerをインストールしよう!!

f:id:qstairs:20171102004524j:plain

M1 MacにDockerをインストールする方法は2パターンあります。

  • Homebrewでインストール
  • Dockerのサイトからインストール

それでは、それぞれのインストール方法について紹介します!

Homebrewでインストールする場合

Homebrewのインストール(まだインストールしていない方)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew -v

Dockerのインストール

 brew install docker --cask

Dockerサイトからインストール

以下サイトで「Download for Mac - Apple Chip 」を選択しダウンロード Get Started with Docker | Docker

インストール方法はいつものアプリのインストール方法と同じ

あなたは本当に大丈夫?ITエンジニアに求められる素質・スキル

f:id:qstairs:20170530221943j:plain

はじめに

 昨今ITエンジニアが注目され始め、他業種からの転職を目指しているビジネスマンも増えています。少し前まではIT業界は新3K(きつい、帰れない、給料が安い)と言われて敬遠されてきましたが、一気に変わってきています。  ということで、これまでITエンジニアとして働いたり、ITエンジニアを採用・管理してきた私が思うITエンジニアに求められる素質を紹介します。今まさにITエンジニアを目指していたり、目指そうか悩んでいたりしている人の参考になれば幸いです。  ちなみに、ここで取り上げるITエンジニアはシステムを設計・開発(コーディング含む)のことです。

求められる素質・スキル

 私の考えるITエンジニアに求められる素質・スキルは以下の3点になります。

学習し続けられる

 ご存知の通り、IT技術の進歩は凄まじいほど早いです。iPhoneが2008年に日本で販売され、その後スマートフォンが爆発的に普及しました。それまでPCブラウザをベースにしたWebサイト・アプリが主流でしたが、スマートフォンの普及によって、iOS、AndroidOS用のアプリの開発が必要になり、Webサイトもスマートフォンのディスプレイに合わせたデザイン、機能を実装することが重要になりました。また最近ではAI時代の到来により、ビッグデータ解析やDeepLearning技術、その他にもAWSGCPといったクラウドサービスの普及もあります。  こういった新しい技術に対して日々アンテナを張って、自ら学習していかないと時代に取り残され、活躍できる幅が狭くなります。つまり、生き残りが厳しくなります。

因数分解

 システムを設計する場合、ふわっとしている顧客の要求をシステム化できるように落とし込んでいく必要があります。そこで必要な素質・スキルが因数分解力になります。  例えば、「お店の行列を自動で検知してほしい」という要求があるとします。(ここまでふわっとした要求はないかと思いますが)これをシステム化するためにはどのように落とし込んでいく必要があるでしょうか?まずは、5W1H、IN/OUT等で分解していくと良いかと思います。*私なりの回答は別の投稿で。

集中力

 これは特にコーディングに言えることですが、集中力があるかないかでコーディング力(特にスピード)は大きく変わります。コーディングはジグソーパズルや詰め将棋に似ているところがあり、頭の中でつながりや全体構成を構築しながら進めます。そのため、集中力がないと、頭の中で構築中に途切れて、もう一度頭の中で構築して途切れてを繰り返すことになり、かなり効率が悪くなります。集中力を高めるためには、環境を整えることも必要ですが、体力をつけ体調を整えることも大事です。

最後に

 私が思うITエンジニアに求められる素質を紹介しましたがいかがでしたでしょうか?この記事が今まさにITエンジニアを目指していたり、目指そうか悩んでいたりしている人の参考になれば幸いです。

【Chrome Remote Desktop】Macのcommandを接続先のControlに割り当てる

困りごと

MacでChromeRemoteDesktopを使用し、WindowsLinuxにアクセスした際、 commandキーがControlの役割をしないので作業し辛いです。

解決方法

以下の画像のように、 マッピング元をMetaLeft(これがcommandキー)に設定し、 マッピング先にControlLeftを設定します。 さらに、 マッピング元をMetaRight(これがcommandキー)に設定し、 マッピング先にControlRightを設定します。

f:id:qstairs:20210715184535p:plain
キーマップングの設定

上記で解決!!

他のキーについて知りたい人は以下から

UI Events KeyboardEvent code Values

【AI】知らないの?データバージョン管理ツール「DVC」とS3を連携する方法

概要

DeepLearningを含む機械学習では学習済みモデルを使用します。 学習済みモデルはデータ量が大きく、github等のコード管理ツールでは管理が難しいです。 そこで便利なのがデータバージョン管理ツール「DVC」になります。 今回はその「DVC」をAWSのS3と連携して使用する方法について簡単に紹介します。

前提

  • Pythonセットアップ済み
  • AWSのconfigureを設定済み

設定

pip install dvc["s3"]
dvc init
dvc remote add -d {name} s3://{bucket}/{prefix}

ファイルやフォルダの追加

dvc add {file path}
dvc push

ファイルやフォルダの取得

dvc pull

最後に

いかがでしょうか?こんなに簡単にデータを管理できるとは良い時代ですね! どんどんモデルを作って管理していきましょう!

【Kotlin】Windowsセットアップ手順 2021/7時点

WindowsでKotlinをセットアップする手順を紹介します

環境:Windows10 pro

ステップ

  1. JDKインストール
  2. Kotlinインストール
  3. 環境変数設定
  4. 動作確認

1. JDKインストール

まずはJDKをダウンロードします。
Java SE - Downloads | Oracle Technology Network | Oracle 日本
投稿時点ではJava SE 11 (LTS)を選びました。基本的に(LTS)がついているものを選べばOK!!

※久々にJDKをダウンロードしましたが、いつの間にかアカウント登録が必要になっていました。。。

f:id:qstairs:20210705120029p:plain
JDKインストール

ダウンロード後、ZIPファイルを解凍。

2. Kotlinインストール

続いてKotlinをダウンロードします。

以下ページの下部に移動し、「kotlin-compiler-1.5.20.zip」をダウンロードします。

Release Kotlin 1.5.20 · JetBrains/kotlin · GitHub

投稿時点では1.5.20を選びました。基本的にKotlin releases | Kotlinのトップのバージョンを選べばOK!!

f:id:qstairs:20210705120442p:plain
kotlinダウンロード

ダウンロード後、ZIPファイルを解凍。

3. 環境変数設定

回答したJDK、Kotlinのフォルダの「bin」フォルダまでのパスを環境変数の「Path」に設定します。

私の場合は以下を追加しました。

C:\Program Files\Java\jdk-11.0.11\bin
C:\Program Files\Kotlin\bin

4. 動作確認

環境変数を設定後、コマンドプロンプトを起動し、「kotlin -version」を実行して以下のような表示がされればセットアップ完了です。

>kotlin -version
Kotlin version 1.5.20-release-287 (JRE 11.0.11+9-LTS-194)

【Python】決定版!dict(辞書型)を値でsortするワンライナー

dictの値でソート(sort)してdictを返すワンライナーです。
(dictをソートしてlist型に変換して終了している記事が多いと感じました。)

昇順:

dict_data = {k:v for k,v in sorted(dict_data.items(), key=lambda x : x[1])}

降順:

dict_data = {k:v for k,v in sorted(dict_data.items(), key=lambda x : x[1], reverse=True)}

動かす

dict_data = {
    "A":10,
    "B":5,
    "C":20
}

dict_data = {k:v for k,v in sorted(dict_data.items(), key=lambda x : x[1])}

dict_data = {
    "B":5,
    "A":10,
    "C":20
}

以上。お役に立てれば幸いです。

広告