お気持ちの表明

思考を雑に外出していきます

「自身の強み」ってなんやねん話

転職活動中というのもあり「強みってなんですか?」って聞かれることがまあある。
エンジニアあるあるだと思うのだけど、「強み=技術力」という置換をしてしまい、
「ワイの技術力でアピールできることってなんやろ...。」となっていた。
「強み」が技術力に限らないとは思いつつも、何があるのかパッと列挙できなかった。

ので、ちょっとどんなのがあるのか自分的にまとめてみた。
だいたい、4分野に分類できそうな気がしていて、こんな感じ。

  • テクニカルスキル
    • モノをつくるために利用する言語などの知見
      • 基礎知識
      • 知識の応用力
      • ...
  • 対課題スキル
    • 業務に取り組んで、成果を出すためのスキル
      • 問題解決力
      • 情報収集力
      • 数値分析力
      • ...
  • 対人スキル
    • いわゆるコミュ力
      • 統率力
      • 交渉力
      • 共感力
      • 協調性
      • ...
  • 対自己スキル
    • 自己管理能力やらセルフマネジメントとかいうやつ
      • セルフリーダーシップ
      • メンタルマネジメント
      • 時間管理
      • 健康管理
      • ...

あとはこれに当てはめて、 「これ自信ありますよ!!!」ってのを考えていきたいなと思う。

参考

material-uiのスタイルとかをいじりたいときのメモ

Material-UIをつかって、 https://mrtry.github.io/ の見た目をいい感じにしていた
その際、スタイリングをちょっといじったのだけど、いじり方を忘備録的にメモ

実際にいじったコードは以下にある

基本

MuiThemeProviderというコンポーネントthemeを渡すと、
その子コンポーネントにはthemeで設定したスタイリングが適用される

const theme = createMuiTheme()

const Root = () => (
  <MuiThemeProvider theme={theme}>
    <App />
  </MuiThemeProvider>
)

タイポをいじりたい

typographyオブジェクトを渡すと良い
デフォルト設定の以下を参考に、気になるプロパティがあったら上書きすると良い

いじりたくなりそうな例で行くと、フォントの変更がありそう
私の場合、Noto Sansを使うためにこんな感じで書いた

const theme = createMuiTheme({
  typography: {
    fontFamily: [
      'Noto Sans',
      'sans-serif',
    ].join(','),
  },
})

const Root = () => (
  <MuiThemeProvider theme={theme}>
    <App />
  </MuiThemeProvider>
)

これと別に、index.htmlにてフォントを入れておくことを忘れてはいけない

<link href="https://fonts.googleapis.com/css?family=Noto+Sans" rel="stylesheet">

スタイルを上書きしたい

overridesオブジェクトを渡すと良い
overrides以下に、対応するスタイルシート名のオブジェクトをつくり、
それ以下にCSS in JSでスタイルを書いていけば、スタイルを上書きできる

スタイルシート名は、MuiXxxxで統一されているっぽいけど、
心配ならいじりたいコンポーネントComponent APIを見ると下の方に書いてある

例えば、TypographyComponent APIをみると以下のように書いてある

If using the overrides key of the theme as documented here, you need to use the following style sheet name: MuiTypography. Typography - Material-UI

各見出しの上下にmarginいれたり、色をいじりたかったので、こんなのを書いてた

const theme = createMuiTheme({
  overrides: {
    MuiTypography: {
      headline: {
        color: 'teal',
        marginTop: '16px',
        marginBottom: '16px',
      },
      title: {
        marginTop: '16px',
        marginBottom: '16px',
      },
    },
  },
})

const Root = () => (
  <MuiThemeProvider theme={theme}>
    <App />
  </MuiThemeProvider>
)

参考

GitHub PageをReactで作ってみるまでのメモ

転職活動している時に、自己紹介代わりにGistにかいといた職務経歴書を投げつけていた。 転職活動中に会う人だからいいけど、初対面で投げつけるにしてはちょっと重すぎない?????となっていた。 で、ゆるふわなプロフィールページほしくない???となり、GitHub Pageの存在を思い出し、ReactNative書いてたし、Reactでイケるやろ!!!とやったときのメモ

Hello, World的なところまで

公式の以下のページを参考にしつつ、進めていく

