今日は面白いニュースを見つけました。
全社員を取締役にして、残業代を払っていなかった会社がありましたが、結局裁判で「実態は労働者」として認定されたそうです。
違法労働の手口は、実に様々です。
ですが最終的には、裁判になると会社側が不利になるケースも多いですね。
本件についてはYahooのサイトに書かれていますので、ご興味があればご覧ください。
http://bylines.news.yahoo.co.jp/sasakiryo/20160330-00056024/
記事の最後にも記載されていますが、勝ち取った金銭に対して遅延損害金の年利14.6%はすごいです。
預金金利に比べれば、破格の利回りです。
それなりに法律を知っている人なら、あえてこういう会社に飛び込み、ある程度年数がたってから裁判を起こして勝訴して、14.6%の複利運用をゲットする、という荒業(荒業倍返し!?)にも持ち込める気がします。
もちろん、敗訴側に金銭を支払う財力があることが前提ですけれどね。そう考えると、この方法もリスクが高いなあ。やはりハイリスクハイリターンの原則は、こういうところでも成り立ちそうです。
・・・どうして私は、すぐにこんな発想になるんでしょうか(笑)
変な方向に、勉強しすぎなのかも。
2016年03月31日
2016年03月23日
IISで、リダイレクト設定を行うコマンド
IISでは、Webサイトに対する設定をGUIで行うことができます。
しかし煩雑な処理をミスなく確実に行うためには、GUIで手を動かして操作するよりも、バッチコマンドを使うほうが効率的です。
それをするためのPowerShellのコマンドを調べていましたが、結局見つからなくて、コマンドプロンプトで実行する方法を採用することにしました。
appcmdというコマンドを使うと、実現できます。
このコマンドは、IISサーバー上のウェブサイトや仮想ディレクトリを指定して、様々な設定を変更することができます。
例えば、IISのリダイレクト機能を使って、ウェブサイトのメンテナンス中に「メンテナンス中です」といったHTMLファイルにリダイレクトするのは、次のようなコマンドを使います。
%windir%\system32\inetsrv\appcmd set config "Default Web Site/VirtualDir1" /section:httpRedirect /enabled:true /destination:http://localhost/maintenance.htm /exactDestination:true
・ウェブサイト名は「Default Web Site」とします
・このDefault Web Site直下の、ディレクトリVirtualDir1内の任意のファイルにアクセスされた場合に、別URLにリダイレクトします
・リダイレクト先URLは http://localhost/maintenance.htm と設定しています
しかし煩雑な処理をミスなく確実に行うためには、GUIで手を動かして操作するよりも、バッチコマンドを使うほうが効率的です。
それをするためのPowerShellのコマンドを調べていましたが、結局見つからなくて、コマンドプロンプトで実行する方法を採用することにしました。
appcmdというコマンドを使うと、実現できます。
このコマンドは、IISサーバー上のウェブサイトや仮想ディレクトリを指定して、様々な設定を変更することができます。
例えば、IISのリダイレクト機能を使って、ウェブサイトのメンテナンス中に「メンテナンス中です」といったHTMLファイルにリダイレクトするのは、次のようなコマンドを使います。
%windir%\system32\inetsrv\appcmd set config "Default Web Site/VirtualDir1" /section:httpRedirect /enabled:true /destination:http://localhost/maintenance.htm /exactDestination:true
・ウェブサイト名は「Default Web Site」とします
・このDefault Web Site直下の、ディレクトリVirtualDir1内の任意のファイルにアクセスされた場合に、別URLにリダイレクトします
・リダイレクト先URLは http://localhost/maintenance.htm と設定しています
2016年03月22日
自分のサイトにGoogleMapを埋め込む方法
ホームページ内に、GoogleMapの地図を埋め込んでいるサイトがたくさんあります。
GoogleMapの埋め込みには、特殊な技能や手順などは必要なく、だれでも簡単にできます(ウェブサイトを作成できるスキルは必要ですが)
また、埋め込んだ地図の場所を改めてGoogleMapで表示できるよう、GoogleMapへのリンクを用意することもできます。
そのやり方は、GoogleMapのヘルプ(次のURL参照)にかかれています。
https://support.google.com/maps/answer/3544418?hl=ja
今日、この質問に答える機会がありましたので、ここにも展開しておきました。
参考にしてみてくださいね。
GoogleMapの埋め込みには、特殊な技能や手順などは必要なく、だれでも簡単にできます(ウェブサイトを作成できるスキルは必要ですが)
また、埋め込んだ地図の場所を改めてGoogleMapで表示できるよう、GoogleMapへのリンクを用意することもできます。
そのやり方は、GoogleMapのヘルプ(次のURL参照)にかかれています。
https://support.google.com/maps/answer/3544418?hl=ja
今日、この質問に答える機会がありましたので、ここにも展開しておきました。
参考にしてみてくださいね。
2016年03月18日
HTMLのソースコードに改修履歴を書いている、国税庁の「確定申告書作成コーナー」
今年の確定申告書提出も無事終わりました。
現在は、国税庁のサイト「確定申告書作成コーナー」で確定申告書を簡単に作れるので便利になりましたね。
私もこれを使って申告書を作成していますが、このサイトがどういう仕組みになっているのか興味があったので、HTMLファイルのソースコードを見てみました。
すると、過去の改修記録(不具合改修を含む)が、HTMLのコメントとしてご丁寧にも書かれてあるではありませんか(笑)
確定申告書作成コーナーの開発部隊では、不具合が発生したときに起票する書面を「故障票」と呼んでいるようですね。(そう書いてある・・・)
この改修履歴とJavaScriptのプログラムを見ましたが、税務を理解していないITエンジニアが、一生懸命頑張って作ったんだな、ということもよく伝わってきました(笑)
この開発部隊を束ねるマネージャーも、いろいろ苦労したことでしょう。
開発履歴や不具合の管理は、開発者側ではしっかり把握しておくべきことではありますが、わざわざサイト利用者のブラウザにまで転送しなくてもいいのに・・・と個人的には思います。
それに、作るときにどれだけミスしたかってことがばれてしまうので、ちょっと恥ずかしい。
私だったらこんなことはせず、ちゃんとプログラム開発管理ツールで履歴を残しますけれどね。
15年前の仕事のやり方を採用している会社に、発注したんじゃないかなーと、個人的には推測しています。
と、いろいろ書きましたが、便利なサイトの裏には、不具合改修をたくさん積み上げながらも、作った人たちの苦労があるものなんですよ。
そんなことを思いながら、今年の確定申告書を作ったのでありました。
現在は、国税庁のサイト「確定申告書作成コーナー」で確定申告書を簡単に作れるので便利になりましたね。
私もこれを使って申告書を作成していますが、このサイトがどういう仕組みになっているのか興味があったので、HTMLファイルのソースコードを見てみました。
すると、過去の改修記録(不具合改修を含む)が、HTMLのコメントとしてご丁寧にも書かれてあるではありませんか(笑)
確定申告書作成コーナーの開発部隊では、不具合が発生したときに起票する書面を「故障票」と呼んでいるようですね。(そう書いてある・・・)
この改修履歴とJavaScriptのプログラムを見ましたが、税務を理解していないITエンジニアが、一生懸命頑張って作ったんだな、ということもよく伝わってきました(笑)
この開発部隊を束ねるマネージャーも、いろいろ苦労したことでしょう。
開発履歴や不具合の管理は、開発者側ではしっかり把握しておくべきことではありますが、わざわざサイト利用者のブラウザにまで転送しなくてもいいのに・・・と個人的には思います。
それに、作るときにどれだけミスしたかってことがばれてしまうので、ちょっと恥ずかしい。
私だったらこんなことはせず、ちゃんとプログラム開発管理ツールで履歴を残しますけれどね。
15年前の仕事のやり方を採用している会社に、発注したんじゃないかなーと、個人的には推測しています。
と、いろいろ書きましたが、便利なサイトの裏には、不具合改修をたくさん積み上げながらも、作った人たちの苦労があるものなんですよ。
そんなことを思いながら、今年の確定申告書を作ったのでありました。
2016年03月15日
IISのリダイレクト機能でメンテナンス画面を表示したいがうまくいかない場合
IISのリダイレクト機能を使うと、サイト全体をメンテナンス画面に切り替える、ということを実現できます。
ただし、リダイレクト設定を行っても、通信エラーが出たり、リダイレクトが無限ループしている(自分自身のフォルダにリダイレクトしている)など、リダイレクトに失敗してうまくいかないこともあります。
なので、シンプルな方法ですが、次のように設計するとうまくいきます。
・別のサイト、別のドメインにメンテナンスページを置き、そこにリダイレクトする
・コンテンツをあるフォルダに入れておき、そのフォルダにリダイレクトの設定をする。リダイレクト先は、そのフォルダの外側にあるURLに設定する。
ただし、リダイレクト設定を行っても、通信エラーが出たり、リダイレクトが無限ループしている(自分自身のフォルダにリダイレクトしている)など、リダイレクトに失敗してうまくいかないこともあります。
なので、シンプルな方法ですが、次のように設計するとうまくいきます。
・別のサイト、別のドメインにメンテナンスページを置き、そこにリダイレクトする
・コンテンツをあるフォルダに入れておき、そのフォルダにリダイレクトの設定をする。リダイレクト先は、そのフォルダの外側にあるURLに設定する。
2016年03月12日
Windows10でのシステムバックアップ
Windows10で、システム全体のバックアップとその回復方法について、下記サイトが参考になります。
Windows10では、DVDから回復する方法と、USBメモリを使って回復する方法とがあります。
・http://pcfan.121ware.com/useful/1010/
・http://www.japan-secure.com/entry/about_creating_a_backup_image_of_Windows_10.html
・http://fanblogs.jp/honeycome/archive/72/0
Windows10では、DVDから回復する方法と、USBメモリを使って回復する方法とがあります。
・http://pcfan.121ware.com/useful/1010/
・http://www.japan-secure.com/entry/about_creating_a_backup_image_of_Windows_10.html
・http://fanblogs.jp/honeycome/archive/72/0
2016年03月09日
プログラマーは年収低いばかりじゃない、優秀に能力を発揮するプログラマーもいるのだ
私が日ごろ開発現場に対して思っていることを、ズバリ書いているブログです。
http://blogs.itmedia.co.jp/junmtd/2016/02/post_6.html
プログラマは一番下っ端で、設計する人がその上にいる人材で、いわゆるプロマネが開発業界の頂点。
このピラミッド構造をのぼっていくにつれて、人月単価も上がる。
こんな「士農工商」的な発想で、システム会社を成り立たせているところが多くあります。
こういう組織では、プログラマは大事にされず、名ばかりのプロマネが重宝されるようになっていきます。
こんな開発チームで下っ端的な働きしかできないプログラマもいれば、依頼者とコミュニケーションを取りながら(プロマネ的な動きをしながら)プログラムを書く人もいます。
後者の方が、仕事のスピードと正確さは、断然高くなります。言うまでもないことです。
これが、上記で紹介したブログで書かれている「圧倒的な生産性の違い」「スピーディーな問題解決」に当たるのでしょう。
他社で3人分の働きができるプログラマであれば、一般的なプログラマの年収の3倍の年収をもらうことも、悪くない話です。
海外で年収1000万円のプログラマがいるといいますが、プログラマを下っ端扱いしかできない組織では、考えられないことだと思います。
プログラムを書くエンジニアは、二極化しています。
そのプログラマが所属した組織によって、二極化してしまうと感じます。
自社でサービスを提供している会社にとっては、依頼者のニーズに沿って的確な動きができるプログラマが必要なはずです。
市場ニーズにも素早く対応できるようになり、自社のサービスを劇的に変えていけます。
プログラムを書く能力を会社の戦力とみなせるかどうか。そういう経営ができるかどうか。
こういう発想で考える人が、増えてほしいと思います。
http://blogs.itmedia.co.jp/junmtd/2016/02/post_6.html
プログラマは一番下っ端で、設計する人がその上にいる人材で、いわゆるプロマネが開発業界の頂点。
このピラミッド構造をのぼっていくにつれて、人月単価も上がる。
こんな「士農工商」的な発想で、システム会社を成り立たせているところが多くあります。
こういう組織では、プログラマは大事にされず、名ばかりのプロマネが重宝されるようになっていきます。
こんな開発チームで下っ端的な働きしかできないプログラマもいれば、依頼者とコミュニケーションを取りながら(プロマネ的な動きをしながら)プログラムを書く人もいます。
後者の方が、仕事のスピードと正確さは、断然高くなります。言うまでもないことです。
これが、上記で紹介したブログで書かれている「圧倒的な生産性の違い」「スピーディーな問題解決」に当たるのでしょう。
他社で3人分の働きができるプログラマであれば、一般的なプログラマの年収の3倍の年収をもらうことも、悪くない話です。
海外で年収1000万円のプログラマがいるといいますが、プログラマを下っ端扱いしかできない組織では、考えられないことだと思います。
プログラムを書くエンジニアは、二極化しています。
そのプログラマが所属した組織によって、二極化してしまうと感じます。
自社でサービスを提供している会社にとっては、依頼者のニーズに沿って的確な動きができるプログラマが必要なはずです。
市場ニーズにも素早く対応できるようになり、自社のサービスを劇的に変えていけます。
プログラムを書く能力を会社の戦力とみなせるかどうか。そういう経営ができるかどうか。
こういう発想で考える人が、増えてほしいと思います。
2016年03月07日
機械学習で実際に動く証券サービスを作ってみた
ここ最近、「機械学習」が流行語となっていますね。
先日、機械学習を使ったサービスを自分で作ってみる、という体験型勉強会に参加してきました。
3時間ほどの限られた時間ではありましたが、当日配布されたレジュメを見ながら、次のようなサービスを自分で作ってみました。
・各資産の価格の変化に応じて、必要以上にリスクの数値が上がらないようなポートフォリオの資産配分比率を自動的に計算する
(コンピュータが、勝手にポートフォリオを組み替えてリスクの上昇を抑える)
・株価データをリアルタイムに読み込ませて、「買い」「売り」の判定を行う
(一種のアルゴリズムトレーディング)
・顧客の属性と、現在のマーケット価格とを照らし合わせて、購入してくれそうな金融商品を推薦する
(いわゆるレコメンドシステム。消費者にオススメを知らせるシステム)
・顧客の情報を入力すると、その顧客に対してどういう販売戦略をとればよいのかを判定する
(営業・マーケティングツールの一種)
証券業界に限らず、保険業界や不動産業界など、どの業界でも似たようなサービスを望むニーズがあります。
今回の勉強会で、こういったサービスを実際に動くところまでをやりきる方法が分かりました。
そして、機械学習の内部にまで踏み込み、仕組みを理解することもできました。
機械学習と呼ばれているものの中身は、おおよそ次のような仕組みになっています。
・大量のデータを用意する
・そのデータを統計学的な発想に基づき、データを分類したり、類似性を計算する。
・その計算結果が正しいかどうかを検証する。
・検証の結果に不満があったり精度が低いと思ったら、統計上のパラメータ数値を調整するなどして、再度計算する。
・これを繰り返し、妥当な答えが得られるところまで調整を繰り返す。
・妥当な答えが得られるようになれば、あとはその答えをコンピュータが自動応答するようにプログラムを組む。
これによって、コンピュータがさまざまなことを自動判定し、アクションをとる仕組みが出来上がります。
実は機械学習とはいっても、その中身は特別なものではありません。
機械学習と呼ばれる上記の仕組みを、とうの昔から実践している人たちはいるのです。
つまり、昔から取り組まれていることを、1単語で表現したものにすぎません。
最近、機械学習が話題になっているのは、以上のような取り組みを、専門的な知識がなくとも簡単に行えるウェブのサービスが登場してきたことによります。これまでだったら、
・分析を行うに十分なデータを保有していなくてはならない
・統計学についての十分な知識をもち、データの分析手法を学ばなければならない
・これらをシステム化するのに必要なプログラミング能力がなければならない
・さらに、作ったプログラムを動かすためのさまざまなサーバーを用意し、設定しなければならない
・そして実用に耐えうるシステム性能を出さなくてはならない
といったようにとてもハードルが高いものでした。
しかし今は、ネットにつながりさえすれば使える各種クラウドサービスを使うことで、上記のハードルは取り去られ(ブラックボックス化されている、とも言えますが)、短時間に機械学習の仕組みを活用したサービスを展開できるようになっています。
実際、今回の勉強会はたった3時間という時間でしたが、この短い時間の中で、サービス提供まで実現できました。
今回の勉強会は、きわめて実践的であり、参加してよかったと思いました。
私が心の底から参加してよかったっていう勉強会やセミナーは、100回に1回あるかないか、くらいなのですけれどね(笑)
今後はこの機械学習も、積極的に視野に入れていこうと思います。
なにか、機械学習を使った面白いサービスのネタが、ないかなあ〜
先日、機械学習を使ったサービスを自分で作ってみる、という体験型勉強会に参加してきました。
3時間ほどの限られた時間ではありましたが、当日配布されたレジュメを見ながら、次のようなサービスを自分で作ってみました。
・各資産の価格の変化に応じて、必要以上にリスクの数値が上がらないようなポートフォリオの資産配分比率を自動的に計算する
(コンピュータが、勝手にポートフォリオを組み替えてリスクの上昇を抑える)
・株価データをリアルタイムに読み込ませて、「買い」「売り」の判定を行う
(一種のアルゴリズムトレーディング)
・顧客の属性と、現在のマーケット価格とを照らし合わせて、購入してくれそうな金融商品を推薦する
(いわゆるレコメンドシステム。消費者にオススメを知らせるシステム)
・顧客の情報を入力すると、その顧客に対してどういう販売戦略をとればよいのかを判定する
(営業・マーケティングツールの一種)
証券業界に限らず、保険業界や不動産業界など、どの業界でも似たようなサービスを望むニーズがあります。
今回の勉強会で、こういったサービスを実際に動くところまでをやりきる方法が分かりました。
そして、機械学習の内部にまで踏み込み、仕組みを理解することもできました。
機械学習と呼ばれているものの中身は、おおよそ次のような仕組みになっています。
・大量のデータを用意する
・そのデータを統計学的な発想に基づき、データを分類したり、類似性を計算する。
・その計算結果が正しいかどうかを検証する。
・検証の結果に不満があったり精度が低いと思ったら、統計上のパラメータ数値を調整するなどして、再度計算する。
・これを繰り返し、妥当な答えが得られるところまで調整を繰り返す。
・妥当な答えが得られるようになれば、あとはその答えをコンピュータが自動応答するようにプログラムを組む。
これによって、コンピュータがさまざまなことを自動判定し、アクションをとる仕組みが出来上がります。
実は機械学習とはいっても、その中身は特別なものではありません。
機械学習と呼ばれる上記の仕組みを、とうの昔から実践している人たちはいるのです。
つまり、昔から取り組まれていることを、1単語で表現したものにすぎません。
最近、機械学習が話題になっているのは、以上のような取り組みを、専門的な知識がなくとも簡単に行えるウェブのサービスが登場してきたことによります。これまでだったら、
・分析を行うに十分なデータを保有していなくてはならない
・統計学についての十分な知識をもち、データの分析手法を学ばなければならない
・これらをシステム化するのに必要なプログラミング能力がなければならない
・さらに、作ったプログラムを動かすためのさまざまなサーバーを用意し、設定しなければならない
・そして実用に耐えうるシステム性能を出さなくてはならない
といったようにとてもハードルが高いものでした。
しかし今は、ネットにつながりさえすれば使える各種クラウドサービスを使うことで、上記のハードルは取り去られ(ブラックボックス化されている、とも言えますが)、短時間に機械学習の仕組みを活用したサービスを展開できるようになっています。
実際、今回の勉強会はたった3時間という時間でしたが、この短い時間の中で、サービス提供まで実現できました。
今回の勉強会は、きわめて実践的であり、参加してよかったと思いました。
私が心の底から参加してよかったっていう勉強会やセミナーは、100回に1回あるかないか、くらいなのですけれどね(笑)
今後はこの機械学習も、積極的に視野に入れていこうと思います。
なにか、機械学習を使った面白いサービスのネタが、ないかなあ〜