paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

プログラミング入門者向け、Ruby on Railsがよくわかるコンテンツ7選

f:id:paiza:20170919180835j:plain
Photo by machu.

Webアプリケーションを作りたい! という目標を持っている方は、まずここから挑戦してみてはどうでしょうか。

プログラミング初心者が最初に学ぶ言語のうち、人気が高いものの1つにRubyがあります。可読性が高く学びやすいうえ、エンジニアの求人も充実しています。

そして、彼らの多くが、Rubyとともに学ぶのが「Ruby on Rails」(略して「Rails」と呼ばれます)です。RailsRubyで書かれているWebアプリケーションフレームワークです。「フレームワーク」とは、ある特定の分野に特化した機能を集めたもので、Railsの場合はRubyでWebアプリケーションを作るための骨組みのようなものだと考えておけばいいでしょう。Railsを使いこなせれば、Webアプリケーションを作るのがぐっと簡単になります。(もちろんRubyの知識だけでもWebアプリケーションを作ることはできますが、一から作ると膨大な時間がかかってしまいますので、特に初心者はフレームワークを使って開発することをおすすめします)

paizaユーザーからも「Ruby on Railsを学びたい」という声を多くいただいています。そこで今回はRubyを学び始めたばかりの方やプログラミング初心者に向けて、やさしくRuby on Railsが学べるサイトを7つご紹介します。ぜひ勉強の足がかりにしてください。


なお、paizaが運営する学習サービス「paizaラーニング」でもRuby、そしてRuby on Railsの講座を公開しております
f:id:paiza:20170905120359p:plain
paiza.jp
paiza.jp

現在、期間限定で無料公開(詳細は後述)しておりますので、ぜひご覧ください!

Ruby on Railsを基礎から学べるコンテンツ

ドットインストール

http://dotinstall.com
f:id:paiza:20170828060432j:plain
動画を使ってプログラムの書き方や実行環境の構築方法などが学べるサイトです。さまざまな開発言語のレッスンがあります。Ruby入門講座とRuby on Rails入門講座もあり、基礎から学ぶことができます。

Progate

https://prog-8.com
f:id:paiza:20170720205145j:plain
こちらではスライドを使ってプログラミングを学べます。こちらにもRubyRuby on Railsのレッスンがあります。レッスンの入門部分の一部を無料で見ることができます(中盤からは有料)。レッスン中は開発環境を構築しなくてもプログラミングができるようになっているため、手軽に学ぶことができます。

小学生でもわかるRuby on Rails入門

https://openbook4.me/projects/92
f:id:paiza:20170920123805p:plain
Railsの基礎的な内容を丁寧に解説しています。「小学生でもわかる」と言っている通り、専門用語などが少なく、予備知識がない人でも理解できるようなつくりになっています。作者いわく「実際に小学生に教えたら5時間でアプリが作れた」のだとか。

Schoo

https://schoo.jp/guest
f:id:paiza:20170828060442j:plain
動画教材や参加型の生放送を運営しているサイトです。RubyRailsの動画も公開されています。動画は「授業」と呼ばれていて、生放送の「授業」もあります。

Ruby Life

http://www.rubylife.jp
f:id:paiza:20170905123452j:plain
これからRubyRuby on Railsを学ぶ初心者のために、開発環境の構築やプログラミングについて解説しています。Rails入門講座では、簡単なアプリケーションを作りながら使い方を覚えていきます。

■プログラミングの基礎が身についている方向け

Ruby on Rails チュートリアル

https://railstutorial.jp
f:id:paiza:20170920123826p:plain
マイケル・ハートル氏が書いた「Ruby on Rails Tutorial」の日本語訳です。基礎から始まり、広い内容について解説しています。初学者には少し難しい内容ですが、プログラミングの基礎ができている人にとってはこちらを読むほうが理解が進むでしょう。

Ruby on Rails ガイド

https://railsguides.jp
f:id:paiza:20170920123840p:plain
Ruby on Rails Guides」の日本語訳です。Railsの各機能を体系的に学ぶことができますが、上記の「Ruby on Railsチュートリアル」よりも一段レベルが高いので、まずチュートリアルを理解してからこちらで学ぶといいでしょう。

