ラベル システム設計 の投稿を表示しています。 すべての投稿を表示
ラベル システム設計 の投稿を表示しています。 すべての投稿を表示

2016年7月13日

画面デザインになにを使ってますか?

 通常お客様と画面イメージを打ち合わせるときに何かツールを使って画面イメージを確認すると思います。

 よくあるのがEXCELやVisioはたまた、HTMLで書いて製造に活かそうという方もいると思います。
実際のところそれを作る人の手に馴染んでいるものが一番早くて綺麗にできると思います。


以前から試しに使っているのですがCacooを使っています。
何がいいかというと、

  • ブラウザさえあればどこでも使える
  • いろいろなステンシルがある(有料、無料を含めて)
  • 作成した画面を簡単に共有できる
  • 図をばらばらで管理ではなくエクセルの様にシート管理ができる。
  • フォルダ管理ができる(プロジェクトでわかるとかできるよね)
  • 無料で25枚までのシートを作ることができる
    一番安いプラスプラン(\490/月)の場合、1,000枚まで作ることができるのでこれでも十分かもね。
  • 他にもね。

 実際に画面のデザインをしいて便利だと思ったのは、他のボックスと位置を揃えるのが簡単です。
 複数のボックスを選択して整列するという機能もありますが、マウスでボックスを動かしている時に他のボックスと位置が合うと他のボックスの色が変わって、「今、このボックスと位置が会ってますよ」と知らせてくれるのがとてもよい感じです。


 画面の動きはなくても良い場合は、Cacooを使ってデザインをするととっても効率よくできるのでは無いでしょうか?

 画面遷移が必要なときは、Prottを試そうと思っています。


2016年5月24日

VCSでファイルコミットの時に気をつけてね

 プログラム開発している時は、今時は、Gitだったり、Subversionだったりを使ってソースのバージョン管理をするのは当たり前です。

 ですが、こんな人は「コミットしないでください」と言いたくなってしまいます。


  1. 特に内容は変更してないけど、使っているエディタの影響でインデントが全体的にちょとずれちゃったけどそのまま大量にコミット
  2. コンフリクトとになったけど、そのマーク付きのままコミット
  3. コンフリクトになったけど、適切に修正しないでコミット
  4. 変更の塊ごとではなく、ファイルを個別にコミット
    Gitだったら、コミットを纏めることができるからまだ救いようはある。
    コミットをまとめてからPushしてくれれば良いので


みなさんは、ちゃんと意識してコミットしてますか?
VCSは、バックアップようのもとと思っていませんか?
使ったことない人、理屈がわかってない人にはちゃんとなぜ使うのかをちゃんと説明して挙げてください。





2016年1月22日

AWSからGCPへの移行を検討

 移行したい理由は、お客さんにもう少し安くなりませんか?と言われたのとGCPのセミナーを聞いたのがきっかけです。

まずは、安くなりませんか?の話から。
一般的なWebアプリケーションの構成なのですが、DBサーバにダウンされるのが困るので二重化しています。
GCPというのがGoogle Cloud Platformです。
DBサーバは、CloudSQL 2ndなのでまだβ版なのでけどね(早く正式リリースして欲しいです)。
やはり、DBサーバの価格差が大きいです。
AWSは、サーバダウンに備えて2台使いますが、GCPは、サーバ単体でそれをカバーする仕組みがあるそうなので1台で良いようです。

APサーバ
 AWS t2.small CPU=1 MEM=2GB  $0.04/h
 GCP n1-standard-1 CPU=1 MEM=3.65GB $0.039/h

DBサーバ
 AWS(RDS) db.t2.medium CPU=2 MEM=4GB $0.208/h(Multi AZ)
 GCP(CloudSQL 2nd) n1-standard-2 CPU=2 MEM=7.5GB $0.078/h


GCPのセミナーで聞いた話。
コストパフォーマンスを見てもだいぶGCPが良いのではないかと思います。

2015/12/04 GCE vs EC2 vs Azureベンチマークを見ても凄さを伺います。
※このベンチマークをとった会社の人が言っていましたが、AWSのEC2は、たまたま状態の悪いのを引いたのかもしれないと言ってました(差が激しすぎるそうです)

