2018年4月15日日曜日
2016年6月26日日曜日
Seleniumのインストール
テスト自動化について
今回は、Webの試験自動化に向けて最近調べたことを整理していみたいと思います。
まず、Webの試験自動化に向けてですが、幾つかのツールがあるので、 紹介しておきたい思います。私が知っているものや調査して見つけたものを記載しておりますので、 他にもあるとかコメントがあれば通りすがりにコメントを残してもらえると助かります。
ツールの紹介
まず、Webの試験自動化に向けてですが、幾つかのツールがあるので、 紹介しておきたい思います。私が知っているものや調査して見つけたものを記載しておりますので、 他にもあるとかコメントがあれば通りすがりにコメントを残してもらえると助かります。
| Selenium | 今回は、このツールを実際に試してみます。 |
| Sikuli | スクリプトはjythonで記載します。 Webブラウザに限らず、デスクトップのそうさも行えるようです。 画像認識による評価ができるのがちょっといいかも |
| Oracle Functional Testing OepnScritpt | 有償ツール、お金がある人はどうぞお試しあれ。 |
Selenium + WebDriver
いずれのツールも特徴はきっとあるのですが、有償ツールなどは試せていないので、 ひとまず今回はOSSのSeleniumにターゲットを移して試してみたいと思います。Seleniumをダウンロード
サイトからダウンロードする場合は以下のサイトをどうぞhttp://www.seleniumhq.org/download/
pom.xmlで取得する場合は、以下の記載でダウンロードできます。
Google Chrome Driver
BtoBの実行をChrome Browserで実行するためのドライバをダウンロードします。以下のサイトから
![]() |
| 送信者 2016年6月26日 |
![]() |
| 送信者 2016年6月26日 |
EclipseからJUnitのテストケースを作成する。
さあ、準備は整いましたので、テストプログラムを作成してみます。 このサンプルーコードでは、以下の操作を自動化しています。- Googleのページを起動
- 検索キーワードを入力し、Googleで検索を実施
- 検索結果からリンクを探し出して、クリックする。
2016年6月18日土曜日
まだ早いけど食べたくなった秋刀魚の塩焼き
秋刀魚の塩焼きはとてもシンプルだけど、幾つかの下ごしらえをしました。
- 最初によく洗う
- キッチンペーパーで拭き塩を振り、10分ほど放置
塩により、表面の水分が臭みとともに取れるらしいです。 - その間にグリルをあっためておきます。
- 大根おろしもこの間で作ればいいんじゃない。
- よくふきとって、表面に包丁で幾つかの切れ込みを入れ、グリルへ直行
- あとは焼き目をよく見ながら焼く
今回は醤油ではなくポン酢をかけていただきました。
お皿に乗せるために、焼いた後、半分に切ったのですが、腹わたから水分が出て臭みが広がってしまいました。
もしかしたら半分に切る時は、最初から切った状態で焼いた方がいいかもしれません。
(もしくは腹わたを取っておく)
すだちもあるとそれっぽいのですが、すだちの使い道があまり浮かばないので、今回はなしで大根おろしだけです。
2016年6月15日水曜日
ナスとズッキーニのトマトミートパスタ
今日はパスタを作りました。 こんな感じです。
サラダもつけってなんだか女子みたいな感じです。大学生の息子とで150gずつ平らげる予定です。
塩加減さえ気をつければ、特別な味付けはしなくても結構いけますが、あっさり系の味付けですので、ちょっと物足りなくなったら生ハムと一緒に食べると塩味がアクセントになってよかったです
材料(3人分)
| パスタ | 300g | |
| トマトホール缶 | 1缶 | |
| ズッキーニ | 1本 | |
| ナス | 大1本 | |
| 牛ミンチ | 150g | |
| オリーブオイル | 適量 | |
| 塩 | 適量 | |
| ニンニク | 適量 | |
| ロース生ハム | 6枚 | |
| 粉チーズ | 適量 |
2016年6月6日月曜日
下町のこだわりの靴ベラ
|
|
今までの自分
今までは100円ショップのキーホルダータイプの靴ベラを使っていたのですが、靴を買い換えたタイミングでなんだか「おしゃれじゃないな」と感じていたので、百貨店でブラブラ散策をしていたところこの商品を店員に勧められました。
最初は高くても2000円くらいだなと思っていたのですが、店員の「職人のこだわりの逸品」という一言に一気につられてしまいました。
購入したらわかるのですが、中にこんな言葉が書かれた紙が入っています。
東京・下町の職人が心を込めて丹念に真鍮の下地を磨き上げ、上質な輝きを保つメッキ加工を施しました。
ここで思い出しました。
中途半端な物を買うよりはこだわった逸品に対して敬意を払い、かつ気持ち良くお金を払うことに自分もこだわってみよう。 これは、自分にも跳ね返ってくることだ。この店員とこの商品は見事私のツボをついてきたのです。
さて、何がいいかって?
- 鏡面加工が綺麗で驚きの輝きです。(確か、ipod nanoの初代を購入した時もこれに惹かれて思いっきり衝動買い)
- 持ち運べる大きさで程よい大きさ、実際に使ってみるとわかるのですが、程よい大きさがないと実際に使いにくいです。
- 弾いてみるとっとても「ピーーン」と綺麗な音が響きます。音を楽しませてくれるのも、にくい演出です。
- 皮のストラップがさらに大人の品格を引き出しておしゃれ
さて、この鏡面加工ですが、綺麗な反面触るとバンバン指紋が付着してしまいます。
これを綺麗にする手間もまた愛着になり、いいもではないでしょうか。
2016年5月2日月曜日
自作PC 6万台円コース 第6世代 Core-i3/SSD 240G/8G(DDR4)
いきさつ
最近、友人がPCを買うというので、相談に乗りました。
インターネットを契約する代わり、PCが無料もしくは格安で手にはいるというので、リストアップされたPCから最善のPCを選ぶ作業が始まったのですが、業者からリストアップされたPCは新古品で、2014年に発売されたノート等が多くありました。
2,3週間、そのリストからPC選びを手伝ったのですが、どうも、格安感がなくて工事のキャンセルを依頼しようとしたところ、キャッシュバックを45,000円にするということだったので、このキャッシュバックを軍資金に、新しいPCを自作したいという話になり、そこからパーツ選びが開始された次第です。
2,3週間、そのリストからPC選びを手伝ったのですが、どうも、格安感がなくて工事のキャンセルを依頼しようとしたところ、キャッシュバックを45,000円にするということだったので、このキャッシュバックを軍資金に、新しいPCを自作したいという話になり、そこからパーツ選びが開始された次第です。
選定のポイント
- 何はともあれSSDであること。
- せっかくなので、第6世代(Skylarke)CPUを選んじゃえ
- 2.を選んだら当然メモリはDDR4にしよう
- ファンの音はうるさいので静音仕様であること
- 前日に購入したので、プライムで翌日配達されること
- キーボード、マウス、ディスプレイは別途保持しているため、今回の構成には含めていません。
で、検討した結果ですが、
しかしここまでは良かったのですが、Core i3の中でも、Core i3-XXXXみたいに数字が違うCPUが幾つかあることがわかり、これがまた、何が違うんだという疑問にかられました。
私の解釈ですが、数字の前に、最後にT、K、何もつかないパターンがあります。アルファベットが付いているパターンは以下の特徴があるみたいです。
Tは省電力ですが、その代わり性能が落ちます。
Kはオーバークロックに耐えられるCPUで、性能は最も高いですが、値段が高い上にクーラーが付いてないから、別途購入が必要です。
折角なので、PassMarkで調べた、各CPUの性能は以下のようになりました。(とりあえずCore i3のみ)
今回は、本当はCore i3-6100で十分だと思っていたのですが、残念ながら、プライムでの配達がなかったので、今回はCore i3-6300を選択することにした。
H110チップセットは簡易版のため、幾つかの機能がないのですが、必要性を感じなかったので、簡易版としました。
Bluetoothが搭載されていなかったのは一つ失敗だったかもしれませんが、USBアダプタが1,000円程度で売っていたので、大した問題ではありませんでした。