■まとめ

Webアプリケーションを作ることを目標にしている人にとっては、Ruby on Railsの習得がゴールへの近道になります。エンジニアになりたい人はもちろん、自分でサービスを作ってみたい人にもおすすめです。上記のサイトを使いながら、ぜひ使いこなせるようになってください。


そして、現在「paizaラーニング」では、ふだん有料公開しているRuby on Railsの入門レッスンを、期間限定で連続無料公開しています。paizaラーニングは、動画講座を見たあとに、ブラウザ上で演習問題を解いて、実行結果を見ながら学習を進めていくことができる学習サービスです。

さらに、9月29日(金)までに演習問題の結果をツイートすると、抽選でAmazonギフト券1万円分が1名様、500円分が20名様に当たるキャンペーンも実施しております。



※スケジュールは変更になることがあります。

paizaラーニング無料公開スケジュール・Rails


動画レッスン名無料期間
Rails入門1いつでも無料
Rails入門1-29/15(金)~9/18(月)まで無料
Rails入門1-39/19(火)~9/21(木)まで無料
Rails入門29/22(金)~9/25(月)まで無料
Rails入門39/26(火)~9/29(金)まで無料


さらにさらに! 特定のスキルチェック問題に挑戦していただいた方の中から、抽選でAmazonギフト券をプレゼントするキャンぺーンも実施中です!プログラミング問題を解くだけでAmazonギフト券が当たるチャンス!こちらもぜひ挑戦してみてください。もちろん、Rubyでも解答することができます。

【キャンペーン問題】
Dランク問題 → D075:足りないカード
Bランク問題 → B044:ねずみ小僧
2問とも解くとプレゼント当選確率も2倍になります!

【応募期間】
2017年9月6日~2017年9月25日

【プレゼント内容】
プレゼント総額は、問題へご挑戦いただいた人数によって変わります!

  • 挑戦人数1000人以上:Amazonギフト券5,000円分×1名様
  • 挑戦人数1500人以上:Amazonギフト券5,000円分×1名様、1,000円分×3名様
  • 挑戦人数2000人以上:Amazonギフト券5,000円分×3名様、1,000円分×3名様、500円分×3名様
  • 挑戦人数2500人以上:Amazonギフト券1万円分×1名様、5,000円分×3名様、1,000円分×5名様、500円分×5名様
  • 挑戦人数3000人以上:Amazonギフト券1万円分×2名様、5,000円分×5名様、1,000円分×5名様、500円分x10名様

…にプレゼントいたします!


ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza

面倒な環境構築なし!初心者もすぐにプログラミングできるサイト9選

f:id:paiza:20170919125247j:plain
Photo by IDM Südtirol - Alto Adige : ICT & Automation
f:id:paiza:20140916135428p:plainこんにちは。谷口です。

プログラミングの勉強や趣味の開発、また仕事でも「ちょっとコードを書いて試したい」ということってよくありますよね。

もちろん、その言語の実行環境を設定済みのPCが手元にあればよいのですが、いざ環境設定をするとなると時間がかかる言語も多いので、プログラミング初心者の方や「ちょっと確認したい・試したい」といった場合、意外とハードルが高いかと思います。

また、「出先だけどコードを書きたい」「グループでプログラミングを学習したい」といった場面もあるでしょう。

そんな時に便利で役立つのが、インターネットさえできればブラウザ上でプログラミングができる「オンライン実行環境サービス」です。

今はオンライン実行環境がかなり増えてきましたので、今回は

  • 会員登録などが不要
  • 無料

で、とにかくすぐに使えるサービスに絞ってご紹介します。

■複数言語対応

paiza.io

f:id:paiza:20170915162522p:plain
paiza.IOは、C、C++C#JavaRubyPythonPHPPerlJavaScriptObjective-CScala、Go、Haskell、Rustなどなど多数の言語に対応した、無料のオンライン実行環境です。「新規コード」をクリックすれば、すぐにコードを書いて実行することができます。

複数ファイルの実行やファイルアップをすることができ、後述のIdeone等とは違って外部ネットワークへの接続も可能なため、外部apiへの接続や、 スクレイピングなども可能となっています。

