Ubuntu 16.04 で fish を使ってみる
動機
真っ黒い画面での作業が多くなってきたのでいい加減シェル周りの知識をつけようと "bash zsh 違い" でググったらたまたま出会った、、、
fish 導入
sudo apt-add-repository ppa:fish-shell/release-2 sudo apt-get update sudo apt-get install fish
このままだとデフォルトのシェルが bash のままなので変更
chsh -s /usr/bin/fish
上記実行後、ログアウト→再度ログインで反映されました
fish上で bash
をすれば bash へ戻れます
fisherman 導入
fish のプラグインマネージャです、便利です(あまり使いこなせていない)
curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs https://git.io/fisher
試しに fish のテーマを入れてみます、oh-my-fish のものをそのまま使えるようなのでチャレンジ (oh-my-fish は使ったことないけど、、、)
wk@wk-ThinkPad-X1-Carbon ~> fisher install oh-my-fish/theme-bobthefish Installing 1 plugin/s OK Copy bobthefish Backup fish_prompt.fish Done in 73ms ~ 114ms 2017年10月31日 13時24分12秒
即反映されました
Ubuntu 16.04 に Laravel 5 を入れる
Elementary OS に細かいバグが多くて耐えられなくなってきたので Ubuntu に乗り換えました。
今後サッと戻せるようメモ。(開発環境を仮想化しろって感じですが根本的な知識が不足しているのでまだ先かな、、、)
この記事を書いてる時点でインストールされたバージョンは 5.5.19 でした。
~/laravel/testapp$ php artisan -v Laravel Framework 5.5.19
環境
Install
~$ sudo apt update ~$ sudo apt install curl php7.0-cli php7.0-zip php7.0-mbstring php7.0-xml ~$ curl -sS https://getcomposer.org/installer | php All settings correct for using Composer Downloading... Composer (version 1.5.2) successfully installed to: /home/{user}/composer.phar Use it: php composer.phar ~$ sudo mv composer.phar /usr/local/bin/composer ~$ sudo chmod +x /usr/local/bin/composer ~$ composer global require "laravel/installer" ~$ vim .profile # 私の環境の場合 $HOME/.config/composer/vendor/bin にパスを通しました ~$ mkdir ~/laravel && cd ~/laravel ~/laravel$ laravel new testapp
Test
~$ cd ~/laravel/testapp ~/laravel/testapp$ php artisan serve Laravel development server started: <http://127.0.0.1:8000>
ブラウザで http://localhost:8000
へアクセスして、でっかい文字で"Laravel"と表示されればOK
laravel new した時に .env の作成と key:generate まで自動でやってくれるんですね、、、便利です。
初心者プログラマが【ことりん】やってみたい
仕事でPHPは触れているのですが、そろそろ新しい言語を一つ触れてみたい・覚えてみたいなーと思い、なんか響きが可愛かったんでKotlinという言語を選んでみました。
Kotlinを学ぶ際に最低限必要な情報 - Qiita
KotlinプラグインをAndroid Studioに入れる - 逆引きKotlin
こちらを参考に環境作り。
OSは Elementary OS 0.4 Loki です。
Android Studio インストール
Install Android Studio | Android Studio
ここを見ながらインストール
この記事を書いてる時点では Android Studio 2.3.3.0 for Linux です。
依存ライブラリを入れようとしたら lib32bz2-1.0 だけ入らなかったのでスルー、、、
問題起きたら見直します。
とりあえずスタート画面開けたので一回閉じてパス通す
PATH="$HOME/bin:$HOME/.local/bin:/opt/android-studio/bin/:$PATH"
CLIからのみだと多分めんどくさくなるのでランチャー登録
:/usr/share/applications$ cat android-studio.desktop [Desktop Entry] Name=Android Studio Comment=Android Studio Exec=/opt/android-studio/bin/studio.sh Icon=/opt/android-studio/bin/studio.png Terminal=false Type=Application Categories=Development;
入ってますね、起動もしました
Kotlin プラグイン導入
逆引きKotlinさんを参考に入れていきます。
テキトーにプロジェクト作ってOKやら連打
File -> Setting -> Plugins でとりあえずKotlinと入力したところ何も出てこなかったので、リポジトリサーチのほうからインストールしました。
って書いたところで気づいたんですけど、左下の “Install JetBrains Plugin"にありました、、、
入ったっぽいので再起動
HelloWorld
逆引きKotlinさんを参考にはろわしていく。
Toastを使うのに “import android.widget.Toast” を書く必要があったのと、Kotlinのversionが “ext.kotlin_version = ‘1.1.50’” になってたくらいで、他は載ってる手順通りで大丈夫そうです。
package com.example.wk.helloworld import android.support.v7.app.AppCompatActivity import android.os.Bundle import android.widget.Toast class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) Toast.makeText(this, "Hello Kotlin!!!!", Toast.LENGTH_SHORT).show() } }
変換?コンパイル?してRunしたところ無事はろわトーストが出ました!
大学時代に使ってたNexus5を引っ張りだしたけど、2015年で時計が止まってて何か悲しくなった、、、
RunしようとしたらマシュマロのSDKないよーと言われたので入れました。
おわりに
で、何作ろう
Apache2.4を導入後、localhostにアクセスしたら403でハマったのでメモ
環境
- Elementary OS Loki
ふつーにapt-getでapache2をインストール
/var/www/html/に info.php を置いて localhost へアクセスして表示確認できた
で、DocumentRootを作業フォルダ /home/hoge/Project/hogeapp にしたかったので /etc/apache2/sites-available/default.conf を修正したところ無限に403…
[Wed Sep 06 00:43:17.055266 2017] [core:error] [pid 10947] (13)Permission denied: [client ::1:46920] AH00035: access to / denied (filesystem path '/home/hoge/Project') because search permissions are missing on a component of the path
Permission denied、、、
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /home/hoge/Project/hogeapp ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /home/hoge/Project/hogeapp> Require all granted </Directory> </VirtualHost>
結局
/home/hoge/Project/hogeapp が744 になってなかっただけでしたとさ。
hogeapp/ だけ 744 になってたんだけど、ちゃんと hoge/ Project/ も 744 にしないとダメらしい、、、
知識不足すぎました、、、
客先行きたく無さすぎ侍
ちょっと現状を整理したくて記事を投げる
月一ペース良いかもしれない
入社して3ヶ月で覚えたこと
- 受託開発は本当にクソの極み
- MySqlの基本操作
- MVCモデルの概念と処理フロー
- PHPフレームワーク(codeigniter)で書き書き (フロント / バック)
- Gitの基本操作、Bitbucketを利用したリポジトリ運用、アプリバージョン管理の概念
- CentOS内のcronアレコレ
- 社内Slack作って外部サービスと連携 (Redmineのチケット通知くらいだけど)
- 適当なIaaSに社内Redmineインスコ、運用 (最初はAWSに置いたけど今はGCP使ってる)
- 使用頻度の高いUNIXコマンド一通り覚えて面倒なやつはshell script書いて適当に実行できるように
- 有象無象のタスクに対する大まかな工数想定 (工数という単語が嫌いになった)
- フォトショ基本操作を覚えて簡単なバナーやボタンの作成方法 (たまに納品された画像の微修正)
- フロントビューを設計書に起こす
- UI Flowをパパッと作る (guiflow様にはお世話になってます)
- 日報をいかに楽して書けるかゲーム(Redmine勝手にいじってその日の活動コピペすれば終わるようにした、てかシャチョーがRedmine見るだけで全部解決するんだよな)
- 勉強する気が見られないエンジニア志望の年上の同期?Aさんに対して仏対応の仕方
- クソみたいな受託案件の仲介役にいきなり宛てがわれた事務志望の年上の後輩Bさんに対して仏対応の仕方 (正直同情する)
覚えたいこと
- rails
- webサービス・google play・app storeの課金システム周り
- Redmineの良い感じの運用方法
- 一般的なBtoCサービスのためのネットワーク設計
- DB設計
- Android/iOSのネイティブapp
- 社内用app作りたい (python・C++・kotlinあたりを触ってみたい)
Golangって静的言語だったんだ・・・
たぶんこれからやらなきゃいけないこと
- 既に動いてる案件の市場調査(洗い出し)・企画・設計・開発・運用
- クソ受託案件Aの運用
- クソ受託案件Bのシステム詳細把握・新規機能提案
- 一番モチベ高い新規案件の市場調査・企画・設計・開発・運用を全て1から
いやいやいやおかしくないかこれ
これから一人で案件3本のサービス運用するのって普通なのか・・・世の中のエンジニア凄すぎだろ・・・
他所のエンジニアが何して金貰ってんのか気になる
でもまぁ諸々の技術には触れられるというか、裁量しかない、基本独断で勝手にやってもいいので環境的には良い
20分くらい遅れて出社しても何も言われないし服装も自由だし
あとはお給料が良ければ、ね・・・ (月180k + 交通費15k - 社保25kくらい?)
もちろんボーナスは無し😭
サンドリオンにハマる
メグル・オモイ・メグルめっちゃ良い
追記:技術がわかる上司がいないので全部自主学習だし、一般的にこれが正解なのかも確認する術が無い
同期が徴兵された
Dona Dona...
まぁ、正確には2ヶ月先輩だけど。
---
4月半ばにアルバイトとして今の会社に採用されて早2ヶ月、来月から正社員への登用が決まった。
相変わらずマシン増えないし人はいないし寧ろいなくなるしで大変だなぁと他人事のように仕事してるけど、明日は我が身なのか...。
バイト期間中はタイムカードできっちり給料出て、週4の残業30hくらいでそこらへんの新卒と同じくらい貰えてたから良し(手取り16くらい)。
正社員になっても据え置きらしいので残業を絶対しない覚悟で臨めば勝利って感じ。
他人の給料メッチャ気になるマンだけど、世間的にはタブーというかあまり話題に出してはいけないみたいな風潮が謎。
---
当たるかどうかはともかく、採用・マッチング的なwebサービス案件を仕事で(わりと気楽に)作ることになったのでしばらくは楽しめそう。
---
prediaにハマる。