give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

MacBook USキーボード+Boot Camp or VirtualBox+Windows 10で左右コマンドキーを使ってIMEを切り替える方法

はじめに

僕はMacユーザーです。さらにUSキーボードユーザーです。

MacのJISキーボードではスペースバーの左右に「英数」キーと「かな」キーがあり、これでIMEを切り替えることができます(英数でIME-オフ、かなでIME-オン)。
しかし、USキーボードの場合、スペースバーの左右にはコマンドキーが配置されており、「英数」と「かな」はありません。
そこで僕はKarabiner-Elementsを使って左右のコマンドキーにそれぞれ「英数」と「かな」を割り当てています。

さらに、頻度はそこまで多くありませんが、たまにMac上でWindowsを使う場合があります。
Windowsを起動するのはBoot CampでOSごと切り替えてしまう場合と、VirtualBoxを使ってmacOS内でWindowsを立ち上げる場合の2パターンがあります。

Mac環境と同じように、Windowsでも左右のコマンドキーでIMEを切り替えたいな〜と思ったので方法を調べてみました。

左右コマンドキーでWindows IMEを切り替える方法

PowerToysの設定

Windows上でPowerToysというツールをインストールします。

learn.microsoft.com

PowerToysを起動し、左サイドメニューの「Keyboard Manager」を選択、それから「キーの再マップ」を選択します。
プラス(+)ボタンをクリックし、以下の設定を追加します(VirtualBoxの場合は注意点があるので後述します)。

  • Win (Left) → IME Non-Convert
  • Win (Right) → IME Convert
  • Caps Lock → Win (Left)

設定が完了すると次のようになります。

なお、「Caps Lock → Win (Left)」はWindowsキーに相当するものがなくなってしまうので、ふだん使わないCaps LockキーにWindowsキーを割り当てただけです。この設定は任意です。

Windows IMEの設定

次に、画面右下のIMEアイコンを右クリックし、設定を開きます(注:僕が使っているIMEはWindows標準のIMEです。Google 日本語入力ではありません)。

「キーとタッチのカスタマイズ」をクリックします。

「キーの割り当て」で以下のように設定します。

  • 各キーに好みの機能を割り当てる = オン
  • 無変換キー = IME-オフ
  • 変換キー = IME-オン

これでWindows環境でも左右コマンドキーを使ってIMEが切り替えられるようになるはずです。

VirtualBoxの場合の注意点

VirtualBox上でWindowsを動かしている場合は、デフォルトで左コマンドキーがHost Keyに割り当てられていると思います。
そのため、左コマンドキーを押してもIMEが切り替わりません。
そこで(ふだんHost Keyを使っていないことが前提ですが)左コマンドキーのHost Key設定を解除します。

Virtual Boxの画面左下にある⬇️ボタンをクリックします。

Host Key Combination欄にある消しゴムマーク(?)をクリックします。

"None"に変わったらOKボタンをクリックして変更を確定します。

これでVirtualBox上でも左コマンドキーでIME-オフが実現できます。

確認環境(Boot Camp)

  • MacBook Pro 13-inch, 2017
  • Windows 10 Home
    • バージョン 22H2
    • OS ビルド 19045.2311
    • エクスペリエンス Windows Feature Experience Pack 120.2212.4190.0
  • PowerToys v0.65.0

確認環境(VirtuaBox)

  • MacBook Pro 13-inch, 2017
  • macOS Ventura 13.0.1
  • VirtualBox 7.0.4 r154605 (Qt5.15.2)
  • Windows 10 Home
    • バージョン 21H2
    • OS ビルド 19044.1645
    • エクスペリエンス Windows Feature Experience Pack 120.2212.4170.0
  • PowerToys v0.65.0

【お悩み相談】未経験者はIT業界に転職しても使いっぱしり止まりでキャリアアップできないんでしょうか?

はじめに

先日、Twitter DMで以下のような相談を受けました。

突然のご連絡申し訳ございません。
僕は現在未経験でIT業界を目指そうか悩んでいるものです。
エンジニアについて調べていく中で伊藤さんの記事を読ませていただきました。

