1日1%成長するブログ

毎日成長するために仕事/プライベートで得た学びをアウトプットするブログです

Vimiumを使っているとスプレッドシートでEscキーが反応しなくなる

スプレッドシートを間違って全画面表示にしてしまうと、 メニューバーが表示されなくて非常に困ったことになる。 Escキーを押せば治ると書いてあるのだけど、自分はなぜか反応しなかった。。 Vimium blocking 'escape' shortcut in google spreadsheet · Iss…

HubotでSlackに毎日目標を通知するbotを作る (環境構築編)

Hubotとは Github社のbot作成用のnode.js製フレームワーク Hubotの構成 なぜbotにHubotを使うのか? Hubotを使えばメッセージの受信・送信やチャットツールとの連携などbot実装に必要な最低限の機能を自分で実装せずで済む CoffeeScriptやJavaScriptで書ける…

アジャイル・スクラム開発とは?

スクラム開発の要素 プロダクトの要望を優先順位ごとに並べかえ、その順に機能を作る 固定の短い期間(1〜4週間程度)の間隔で開発を区切り、その中で計画を立てる プロジェクトの状況や進め方に問題がないか、メンバー同士で毎日確認し合う 作っている機能が…

仕事が任されやすくなるために毎日意識すべきこと

前提編 良い仕事は良い人間関係から。 明るい挨拶を必ずする 職場で出会った人には必ず挨拶をする。素知らぬ顔をしないこと。 無視された人のことは必ず相手は覚えてます。そして無視するたびにあなたに対する親密度が下がります。 苦手だと感じる人ほど自分…

価値の高い人材とは経営者目線で必要なことを考え、実行できる人

日本全国で400万近い会社がある中で「なぜ自分たちの会社が必要なのか?」を考えることはとても有益だと思います。 自分たちの存在価値は何か?誰に何の価値を提供するのか?これが見えていれば自分たちがやるべき仕事も見えてくると思います。 経営者目線で…

ソフトウェアエンジニアが価値を出すためには毎日どうやって過ごせばよいのか?

最近仕事をいかに楽しむか?をテーマに色々考えてます。もうかれこれ6年近くエンジニアをしてきているので、ただコードを書くことだけに楽しさを感じられなくなってきたんですよ。 特にフリーランスをやっていると、基本的には手離れの良い作業系の仕事が任…

Webアプリ開発プロジェクトの開発開始までに行う5つのステップ

1. 企画書を作成する プロジェクトの目的と何をするか?を説明する資料 一人で企画を考える場合とチームで考える場合だと、 やり方が全く異なるので、企画段階の話は別記事でまとめたいと思う。 2. ワイヤフレームを作成する 企画書でやることが決まったら、…

毎日の仕事を楽しむためのモチベーションマネジメント

仕事って人生の大半の時間を占めてるわけですが、なかなか楽しむのって難しいですよねー。 締め切りに間に合わせることに必死で、楽しむ余裕なんてないやい!って状態に陥ることよくあります。 でもどうせなら日々の仕事を楽しみたい!という訳でどうすれば…

リモートワークでチーム開発する時に便利なツール・ドキュメントまとめ

Webサービスをチームで開発する時に便利だなと思ったツールや、ドキュメントをまとめてみました。 これからプロジェクトを始める時の参考にブックマークして使ってもらえると、嬉しいです。 プロジェクトの説明資料 Googleドキュメントが多いです 作る目的や…

幸せを毎日感じて生きるために大切な3つのこと

突然ですが皆さんは今幸せですか?「俺は幸せだー!」って毎日感じながら生きている人の方が少ないんじゃないかなと思います。 自分はプライベートも仕事もうまくはいっているのですが、 幸せを毎日感じて生きてはいないなと感じていました。 そこでどうした…

ActiveRecordのEnum型のデータをJavaScriptから保存する

