やっぱりエンジニア

ITエンジニアとして思ったことや、日常起こったことを書くブログです。

AWS 認定 SysOps アドミニストレーター – アソシエイトに合格しました

背景

2021年7月26日にSysOps アドミニストレーター – アソシエイト(以下SOA)に合格しました。
SOA-C02でラボ試験があり、SOA-C01を狙って1月から勉強をしていたので、急いで受けました。

SOA-C02の存在を知ったのが7月23日で、SOA-C01の試験が7月26日までだったので、最終日に急いで午後休を取って受けに行きました。

条件

勉強方法

下表の学習を実施

NO 勉強コンテンツ 所感
1 Web問題で学習しよう NO30以降を2.5往復しました。
2 AWS 認定SysOpsアドミニストレーター アソシエイト模擬試験問題集(全4回分260問) 1回のみ実施しました。

結果

839点

所感

Web問題集を繰り返していれば受かる試験でした。 しかし、SOA-C02になったら、そのままうまくいくかはわかりません。 ラボ試験もありますし。

今後はラボ試験が増えてきたらどう対応するか

受けた受験団体

  1. ピアソンVUE

これから

これからはDevopsを受けるか、AZUREの資格勉強をするか悩み中。 AZUREのFundamentalsを受けるかなぁ

AWS SysOps アソシエイツ模擬試験を受けました。

模擬試験を何故受けたか

SysOps のアソシエイツを受験しようとして勉強したが、いつまで勉強すればよいのかわからないため、
模擬試験を受けて自分の実力を測りたくなったため。


IPAの試験と違って好きなタイミングで受けられるため、 かなり準備をしていたが結局どこまで準備やればいいかわからないんですよね。

受けたときの知識レベル

勉強をした期間

  • 2021年1月〜6月

勉強道具

NO 勉強コンテンツ 所感
1 Web問題で学習しよう 2往復しました
2 AWS 認定SysOpsアドミニストレーター アソシエイト模擬試験問題集(全4回分260問)


また、問題集のみだと各サービスの全容が正直わからないため、youtubeに更新されている
AWS Black BeltやAWS Summitの動画で知識を補填していく予定です。

模擬試験結果

f:id:touhei888:20210623190835p:plain


点数ではなくパーセンテージで出るようです。

今後

近々、本試験を受けようと思います。 家で受けると、落ちたときに2回目無料というプランがありますが、 カンニング対策でWebカメラで部屋を見せなきゃいけないようで、 部屋が汚いから無理だろうな。。。
今回も受験センターで受験することになりそう

pages.awscloud.com

マウスからトラックボールに変更しました。 ERGO M575ワイヤレス トラックボール

自分の紹介

今まで、パソコンを触り始めて、20年ずっとマウスでした。
そんな私が思い切って、トラックボールに変更しました。

トラックボールに変更した理由

  • マウスで手首が痛くなってきた
    • 自分だけかもわかりませんが、手首を支点にマウスを動かすので手首が痛くなってしまいました。パットをおいたりしたのですが、結局手首を使うので、痛くなってる状況。
  • トラックボールはマウスと違って、持ち上げる必要がなく、あまり筋力を使わず、肩こりもしづらいらしいとの情報
  • たまには新しい刺激がほしいと思い、トラックボールにしてみた


そんな感じで、トラックボールに移行してみました。 利用して約2ヶ月ほど経ったので、自分の感想を書いていきます。


購入したトラックボール

ERGO M575ワイヤレス トラックボール