[username].github.ioリポジトリを作る。 私の場合mrtry.github.ioで作った。

f:id:symmt9302:20180507163035p:plain

作ったリポジトリをcloneする 私の場合はこんなかんじ

$ git clone https://github.com/mrtry/mrtry.github.io

テキトーなhtmlを作ってpushしてみる

$ cd mrtry.github.io
$ echo "Hello World" > index.html
$ git add -A
$ git commit -m 'init'
$ git push origin master

https://mrtry.github.ioにアクセスしてみると、見れる。爆速。

f:id:symmt9302:20180507163117p:plain

create-react-appでそれっぽいのをつくる

趣味の問題でTypeScriptでやっていきます。

$ create-react-app my-pages --scripts-version=react-scripts-ts

こうなります

$ ls
README.md          node_modules       public             tsconfig.json      tslint.json
images.d.ts        package.json       src                tsconfig.test.json yarn.lock

startしてみます

$ yarn start

ババーンとできます

f:id:symmt9302:20180507163328p:plain

git initとかしていきます

$ git init

.gitignoreは、/buildコメントアウトしときます

$ cat -n .gitignore
     1  # See https://help.github.com/ignore-files/ for more about ignoring files.
     2
     3  # dependencies
     4  /node_modules
     5
     6  # testing
     7  /coverage
     8
     9  # production
    10  #/build
    11
    12  # misc
    13  .DS_Store
    14  .env.local
    15  .env.development.local
    16  .env.test.local
    17  .env.production.local
    18
    19  npm-debug.log*
    20  yarn-debug.log*
    21  yarn-error.log*

buildします

$ yarn build

ここまでやったやつをpushしても、GitHub Pageのドキュメントルートは/buildになっていないので、Webページは見れないです。

User Pagesのドキュメントルートを無理くりいじる

/buildをドキュメントルートとしたいので、以下を参考にいじっていきます

sourceというブランチを生やしておく

$ git checkout -b source
$ git push origin source

Default Branchsourceにする

f:id:symmt9302:20180507163416p:plain

masterを消して、subtreeをbuild/にしたmasterを作ってpushする

$ git push -f --delete origin master
$ git subtree push --prefix build/ origin master

masterはこんな感じになる

f:id:symmt9302:20180507163444p:plain

めでたく、Reactの画面が出てくる

f:id:symmt9302:20180507163515p:plain

基本的にsourceで作業して、作業が終わったらこれらの処理をガッとやればデプロイってかんじになりそう というわけで、雑にこんなスクリプトを書いた

cd $(git rev-parse --show-toplevel)
yarn build
git add -A
git commit -m 'deploy'
git push -f --delete origin master
git subtree push --prefix build/ origin master

シュッとやったリポジトリはこちらになります

できたページはこんなかんじです

参考

株式会社オトバンクを退社しました

タイトルの通り株式会社オトバンクを退社しました。
新卒で入社して、丸2年務めた感じになります。

オトバンクでやってたこと

オーディオブックのサービスaudiobook.jp(旧名:FeBe)に関わっていました。

列挙してみると、こんな感じです

少人数だったので、いろいろなことに手を出していました。 最初はサーバーサイドエンジニアでしたが、入社半年後からはアプリエンジニアをしてました。 未経験ながら、既存のAndroidアプリの保守をやったり、ReactNativeで新規開発をしたことは、とても良い経験になったなあと思っています。

これからのこと

まだ決まっていません!!!!

絶賛求職中でして、次もAndroidアプリエンジニアをやっていきたいと思っています。

主軸としては、以下の2点を大事にしてます

  • toCなサービス開発に関われるところ
  • アプリ専任チームがあるところ

もしなにかイイ話があれば、一度ランチやら飲みに誘っていたけるとうれしいです!
連絡はTwitterにて、リプなりDMいただければ、レスできると思います!
職務経歴書を送ることもできます!

ほしいものリスト

気が乗ったら、お願いします 👏

カリーヴルスト

f:id:symmt9302:20180422205040j:plain

カリーヴルストって知ってます?
ドイツ料理らしく、ケチャップにカレー粉を混ぜたソースにソーセージやらフライドポテトをつけて食べる感じのものです
雑に作れる割に結構美味しいのでよくやります
私は、ケチャップ、カレー粉、胡椒、にんにく、ウスターソースをテキトーに入れて混ぜてソースとしてます
酒のいいつまみになります

