monky88’s blog

文章を書けるようになりたいチンパンジー

Androidアプリケーション技術者認定試験ベーシックに合格したので振り返り

タイトルの通りです。

受験に当たりやったことなんかを振り返っていこうと思います。

 

■使った教材

・基礎&応用力をしっかり育成! Androidアプリ開発の教科書 なんちゃって開発者にならないための実践ハンズオン

・徹底攻略 Androidアプリケーション技術者認定試験ベーシック問題集 (ITプロ/ITエンジニアのための徹底攻略)

 ・クラムメディア (OA0-001 Androidアプリケーション技術者認定試験ベーシック)

 

勉強した順番は記載順と同じ。

 

■所感

クラムメディア最強

試験とほぼ同じ問題が出題されていた。

1週間あればandroidアプリ作ったことなくても、合格できる。

 

今回取得した資格に限らないけど、

この資格を取ったからandroidアプリケーションを開発できるかと言われたら絶対にできないと思う。

何を目的に資格を取得するのかによるけど、

実際にアプリを作りたい人は黒本とクラムメディアを中心に勉強すると絶対に無理

どんな仕組みやツールがあるかを知ることはできるけど、そこから自分で突っ込んで勉強しない限り意味ない。

というか試験の内容もそうだけど、出題内容が古い

sdkのバージョンは4とか6時代に作られた問題だからだと思うけど

10年以上前の問題がそのまま使われているのはどうなんすかね。

 

逆に資格を取るメリットは何だろうというと

業務やハンズオン系の書籍に登場していない概念が知れる。

こんなこと実はできるんだとかが知れるのが一番大きいと思う。

それぐらいかな、、、

 

 

City as a Serviceって?

この手の

xxxx as a Serviceって数が多すぎて覚えられない

City as a Serviceって

CaaSとか調べたら出てくるんだろうと思って

CaaSで調べるとContent as a Serviceっていうのが引っかかった

なにそれ、、、

 

このxxxx as a serive系をきれいにまとめているHPがあったので

興味がある人は下記を見てみてください。

https://boxil.jp/mag/a3600/

 

本題

City as a serviceとは

、、、良さそうな引用元をみつけれませんでした。

要はスマートシティ的なやつのようです。

ICTを利用して、都市全体の快適なサービス空間を目指すというもの。

調べると東急が大々的に取り組んでます。

2050年を目標に「世界が憧れる街づくり」を目指すとか。先が長い、、、

http://book.gakugei-pub.co.jp/tokyu-corporation-city-as-a-service-plan/

 

今後、このCity as a Serviceが加速していくらしい。

それは技術の発展によりというよりも

SDGsテック(持続可能な開発目標)」が大きく影響している様子。

 

今まで慈善活動として行われていた開発途上国での活動が

めちゃめちゃお金になるという事が話題になっているから。

詳しくはWASSHAという会社の活動を見てみてください。

https://wassha.com/

ランタンの貸し出しなんか、

わかりやすくテクノロジーを使って生活を変えていて

かつビジネスにもなっている。

 

ということで無人化とか以外にITで生活を変えていくための例でした。

なんとなくカーシェアと似ている気がするな

Windowsで作成したExcelマクロはMacOSでも動くのか?

結論

全然動かない!!

,,,

業務で必要があったので調査したけど、

移行云々の前にそもそもExcel for Macの開発タブの機能が

Windowsと違いすぎてお話にならない。

中途半端すぎて、無いほうがマシな気がする。

 

ということで実際どれくらい違うのか、まとめてみました

調査結果

 まず、「Mac マクロ」「Mac Excel VBA」とかで調べると出てくるのが

以下のような情報

・ファイルパス区切り文字が異なる(※1)

Macはソース上のバックスラッシュを認識しない(char(92)で置換する必要がある)(※1)

・セル内改行コードが異なる。(※1)

・Office2019が動くのはMac OS X 10.10 yosemite以上(※2)

 

※2
https://qiita.com/masato1230/items/58d82ede75737a56fdc1

※3
http://monomania.sblo.jp/article/151126018.html

 

まぁこれくらいなら動く簡単に移行させられそうな気がした

ところがどっこい実際に移行させてみたら次のような事象が発生した

 
・確認した端末の情報
OS       :MacOs Mojava 10.14.6
Excelのバージョン:Excel for Mac 16.16.18(200112)