enum(列挙型)の使い方 ActiveRecordのenumを使うと、プログラムからは文字列(名前)でアクセスでき、 DBには数値で保存される属性を作ることができます。 Modelに属性にセットできる文字列を列挙する class Post < ActiveRecord::Base enum status: { draft: …

Reactでエンターキーのイベントを取得する方法

onEnterは存在しない Reactがサポートしているイベントは以下の公式サイトに記載されています。 facebook.github.io onClick のノリで onEnterは無いのかな?と探してみてもありません。 ただし、代わりになるキーイベントがあります。 onKeyDownを使う それ…

リモートワークで必須の「よしなに力」を磨くために意識している7つのこと

リモートワークでは各メンバーが異なるスケジュールで仕事をしていることが普通なので、 何度もビデオ電話で打ち合わせするのが難しかったりします。 チャットで質問することもできますが、 すぐに返答が返ってくるわけではありません。 そこで限られた情報…

Webアプリの新規作成の実装パターン

一覧 -> 作成画面に遷移して新規作成 フォームでPOSTして、エラーならエラーメッセージを表示、成功したら一覧画面にリダイレクトさせるというオーソドックスなパターン。 Flashメッセージの実装は必要。作成後にセッションに保存して一覧画面で取得したらす…

JavaScriptのオブジェクトとJSONは別物

JavaScriptのオブジェクトとJSONは見た目がほとんど変わらないので、 違いがよくわかっていなかったのですが、明確に違いがあるようなのでメモしておきます。 JavaScriptのオブジェクト キーがクォーテーション無し & 文字列をダブルクォーテーションで囲む …

WebpackでReactを本番反映する時に行う設定

webpackの各種プラグインを導入 DefinePluginでprocess.env.NODE_ENVを置換する 特定の文字を任意の文字に置き換えることのできるプラグインです。 たとえば、 //webpak.config.js plugins: [ new webpack.DefinePlugin({ 'process.env':{ 'NODE_ENV': JSON.…

ReduxのProviderコンポーネントとContainerコンポーネントを理解する

Providerコンポーネント react-reduxが提供するReactコンポーネント 唯一Storeを持つことができるコンポーネント 配下のコンポーネントにStoreに保持するstateやdispatcherを渡す役目 Reduxでは1つのstateでアプリケーションの状態管理をするため、アプリケ…

CSSで記号を実装する

今回は文字の前後に記号を追加したい。 CSSの疑似セレクタ(:before, :after)を使えば要素の前後に値を表示できます。 値を指定するには疑似セレクタのcontentプロパティを使う。 IE7以下は未対応らしいですが、今回は無視しています。 contentプロパティで表…

Objective-CのAppDelegate.mって何をしてるの?

アプリを作った段階でデフォルトで作られるファイルの一つ。アプリ全体のライフタイムイベントを管理するためのクラス application: didFinishLaunchingWithOptions アプリが初めて起動した時に呼び出される application:applicationWillResignActive アプリ…

Objective-Cの基礎的文法の備忘録

変数 変数の型 変数名: int num = 100; int num; num = 100; データの種類 int: 整数 float: 小数点つきの数値 BOOL: YES/NOに使う 変数には数値しか入らない ポインター変数 ポインター変数とは「メモリ上のオブジェクトを指し示すアドレス」の数値が入って…

アジア・オセアニアのビザが必要な主な国まとめ

アジア 香港 90日以内の観光は不要 韓国 90日以内の観光は不要 台湾 90泊91日以内の滞在は不要 フィリピン 21日以内の滞在は不要 シンガポール 2週間以内の観光滞在は不要 インド 必要 ブルネイ 14日以内の滞在は不要 マレーシア 90日以内の観光滞在は不要 …

ReactNativeのAndroidで画面遷移を実装する

まずAndroidアプリの画面遷移の実装方法を理解してないと実装できないので、確認していく。 Androidアプリでの画面遷移の方法 複数のアクティビティを作っておき、インテントという機能を使うと遷移できる そもそもアクティビティとは? ユーザーが実際に目…

moment.jsでタイムゾーンを考慮して特定日の始まりと終わりを取得する

JST(日本標準時)で指定日の始まりの日時文字列(RFC3339形式)を取得 //2017-08-26T00:00:00+9:00 moment.tz('2017-08-26', 'Asia/Tokyo').startOf('day').format(); UTC(協定世界時)に変換すると、2017-08-25T15:00:00+0:00になる JST(日本標準時)で指定日の…

Golangで特定ファイルのテストのみ実行する

カレントディレクトリにあるテストを実行 ENV=test go test パッケージを指定 ENV=test go test パッケージ名 特定テストのみ ENV=test go test -run TestXXX 特定パッケージの特定テストのみ ENV=test go test パッケージ名 -run TestXXX

gitで特定コミットで変更した内容を確認する

ファイル名のみ git diff --stat [前のコミットハッシュ] [次のコミットハッシュ] 変更内容 git diff [前のコミットハッシュ] [次のコミットハッシュ]

よく忘れるJavascriptの正規表現のメモ書き

日付を確認する正規表現を元によく使う表現をメモしておく /^\d{4}\-\d{2}\-\d{2}$/ ^ 入力の先頭文字にマッチする /^A/はBACにはマッチしないが、ABCにはマッチする \d 数字にマッチする [0-9]に相当する {n} 直前の文字がn回出現するものにマッチする \d{4…

Vue.jsとVueValidateのよく使う機能のメモ書き

Vue.js 代表的なオプション el: 既存DOMにVueインスタンスをマウントする elを指定しないで$mountで new Vue().$mount(“#app”)のようにも書ける methods Vueインスタンスに組み込まれるメソッド vm.plus()のように呼んだり、VueインスタンスをマウントしたDO…

IOS実機(開発中)のクラッシュを解析する手順

Firebaseでプッシュ通知を実装する時にIOSアプリ起動したらクラッシュすることがあったので、その解析手順。 クラッシュログの取得 Window - Devises - view Device Logs 問題のクラッシュのログをコピーペースト 以下記事を参考にクラッシュログを解析する …

ReactNativeでIOS/Android実機でプッシュ通知を試すハマり所まとめ(随時更新)

実機ビルドでハマる所(IOS) SigningでTeamでログインしていない error: Can’t find ‘node’ binary to build React Native bundle nodeのパスを設定 Signing for XXX_Test Unable to resolve module immtable yarn add immutable React/RCTBundleURLProvider.…

人事と労務の違いって?

最近、労務関係の仕事に触れる機会が多いです。 よく聞きはしますがイマイチよくわかっていなかったので、意味をまとめました。 人事と労務 人事も労務も会社の「人」に関わる業務。 人事は「社員個人」を対象としており、労務は「会社全体」を対象としてい…