サーバは、日本にはないのですがGoogleが世界に引いたネットワークケーブル内を通っているらしくアジアにあるサーバであればそれほど遅延を感じることはありませんでした。
(実際、お客さんの環境をテスト的に移植してみました)
サーバが日本に来ればもっとよくなると思うんですけどね。Googleさんよろしく。

ポリシーとしてセキュリティー重視ということなのでそのあたりも安心ですよね。


もっと、もっとGCPのセミナーや本の出版をしていただきたいと思いました。

2015年11月17日

その資料後に役に立ちますか?

 ある取引先でのことですが。

プロジェクトがトラブっている原因としてレビューがされていないとかという問題が上がったのだと思うのですが、レビュー記録表のフォーマットが社内で公開されているようです。

 レビュー記録票は大切だと思います。
作成したものの問題点を記録してその問題が解消されたかを管理し、後工程に課題を残さないようにする。
ある程度の規模のプロジェクトでは必須でしょう。(レビュー記録票というより、レビューがですが)

 で、今回問題かもしれないと思ったのが、レビュー記録表を何で作成して管理して将来どう役に立てるかです。

 この会社は今までのやり方を変えてもっと先進的に作業をしたいという社長の意向があるのですがなかなかうまくいっていないようです。
 「学習時間がない」とか「学習コストが高い」という言葉をよく耳にします。

新しい何かを始めようとしたら学習時間がかかるのは当たり前であり、0にすることはできません。
(生まれつき持っている技能だったら別ですが…。)
それを理由に昔ながらの手法でやってしまいます。

 よく悪の手法と思われるエクセル方眼紙の管理表です。
フォーマットを見ると昔々使われていた紙ベースのものをそのままエクセルに媒体変換したものです。
例えば、再レビューの要、不要を選択するところは、

 【再レビュー 要 ・ 不要】

という風になっていていずれかに「○」の記号を付けたりするのしょう。

この時点で、レビュー記録からのデータ集約ができなくなってしまいます。

 たぶん、担当の方たちは、レビュー記録が大切だ、記録するためのフォーマットはどこかにないか、新しく作成する時間が無い、無いよりあったほうが良いの頭になっているのでしょう。

 思うのは、レビュー記録はあるのが前提(作るのか、探し出すのかはどちらでもよい)であり、そのレビュー記録をどう使って、未来にどう生かしたいのかという考えが欠落しているしているのでないかということです。

 例えば、必要な情報を簡単に検索ができる、どんな指摘が多いのかの分類ができるとか後に役に立つ記録も同時にできるというのが大切だと思っています。


 エクセルでも良いのですが、後に役に立つような仕掛けを入れつつ使えるものを準備してほしいものです。
 きっと上司なる人たちは、その集約結果がほしいとか言い出すのは目に見えているので。
自分の組織はどこが弱いのかをあぶりだして改善するために使うと思います。
レビュー結果を記録して修正するだけのものにしたらもったいないです。組織を改善するチャンスを失っているかもしれません。


極論をいうとツールなんてなんでもいいのです。以下のことが解消できていれば。

  • 実際に使っている人が面倒でないこと
  • 集約したデータを将来役立てるために使えること
  • それほど高額でないこと
  • 学習コストがそれほど高くないこと



2015年11月11日

ガントチャートを何でつくるか

 あるIT会社のプロジェクトがトラブっている模様です。

アプリケーションの作成が遅れたり、テストが遅れたりしているようです。
 遅れた理由を観てみると、I/F部分が詰められていなかったり、作ったプログラムのソースがリポジトリ(Gitなのか、Subversionなのかは不明)登録されていない等いろいろあるようです。
まぁ、そこはいいのですが(ホントは良くないけど)、その遅れを回復するために各機能のテストスケジュールを作ったようです。

 それをちら見したところエクセルの方眼紙でガントチャートを作っていました。
稲妻線もあり、全体の状況を分るようにしようとしているなというのも解ります。

 でも、でも、もしスケジュールの変更とかがあったらどうするんでしょうかね?