僕は高卒→飲食業勤務の24歳です。現在ITの学習は全くしておりません。
ですがIT業界に転職をしたいと思い、調べていくなかで未経験で入っても使いっぱしりのような形にされてしまってキャリアアップは狙えない、という記事を読んだりして怖くなってしまっている状況です。

もし可能でしたら実際に業界で活躍されてる伊藤さんに、本当の実態をお伺いできればと思い連絡させていただきました。

もし可能でしたら教えていただけるとありがたいです。

今回のエントリではこの相談のやりとりを質問者ご本人の許可を得た上で公開したいと思います。

僕の回答:身につけたスキルと選んだ会社によります

未経験で入っても使いっぱしり止まりでキャリアアップできないのか?という質問に対しては、質問者さんが身につけたスキルと入った会社のホワイトさ・ブラックさによる、という感じでしょうか。

「新人だけどすごくスキルがある」かつ「評判のいい会社に入った」なら、新人でも悪い扱いはされないはずです。

逆に「大してスキルがつかないままエンジニアになった」かつ「ブラックな会社に入った(そういう会社にしか入れなかった)」なら、あまり幸せではない働き方になると思います。

また、まったくの未経験(つまりスキルゼロ)でエンジニア転職を目指すと、評判のいい会社に入れる可能性がほぼゼロなってしまう(=使いっぱしりにされる可能性が非常に高い)ので、個人的にはオススメしません。

ちなみに、僕自身は20年前に完全未経験でややブラックなIT企業に転職してなんとかここまで生き延びましたが、完全に生存バイアスだと思っています😅

なので、しっかりしたスキルを身につけることと、(誰かの意見に盲目的に従うのではなく)自分でいい会社を調べて見つけることが大事になるんじゃないかなと思います。

質問者さんからの返信:資格を取ったり、スクールに通ったりすれば「しっかりしたスキル」が身に付きますか?

急なご相談にもかかわらず、親身になって教えていただきほんとうにありがとうございます。
どのように進路を進めばいいのか、不安でしょうがなかったので心が救われました。

ところで、「しっかりしたスキル」を身につける方法ですが、僕は「進みたい道に対する資格を取得する」だったり「プログラミングスクールに通う」だと思うのですが、この認識で問題ないでしょうか?

僕の回答:「しっかりしたスキル」とは自走力であり、プラスの戦力になることです

資格は持ってて損はない(プラスに評価されることは間違いない)ですが、それだけでは「しっかりしたスキル」が身に付いたとは言えません。
また、「スクールに通う」というのはただの手段なので、「スクールに通う=スキルが身に付く」というわけでもありません。

そもそも、「しっかりしたスキル」の「スキル」とは何なのかを明確にしておく必要がありますね。
僕が考える、未経験エンジニア転職で必要なスキルはいったい何なのかというと、この業界でよく耳にする「自走力」だと考えています。

「自走力=多少時間がかかっても自分で調べて(もしくは勉強して)自力で問題を解決する能力」

みたいな感じです。

僕がメンターをやっているフィヨルドブートキャンプでは「プラスの戦力」と呼んだりもします。

僕の考える、Railsエンジニアとして就職できる最低レベルは、

「少しでもプラスの戦力として計算できる」

というものです。

「Issueを一人でこなせる」

といっても良いかもしれません。

(中略)

「多少の教育コストはかかるけど、レビューをしっかりやればトータルで見れば助かる」

このレベルがプラス戦力です。

Railsエンジニアとして就職できるレベルとは - komagataのブログ

つまり、

「しっかりしたスキルがある人=仕事のやり方やコードの書き方を1から10まで教えなくても、2か3ぐらい手助けすれば残りは自分でやってくれる人」

みたいなイメージですね。

こういったスキルを自力で身に付けれるならスクールに通う必要はありません。
反対に、スクールに通ってもこういうスキルが身に付かないなら、「使いっぱしり」になってしまうリスクがあります。

僕はフィヨルドブートキャンプの関係者なので手前味噌になってしまう部分もありますが、たとえば下のブログ記事を書かれた方の場合はフィヨルドブートキャンプで自走力を身につけたので、すんなり転職できて、そのあとも楽しく働けている一例だと思います。

blog.hirovodka.com

