konbu's blog

PHP/Ruby/Python あたりが仕事で使っている言語です。プログラミング、学習や教育ネタを書いていきます。

法人の運営に使っていて便利だったサービスたち

僕は法人登記した時はまるっきり素人だった (普通) し、前職で事務所管理はやっていたものの、バックオフィスに投げるまでの管理と、事務所契約時の契約対応くらいなので、運営業務自体はまったく知らなかった。 幸運な事に、近場に経営や法人運営を教えてく…

プログラマが知らない会社と税金と保険の話

プログラマと書いているけど、実際には会社員と置き変えられる話。 最近はエンジニアはフリーランスになるべき or 会社員を続けるべき論争みたいなのが多くネットで見られるようになったが、正しいコスト感を持った上でその話を展開する人が全然見られず、大…

Emacs を覚える際に体に染み込ませた方がいいデフォルトキーバインド

Emacs を使う人でそれ Emacs じゃなくて良いじゃんって感じの使い方をする人がたまに居るんだけど、これは Emacs 以外のエディタでも同様で、単に機能盛り盛りの豪華なエディタが良いなら IDE の方がオススメだよって良いたくなる。 で、自分が Emacs (や vi…

Laravel で save メソッド実行時に保存前処理を挟む方法

Laravel 5.6.36 での話。 DB のカラムデフォルト値設定が NULL 且つ、NOT NULL な制約のあるカラムはデフォルトの Laravel と非常に相性が悪く、困る時がある。 DB の設定の問題は DB で解決すべきという事も考えられるが、開発現場の状況によっては (政治的…

Laravel でイベントとリスナを実装する時に面倒な手順で対応していた

今まで Laravel でイベントとリスナを実装する時にわざわざ手間がかかるやり方をやってしまっていたという話。 laravel 5.6.36 時点の話 (結論にも書いているが、5.2 のドキュメント時点では既にこのやり方が書かれている)。 内容 今まではイベントとリスナ…

プログラマの使うキーボード

この間 (プログラマではない人と) 話をしていた際に、僕が勧めた物を即買ったみたいな話をされ (その時は iPad mini 5 を勧めた)、そういえば自分が良いと思ったものはリアルで会う人にはオススメするけどブログでは書かないなぁと思い、不定期で書いていっ…

SSH 接続先にログインした状態で文字列展開等を使う

今まで esa.io を使っていたけど、色々あって解約することにしたのでブログにコンテンツを移していくことにした。 外部に出すこともできないものもあるため精査しつつ定期的に移していく。 目的 SSH でログインした先のホストで for in を使ってシェルを実行…

炎上する案件としない案件

エンジニアを目指すと一緒についてくるイメージのある炎上案件。 炎上する理由は色々言われがちで、マネジメントができていないから、技術力が無いから、というものは良く言われるもの。 ウォーターフォールはだめ、アジャイルで、SCRUM なら、本当に色々言…

0. プログラミングの学習を開始する前に困る問題

biwakonbu.hatenablog.com 以前上記記事の中でやるべきことを書いたが、各項目を実際に掘り下げていく前に、プログラミングを初めたいという人から質問される内容を書いておく。 なのでステップ 0 という意味のタイトル。 PC は買うべきか問題 プログラミン…

プログラミングを OJT で教えていて思うこと

最近業務の中で若い子 (具体的な年齢は知らない) にプログラミングを教えることがあって、その所管を書いておく。 その子のスキルと現場の方向性としては、下記のような感じ。 現場 PHP / Laravel / MySQL で、フロントは Vue.js だったり/ jQuery だったり…

今 web プログラミングを覚えるためにやらないといけないこと

Web プログラミングを今から勉強しようと思った時に、 どれくらいのことを勉強すればとりあえずできると言えるレベルになるのか、考えてみた。 bash (UNIX 系コマンドやターミナル) の操作 プログラミング用のテキストエディタ (IDE含む) 使用する言語の習熟…

退職と起業

去年のタイミングで退職し大阪で 株式会社coroutine という会社を立ち上げました。 理由は前から会社を起こしたかったという物と、ある程度業界で仕事をして業務委託でも生きていける気がしたからという物の二つ。 起業アイディアがあるとか、VC からお金貰…

npm で入れたコマンドの path について

npm

debian の jessie では apt で npm を入れられるので入れてみたけど、npm で入れたコマンドを実行しようとすると not found が出るのでちょっと工夫が必要だった。 どうも /usr/bin/env node でコマンド実行を指定しているみたい (coffee とか) なんだけど n…

django.contrib.auth をメールアドレスで認証するカスタマイズ

結構面倒なので、途中で投げて、username と password での認証でも良いかーとなった。 一応調査したので痕跡だけ残す。 Customizing authentication in Django | Django documentation | Django この辺とか詳しく書いてたんだけど、結構面倒臭く、認証をメ…

django の auth をカスタムする

Django 標準で付いている auth 機能をそのまま使うのでは無く、良い感じのログインデザインを作ろうと思うとカスタマイズする必要がでてくる。 ここを参考にすると良かった。 blackglasses.me カスタムデザインを作るには、ちょっと面倒だけど model やら vi…

jinja2 と Django と django-debug-toolbar を使う

django 1.9 と jinja2(1.9 ではデフォルトで使用できる) と django-debug-toolbar を併用したかったので、色々調査。 結構悩んだけど、こんな感じで並列に書いてしまって良いらしい。 django-debug-toolbar は django の標準が使えないと駄目? らしく消すと…

手を動かしてみる

昨日の続き。 本を読みながら、再帰の話と実際に手を動かすところがあったので適当に書いてみた。 本書で話に上がっている zip 関数 (Python にある関数と同じ挙動) を実装してみるという内容で、 自分がどの程度本を読んで理解できているのかを確かめてみた…

Erlang 勉強はじめ

かねてからやろうやろうと思ってはや 5 年 (冗談でも何でもなく、Elixir 出た時にやりたいと思ったので...) 一向にやる気が出ず放置していたんだけど、昨今の言語事情を考えて始めた。 言語事情と言うのは、最近 Scala、Go、Erlang をプロダクトに使用する会…

EffectivePython その 1

EffectivePython を読んでいて、なるほどなぁと思う部分を書き残しておく。 Effective Python ―Pythonプログラムを改良する59項目作者: Brett Slatkin,石本敦夫,黒川利明出版社/メーカー: オライリージャパン発売日: 2016/01/23メディア: 大型本この商品を含…

emacs でバッファの状態を保持する

emacs で作業をしている時に OS の再起動が必要になると本当に萎えるので探して導入してみた。 いや、Mac OSX とか Windows とか使わなかったら良いだけなんだけど、会社では Mac なので再起動をしょっちゅう求められてしまうんで。 そんな時にバッファを消…

数日考えた結果シンプルな oauth が一番な気がした

色々考えて見たけど Django 依存してるライブラリよりも、単体で使えるモノにした。 github.com これくらいシンプルだと言語とかライブラリの違いに苦しまなくて良い感じ。 GitHub の認証とかだとこの辺見たらできる。 GitHub OAuth 2 Tutorial — Requests-O…

allauth で oauth するまで

とりあえず使えるレベルに持っていくのには、そんなにやる事は多くなかった。 この辺を参考にした。 www.marinamele.com 大体の流れとしては、settings.py で INSTALLED_APPS とか AUTHENTICATION_BACKENDS とか SOCIALACCOUNT_PROVIDERS の設定をして、urls…

django で oauth する

簡単に調べてたけど、django-allauth が良さそう。 github.com