あるまとまった単位で作業順番を変更するとか担当を変更するとかした時にガントチャートをまたちまちまと変更することになるんですよね。
 そういう管理資料を作るためだけに時間なんか掛けたくないと思うのですが、やってる感を出すためには必要なんでしょうか?

 そうならないために、プロジェクトが始まったばっかりの時やちいさいプロジェクトをやるときに管理ツールの練習をしながら使う必要があるのです。
 自分がたまたま携わっているプロジェクトは、2人しかいない(1人は別のことに時間を取られているので実質1人)のでそういうプロジェクトで試しにいろんなツールを使ってみればいいんですけどね。

 プロジェクト管理だったらMS Projectだったり、OpenProjだったり他にもクラウドな奴もたくさんありますけどね。
 Google Apps使ってるんだったら「gantter」がいいかなー。

 チケット管理だったら、RedmineとかTracとか…。


 チャンスなんだけどさ、その会社の中で第一人者の担当者になれるのですから。

会社員の頃はそれが嫌で裏でこそこそと練習していたけどね。
結局は新しいことを覚えるのが嫌だなー、面倒だなーという人(特に上司と言われる方々)が多かったので夢かなわずだったんですが。

2015年7月24日

AWSのELBとHTTPSとCakePHPでハマりました

 Webサイトを作るときには、HTTPSにしてセキュアにする必要があります。


なので、AWSでELBに証明書をインストールして以下のような構成にします。

リクエスト(HTTPS:443)

ELB(HTTPS:443→HTTP:80)

Webサーバ(HTTP:80)

ですが、httpsでアクセスしているにもかかわらず、Router::fullBaseUrl()を参照すると「http」が返却されて来てしまい困ったこととになります。
例えば送信メールにURLをつけるときに「http://ホスト名/~」となってしまいます。
他にもページ遷移がちゃんとできなくなってしまうような現象もあったような気がします。

確かに、Webサーバー内に入ってくるときは、HTTP:80なので間違いではないのかもしれません。


じゃあ、どうするか。


app/Config/bootstrap.phpに以下のロジックを書いておきます。
if(isset($_SERVER['HTTP_X_FORWARDED_PORT']) && 443 == $_SERVER['HTTP_X_FORWARDED_PORT']) {
    Router::fullBaseUrl('https://'.$_SERVER['HTTP_HOST']);
}
するとちゃんと、Router::fullBaseUrl()で「https://ホスト名」を返してくれます。

2015年4月23日

新システムがリリースされました

 1年以上前から手がけていたシステムが本日プレリリースを迎えました。
と言っても社内システムなので世の中の人には関係ないのですけどね。

 本当は、去年の10月にリリースする目標でやっていたのですが、いろんな問題が紛失して今になってしまっています。

 で、何かとういうと、システム移行の過渡期なので旧システムと新システムが同時に運用されます。
 新しい伝票データは新システムで登録して、既に作成されているデータは旧システムで運用していきます。
 システムを使う現場の人はとても大変だと思いますが頑張って新しい方を使って頂きたいです。


 実は、システムを作った側も大変になります。

  • 課題が沢山残っているので随時対応
  • ステージング環境、プロダクション環境と開発環境の3環境を面倒見る必要がある。
  • ステージング、本番環境のリリースを間違わないようする。
    プログラムだけだったらいいんですが、データベースもあるのでいろいろと難儀

 開発環境以外は、AWSなのでこれを機械に開発環境もAWSに作ってしまおうかとちょっと考えてもいます。
 でも、お金が掛かるのがちょっと気になるんですが…。


 これをしながら別のシステム開発もしていくので頭の切り替えが大変です。
新システムのリリース後は何かと問い合わせがあると思いますが頑張っていこうかと。


 でも、これを期にリリースのためのツールや手順のパターン化などが整理できていくはずと思って、勉強期間としても捉えています。
 動けばOKではないのです。いろんなことがスムーズになって属人性の排除ができればよりグッドです。

2015年4月18日

Gitを使う前にgit svnで練習がよいのかな?

 近い将来プログラムソースのバージョン管理をGitに切り替えていこうかと思っています。
 現在は、Subversionでやってます。
 いきなりGitってのも良いのですが、Gitを使ってSubversionのリポジトリを使うためのgit svnというのがあるというのを知りました。
 Subversionを捨てて、Gitに移行してもよいのですが慣れていないツールを使って振り回されて本来やりたいことができなくなると困るのでね。
 新しいプロジェクトが始まったら、Gitを本格的に使っていくことにしました。