利用してみての感想

  • 利用直後
    • とても難しい
      • マウスは人差し指と中指と手首を使って操作するのだが、 トラックボールは親指と人差指と中指を使い、マウスと異なるので、親指と人差指を連動させて動かす慣れない 操作にかなり頭を使うのか、少し頭が痛くなった。
    • PCのフォルダ操作が怖い
      • 親指でトラックボールを操作して、人差し指でクリックや、ボール操作とカーソルが連動する感覚が慣れず、 誤って、ファイルを別フォルダに移動しそうになるのを気をつけながら、操作をする必要があった。
    • 親指が疲れる
      • 操作が慣れないため力が入っていってしまい、親指が少し痛くなってしまった。
  • 現在
    • メリット
      • 親指の疲れや、手首の痛みがなくなった。(これが今回一番良かったこと)
    • デメリット
      • PC操作にもなれて、マウスの使い方を忘れるくらいになった。ただし、線を引っ張る操作はトラックボールの特性上難しい。Windowsのsnippingtoolを利用したときに 画面キャプチャ上に「ここですよ」と赤線を引っ張ろうとしても、ガタガタな線になってしまっている。
      • パワーポイントなどでオブジェクトを微調整するときはマウスのほうが有利な気がする。


結果として

手首がの痛みがなくなったのが、今回一番良かったこと。トラックボールに変更してとてもよかった。 今はマウスの操作を少し忘れるくらいまで使いこなせているので、読んでくれたみなさんもトラックボールに変更してみてはどうでしょうか。

AWS ソリューションアーキテクトアソシエイツに合格しました

背景

2020年12月にソリューションアーキテクトアソシエイツ(以下SAA)に合格しました。 AWS資格受験をした背景としては下記になります。

  • 会社でAWSを使う機会がないが、IT業界に入ったのに一生使わないのは悲しいから
  • 技術勉強をしていると話しても証拠が見せれないため、資格を持ってれば少しは証明になるかと思ったから

条件

  • クラウドの実務経験はなし
  • クラウドに興味はあって、Azureは有料講習会や独学で少し扱ったりしている
  • ここ数年PL的な仕事が多く、プログラムや設計などができていなかったが、過去9年ほどは開発者として開発に従事
  • 基本情報技術者情報試験、応用情報技術者試験を取得済み

勉強方法

下表の学習を実施

NO 勉強コンテンツ 所感
1 AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト これだけでは正直受かりませんが、各サービスの概要をさらっと掴むことができました。
2 これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版) ハンズオン形式で、座学で学べるので、非常にためになります。特にハンズオンが良いです。
3 【SAA-C02版】AWS 認定ソリューションアーキテクト アソシエイト模擬試験問題集(6回分390問) 問題を1周しました。かなり難易度が高く大体初回は正答率が50%台で受かるか不安になりました
4 ClassmethodさんのDeveopers.IO awsの公式サイトよりもわかりやすく記述してくれているので、サービスの理解に繋がりました。

Web問題で学習しようの問題集はあとになって知りました。

結果

764点
受けているときはだめかなと思いました。 久しぶりの資格受験で、そこそこ勉強したので、だめだったときを考えると中々集中ができないこともありました。

受けている時の状況

誤訳もそこそこあり、英語本文を確認しながら回答をしました。

受けた場所

試験管理団体?が2つありました。 1. PSI試験 2. ピアソンVUE

PSI試験は試験登録方法がはわかりにくかったので、 他の方の情報も見て、ピアソンVUEにて受験。

今回は府中テストセンターで受験しました。

これから

これからはSysOpsを受けるためにUdemy、Web問題集で学習中となります。 2021年3月には取得するよう勉強中となります。 そのあとにDEVを受けるか、SAPを受けるかを考えようと思います。

Vuejsとaxiosを使って、WebApiと連携してみた

背景

Web系ではjQueryASP.NET WebApiでのAjax連携を行ったことがあるが、vue.jsのようなjavascriptフレームワークを使ったことがなかった。
ASP.NETがメインであるため、今後もOSSフレームワークを業務で触る機会がないので、自分で勉強をしてみたいと感じた。
以前、DataBindモデルのKnockOut.jsを使ってみたが、文献も英語が多いため、挫折。
似たような?Vuejsがトレンドになってきて、学習コストが低いみたなので、
Vuejsを勉強する。

実施事項

