メインカテゴリーを選択しなおす
今週のお題「2024年にやりたいこと」 小森です。 今週のお題が更新されましたね。 今回は2024年にやりたいことらしいです! どんな年にする? 今週のお題は「2024年にやりたいこと」です。 あけましておめでとうございます! 2024年はどんなことをしたいですか? 書き出してみると、実際にやれそうな気がしてくるものです。やりたいことはやっちゃいましょう! 今週は「2024年にやりたいこと」をテーマに、みなさんのエントリーを募集します。「そろそろ引っ越したい」「でっかい本棚を作りたい」「今年は海外に出かけたい!」など、あなたの「2024年にやりたいこと」にまつわることを、はてなブログに書いて投…
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に環境変数を埋め込む」で任...
デスクトップパソコンを購入してからずっとプログラミング言語の勉強をサボっていたので、そろそろ勉強を再開する。
小森です。 デスクトップパソコンを修理に出すからノートパソコンに切り替えているのですが、低スペックパソコンじゃゲームもできないので、他の何かをしようかと思いプログラミング言語の勉強を再開しようかと思っています。 komorichang.hatenablog.com 実はさっきまで少しだけ「チェリー本」を読み進めていました。 まだまだ理解の幅が狭いのでどんどんプログラムを打ち続けて、調べつつ学んでいこうかと思います。 やっぱりプログラミング言語は難しいですよ。 専門用語も全く理解できていないし、いつ覚えられるのか不安です。 まぁ勉強をサボっていた自分が悪いのですが、とりあえずデスクトップの修理が…
私は世間様に当り障りがある事ばかり言っていたから、世間様から虐げられてノラヌコのように用心深い人間になってしまい、回復ドライブを正副作成して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を勉強していますが、未だに基礎学習から抜け出せません。 Rubyの「def」っていうメソッド?は「define」の略で、定義するっていう意味だそうです。まとめておきたい処理を「def」と「end」の間に書いていくみたいな。なるほど…。#Ruby #プログラミングの勉強中#独学#最初の一歩— 小森純也@はてなブロガー (@ynwPpCK50oVGjIg) 2022年7月30日 Rubyの「#{}」の使い方を少しだけ学べました。def greeting (name)puts "私は#{name}です"endと、来てからの、、、greeting("taro")=私は…
クリップボードを扱うスクリプトを公開しますで公開した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の入門書が届いたけど、ちょっとした経験者向けの内容になっている本らしい。
小森です。 最近Amazonにて「Ruby」の入門書を注文しました。 komorichang.hatenablog.com 2021年版の本になっているので、最新の情報に触れられるし、これでいいかなぁ~と思い注文。 それで今日のお昼にチェリー本が届いたのですが、これかなり分厚いです。(笑) 分厚さで分かりやすい表現をすれば、ハリーポッターの小説くらいありますね。 それで前書きを読み進めていたんですけど、この本はどうやら初心者だけど経験者向けに書かれた本になっているそうです。 あと「チェリー本」とタイトルにも書いていますが、表紙にさくらんぼが写ってるので「チェリー本」と言われているそうです。 本…
【趣味でたのしむ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のプログラミング言語の本を読んでいたんだけど、流石に情報が古すぎて役に立たない。
小森です。 あれから時間があるときにプログラミング言語のRubyを学習していたんですけど、2005年とか、それくらいに古い本だから、読んでいてもバージョンが対応していなかったり、古すぎて起動できなかったりと、色々と問題が生じています。 それで知人に相談したところ、古い本を読む必要はないという答えが返ってきました。 今Amazonで買える新しい本?は、一応これですね。 プロを目指す人のためのRuby入門[改訂2版] 言語仕様からテスト駆動開発・デバッグ技法まで Software Design plus 作者:伊藤 淳一 技術評論社 Amazon Amazonで「Ruby」と検索すると、この本が一…
【趣味でたのしむ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サービスを一通り作るのって…
プログラミングの勉強を挫折してしまいそうなので、理解できる所まで飛ばしていく。
小森です。 以前からプログラミング言語のRubyを学習中なんですけど、本を読んでいて先に進めない所にぶち当たってしまいました。 Rubyの勉強は少しずつ進めています。とにかく挫折しない様に頑張らねばなりません。多くの人が挫折するからこそ、プログラマーという職業は重宝されるのでしょう。難しいから誰にでもって訳にはいかない特殊技能。プログラミングを使いこなせるレベルに到達したいなぁ~…。— 哲人の小森純也@はてなブロガー (@ynwPpCK50oVGjIg) 2022年7月5日 挫折しない様に頑張っていたつもりですけど、理解不能な場所ではどうしても挫折しそうになります。 まず本の内容に「〇〇のフォ…
Progateというプログラミングのやり方を教えてくれるサイトでRubyを学んでいます。
小森です。 あなたは何か長けたスキルを持っていますか? 私はそういった得意なものが一切ないので、最近「Progate」というサイトを利用してプログラミングを覚えています。 prog-8.com 基本的なプログラミングの知識は無料で教えていただけるのですが、もっと本格的にやりたいという方は、有料会員になるべきです。 HTMLとCSSは、なんとなぁ~く使えますが、その他の言語が一切わからない状態です。 もしもWordpressを利用していくのであれば、PHPも覚えたいですが、今の私はRubyに注力しております。 何処かで聞いたことがあるのですが、「まずは1つの言語を極めるべき」という情報を聞いてか…
使う機会があるかどうかは別として挙動の理解として、 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…
【Dip Rubocop】DipでRubocopのチェック対象をgit diffで変更のあったファイルのみを対象とする
「DipでRubocopのチェック対象をgit diffで変更のあったファイルのみを対象とする」について、 default_args に指定されている --name-only --diff-filter=AMRC で実現しています。 default_args: $( git diff --name-only --diff-filter=AMRC grep -e ".*\.rb" paste -s - )
【Rails】Herokuのデプロイ開始・完了をWebhookでLineNotifyへ通知する
LineNotifyの準備 1. LineNotifyのアクセストークンを発行する 2. LineNotifyのAPIを扱うクラスを作成する 3. 1で指定したグループに「Line Notify」アカウントを招待しておく Herokuの準備 3. HerokuからのWebhook通知を受けるルーティングを追加する 4. デプロイ開始・完了をLineNotifyに通知する処理を実装する 5. HerokuからWebhookを投げる設定をする
【2021決定版】Ruby(Rails)の未経験フリーランス向け案件がある求人サイト【比較表で解説】
こんな悩みや不安を持っていませんか? 「Ruby(Rails)未経験のフリーランスでも参画できる案件ってないのかな...」 「Ruby(Rails)は未経験だけど一度やってみたい。PHPやJava、Pythonのような他言語経験があるから採用されるかな?」 「Ruby(Rails)の求人は少ないって言われるけどホント?求人サイト毎の案件数とかが知りたいな」 といった感じ。 これはどれも、 他でもない僕が抱えていた悩みでした。 しかし、 求人サイトを色々使ったり調べていく中で上記の悩みを解決できたので、 今回シェアしていきます。 Ruby(Rails)の案件探しで困っている未経験フリーランスエンジニアの方は、 ぜひ最後まで読んでいってくださいね★