Ideone

f:id:paiza:20170915162724p:plain
Ideoneも多数の言語に対応した実行環境サービスです。ユーザー登録をすると書いたコードを公開・共有することもできますが、実行だけなら登録なしでもすぐに使えます。

CodePad

f:id:paiza:20170915162825p:plain
CodePadも多数の言語に対応しています。画面もシンプルで、言語の切り替えはラジオボタンを選択するだけです。

Wandbox

f:id:paiza:20170915163106p:plain
WandboxはGithubソースコードも公開されています。

github.com
github.com

JavaScript、HTML、CSS

JSFiddle

f:id:paiza:20170915163323p:plain
トップ画面がHTML、CSSJavaScriptを書くゾーンと実行結果ゾーンにわかれていて、すぐにコードが書けます。jQueryRaphael、MooTools、DojoYUIなど多数のライブラリがバージョンも含めて指定できます。

CSSDesk

f:id:paiza:20170915165257p:plain
CSSDeskはコードを書けばすぐにプレビュー画面に結果が表示されます。Webページを作りたいときにとても便利です。

PHP

PHP Sandbox

f:id:paiza:20170915163805p:plain
コードを書いて実行すると、下の方に結果表示スペースがぺろっと現れます。PHPのバージョンも選べるので、1つのコードをいろいろなバージョンで実行したりもできます。

SQL

SQLFiddle

f:id:paiza:20170915164749p:plain
WebブラウザからSQLの実行、確認ができるSQL Fiddleです。テーブルの作成とデータ投入を行った後、SQLを実行すると結果を返してくれます。

■Swift

Runswift

f:id:paiza:20170915164900p:plain
Swiftの使い方をちょっと確認したいときに便利です。

■まとめ

「ちょっとあの言語を触ってみたい」「初心者にプログラミングを教えたい」といったときに、ブラウザだけですぐにプログラミングができる無料のオンライン実行環境は大変便利です。

さらに、勉強を進めて「ある程度の基礎は身についたかな?」と思われましたら、ぜひpaizaスキルチェック問題でご自分のスキルをはかってみてください!

現在、特定のスキルチェック問題に挑戦していただいた方の中から、抽選でAmazonギフト券をプレゼントするキャンぺーンを実施中です!プログラミング問題を解くだけでAmazonギフト券が当たるチャンス!こちらもぜひ挑戦してみてください!

【キャンペーン問題】
Dランク問題 → D075:足りないカード
Bランク問題 → B044:ねずみ小僧
2問とも解くとプレゼント当選確率も2倍になります!

【応募期間】
2017年9月6日~2017年9月25日

【プレゼント内容】
プレゼント総額は、問題へご挑戦いただいた人数によって変わります!

  • 挑戦人数1000人以上:Amazonギフト券5,000円分×1名様
  • 挑戦人数1500人以上:Amazonギフト券5,000円分×1名様、1,000円分×3名様
  • 挑戦人数2000人以上:Amazonギフト券5,000円分×3名様、1,000円分×3名様、500円分×3名様
  • 挑戦人数2500人以上:Amazonギフト券1万円分×1名様、5,000円分×3名様、1,000円分×5名様、500円分×5名様
  • 挑戦人数3000人以上:Amazonギフト券1万円分×2名様、5,000円分×5名様、1,000円分×5名様、500円分x10名様

…にプレゼントいたします!


また、ただいま「paizaラーニング」で、ふだん有料公開しているRuby on Railsの入門レッスンを、期間限定で連続無料公開しています。paizaラーニングでは、動画講座を見た後に、ブラウザ上で演習問題を解いて、実行結果を見ながら学習を進めていくことができます。

さらに、9月29日(金)までに演習問題の結果をツイートすると、抽選でAmazonギフト券1万円分が1名様、500円分が20名様に当たるキャンペーンも実施しております。



※スケジュールは変更になることがあります。

paizaラーニング無料公開スケジュール・Rails


動画レッスン名無料期間
Rails入門1いつでも無料
Rails入門1-29/15(金)~9/18(月)まで無料
Rails入門1-39/19(火)~9/21(木)まで無料
Rails入門29/22(金)~9/25(月)まで無料
Rails入門39/26(火)~9/29(金)まで無料


ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza

