メインカテゴリーを選択しなおす
Ruby Advent Calendar 2023 の6日目の記事です。 Qiita に書きました。 qiita.com
MinRubyを改造する 2024(REPLと宇宙線演算子の追加)
Zenn に書きました。Ruby Advent Calendar 2024 の5日目です。 zenn.dev
Ruby関連のMastodon/Fediverseアカウント集
個人アカウントは対象外としています 並び順は適当です この記事はパブリックドメイン扱いとします。転記等は自由に行ってください。 認証については 本人認証機能について - Mastodon を参照 言語・処理系 イベント コミュニティ 国内 海外 製品 Ruby on Rails 組織 企業 その他 参考 言語・処理系 The Ruby programming language (@ruby@ruby.social) The JRuby Team (@JRuby@ruby.social) 認証なし / 公式サイトからのリンクあり イベント カンファレンスなど。 RubyKaigi (@rubyk…
これまで、人柱になるのを避けるために、Windowsのバージョンアップはギリギリのタイミングで行っていたのですが、裏日本の新潟は連日天気が悪くて写真撮影も出来なくて暇を持て余したので、また、HDDに出来るだけ負担をかけないようにするために、気温が低いうちにWindows11に乗り代えました。WindowsUpdateに表示されているボタンを押してWindows11のアップデートはすんなり出来ましたが、私のPCはHDDのため、アップデートのため...
RUNTEQの口コミ評判を徹底調査【徹底した転職サポートが魅力!】
RUNTEQが気になる人必見。この記事では、RUNTEQの口コミ評判を紹介します。実は、RUNTEQは「超実践型カリキュラム」が特長のプログラミングスクールです。記事を読めば、RUNTEQを利用するべきか分かります。
このページでは、素人がプログラミングスクールで学んだ後の学習アウトプットとして、Webアプリ開発の進捗を公開しています。今回は第4弾として、アプリアイデアから具体的な要件定義に至るまでの過程をお見せします。前回までの段階を経て、さらに具体的な設計へと進んでいます。次回はISSUEの作成に取り組む予定ですので、ぜひご期待ください。
Template Methodパターンを使って簡単なアプリを作ってみた
デザインパターンの一つ、Template Methodパターンを勉強してみました。今回はQtとC++を使って、簡単な(無意味な)GUIアプリを作ってみました。テンプレートを使うように実装することで、コードの構造が綺麗になるのかも?というのが実感できました。
Windows PCでの言語ごとの開発環境構築方法とHello Worldと表示させる方法
WindowsのPCでプログラミングを学ぶためには、各言語の開発環境を構築する必要があります。本記事では、Windows PCで各言語の開発環境を構築する方法と、言語ごとにHello Worldを画面表示させるコードを紹介します。Javaの開発環境構築Javaは、Windows PCで最も人気のある言語の1つです。Javaを実行するためには、Java Development Kit(JDK)をダウンロードする必要があります。構築手順1.JDK
こんにちは、しきゆらです。前回から2か月ほどたっていて驚いている今日この頃、いかがお過ごしでしょうか。 今回は、ちょっと前に書いた「【Ruby】YAMLに環境変数を埋め込む」で任...
私は世間様に当り障りがある事ばかり言っていたから、世間様から虐げられてノラヌコのように用心深い人間になってしまい、回復ドライブを正副作成してPCを運用しているのですが、天才ビル・ゲイツの「その手」に乗せられて、千円以上もするUSB3.0の32GbyteのUSBメモリを二つも無駄に買わせられてしまいました。どういう事かというと、下の画像の通り、回復ドライブの作成に16GByte以上のUSBメモリが必要と言っておきながら、実際に...
主にブログやYahoo!!知恵袋の情報管理用の4.0.6のRedmineを4.2.8にバージョンアップしてすんなり動いたので、老爺心を発揮して最も簡単にRedmineをWindowsPCにインストール法を記しておきたいと思います。実際にインストールする場合は、完全自己責任でお願いしますが、RedmineをPCにインストールすると、セキュリティ上の危険性が高まる可能性がありますので、初心者がRedmineをPCにインストールする事はお勧め出来ません。1.Post...
こんにちは、しきゆらです。今回は、だいぶ旬に乗り遅れた感がありますが、言語等のバージョン管理をasdfに乗り換えたので導入方法や使い方をメモしておきます。 導入の経緯 導入に経緯...
【Ruby/rubocop】いつの間にかDir.[]の結果がソートされてた
こんにちは、しきゆらです。今回は、Ruby2.7から3.1.2に更新したらいろいろ変わっていたのでメモしておきます。 変わったことに気づいたのは、タイトルにあるrubocopを回...
私は貧乏なのでWindowsPCはHDDなのですが、Redmineをバージョンアップしたせいかどうか分からないのですが、PCを起動した後の最初のRedmineの起動がこれまでは約1分程度だったはずなのに約1分20秒もかかってしまうようになったので、RubyをUSBメモリーにコピーし、環境変数のpath内のRubyのパスをCドライブからUSBドライブのパスにしたら、約50秒程度で起動するようになったのでめでたしめでたしです(喜)Windowsのアプリケーション...
【無料廃止】Herokuから代替のRailway.appへRailsアプリ移行時に出たエラー
Railwayデプロイ時に発生。 #18 1.183 [1/5] Validating package.json... #18 1.188 error technews@0.1.0: The engine "node" is incompatible with this module. Expected version "v14.0.0". Got "16.17.0" #18 1.201 info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command. #18 1.201 error Found incompatible module. #18 ERROR: executor failed running [/bin/bash -ol pipefail -c yarn install --frozen-lockfile]: exit code: 1 ----- > [stage-0 14/19] RUN --mount=type=cache,id=s/dcf564ae-76f9-4ee8-a6e7-e9f94e909669-/usr/local/share/cache/yarn/v6,target=/usr/local/share/.cache/yarn/v6 yarn install --frozen-lockfile: ----- executor failed running [/bin/bash -ol pipefail -c yarn install --frozen-lockfile]: exit code: 1 Error: Docker build failed RailwayのbuilderであるNixpacks内のnodeのバージョンは 16.17.0。 プロジェクトのnodeは 14.0.0 。 この相違が原因なのでプロジェクト側のnodeのバージョンを 16.17.0 に上げてデプロイしなおせばOKです。
新着日時順でGoogle検索できるサイト「シンプル新着順検索」を作りました
新着日時順でGoogle検索できるサイト「シンプル新着順検索」を作ったのでそのお知らせです。 TwitterでもGoogle検索が新着順じゃないことに不満がある人もいたので、 ちょうどよかったです。 (昔はサッと新着順にできたみたいですが) まあ多分Google Chromeのブラウザ設定をゴニョゴニョ変えれば、 こういうの作らなくてもできるのでしょうけど、 まあパパッと使えるWebサイトとしてあってもいいよねと。 「シンプル新着順検索」は無料で利用できます。 (ただしリクエスト数に上限あり) もし利用者様が増えて要望があれば上限UPしたいと思います (ご利用よろしくお願いします...!)
はてなブログatomAPIの記事投稿でカスタムURLを利用する方法
entryタグのxmlns:opt属性に "http://www.hatena.ne.jp/info/xmlns#hatenablogを指定し、 opt:custom-urlタグに希望のURLを入れればOKです。 opt:custom-urlタグに指定したURLは、 entry/ の下に設定されます。 (上記の例だと本記事のURL entry/how-to-set-custom-url-hatena-blog-atom-api のようになります)
はてなブログatomAPIの記事投稿で複数カテゴリを設定する方法
複数カテゴリについてドキュメントには、 category要素ブログ エントリのカテゴリを指定出来ます。(複数可) term属性 カテゴリ名を指定します。 とあるので、 みたいな感じにパラメータを作ってAPIを叩いたが、 1つのカテゴリにまとまってしまう。 ドキュメントにあるテンプレートを見ても、 複数カテゴリを設定している例が無いのではっきりしない。
【Heroku無料廃止】Railway.appでWheneverを使わずHeroku Schedulerのように定期処理を実行する
Wheneverのcron設定ファイルやRailway側の実行コマンドを変えて検証していましたが、 なかなか終わらないので発想を変えます。 rakeタスクを実行するエンドポイントを作り、 そこにNew Relicから一定時間毎にpingを送るようにすることで、 実質Herokuスケジューラと同様の挙動をさせました。 これでWheneverを使わずWheneverを使わずHeroku Schedulerのような定期処理が可能です。
こんにちはー。 Amazonアソシエイトさんの審査を通ったけど、このまま使い続けることができる以外に何か変化があるのかな?と調べてみたら、Product Advertising API なるものが使用できるようになるみたいです。Amazon商品検索がプログラムから行えるようになるって感じですね。略してPA-APIといいます。 ちなみにこちらはPPAPです。 www.youtube.com では、早速歌ってみよう!じゃなくて使ってみよう!ということで、解説ページをのぞいてみると、事件です。 このPA-APIというものを使う為には、Amazonさんが提供してくれているSDKというものを利用すること…
クリップボードを扱うスクリプトを公開しますで公開したRubyの二つのスクリプトを利用して、クリップボードをエディターで編集出来るようにするVBScriptスクリプトも公開させていただきます。Rubyのスクリプトは、C:\Scriptsというフォルダーを作成してそこに格納する事とします。最後にsystemsettings.exeを強制的に停止しているのは、systemsettings.exeがいつの間にか起動するようになっていて、このプログラムが起動していると...
Windows10のコマンドプロンプトでclip.exeというコマンドがありますが、いやらしい事にクリップボードにデータを書き込む事が出来ても読み込む事が出来ません。PowerShellではクリップボードの読み書き出来ますが、PowerShellのスクリプトを実行出来るようにするのは恐ろしくて出来ないし、PowerShellでプログラミンングを行うぐらいなら死んだほうがましだと思う人もいらっしゃるでしょう。そこで、いつものように老爺心を発揮し...
おはよーございます。 いままでは、Rails製自作APIサーバとの動作テストにcurlというコマンドを使っていたのですが。 osio-toshimasa.hatenablog.com osio-toshimasa.hatenablog.com 今回、これの代わりになるものとしてRubyで実装してみました。ソースコードはGitHubにて公開しています。 github.com 標準添付ライブラリのみで作っているので、Rubyプログラム単体としても使えます。Railsの機能も使っていないのでコピペで持ってくることもできます。 もちろんRailsのなかでも使えると思いますが、試してないのでやや自信なし…
【趣味でたのしむRuby】RubMineさんとRailsで初歩的なAPIサーバを作った話 その3 HTTPPOST編
こんにちはー。 前回のGET編に続いてPOST編です。 Controllerにメソッドを追加する。 今回はcreateメソッドを追加しました。こんな感じ。 def create entry = OpenStruct.new({ :value => params[:value], :id => params[:id] }) # MemoryStoreにSaveされていれば取り出す。 entry_json = Rails.cache.fetch("/match/#{params[:id]}", expired_in: 1.hour) do # 一度もSaveされていない場合は、ここの値がSaveさ…
【趣味でたのしむRuby】RubMineさんとRailsで初歩的なAPIサーバを作った話 その2 HTTPGET編
おはよーございます。 前回、Amazonさんからの突然の通告により狼狽してしまいました。 気を取り直してAPIサーバのつづき、その2です。 その1では、プロジェクト作成とコントローラの追加まで行ったので、今回は実際にメソッドを実装して、動作チェックです。 コントローラにメソッドを追加する。GET編 どっちも/matchで呼び出せるとは何事か? 起動してブラウザから動作をチェックする。 今回のまとめ コントローラにメソッドを追加する。GET編 作ったコントローラにメソッドを追加していきます。routes.rbに自動でAPIルーティングが付与される記述をしたので以下のようなAPIを呼び出すことがで…
【趣味でたのしむRuby】RubMineさんとRailsで初歩的なAPIサーバを作った話 その1
おはよーございます。 Railsを使ってAPIサーバの初歩の初歩的なものだけ作りました。 つくったものはGitHubに置いてみています、 github.com やってみたことはざっと並べて見ると、今のところこんな感じです。 APIモードでrailsアプリの雛形作成 実際の動作を受け持つContollerクラスに処理を実装 APIとして機能させるために、もうひとつやることが すでに長くなってきたので、続きはまた次回 APIモードでrailsアプリの雛形作成 RubyMineというIDEを使うと特に何も考えずに作ることができました。 画面にあるようにRails APIを選んでプロジェクトの名前を入…
【趣味でたのしむRuby】Railsを使い始めています。趣味ならでは注意点を踏まえて。
おはよーございます。 とあることを試してみたくて、Ruby界の重鎮、Gemの王様と勝手に思ってるRubyOnRailsを触ってみています。といってもバリバリのWebサイトを作るということはいまのところ考えていなくて、APIモードというものを使うことにしています。 しばらくはこの使い方で続けてみようと思っているのですが、その理由について考察してみた様子が以下になります。 Webサービスを一通り作るのって大変説。 Rails覚えるの大変説。 APIモードを利用するのがちょうどいいかも? まとめ:Railsで学習コストを抑えつつ、引き出しを増やせそう・・な気がする! Webサービスを一通り作るのって…
使う機会があるかどうかは別として挙動の理解として、 2つの変数の値を入れ替える いわゆるswapをrubyで書くにはどうすればいいか?、 考え方的には 参照先を入れ替えればいいわけなので a,b = [b,a] という風に書けます。 確認のために以下を実行すると、2つの変数の object_idも ポインタも 入れ替わっているのがわかります。 require "fiddle" a = "hello" b = "world" puts(a.object_id) puts(b.object_id) puts(Fiddle::Pointer[a].to_i) puts(Fiddle::Pointer…
おはよーございます。 以前書いた記事で課題にしていた、RubyオブジェクトをJSONに変換する方法。 つい先日解決しました! osio-toshimasa.hatenablog.com 結論から書くとこんな感じです。 class TestData attr_accessor :num, :str, :data_hash, :data_array def initialize (num, str, data_hash, data_array) @num = num @str = str @data_hash = data_hash @data_array = data_array end # 定…
【趣味ではじめるWebサイト】 Opalを使ってJavaScriptにデータを受け渡すとき思いついたやりかた
こんにちは! RubyのコードをJavaScriptに変換してくれるGem「Opal」について、引き続きいろいろ遊ばせてもらっています。 今回は、データの受け渡し方をもう一工夫できないかなあという模索をしている記事です。 自分で作ったRubyオブジェクトをJavaScriptに渡すには JSONでデータを渡すという選択肢 自分で作ったクラスオブジェクトをJSON化できたら一番美しい 自分で作ったRubyオブジェクトをJavaScriptに渡すには ドキュメントを読んでると、Opalが対応しているものは、いい感じにJavaScriptに変換してくれるようです。 opalrb.com 自分が作った…
【趣味ではじめるWebサイト制作】RubyGem 「Opal」についてわかったこと。
おはよーございます。 以前しらべたRubyのGem「Opal」について、その後もいくつかプログラムを書いていたのですが、意気揚々とJavaScriptのコードに変換・・と思いきやエラーが出てしまって変換失敗。原因を調べてみてわかったことがありました。 osio-toshimasa.hatenablog.com 「標準ライブラリは使えるけど、全部使えるわけではない。」 Opalが扱える標準ライブラリはRubyが持っている標準ライブラリと一致しないことがわかりました。 どうやら、ここに入っているもの以外はJavaScriptに変換することはできなさそうです。 github.com ということで、O…
Rubyがブラウザでも動かせるようになる!? WebAssemblyとWASIとはなんぞ?
おはよーございます。 先日に引き続き、個人的に強い印象に残ったできごとを記事に残しておきたかったシリーズです。 いままで、Webサイトを制作するなかでブラウザ上で実行できるプログラム言語はほぼほぼJavaScript一択だと思っていました。少し前に書いていたこの記事も、JavaScriptというプログラム言語が前提にあって、そのなかでどんなライブラリを使うのか?という選び方をしていました。 osio-toshimasa.hatenablog.com ところが、その前提を覆すようなニュースをみつけました。 www.publickey1.jp なにやらRubyがブラウザで実行できるようになると。 …
【趣味ではじめるRuby】 WASMを使ったWebサイト「TryRuby」を触ってみました。
おはよーございます。 昨日が週末金曜日ということで、心が穏やかになった時間を使って、WebAssemblyことWASMを使って作られたサイト「TryRuby」を少しだけ触ってみました。 try.ruby-lang.org 理解が足りてない所が多々あると思いますが、使ってみた所感と、使いながら気になって調べたことだけ忘れないようにまとめておきます。 組み込みライブラリとして用意されているものは、ほぼ全部使えそう classだったりmoduleだったり、eachとかwhileとかプログラミングの練習として必要なものは全部揃っている印象でした。全てのメソッドを動かしてみたわけではないので一部未対応の…
2022年 Ruby アソシエーションサポーターになりました。
こんにちは!5月はじめての記事更新となります。よろしくお願いします✨ さて、Ruby推していきたいという話をこのブログで何度か記事にしていましたが、この度、Rubyアソシエーションサポーターというものにならせていただきました。 Rubyアソシエーションサポーターとはなんぞ? 寄附という形で、Rubyの事業活動と発展を支援するというものです。今回は個人寄付というかたち応援することにしました。 www.ruby.or.jp Rubyに関する記事は何度か取り上げさせてもらってるのですが、Rubyを応援する!ということができているのかはとっても怪しいほどのしょぼさではあります。なので今回は、一番わかり…
【趣味ではじめるWebサイト制作】RubyGem「Opal」を使ってRubyのコードをJavaScriptに変換してみた話
おはよーございます。 ブラウザでRubyを実行できる仕組み、WebAssemblyを自分のWebサイトに入れられないかとちょこまかやってみたものの、あえなく挫折しました。 なんですが、せっかくなのでRubyのコードをWebサイトでも使いたいという欲望は捨てきれず、どころか欲望増し増しになったので、別の方法で実現するべく、「Opal」というGemを試してみることにしました。 Gemとは? Opalとは? 実際に使ってみました。 まとめ:Rubyのコード書きたい&貯めたい欲が強めのときはおすすめ! Gemとは? RubyにはGemというしくみがあって、Rubyに標準搭載されている機能をさらに拡張し…
RubyとWebAssemblyを調べ、そして打ち砕かれた話
おはよーございます。 GWもちょうど真ん中で折り返しぐらいでしょうか。このブログを読まれている方の中にはお仕事や学校の方もいらっしゃると思うので恐縮なんですが、僕は数年ぶりくらいに10連休という長期のお休みをいただきまして、のんびり楽しく休暇を満喫しております。 さて、WebAssemblyバイナリを使って自分なりに実験してみたのですが、自分が用意したwasmバイナリをWebブラウザで動かすことができませんでした。初期化するところでエラーが出てしまって解消せず、原因もよくわからなくてお手上げでございます。こればっかりは自分の力量が不足しております。 Webブラウザで動かしてみる、という実験は失…
【趣味ではじめるRuby】MacBookさんでRubyをはじめた手順。
おはよーございます。 今更すぎる話なんですが、実行しているRubyのバージョン情報などをさらっと紹介した流れの中で・・・ そういえばRubyってどうやってインストールしたんだっけ? という思いが脳裏を駆け巡り、自分のやったことの棚卸しとして、MacでRubyをはじめたときの手順をまとめてみることにしました。 Macに最初からRubyはインストールされている・・けど古い Homebrewとrbenvという存在に出会う。 Homebrewのインストール rbenvのインストール rbenvのインストール Macログイン時?にrbenvの初期化を自動でやってすぐに使えるようにする rbenvでRub…