■1
【関数の発火方法が異なる】
Macのエクセルでは「ActiveXコントロール」が存在しない
Windowsで「ActiveXコントロール」から追加した画面部品にマクロを設定している場合動作しない
→「フォームコントロール」から同じ見た目の部品を配置、ボタン等の部品を右クリック「マクロの登録」から発火元の関数を設定し直す必要がある。

■2
【フォームコントロールの扱いが異なる】
「1」と内容がかぶるが
ActiveXコントロール」が存在しない為、コンボボックスやラジオボタンをマクロ上から操作できない。

■3
【一部標準関数の扱い方が異なる】
GetOpenFileName関数のFileFilterに設定している引数(xlsxファイルしか選択できないようにする設定)
をマック用に変更しないとシステムエラーが発生する
■4
【マクロ付きエクセルは読み取り専用で開かれてしまう】
※原因不明

■5
Windowsと同じ方法でカレントディレクトが取得できない】
MacでCurDir関数を使用すると全角文字が文字化けしてしまう

■6
【FileSystemObjectが使えない】
Macで動くスクリプト言語を記載してVBAから実行すれば動くらしい
http://neos21.hatenablog.com/entry/2019/01/21/080000

■7
【一部標準関数の扱い方が異なる その2】
Workbooks.Open関数に「IgnoreReadOnlyRecommended」を指定すると実行時エラーになる

■8
【Dictionaryが使えない】
CreateObject(“Scripting.Dictionary”)を実行するとシステムエラーになる。
→どうしてもmapを使いたい時は自作すると使えるようになるらしい。
http://fccreator.blogspot.com/2014/03/macmacexcelvbadictionary.html

■9
【ユーザーフォームが使えない】
Windows側でuserFormを作成し、Macで確認したところフォームが消えている。
Macで右クリックしたところ、挿入の選択肢にユーザーフォームが存在しなかった。

 

間違ってる情報があったら教えていただけると嬉しいです。

 

今まで、業務ではほぼJavaしかやったことがなかったので

OSの違いによる洗礼を初めて浴びましたという話でした。

MacでEマクロを組もうとしている誰かの助けになれば幸いです。

laasを先導する企業群AMAGIってなに?

2020年になりました。

今年は去年よりも多めに更新できるようにしていきたいです。

毎年1月は、社長が流行りの造語を取り上げて社員に知っているかと聞くことが多い気がする。

(去年と一昨年でGAFA、BATHを取り上げていたような、、、)

今年はどや顔で知っていますよ!!アピールをする為に山をはって勉強しておこうと思います。

今回山をはるのは「AMAGI」です。

AMAGIとは

米ガードナー社が2019年8月に発表した2019年のlaasのシェア上位5社のこと

※1

売上順に以下のような企業がラインナップしている

アルファベット 企業名 サービス
A Amazon Amazon Web service
M Microsoft Microsoft Azure
A アリババ Alibaba Cloud
G Google Google Cloud Platform
I IBM IBM Cloud

上記の5つの企業だけて市場の77%を閉めている

正確にいうとazureはPaasらしいので、上の表は間違っているかも

※余談だけどNTTが提供しているCloudn(クラウド・エヌ)がサービスを終了する

日本1のSIerが提供しているのに一言も聞いたことなかった。

「国産サービスって弱いよね」で終わらせていい話なのかね

laasとは

AMAGIについては終わり、ここからはlaasについて私が覚えていた内容が少し間違っていたので復習

あと、似たような概念の言葉でSaaS、PaaSがあるのでまとめてお勉強

SaaS

SaaS(「Software as a Service」の頭文字を取った略語で「サース」)

これまでパッケージ製品として提供されていたソフトウェアを、インターネット経由でサービスとして提供・利用する形態のことを指します。

※2

PaaS

PaaS(「Platform as a Service」の頭文字を取った略語で「パース」)

アプリケーションソフトが稼動するためのハードウェアやOSなどのプラットフォーム一式を、インターネット上のサービスとして提供する形態のことを指します。

※2

laaS

laaS(Infrastructure as a Service」の頭文字を取った略語で「イァース」)

情報システムの稼動に必要な仮想サーバをはじめとした機材やネットワークなどのインフラを、インターネット上のサービスとして提供する形態のことを指します。

※2

まとめ

ざっくりまとめる