エンジニアが「マネジメントしたくない」という理由で転職するのはアリか?

f:id:paiza:20170914121225j:plain
Photo by Kevin McDonagh
f:id:paiza:20140916135428p:plainこんにちは、谷口です。

転職希望のITエンジニアの方々からお話を聞いていると、中には安易な考えで転職を希望される方も一定数いらっしゃいます。

例えば、

  • マネジメント業務をしたくないから、転職したい
  • 自分の評価が低すぎる気がするから、別の会社に行きたい
  • 先輩社員を見ていても給与が上がらなさそうだから、給与さえ上がればどこでもいい

という考えの人たちです。

もちろん転職を考えるきっかけ自体は何でもよいのです。しかし、そのまま自分の今後のキャリアやスキルのレベル感なども考えずに浅い考えのままで転職活動を始めてしまうと

  • 志望度の高い企業に受からない(そのまま後に引けなくて希望に合わない企業に入社してしまう)
  • 転職したものの、得意分野やスキルアップ目標などが特になく、なかなか給与が上がらない
  • プロジェクトマネジメントが嫌で転職したのに、転職先でチームマネジメントを求められて「思ってたのと違う」となる
  • 転職前に思い描いていたようにいかず、再び転職を検討し始める

といった感じで、失敗してしまいがちです。

今回は、そうした安易な考えで転職を思い立った人が注意すべきポイントについて考えてみました。

■安易な考えで転職を思い立った人への注意点

◆「マネジメントをするのが嫌だから転職したい」と思っている場合

「マネジメントをするのが嫌だから」という理由で、転職を希望するITエンジニアの方は非常に多いです。

また、その中には「今の会社を離れればマネジメントをしなくて済む」「自社開発をしている企業に入ればプログラミングだけをしていられる」と思っている人もいますが、それは大きな間違いです。

技術にものすごく卓越したスペシャリストや研究開発者でもない限り、どんな企業でも、それなりの給与が発生するポジションであれば、チームマネジメントに付随する業務が求められます。

開発業務におけるマネジメント業務を分解すると、以下のようなことが言えます。

プレイングマネージャーとマネジメント専任者について

マネジメントを担うポジションには、大きく分けてプレイングマネージャーとマネジメント専任者があります。

プレイングマネージャーとはその名の通り、「実務もできるしマネジメントもする」ポジションです。チームリーダーから、大きな組織をまとめる管理職まで、「マネジメントを担ってくれる人材」を募集している企業は多いですが、近年ではほとんどの募集企業がこうしたプレイングマネージャーを求めています。

逆にマネジメント専任の人、「技術はほとんどわからないけど、プロジェクトマネジメントだけをする」といった人を「積極的に採用したい」と考える企業は、かなり減少しています。

◇マネジメントの業務内容

【プロジェクトマネジメントにおける業務】
たとえば、受託開発におけるプロジェクトマネージャーの場合、主に

  • 要件定義
  • 体制構築
  • 進行管理
  • 要件調整

などといった業務があります。

こういったマネジメント業務が嫌で「転職したい」と考える人は多いですが、かといって「自社開発の企業に転職すればマネジメント業務から離れられるか」というとそうではありません。

どんなシステムやサービスを開発している企業に転職しても、「チームマネジメント(ラインマネジメント)」に付随する業務は発生します。


【チームマネジメントにおける業務】

  • 進行管理
  • 会議
  • 対外折衝(要件定義、摺合せ)
  • チームの運営・仕組み作り
  • 採用
  • メンバーの評価・評価指標の検討

多くの企業(※開発内容・国内外問わず)では、例えばAサービスのフロントエンド開発チームのリーダー、Aサービス全体の開発部門のリーダー、CTO…などというように、プレイングマネージャー的な役割のエンジニア達がこういったマネジメント業務を務めています。

「プロジェクトマネジメントの経験なんて、転職先では役に立たないだろうな…」という人もいますが、チームマネジメントではその経験が大いに生かせます。そのため、プロジェクトマネジメントの経験を意外に高く評価してくれる企業も多くあります。(もちろん開発スキルや技術の知識レベルが求められる水準に達している必要はありますが)