私からは以上です

スープカレー作った

お料理ブログ書きたいなぁと思ってたけど、
スマホアプリから写真貼ればラクやん?と気づいたので、雑に書いてみる。
アプリから写真あげて、PCで編集してるけど、なぜかmarkdown編集できなくてつらい。
(スマホアプリの設定で、編集モードをmarkdownにしておけば問題なかったらしい)

最近過食気味だったので、糖質少なめな具だくさんスープを作って生きております。
トマトスープが作りすぎて飽きたので、最近はスープカレーをガッとやってます。
今日は、キャベツと玉ねぎと豚肩が入ったスープカレー作っていきます。

とりあえず、肉をいい感じに切って、塩水につけておきます(ブライニング...?)。
下味つくとか、肉が柔らかくなるとか、そんな効果があるはず。

f:id:symmt9302:20180408193344j:image

キャベツ半玉を切って、洗って、濡れたまま鍋に入れて火にかけて蒸しておきます。

f:id:symmt9302:20180408192318j:image

15分ぐらい蒸していると、半分ぐらいまで量が減るんで、それまでは放置
f:id:symmt9302:20180408193353j:image

その間に、玉ねぎに塩振って、多めの油で揚げ焼く勢いで火強めにして炒めてく

f:id:symmt9302:20180408192020j:image

今日はこれぐらいでやめた。
これぐらいになるタイミングでキャベツがいい感じに蒸しあがってたりする。f:id:symmt9302:20180408193413j:image

これにスパイスを突っ込んでルウ的な何かを生成していく。
カレー粉、バジル、にんにく、チリペッパー、胡椒、ボーンブロスの素などなど...。
f:id:symmt9302:20180408193903j:image

蒸しあがったキャベツにつっこみます
f:id:symmt9302:20180408194257j:image

肉と水とケチャップとウスターソース、味見をしつつ塩を突っ込みます。
肉は焼いたほうが風味つくけど面倒なのでやめました。
f:id:symmt9302:20180408194623j:image
あとは沸騰しないぐらいで火を止めて、予熱で肉に火が通ったぐらいで完成です。
f:id:symmt9302:20180408200138j:image
盛ったらこんな感じになりました。
飲酒した後とかに飲むと最高って感じになれます。
f:id:symmt9302:20180408200303j:imageこれで平日を乗り切っていくぞい。 完

Alexaから家の家電を制御できるようにした際の格闘記録 その1 やりたいことの確認と購入した部品とライトの制御まで

あらまし

ざっくりこんなかんじでした

  • 最近自宅作業が多くなってきて、家環境整えてきてえ〜というお気持ちが高まっていた
  • 最近流行りなスマートホームってよさげやん。やってみたいやん。
  • Raspberry Piかって、Alexaつっこめば1台で全部できそうやん?
  • やっていき〜〜〜

やりたいこと

  • Raspberry PiにAlexaを入れて、
  • 音声制御でおうちの家電をいい感じに制御して、
  • 快適なおうち生活を送っていきたいっ...!!!!!!

完成図

こんなかんじでイケるようになりました オフトゥンから出ずに暖房つけれるので最高ですね

Alexaパイセンから家電制御できるようにしたーーーーー!これで布団から出ずにエアコンいじったり、電気消せるーーー!

やったこと

一覧としてはこんな感じでした

  • Raspberry Pi 3買った
  • 必要な電子部品等を買った
  • コンセントから電源とるライトをオンオフできるようにした
  • エアコンを赤外線LEDで制御できるようにした
  • Raspberry PiにAlexaを召喚
  • MQTTサービスを利用して、AlexaからGPIOの操作をする

書いててクソ長くなって気力が死んだので、とりあえずライトの制御までを書いていきます

Raspberry Pi 3買った

普通にAmazonで買いました。

ケースは個人的にイケメンと感じたのでこれにしました。

SDは家にあった32GBのをつかってみましたが、16GBぐらいでたぶん十分だった。

必要な電子部品等を買った

以下の部品らを秋月で買ってきました

あと、マイクをつなげるのに、USBのサウンドボードを買った