で、git svnは。
やっていることは、以下の以下のとおりです。
準備

  1. Subversionのtrunkをコミット毎にローカルのgitリポジトリに取り込む。
    完了すると、ローカルのgitでバージョン管理ができるようになる。
運用
  1. プログラムソースを修正する。
  2. 修正したソースをステージングへ追加する。
  3. gitのリポジトリにコミットする。
    ↑ここまでが通常のGitの操作
  4. git svnでsubversion用のコミットをする
    git svn dcommitコマンドでSubversionのリポジトリにコミットする。
かるく動かしてみたらできたので行けそうです。

 これの何がいいかというと、Subversionの場合、リポジトリが見えてないとコミットできないので直したものがどんどんたまって、ポイント毎に戻りにくくなってしまいます。
 ですが、Gitであれば、ローカルのGitリポジトリに対してコミットをできるのでポイント毎に戻ることができるようになります。
 Subversionのリポジトリが見える環境では、Subversionを使って、つながってない時はgit svnを使ってローカルにコミットをためる。で、Subversionが見えるタイミングになったら、dcommitをしてSubversionにコミットです。

 これで、どこでもソース管理ができるという寸法です。いかがですか?

本当はGitを直接使うのが良いので早くGitに移りたいです。
OSも関係なく、コマンドラインでもさくさくと作業ができればプロっぽいですよね(笑)

Git svnの使い方サイトとか

2015年4月8日

やっぱり自分の開発環境は最高

 出向先から舞い戻ってきて(*1)自分の事務所で開発作業をしてるのですが、やっぱり日頃使い慣れている環境での作業は快適だし、捗りますよね。

 いくらCPUが早いPCだったとしても画面解像度が低いと効率の良い開発はできなです。
自分のディスプレイの解像度が高過ぎる(2,560X1,440)のだと思いますが、ノートPCでメインの開発はやっぱり無理があります。
 あと、キーボードが手に馴染んでいるかもとても大事です。
 ワープロやってるだけだったらいいけど。


*1
 出向先に居てもプロパーの人が他の作業につきっきりでなにも進まないのでここに居なくてもいいですよねと言い続けて作業することになりました。
 まぁ、やるべきこともいまいちあやふやですが目指すところはだいたい理解できたので自分の理解のなかで進めることになっています。
 で、週1で見せて整える作戦です。



うまくいくかどうかわかりませんが挑戦中です。
出向先の人(会社)も新しいことに挑戦の年だということで了承してくれたのだと思いますが…。

2015年3月31日

MSDNサブスクリプションを3年契約しているが…

 以前はマイクロソフト製品での開発が多かったのでずーっと、MSDNサブスクリプションを契約していますが、去年は殆ど使っていませんでした。
 ダウンロードさえしてないし、どんな製品が登録されているかも見ていないです。

で、今年2年めなので払い込みました。そんなに安くないです。

 以前、開発でマイクロソフト製品が必要になった時に有効期限が切れていて再度高額スタートになってしまったので安い状態を継続するために毎年マイクロソフトに支払をしています(あまり使わないのに…)
 使わないんだったらやめればって思われるかもしれませんが、OSをいくつもインストールしたりするのでやっぱり欲しいのです。
 じゃぁ、OSだけのにすれば…。確かにそうですよね。でもデベロッパーとしては、いつでも発進できる状態にしておきたいんですよねー。

 最近使っているツールは、CentOS(サーバー)、Apache、PHP、MySQLなので実は、全部無料でいけたりします。

2015年3月24日

テキストエディタをatomに変更することを決意。その理由とは…。

 先日、テキストエディタのatomが良さそうという記事を書きましたが、やはりSublime Textから乗り換えることに決めました。

やっぱり、無料で使わせていただけるというのが一番大きいです。
画面分割も細かくできるのが良いです。

あと、LESS(CSS)とJavaScriptのminifyがエディタ無いでできるのが良いです。
今までは、LESSとJavaScriptは、minifyをしたいが為に、VisualStudioを使っていました。

 ホントは、今の手掛けているプロジェクトも切り替えたいところなんですが、minifyしなおした瞬間からテストをし直さないとならないだろうという恐怖から切り替えられないです。
 徐々にminify化しながら切り替えかな。


2015年3月21日

テキストエディタを変更しようかと画策中

 プログラミングをするときにテキストエディタは欠かせません。
