PythonでWebサービスを作る際にいくつかのフレームワークがあるようですが、DjangoがGoogleの検索数などでも一番メジャーのようです。 Pythonというプログラミング言語自体は好きだけど、フレームワークについて日本語の情報が少ないというのは、Pythonをやる人には共通の悩みだと思います。Amazonで本を探しても日本語の本がないんですよね、ちっとも。。PHPの本が他を圧倒していて、次にJava、その次がRubyで、PythonのWebサービスの作り方に関する本は新しいものはほとんど見当たりません。あっても、ちょっとしか書いてないんですよね。 でも、朗報です。 DjangoのTutorialには日本語のページがありました。Tutorialの部分は7ページくらいしかないので、本にしたらその3−4倍の30ページ分くらいのボリュームでしょうか。あまり多くはありませんが、役に立つ情報が多く載っていました。 https://docs.djangoproject.com/ja/1.10/intro/tutorial01/ modelを作って、 データベースに接続して、 URLの書き方とルーティングを設定して、 コントローラの書き方と、 ビューのテンプレートの指定の仕方と、 フレームワークを使うのに必要なことは一通り載っています。CakePHPやASP.NET MVCなどには一通り揃っているHtmlヘルパーの記事が載っていませんでしたが、これは作りながら探していくしかないでしょう。きっとありますよ。海外ではこれだけメジャーな言語ですから。。。 それと他のWebサービスの得意な言語(RubyやPHP)では必ずある簡単なCRUDをするページを一発で作る機能もこのチュートリアルには書いていませんでした。もしかしたら、Djangoにはないのでしょうか? Djangoでもそうですが、フレームワークを使うとデータベースに接続する処理が、モデルを処理するコードで処理するだけで自動的にできるようになるため非常に簡単です。 DjangoでもMVCの構造を採用していますが、特にいいと思ったのが、フレームワークの設計上でモデルを唯一のデータ操作の入り口にしていることです。これだと、あちこちからデータを操作するコードが入り込む余地がなくなるので、特にデータベースのデータ構造を変更する際に、モデルを変更してマイグレーとさえすれば良いので、バグが入りにくくデータの仕様変更に強そうです。
Month: January 2017
外国法人の日本支店を作るのは意外に大変になってしまう場合があります。手続き自体はそれほど複雑でもないのですが、宣誓供述書というものをどのように作って、本国のどの機関で認証してもらうかというのが、国によって違うため、そこを上手く伝えるのが難しいのです。きっとここがキモなのでしょう。 宣誓供述書には、以下の情報を記載してもらいます。 会社名 設立年月日 所在地 代表者氏名 代表者住所 資本金 会計期間 会社の目的 日本における支店の所在地及び設置日 日本における代表者の住所及び氏名 日本において公告する方法 これを本国の認証機関に認証してもらいます。国によって制度が違うのですが、公の公証人がいればそこで認証してもらいます。外務省でやってもらう場合もあるようです。英語ではApostilleというようなのですが、それをお客様に確認してもらいます。ここが大変なのです。お客様は本国の出身ですが、そんなに本国の認証制度に詳しい人なんていません。私共は理屈で宣誓供述書は政府関係の公証機関でやってもらえるはずと思っていますが、それが具体的にはどの機関でやれるかというのをわからない場合が多いのです。 一度、韓国の会社の日本支店を作ろうとして、とても大変になったことがありました。 韓国の本国では、日本支店の設置に関する宣誓供述書は韓国ではできないので、「日本における」韓国領事館で宣誓供述書を作るべきと言いました。 それで私共やお客さんが領事館に問い合わせると、宣誓供述書を作るには日本における代表者が日本の在留カードを持っていることが必要とのことでした。この場合、日本人か既に在留カードを持っている方が日本における代表者になればよかったのですが、このお客様の場合は、日本の代表者は韓国の方で、初めて日本に来る方でした。 日本の入国管理局やビザ関係の情報を持っているJETROなどに聞くと、在留カードは日本における支店がないと取得できないとのことで、卵を得るためにはニワトリが必要で、ニワトリを得るためには卵が必要になりにっちもさっちも行かなくなってしまったことがありました。 さらに日本における代表者には外国人の場合でも居住者であればなることができます。その場合には、印鑑登録をしている場合には印鑑証明、ない場合にはサイン証明が必要です。サイン証明は通常日本におけるその国の大使館、領事館などで取ることができます。
目標なんて決める必要がないと言う人もいますが、私は目標を決めておくことは重要だと思います。 目標がないと人生を場当たり的に生きてしまいます。人生というと大げさに聞こえてしまいますが、その積み重ねの元である一日一日を場当たり的にに過ごしてしまいます。一日一日を場当たり的に過ごしていると、あっという間に1ヶ月を場当たり的に過ごしてしまいます。1ヶ月1ヶ月を場当たり的に過ごしてしまうと、あっという間に5年10年が過ぎてしまい、振り返って一体何をしていたのだろうと言う事になってしまいます。 だから目標を決める必要があるのです。 目標を決めるということは、計画を決めるということでもあります。目標を決めても計画を決めないと何も起きません。心の中だけで思っていてもいいとは思いますが、毎日少しずつでも何かを継続してやるのがいいのではと思うのです。目標を明らかにするためにも、計画を作る必要があります。具体的な計画がないということは、具体的な目標を持てていないと言う事を自ら疑った方がいいかもしれません。自分が毎日を無為に、無計画に過ごしていないかを見つめ直した方がいいと思います。 目標は当然複数あってもいいと思います。例えば、健康とかお金、家族や友人との人間関係、趣味などで人によって違うと思いますが、とにかく具体的に決めるのです。 例えば健康ならハーフマラソンを走れるようにするとか、3000メートル級の山に登るとか、お金なら家を買うとか、いくら貯金するとかとにかく何か決めるのです。 そして、次に大事なのが具体的に行動を毎日することです。 例えば、毎日15分でも走るとか、毎日30分勉強するとか、とにかく決めて、具体的に実行することが大事です。 ちょっとずつでいいから毎日やるのです。最初はあまりにちょっとずつなので、現実には永遠にゴールに到達できるようには思えないかもしれません。でも実際には、毎日ちょっとずつでもやっていると、モメンタムというか勢いがついてくるので、スピードがちょっとずつ上がってきます。先日読んだ「スライト・エッジ」という本の中にも書いてありましたが、ちょっとずつ勢いがついてくることが大事なのです。 最初は無理に見えるかもしれません。それでもちょっとずつ続けていくと1年か2年か3年後には状況が変わっていると思います。もう無理には見えないかもしれません。 私は自分の目標の考え方が甘くて失敗したと思っています。この目標の立て方が明確でないと、あとでその失敗に気がつくのですが、それが時間が失われてしまっているので、取り返しがつかないのです。 今は、自分らしさとか快適さが強調されていますが、究極的にはそれでいいと思うのですが、それだけに流されると、無目的にただ、努力を避けて、楽な生活に流されてるだけという事になりかねないので注意した方がいいと思います。それで、10年経ってしまうと、その事自体はもう取り返しがつきません。
結論から言うと、Webサービスで大規模になる可能性があり開発資源が潤沢にある場合はPython、個人やスタートアップの小企業が小さく速く始めたいならPHP、Webにする必要がなく計算やローカルPCでスクリプトに使うならPythonでしょうか。 スクリプト言語なんてみんな同じだと思っていませんでしたか?そうでもないですか?私は結構そう思っていました。今回、自分のプロジェクトをスクリプト言語で開発をやりたいと思ったので、Ruby、Python、PHPをそれぞれ20−30時間ずつ触って検証して見ました。ヒマですね。。というツッコミは置いておいて、ファーストインプレッションではありますが、自分ごとですので結構一生懸命評価してみました。 確かに、スクリプト言語の言語仕様だけ比べたらそれほど差はないのかもしれません。 でも、ローカルPCで使う場合にはライブラリの揃い具合で、それぞれの言語は全然違います。Webサービスも実際の開発にはフレームワークを使うので、どんなフレームワークがあるか、どのフレームワークを使いたいかで、選ぶべき言語は全然違います Ruby まず、Rubyは外しました。理由は、日本では人気がある言語ですが、世界的にはどちらかと言うとマイナー言語だからです。Googleの検索件数などの情報を見ても、世界的にはPythonやPHPの方が多いです。多分、使われている分量は5-7倍は違っていると思います。 Worldwide, Jan 2017 compared to a year ago: Rank Change Language Share Trend 1 Java 23.1 % -0.9 % 2 Python 14.4 % +2.7 % 3 PHP 9.7 % -1.0 % 4 C# 8.4 % -0.1 % 5 Javascript 7.7 % +0.5 % 6 C 7.1 % -0.3 % … Read More “Ruby、Python、PHPを実際に試してみた。どれを選べばいいのか。” »
Change in scope of taxable heirs The scope of heirs taxable under Japanese Tax Law is going to be changed. The Inheritance tax law will be amended from April 1st, 2017. Heirs taxable for Japanese tax have been following until today but its definition will be wider, meaning there will be almost nobody who has … Read More “Inheritance Tax Amended for 2017” »
私たちのような小さな事務所で、ただ忙しいだけでずっとバタバタした状況を続けている状態を「貧乏暇なし」と言ったりします。貧乏ひまなしから抜け出すには何らかの差別化、つまり、何かの分野において一番になることが必要です。どんな分野でも一番になるのは大変ですからいくつもできるはずはなく、対象をぐっと絞る必要があります。二兎を追って両方の分野でトップ級の実力を身に着けるのは簡単ではないです。あっさり、一つの分野に絞ってしまう事が早道でしょう。 「小さな会社の稼ぐ技術」では、大手と違う事をやる「差別化」を強調しています。そして、その商品もしくはサービスで小さな1位をを目指すこと、あれこれやらないで1点に集中することを強調しています。しかし、これが難しいのです。私の事務所の場合は、まず、英語というのが前面に出ています。ネイティブのスピーカーも2人いますから、英語でサービスを普通に提供できるという点では、この広い東京でもそんなに悪くはないかも知れません。 でもその他にどんな専門性があるかときかれると、即答できないものがあります。色々やっているのですがどれもちょっと中途半端な気はします。いま、力を入れているのは事業承継などの法律と税法の知識をフルに使う分野です。もう一つは、システムを使ってお客様の記帳を楽にして美しい帳簿を提供しようとするサービスです。それぞれ大事なことではあるのですが、なかなか両方を極めていこうとすると難しい。 ばっさりと一つを切り捨ててしまうくらいの思い切りが必要なのでしょうが、それもなかなか難しいです。
この本の中に出てくる大阪のお弁当やさんの話が面白かったです。 潰れそうなお弁当やさんから地域で一番になります。 この本に出てくるのは、特殊な能力やずば抜けた能力のない普通の人たちです。そして出てくるのが、業績をアップさせるために実際に何をやったかが書いてあります。単なる頑張れと言った精神論や、抽象的な戦略論ではありません。 もちろん、ビジネスは人それぞれで置かれている環境や事業の内容が違うので、抽象論も必要です。分野が違えば、具体的なやり方は異なるはずだからです。 この本の中には具体的なアドバイスがいくつか書いてあります。この手の本を読むと、「自分の場合はこうだから・・・」と色々自分に言い訳をつけて、実際には何もやらないことが多いと思います。でも、こういう本をたまに読まないと自分の今までのやり方に染まってしまって、快適なぬるま湯から抜け出してみようとは思いません。むしろ、自分がぬるま湯にいることも気がつかないことが多いと思います。 この本に出て来たアドバスを実際に実行してみようと思います。
We all know that director salary cannot be changed during a fiscal year under Japanese Corporate Tax Law except for a few exceptional situations. One typical reason is when our business becomes sour, losing money and falls in red. The rule may sound strange to foreigners or people new to Japanese business environment but that’s … Read More “When can we cut director salary? Is his poor performance enough good reason?” »
You can claim your family members or relatives living overseas as your dependents. You will reduce your taxable income by 380,000 yen per person. It has a significant impact on your tax to pay. I had a client who came from an African county and he claimed about 10 dependents living over there. By claiming … Read More “Deduction for dependents living overseas” »
Windows Serverを使わなくても良いWebサービス用の言語を始めたいと思ってRubyの本を買いに行ったのですが、本屋さんでは圧倒的にPythonの本の方が多かったです。 Pythonはマイナーな言語だと思っていたのですが、世界では圧倒的にRubyよりも使われているようですね。折しも機械学習というのが流行っていて、Pythonでは機械学習の世界的に有名なライブラリーが使えるからというのが、今これだけ流行っている理由のようです。この本は入門者向けですが、機械学習の記事までもが載っています。(ということは、ITサイエンスの専門家ではない私でも機械学習のことがわかってしまうのかしら。。?なんて嬉しい妄想を持ってしまいます。) Pythonは初めてだったのですが、この本でスクリプト言語について目からウロコが落ちました。スクリプト言語なんてライト級の言語だっていうし、あまり大したことは出来ないのではないかと思っていたのですが、大間違いでした。 昔、証券会社の同僚が面倒な数字の集計とかリスク管理の話をしていた時に、「パール(Perl)を使えば簡単だよ。」とかさかんに言ってたのですが、なんかその凄さがピンと来ていませんでした。きっとこういう事を言っていたのでしょう。実はスクリプト言語って多機能で色々できそうな上に、C#みたいなコンパイル言語と違って、思い立ったらちょっと書いて見てすぐ使えるので、便利そうですね。 筆者のクジラ飛行机さんの記事は日経ソフトウェアで読んでいて、お名前は知っていたのですが、この本はよかったです。細かい具体例がたくさんあり、実際に手を動かしてプログラムを動作させながら進めていけるようになっています。簡単なスクリプトの書き方はわかったような気にさせられました。こういう風にわかりやすく勘所を説明するのって大変なんだろうなあと思います。 余裕で元は取れますね。