名前 概要 代表サービス
SaaS 出来合いのものを簡単に使える Gmail、ブログサービス、Salesforce
PaaS 環境は用意するから、プログラムが自分で書いてね Azure App Service、Google App Engine
laaS 仮想マシンを提供、あとはご自由に AWS(Amazon EC2)、GCP(Google Compute Engine)、Microsoft Azure

終わり

この手のサービスを知っておくと、選択肢が広がるので最適なサービスを選べるようになること強いと思う

顧客からAWSでいい感じにやってよ~と言われた時に、これだったらGCPのほうがいいですよとか

顧客も無駄が発生しなくなるし、提案した自分の評価も上がるしWIN:WIN

またAzureに関してはyoutubeで勉強できる動画を公式があげているので勉強できるのもいいですよね

https://www.youtube.com/channel/UCMmRHq3E_9Hc9noZeo3zDCw

ちょまどさんかわいい

私事ですが、久しぶりにHTMLでブログを書いて楽しかった

※1:コンピューター2020/1/9号より

※2:https://www.cloud-ace.jp/column/detail01/

IPv4が枯渇!なにが困る!!

前置き

2019/11/25日に欧州でIPv4のアドレスが枯渇した発表がありました。
WEB屋さんとしては気にしないといけないと思うので復習もかねてまとめようとおもいます。
結論からするとあんまり困らなそう。

■そもそもIPってなに?

IPアドレス(正式名称:Internet Protocol Address)とは
インターネット上に接続された機器が持つナンバーのことです。
データをやり取りする際、ネットワーク上で通信相手を間違わないようにするために使われます。※1

だそうです。
ざっくり説明するとPCが持つインターネット上の住所と理解しいて問題ないかと思います。
またIPには「グローバルIPアドレス」「プライベートIPアドレス」の2種類があり、下記のように仕訳けます。
グローバルIPアドレス :インターネットに接続する
プライベートIPアドレス:インターネットに接続しない

枯渇するといわれているのは「グローバルIPアドレス」です。

IPv4とは?

IPアドレスを32ビットで表したもの(172.0.0.1:こういうやつ)
32ビットで表現できる42億9496万7296個のアドレス(正確にいうと使えるアドレス数はもっと少ない)が存在していて※2
欧州分に割り振られていたIPアドレスが底をついた。
日本も3年後にはすべて割り振り切ってしまう計算。

枯渇するとどうなるのかというと
新しくサーバーを立ててもIPが振れないので、
・インターネットに接続できない。
・新しいサービスを運用できない
となる

もしIPが欲しい場合は、IPを持て余してる企業から買うとかしないといけなくなる。
ピザポテトの販売終了みたいにオークションサイトで高く売られたりするのかな(笑)

IPv6って何が違うの?

IPアドレスを128ビットで表現し1兆倍の1兆倍よりも多い数値を表現できます。ほぼ無限。
ちなみに記載方法は下記のように16進数を使って4桁ずつ:で区切って表現する
(2001:0db8:bd05:01d2:288a:1fc0:0001:10ee)

■今までIPv4で表現してたアドレスをv6に変換すれば終わる話では?

置換はできるようです。
すみません、良さそうなHPがあったのですがうっかり閉じてしまい、履歴を探るのが大変なので参考はなしです。
最近のルータは、v6変換ができるようにできているので、困ることがなそう。
あとv6のほうが通信が速いらしい?オンラインゲームをする人はv6で通信したほうがいいかも
興味が出たら調べてみてください。
※v6について調べると結構古い記事がヒットするので、注意

中途半端になりましたが、ここで終わりにしようと思います。

※参考
※1:https://www.kagoya.jp/howto/network/ipaddress/
※2:https://www.nic.ad.jp/ja/newsletter/No20/sec0700.html
※3:日経コンピュータ 2019/12/26日号より

カグル(Kaggle)とは

目次

  • 始めに
  • カグル(Kaggle)とは?
  • 終わりに

始めに

ディープラーニング」という聞きなれない言葉と共に
なんとなくAIが大変なことになっているらしい、
本当に人工知能が生まれるかも!AIを使えば何でもできる!
という過剰なAIに対する期待があった。
しかし2018年を境にAI対する市場の過剰が冷めてきた。
実際にAIを運用する為のハードルやできることをAIを使いたい人達の理解が追いついてきたから
今後、AI関連の投資や案件は減ってくるだろう。
そんなような内容の記事だった気がする。