今のところ、SublimeTextをプログラミングをしていますが、去年くらいから話題のatomを使ってみようかと思っています。

やりたいこと

  • キーバインドの変更
  • LESSや、JavaScriptのminifyができること
  • シンタックスの色分けに対応する
  • UTF-8、ShiftJISなどの文字コード
  • 改行コードの変更
  • 日本語化(なれれば良いだけなのでなくてもOK)
  • 情報がたくさんあること
  • 画面分割ができること
  • 安いこと(無料だったら最高)

ちょっと試してみたのですが、画面分割が縦横無尽にできるようなのでちょっといいかもしれません。

 試しに使って見ようかと思いますた。



2015年3月9日

プロジェクト管理のツールご紹介

 以前、MS Projectを使って、スケジュールの管理をやっていました。
あのガントチャートがとってもいいんですよね。
視覚的にもわかりやすいし、タスクの順番の入れ替えも簡単にできたし。

でも、プロジェクトメンバー全員に使ってもらうとすると、結構「¥」が掛かるんですよね。

 で、無料で使えるものが無いかと探した所、デスクトップ版の「OpenProj」というMS Projectの代替となるアプリケーションを発見しました。
 これも結構よかったのですが、実際の所、どう使っていくかのテスト段階で使う必要が無くなってしまい、そのままになってしまいました。

 今は、いろいろなツールをGoogle Appsに寄せているので、Google Apps上で使えるクラウドなやつは無いかなと探した所「gantter for Google Drive」というものを発見しました。

 MS Projectほど機能はありませんが、無料ですし、一番欲しいガントチャートがあるのでちょっと体感しています。
 タスクの始まりや終わりを揃えたり、期間を会えたりもできるのでとっても良いです。
更には、複数人同時で触ることもできるようです。

これだったら複数人のプロジェクトも簡単に進捗管理ができますよね。


ここがそのサイト
gantter

2014年10月24日

カレンダーの祭日が変わることでITの仕事が発生する

こんな記事を見つけました。

 自民党は23日の合同会議で、「7月の第3月曜日」と定められている「海の日」について、制定当初の7月20日に戻す祝日法改正案を了承しました。

 昔、カレンダーの祭日を自動的に計算する仕組み(ハッピーマンデー対応とか言ってたと思う)をいれるという改修があったと思いますが、この法案が通ると、7/20は祭日という設定を入れないとですね。
 海の日を計算するロジックの削除して、7/20は、海の日で祭日というデータの設定。

 何のために、休日を変更するんでしょうかね?
IT業界に仕事を発生させるため?

2014年10月20日

MySQLテーブルのレコードサイズとか出すSQL

 データ量の見積をするために、テーブルのレコードサイズを必要があったので、SQLで出力できる方法を探しました。


SELECT
  table_name,
  engine,
  table_rows as tbl_rows,
  avg_row_length as rlen,
  floor((data_length + index_length) / 1024 / 1024) as allMB,
  floor((data_length) / 1024 / 1024) as dMB,
  floor((index_length) / 1024 / 1024) as iMB
FROM
  information_schema.tables
WHERE
  table_schema = database() AND engine IS NOT NULL
ORDER BY
  table_name
, (data_length + index_length) desc;
こちらから拝借しました。
http://d.hatena.ne.jp/sho-yamasaki/20120405/1333640589

2014年9月21日

売上大事だけど、それを中心に仕事すると失敗するという話

 会社をやっていると売上は大切だと思います。えぇ、とっても大切です。