DDR3と4では以下の速度の違いがあるようです。
DDR3-12800は12.8GB
DDR4-2400は19.2GB
1.5倍の転送速度が良くなったことと、なおかつ消費電力も抑えられているそうです。
しかも8Gで3,999円ってDDR3ではこの値段のものはなかなかないではないでしょうか。安すぎて、信頼性が低いかもって気もしましたが、今回の構成においては特に問題なく利用できています。
静音については、静かを通り越して、何も聞こえないくらいです。この値段で考えると申し分ありません。(もしかしたら、最近はこんなもんかもしれませんが)
あとはしばらく使ってみて、どうなるかですね。(その場合は、ファンだけ買い換えるしかないですね)
CPU
ここは、折角なので第6世代、Skylarkeを選択したのですが、友人の使用目的の中に、CPUを消費するような利用用途がなかったので、Coreシリーズのi3を選択しました。しかしここまでは良かったのですが、Core i3の中でも、Core i3-XXXXみたいに数字が違うCPUが幾つかあることがわかり、これがまた、何が違うんだという疑問にかられました。
私の解釈ですが、数字の前に、最後にT、K、何もつかないパターンがあります。アルファベットが付いているパターンは以下の特徴があるみたいです。
Tは省電力ですが、その代わり性能が落ちます。
Kはオーバークロックに耐えられるCPUで、性能は最も高いですが、値段が高い上にクーラーが付いてないから、別途購入が必要です。
折角なので、PassMarkで調べた、各CPUの性能は以下のようになりました。(とりあえずCore i3のみ)
今回は、本当はCore i3-6100で十分だと思っていたのですが、残念ながら、プライムでの配達がなかったので、今回はCore i3-6300を選択することにした。
マザーボード
これは、あまり語ることはありません、LGA1151に対応していてDDR4に対応していて安いやつで探しました。H110チップセットは簡易版のため、幾つかの機能がないのですが、必要性を感じなかったので、簡易版としました。
Bluetoothが搭載されていなかったのは一つ失敗だったかもしれませんが、USBアダプタが1,000円程度で売っていたので、大した問題ではありませんでした。
SSD
幾つかの製品を見ていたのですが、まずはシーケンシャル、ランダムともに速くて手頃な値段なのはこの製品でした。
ポイイントは、このタイプでの速度が速いことと10保証が付いているのにこの値段です。
- メーカー10年保証
- シーケンシャル読出し速度 : 最大550MB/秒、シーケンシャル書込み速度 : 最大520MB/秒
- ランダム読出し速度 : 最大100K IOPS、ランダム書込み速度 : 最大90K IOP
メモリ
やっぱりDDR4でしょうDDR3と4では以下の速度の違いがあるようです。
DDR3-12800は12.8GB
DDR4-2400は19.2GB
1.5倍の転送速度が良くなったことと、なおかつ消費電力も抑えられているそうです。
しかも8Gで3,999円ってDDR3ではこの値段のものはなかなかないではないでしょうか。安すぎて、信頼性が低いかもって気もしましたが、今回の構成においては特に問題なく利用できています。
ケース&電源
こだわりは安くて、静音だけです。あとは、こてこてしていたり、キラキラ光ったりは好きではないので、シンプルなケースで選択しました。静音については、静かを通り越して、何も聞こえないくらいです。この値段で考えると申し分ありません。(もしかしたら、最近はこんなもんかもしれませんが)
あとはしばらく使ってみて、どうなるかですね。(その場合は、ファンだけ買い換えるしかないですね)
で最終的には、以下の構成で全部で、¥ 67,691円なり。できれば、6万以下を狙いたかったのですが、プライムの条件をなくしてCPUの性能を下げて、SSDをもっと安価なものに変えれば6万円を切ることもできると思います。
Amazonの欲しいものリストを作成しておきましたので、PCの購入を検討している方は自己責任でこちらを参照してください。
Amazonの欲しいものリストを作成しておきましたので、PCの購入を検討している方は自己責任でこちらを参照してください。
| パーツ | 製品名 | 価格 |
|---|---|---|
| CPU | Intel CPU Core i3-6300 3.8GHz 4Mキャッシュ 2Core4Thread LGA1151 BX80662I36300【BOX】 | 17,788 |
| マザーボード | ASUSTeK H110M-A 【uATX】 | 7,959 |
| SSD | SanDisk SSD Extreme PRO 240GB | 11,468 |
| メモリ | TEAM DDR4 PC4-19200 DDR4 2400MHz 4GBx2 | 3,999 |
| ケース | Fractal Design Core 1300 PCケース | 7,980 |
| 電源 | 玄人志向 STANDARDシリーズ 80PLUS 400W ATX電源 | 3,988 |
| OS | Microsoft Windows 10 Home | 14,509 |
制作開始
さあ、何はともあれ、制作を開始したところ
やっぱりいくつかハマった点があったので、メモしておこうと思います。
電源とマザーボードの取り付け
今回購入した玄人志向の電源(他の電源も多分そうだと思いますが)、マザーボードと電源をつなげるには24pinと4pinのコネクタを接続するようになっています。
マザーボードの接続場所はこんな感じです。
で電源の方はこんな感じなんですが、20PINのまま、なんか4つ残ってるけど昔こんな感じで接続したマザーボードもあったなとあまり気にせずそのままにしたのですが、やっぱり電源が入りませんでした。
CPUの取り付け
昔はCPUとCPUクーラーの間にグリスを塗る作業があったのですが、CPUが入っていた箱にはグリスらしきものはありません。さあ、我らがグーグル先生に聞いてみたのですが、なかなか答えがなかったのですが、やっと見つけました。
リテールのCPUクーラー側にグリスシールが貼り付けられており、別途グリスを塗る必要はないそうです。
ケースに取り付けられたFANの電源
次ですが、本体に接続されているFANは2つあり、このマザーボードに接続できるFANの接続元は1本分しかありませんでした。
もったいないので、以下のようなパーツを別に購入しました。
これとは違うのですが、こんなやつです。
Windows10のインストール
USB版のWindows10を購入したのですが、これはいたって簡単で、昔のCD-ROMの頃に比べたら格段に早くインストールが完了しました。USBからのインストールは初めてだったのですが、いいですねこれは。
最新のOSというのもあり、Windowsアップデートも2回ほどで済んだので、非常にスピーディーでした。
ハマったのは、各種ドライバ(ディスプレイ、LAN、サウンド)のインストールに合わせて、以下の設定を行ったタイミングでした。
「ディスプレイ設定」ー「テキスト、アプリ、その他の項目のサイズを変更する」で200%に変更
これを行った後、エクスプローラー、コントロールパネルが起動しなくなってしまいました。焦って、イベントログを確認すると例外コード: 0xc0000005、0xc000041dのエラーが発生しており、ドライバの問題かとヒヤヒヤしましたが、調べるとWIndowsの不具合のようでした。
ひとまず、100%に設定を戻して、PCを再起動すると、問題なく使えるようになりました。
最後に
この値段でPCを探すと省スペース型で結構見つかると思いますが、第6世代、DDR4(8G)、SSDでこの値段はなかなかないと思いますので、某PCサイトではこのくらいのPCのスペックにカスタマイズすると93,7144円になりDVD、キーボード、マウス代を差し引いてもこの25,000円くらいは安く仕上がったのではないかと思います。
2016年1月31日日曜日
仕事で使う言葉
「言霊」というだけあり、日頃使う言葉によって、自分の行動も変わるものです。
そんな前向きになれる言葉について紹介していきます。
自分の日頃選択している言葉と比較してみてください。
「まず」という言葉には、「次へ続く」言葉があります。
そんな前向きになれる言葉について紹介していきます。
自分の日頃選択している言葉と比較してみてください。
「やったことがない」、「やってみます」
「やったことがない」は誰でも、最初はそうです。「やったことがない」こと自体を伝えることは別に問題はありませんが、ここで言葉を止めてはダメです。「やってみます」と続けることで、「ちょっと任せてみるか」という気分になります。「思います」は禁止、「考えてます」を使う。
「思います」は確証のない言葉です。自分の仕事に対して、曖昧な回答を返すのは相手に対して「えっ!?、自信ないのじゃあ任せない」となります。これは上司だった場合もそうです。
私は、こう「考えます」と、思うという曖昧な言葉から、自分の意見を述べるのです。
ただし、これに必要なのは、自分がこう思った理由が必要です。
「とりあえず」は禁止、「まず」を使う。
「とりあえず」は手抜きを連想する言葉です。「まず」という言葉には、「次へ続く」言葉があります。
2015年12月31日木曜日
WordPressをmacにインストール
WordPressとは?
私もブログを書き始めて後から知ったのですが、言わずと知れた、ブログサイトを立ち上げるためのツールです。
apache,php,mysqlで動作しますので、特別な環境は必要なく、一般的的なレンタルサーバを借りて構築できます。
レンタルサーバによっては、これから記述するような手順はブラウザから、構築ウィザード画面が用意されているものも多くありますので、レンタルサーバの説明をよく読んで選択すると良いでしょう。
apache,php,mysqlで動作しますので、特別な環境は必要なく、一般的的なレンタルサーバを借りて構築できます。
レンタルサーバによっては、これから記述するような手順はブラウザから、構築ウィザード画面が用意されているものも多くありますので、レンタルサーバの説明をよく読んで選択すると良いでしょう。
レンタルサーバを借りてブログを書き込むような人はアフェリエイトなどが目的の人が多いとは思いますが、WordPressがブログの作成ツールとしてよく選択される理由は、Google等の検索エンジンに検索されやすくなっており、このSEOの適正が高いためよく選択されるようです。
対象者(ターゲット)
今回、WordPressを自前のマシン上に構築しようと考えたきっかけは以下の理由です。
- 友人がブログを始めて、
無謀豪勢にもいきなりレンタルサーバを借りたらしい、なんとか悪戦苦闘しながらブログを書き始めたそうなのですが、Web開発技術者として、友人として何か支援できればと考えた。 - 自分も将来的に、このような一般技術に触れておこうと考えました、特に小規模サーバにはPHPをよく利用されているのは知っていたのですが、実際にほぼ、Java専門で続けているので、ちょっと横道に逸れてみてもいいかなってところです。
ですので、今回のこの記事に対して、役に立つと思われるのは以下の内容かなと想定します。
- サイト構築に興味があるけど、まだレンタルサーバを借りるほどではい。
- 操作に習熟するために、ひとまず、本番環境ではない環境でお試しがしたい。
- 構築方法に興味がある。
対象のスキル
- unix系のコマンドを一部利用します。コピー、ディレクトの移動、viで簡単な編集ができる程度で良いです。
実際にインストールした環境は以下の環境です。
- OS X 10.11.2
インストール手順の概要
- Apacheのインストール&設定 ー これは、すでにインストールされていたので、本ページでは設定のみを行います。
- PHPのインストール&設定 ー これも、インストール済みでしたので、ApacheからPHPを呼び出せるように設定を行います。
- MySQLのインストール&データベース構築 ー mysqlのインストールからWordPressが利用するデータベース作成までを説明します。
Apacheのインストール
これは、Macを利用した場合は、既にインストールされているので、割愛します。
簡単に、Macにインストールされていたapcheの環境について調べたことを記載しておきます。
apacheの操作に関してはrootの管理者権限が必要です。
以下の操作は、全てターミナルから実施してください。
以下の操作は、全てターミナルから実施してください。
apacheのバージョンの確認方法
$
httpd -version
Server version: Apache/2.4.16 (Unix)
Server built: Jul 31 2015 15:53:26
apacheの起動停止方法 root権限
$
sudo apachectl start | stop | restart
ドキュメントの格納場所
/Library/WebServer/Documents
設定ファイルの場所
/etc/apache2/httpd.conf
MYSQLのインストール
これはさすがに、インストールされてなかったので、自力でインストールしてみたいと思います。
mysqlのインストール自体はこちらを参照してください。
初期データベースの構築
ターミナルから、以下のコマンドを実行します。入力するコマンドは
mysqlコマンドでデータベースに接続しますが、パスワードを求められます。特に設定を行った記憶のない人は何も入力せず、パスワードなしで利用できるはずです。
作成したユーザにデータベースを利用する為の権限を与えます。
mysqlのsockファイルをメモしておく
$
でviエディタを起動して、以下の行のコメントを取り除くだけです。
初期データベースの構築
ターミナルから、以下のコマンドを実行します。入力するコマンドは
コマンドで表現しております。mysqlコマンドでデータベースに接続しますが、パスワードを求められます。特に設定を行った記憶のない人は何も入力せず、パスワードなしで利用できるはずです。
$
mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 146
Server version: 5.6.28 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
これから作成するデータベースを操作するためのデータベースのユーザを作成します。
WordPressの初期設定にて自由に設定できますので、ユーザ名/パスワードの部分は任意で決めてください。
mysql>
create user 'ユーザ名'@'localhost' identified by 'パスワード';
Query OK, 0 rows affected (0.01 sec)
データベースを作成します。
同じくWordPressの初期設定に自由に設定できますので、データベース名の部分は任意で決めてください。
mysql>
create database データベース名;
Query OK, 1 row affected (0.01 sec)
作成したユーザにデータベースを利用する為の権限を与えます。
mysql>
grant all privileges on データベース名.* to 'ユーザ名'@'localhost';
Query OK, 0 rows affected (0.00 sec)
mysqlのsockファイルをメモしておく
mysql>
status
--------------
mysql Ver 14.14 Distrib 5.6.28, for osx10.8 (x86_64) using EditLine wrapper
Connection id: 317
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.6.28 MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: utf8
Conn. characterset: utf8
UNIX socket:
/tmp/mysql.sock ここをメモしておく
Uptime: 3 days 23 min 36 sec
Threads: 1 Questions: 4833 Slow queries: 0 Opens: 81 Flush tables: 1 Open tables: 73 Queries per second avg: 0.018
--------------
PHPのインストール
これも、インストール不要です。調べたところ、PHPのインストールはされているようなので、特にインストールはしませんが、apacheとPHPが連携して動作するように設定を行う必要があります。$
sudo vi /etc/apache2/httpd.confでviエディタを起動して、以下の行のコメントを取り除くだけです。
#LoadModule php5_module libexec/apache2/libphp5.so
↓
LoadModule php5_module libexec/apache2/libphp5.so
phpの設定ファイルを準備とPHPへの接続設定の追加
$
$
ファイル内の「mysql.default_socket」にmysqlをインストール時に「status」コマンドで取得した。UNIX socketに指定されたファイル名を入力してください。
$
sudo cp /etc/php.ini.default /etc/php.ini$
sudo vi /etc/php.iniファイル内の「mysql.default_socket」にmysqlをインストール時に「status」コマンドで取得した。UNIX socketに指定されたファイル名を入力してください。
mysql.default_socket =
/tmp/mysql.sockapacheの再起動
$
sudo apachectl restart
動作確認
$
sudo vi /Library/WebServer/Documents/index.php viエディタを起動して、以下の内容のファイルを作成します。
中身は他に入りません。これだけ記述して:wqで保存して終了しましょう。
ブラウザ起動して、以下のURLを入力するとこんな感じのが画面が帰ってくるはずでです。
URL
http://localhost/index.phpWordPressのインストールと初期設定
WordPressのインストールですが、まずここからダウンロードします。
ダウンロードしたファイルを解凍します。
$ sudo
$
$
コピーしたwp-config.phpファイルの以下の内容を書き換えます。
必要な項目を入力して
成功すると以下の画面が表示されます。
そのままログイン画面を呼び出しても良いのですが、以下のURLからログイン画面を表示できます。
以上が、WordPressのインストールまでです。
あなたのこれからブログ構築に少しでもお役に立てれば幸いです。
ダウンロードしたファイルを解凍します。
$ sudo
unzip -d /Library/WebServer/Documents/ wordpress-4.4-ja.zip$
cd /Library/WebServer/Documents/$
sudo cp wp-config-sample.php wp-config.phpコピーしたwp-config.phpファイルの以下の内容を書き換えます。
/** WordPress のためのデータベース名 */
define('DB_NAME', '
データベース名');
/** MySQL データベースのユーザー名 */
define('DB_USER', '
ユーザ名');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', '
パスワード');
設定が完了したら、以下のURLにアクセスします。
必要な項目を入力して
WordPressをインストールボタンを押します。成功すると以下の画面が表示されます。
そのままログイン画面を呼び出しても良いのですが、以下のURLからログイン画面を表示できます。
ログイン・パスワードを入力すると、ブログをカスタマイズしたり投稿したりするダッシュボードが表示されます。
以上が、WordPressのインストールまでです。
あなたのこれからブログ構築に少しでもお役に立てれば幸いです。
2015年12月29日火曜日
MySQLのインストール
今回はいきなりですが、MySQLのインストールいついて記録しておきます。
「mysql-5.6.28-osx10.8-x86_64.pkg」を実行するとインストーラーが起動します。
「続ける」ボタンクリック
英語だ!?分かんね、無視して「続ける」ボタンをクリックします。
いいですか、これを押すとインストールが開始されちゃいますよ。。
「インストール」ボタンをクリック
インストール中、しばらく待つと以下の画面が表示されて、本当に、クリックするだけでインストールが完了してしまいました。
でエディタを開き、以下のような記述を追加してください。
Byeって言われて、終了します。
対象環境
OS X 10.11.2
MySQLの入手
ダウンロード場所
以下のファイルを選択してダウンロードしました。
Mac OS X 10.10 (x86, 64-bit), DMG Archive
で、突如気になったのですがDMGってなに!?(すいません、最近Macユーザになったので)ってことで少し脱線してみて調べてみました。
すぐにわかったのですが、これってディスクイメージ(Windowsで言う、.iso)なんですね。
なるほど、疑問が一つ解決したので、作業を継続します。
インストール開始
と言っても、インストールに関しては、特に戸惑うことはありません。表示される画面に従って、「続ける」ボタンを連打していけばインストールは完了してしまいます。
Finder等で、ダウンロードしたファイルを選択すると、勝手にデスクトップにディスクイメージをマウントしたディレクトリが作成されます。
「mysql-5.6.28-osx10.8-x86_64.pkg」を実行するとインストーラーが起動します。
「続ける」ボタンクリック
英語だ!?分かんね、無視して「続ける」ボタンをクリックします。
いいですか、これを押すとインストールが開始されちゃいますよ。。
「インストール」ボタンをクリック
動作確認をしてみよう
ここからは、ターミナルを起動して操作してください。
赤く括った部分が実際に入力する箇所になります。
まずは、mysqlのコマンドを実行できるようにパスを通してください。
以下は、参考です。自分の環境やスタイルに合わせて実施してください。
$
vi ~/.bash_profileでエディタを開き、以下のような記述を追加してください。
export PATH=$PATH:/usr/local/mysql/bin
データベースを扱うための、コンソールを起動します。(Oracleでいうsqlplusですね ←わかんない人は無視してください。)
$
mysql -u root -p
Enter password:
パスワードの入力を求められますが、初期値は設定されていませんので、そのままreturnキーを押しちゃってください。そうすると以下の内容が表示されるはずです。
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 314
Server version: 5.6.28 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
これを持って、動作確認を完了してもいいのですが、興味がある人は、以下にデータベースの作成、テーブル作成、データの挿入、データの参照、データベースの削除までを記述してみたので、よかったらお試しあれ。
データベース作成
mysql>
create database testdb;
Query OK, 1 row affected (0.01 sec)
使用するデータベースの切り替え
mysql>
use testdb
Database changed
ちょー簡単なテーブルの作成からのデータ登録からのデータ参照まで一気にやっちゃいます。
mysql>
create table testtable (text char(10));
Query OK, 0 rows affected (0.04 sec)
mysql>
insert into testtable (text) values('aaaaaaaaaa');
Query OK, 1 row affected (0.01 sec)
mysql>
select * from testtable;
+------------+
| text |
+------------+
| aaaaaaaaaa |
+------------+
1 row in set (0.00 sec)
最後に、使ったデータベースはいらないので、消しておきます。
mysql>
drop database testdb
-> ;
Query OK, 1 row affected (0.02 sec)
ついでなんで、本当に消えたか見てみます。
mysql>
show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
最後に、コンソールから抜けるのは
mysql>
exit
Bye
Byeって言われて、終了します。
最後に、起動と停止方法
> sudo /usr/local/mysql-5.6.28-osx10.8-x86_64/support-files/mysql.server [start / stop]2015年12月20日日曜日
Mac Book Pro買いました
経緯
もう、20年MS-DOSから始まり、現在、Windowsユーザをやってますが、確か私が高校生の時にMachintoshが発売されました。その頃のPCはとても高価で、簡単には手に入らない代物だったのですが、高校の部活の顧問からMacはすごいという話を聞かされました。
その頃、ちょうど、Windowsが発売され、CUIからGUIへ時代が変わろうとしていたのですが、私はまだ、MS-DOSしか触ったことがなかったの正直、ピンとこないのととても高価なPCを簡単に買い換えることができなかったので、手に触れることはありませんでした。
スティーブ・ジョブズが死去し、Microsoft系列のOSしか利用したことがなく興味が出なかったのっですが、ちょうど、プレゼンの機会が増えてきて、プレゼンの腕を磨くために買った、「スティーブ・ジョブズの脅威のプレゼン」からAppleに興味を持って数年、やっと、整備品ですがやっと手に入れました。
なんだろう、このワクワク感
Apple製品を始めて購入したのは初代iPodNanoですが、これは、パソコンショップに行った際に、別に音楽プレイヤーを買いに来たわけでもないのに、即衝動買いをしました。
この頃からそうなのですが、Apple製品は箱の状態からインパクトがあり、開封するときに、なんとも言えないワクワク感から始まります。美しい包装の中に、美しい製品を収めている。他の製品にはないこだわりが箱の状態からあるのです。
なんたって、Retinaディスプレイ
さあ、開封してセットアップを開始したのですが、セットアップはすごく簡単に終わってしまいました。(これもWindowsとは大違いですね)
デスクトップ画面が起動した瞬間に、Retinaすごい、ディスプレイっていう感じじゃなくて、ガラスケースの額縁に入った絵を見てるみたいに美しいことに感動です。
また、しばらくmacを利用した後、昔使っていたWindows Vistaの画面を見ると、今まで気になっていなかったドットがすごく気になり文字がカクカクしているのがすごくわかるようになりました。
デスクトップ画面が起動した瞬間に、Retinaすごい、ディスプレイっていう感じじゃなくて、ガラスケースの額縁に入った絵を見てるみたいに美しいことに感動です。
また、しばらくmacを利用した後、昔使っていたWindows Vistaの画面を見ると、今まで気になっていなかったドットがすごく気になり文字がカクカクしているのがすごくわかるようになりました。
おまけに、フォントがすごく美しい!!デフォルトで使ってるのに、一味違います。やっぱり、いいものを見ると見る目が養われるというのは本当ですね。
これは、もうやめれまへんな
ちなみに出荷状態のディスプレイ設定では、文字が大きすぎてRetinaの恩恵が少ないです。
「システム環境設定」
「ディスプレイ」
「ディスプレイ」タブの解像度:変更
スペースを拡大
を選ぶと解像度が変わり、画面に表示される情報量が増えます。(もちろん字が小さくなりますが...)
ちなみに出荷状態のディスプレイ設定では、文字が大きすぎてRetinaの恩恵が少ないです。
「システム環境設定」
「ディスプレイ」
「ディスプレイ」タブの解像度:変更
スペースを拡大
を選ぶと解像度が変わり、画面に表示される情報量が増えます。(もちろん字が小さくなりますが...)
あっ、欠点は、背景の白がきつすぎて、コントラストを強くすると目が痛いです。(すごく綺麗なんですけ、目に悪そうだから下げて使ってます)
なに、このパッドの使いやすさは
最近はどうか知らないけど、ふた昔前のWindowsノートパソコンではパッドにちょっと当たっただけで、クリックされたことになって、文字入力を一生懸命やっている最中に、トラックパッドに当たって、入力カーソルが明後日の方向に飛んでいくってことがよくありました。
なんだかんだと言っても、マウス操作の時間より文字入力の時間の方が長いので、この不快さはどうしても許せず、ThinkPadを今まで使ってきましたし、どうしてもトラックパッドを利用せざるを得ない場合はタップ機能を無効化していました。
その点、Macのパッドはちょっと触れたくらいでは反応せず、意識して押した時だけちゃんと反応します。これによりトラックパッドでの不快感は全くなくむしろマウスより使いやすいかもと感じさせる一品です。
そして、感圧パッドを購入したのですが、こいつもすごい。
利用者側としては、どっちでもいいのですが、このパッド実は凹んでないのです。機械式ではないのにクリック感がある。しかも強く押し込む感覚もあり、2段階でのクリックを利用できます。
この機能のおかげで、パッドで操作できることが増えます。実はまだ活用しきれていないのですが、この辺りの話で面白いことがあれば、また報告しますが、故障が減るなどの利点はあるようです。
利用者の立場に立つとどうでも良いことですが、見えないこだわりに同じ技術者として心を燻られる思いがあります。
この技術をスマートフォンに活用すると、また、新しいことができるようになるのではないかとワクワクするような技術です。
キーボード
実は、Macで気に入らないのはこの点ですし、正直キーボードの使用感はThinkPadの方が私は好きです。
アイソレーションキーボードはブラインドタッチの感覚をかなり狂わせます。具体的にはホームポジションを認識するためのF、Jキーについている凹凸が指で認識しにくい(Windowsでよく利用するキーボードはバー状ですが、iMacは点状で控えめです)、それからキーとキーの隙間が指で認識しにくい(これはキーのくぼみがなく指にフィット感がないためだと思います)ので、キーの位置を認識するためのタイムラグがあり、いつもの入力速度をキープできません。
キーボード入力のスピードを重視しない人は、あまり気にならないかもしれません。
使い始めると徐々に変わるのですが、冬場に起動した直後に利用するとこのアルミディブが冷たくて、冬場に利用するには少し冷たすぎます。
ちなみに私は、お気に入りのRealForceキーボードを利用しています。外部キーボードをつけると、前に紹介したトラックパッドが利用できないので、前のPCで利用していたWindowsのマウスとセットで利用している状態です。感圧トラックパッドが利用できないのは少し残念なので、トラックパッドだけ購入したと考えていますが、新しく発売されたMagic Trackpad 2はApple Storeで14,800円でちょっと高いです。
OSを使ってみての最初の感想
まだ、まだ使い始めて1週間なのですが、正直、使い方が違う点に日々、格闘中ですが、これは、ショートカットなんかをWindowsでは活用できた状態から考えると、Macで同じレベルになるまでの話です。普通にアプリケーションを起動して使う分にはさほど大変ではありません。
ちなみに、ユーザインターフェースがいろいろと、WIndowsとは逆なんですよ。例えばアプリケーションが表示されるウィンドウを閉じる、最小化、最大化ボタンが左にあったり、ダイアログのOK、キャンセルボタンが逆だったり、スクロールマウスのホイールの回す方向が逆だったり(でも、よくよく考えたら、画面上の紙をつかんで、雨紙を動かす方向にホイールさせると考えるとMacの方が正しい気がします。)
2015年11月23日月曜日
システムにおける失敗プロジェクトの考察(見積り編)
良くある失敗項目
私がITプロジェクトで失敗しているなー、と感じている流れを整理してみました。
見積りから始まる失敗事例
まずは、見積りの失敗から始まる失敗パターンです。
さあ、新しいプロジェクトが始まります。
まずは、見積りを作成して交渉するのですが、
高いといわれ続け、値下げしていきます。
(最初から損をするような見積りをする人はいません)
費用が無ければ、必要な人員や機材を確保できません。
が、何かの理由で、この採算の取れない案件を受注してしまいます。
プロジェクト計画書を作りますが、理想論しかかけず、
その理想を遂行するためのビジョンが描けない状態です。
(要はまったく出来る気がしない状態です)
必要な人員や機材を確保できないので、品質や納期および生産性に影響が出る。
上流工程では、ドキュメントだけなので騙し、騙しでドキュメントを完成させるが
内容について要件漏れや、矛盾があるような状況です。
このごまかしが、製造工程で泥沼を引き寄せます。
(ここで、悪循環の種を植え付けてしまいます)
当然、今後の泥沼を回避するためのアイデアなんて考えている暇はありません。
常に進捗遅れ状態、間に合わないから残業をするけど、焼け石に水
このころになると、具体的な施策より、精神論が横行しだす。
また、あわてて人を入れるが、当然何も知らないド素人が入るので
新しく入った要員の対応に追われるが、思った成果は出ない。
品質が悪いので不具合が大量に発生する。
対応に追われ、さらに進捗の遅れが悪化する。
また、残業もさらに増えて徹夜なんてことも
不具合の対処も当然ですが、他にも横展開などの対策にも追われるハメになる。
当然不具合に対する、想定も当初の計画には盛り込まれていなかったりするし
単純な誤りが目立ち、外部からもにらまれる。
(リーダーの精神状態が心配になります)
突然会社に来なくなる人や、うつ病になる社員が出る。
ひどい場所では、リーダーが逃げるといった話も聞く。
サービスインに持っていっても
瑕疵だの言われながら、サービスイン後の不具合の改修
を続け、新しい案件にメンバーを回せない。
瑕疵では無いと抵抗をしたいところだが、今まで出した不具合やそもそも
そういった戦いを行う体力さえも無い状態
瑕疵では無いと抵抗をしたいところだが、今まで出した不具合やそもそも
そういった戦いを行う体力さえも無い状態
どうでしたか、皆さんのイメージと同じでしょうか?
「ある、ある」と感じた人がほとんどではないでしょうか。
大きな失敗をしているプロジェクトの大半が、見積り誤りです。
いろんな手法の見積りが出ていますが、あくまで参考に出来るだけで、IT業界では未だに、経験に勝る見積りは無いと感じています。
あらゆる見積り手法は、相手を納得させるための道具と割り切り、自分の経験に近い見積りを出すようにしましょう。
もちろん自分が蓄積してきた実績に基づく数値を使うのであれば問題はありませんが、他の会社が持ち込んだ指標は全くあてになりませんし、要員により大きく変わります。
今まで私が読んできた書籍でも、優秀な社員とそうではない社員の差は100倍あるとも書かれていますし、製造の生産性と言う意味では、人によっては、達成できないというケースもあり、100倍どころではない状況に追いやられたこともあります。
といっても、本当に理想的な体制は作れないものです、まずは理想から何が妥協できるかを考えるようにしましょう。
といっても、本当に理想的な体制は作れないものです、まずは理想から何が妥協できるかを考えるようにしましょう。
それでも受注するの?
時には会社の戦略として、採算が取れなくても、受注しなくてはならないケースもあるでしょうがその際は、どうか、引け目を感じず、最初の初期投資はしっかり行うことをお奨めします。
途中で安定してくれば、そのタイミングで要員を削るという手もありますが、途中で人を入れるのはランニングコストが高くつき、どんなに優秀な人でも力を発揮するのは難しい状況になります。
この場合は、費用のことは考えず、プロジェクト達成するためのどうしたらいいかということに集中するべきと考えます。(立ち上がったら要員は返却するなど適当なことを言ってでもいったんキープした方が良いです。もし泥沼になれば、それが分かっていても要員を引っこ抜くような冷徹な人は私は少ないと信じています。)
十分な体制が取れなかったらますます酷くなります。
マスターマインド、同じ志を持つ仲間と十分に議論し、達せしいたプロジェクトに関しては問題が起きたことは今までありません。
2015年10月7日水曜日
大容量のアップロード、ダウンロードについて
どうだ!?、これで大容量のアップロードも可能になります。
って事で、今回は大容量のアップロードを可能にする方法を考えてみました。
JQueryを利用するとコーディングが取っても楽になるのですが、業務シーンにより利用できないケースもあるので、pure Javascriptで作成しました。
さて利用に当たってですが、以下の条件があります。
って事で、今回は大容量のアップロードを可能にする方法を考えてみました。
JQueryを利用するとコーディングが取っても楽になるのですが、業務シーンにより利用できないケースもあるので、pure Javascriptで作成しました。
さて利用に当たってですが、以下の条件があります。
- HTML5 File APIを利用しているので、動作可能なブラウザのバージョンに制限があります。
- 一応SafariやIEも考慮していますが、動作確認を行ったのはChromeです。私の端末はvistaなので、IE9までしかなくて、HTML5に非対応なので、動作確認できていません。
- サーバ側のアプリケーションサーバはwildfly9.0で実装しました。
こんな雰囲気で作成しています。
- FileAPIのsliceによりファイルを一定のサイズで分割
- 分割したファイルを
XMLHttpRequestにより、Ajaxによりサーバへ送信 - サーバ側で受信したファイルを追記モードでファイルに書き出し
といった感じです。
まだまだ、異常系の考慮についてはこれからですが、ひとまず巨大なファイルを分割してアップロードすることにより理論的にはアップロードするファイルの大きさに対する制限はなくなります。
また、今回のスクリプトは順次アップロードする仕組みにしておりますので、サーバへの負荷も比較的低く抑えることができるかと思います。
JavaScript
入力用画面サンプル
サーバ側のサンプル
最後に
今回は
今回は実測値はないので、もう少しがんばって、更新していきたいと思います。
multipart form-data形式でアップロードにチャレンジしてみましたが、アップロードするファイルのサイズを大きくするにつれてXMLHttpRequest.send(form)で実際にサーバへ送信されるまでの時間がかかっている印象がありました。恐らく、formデータを送信するための電文に変換する処理に時間がかかっている印象です。XMLHttpRequest.send()を調べてみると、どうやらblobも送信できそうな記述が見つかったので、次はformデータではなくバイナリをそのまま送信してみるとこのあたりのオーバーヘッドが減るかもしれません。今回は実測値はないので、もう少しがんばって、更新していきたいと思います。
課題
- 途中で失敗した際のファイルの後片付けとかはどうする?(一定時間応答が無ければ捨てるような仕組みでいけないかな...)
- ロードバランサ等による振り分けには耐えられない(共有ディスクを使ってなんとかかんとかすると出来るかも)
2015年9月27日日曜日
言霊それは信念、今までに心を動かしたと感じた言葉
私のシステム開発人生の中で、きっとこの言葉は、人の心に響いたと感じた言葉をまとめてみます。
本当に人の心に響いたかは、本人から聞いたわけではないのですが、システム開発は一人でやるものではないので、人間重視の視点が必要です。
担当ではなく、リーダーの立場でプロジェクトを遂行しなくてはならない立場となったときに、どうやったらメンバーが納得して、仕事をやってもらうかを常に考えてきて、私なりに確立した言葉を列挙してみました。
言葉には重みがあり、相手に使うときは信念が必要です。利用する場合は必ず自分のものにして自分の言葉として利用してください。信念がこもっていない言葉は重みがありません。
最初に注意です。結果が後から付いてくるという意味ではありません。スポーツ業界でのイチローも言っていますが、これは甘えです。結果はリアルタイムで出しましょう。
さて、ここで言いたいことは
本当に人の心に響いたかは、本人から聞いたわけではないのですが、システム開発は一人でやるものではないので、人間重視の視点が必要です。
担当ではなく、リーダーの立場でプロジェクトを遂行しなくてはならない立場となったときに、どうやったらメンバーが納得して、仕事をやってもらうかを常に考えてきて、私なりに確立した言葉を列挙してみました。
言葉には重みがあり、相手に使うときは信念が必要です。利用する場合は必ず自分のものにして自分の言葉として利用してください。信念がこもっていない言葉は重みがありません。
もっとシンプルに(俺馬鹿だから、もっと分かりやすくして)
私は、昔から、記憶する勉強が苦手でした。
難しいことを難しいまま覚えるのは私には出来ないと考えた私は、何のためにそうするのかということを理解した上で、物事を覚えることにしました。
私の脳には、この記憶方法が一番良いようで、覚えたことを「何故?、何のために?」というコネクタで関連付けていくことにより、目的から結論を導けるようになりました。
さて、導くための方法も「何故?、何のために?」が分かれば、実は他の方法もあります。
そこで、覚えることを単純にするために、この導くための方法を考え直すと、実はもっと簡単な方法があることにも気づけます。
難しいことは人に理解できません > 理解できないことは他の人には利用できません > つまり、創造したもの自身の価値が下がるのです。
もっと人に使ってもらえるものを創造しましょう。
プログラムでは、分かりにくい1行より、分かりやすい10行のプログラムを書けとよく言ってました。
何故このような仕組みにしたのか、あなたの考えを聞きたい
システム開発にはレビューが欠かせません。
レビューで私は、疑問に思ったことは、こう聞きます。「なぜこのような仕組みにしたのか、あなたの考えを聞きたい」こう聞くと、他もこうしているからとか、ググッて検索して出てきたものをそのまま活用しているような人は、「ハッ!?」とします。(たまにポカーンとして、しない人もいますが...)
正直に言うと、まねでもいいのです。
真似る理由が分かればいいんです。
近年のシステム開発では、レビューアが何でも知っているわけではなく、レビューア自身も答えを知らない場合が多々あります。私もレビューアをよくやるのですが、何故こうしたのかをしっかりレビューしたものは、たとえ答えを知らなくても、バグが発生する可能性が非常に低い傾向があります。
また、この問答をやっていると自分の知らない事が情報として得られ知識が高まるのも実感できます。
禅の言葉で、「たとえ七歳の子であっても私より優れていれば教えを乞おう」というのがあります。知らないことを探求する興味も失わないようにしましょう。
また、この問答をやっていると自分の知らない事が情報として得られ知識が高まるのも実感できます。
禅の言葉で、「たとえ七歳の子であっても私より優れていれば教えを乞おう」というのがあります。知らないことを探求する興味も失わないようにしましょう。
役割には、いろいろある。あなたの価値はマネージャとメンバーの橋渡しを行えることです。
これは、ある飲み会で「俺はもうプログラムも書けない、かといって偉くもなれない」といった人に対して言った言葉です。この人は、「ハッとして、そんな考え方もあるのか」と驚いて、かなり喜んでくれました。
システム開発ではどうしても、マネージャ、SE、プログラマといったポジションが目に付きますが、組織に必要な役割というのはいろいろなものがあり、3つだけに分類されるものではないと考えていました。
良くある役割に惑わされず、目的を達成するために必要な事ができるというのは本当はすばらしいことです。
システム開発はアナログ→デジタルのコンバートです。なので人とシステムの両方を知る必要がある。
学校を卒業してこの仕事に就いたときは、本当は人付き合いが嫌いでした。
技術を追い求めて、就職しましたが受注型のシステム開発はやればやるほど、機械ではなくて人がやりたいことを理解することがまずは肝心ということが分かりました。(何故なら、やりたいことが出来ないシステムは価値が無いからです)
慌てて、苦手なコミュニケーションを積極的にとるようにしました。今では人付き合いが好きになっている自分がいます。
技術は、このやりたいことをどう実現するかという次のステップに利用します。
技術は不要という意味ではなく両方必要という、実は非常に厄介な職種と私は感じました。
NO
一言ですが、私はこれを言い続けて、システム開発で何度か、運用故障0件のシステムを構築しました。
スティーブ・ジョブズも細部にこだわり、この言葉を言い続けました。
この言葉の奥には、あなたがやりたいと考えていることを妥協せず貫けるかという意味があります。
これは、人の心を動かすためには即効性はありませんが、何かを達成した際にともに喜ぶことが出来る一体感が生まれます。
ただし、使い方は気をつけましょう。私の場合は、この言葉を使うときは、一緒に苦労する覚悟を持って使っていました。
個性は何も無いところから生まれない、人の物まねの集合体である。
学校ではなくもっと広い視野で勉強をせず、個性だと主張するのは間違っています。
そもそも、人間は生まれてから何かを学習して、得た情報を改善したり、情報同士を関連付けたりして新しい事を生み出してきました。
個性を生み出すための種が情報なのです。情報を得るための学習を怠らないようにしましょう。
サラリーマンは会社からの評価は遅れてくる。だからあきらめるな、気が付いたら現場の人たちが高い評価をしてくれる。そうなると会社も無視できなくなるから。
最初に注意です。結果が後から付いてくるという意味ではありません。スポーツ業界でのイチローも言っていますが、これは甘えです。結果はリアルタイムで出しましょう。
さて、ここで言いたいことは
やっていることに比べて給料が低いと感じたことはありませんか?
それが嫌なら、サラリーマンは止めるべきですし、そもそも、会社が利益を上げてから、ボーナスや昇給などで評価される仕組みをとっている以上、あなたへの評価は直ぐには現れません。
誰かの役に立つために仕事をやっていけばどんな現場でも、あなたのことを認めてくれる人は現れます。
私は、会社に褒められるより、一緒に目的を目指したメンバーから褒められるほうがうれしいです。
間違えないでください、現場で最善の結果を出すことに注力してください。
それがあなたの、スキルアップにつながり結果、会社に依存することなく生きていける能力が身につくのです。
間違えないでください、現場で最善の結果を出すことに注力してください。
それがあなたの、スキルアップにつながり結果、会社に依存することなく生きていける能力が身につくのです。
2015年9月26日土曜日
個人的にEclipseでよく利用しているショートカット(更新中)
個人的に良く使うショートカット順に並べてみました。
EclipseのMarsを使っているので、古いバージョンでは使えないショートカットキーもあります。
エディタ編
| 動作 | Windows | Mac | 利用シーン |
|---|---|---|---|
| ファイル名を検索して開く | Ctrl + Shif + r
|
+ Shif + r
|
ファイル名を覚えている人はここから開いたほうが速い |
| 検索 次へ 戻る |
Ctrl + fCtrl + kCtrl + Shift + k
| ⌘ + f⌘ + k⌘ + Shift + k
| ファイル内の文字列検索です。 この3つのショートカットはセットで覚えましょう |
| インクリメンタル検索 次へ 戻る |
Ctrl + j↓↑ + k
| ⌘ + j↓Shift + ↑
|
入力順にリアルタイムで検索してくれます。 ちょっと癖があるけどなれるとこっちの方が便利かも |
| 次へ 戻る |
Alt + ←Alt + →
| option + ⌘ + ←option + ⌘ + →
|
ブラウザの戻る、進むのような操作が出来ます。ctrl+左クリックで参照クラスやメソッドに飛んだ後、戻る際に利用しています。
|
| 指定行へジャンプ | Ctrl + L
|
⌘ + L
|
スタックトレースの情報から該当箇所に飛ぶ際に便利 |
| ウィンドウの分割(水平) | Ctrl + Shift + - |
調査中 | ひとつのソースを上下に分割して参考にしながらコーディング!! |
| ウィンドウの分割(垂直) | Ctrl + Shift + [ |
調査中 | ひとつのソースを左右に分割して参考にしながら最近の液晶は幅が広いので結構使えます。 |
| クイックフィックス | Ctrl + 1 |
⌘+ 1 |
import追加等 |
画面切り替え編
| 動作 | Windows | Mac | 利用シーン |
|---|---|---|---|
| パースペクティブ切替 | Ctrl + F8 |
⌘ + F8 |
デバッグとJava EEの切り替えに良く使います。 |
| 検索 次へ 戻る |
Ctrl + fCtrl + kCtrl + Shift + k
| ⌘ + f⌘ + k⌘ + Shift + k
|
ファイル内の文字列検索です。 この3つのショートカットはセットで覚えましょう |
2015年9月24日木曜日
mevenによるJavascriptライブラリの自動取り込み【webjars編】
なぜ、webjars?
- jquery等のjsを毎回ダウンロードしてwebappに配置するのは少し面倒
- ライブラリ類は旨く配置しないと、自分がつくったjsなんかと混在して煩雑になっていく
実施環境
- java version "1.8.0_51"
- wildfly-9.0.1.Final
チュートリアル
今回はJqueryの2.1.4を利用できるようにしてみようと思います。
読み込む対象を以下のサイトから検索します。
mavenに依存関係を追記するので、mavenを選択してください。
バージョンの選択と、依存関係の記述をpom.xmlへ追加する。
pom.xmlの依存関係を追加
読み込んだjqueryの構造をチェック
webjars配下のディレクトリ構成をチェックしておきましょう。ここでは
jquery/2.1.4/dist/にjquery関係のjsファイルが格納されているのが分かります。サンプルHTML作成
動作検証
感想
若干便利さは感じましたが、正直以下の対応まで出来ればもっと良かったです。
- servlet3による追加方法を検証してみたのですが、bootstrap.min.cssを追加する必要があるので、出来ればこの記述もなくしたい。。。
- ディレクトリにバージョンが含まれてしまっているので、バージョンを変える場合は依存関係を変えるだけではなく利用しているソースも同様に修正する必要がある。
2015年9月22日火曜日
jsdoc3によるJavascriptドキュメント作成
はじめに
以前、YUIDocに関するJavaScriptのドキュメント作成方法について、このブログで紹介しました。
どうも、調べているとjsdocのほうが一般的?(何をデファクトスタンダードとするかは基準に迷うところです)のようなので、改めてjsdocの生成について行ってみようと思います。
Goals
さて今回の目標設定は以下としました。
- Eclipse上でドキュメント生成する。
- Eclipse上でコメント記入中にリアルタイムにプレビューしたい。(これは難しそう)
- JavaScriptのコーディング中に生成したドキュメント参照できるようにする。
実施環境
- Eclipse Mars Release (4.5.0)
- java version "1.8.0_51"
1.Eclipse上でドキュメント生成
まずこの目標ですが、今回はMavenを利用してpom.xmからJavaScriptのドキュメントを自動生成するようにしてみようと思います。
プロジェクト構成
HellowWorld
│
│
│ pom.xml
└─src
│
└─main
└─main
│
└─webapp
└─webapp
│
└─js
└─js
│
└─jsdoc3sample.js
└─jsdoc3sample.js
pom.xmlの定義
pom.xmlの構成のポイント
- outputDirectory:
言わずと知れた。ドキュメントを出力する場所です。今回はMavenのビルドパス上に作成するようにしてみました。 - jsdocInput:
ドキュメント作成するJavaScriptを指定します。
サンプルJavaScriptファイル
まだ、ドキュメント用のコメント記述が良く分かっていないところもありますが、とりあえず以下のサンプルを作成しました。
ビルド実施
Eclipseでプロジェクトを選択して、以下のコマンドを実行です。コマンド
> mvn clean jsdoc3:jsdoc3
Eclipse上から実行する場合
EclipseのメインメニューからRun(R)-Configuretionsを選択するとRun Configurationsダイアログが表示されます。
左側のツリーにてMaven Build下に新しいビルドを追加
Name:ご自由に
Base directory:対象のプロジェクトを選択
Goals:jsdoc3:jsdoc3
上記の内容を入力し、Runをクリック
ドキュメントが生成が成功すると上記の内容がコンソールに表示されます。
成功するとProject Explorerのtargetフォルダを再描画(F5キーを押す)するとjsdoc3フォルダが表示されます。
jsdoc3フォルダ配下のindex.htmlをブラウザで開くとドキュメントが作成されていることが分かります。
以上で、ドキュメント作成までの流れは終了です。
2.Eclipse上でコメント記入中にリアルタイムにプレビューしてみる。
Javaだと以下の画面のように、作成中のドキュメントを簡易ではあるが確認できる。
こんな感じで、作成しながら確認できればうれしい!!
とりあえずEclipseのViewをあさってみると以下のようなものがったので使ってみる。
EclipseのメインメニューからWindow(W)-Show View-Other...を選択するとShow Viewダイアログが表示されます。
JavaScript - Documentationを選択してOKをクリックする。
Documentationビューの動作を確認してみる
表示される。
表示されない。
これだけでは表示されないケースがあるみたいです。これはJsDocの記述が悪いのか、そもそもJsDocにツールが対応していないのか...
引き続き調査して、何か見つかったら追って更新します。
3.作成したドキュメントとの紐付け方
探してみましたが、そもそも、EclipseからJavaScriptのHelpを呼び出すという仕組みは見当たりませんでした。
正直これが出来ないと、つくったドキュメントを一番活用するのはコーディング中です。つまり統合開発環境と連携できないとドキュメントを見てもらえるケースが激減するので、作成に気合が入らなくなってしまいます。
総評
以下の3つの目標を立てましたが、残念ながら今回はコンプリートできませんでした。
解決策が見えましたら、随時更新していきます。
- Eclipse上でドキュメント生成する。
⇒ mavenにて自動的に作成できるので、クリア - Eclipse上でコメント記入中にリアルタイムにプレビューしたい。(これは難しそう)
⇒ コメントの記述方法が悪いのかjsdocが対応していないのかコツを掴むのに時間がかかりそう、とりあえず継続利用して何か分かりましたらページを更新しいます。 - JavaScriptのコーディング中に生成したドキュメント参照できるようにする。
⇒ 全く、見つけれませんでした。すみません。
2015年9月20日日曜日
ウェブ・ページにソースコードをスタイリッシュに表示する方法(GitHub編)
経緯
ブログを書いていてソースコードを掲載することがあるのですが、ページに記載することが多くなりタグで書くのは面倒だったので簡単に貼り付けれるような方法を探してみました。
Goles(いつものように目標設定)
- ソースコードをWebページにかっこよくハイライト表示できること。
- 出来れば、タグなどを付与せずそのまま貼り付けたい。
- Java、HTML,JavaScriptに対応しているいること。
選定
検索してみると条件を満たせそうなものとして、以下のものが見つかった。
- SyntaxHighlighter
- GitHubのGistを利用して、自分のページにScriptを埋め込む
今回は、GitHubを選定してみました。理由は、GitHubに興味があり、一度使ってみたかっただけです。
GitHubとは?
個人的には以下の理解です。(まじめには勉強していないので感覚的なものです。正しい理解をしたい方は、自分で調べてみてください)
- ソースコードがバージョン管理できる。
- 世界中の人がレビューしてくれる。
今回サンプルをアップしましたが、1時間ほどで3人ほどレビューしてくれました。たいしたものをアップしなかったので、修正はありませんでしたが、すぐに見てくれる人がいるのはすごい!! - ついでに、評価もしてくれる。(ソーシャルネットワークの「いいね!」にあたるものが用意されていますが、、、何でもかんでも「いいね!」には賛同できかねますが)
開発をかれこれ、20年ほどやっていますが、こんなに簡単にグローバルに開発が行えてしまう状況はには正直、感動します。いろいろと感じた点はあるのですが、話がそれそうなので、別の機会にします。
作業の流れ
- GitHubへユーザ登録
- GitHubへログインし、Gistでソースコードを登録する。
- 好きなページにスクリプトを埋め込む
上記の4ステップです。実際やってみましたが、私はGoogleのBloggerを利用しており動的ページを利用していると表示できないという罠にはまった以外はあっさりとうまくいきました。
1.GitHubへのユーザ登録
ここは省略します。
2.GitHubへログインし、Gistでソースコードを登録する。
ログインすると以下の画面が表示されます。
画面上にある、Gistをクリックします。
ソースコードを入力します。
ファイルの拡張子でハイライト表示が変わるみたいなので必ず拡張子を入力すること
作成したら、Create secret gistをクリック
3.好きなページにスクリプトを埋め込む
画面右にある、Embed URLのアイコンをクリックすると
クリップボードに貼り付けるScriptタグがコピーされます。
自分のブログやホームページに貼り付けると完成です。
ちなみにこんな感じです。
Eclipseでソースを見てるみたいです。かっこいいので、皆さんもブログなど自分のコードを公開する場合は利用してみたください。
登録:
投稿 (Atom)



































