日々考えたり

プログラミング学習記録、読んだ本の感想など

MAMP:Pythonで素数を表示

勉強記録です。

 

題材

1~50までの値で、素数のみを表示

 

Code

#!C:/MAMP/bin/python/bin/python
print 'Content-type: text/html'
print ''

 

#1~50の素数のみを表示
i = 1
while i <= 50:
    j= 1
    while j < i:
        if (i%j == 0) and (j != 1):
            break
        else:
            j = j+1
    if j == i:
        print i
    i=i+1

 

MAMPのPython用設定(Windows)

Udemy教材で習ったのですが、MAMPPython実行結果をブラウザで表示したいときの設定方法について、ちょっと迷ったのでメモします。

 

OS:

Windows10

 

変更する設定ファイル:

httpd.conf (保存場所:C:\MAMP\conf\apache)

 

変更箇所(左:変更前、右:変更後):

line 364 

#ScriptAlias /cgi-bin/ "D:\MAMP\cgi-bin" ScriptAlias /cgi-bin/ "C:\MAMP\cgi-bin/"

line 380

#<Directory "D:\MAMP\cgi-bin"> <Directory "C:\MAMP\cgi-bin">
# AllowOverride None AllowOverride None
# Options None Options ExecCGI
# Order allow,deny Order allow,deny
# Allow from all Allow from all
#</Directory> </Directory>

line 481

#AddHandler cgi-script .cgi .py AddHandler cgi-script .cgi .py

line 484

AddHandler wsgi-script .wsgi .py #AddHandler wsgi-script .wsgi .py

 

でした。自分のようなWebプログラミング初心者にはちょっとハードルが・・・。

 

ちなみにファイル比較は、Difffというサイトで行いました。実行結果をコピペで上記のように貼り付けることができるのはとてもいいですね。

difff.jp

 

 

 

コロナウィルスで見えた製造業のツケ

中国の武漢を発端にした、全世界へのコロナウィルス感染拡大。ちょうど春節の時期で、多くの国民が帰省の真っ只中だった中国は、その休みが明けても感染を防ぐ目的で、政府通達により多くの会社は業務を一時休止し、海外への渡航や中国国内の移動も制限されている。

 

春節から半月たった今なお、感染はじわじわと拡大するものの、中国での企業活動は徐々に始まってきた。自分の所属する部署と関係する中国の事業所も、そこそこのメンバーが仕事を再開している。

けれども、多くのメンバーは、家から会社のネットワークにつないでリモートワークをしている状況だ。設計チームの作業者に至っては、会社にあるCAD端末をリモートでなんとか操作しながら、溜まった図面作成作業をこなしているらしい。

 

それでもデスクワーク系の仕事はまだいい方で、下請けなどの工場に至ってはかなり深刻な事態が窺える。

中国の工場の多くは、賃金の安い地域にあり、そこで働く作業員は、更にもっと田舎から出て来た出稼ぎ労働者達も多い。彼らは待ち望んだ春節の時期、何時間も電車やバスを乗り継ぎ、田舎の実家に帰る。その最中、このコロナウィルス騒動が起こった。国民の移動による感染拡大を防ぐため、多くの公共交通機関はストップ。もちろん田舎で貧しい暮らしの彼らに自家用車という選択肢はない。

そのせいで、工場付近にある彼らの寮にまで戻ることができない作業員が続出し、手作業頼みの工場はかなりの工数不足に陥っている。

 

 

この今の状況になって、自分はなんとなく昔聞いた、ブラジル日系人の話を思い出した。

地球上で、ちょうど日本の裏側に位置するブラジルは、国土面積が日本の20倍以上と豊富な領土を保有している。気候はやや暑いが、森林も多く、アマゾン川の流域に豊かな土地を持っている。

しかし、その昔は、豊富な資源を持ったブラジル国民よりも、僅か1/20の土地しか持たない日本からの移民の方が農作業がうまかった、というのを聞いたことがある。

 

島国のせいで限られた面積の土地しか持てず、また農耕に適した平野も少ない日本は、狭い農地で最大限に収穫を増やす技術に長けていたそうだ。