また、年齢を重ねてベテランになってくると、こういったプレイングマネージャー的なポジションにつくか、スペシャリストとして技術を極めるポジションに行くか、どちらかに進まないと「ずっと仕事で技術に触れ続ける」のは難しいでしょう。実際にスペシャリストや研究開発職を夢見る人も多いですが、現実的に本気で目指すのであれば研究で成果を出し続けなければならず、かなり厳しい道になります。求人も、相当な経験や知識を要求される狭き門です。

「マネジメントは一切したくない、プログラミングだけしていたい、でも極める領域まで行きたいかって言われるとちょっと……」という人は、末端のプログラマーで居続けるしかないかと思います。

◆「自分の評価が低すぎる」と思っている場合

「自分の評価が低すぎるから転職したい」という人は、現職の評価軸と自分の立ち位置について考える必要があります。

例えば、「現職ではPMにならないと給与が上がらないけど、自分は開発を続けたい」という場合は、現職で頑張っても希望するキャリアには進めませんし、自分の希望と会社の評価軸がズレています。この場合は、もちろん技術者を評価してくれる企業へ転職すべきです。

ただ、そうではなく「現職でスペシャリストとしてのキャリアを選べるコースもある」とか、「今のプロジェクトは希望に合わないけど違う部署に異動できれば希望が叶いそう」といった場合は、先にそっちを目指してみて、駄目だったら転職を考えるようにしたほうがいいでしょう。

また、「自分の評価が低すぎるから転職したい」と思っている人の中には、自分の仕事の成果について客観視できていない人や、成果に対する正当な評価を受けているにもかかわらず「自分は不当に低い評価を受けている」と考えている人も多いのが現実です。

こういった人は、自己満足ではなく、自分が会社のビジネス的に考えても有益な成果を上げられているのか、本当に不当に低い評価を受けているのか、一度客観的に振り返ってみるといいでしょう。

評価を決めるのは自分ではなく他人ですし、会社には会社の目的に沿った評価軸があります。

◆「年収を上げたい」と思っている場合

f:id:paiza:20170914121511j:plain
Photo by Pictures of Money
転職による年収の大幅アップを狙いたい場合、チームリーダーなどの経験がないのであれば、それ相応の開発スキルが必要になります。

また入社後も、コンスタントにスキルアップができないと、大幅な昇給を狙うのは難しいかと思われます。現職を続けたほうが順当に年収アップできるケースももちろん多くあります。

一方、ときどき「気に入った会社に入れれば給与は二の次でよい」「給与は上がらなくてよいから下っ端でい続けたい」という方がいらっしゃいます。もちろん、そう考えること自体は悪いことではありません。ただ、若い頃はそれでよかった人が、35歳ぐらいになって結婚したとか家族が増えたとか、ライフステージが変化した途端に、収入の低さを感じて慌てて再び転職を考える…といったケースが、転職市場を見ていると本当によくあります。

必要額と自分のスキルレベルとのバランスを考えないと、将来的に慌てることにもなりかねません。

■まとめ

最初にも言いましたが、転職を考えるきっかけ自体は何でもよいのです。しかし、そのまま自分の今後のキャリアやスキルのレベル感なども考えずに浅い考えのままで適当に転職をしてしまうと、結局不満を解消できずに転職を繰り返すことになったり、逆に不満を持ったまま一つの会社にとどまり続けることになったりして、最終的に転職者にとっても会社にとってもアンハッピーになってしまいます。「こんなはずじゃなかった…」と思わないためには、上記のような項目について、もう一歩踏み込んで考えることが必要かと思います。


paiza転職は、転職時のミスマッチをなくし、エンジニアがより技術面にフォーカスしたやりがいある仕事を探せる転職サービスです。プログラミングスキルチェック(コーディングのテスト)を受けて、スコアが一定基準を超えれば、書類選考なしで複数の会社へ応募ができます。
paiza.jp
まずはスキルチェックだけ、という使い方もできます。すぐには転職を考えていない方でも、自分のプログラミングスキルを客観的に知ることができますので、興味がある方はぜひ一度ご覧ください。
paiza.jp

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza


プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編