アプリ開発のサーバーサイド、いったん保留か。

■検討

 まず、制約事項としてさくらVPSの最小プランを選択しました。
 なので、その環境で動作する必要がありますので、軽量であることが条件となります。
 実際に何度もOSの再インストールをして試してみましたが、そもそも各種ライブラリなどがきちんとインストールできないとかありましてね。。。
 とりあえず、脆弱性の面でPHPなどは避けておきたいので、自分の中ではRubyかPythonかなと見当をつけていました。

■Ruby On Rails

 何度もOS再インストールを繰り返しながら何とかインストールができそう!ってところまで行きましたが、結局はメモリが足りずに断念しました。

 結構時間もかかっていたのに残念です。
 潤沢に資金があればプランをスケールアップして採用するのもアリでしたね。

■Python

 Rubyの次点として考えておりましたが、Rubyがダメそうとなって本格的に検討しました。
 Pythonで軽量なWEBアプリケーションが作成できるのかなと思っていましたが、FastAPIというものがあるらしく、それを使おうと思います。
 さくらVPSにはPython向けセットアップスクリプトがあったんですけど、全然インストールされてないんですよね。。。
 サーバーサイドは諦めて、アプリにデータを含めてリリースする方が早くリリースできそうなんですよねー。

Python練習問題

Chainer Tutorialに記載されている練習問題をやってみたので、結果をメモとして残しておきます。

問2.8 (制御構文)

2以上の整数 p が素数であるとは、「どんな 2 以上 p-1 以下の整数 k に対しても p は k で割り切れない」が成り立つことを指します。素数を小さい順から列挙すると、2357111317, … となります。 チュートリアルで学んだ制御構文である if や for を用いて、2 から 100 からまでに含まれる素数を列挙して下さい。

◆回答

a = [2]
for x in list(range(3, 101)):
    if all([x % y > 0 for y in list(range(2, x))]):
        a.append(x)
print(a)

◆実行結果

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

Pythonでクローリング&スクレイピングのお勉強

1.経緯

本屋でPythonの本を眺めてふと、勉強してみようと思ったので。

2.購入

というわけで、そのままの流れで書籍を購入。
書籍代はもちろん、教育費。

3.まずは実行まで

なにやらVirtualBoxなるものでWindowsにLinuxの仮想環境を作成し、仮想環境でPythonを実行するようだ。

本に記載されているバージョンでインストールして、なんとかHello, Python!を出すところまで出来ました。

終わったらVirtualBoxで起動しているLinuxを保存&シャットダウン!

毎回起動&シャットダウンはちょっと面倒かも。。。