一方で、ブラジルでは、広大な土地があり、収穫を増やすには単純に農地の面積を広げる、という方法を取ることができたため、農地の所有者は大規模に農園を拡大する一方で、狭い土地が所々に余っていても、気にする必要がなかった。

そのため、ブラジルに来た日本人達は、現地の人間よりも農地を使いこなし、少ない人数でも農作物を次々と収穫して成功していったらしい。(実際は、ブラジル日系人は色々苦労があったようなので、単純なサクセスストーリーではないのだろうけれど。)

日本とブラジルで作っていた農産物の違いはあれど、制限された環境が技術を革新できた好例はないだろうか。

 

 

この例で言うブラジルの農業が今の中国の工場に見えて仕方がない。ブラジルで豊富であった農地を、中国の工場に置き換えると「豊富な人間」になる。豊富な人間がいるからいつまで経っても工場の手作業の工程は無くならない。人件費の低減を求めて、田舎へ工場を移転していくことはできても、今回の騒動のような「人間」が持つそもそもの不安定さによるリスクには脆い。

 

中国、もしくは製造業の各経営者達が、この事態をどのように見ているのか、ブラジルの日系人に当たる起爆剤=工場の無人化、あるいは設計レベルでの対策が促進されることになるのか、興味は尽きない。

 

製造業における次代の寵児、イーロン・マスクの本を読んだ感想はこちら。(イーロン・マスク個人のことにはあまり触れておりません)

 

sig-nai.hatenablog.com

 

 

ハードウェアの勉強がしたい。

某オンライン学習コンテンツで知った、Circuit Lab。

ソフトウェアでもそうですが、回路を設計するのには専用ツールで回路を描くことが多いため、非回路設計者は出来上がって印刷された回路図くらいしか普段目にする機会がありませんでした。なので設計図をいじったりする機会は当然なく、あるとすれば自分だとExcel(!)で書かれた回路図の抵抗値をちょっと変えたり…というくらいでした。でも周りの部品がどういう基準で決められているかは謎のままで。

 

Circuit Lab、これを最初に教えてほしかった・・・。

f:id:sig_nai:20200206221605j:plain

説明は英語しかないようだけれど、エレキ用語なんてそもそもカタカナ多用するからそんなにハードル高くないのではないかと思う。しかも最初は画面の使い方からなので、入っていきやすそう・・・。

きちんと設計するには有料で登録しないといけないようだけれども、教育のためならもはや買ってもいいんじゃないかというレベル。

抵抗やLEDなどをクリックして編集画面を開くと、そこから要望に合ったパーツを購入する画面にも行けるのも小気味いい仕様。

f:id:sig_nai:20200206215202p:plain

 

もう海外ではどこかの教育で使ってるんでしょうね。素晴らしい~

 

Circuit Lab

Online circuit simulator & schematic editor - CircuitLab

この中のInteractive Electronic Textbookに基づいて進めていくのがいいようです。

ディレクトリ操作 - Python 学習記録 2019.11.18

やはり基本のディレクトリ操作は知っておく必要があるようですね。

絶対パスでの移動は

os.chdir('\\Users\xxx\Desktop\Python')

というかんじで。

 

参考サイト

http://localhost:8888/notebooks/Desktop/Python/Jupyter/directry.ipynb

電卓作成 - Python 学習記録 2019.11.18

今回は電卓作成やってみました。

Tkinterのコマンド、いろいろありますね。そのせいか一つのコマンドを探すのにどこのサイトを参照すればいいのやら・・・

 

表示を消す

disp.delete(0, tk.END)

 

便利ですね。使いこなせばデスクトップアプリも手軽に作れるでしょう、使いこなせば・・・

参照サイト

https://news.mynavi.jp/article/zeropython-47/

Jupyter Notebook - Python 学習記録 2019.11.16

Jupyter Notebook, 名前は聞いたことがあったのですがどういうものなのか知りませんでした。グラフや表がWebブラウザで確認できるのは確かに開発環境に役立ちそうですね。

こないだ仕事でちょっとグラフ状態確かめたいときに、いちいちExcelにデータを作成してグラフ化していたのが、こちらを使いこなせれば簡単にできるんですね。。。データの一つ一つに特別な意味はないけど全体の傾向を知りたい、というときは便利だと思います。

 

