Dance with Tech

プログラミングとか学んだことの備忘録ブログです。

プログラム

レガシーシステムをリプレイスして古の遺産を浄化した話

まえがき タイトルの通り、少し前に 8 年近く(正確な歴史は不明)動いていたシステムをリプレイスしました。 かかった期間は約 2 年、発行した課題チケット数は 6000 超え、リリース直前に直属上司が退職など紆余曲折ありました。 良かった点や反省点が多く…

Django(Python)のDB操作まとめ

仕事でDjango(Python)に触る機会があり、0から学習しながら進めています。 今回は個人的に分かりづらかった、DB(SQL)周りの内容をまとめました。 ※ドキュメントを読んでも分かりますが、ちょっと読みづらいです 条件指定 SQLで条件を指定したい場合は「f…

Swiftでランダムな文字列を生成する方法

Xcodeのバージョン:7.1 Swiftのバージョン:2.1 方法 ランダムな数値を生成した後、 その数値の場所の文字列を取得すれば、 おのずとランダムな文字列が生成できます。 Swift 2以降は、 advancedBy(n) を使って任意の場所の文字列を取得できます。 注意点 …

Swiftでキャリア情報とかOS情報とかデバイス名とかIPアドレスとか取得する方法

Xcodeのバージョン:7.1 Swiftのバージョン:2.1 ユーザーが使用している端末のデータを取得したいときがあります。 キャリア名とかOSのバージョンとかデバイス名とか。。 ある程度の情報は、以下の方法で簡単に取得できます。 IPアドレスだけ特殊で、 Bridg…

iOSアプリ(9対応)のリリース準備・対応で苦労したこと5つとおまけ

リリースというものは、そう何回もやるもんじゃないので方法を忘れがちです。 覚えている今のうちにメモしておきます。 ※ちなみにXcode7を使っています。 1.リリースするための事前準備が意外と多かった DistributionタイプのCertificateが必要 App IDが必…

エンジニアが使うキーボードは東プレのリアルフォース1択!

東プレのREALFORCEを使い初めてから、1年以上経過しました。 もうこれに慣れてしまうと、他のキーボードには戻れません。 その理由を以下にまとめます。 静電容量無接点方式を採用 文字だけでは全く意味が分からないですね。 ウルトラ簡単に言うと、最小限の…

SQLiteの注意点3つ!テーブル作成と同時にINDEX貼れないetc

最近SQLiteを触っています。 基本的な構文などはMySQLと同じですが、 決まりごとの違いや若干のクセがあるので、メモしておきます。 SQLiteのデータベースはファイルとして生成される SQLiteはデータベースをファイルとして生成します。 なので、「ファイル…

【Swift入門】ディクショナリから値を取り出すときに順番がバラバラになって驚いた

iOSアプリを仕事で作ることになったのでSwiftを始めました。 その中で、勉強したことと少し驚いたことをメモしていきます。 タイトルの件は中盤辺りに書いています。 ちなみに僕は、Objective-Cを2年位前に本1冊終わらせたくらいで、 iOSアプリに関しての知…

プログラミングとかウェブでよく出てくる小難しい英単語30選

よくプログラマー(エンジニア)は、 数学が得意な人じゃないと出来ないとか言われたりしますが、 個人的には数学というより、 英語が出来る(好きな)人の方が有利だと思っています。 だってプログラミングってコメント以外英語ですし。 「なでしこ」とかは…

【Linux】サイズの大きいファイルはお前だ!消してやる!

タイトルの通り、 ストレージ内で容量の大きいファイルを見つけて削除する、Linuxコマンドをまとめました。 環境はAWS(EC2)でCentOS7です。 CentOS7の構築については、 少し前に書いて何故かとても読まれた過去記事を参照してください。 <a href="http://…

CentOS7でPHPとか動かすところまで構築するのに使ったコマンドまとめ

こういったインフラ周りは日頃触らず忘れやすいので、自分の備忘録としてまとめておきます。 環境はAmazon EC2です。 CentOS6.xと7の主な変更点 「service」コマンドと「chkconfig」コマンドが、「systemctl」コマンドに統合 「iptables」が「firewalld」に…

PHPのスーパーグローバル変数の一部はcronでは動かないんだってばよ

AMIを使っていくつか作成したインスタンス(AWS)からホスト名を取得して、それを別サーバーに渡す処理を作ろうとしました。 で、ホスト名は以下のスーパーグローバル変数を使用して取得出来ました。 めでたしめでたし。 あとはこれをcronで回せばお終いっと…

ナウでヤングなHTML5を使ってサクッとファイルをダウンロードさせる

この記事は「1分で実現できる有用な技術 Advent Calendar 2014」の 18日目の記事です。 Qiitaで催されているアドベントカレンダーに参加してみました。 本題 何かの機能を作っていて、ユーザーにファイルをダウンロードさせたいときがあると思います。 その…

Vagrant使ってnode.jsとか色々ぶっこんでいくついでに解説とかしていくんで夜露死苦!

前回はMEAN Stackの話を書きました。 今回はVagrantを使って作った仮想環境に、node.jsとか色々突っ込んでいこうと思います。 Vagrantのインストール とりあえず、下記サイトを見てやれば、 VirtualboxのインストールからWebページの表示まで完遂出来ます。 …

MEAN(MongoDB,Express,Angular.js,Node.js)環境を構築して簡単なアプリを作るまで

ちょっと面白そうだったので、勉強も兼ねてごにょごにょやってみました。 #参考サイト [mean.io] Mac OSX Yosemite に mean.io 環境を構築 - Qiita その中でハマったというか、躓いた部分を書き出していきます。 エラーのキャプチャとか取るの忘れていたので…