秋月で買わなかったけど、延長コードも1本必要でした 以下のような感じで、途中から裂いたりできるタイプ

コンセントから電源とるライトをオンオフできるようにした

机にある電気をラズパイから制御できるようにしてきます。 ソリッドステートリレーが活躍してくれます

写真を撮り忘れたんですけど、雰囲気は以下のブログのような感じです

物理の実装

とりあえず、物理層の実装はこんな感じです

  1. 秋月のソリッドステートリレーのキットを組み立てる
  2. コンセントの延長コードを準備して、適当な位置で真ん中を裂く
  3. 2本になったうち、片方のケーブルを切って、ソリッドステートリレーキットのACの+-部分につなぐ
  4. ソリッドステートリレーキットのDCの+-部分には、RaspberryPiにつなげれるようにする
  5. DCの+-部分はRaspberry PiのGPIOとGNDにつなぐ

これで準備はできた感じです。

回路に問題ないかを確認したかったら、角電池とバッテリースナップを準備して、DCのところに抜き差ししてみるとサクッと確認できて便利です

あとは、Raspberry PiのGPIOピンにDCの部分をつないで、GPIOをHIGHにしてやると電気がつくはずです

アプリ層の実装

GPIOをいじってRaspberry Piからソリッドステートリレーをオンオフできるようにしてみます。 GPIOを操作するにはWritingPiが導入ラクだし使うのラクだったので、使ってます。

導入は以下みたいなコマンドをぶったたけば終わるのでちょろいです

$ sudo apt-get install libi2c-dev git 
$ git clone git://git.drogon.net/wiringPi
$ cd wiringPi 
$ ./build

実際にGPIOをHIGHにしたりLOWにする際は、こんなかんじでやります

$ gpio -g mode 18 out // BCM 18ピンをoutモードにする
$ gpio -g write 18 1  // BCM 18ピンをHIGHにする

ピンの番号がわからないときは、gpio readallを叩くとわかります 実際のピンに対応するBCM番号や、現在のモードと値がわかったりします。

例えば、さっきのコマンドを叩いたあとにgpio readallしてみると、 BCM 18に当たるGPIO.1というnameの行がModeOUTV1になっていたりします

$ gpio readall
 +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
 |   2 |   8 |   SDA.1 | ALT0 | 1 |  3 || 4  |   |      | 5v      |     |     |
 |   3 |   9 |   SCL.1 | ALT0 | 1 |  5 || 6  |   |      | 0v      |     |     |
 |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 0 | IN   | TxD     | 15  | 14  |
 |     |     |      0v |      |   |  9 || 10 | 1 | IN   | RxD     | 16  | 15  |
 |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 1 | OUT  | GPIO. 1 | 1   | 18  |
 |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
 |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | OUT  | GPIO. 4 | 4   | 23  |
 |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
 |  10 |  12 |    MOSI |   IN | 0 | 19 || 20 |   |      | 0v      |     |     |
 |   9 |  13 |    MISO |   IN | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
 |  11 |  14 |    SCLK |   IN | 0 | 23 || 24 | 1 | IN   | CE0     | 10  | 8   |
 |     |     |      0v |      |   | 25 || 26 | 1 | IN   | CE1     | 11  | 7   |
 |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
 |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
 |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
 |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
 |  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
 |  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
 |     |     |      0v |      |   | 39 || 40 | 0 | IN   | GPIO.29 | 29  | 21  |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+

ここまでできたら、ソリッドステートリレーのDC部分をGPIO.1GNDにつないでみると、ライトがついてくれるはず。

もし、つかなかったら、以下を確認してみましょう。

  • gpio readallをして、繋いでいるところのGPIOのV1になっているかを確認
    • さっきの例だとGPIO.1V1になっていればいい
  • DCのところに乾電池とかを繋いでみて、ライトが点灯するか
  • GPIOの読む際、Raspberry Piの向きがあっているか -私はこれをミスりまくって時間を溶かした

オフにする際は、V0にすればよい

$ gpio -g write 18 0  // BCM 18ピンをLOWにする

こんなかんじで、Raspberry Piからライトをオンオフできるようになりました。

次の記事ではエアコンを制御したときのことを書こうと思います〜。