f:id:sig_nai:20191116173422j:plain

参考サイト

https://news.mynavi.jp/article/zeropython-2/

 

興味があったので、公式サイトのグラフもコピってみました。

https://matplotlib.org/3.1.1/tutorials/introductory/pyplot.html#sphx-glr-tutorials-introductory-pyplot-py

 

f:id:sig_nai:20191116175320j:plain

 

Anaconda Navigator - Python 学習記録 2019.11.14

新しいライブラリをインストールしようと初めてAnaconda Navigatorを使用してみました。Environmentsのページで なぜかほしいライブラリが出てこない・・・と思ったら「update Index」のボタンを押さないと最新情報に更新されないのですね。

コードでやりたいことはまだ途中です~

 

参照ページ

https://3pysci.com/python-tabulate-1/

 

 

ファイル名をまとめて変更 - Python 学習記録 2019.11.13

今日はファイルリネームのスクリプト

ファイル名を一瞬にして取得できるPythonはやっぱり優秀。

jpegファイルは確かに自分のPCにはたくさんありますが、例題のように数値だけだと実際は内容がわからず使い勝手が悪いので、ファイル名ヘッダをつけてリネームするスクリプトにしてみました。今後使えるか?どうか?

f:id:sig_nai:20191113202656j:plain

参考サイト

https://news.mynavi.jp/article/zeropython-41/

簡単メッセージボード作成 - Python 学習記録 2019.11.11

最近コードに触れてなかったので、久々だとなんか安心感ありますね。コードを見ながら昔の色々な失敗や変な出来事を思い返しそうです。

 

アドレスからパラメータを与える

メッセージボード

 

をやってみました。細かい設定は追々覚えます。。。

最近の言語はCと違って変数宣言しないので、いきなり出てくる変数に戸惑います。こういうのはさらにネーミングのセンスが問われそうですね。

 

f:id:sig_nai:20191111220543j:plain

参考サイト

https://news.mynavi.jp/article/zeropython-44/

BMI計算ウィンドウ - Python 学習記録 2019.11.10

できることなら毎日コードを触りたいけどそうもいかない現実。。。

参考ページはweb上でPythonを動かす、という内容でしたが、とりあえずはローカル環境でやってみます。なんかArdinoとかでやったやつだな。。。

 

前回作るところまでいかなかった、BMI計算スクリプトも今日作ってみました。

参考サイト

https://news.mynavi.jp/article/zeropython-43/

会社の研修

本日某地にて会社の研修DAYでした。

内容は業界的によくあるレビューツールについての内容。参加者は大体が開発の部署からこられていて、どちらかというと若手の方が多い印象でした。

一日中一つのテーマについて考え続けることってなかなかないので、頭の体操になった反面、ついていくのがやっとで普段いかに怠けていたかを痛感…。

確かに、昔1日3回ソースコードレビューとかしてた頃は疲れるけど脳はすごい活性化してたので、今とは全然気づきの速さも違ったように記憶してますが…。

この現象を老化と簡単に片付けないよう、今後もちょっとしたことについて考える癖をつけようと思います。まさに脳が楽をしようとしてましたね。

 

実行環境Anacondaインストール Python 学習記録 2019.11.5

忘れないようにやったことをメモします。

 

Anacondaセットアップ、tkinderインストール

Anaconda Prompt実行

コマンドライン入力

・cdはディレクトリ移動

注)エクスプローラのファイル表示は「拡張子も表示」に

しばらくPrivate PC触れないとこういうのは浦島太郎になってしまう

 

参考サイト

https://news.mynavi.jp/article/zeropython-46/

企業のエンジニア採用について。

企業が優秀なエンジニアに来てもらうための戦略として、福利厚生の充実、カフェテリアやオフィスの快適さなどに力を入れていることがある。

 

自分はそんな企業に来て欲しいと請われるほどのスキルを持ったエンジニアではないので心配無用(。。。)だが、エンジニアの端くれとして思うのは、その優れたエンジニアたちが本当にそういう福利厚生的な部分に惹かれるのか、ということだ。