ここ2ヶ月くらい毎号日経コンピュータを読むようにしているけど、
AI人材は不足している、どうやって育てるのか?
という内容はよく見るので、AIはまだホットなトピックのままらしい。

2019年11月14日号の内容から抜粋すると
AI人材不足を脱却する為に日本がとっている施策が以下の3点らしい。
・即戦力の海外AI人材を採用する
・コンテスト挑戦でAI人材を鍛える
・優れたAI人材のタマゴになる学生を増やす。

サラリーマンとして関係のありそうな2番目の
「コンテスト挑戦でAI人材を鍛える」の象徴として
カグル(Kaggle)というプラットフォームがある。

■カグル(Kaggle)とは?

KaggleはGoogleが運営する企業

事業内容として
企業から依頼を受けて、賞金付きAI開発コンテストをオンラインで開催をしている。

コンテストは無料で参加でき常時、10~20件程度のコンテストが開催されている。
コンテストの期間は2~3か月程。
チームで参加することが多いっぽい。
このKaggleで腕を磨くエンジニアのことをKagglerというらしい。


例えば業務時間の半分をKaggleに当てるようにして
コンテストで画像認識AI、それを自社製品に応用!という使い方をしている企業がいる。
賢い。

■終わりに

コンテストの挑戦を企業が業務時間を当ていることで
技術向上を後押しすることはとてもいいことだと思う。

これは考え方の違いかもしれないけど、
業務時間外に勉強した内容で成果が出た場合は自分の努力の結果だし
所属する企業に還元しようと思う気持ちが薄くなると思っている。

もし作ったサービスとかで一発当たったら、独立したいなとおもっちゃう。
経営とかサービスの維持とか考えたら自社で面倒見てもらえるならそのほうがいいのかもしれないけど。

なんか作ってから言えって話ですけどね。

猫も杓子もDX

2か月前から日経コンピュータを毎号読むようにしているのだけれど
この「DX」という単語がめちゃくちゃ出てくる

会社の同僚に説明しようとしてうまくできなかったので
自分なりにまとめてみようと思います。

■目次

  • DXとは?
  • なぜ今、DXが注目されているのか?
  • まとめ

■DXとは?

まず、DXとはデジタルトランスフォーメーション(Digital Transformation)の略語

2004年にスウェーデンウメオ大学のエリック・ストルターマン教授によって提唱され
内容は「進化し続けるテクノロジーが人々の生活を豊かにしていく」というもの
ははん?

ざっくりいうと
「進化したデジタル技術を浸透させて、人々の生活をより良いものに変えていこう」という話
ここで大事なのは「変えていく」という行為が求めているものは
「既存の価値観や枠組みを根底から覆すような革新的なイノベーション」ということを指すらしいです。
難しくなってきた。。。

さらにざっくりまとめると
RPAとかAIに音声認識させて電話対応させるとかするあれもDXの一部。

■なぜ今、DXが注目されているのか?

日本の企業って、デジタルイノベーション的なものが苦手ですよね。
アメリカでグーグルが出来たときに、日本はスカイツリーの計画練ってしましたからね
00年代の頭に50年以上前に作った電波塔(東京タワー)を新しく作りなおすとか周回遅れ感が否めない
脱線しました。

このDXに関する取り組みがうまくできていないことに危機感を抱いた
経済産業省が2018年9月に発表したのが、「DXレポート ~ITシステム「2025年の崖」克服とDXの本格的な展開~」

内容は現状のレガシーシステムを使い続けると
今後、爆発的に増えるデータを有効活用できず、2025年にはデジタル競争敗者になっちゃうから
対策していきましょうね、という内容
実際の文章は下記のリンクから読めます。
https://www.meti.go.jp/shingikai/mono_info_service/digital_transformation/20180907_report.html

■まとめ

DXは「既存の価値観や枠組みを根底から覆すような革新的なイノベーション」と書きましたが
新しい製品を作れという話ではなく、最新技術をうまく使って
システムの利用者に新しい体験や価値観を提供しようというものなので
RPA使って業務効率化とかでも良いわけです。
付け焼刃の対応ではなく、システムの利用者が抱えている根本的な問題が解決しないとだめだけれど

ちなみに日経コンピュータ2019/10/31日号によると
DXに取り込んでいる日本企業の95%が取り組みに失敗しているらしいです。草