You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
概要 たまに見かける「今このページ○人がこのページを見ています」などの人数を Redis のソート済みセット型でカウントしてみました。 完全なリアルタイムではありませんが、直近 N 秒以内にアクセスしたユーザをオンラインユーザと見なすことで比較的簡単&低コストに取得出来ます。 セットする内容 キー名: 適当な固定値をセット スコア: 最後にアクセスしたタイムスタンプをセット メンバ: ユーザIDをセット 方法 1. 最終アクセス時間の追加 or 更新 アクセス時にアクセスしたユーザの UserID でメンバを追加します。 既に同じ UserID のメンバが存在する場合は最新のタイムスタンプに更新します。 (例) 2016-10-01 10:00:00 に UserID: 100 のユーザがアクセスした場合:
Cookpad 社の dmemo、最近業務で使ってます。 データベースドキュメント管理システム dmemo のご案内 - クックパッド開発者ブログ とても便利に使わせていただいてるのですが、一度テーブルのドキュメントを書いたあとにテーブル名をリネームしてしまうとドキュメントを引き継げないという問題がありました。 各カラムの Markdown ドキュメントを一つ一つコピペして保存してもいいのですが、男らしく dmemo の DB を直接書き換えて引き継ぎしてみました。 手順 table_memos テーブルの旧レコードの id を一時的に負数などに置き換える (ex: 50 -> -50) table_memos テーブルの新レコードの id を旧レコードの ID で置き換える (ex: 100 -> 50) dmemo (Web) 上で旧テーブルが Unlinked table に変わって
<?php use Phinx\Migration\AbstractMigration; class CreateUsersTable extends AbstractMigration { // Migrate Up public function up() { $table = $this->table('users'); $table->addColumn('id', 'integer') ->addColumn('name', 'string') ->create(); } // Migrate Down public function down() { $this->execute('DELETE FROM users'); } } migr8 https://github.com/kwatch/migr8 Ruby製 SQL Phpmig https://github.com/
MySQL は DB スキーマに関する情報を information_schema DB から参照でき、カラムに関する情報は columns テーブルから参照できます。 なので、例えば以下のようなクエリでカラムに関する情報を一覧して取得できます。 SELECT * FROM `information_schema`.`columns` WHERE `table_schema` = "任意DB名" AND `table_name` = "任意テーブル名"; このクエリでは以下のような情報を取得できます。 必要に応じて SELECT に指定するといいと思います。 (よく使いそうなフィールドだけ太字にしました) TABLE_CATALOG TABLE_SCHEMA: DB名 TABLE_NAME: テーブル名 COLUMN_NAME: カラム名 ORDINAL_POSITION: スキーマ上のカ
JetBrainsから製品のライセンス体系が変わるというメールが来ましたが、ちょっとモヤモヤしたので調べてみました。 新ライセンスのポイント JetBrains製品が新ライセンスに切り替わるのは、2015年11月2日からです。 新ライセンスに関する情報の詳細は、以下のページに載っています。 Monthly and yearly plans with JetBrains Toolbox New Licensing Model and JetBrains Toolbox – Licensing and Purchasing FAQ 新ライセンスのポイントは以下の3つです。 サブスクリプション型のライセンス 月単位のライセンスの導入 Perpetual Fallback License サブスクリプション型のライセンス これまでのライセンスも「アップグレード・サブスクリプション」という表記でした
この記事は Git Advent Calendar / Jun. 25日目の記事です! 24日目はrosylillyさんの「複数人での Git 開発に便利な 3 つのコマンド」でした。 gitslaveとは gitslaveはこちらで公開されているツールで、あるgitリポジトリの中にサブディレクトリとして別のgitリポジトリを置いて管理するためのツールです。 似たようなツールとしてgit submodule(sotarokさんの「Git submodule の基礎」がとてもわかりやすい!)があります。 しかし、submoduleで管理しているリポジトリ内も頻繁に更新するような使い方だと、以下のような操作が結構煩雑です。 親リポジトリとsubmoduleで管理している子リポジトリに一緒に変更を加えてcommitやpushをしたい。 親リポジトリと子リポジトリで同じ名前で一緒にブランチを切りた
oh-my-zsh の設定で history コマンドが fc コマンドに alias 設定されているらしい。 https://github.com/robbyrussell/oh-my-zsh/issues/739 以下のように、historyの前にバックスラッシュを追記した。 (@syohexさんと@hisaichi5518さんにこの方法を教えていただきました。ありがとうございます!) function peco-select-history() { local tac if which tac > /dev/null; then tac="tac" else tac="tail -r" fi BUFFER=$(\history -n 1 | \ eval $tac | \ peco --query "$LBUFFER") CURSOR=$#BUFFER zle clear-scree
Picture by ITエンジニアを目指す女子高生たちの学園ライフ4コマ漫画『ぱいじょ!』 こんにちは、谷口です。 退職・転職エントリの記事は多々ありますが、転職を考えている人にとって参考になるのは、「転職を実際に経験した人が、その後どうなったのか?前職との違いをどう感じているのか?」といった後日談ではないでしょうか。 paizaを開発しているのは、ほとんどが転職を経て中途で入社したエンジニアです。 paizaで転職のご相談をいただく方の中には、SIerからWeb自社サービス系に転向したいという方が多いため、今回は、SIerからWebサービスを自社開発している弊社へ転職して半年~1年弱のエンジニア2人が、実際の業務を経験してみて感じた前職との違いを、開発環境や労働環境、モチベーションやキャリアについてなどあらゆる面において聞いてみました。 いずれは転職を考えている人、転職はまだ考えてない
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く