ちなみに自走力はあくまで未経験エンジニア転職でいい会社に入るために必要な、最低限のスキルです。熟練者の場合は自走力はあって当然で、もっと高い技術スキルが求められます。

まとめ

質問者の方とはこんな感じでやりとりさせてもらいました。
完全未経験でエンジニア転職を目指している方は、もしかすると同じような悩みを抱えている人も多いのではないでしょうか?
僕の回答がみなさんの参考になれば幸いです。

なお、やりとりの最後には質問者さんからこんなにお礼の言葉をいただきました。

重ね重ねの質問でしたが、とても丁寧に教えてくださり誠にありがとうございます。

どのような能力を身につければいいか分かっていなかったのですが、具体的に必要な能力を教えてくださり視界を明確にすることができました。ありがとうございます。

たくさん教えてくださったことを考え、自分の道を決めようと思います。
なにも知らない業界で困っていたのですが、とても親切に教えてくださり、ほんとうにありがとうございます。

「わかりました、じゃあ今日からエンジニアを目指して頑張ります!」ではなく、いったん深く考えてから自分の道を決める、というところがいいですね。
ぜひ、良い決断をしてほしいと思います!

余談:僕への相談は「知見を独り占めにしない」が原則です

たまーにTwitter DM等で質問や相談を受けることがあるのですが、僕は原則として質問や相談はオープンにしてもらう(=ネット上に公開する)ことを原則としています。
なぜなら、DMのやりとりだけで終わってしまうと、僕の知見を質問者さんだけが独り占めしてしまうことになるからです。

この話は以下のエントリに詳しく書いています。

blog.jnito.com

「伊藤さんに質問したり、相談したりしたいことがあるんだけど、やりとりはどうしても非公開にしたい」という場合は、有料で対応させてもらっています。興味がある方はMENTAを検索してみてください。

安定のPR:こんな学習環境もあるよ

上のやりとりでもお知らせしたとおり、僕自身がメンターをやっているプログラミングスクールとしてフィヨルドブートキャンプがあります。
このスクールを卒業できれば(注:「通えば」ではない)、間違いなく「プラスの戦力」になれます!(そして僕への質問や相談も追加料金なしでできますw)
bootcamp.fjord.jp

また、参加条件あり&期間限定ですが、チーム開発が無料で体験できるソニックガーデンキャンプというオンラインプログラミング合宿もあります。
未経験だけど、エンジニア職に興味があるという方はこちらもぜひチェックしてみてください。
camp.sonicgarden.jp

あわせて読みたい

未経験からのエンジニア転職に関しては以下のエントリでも僕自身の考えを詳しく書いているので、こちらもぜひ読んでみてください!
blog.jnito.com

すでに勉強は始めていて、そろそろ就職活動を始めようと思っている、という方はこちらのエントリをどうぞ。
blog.jnito.com

昨今の「未経験からエンジニア就職!」みたいなトレンドに対して業界歴20年の僕が考えていること

このブログ記事は動画バージョンがあります。動画で見たい方はこちらをどうぞ↓

www.youtube.com


ちょっと前から「もやもや〜」と考えてることなんですが。

なんかここ数年、急にプログラマ(エンジニアと言われることが多いけど)の仕事が脚光を浴び始めた気がします。

「3K(笑)」から「お給料が良くて、自由に働ける、イケてる職業」に!?

僕がこの仕事を始めた頃(20年前)とか、ソニックガーデンに入社した頃(10年前)はまだ「プログラマ?おたくっぽい」「あー、3Kでしょ?きつい、帰れない、給料安いw」みたいな扱いだった気がします。少なくとも日本においては。

ところが、この5〜6年で急に「お給料が良くて、自由に働ける、イケてる職業」みたいなイメージに変わってきたんですよね。

それ自体はとてもいいことだと思うんですよ。自分の仕事が「3K(笑)」と馬鹿にされるより、「お給料がいい!自由!イケてる!」と言われる方が気持ちいいので。自分の子どもにも胸を張れますしね。

なんか怪しい広告も増えたよね

それはいいことなんですが、その一方で「お給料がいいよ!自由だよ!うちで学べば半年であなたもフリーランス!年収1000万!!」みたいな広告もよく見かけるようになりました。