でも、そこ(売上)を中心に仕事をするとプロジェクトが進まなくなるという状態にはまっています。

 間に入っているコンサルの人は、適切な見積を出さずに「やります」なんていうから、他の仕事をして(売上をあげるため)スケジュールを守ることができなくなるんですよね。

 その理由がお客が話が解らない人だからとか、お客の仕事が忙しいからとかとかになったりするんです。
 そもそも、そのお客の動きがわかっているはずなのだから(1年も前からお客と次のシステムの話をしているらしいので)、これくらい時間を取られるからこれくらいの見積を出さないとスケジュールに間に合わなくなるなとか考えるわけですよふつーは。
 それなのに、「自分はシステムを作らないから」とか、「お客が言ったことを伝えるだけだから」とかと単純に思って安い見積もりなんて出すから、他の仕事をしないとダメだになって、変な言い訳がでるんですよ。
 (思い込みかもしれませんが、プログラミングは必ずスケジュールオーバーするのが当たり前だと思ってるのかもね。そうじゃない人も居るのですよ。)

 打ち合わせに入りましょうか?と聞くと入らないほうがいいので、私でやりますとか言い出す(プロジェクトの最初のころの話です)。
 今では、どうやってプロジェクトを進めるかの議論を始めると面倒臭がって、いろんな言い訳をしはじめたり、打ち合わせに入っていいですよ(怒)みたいな話になってくるんですよ。
 どう思います?

 エンドユーザーの社長のすごいのは(嫌味ですが…)、「貴方はスケジュールを守りますか?」とかを一番最初に言ってきたんですよね。
 「てか、自分たちが守れない動きしてるんじゃねーの?」って返したいですわ。
 

今回の起きている問題