Vuejsとaxiosを使って、ASP.NET WebApiと連携をしてみる。
 

詰まった所

クライアントとサーバーが別ドメインだったのでCORSで多少手間取った。
 今回はサーバー側にCORSの設定をした。

環境

クライアント側

IDE:VisualStudioCode(Vetur、ESLint、HTMLHint、LiveServerを導入)
フレームワーク:Vuejs、axios(CDN経由で取得)
 

サーバー側

IDE:VisualStudio2017 Community
フレームワークASP.NET WebApi Core

ソースコード

フロントエンド側

<html>
<!DOCTYPE html>
<html lang="ja">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.18.0/axios.min.js"></script>
</head>

<body>
    <div id="app">
        <p>{{apidata}}</p>
        <button v-on:click="connectApi">API連携</button>
    </div>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
                apidata: "",
                url: "http://localhost:61782/api/values"
            },
            methods: {
                connectApi: function () {
                    self = this;
                    axios.get(this.url)
                        .then(function (res) {
                            self.apidata = res.data[0];
                            console.log(res.data);
                        });
                }
            }
        });
    </script>
</body>

</html>
</html>

C#

サーバー側はASP.NET CoreのAPIプロジェクトを選択しました。
CORS設定以外はデフォルトのままです。
docs.microsoft.com

valuesControlles.cs

using System.Collections.Generic;
using Microsoft.AspNetCore.Mvc;

namespace WebApiCore.Controllers
{
    [Route("api/[controller]")]
    [ApiController]
    public class ValuesController : ControllerBase
    {
        // GET api/values
        [HttpGet]
        public ActionResult<IEnumerable<string>> Get()
        {
            return new string[] { "value1", "value2" };
        }
    }
}

Startup.cs

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;

namespace WebApiCore
{
    public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        readonly string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddCors(options =>
            {
                options.AddPolicy(MyAllowSpecificOrigins,
                builder =>
                {
                    //LiveServerで立ち上がったurlを設定(ポートを入れないと動きませんでした。)
                    builder.WithOrigins("http://127.0.0.1:5500");
                });
            });

            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseHsts();
            }

            app.UseCors(MyAllowSpecificOrigins);

            app.UseHttpsRedirection();
            app.UseMvc();
        }
    }
}

結果

タグに文字列「value1」に設定されれば正常

考察

アプリとしては何でもないが、C#とvue.js連携を行いました。
業務でトレンド的な組み合わせのフレームワークを扱う機会がないので、どう勉強していくか悩む

ブログ開設にあたり

背景

中小SIerのSEとして10年程、業務系のシステム開発を行ってきた。

入社して8年ほどは要件定義、設計、プログラミング、テスト、移行、保守、を幅広くやってきた。

しかし、最近はリーダーとして、マネジメント業務を行うようになってきて、

開発、特に自分がやりたいシステム構成検討、技術検証や、プログラムに割く時間がなくなってきた。

また、枯れた技術を使う機会が多く、業務上、技術に触れないので、

自分のスキル/市場価値/キャリアについて不安を感じている。

 

昔から技術は好きな方で、Web業界のきらきらした技術には興味があったので、

 IT技術に遅れないように、キャッチアップをしていきたいと思っている。

 

今後は学習した内容をブログで書いていきたい。

 加えて、日常の活動で感じたこともブログに書いていきたい。

 

今のスキル

言語

.NET(C#VB)

フロントエンド(javascript、html、css)

 

利用フレームワーク

Web:ASP.NETASP.NET WebApi、jQueryASP.NET MVC(少し)

Windowsアプリ:WindowsForms、UWP(少し)

 

データベース

RDBMSOracleSqlserver

 

利用IDE

VisualStudio

VisualStudioCode

 

ソース管理

TeamFoundationServer、

VisualSourceSave2005

Git(GitHubで勉強中)

 

気になっている技術

言語:python(勉強中)

運用:Docker

クラウドAWS