20年選手の僕に言わせれば、頑張れば年収1000万は夢じゃない(てか、僕も1000万を超えてる)けど、半年じゃ無理だと思ってます。

2〜3年必死でやってようやく技術者として一人前、年収1000万を目指すならそのスタートラインに立ってからだと思います。
(サラリーマンとフリーランスでは年収の考え方も違うので「年収1000万」の定義はブレるかもしれませんが、「年収1000万=安定した高収入」ぐらいの意味でとらえてください)

プログラマを目指したら逆にお金がなくなって不幸になった、は悲しい😢

なのに、「ちょっと頑張れば高収入で自由な働き方ができるから、うちへいらっしゃい」という広告を見かけるのは、全員が全員不幸になるとは言わないけど、「こんなはずじゃなかった」と思う人をそれなりに生み出してるんじゃないかと危惧しています。

そうなると、それはすごく悲しい。

自分の仕事が「お給料がいい!自由!イケてる!」とチヤホヤされるのはいいけど、未経験の人を怪しいうたい文句で呼び込んで、高いお金だけ払わせて、結局エンジニアとしてまともな仕事に就くことができなかった、という人が出てくるのは、その仕事をやっている人間からすると悲しいわけです。

理由はなんであれ、母数が増えることはとっても大事なこと

じゃあ、「3K(笑)」って言われる時代に戻りたいか、と言われるとそうではない。

プログラマやITエンジニアが憧れの職業になって、やってみようと思う人がたくさん出てくることはとても大事なことです。
それなりの母数がないと、優秀な人も出てこないので。

理想は「自由だから」とか「高収入だから」といった理由ではなく、「プログラミングが好きだから、プログラマになりたい!」っていう人だけがプログラマを目指す世界になることですが、これはまあさすがに無理な願いでしょう。

低い意識でこの業界を目指す人がいても別にいい(僕みたいに!)

そもそも僕自身が「プログラミングが大好きだった」とかいう人ではなく、「パソコンやインターネットが好きだった」「HTMLでホームページぐらいは作れた」「だったらパソコンを使う仕事に就くか」という意識の低い理由でプログラマになった人です。

「プログラミングが好きだから、プログラマになりたい!」っていう人だけしかプログラマを目指せない世界だったら、きっと僕は今この仕事に就けてなかったと思います(笑)。

なので、「自由で高収入だから」という理由でプログラマやエンジニアを目指す人が出てくることは否定しないし、僕みたいに「やってみたら想像以上に楽しかった」という人も絶対いると思うので、プログラマの仕事が「自由で高収入」と言われること自体は悪いことではないと思っています。

やってみる、の時点で何十万も払うのはなんかおかしい

でも、合う・合わないは絶対あると思います。

だから、まずやってみる。やってみて「面白い」と思えれば続ければいいし、「なんかちんぷんかんぷんで、全然楽しくない」という人がいたら、その人は別の仕事に就いた方がいいと思います。

でも、「やってみる」の時点で何十万円も払わなきゃいけない状態になるのはリスクが高すぎます。

中には何十万も払ってしまったがゆえに、「なんかしっくりきてないけど、高いお金を払ったし、最後までやってエンジニアにならなきゃ!!」みたいに思う人も出てくるんじゃないでしょうか。

できるだけコストを抑えつつ、プログラマの仕事が向いてるか向いていないかがわかるようになるのが一番です。

独学で頑張る?

そのひとつの方法は独学です。
本を買ったり、ネットの教材を使ったりすれば、全部タダとはいかなくても、数千円〜数万円の出費で済むと思います。

ただし、プログラミングにはエラーが付きものですが、初心者のうちはこれを一人で解決するのが難しい。
すごく時間がかかるし、下手なネット記事を参考にしてしまったがゆえに、間違った解決策を選んでしまったりすることもあるでしょう。

あと、仲間がいないのもモチベーションが上がらない理由のひとつになります。
本当にプログラミングが好きな人なら一人でもくもくと勉強するのも苦にならないでしょうけど、そうではない「ふつーの人」はずっと独学で続けるのはとても孤独でだんだん辛くなってくると思います。

