大学生がプログラマーを目指すはなし

ruby, python, AIの話が多いです

UiPathでセレクターに変数を使う

セレクターに変数を使いたいときって、結構ありますよね。 今回は↓のようなエキサイトニュースで芸能カテゴリをクリックするという簡単な処理で考えてみます。 1. 芸能カテゴリのセレクタを変数に代入して実行する。 2. "芸能"を変数に格納する。 1. 芸能カ…

AI(機械学習, ディープラーニング, 強化学習)を改めてまとめてみる

この記事では、AI技術のうち、機械学習, ディープラーニング, 強化学習に絞って改めて解説します。また、中学生でも理解できるような簡単な言葉を使うよう努力しています。 まず最初に "AIとは" ということですが, AIとは、機械を使って人間のような知能や行…

rubyで配列のブロック処理にmapメソッドを使う

以前は配列にブロック処理をする際はほとんどの場合でeachを使っていたのですが、このmapメソッドを知ったときは目から鱗でした。 mapメソッドとは その他の便利なメソッド mapメソッドとは mapメソッドは、各要素に対してブロックを評価した結果を新しい配…

少数の丸め誤差をまとめてみる(ruby)

少数を使ったプログラムでたま〜にバグを生み出してしまってイライラしていたので、まとめてみました。 0.1 * 0.2 # => 0.020000000000000004 0.1 * 0.2 == 0.02 # -> false 0.1* 0.2 > 0.02 # => true なぜこんなことが起きるのかという話は情報工学の分野…

railsにmysql2を入れるところでハマった

mysqlがインストールできません 普通にgemに gem 'mysql2', '>= 0.4.4', '< 0.6.0' と書いて、 bundle installするところだったんですよね。 省略 ----- Don't know how to set rpath on your system, if MySQL libraries are not in path mysql2 may not lo…

MacBookAir 2018 ゴールドを買った

MacBookAir 2018 ゴールドを買いました。 テーブルに置いてみた感想としては 薄くて軽くてスリムでかわいいいヽ(^Д^*) と、思いました。 MacBookAir 2018 ゴールド ↓以下スペックです。色: ゴールドOS: MacBookAirCPU: 1.6GHzデュアルコア Intel Core i5メモ…

cssだけでアコーディオン表示

HTML <div class="hidden_box"> <input type="checkbox" id="label1" /> <label for="label1">クリック</label> <div class="hidden_show"> <p>こんにちは</p> </div></div> CSS /*全体*/.hidden_box { margin: 2em 0; padding: 0;} /*ボタン装飾*/.hidden_box label { padding: 15px; font-weight: bold; backg…

rubyのversionをrbenvで切り替える

まずrbenvを最新にする。 $ brew update $ brew upgrade rbenv ruby-build その後、現在ダウンロードできるversionを確認する。 $ rbenv install -l 新しいバージョンのインストールをする。 $ rbenv install 任意のバージョン インストールできたら、切り替…

rails5, puma, nginx, debianを使ってデプロイ!最初から最後まで!

何度やっても忘れるので今度こそ最初から最後まで備忘録を書きます。 デプロイまとめ 1. ローカルで本番環境に流す 1-1. 今回のアプリケーションに必要になる本番環境でのDBと、ユーザー名とパスワードを設定する。 1-2. データベース設定ファイル修正 1-3.…

スはスペックのス(model)をRspec3, Rails5でやってみた。

こちらの「スはスペックのス」なのですが、とても古い記事でして2018年にrubyの勉強をし始めた僕にとってはversionの観点から少し分かりづらい内容でした。さらにネットの情報も様々なversionで書かれた記事が混在しており、さらにやりにくかったです。 そん…

Rubyでgemを作って公開するまで

0. 準備 1. ヒナ形の作成 2. 作成されたファイルの確認 3. test_gem.gemspecの修正 4. Gemの実装 5. 実行してみよう 6. RSpecを書こう 7. 実行コマンドを追加 8. Gemをパッケージ化する。 9. 公開 0. 準備 まずは準備のためにgemのアップデートとbundlerのア…

rakeの基本

前提 rubyプログラムの中でC言語をコンパイルして実行する。 1. まず最初に適当な作業ディレクトリを作成し、そこにRakefileを作る。 ここでお約束的な感じでRakefileの頭文字は大文字にしておく。 2. 今回使用するC言語プログラムを作っておく。 今回実行す…

8時間かけて作ったソースファイル達を rm ./* してしまった。

2日かけて計8時間ほどかけて作ったプログラムがありました。 それをGitHub上にpushしようと思ったんですよね。 だからまずローカル環境で、作業用ディレクトリからpush用のディレクトにコピーしました。そしてそこで一応中身を確認していたのですが一部気…

debianで使うaptコマンド

aptの基本的なコマンド debian初心者の自分がメモしたコマンドです。 アプリケーションのインストール、アンインストール、アップデートを行うコマンド # apt install name # apt remove name # apt update name

Rake taskでコマンドラインから複数引数を指定する方法

1. taskを作成してみる。 2. taskに処理を書いてみる。 3. rake taskを確認してみる。 4. 実行してみる。 5. Rake taskでコマンドラインから複数引数を指定する方法 5-1. 概要 5-2. taskを複数定義する。 5-3. 環境変数を複数定義する 6. どっちがい…

gsub!を使いこなす

gsubとは 文字列の中で正規表現のパターンにマッチした部分をすべて指定の文字列に置換します。 ここで、!(ビックリマーク)が付いているものを破壊的なメソッドと呼び、その場で完全に置き換えて値が変わることを言います。 基本的な使い方 greet = "My nam…

Terminalの基本的なこと

ターミナル操作で必要になるコマンドは全て環境変数で設定されている。 /bin, /usr/bin ここのディレクトリにpathを通したコマンドがある。 ちなみに、このようなコマンドは自分で作ったり消したりできる。しかし、初心者のうちはあまりいじらない方が良い。…