もちろん昼食の豊富な献立や新しいオフィスビルに対して興味津々なエンジニアも多くみかける。実際問題、多くのエンジニアの環境は地味なので。。。だが転職するとなると話は別。エンジニアは転職する際の条件では給与、オフィス環境は優先項目とならない。あくまでもその転職先での仕事内容にしか興味がないのではないかと思う。もちろん加えて福利厚生が充実していればそれに越したことはないけれども。。。

エンジニアは何をおいても新しい技術が好きだし、それを突き詰めて行くことに喜びを感じている。そんな時に食事や周りのことなんてそれほど気にしていない、というより、気にする余裕がない。体力や脳が保てる程度に食べられれば十分。

周りのエンジニアでやたらと環境を気にする人がいるとすれば、もうその人は現在の仕事内容に飽き始めていて、何か目新しいものを探しているだけだと思う。

ただ職場の立地は多少は関係する。それは自分以外の家族に影響があることだから。

 


とはいえ、海外の若いエンジニアは給料にかなり重点を置いているのは事実で、日本人からすると、給与待遇からくる彼らの離職率の高さには驚かされる。

このことについて、以前知人の方から腑に落ちる意見を聞いた。給料を上げるために職場を渡り歩いているのは、ほとんどが先進国の人ではない。そもそも先進国外の国では、給料が高いから、という理由だけでエンジニアという職種を選んでいるケースが多いそうだ。そうなると、元々のモチベーションが仕事内容がどうか、であるよりも、まずは給料が多いこと、なのだと。

これを聞いて、納得すると同時に、海外の若いエンジニアに対し、日本人エンジニアと同じ感覚で話しても理解してもらえないのは当然なんだな、と思った。

話を戻すと、待遇の充実は決して仕事好きなエンジニアを集めるためではなく、世渡り上手な若いエンジニアを集めることになるのかもしれない。

自分にはちょっと理解できないけれども....。

 

 

 転職、を考える上でとても影響を受けたのは伊賀泰代さんの「採用基準」。

コンサルタント会社、マッキンゼーの人事部門で活躍されていた、伊賀さん(ちきりんさん)。数々の優秀な若手社員を見続けていた方ならではの知見は半端ないです。

 

採用基準

採用基準

  • 作者:伊賀 泰代
  • 発売日: 2012/11/09
  • メディア: 単行本(ソフトカバー)
 

動画作成のとっかかり

音楽の趣味仲間と話していて、お世話になっている先生が、動画をアップロードしたんだ、という話を聞きました。

なんでも結構先生の仲間内では流行っていて、自分もやる気を見せようということらしいです。

音楽は本当は生音が一番なのですが、今とても高音質のプロの音楽家の方々が無料で演奏をインターネットにあげてくれるというありがたい時代です。お金のない若い世代や興味はあるけど演奏会に行くか迷っている、という方々にとってはとてもありがたいことです。自分も地方に住んでいた頃はなかなかコンサートに行く機会はありませんでしたが、動画を見ているとコンサートよりも臨場感あったりして感動していました。

 

動画の話ですが、そもそも自分ではただ普通に録画することしかやったことがなかったので、編集はどうやるのか知りたいと思いました。

ネットで検索すると、会社で請け負っているところから動画アプリまで...ピンからキリまであるようです。

その中で評価が高かった、Trillerというアプリをダウンロードしてみました。

このアプリ、ある意味インスタの動画専用版みたいな感じで、アプリ内で作った動画を共有できるようです。

どちらかというとアフレコを目的としているようだったので、ちょっと違うな、と思いながら、そういえばiPhoneの動画アプリって加工できなかったっけ、ということで、プリインストールされているiMovieを起動。

これがなかなか良かったです。

手持ちの写真と音楽で、簡単に動画を作成でき、しかもあれこれリソースを重ね合わせることがクリックでできてしまうようです。

動画内の一部分を編集したりも出来るようなので、やってみたいのですが、流石にそうなるとPCの方がいいのかも...(Windowsでムービー編集できるのありましたね...そういえば。会社でちょっと触っただけだったので忘れてました)

使用する元動画や写真も、すこし角度を変えたりして味を出した方がよさそうです。旅行記くらいは簡単に作れそうですね。

近々結婚式に呼ばれているので、ちょっとその素材ででも頑張ってみたいなあと思います。