なので、困ったときに手助けしてくれる師匠や、一緒に学ぶ仲間もいた方が良いです。

プログラミング学習をスタートする上で大事なこと

ここまでの話を総合すると、プログラマやエンジニアを目指すなら、

  • 低コストでプログラミングの勉強にトライできる(一度に何十万も払わなくてよい)
  • 頼れる師匠や一緒に学ぶ仲間がいる

という2つの条件が揃えばいいのではないか、というのが僕の考えです。

もちろん大事なポイントは他にもいろいろあるとは思いますが、学習をスタートする上ではこの2点が特に大事なんじゃないかと僕は考えます。

では、その環境をどうやって見つけてくるか、です。
ネットを探せばそういう学習環境が見つかるかもしれません。

ここでは僕が知っている、というか、僕自身が半分関わっている環境を紹介します。

推しの学習環境・その1「フィヨルドブートキャンプ」

ひとつはフィヨルドブートキャンプというプログラミングスクールです。

bootcamp.fjord.jp

フィヨルドブートキャンプのいいところはいろいろありますが、

  • 月額29,800円(税込)の月謝制で、「これ以上無理!」となったらいつでも退会できる(3日間の無料お試し期間もある)
  • 学習コミュニティとしての側面が強く、メンターや他の受講生が積極的にサポートしてくれる

という2点が、上で僕が挙げた大事なポイントにマッチします。

ちなみに期間限定で通常3日間の無料体験期間が7日間に増えるキャンペーンもやってるようです。

2022年12月19日(月)から、年明けの 2023年01月08日(日)の間、年末年始学習応援キャンペーンを開催することが決まりました。キャンペーン期間中に入会いただくと、通常3日間 の無料体験期間が 7日間 に延長になります。無料体験期間もフィヨルドブートキャンプの全ての機能・サービスを利用できますので、おもいっきり試してみてください。

年末年始学習応援キャンペーン & スクール説明会を兼ねたイベント開催決定!! | FJORD BOOT CAMP(フィヨルドブートキャンプ)

bootcamp.fjord.jp

推しの学習環境・その2「ソニックガーデンキャンプ」

もうひとつは、ソニックガーデンキャンプです。

camp.sonicgarden.jp

こちらはソニックガーデンというIT企業が運営している無料のオンラインプログラミング合宿です。

  • 受講料は無料(ただし、参加条件あり)
  • オンライン上でチーム開発を体験できる(チームメンバー同士で助け合える)
  • ソニックガーデンのプログラマがメンターとしてサポートしてくれる

というように、こちらもやはり上で僕が挙げた大事なポイントにマッチします。
ただし、ソニックガーデンキャンプは開催期間が決まっています。

このブログを執筆している時点だと、第3回ソニックガーデンキャンプは

  • 開催期間=2023年1月16日 ~ 2月10日
  • 募集期間=2022年11月14日 ~ 12月23日

となっている点にご注意ください。

ステマじゃないよ(僕は関係者だよ)

そして、公平を期すために言っておきますが、僕はどちらも関係者です!!

フィヨルドブートキャンプではメンターをやってますし、僕自身はソニックガーデンの社員です。

「なんだ〜、ステマかよ〜!」と思われるかもしれませんが、ステマではないです(そもそも関係者であることを明らかにしてますし)。
どちらも僕自身の考えにマッチしているので、自信をもってオススメできる学習環境だということです。

もちろん、フィヨルドブートキャンプやソニックガーデンキャンプ以外にもいい学習環境はあるかもしれません。
ここで僕が挙げた大事なポイントにマッチする学習環境があるなら、そこを検討してみるのも全然OKです。

まとめ

最後はなんか宣伝っぽくなってしまいましたが(いや、思いっきり宣伝か)、昨今の「未経験からエンジニア就職!」みたいなトレンドに対して考えていることは僕の正直な思いです。
「エンジニアになろうかな」と思っている人が、辛い思いをすることなく、ベストな道のりで自分自身のキャリアを築いていってくれることを願っています。

あわせて読みたい

未経験からIT業界への転職を考えている方の質問にお答えしてみました。
こちらもあわせてどうぞ。
blog.jnito.com