エンドユーザー

  • 自分たちの業務を回すためのシステムを作っている意識がないらしい。(←一番問題)
  • お客が作ったシステムのテストをしないらしい。
  • 今までのシステムと違うから理解できないと言っているらしい。
  • 動かしてみないとイメージができないと言っているらしい。
    (修正してしたところを見ないと先に進めないらしい。アホか

コンサルティングのひと
  • 他の仕事で忙しいとか言って動かない(←一番問題)
  • プロジェクトを終了させるための動きができない
  • エンドユーザーが言っていることの本質をとらえられないからおかしなことを平気で言う
    (だから郵便番号と住所の入力方式で1時間も議論してしまう)
  • 営業のことをバカ(直接的には言わないが)という
  • リスケしてと言っても、責任を持ちたくないからリスケすら検討しない。

自分
  • スケジュールに間に合わないからといってコンサルを追い詰める(←一番問題)
    このままではまずいと思って言ってるのですが、文句に聞こえるらしい
  • メールでいちいち気持を逆撫でしているらしい。
  • 売上一番、仕事二番と考えている人の気持を理解する気持がない


対応案

  • コンサルの人はお金だけ回す人にする(抜けてもらう)
  • 自分が直接、エンドユーザーと話す
    自分が素晴らしい人間と思っているわけではなく、実際はどうなのかを感じたいということです。
  • エンドユーザの社長は、「鶴の一声」呪文を唱える
    ここは、結構なワンマン社長らしいので、これで営業の人も従うのではないかな?


 このプロジェクト2月ごろから始まって、10月カットオーバーの予定がいつ終わるのかがわからなくなっている状態。



一番気になるのは、このコンサルの人を慕って集まる人がいるのが不思議。
とっても世渡り上手なのか、集まってくる人たちが実体を知らないのか(一緒に仕事すればわかると思うケド)。

2014年9月19日

SONY DPT-S1 デジタルペーパー欲しい

 仕事柄(?)システム設計をする前に、いろいろと考えたり、メモしたりするのですが、印刷に失敗した裏紙を使うのですが、その紙を整理するのがとても大変だったります。
 間違って捨ててしまったり、どこかに紛れて見つからなくなったりしてしまいます。
打ち合わせとかに行くときはルーズリーフを使って打ち合わせ内容を書き留めたりもしてます。

 なにか、ひとつにまとめてたり、検索できたり簡単にできる方法はないかと考えていたら、ソニーが出していました。
個人で使うには結構高価ですが、ちょっと興味があります。


レビューの動画がありましたのでリンクを貼っておきます。
https://www.youtube.com/watch?v=tfxsRlX9cwE
https://www.youtube.com/watch?v=zJB4_wUsypY

ソニー デジタルペーパー DPT-S1

2014年6月17日

バージョン管理システムのコミットのときにみなさんは。

 プログラミングをしている時に大抵の方は、バージョン管理システム(Subversion, Git等)を使って開発をしていると思います。
 そもそも、使わないと怖くて、怖くてソースを触れないと思います(自分だけ?)
だっていつでも自分がコミットしたところに戻ったり、参照できたりするんですよ。

 で、ですよ。使い方というか、運用のちょっとしたことなんですけどね。
私は、こんなことに注意してコミットしてます。


  • 1つの塊(機能だったり、不具合だったりいろいろ)単位でコミットする。
    コミットは、関連ファイルを纏めてコミットする。
  • コミット前に変更したソースの差分を目で確認する。(ちょっとした自己レビュー)
  • 動作確認をする。
  • コンパイルして、コンパイルエラーが出ないことを確認する。
  • 誤って修正したファイルは、元に戻す(元の形に修正してコミットはしない)
  • コミットログを真面目に書く
    コミットログは、いろいろと議論はありますが、何を直したか(具体的なソースではない)の概要を書くのが良いと思います。
    新しく書いたロジックには、「◯◯を実装。」などで良いと思います。
どうですか?
ちょっと手間のように感じますが、これを習慣化するとプログラムの精度が上がったり、理解が深まったりします。
この一手間で、変なコミットをしてしまって周りに迷惑をかけるのを防げることまちがいなしです。


 かと言って、これは、基本ルールなので操作ミスなどで誤ってコミットしてしまうこともあるでしょう。こういうのは大目に見るようにしましょう。


 バージョン管理システムの理解が浅い人や意味が分かっていない人は、一種のバックアップシステム程度にしか思っていないようです。
 なので、「日次コミット」とか言いながら、コミットしている人もいます。

 新しく書くソース時点からも機能の一部のひとまとまりを書いたら少しずつコミットする習慣を付けてもよいと思います。
 コミットを何回もするのは悪ではないです(ですが、動作確認もせずにバックアップ先のつもりでのコミットは最悪です)。



 さぁ、みなさんもLet's Try!!

2014年6月14日

テーブル設計するときのツールはなに?

 皆さんは、テーブル設計する時にどんなツールを使っていますか?
EXCEL?Visio?

 テーブル設計するときは、テーブルレイアウトだけ作れれば良いわけではなく、少なくともER図も一緒に作っていかなければいろいろなことが整理できません。
 ER図とテーブルレイアウトは、ちゃんと一致していないと整合性をとるための無駄な作業も発生してしまいます。

テーブル設計をするためのツールは有料のもの、無料のものなどいろいろあります。


  • SI Object Browser ER
    いいんだけど、個人としては高いです。あと、他の人とデータを共有しようとすると、同じツールを買ってもららないとなので
  • ERMaster
    Eclipseのアドイン。無料でいいのですが、最近アップデートされていない感じが。
    ドメイン管理のところにくせがあるので、理解して使わないと大変なことが発生します。
    実際に使ってました。
  • A5:SQL Mk2
    無料のSQL開発ツール
  • Visio
    Microsoftの図書くツール


幾つか試したところで今使っているものを紹介(だけ)します。

A5:SQL Mk:2(高機能かつ軽量な汎用SQL開発ツール / ER図ツール / フリーソフト)


  • ER図
  • テーブル設計書作成
  • ACCESSのようなGUIを使ったSQLの作成
  • いろいろなデータベースへの接続
    MySQLの場合、SSHを使って接続ができるのでVPSとかにデータベースを作った場合、セキュリティを確保して接続ができる。
    phpMyAdminとかのインストールをしなくても良くなる。

まだ、他にも沢山の機能があります。


 新しく覚えるのがめんどくさいから使わないとか言わないで使ってみたらいいさ。


2014年4月26日

Webサイトの画面イメージのキャプチャーの仕方

 今更感満載なんですが、Webサイトの画面設計書の為の画面イメージの取り方ですが皆さんはどうされてますか?

 今までは、1画面に収まらないものは、ブラウザで表示できる分を分割してコピーしてEXCELとかに貼り付けてました。
 簡単にページ全体を撮る為のアドインがありましたので導入してみました。

 Goole Chromeのアドインなんですが、「Awesome Screenshot」というものです。
選択エリアや、ページ全体をショートカットで撮ることができます。

デフォルトだと、「Ctrl+Shift+E」で今表示してるページをキャプチャーし、あと2クリックでクリップボードへ撮ることができます。



「Ctrl+Shit+E」を押すと、ページがキャプチャーされ、下のツールバー的なものが表示されます。
(このタイミングで、いろいろとメモを入れたりもできます。)
完了をクリックします。



次にキャプチャー(編集も含む)したページをどうするかの選択で、「Copy」をクリックします。
クリップボードに保存されます。




あとはEXCELなり好きなところに貼り付けてください。


これで作業効率が劇的にあがると思いますよー。