<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7616979561464828711</id><updated>2025-12-27T10:59:56.578+09:00</updated><category term="java"/><category term="groovy"/><category term="poj"/><category term="ios"/><category term="雑記"/><category term="javascript"/><category term="objective-c"/><category term="eclipse"/><category term="pku"/><category term="swift"/><category term="swing"/><category term="xcode"/><category term="iphone"/><category term="sql"/><category term="oracle"/><category term="正規表現"/><category term="osx"/><category term="blogger"/><category term="cocoa"/><category term="cocos2d"/><category term="javafx"/><category term="基礎数学"/><category term="commons"/><category term="jquery"/><category term="php"/><category term="AWS認定"/><category term="excel"/><category term="delphi"/><category term="jruby"/><category term="mysql"/><category term="windows"/><category term="css"/><category term="swingx"/><category term="webstart"/><category term="clojure"/><category term="perl"/><category term="poi"/><category term="swt"/><category term="xml"/><category term="ant"/><category term="h2database"/><category term="javassist"/><category term="xpath"/><category term="抱負"/><category term="画像処理"/><category term="エクセル"/><category term="ネタ"/><category term="文字コード"/><category term="NSWindow"/><category term="actionscript3.0"/><category term="gae"/><category term="jdbc"/><category term="jsp"/><category term="ストアド"/><category term="反省"/><category term="flex"/><category term="html"/><category term="あとで書く"/><category term="アイデアレベル"/><category term="アプリ"/><category term="宣伝"/><category term="StoryBoard"/><category term="UIColor"/><category term="cocoatouch"/><category term="csv"/><category term="del.icio.us"/><category term="grails"/><category term="ios7"/><category term="jnlp"/><category term="json"/><category term="lisp"/><category term="maven"/><category term="python"/><category term="ruby"/><category term="springmvc"/><category term="ve"/><category term="velocity"/><category term="wikipediaapi"/><category term="グラフィック"/><category term="スレッド"/><category term="ミニ英語"/><category term="手習い"/><category term="用語"/><category term="計算"/><category term="aws"/><category term="erlang"/><category term="google"/><category term="google app engine"/><category term="google cloud sql"/><category term="googleapi"/><category term="groovlet"/><category term="illustrator"/><category term="jasperreports"/><category term="java7"/><category term="java8"/><category term="jetty"/><category term="jni"/><category term="shell"/><category term="spring"/><category term="spring3"/><category term="tomcat"/><category term="ゆっくり後で考える"/><category term="イラストレーター"/><category term="ダーツ"/><category term="ネットワーク"/><category term="レプリケーション"/><category term="乱数"/><category term="外字"/><category term="天文"/><category term="日付処理"/><category term="算数"/><category term="論理"/><category term="CALayer"/><category term="HTMLEditor"/><category term="Leiningen"/><category term="R"/><category term="actionscript"/><category term="admob"/><category term="angular.js"/><category term="antlr"/><category term="c"/><category term="comet"/><category term="db"/><category term="flash"/><category term="ftp"/><category term="ie"/><category term="image"/><category term="interfacebuilder"/><category term="jgraph"/><category term="linux"/><category term="netbeans"/><category term="nsarray"/><category term="projecteuler"/><category term="scala"/><category term="servlet"/><category term="sqlplus"/><category term="ui"/><category term="win32"/><category term="yahooapi"/><category term="アノテーション"/><category term="エンコーディング"/><category term="ゲーム"/><category term="シリアル値"/><category term="テスト"/><category term="ヘボン式"/><category term="ポアソン分布"/><category term="失敗"/><category term="数学"/><category term="文字化け"/><category term="日付"/><category term="条件分岐"/><category term="確率"/><category term="組み合わせ"/><category term="自動化"/><category term="角丸"/><category term="設計"/><category term="設計書"/><category term="CoreFoundation"/><category term="NSDate"/><category term="NSDateComponents"/><category term="NSRect"/><category term="PaintCode"/><category term="Play!"/><category term="RGB"/><category term="StringUtils"/><category term="Thread"/><category term="UIImage"/><category term="UIView"/><category term="apache"/><category term="asm"/><category term="autolayout"/><category term="awsiot"/><category term="axis2"/><category term="book"/><category term="bytebuffer"/><category term="collections"/><category term="coredata"/><category term="couchbaselite"/><category term="dom"/><category term="dot言語"/><category term="dsl"/><category term="firefox"/><category term="game"/><category term="github"/><category term="greasemonkey"/><category term="gsp"/><category term="gwt"/><category term="h2"/><category term="haskell"/><category term="heroku"/><category term="jar"/><category term="java6"/><category term="jface"/><category term="jsrender"/><category term="jtable"/><category term="localebuilder"/><category term="lua"/><category term="map"/><category term="photoshop"/><category term="processing"/><category term="quicktime"/><category term="rfc"/><category term="smalltalk"/><category term="spritekit"/><category term="struts"/><category term="synthetica"/><category term="timingframework"/><category term="tool"/><category term="twitter4j"/><category term="uiwebview"/><category term="unicode"/><category term="uri"/><category term="url"/><category term="web"/><category term="wsdl"/><category term="まちがい"/><category term="アクアボタン"/><category term="アスキーアート"/><category term="オブジェクト指向"/><category term="オラクルメモ"/><category term="オートマトン"/><category term="クロージャ"/><category term="クロージャー"/><category term="ゲームブック"/><category term="コードアシスト"/><category term="サロゲートペア"/><category term="シェル"/><category term="ソート"/><category term="タスクトレイ"/><category term="タプル"/><category term="デッドロック"/><category term="トランザクション"/><category term="ビット"/><category term="マーキングファイル"/><category term="人物"/><category term="作業効率"/><category term="備忘録"/><category term="初歩からの数学"/><category term="基礎知識"/><category term="排他"/><category term="放送大学"/><category term="方位"/><category term="決定表"/><category term="流れるようなインターフェイス"/><category term="画像"/><category term="角度"/><category term="配列"/><category term="集合"/><category term="順列"/><category term=".net"/><category term="2016"/><category term="2017"/><category term="2D"/><category term="5GC"/><category term="AdvancedDataGrid"/><category term="AppDelegate"/><category term="ArrayCollection"/><category term="CCLayer"/><category term="CCLayerColor"/><category term="CS5"/><category term="CharsetEncoder"/><category term="CountDownLatch"/><category term="Counterclockwise"/><category term="DFS"/><category term="DI"/><category term="FutureTask"/><category term="Hunspell"/><category term="ICU"/><category term="IN"/><category term="ITIL"/><category term="JAI"/><category term="JList"/><category term="JSlider"/><category term="JoSQL"/><category term="LCP"/><category term="LanguageTool"/><category term="LinkedList"/><category term="ListSelectionListener"/><category term="NSCalendar"/><category term="NSDictionary"/><category term="NSFont"/><category term="NSScreen"/><category term="NSUserDefaults"/><category term="Queue"/><category term="RUNSCRIPT"/><category term="SuperCollider"/><category term="ThreadLocal"/><category term="UIBarButtonItem"/><category term="UIGraphicsBeginImageContextWithOptions"/><category term="UITabBarController"/><category term="UITableViewController"/><category term="UITouch"/><category term="UIViewController"/><category term="Wolfram|Alpha"/><category term="YUI"/><category term="adobe"/><category term="ajax"/><category term="amazon"/><category term="android.library=false"/><category term="aop"/><category term="api"/><category term="arc"/><category term="atom"/><category term="awt"/><category term="basic"/><category term="beansbinding"/><category term="bit"/><category term="bluetooth"/><category term="blur"/><category term="brew"/><category term="browser"/><category term="bsd"/><category term="bsf"/><category term="bufferedimage"/><category term="bug"/><category term="byteman"/><category term="ccmenu"/><category term="centos"/><category term="cgi"/><category term="chatgpt"/><category term="classpath"/><category term="cobol"/><category term="cocoapods"/><category term="concurrent"/><category term="configuration"/><category term="coreanimation"/><category term="couchbase"/><category term="cpu"/><category term="cvs"/><category term="cygwin"/><category term="db2"/><category term="dbcp"/><category term="django"/><category term="dos"/><category term="dylan"/><category term="edt"/><category term="eval"/><category term="flip"/><category term="fun"/><category term="gamecenter"/><category term="gcc"/><category term="geocode"/><category term="gesture"/><category term="google map"/><category term="graphicsbuilder"/><category term="groovly"/><category term="gui"/><category term="hava"/><category term="hex"/><category term="hsqldb"/><category term="http"/><category term="httpclient"/><category term="https"/><category term="iBeacon"/><category term="iad"/><category term="ide"/><category term="ie9"/><category term="imac"/><category term="indy"/><category term="initWithCoder"/><category term="ios6"/><category term="ios8"/><category term="ipheader"/><category term="itunesconnect"/><category term="jacob"/><category term="java tool　中途半端なtips"/><category term="java1.4"/><category term="java11"/><category term="javac"/><category term="javadoc"/><category term="javaee"/><category term="javassit"/><category term="jdk6"/><category term="jlinq"/><category term="jodd"/><category term="jsr223"/><category term="jstl"/><category term="jtree"/><category term="jude"/><category term="jxpath"/><category term="jython"/><category term="kotlin"/><category term="kuromoji"/><category term="lean4"/><category term="libxml2"/><category term="lift"/><category term="link"/><category term="linq"/><category term="lisper"/><category term="log4j"/><category term="mac"/><category term="madvoc"/><category term="math"/><category term="mercurial"/><category term="merge"/><category term="metaClass"/><category term="mixin"/><category term="mongodb"/><category term="mqtt"/><category term="mybatis"/><category term="native2ascii撲滅委員会"/><category term="nimbus"/><category term="nsstring"/><category term="openapi"/><category term="opengles"/><category term="openoffice"/><category term="openssl"/><category term="optional"/><category term="outofmemoryerror"/><category term="parser"/><category term="pascal"/><category term="pdf"/><category term="png"/><category term="poj.java"/><category term="ports"/><category term="postgresql"/><category term="preferences"/><category term="prettyPopin"/><category term="prim"/><category term="processing、グラフィック"/><category term="prolog"/><category term="rdb"/><category term="reStructuredText"/><category term="redshift"/><category term="reject"/><category term="restlet"/><category term="retina"/><category term="serverless"/><category term="simpleapi"/><category term="sjis"/><category term="spacenavigator"/><category term="sqlcode"/><category term="ssh"/><category term="stack"/><category term="stream"/><category term="suffixarray"/><category term="swiftui"/><category term="swipe"/><category term="synchronized"/><category term="terminal"/><category term="timestamp"/><category term="tips"/><category term="tool、editor"/><category term="tuple"/><category term="uberjar"/><category term="udp"/><category term="uitable"/><category term="uitableview"/><category term="uml"/><category term="unix"/><category term="utf-16"/><category term="validation"/><category term="vba"/><category term="vfs"/><category term="visualization"/><category term="vmware"/><category term="war"/><category term="web2.0"/><category term="webapi"/><category term="wwdc2013"/><category term="xargs grep linux コマンド"/><category term="xcopy"/><category term="xhtml"/><category term="xib"/><category term="yahoopipe"/><category term="あきらめた"/><category term="あとで考える"/><category term="お手軽"/><category term="お遊び"/><category term="すうがくドリル"/><category term="ものさし"/><category term="アイソメトリック"/><category term="アプリ開発"/><category term="アルゴリズム"/><category term="インタラクション"/><category term="オイラー"/><category term="オラクル"/><category term="カテゴリ"/><category term="カリー"/><category term="クラスタ"/><category term="クラスタリング"/><category term="クリップボード"/><category term="グチ"/><category term="グラデーション"/><category term="コマンド"/><category term="コメントアウト"/><category term="コンテクストメニュー"/><category term="コーディング"/><category term="コード"/><category term="コード生成"/><category term="システム"/><category term="シフト演算"/><category term="ジェネリクス"/><category term="ジェネリック"/><category term="スクラッピング"/><category term="スタックとレース"/><category term="スラング"/><category term="セグエ(Segue)"/><category term="ソケット"/><category term="ソース管理"/><category term="タグ"/><category term="チェックリスト"/><category term="テンプレートエンジン"/><category term="デザイン"/><category term="デザインパターン"/><category term="データベース"/><category term="ドキュメンテーション"/><category term="ドキュメント"/><category term="ナビゲーション"/><category term="ネットワークプログラミング"/><category term="バイトコード"/><category term="バグ"/><category term="バックグラウンド"/><category term="バッチ"/><category term="パターン"/><category term="パンくず"/><category term="パーキンソンの法則"/><category term="ファイル"/><category term="ファイル処理"/><category term="フォント"/><category term="フットサル"/><category term="フルスクリーン"/><category term="ブラウザ"/><category term="マクロ"/><category term="マニフェスト"/><category term="マルチスレッド"/><category term="メトリクス"/><category term="メモ"/><category term="モニタ"/><category term="ラベル付きブロック"/><category term="ラムダ"/><category term="ラムダ式"/><category term="ランダム"/><category term="リフレクション"/><category term="リレーショナルモデル"/><category term="リレーション"/><category term="リンク"/><category term="リンク集"/><category term="レファレンス"/><category term="一点透視"/><category term="不等号"/><category term="不透明マスク"/><category term="二分探索"/><category term="仕事が遅い"/><category term="仕様記述言語"/><category term="他力本願"/><category term="例外"/><category term="入力支援"/><category term="円周"/><category term="再帰"/><category term="分数"/><category term="分類"/><category term="単位"/><category term="可視化"/><category term="同期"/><category term="名前"/><category term="品質向上"/><category term="図形"/><category term="小tips"/><category term="帳票"/><category term="広告"/><category term="形態素解析"/><category term="待ち行列"/><category term="徒労"/><category term="悲哀"/><category term="挫折"/><category term="教育"/><category term="教訓"/><category term="数値"/><category term="数字"/><category term="文字列処理"/><category term="文法"/><category term="方式"/><category term="方式メモ"/><category term="方眼紙"/><category term="日の出"/><category term="日本語"/><category term="時間"/><category term="時間超過"/><category term="暗号"/><category term="書式"/><category term="最小公倍数"/><category term="未解決"/><category term="本"/><category term="条件"/><category term="楽観排他"/><category term="気になった"/><category term="注目"/><category term="状態"/><category term="画像効果"/><category term="疲れ"/><category term="直交表"/><category term="約数"/><category term="自力でない"/><category term="苦手"/><category term="行列"/><category term="表現方法"/><category term="規格"/><category term="解像度"/><category term="解凍"/><category term="言い回し"/><category term="言語"/><category term="計算量"/><category term="記憶力"/><category term="設定ファイル"/><category term="誤字"/><category term="資格"/><category term="透明"/><category term="透明化"/><category term="透明度"/><category term="連想配列"/><category term="金利計算"/><category term="関数型言語"/><category term="集合演算"/><category term="電子楽器"/><category term="非機能要件"/><category term="音"/><category term="風変わり"/><category term="高校数学"/><title type='text'>プログラマメモ2</title><subtitle type='html'>プログラマメモ２　小さくても大きくてもコーディングに関わるのは楽しいです、と最近ようやくいえるような気がします。</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1412</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-1798607934004494783</id><published>2025-12-27T10:06:00.015+09:00</published><updated>2025-12-27T10:59:56.471+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2025-12-22.月にAWS認定(AWS Certified Machine Learning Engineer - Associate (MLA-C01) )受けましたよ。 </title><content type='html'>&lt;div data-iframe-width=&quot;150&quot; data-iframe-height=&quot;270&quot; data-share-badge-id=&quot;ddef65a4-5b86-4c53-8be9-5e85b7f9a64b&quot; data-share-badge-host=&quot;https://www.credly.com&quot;&gt;&lt;/div&gt;&lt;script type=&quot;text/javascript&quot; async src=&quot;//cdn.credly.com/assets/utilities/embed.js&quot;&gt;&lt;/script&gt;

&lt;h3 style=&quot;text-align: left;&quot;&gt;動機&lt;/h3&gt;
&lt;p&gt;
 はい、機械学習(MLS-C01)認定の復習がてら、ようやく試験受けました。この認定は、今年できたばかりなんですよね。&lt;br/&gt;
 どうしても年内で取得してすっきりしたかったんです。&lt;br/&gt;
 現時点での認定数は12個なんですが、全冠まであと４個です。&lt;br/&gt;
 IT関連のお仕事してきた僕の集大成というか(認定ごときでとはいわないでね...)、自分でプロダクトをもちたいという希望はあって、クラウドについて学べてるのはいいですね。&lt;br/&gt;
 次は、ベータ版のAWS Certified Generative AI Developer - Professionalを考えています。&lt;br/&gt;
 ふと、自分のブログを見直したら、MLSとったのってもう２年前ぐらいだったのか...ということに気がついた.&lt;br/&gt;

  &lt;br/&gt;
&lt;/p&gt;

&lt;h3 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;結果&lt;/h3&gt;
&lt;p&gt;
 スコアは、789でした。&lt;br/&gt;
  無事、取得。720が合格ラインですが、あいかわらずな成績です。&lt;br/&gt;
  あと、今回の認定で、プラクティショナーの有効期限が伸びたのよかったですね。
&lt;/p&gt;


&lt;h3 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;学習方法&lt;/h3&gt;
&lt;p&gt;
 skillbuilder中心ですね。あとはクラウドライセンスでテストなれを実施。クラウドライセンスの問題数は少なめでしたね。１０日間でつめこみしました。&lt;br/&gt;
 skillbuilderの教材は、aws自身が作っているものだけあって、網羅してるなと思いました。&lt;br/&gt;
アルゴリズム、モデルのパフォーマンス、メトリクス、おもしろい分野だなと思います。&lt;br/&gt;
今回は、Claudeさんメインで使いました。わからないことは即質問というパターンです。&lt;br/&gt;
ただ、わからないことを即きいて、そのまま流してしまうのはよくなかったなーと思いましたね。&lt;br/&gt;
やはり、ある程度期間をもって、学習しないとどうも、頭の中で整理されていない感があって、よくないよね。&lt;br/&gt;
アクティブリコール、自分で説明する、を実践していきたいところ。&lt;br/&gt;

&lt;/p&gt;

&lt;h3 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;感想、そして反省&lt;/h3&gt;
&lt;p&gt;
 skillbuilderの模擬試験で840だったので、まあ安心しきってテスト前日は、詰め込みしなかったんですよね。あと、禁酒もしてなくて、コンディション的にはウルトラスーパーベストではなかった。&lt;br/&gt;
 今年になってAI絡みの認定が３つふえたのは時代なんでしょうね。
&lt;br/&gt; 
やはりスコアが低い、あと試験中にああ、これおぼえてないや、というのがあって、字面はみたことあるので、選択するさいの理由付けが頭の中でできなかったの多々あって、なんだかなーという気持ちに毎回なっていて、いい加減そろそろ、こういう後悔はやめにしたいなと、思うわけです。&lt;br/&gt; 次はベータ版のAI プロフェッショナルを予定しています。&lt;br/&gt;１ヶ月後をターゲットにして、しっかり学習するぞ、というのがいまの思いです。&lt;br/&gt;
&lt;br/&gt; 
僕の所属している会社は、受かったら試験代はだしてくれる制度があって、今回も利用させてもらいました。が、さすがに取得した数が増えてしまったからなのでしょうか、上位の資格をもっているから、今回だけはOKだけど、次回からはださないよーと言われました。&lt;br/&gt;
全冠になるためには、下位の認定でもとらないとだめだしなーとはいえず、僕のせいで、資格支援制度に新しく、条項が追加されてしまったのは他の社員に申し訳ないという気持ちでいったぱいなのでした。&lt;br/&gt;
まあ、所属している会社はawsのパートナーではないので僕が全冠なったとしても、会社的にはメリットないし。&lt;br/&gt;
  正直、定年までお仕事できたらいいなと思ってはいるのですが、SESの末端でやってきましたが、どうせやるならおもしろい仕事したいなーって思っています。&lt;br/&gt;
  転職か...&lt;br/&gt;仕事が向こうからやってくることになれてしまっていて、自分から積極的に動いてこなかったことに悔い残ります。&lt;br/&gt;残りのプログラマ？エンジニア？人生をどうまっとうするのか！がんばっていきましょう。m(_ _)m
  &lt;br/&gt;
&lt;/p&gt;


  &lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/12/2025-12-22awsaws-certified-machine.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-12-22.月にAWS認定(AWS Certified Machine Learning Engineer - Associate (MLA-C01) )受けましたよ。  &lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/1798607934004494783/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/1798607934004494783?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/1798607934004494783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/1798607934004494783'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2025/12/2025-12-22awsaws-certified-machine.html' title='2025-12-22.月にAWS認定(AWS Certified Machine Learning Engineer - Associate (MLA-C01) )受けましたよ。 '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-5215333094638568880</id><published>2025-11-03T11:49:00.005+09:00</published><updated>2025-11-03T13:46:07.068+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="デッドロック"/><title type='text'>Coffmanの循環待機条件 その２</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&lt;img alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEi11cuVqO0xcCRbvpDitxEHHxzJMnksTv7_klhpdBtqNIN0Xur8R7WM2Qz0awYBaAa12OguWBKHFhqUu1pd6pNSej2f_WlumtMk8kvjjSnyGqbXSJ4vy5OfxhQz7L4Th3A3mCHXn1XqvN9H1D28tMPtO7-M9R9L5VaGNQHoUzZUs_0_v6Z5xvWpAq0qR2FE&quot; /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;br&gt;&lt;br&gt;
A,B,C,Dあって行ロックするのはこれらの組み合わせ。&lt;br&gt;
ソートすれば１５通りの組み合わせだけになります。&lt;br&gt;

一回のロックでの組み合わせが、この中のものであれば、デッドロックしないよーという話。&lt;br&gt;
デッドロックするケースは、あるプロセスでは、A、B。別のプロセスでB、Aとするとデッドロック。&lt;br&gt;ORA-00060)&lt;br&gt;
が、実験した結果、クエリーを１行ずつfor updateだと、投げると簡単にデッドロックを起こせますが、IN句を使うと、おそらく問題ないです。&lt;br/&gt;
どうもoracleの実装が、僕の一億倍ぐらい賢いのかもしれません。ですので、複数行をロックする場合は、INを使ったほうがよいという結論、あと、order byなくても大丈夫っぽい。&lt;br&gt;
だめな、投げ方は&lt;br&gt;

セッション１&lt;br&gt;
SELECT * FROM test_deadlock WHERE id = &#39;A&#39; FOR UPDATE;&lt;br&gt;
SELECT * FROM test_deadlock WHERE id = &#39;B&#39; FOR UPDATE;&lt;br&gt;

セッション２&lt;br&gt;
SELECT * FROM test_deadlock WHERE id = &#39;B&#39; FOR UPDATE;&lt;br&gt;
SELECT * FROM test_deadlock WHERE id = &#39;A&#39; FOR UPDATE;&lt;br&gt;

&lt;br&gt;
OKなのは、たぶん&lt;br&gt;

セッション１&lt;br&gt;
SELECT * FROM test_deadlock WHERE id IN (&#39;A&#39;, &#39;B&#39;) FOR UPDATE;&lt;br&gt;

セッション２&lt;br&gt;
SELECT * FROM test_deadlock WHERE id IN (&#39;B&#39;, &#39;A&#39;) FOR UPDATE;&lt;br&gt;

一見だめそうだけど、OKぽい、ORDER BY なくても順番を考慮してくれてるのかなーまったくわからないけど。&lt;br&gt;</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/5215333094638568880/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/5215333094638568880?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5215333094638568880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5215333094638568880'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2025/11/blog-post.html' title='Coffmanの循環待機条件 その２'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEi11cuVqO0xcCRbvpDitxEHHxzJMnksTv7_klhpdBtqNIN0Xur8R7WM2Qz0awYBaAa12OguWBKHFhqUu1pd6pNSej2f_WlumtMk8kvjjSnyGqbXSJ4vy5OfxhQz7L4Th3A3mCHXn1XqvN9H1D28tMPtO7-M9R9L5VaGNQHoUzZUs_0_v6Z5xvWpAq0qR2FE=s72-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-376110743689525426</id><published>2025-11-03T11:34:00.008+09:00</published><updated>2025-11-03T11:41:02.300+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="sql"/><category scheme="http://www.blogger.com/atom/ns#" term="デッドロック"/><title type='text'>Coffmanの循環待機条件</title><content type='html'>お仕事で、書き込みの順序性を保つのにコードマスターにロックキーを用意して行ロック(select for update)で実現している方式に出会いました。&lt;br&gt;
なぜにコードマスターで、思わないこともないのですが、そういうものなのです。&lt;br&gt;
ロックキーは１テーブルごとへの書き込みを表現しているようで、複数のテーブルにまたがる場合には、どうするのですか。&lt;br&gt;
&lt;br&gt;
A,B,C,Dというテーブルがあって、ある処理では、A,Bのみ、別の処理では、A,B,C,Dという具合。&lt;br&gt;

直感で、やばい香りがするわけで、やばい匂いといってよいでしょう。&lt;br&gt;
もともと、no waitをつけていない。よいこのみんなは真似してはいけないよ、のデッドロック(Dead Lock)。&lt;br&gt;
こういう場合は、SQLを処理ごとにまかせるのではなく共通処理にして呼び出すというのは、多くの人が気がつくことなのでしょう。&lt;br&gt;
それでロックする順序が大事なわけです。&lt;br/&gt;
1行ロックをとる場合は、よいのですが、複数行を１セッション(プロセスといっていいのか)でロックする場合は、ロック行の順序が大事だよ。&lt;br&gt;
&lt;blockquote&gt;SELECT * FROM AAAA WHERE a IN(&#39;A&#39;,&#39;B&#39;,&#39;C&#39;,&#39;D&#39;) ORDER BY a FOR UPDATE&lt;/blockquote&gt;
ORDER BY大事よ。&lt;br&gt;

理論的な背景は僕にはないのですが、&lt;br&gt;&lt;br&gt;
&lt;br&gt;以下、クロードさんに尋ねました。&lt;br&gt;
Coffmanの4条件(デッドロック発生の必要十分条件)※必要十分条件&lt;br&gt;
&lt;br&gt;
必要条件 (Necessary Condition)&lt;br&gt;
十分条件 (Sufficient Condition)&lt;br&gt;
必要十分条件 (Necessary and Sufficient Condition)&lt;br&gt;

&lt;br&gt;
Mutual Exclusion (相互排除)&lt;br&gt;
Hold and Wait (保持と待機)&lt;br&gt;
No Preemption (非横取り/非プリエンプション)&lt;br&gt;
Circular Wait (循環待機)&lt;br&gt;&lt;br&gt;&lt;br&gt;
以下、クロードさんに考えてもらったブルグのタイトルと内容&lt;br&gt;
Coffmanの4条件、実務で崩せるのは実質1つ説」&lt;br&gt;
実務的には:&lt;br&gt;&lt;br&gt;

相互排除: 崩せない(ロックは必要)&lt;br&gt;
保持と待機: 崩しにくい(トランザクション分割は難しい)&lt;br&gt;
非横取り: 崩せない(DBMS仕様)&lt;br&gt;
循環待機: ORDER BYで崩せる! ← ここがポイント&lt;br&gt;&lt;br&gt;


</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/376110743689525426/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/376110743689525426?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/376110743689525426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/376110743689525426'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2025/11/coffman.html' title='Coffmanの循環待機条件'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-4865085548429118273</id><published>2025-10-14T23:52:00.005+09:00</published><updated>2025-10-19T23:10:17.982+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2025-10-13.月にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 </title><content type='html'>&lt;div data-iframe-width=&quot;150&quot; data-iframe-height=&quot;270&quot; data-share-badge-id=&quot;d94e1ccc-f687-4410-b45c-b54994240d48&quot; data-share-badge-host=&quot;https://www.credly.com&quot;&gt;&lt;/div&gt;&lt;script type=&quot;text/javascript&quot; async src=&quot;//cdn.credly.com/assets/utilities/embed.js&quot;&gt;&lt;/script&gt;

&lt;h3 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;閑話休題&lt;/h3&gt;
&lt;p&gt;
 Perfumeがコールドスリープだそうですね。ちょっと寂しい気分になっております。
  &lt;/p&gt;



&lt;h3 style=&quot;text-align: left;&quot;&gt;動機&lt;/h3&gt;&lt;p&gt;全冠の夢再びということで、あと5つの最初の１つ目ということで。&lt;/p&gt;&lt;p&gt;僕の所属している会社は、AWSのパートナーではないので、全冠取ったとしても名前はどこにものらないです。ですが、２ヶ月半で取る人は取る全冠。あこがれでしょ、それなにり学習しないといけないわけですし。&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;結果&lt;/h3&gt;&lt;p&gt;&amp;nbsp;スコアは786で合格.が、危ういですね。甘くみすぎていた..というのも、このテストは&lt;/p&gt;&lt;h3 class=&quot;post-title entry-title&quot;&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot;&gt;今年{2024-01-12.金}にAWS認定(DEA-C01)受けましたよ。 おちました。
&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;だったんです。その時は、英語でベータ版で受けたのですが。当時は637でした。&amp;nbsp;&lt;/p&gt;&lt;p&gt;さすがに今回は勉強したので、なんとかいくだろうと思ってはいましたが、前々日にskillbuilderの模試で68%だったので、ああああああ、Orz..となっていたわけです。&lt;/p&gt;&lt;p&gt;１問あたり２分かかっていて、あとは、まちがう場合は時間がかかっているような気がしています。５０秒ぐらいで解答できる場合は、これは完璧OKみたいな。&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;学習方法&lt;/h3&gt;&lt;p&gt;skillbuilder、サブスクです。１５時間のコースがあったので、それを受講して、全体を把握。が、試験とはまあ違いますが、全体を見渡せるようになれる気がする。動画は1.25倍速。日本語字幕。受け身だとどうしても睡魔が。でも、よくできていますよねー、英語で理解できたら、まあ、いいんだろうなーと思いつつ、なんせ、AWSのドキュメントでの自動翻訳のタイトルのひどさは、あれはひどいよなーと思っているのですが、あれは普通なのでしょうか。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;学習期間は２週間と少しだったかな。あと禁酒しましたよ。禁酒したから受かるというわけではないですが、覚悟ですよ。覚悟。こんなときに限って呑みさそわれてするわけでして、友達少ないから、ああ、となるわけです。&amp;nbsp;&lt;/p&gt;&lt;p&gt;今回は、あまり印刷しなかったですかね。chatgpt,claudeさんに質問しながら、サービスとか製品、用語の確認をしましたね。chatgpt、claudeさん上にAWS認定ようのプロジェクトを用意して、やりとりをあとから参照しやすくはしています。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;クラウドライセンスも今回利用させてもらっています。問題は少なめでした、やはり試験の雰囲気を掴めるのがいいですよね。解説のリンクがAWSの公式のドキュメントにたいしてあるのがいいですね。そんこと期待している人はそうそういないとは思いますが、問題の的中なんてないんだからそういところに期待してはだめだと思いますよ。&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;感想、そして反省&lt;/h3&gt;&lt;p&gt;&amp;nbsp;今回は試験の見直しをぎりぎりまでしました。が、選択肢かえて、見直してしまって、そこでタイムオーバーになってしまし、選択を戻すことができず、この問題、絶対落としたと、鬱でした。試験が終わって、有楽町のドイツビール屋さんで、ぐわっとヴァイスビアをのんだのでした。&lt;/p&gt;&lt;p&gt;毎回、次こそはしっかり勉強して夢の９００点台と思うのですが、無理だろうなー、どういうふうに勉強すればよいのかわからないです。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;style type=&quot;text/css&quot;&gt;p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Helvetica; color: #000000}&lt;/style&gt;&lt;/p&gt;

&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/4865085548429118273/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/4865085548429118273?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4865085548429118273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4865085548429118273'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html' title='2025-10-13.月にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-2802731645489626920</id><published>2025-03-16T18:05:00.004+09:00</published><updated>2025-10-19T23:07:09.325+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2025-02-24.月にAWS認定(SCS-C02)受けましたよ。 </title><content type='html'>&lt;div data-iframe-width=&quot;150&quot; data-iframe-height=&quot;270&quot; data-share-badge-id=&quot;ba27f6a0-5c36-4516-8676-cdc670ae230b&quot; data-share-badge-host=&quot;https://www.credly.com&quot;&gt;&lt;/div&gt;&lt;script type=&quot;text/javascript&quot; async src=&quot;//cdn.credly.com/assets/utilities/embed.js&quot;&gt;&lt;/script&gt;
&lt;h3&gt;動機&lt;/h3&gt;
&lt;p&gt;学習している感じが好きだから。&lt;/p&gt;
&lt;p&gt;いままで、低スコアのぎりぎりの合格だったので、ここいらで900点オーバのハイスコア合格を目指したい....だったのだけど。&lt;/p&gt;


&lt;h3&gt;結果&lt;/h3&gt;
&lt;p&gt;スコアは766点で合格できました。&lt;/p&gt;
&lt;p&gt;ぎりぎりでした。いままでの中で一番ぎりぎりかも。
&lt;/p&gt;
&lt;h3&gt;学習方法&lt;/h3&gt;
&lt;p&gt;skill builder(Exam Prep Enhanced Course: AWS Certified Security - Specialty (SCS-C02 - 日本語))がメインですね。約２周しました。&lt;/p&gt;
&lt;p&gt;二周目でようやく用語が頭にはいりはじめました。&lt;/p&gt;
&lt;p&gt;AWS Well-Architedcted フレームワークのセキュリティの柱(https://docs.aws.amazon.com/ja_jp/wellarchitected/latest/security-pillar/welcome.html)を印刷して読みました。大体230ページぐらいです。現場のお昼休みを使ってこつこつ読んだのですが、あまり身にならなかったのが悔やまれます。&lt;/p&gt;
&lt;p&gt;クラウドライセンスの練習問題も利用しましたが、全部こなしたわけではなかったです。クラウドライセンスで試験前までの成果率は60%いっていない状態で試験は受けました。&lt;/p&gt;
&lt;p&gt;今回は、参考書使おうかなと思い本屋にいってみたのですが、ちょっと内容がうすいような気がして購入はやめました（僕がいうのもなんですが）。&lt;/p&gt;
&lt;p&gt;前前日に、skill builderのフル問題(65問)をやったらこれまた71%だったので、もうあきらめモードでしたよ。&lt;/p&gt;
&lt;p&gt;あきらめモードでしたが、あきらめるわけにはいかないので模擬試験でまちがえた問題は、なぜまちがえたのかを含めて試験前日見直しをしました。そこそこ時間かかる作業です。解答に近づくための考え方が、重要かなと思います。選択肢をせばめる、根拠をもって選択するという作業をおろそかにしてはだめだなと。僕の場合、反射神経的に答えるがよくないかなと。&lt;/p&gt;
&lt;p&gt;IAM大事です。いくつかの試験には合格してきましたが、いまの僕では実際の設計、運用はあやしいい...&lt;/p&gt;
&lt;p&gt;勉強はしっかりしましょう。自分&lt;/p&gt;
&lt;h3&gt;お酒はひかえめに、そして運動したりリフレッシュしたほうがよいです。&lt;/h3&gt;
&lt;p&gt;運動は定期的にしたほうがよいと思います。ウォーキングしたり、遠いところみたりとか、ストレッチしたりとか、寒い日こそ、外で散歩したほうがよかったかなーと。&lt;/p&gt;

&lt;h3&gt;次こそは！&lt;/h3&gt;
&lt;p&gt;
 次は、アソシエイトのデータエンジニアを受験しようと考えています。この試験は、ベータ試験を受験をしておちたテストなのでした。次こそは、ハイスコア！
&lt;/p&gt;


&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
						</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/2802731645489626920/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/2802731645489626920?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2802731645489626920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2802731645489626920'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html' title='2025-02-24.月にAWS認定(SCS-C02)受けましたよ。 '/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-4849685124204129705</id><published>2025-01-26T14:42:00.009+09:00</published><updated>2025-10-19T23:06:43.536+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2025-01-13.月にAWS認定(AIF-C01)受けましたよ。</title><content type='html'>&lt;div data-iframe-width=&quot;150&quot; data-iframe-height=&quot;270&quot; data-share-badge-id=&quot;18028ab9-b1be-4a83-8e01-9528f8c0692c&quot; data-share-badge-host=&quot;https://www.credly.com&quot;&gt;&lt;/div&gt;&lt;script type=&quot;text/javascript&quot; async src=&quot;//cdn.credly.com/assets/utilities/embed.js&quot;&gt;&lt;/script&gt;
&lt;h3&gt;動機&lt;/h3&gt;
&lt;p&gt;おととしはawsを使った開発をしているとこにいたので、周りに追いつかねばというモチベだったのですが、いま、まったく違う環境になってしまって、モチベはがたおちだったのですが、学習するのは好きなので、受けてみました。&lt;/p&gt;
&lt;p&gt;しかし、昨年、試験予約して一週間まえあたりまで勉強してなくて、試験をリスケしようと思ったら、先の先まで予約でうまっていて...とりあえず、詰め込みで..&lt;/p&gt;

&lt;h3&gt;結果&lt;/h3&gt;
&lt;p&gt;スコアは813点で合格できました。&lt;/p&gt;
&lt;p&gt;結果は、当日の20時ぐらいにわかりましたよ。
&lt;/p&gt;
&lt;h3&gt;学習方法&lt;/h3&gt;
&lt;p&gt;昨年は、少しづつですが、skill builderを使ってちょこちょこ学習していたので、なんとか。&lt;/p&gt;
&lt;p&gt;今回は、問題練習ははじめてudemyを利用してみましたよ。お正月割引！？があったので。あとはクラウドライセンスも課金しました。&lt;/p&gt;
&lt;p&gt;mls対策時にいろいろ印刷して作っていた教材をすててなかったので、それをほりおこしつつ、skill builderで全体像を掴みました。&lt;/p&gt;
&lt;p&gt;前日に、skill builderのフル問題(65問)をやったら71%だったので、かなり不安でした。&lt;/p&gt;
&lt;p&gt;skill builderはいいですね。おすすめです。&lt;/p&gt;
&lt;h3&gt;悲報...&lt;/h3&gt;
&lt;p&gt;
僕の現在、所属している会社では、MLS認定を昨年合格していたのでこの試験の報奨金がでないということに...&lt;br/&gt;気持ちはわからないでもないけども.
&lt;/p&gt;

&lt;p&gt;
 次は、セキュリティを受験しようと考えています。その後で、G検定、そのあとで、残りAWS認定にチャレンジ。しっかりした点数で合格できるように計画的に学習していきたいですね。
&lt;/p&gt;


&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
						</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/4849685124204129705/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/4849685124204129705?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4849685124204129705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4849685124204129705'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html' title='2025-01-13.月にAWS認定(AIF-C01)受けましたよ。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-2624473888704677052</id><published>2024-10-13T14:46:00.006+09:00</published><updated>2024-10-13T14:47:22.993+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="aws"/><category scheme="http://www.blogger.com/atom/ns#" term="serverless"/><title type='text'>servelessでstepfunctionsをデプロイしてそのarnをパラメーターストアに保存したい。</title><content type='html'>表題の通りなのですが、プラグインを使わないとえらく大変で、結局プラグインを用意して実現しました。&lt;br/&gt;

プラグイン自体はクロード(Claude)さんに生成してもらっています。&lt;br/&gt;

プラグインって大変だなーとはじめ思ってたのですが、やってみると案外簡単で、プラグインってデプロイ時のイベントで動いていると思えば、そのタイミングでやりたいことをやればよし。ここでは、&#39;after:deploy:deploy&#39;ですね。&lt;br/&gt;

&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;
import { SSMClient, PutParameterCommand } from &quot;@aws-sdk/client-ssm&quot;;
import { CloudFormationClient, DescribeStacksCommand } from &quot;@aws-sdk/client-cloudformation&quot;;

class StoreArnsPlugin {
  constructor(serverless, options) {
    this.serverless = serverless;
    this.options = options;
    this.hooks = {
      &#39;after:deploy:deploy&#39;: this.storeArns.bind(this),
    };
  }

  async storeArns() {
    const region = this.serverless.service.provider.region;
    const ssmClient = new SSMClient({ region });
    const cfClient = new CloudFormationClient({ region });
    const stackName = `${this.serverless.service.service}-${this.serverless.service.provider.stage}`;

    try {
      // CloudFormationスタックの出力を取得
      const { Stacks } = await cfClient.send(new DescribeStacksCommand({ StackName: stackName }));
      const outputs = Stacks[0].Outputs;

      // Step FunctionsのARNを見つける
      const stepFunctionOutput = outputs.find(output =&gt; 
        output.OutputValue.startsWith(&#39;arn:aws:states:&#39;) &amp;&amp; 
        output.OutputValue.includes(&#39;:stateMachine:&#39;)
      );

      if (!stepFunctionOutput) {
        throw new Error(&#39;Step Functions ARN not found in CloudFormation outputs&#39;);
      }

      const stepFunctionArn = stepFunctionOutput.OutputValue;

      // ARNをParameter Storeにセキュアに保存
      const parameterName = `/my-service/${this.serverless.service.provider.stage}/step-function-arn`;
      await ssmClient.send(new PutParameterCommand({
        Name: parameterName,
        Value: stepFunctionArn,
        Type: &#39;SecureString&#39;,
        Overwrite: true,
      }));

      this.serverless.cli.log(`Securely stored Step Functions ARN in Parameter Store: ${parameterName}`);
      this.serverless.cli.log(`Step Functions ARN: ${stepFunctionArn}`);
    } catch (error) {
      this.serverless.cli.log(`Error storing ARN: ${error.message}`);
    }
  }
}

export default StoreArnsPlugin;

&lt;/code&gt;&lt;/pre&gt;


</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/2624473888704677052/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/2624473888704677052?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2624473888704677052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2624473888704677052'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/10/servelessstepfunctionsarn.html' title='servelessでstepfunctionsをデプロイしてそのarnをパラメーターストアに保存したい。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-5102250427926767825</id><published>2024-10-13T11:03:00.001+09:00</published><updated>2024-10-13T11:03:17.227+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="aws"/><title type='text'>リソースが増える一方なこの世界</title><content type='html'>生成AIすごいですよね。アイデアがあれば、コードさくっとね。
いろいろやっていきたいところです。&lt;br/&gt;


さて、たいした話ではないですが、クラウドフロントのオリジンは複数用意できるよというのと、ドメインも複数つけれる？
で、なぜ、そういうことをいまさらなのかといいますと、リソースが増える一方なので、工夫というか設計というか、そのあたりでね。
</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/5102250427926767825/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/5102250427926767825?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5102250427926767825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5102250427926767825'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/10/blog-post.html' title='リソースが増える一方なこの世界'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-7105187551553838074</id><published>2024-09-21T18:49:00.000+09:00</published><updated>2024-09-21T18:49:05.594+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blogger"/><title type='text'>Bloggerのテンプレート変更していくぞ計画</title><content type='html'>ここでメモをしておけば、あとで見返すであろう(自分)。
&lt;br/&gt;

&lt;a href=&quot;https://blogger-learning-rab.blogspot.com/2020/08/blogger-jisaku-02.html#chapter-10&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;https://blogger-learning-rab.blogspot.com/2020/08/blogger-jisaku-02.html#chapter-10&lt;/a&gt;

&lt;br/&gt;
mustacheを使って細かくファイルにしていくのはうまくいきそうな感じなので、これはこれでよくて。&lt;br/&gt;
構造(テンプレー)にたいする理解がないからそっち補強しつつ。&lt;br/&gt;

記事ならpartial/postに記事用のデザイン部品とか集めておきたいよね。
&lt;br/&gt;
とは思ったのだけど、テンプレートタグでフォルダきる？&lt;br/&gt;
includableは定義でidが必要。includeでincludableを取り込む。取り込む際に指定するのはname。

&lt;br/&gt;
section＞widget、includable、includeって感じなのか
&lt;br/&gt;
整理しないと何年やってもピンとこないなー
&lt;br/&gt;
sectionにはガジェットを乗せることができる。
&lt;br/&gt;
Bloggerガジェット（＝ウィジェット）ということらしい。&lt;br/&gt;
「セクションは主に「ヘッダー」「メイン」「サイドバー」「フッター」で使われる。」ということらしい&lt;br/&gt;
なのでpartial/*section*/でフォルダを作成してそこセクションにのせるものの管理をするとか。&lt;br/&gt;
&lt;br/&gt;

&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;

</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/7105187551553838074/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/7105187551553838074?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/7105187551553838074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/7105187551553838074'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/09/blogger_21.html' title='Bloggerのテンプレート変更していくぞ計画'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-3187544283751928090</id><published>2024-09-16T19:22:00.003+09:00</published><updated>2024-09-16T19:22:40.378+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="aws"/><category scheme="http://www.blogger.com/atom/ns#" term="方式メモ"/><title type='text'>本日の方式メモ - CSV一括登録</title><content type='html'>&lt;a href=&quot;https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/avoid-exec-failures.html&quot; target=&quot;_blank&quot;&gt;https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/avoid-exec-failures.html&lt;/a&gt;
&lt;br/&gt;

よくあるCSV一括登録をラムダ単体でなくstepfunctionsで組むはなし。&lt;br/&gt;
はじめ、stateからそのままデータを次に渡してやろうとしてはじめて256kbの壁にぶちあたったのであった。&lt;br/&gt;

クロードさんにお尋ねして、S3で小分けにしなよ、という話で、そういうふうにやったらうまくいった。おそらく、実行時間もいい感じなのだろう。&lt;br/&gt;

serverlessでやっていて、そこでつまずいて数時間時間を費やしたのは内緒でもない。&lt;br/&gt;
おもしろかったのは、ラムダの中でs3から値をとるのではなく、stepfunctionsのtaskを使って前段で値をとってそのまま流すという作り。後段のラムダは引数でもらったペイロードを処理するという感じ。切り分けでできているな。&lt;br/&gt;
</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/3187544283751928090/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/3187544283751928090?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/3187544283751928090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/3187544283751928090'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/09/csv.html' title='本日の方式メモ - CSV一括登録'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-2418054756651755948</id><published>2024-09-16T18:58:00.003+09:00</published><updated>2024-09-16T18:58:13.624+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="雑記"/><title type='text'>僕はコピペマシン</title><content type='html'>クロードさんは、僕の中ではどちらかといえば、フェミニンな感じがしているのだが、生成AIに性別があるわけはないので、まあ、そう僕が信じたいだけなんだとは思う。
午前中は、プロンプト考えて、あーいえば、こーかえってくるかなと考えるけど、夕方あたりになると、コピペして、コンパイルエラーを告げて、またコピペしての繰り返しで、僕はコピペしかしていないなと思うのであった。
自分でコード書くよりはるかに生成がはやい。おまけにいいアドバイスをくれるのだけど、だんだん読まなくなってしまう。</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/2418054756651755948/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/2418054756651755948?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2418054756651755948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2418054756651755948'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/09/blog-post.html' title='僕はコピペマシン'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-7032713891205246258</id><published>2024-09-14T21:03:00.003+09:00</published><updated>2024-09-14T21:03:42.695+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blogger"/><title type='text'>Bloggerのテンプレートをいじるのがつらい</title><content type='html'>一年に３度はブログのデザインを変えたい思うわけですが、そのたびにBloggerのテンプレートひらいて絶望にかられるわけです。
&lt;br/&gt;
記事書きたくても見た目を思い通りにできないだけで気持ちがしゅんとなりますよね...
&lt;br/&gt;
ChatGPT o1-previewを使ってまえまえからもっているアイデアをそろそろ取り掛かってみたいなと思ったわけです。
&lt;br/&gt;
ずばりあのつらいXMLをなんとかするぞということで、Mustacheテンプレートをつかって、いくつかのパートに分けてレンダリングして最終的なXMLするというものです。うまくいくのだろうか...いったんとりかかることにします。
</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/7032713891205246258/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/7032713891205246258?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/7032713891205246258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/7032713891205246258'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/09/blogger.html' title='Bloggerのテンプレートをいじるのがつらい'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-2318413236909775977</id><published>2024-07-28T16:14:00.003+09:00</published><updated>2024-07-28T16:14:48.401+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ios"/><category scheme="http://www.blogger.com/atom/ns#" term="xcode"/><title type='text'>ios import でモジュールの補完がでてこない場合は、実機が必要かもよというはなし</title><content type='html'>暑いですね。みなさまいかがおすごしのことでしょうか。フジロックとかにいってたりするのでしょうか。

さて、17.2から使えるようになったジャーナルの提案機能を調査しているところです。

それで、xocdeのバージョンをあげて、さあコードでしらべようとしているて、


import JournalingSuggestions

でそんなのないよ(No such module)とエラーに...

そんな場合は、実機をmacにつなげましょうという話


</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/2318413236909775977/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/2318413236909775977?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2318413236909775977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2318413236909775977'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/07/ios-import.html' title='ios import でモジュールの補完がでてこない場合は、実機が必要かもよというはなし'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-2259016421610782151</id><published>2024-06-02T13:17:00.006+09:00</published><updated>2024-06-02T13:36:45.067+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="swift"/><title type='text'>(swift)if判定して値を返して変数に直接に入れるみたいな - if式 (その２)</title><content type='html'>&lt;h3&gt;メモを帳をみなさんどうしていますか。&lt;/h3&gt;
&lt;p&gt;
  ぜひおすすめなのでトラベラーズノート。
  &lt;br /&gt;
  &lt;a href=&quot;https://amzn.to/3V9Az0D&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;
    &gt;トラベラーズノート(amazon)&lt;/a
  &gt;
&lt;/p&gt;

&lt;h3&gt;「must be a single expression」という制約&lt;/h3&gt;

&lt;p&gt;このような書き方はできない&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;swift&quot;&gt;
do { // この書き方はできない
    // let s: Int? = 100
    // let a = if let a = s {
    //     let b = a + 100
    //     String(format: &quot;ok \(b)&quot;)
    // } else {
    //     String(format: &quot;not 100&quot;)
    // }
    // print(&quot;*** ok a:\(a)&quot;)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;クロージャ(無名関数？)を使えばいいのではないかという結論&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;swift&quot;&gt;
do { // 中身をクロージャにすると複数行でもかける
    let s: Int? = 100
    let a = if let a = s {
        { let b = a + 100
            return String(format: &quot;ok \(b)&quot;)
        }()
    } else {
        String(format: &quot;not 100&quot;)
    }
    print(&quot;*** ok a:\(a)&quot;)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;h3&gt;僕にとって、if式がなぜそんなに嬉しいのか。&lt;/h3&gt;

&lt;p&gt;
  手続きで考えれば、ある変数に値を編集して入れる場合、編集する内容を、代入する変数の前に書くのがまあ普通のことかと思います。&lt;br /&gt;
  ただ、どうも僕はそのような書き方が好きでないようなんですよね。&lt;br /&gt;まあ、多くの人にとってはたいした問題ではないと思いますが、このif式のような書き方(表現の仕方)が、いいんですよね...もうちょっと深掘り(deepなdive)してみたいですね
&lt;/p&gt;
</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/2259016421610782151/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/2259016421610782151?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2259016421610782151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/2259016421610782151'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/06/swiftif-if.html' title='(swift)if判定して値を返して変数に直接に入れるみたいな - if式 (その２)'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-135897856217511005</id><published>2024-06-02T12:50:00.007+09:00</published><updated>2024-06-02T13:09:22.362+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="swift"/><title type='text'>(swift)if判定して値を返して変数に直接に入れるみたいな - if式</title><content type='html'>&lt;h3&gt;メモを帳をみなさんどうしていますか。&lt;/h3&gt;
&lt;p&gt;
  最近のマイ流行りは、トラベラーズノート。かなり昔に買っていたのですが、引越しのために整理していて、出てきたのですが、実は、このノートに自分が必要としているものが全て詰まっていたのではないかと。
  &lt;br /&gt;
  &lt;a href=&quot;https://amzn.to/3V9Az0D&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;
    &gt;トラベラーズノート(amazon)&lt;/a
  &gt;
&lt;/p&gt;

&lt;h3&gt;if判定して値を返して変数に直接に入れるみたいな&lt;/h3&gt;

&lt;pre&gt;&lt;code class=&quot;swift&quot;&gt;
do {
    let s: String? = &quot;test&quot;
    let a = if let a = s {
        String(format: &quot;ok \(a)&quot;)
    } else {
        String(format: &quot;ok nil&quot;)
    }
    print(&quot;*** ok a:\(a)&quot;)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;
  分かりずらい例かとは思いますが、オプショナルな値に値があるか判定しつつ、その結果を変数に代入しているような感じだと思います。&lt;br /&gt;
  他の言語はよくわからないのですが、この書き方をしたかったんですよね。三項演算子は、いろいろな言語にあるとは思います。&lt;br /&gt;
  この書き方は、どうでしょうか。&lt;br/&gt;
&lt;/p&gt;

&lt;h3&gt;参考&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;
    &lt;a
      href=&quot;https://github.com/apple/swift-evolution/blob/main/proposals/0380-if-switch-expressions.md&quot;
      rel=&quot;nofollow&quot;
      target=&quot;_blank&quot;
      &gt;if and switch expressions -
      https://github.com/apple/swift-evolution/blob/main/proposals/0380-if-switch-expressions.md&lt;/a
    &gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;a
      href=&quot;https://www.hackingwithswift.com/swift/5.9/if-switch-expressions&quot;
      rel=&quot;nofollow&quot;
      target=&quot;_blank&quot;
      &gt;if and switch expressions Available from Swift 5.9 -
      https://www.hackingwithswift.com/swift/5.9/if-switch-expressions&lt;/a
    &gt;
  &lt;/li&gt;
&lt;/ul&gt;
</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/135897856217511005/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/135897856217511005?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/135897856217511005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/135897856217511005'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/06/if.html' title='(swift)if判定して値を返して変数に直接に入れるみたいな - if式'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-276124006710277555</id><published>2024-05-18T22:21:00.007+09:00</published><updated>2024-05-18T23:41:01.722+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="chatgpt"/><category scheme="http://www.blogger.com/atom/ns#" term="swiftui"/><category scheme="http://www.blogger.com/atom/ns#" term="UIImage"/><title type='text'>目玉のようなグラフィック</title><content type='html'>&lt;h3&gt;人生ままならないものですね。&lt;/h3&gt;
&lt;p&gt;
自分がこうあって欲しいと思う状況から、ほど遠く。そろそろ真剣にお酒とのお付き合いをしていかないとねー
&lt;/p&gt;


&lt;h3&gt;swiftuiでまず描きます&lt;/h3&gt;
&lt;p&gt;
久々にグラフィックツールを触りました。といってもたいした絵を描くわけではいのですが。使ったツールはSketch, Paintcode。あとはChatGPTですね。Paintcodeで生成されたコードをchatGPTで変換してもらってますが、実は、そんなにすんなりは行きませんでした。ききかたが悪いでしょうね。僕の。
&lt;/p&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl2g70o17GqAZ6T6sSAGFd5ZnOAPOcZKHWNSqyyV8W2EJIfeiEfoPQLFXHIeZ7aI51lNZSSbNB2UqNwQA1ai8xqWymigtBTIyeHRUlKiHD_r8GqaEax0Ti7xeZNxZVPcrAD8uQvOi2sna5B5Xv7q_rW2y4DFHed7PN80oWZSR9Jbo-Au5rgSh11SL04pf0/s245/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A3.png&quot; style=&quot;display: block; padding: 1em 0; text-align: center; &quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; width=&quot;100&quot; data-original-height=&quot;243&quot; data-original-width=&quot;245&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl2g70o17GqAZ6T6sSAGFd5ZnOAPOcZKHWNSqyyV8W2EJIfeiEfoPQLFXHIeZ7aI51lNZSSbNB2UqNwQA1ai8xqWymigtBTIyeHRUlKiHD_r8GqaEax0Ti7xeZNxZVPcrAD8uQvOi2sna5B5Xv7q_rW2y4DFHed7PN80oWZSR9Jbo-Au5rgSh11SL04pf0/s400/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A3.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;swift&quot;&gt;
        // Drawing container
        ZStack {
            // First shape with fillColor
            Path { path in
                path.move(to: CGPoint(x: 114, y: 0))
                path.addCurve(to: CGPoint(x: 228, y: 114), control1: CGPoint(x: 176.96, y: 0), control2: CGPoint(x: 228, y: 51.04))
                path.addCurve(to: CGPoint(x: 114, y: 228), control1: CGPoint(x: 228, y: 176.96), control2: CGPoint(x: 176.96, y: 228))
                path.addCurve(to: CGPoint(x: 0, y: 114), control1: CGPoint(x: 51.04, y: 228), control2: CGPoint(x: 0, y: 176.96))
                path.addCurve(to: CGPoint(x: 114, y: 0), control1: CGPoint(x: 0, y: 51.04), control2: CGPoint(x: 51.04, y: 0))
                path.closeSubpath()
                
                path.move(to: CGPoint(x: 114, y: 33))
                path.addCurve(to: CGPoint(x: 33, y: 114), control1: CGPoint(x: 69.26, y: 33), control2: CGPoint(x: 33, y: 69.26))
                path.addCurve(to: CGPoint(x: 114, y: 195), control1: CGPoint(x: 33, y: 158.74), control2: CGPoint(x: 69.26, y: 195))
                path.addCurve(to: CGPoint(x: 195, y: 114), control1: CGPoint(x: 158.74, y: 195), control2: CGPoint(x: 195, y: 158.74))
                path.addCurve(to: CGPoint(x: 114, y: 33), control1: CGPoint(x: 195, y: 69.26), control2: CGPoint(x: 158.74, y: 33))
                path.closeSubpath()
            }
            .fill(Color(red: 0.129, green: 0.129, blue: 0.537))
            
            // Second shape with fillColor2
            Path { path in
                path.move(to: CGPoint(x: 114.5, y: 160))
                path.addCurve(to: CGPoint(x: 161, y: 113.5), control1: CGPoint(x: 140.18, y: 160), control2: CGPoint(x: 161, y: 139.18))
                path.addCurve(to: CGPoint(x: 114.5, y: 67), control1: CGPoint(x: 161, y: 87.82), control2: CGPoint(x: 140.18, y: 67))
                path.addCurve(to: CGPoint(x: 68, y: 113.5), control1: CGPoint(x: 88.82, y: 67), control2: CGPoint(x: 68, y: 87.82))
                path.addCurve(to: CGPoint(x: 114.5, y: 160), control1: CGPoint(x: 68, y: 139.18), control2: CGPoint(x: 88.82, y: 160))
                path.closeSubpath()
            }
            .fill(Color(red: 0.965, green: 0.773, blue: 0.0))
        }.background(Color.black) // VStackの背景を黒に設定
&lt;/code&gt;&lt;/pre&gt;

&lt;h3&gt;UIImageにしてみたコード&lt;/h3&gt;
&lt;p&gt;コードで表現できたので、大きくしたり小さくしたり、いろいろできることでしょう。&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;swift&quot;&gt;
import UIKit

func createImage() -&gt; UIImage? {
    let size = CGSize(width: 228, height: 228) // 画像のサイズを設定
    UIGraphicsBeginImageContextWithOptions(size, false, 0) // 透明背景のImage Contextを開始

    // 最初のベジェ曲線を描画
    let fillColor = UIColor(red: 0.129, green: 0.129, blue: 0.537, alpha: 1.000)
    fillColor.setFill()
    let bezierPath = UIBezierPath()
    bezierPath.move(to: CGPoint(x: 114, y: 0))
    bezierPath.addCurve(to: CGPoint(x: 228, y: 114), controlPoint1: CGPoint(x: 176.96, y: 0), controlPoint2: CGPoint(x: 228, y: 51.04))
    bezierPath.addCurve(to: CGPoint(x: 114, y: 228), controlPoint1: CGPoint(x: 228, y: 176.96), controlPoint2: CGPoint(x: 176.96, y: 228))
    bezierPath.addCurve(to: CGPoint(x: 0, y: 114), controlPoint1: CGPoint(x: 51.04, y: 228), controlPoint2: CGPoint(x: 0, y: 176.96))
    bezierPath.addCurve(to: CGPoint(x: 114, y: 0), controlPoint1: CGPoint(x: 0, y: 51.04), controlPoint2: CGPoint(x: 51.04, y: 0))
    bezierPath.close()
   

    // 内側のベジェ曲線を描画
    bezierPath.move(to: CGPoint(x: 114, y: 33))
    bezierPath.addCurve(to: CGPoint(x: 33, y: 114), controlPoint1: CGPoint(x: 69.26, y: 33), controlPoint2: CGPoint(x: 33, y: 69.26))
    bezierPath.addCurve(to: CGPoint(x: 114, y: 195), controlPoint1: CGPoint(x: 33, y: 158.74), controlPoint2: CGPoint(x: 69.26, y: 195))
    bezierPath.addCurve(to: CGPoint(x: 195, y: 114), controlPoint1: CGPoint(x: 158.74, y: 195), controlPoint2: CGPoint(x: 195, y: 158.74))
    bezierPath.addCurve(to: CGPoint(x: 114, y: 33), controlPoint1: CGPoint(x: 195, y: 69.26), controlPoint2: CGPoint(x: 158.74, y: 33))
    bezierPath.close()
    bezierPath.fill()

    // 2番目のベジェ曲線を描画
    let fillColor2 = UIColor(red: 0.965, green: 0.773, blue: 0.000, alpha: 1.000)
    fillColor2.setFill()
    let bezier2Path = UIBezierPath()
    bezier2Path.move(to: CGPoint(x: 114.5, y: 160))
    bezier2Path.addCurve(to: CGPoint(x: 161, y: 113.5), controlPoint1: CGPoint(x: 140.18, y: 160), controlPoint2: CGPoint(x: 161, y: 139.18))
    bezier2Path.addCurve(to: CGPoint(x: 114.5, y: 67), controlPoint1: CGPoint(x: 161, y: 87.82), controlPoint2: CGPoint(x: 140.18, y: 67))
    bezier2Path.addCurve(to: CGPoint(x: 68, y: 113.5), controlPoint1: CGPoint(x: 88.82, y: 67), controlPoint2: CGPoint(x: 68, y: 87.82))
    bezier2Path.addCurve(to: CGPoint(x: 114.5, y: 160), controlPoint1: CGPoint(x: 68, y: 139.18), controlPoint2: CGPoint(x: 88.82, y: 160))
    bezier2Path.close()
    bezier2Path.fill()

    let image = UIGraphicsGetImageFromCurrentImageContext() // 画像を取得
    UIGraphicsEndImageContext() // Image Contextを終了

    return image
}
&lt;/code&gt;&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/276124006710277555/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/276124006710277555?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/276124006710277555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/276124006710277555'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/blog-post.html' title='目玉のようなグラフィック'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl2g70o17GqAZ6T6sSAGFd5ZnOAPOcZKHWNSqyyV8W2EJIfeiEfoPQLFXHIeZ7aI51lNZSSbNB2UqNwQA1ai8xqWymigtBTIyeHRUlKiHD_r8GqaEax0Ti7xeZNxZVPcrAD8uQvOi2sna5B5Xv7q_rW2y4DFHed7PN80oWZSR9Jbo-Au5rgSh11SL04pf0/s72-c/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A3.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-1411877181780881103</id><published>2024-05-15T22:44:00.012+09:00</published><updated>2025-10-19T23:06:14.500+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2024-04-29.月にAWS認定(PAS-C01)受けましたよ。</title><content type='html'>&lt;h3&gt;鬼滅の刃「柱稽古編」がはじまりましたね！&lt;/h3&gt;
&lt;p&gt;
楽しみです。
&lt;/p&gt;

&lt;h3&gt;結果&lt;/h3&gt;
&lt;p&gt;試験結果は、受験後すぐに画面にでました。他の人の受験記で、すぐにでたとあったので、なるほどでたと思いました。&lt;/p&gt;
&lt;p&gt;AWS Certified: SAP on AWS - Specialty (PAS-C01) の試験結果(スコア)は791でした。スコアはぎりぎりといえばぎりぎりなのですが、いままでの試験の中では安心して受けれたように思います。全冠をねらってみたいなと思った矢先に３つの試験がリタイアになったのですが、その内のひとつの試験がこれでした。受験してよかった試験のベスト３にはいります。もうこのテストは受験できませんが...
&lt;/p&gt;

&lt;h3&gt;学習方法&lt;/h3&gt;
&lt;p&gt;
SAP自体はもちろん触ったことがないのですが、検索して調べて受かったひとがちらほらいらしたので、まあなんとかなるだろうと。
&lt;/p&gt;
&lt;p&gt;学習期間は、4月の頭からはじめたのですが、集中したのは３日ぐらいだったと思います。途中で、あきらめかけてたのですが、「あきらめたらそこで試合終了ですよ」by安西先生というフレーズを、有楽町にある最近よくよらせてもらっているビールスタンドの店員さんからいわれ、おいこめたからだと思います。&lt;/p&gt;
&lt;p&gt;
CloudLicenseの問題数は、少なかったのがうれしかったです。13セクションしかなく、91問(13 x 7)しかなかったので、問題を解く苦痛が少なかったです。
&lt;/p&gt;

&lt;p&gt;
  SkillBuilderは「SAP on AWS (Technical) (Japanese) (Sub) 日本語字幕版」と、20問の模擬試験のみ利用しました。
 &lt;/p&gt;

&lt;p&gt;
  この試験で一番よかったのは、「SAP Lens for AWS Well-Architected」を読みこんだことですね。印刷して、１周目で、知らない用語をマークして、問題集(CloudLicense)を一回やってから、もう一回読み込みこんで、理解が深めるという感じでした。試験の範囲は、このLensがカバーしていると思いましたよ。Lensよかった。&lt;br/&gt;
  &lt;br/&gt;
&lt;a href=&quot;https://aws.amazon.com/jp/blogs/news/introducing-the-sap-lens-for-the-aws-well-architected-framework/&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;SAP Lens for AWS Well-Architectedフレームワークの紹介 | Amazon Web Services ブログ&lt;/a&gt;
&lt;/p&gt;



&lt;p&gt;
とても参考になったブログはこちらです。印刷して、試験の直前まで読みました。用語集も用意されていて本当にありがとうございます。&lt;br/&gt;
&lt;br/&gt;
&lt;a href=&quot;https://frontse.hatenablog.jp/entry/2022/11/06/155654&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;【資格】AWS認定 SAP on AWS - 専門知識に合格した勉強法 - 顧客フロントSEのIT勉強ブログ&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
今回の学習法はまあよかったかなと自画自賛しております。このやり方を次に活かしたいと思っております。
&lt;/p&gt;

&lt;h3&gt;「AWS Certified: SAP on AWS - Specialty (PAS-C01) 」(日本語)にたいする不満はないわけではない&lt;/h3&gt;
&lt;p&gt;
日本語で受験したのですが、用語の訳語が統一されていないような気がします。あと「平行」ではなく「並行」だろとか...  
&lt;/p&gt;

&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
						
						
						
												
						
						
						
						</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/1411877181780881103/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/1411877181780881103?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/1411877181780881103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/1411877181780881103'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html' title='2024-04-29.月にAWS認定(PAS-C01)受けましたよ。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-4396357838425873986</id><published>2024-05-12T09:30:00.009+09:00</published><updated>2025-10-19T23:05:37.221+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2024-03-21.木にAWS認定(DBS-C01)受けましたよ。</title><content type='html'>&lt;h3&gt;呪術廻戦&lt;/h3&gt;
&lt;p&gt;
 netflixで、渋谷事変を観たのですが、そこそこ陰鬱な気分になれてよかったです。続きが知りたくて、アマゾンでコミックをちょこちょこ買って読み進めていますが、はっきり登場人物と背景情報が多すぎて頭がごちゃごちゃしています。
&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://amzn.to/3UFX5xM&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;呪術廻戦 1 (ジャンプコミックスDIGITAL) Kindle版(amazon)&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;結果&lt;/h3&gt;
&lt;p&gt;
スコアは810でした。二度目の受験だったのですが、だめだめですね...もう少しスコアがいい勉強をしないといけないと思いました。
&lt;/p&gt;
&lt;p&gt;
 テストを受けながら、まあ受かっているよなーという感覚はありましたが、この問題はおとすだろうなーという感覚もあり、微妙な気持ちでしたね。
&lt;/p&gt;
&lt;h3&gt;学習について&lt;/h3&gt;
&lt;p&gt;
特記するようなこともなく、前回はまったくCloudLicenseをやってなかったので、問題になれるために１周して２周目はまちがったところだけというのをやりました。SkillBuilderは前回の学習のさいはかなり見ていたのでさすがに今回はモチベがわかず...  
&lt;/p&gt;
&lt;p&gt;
前回のMLSの試験から、学習する際にプリントアウトして勉強するという方法は継続させていて、CloudLicenseの解説からAWSへのドキュメントにとんで、印刷して、あとから見直ししたりしましたね。まあ、実は、印刷だけして見直してなかったりしてたりしましたが。
&lt;/p&gt;

&lt;h3&gt;あっ、ちなみに、この試験はもう受験できませんよ！&lt;/h3&gt;
&lt;p&gt;
  &lt;a href=&quot;https://aws.amazon.com/jp/blogs/news/aws-certification-retirements-and-launches/&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;AWS 認定の廃止と開始のお知らせ 2024.04.08 廃止  &lt;/a&gt;
 &lt;/p&gt;

&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
						
							
						
						
						
						</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/4396357838425873986/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/4396357838425873986?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4396357838425873986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4396357838425873986'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html' title='2024-03-21.木にAWS認定(DBS-C01)受けましたよ。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-5673362761414382866</id><published>2024-05-11T20:48:00.003+09:00</published><updated>2024-05-12T17:49:32.324+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ios"/><category scheme="http://www.blogger.com/atom/ns#" term="バックグラウンド"/><category scheme="http://www.blogger.com/atom/ns#" term="備忘録"/><title type='text'>iOS上のでバックグラウンド処理については、このQAを読むべし</title><content type='html'>
&lt;h3&gt;iOS上のでバックグラウンド処理について&lt;/h3&gt;
&lt;p&gt;
常駐のプロセスとして能動的に動くのは無理っぽいというお話。
3秒ごとに自分で動いて処理をするようなこととか。
 &lt;/p&gt;
 &lt;p&gt; 
なにかのタスクを実行するためには、OKなようで、それは例えばダウンロード、ストリーミングとか、あとは位置情報の更新イベントを受けるとか。
   &lt;/p&gt;
&lt;p&gt;
このQAを読むべしなのだろう。
&lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;https://developer.apple.com/forums/thread/685525&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;iOS Background Execution Limits - https://developer.apple.com/forums/thread/685525&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;https://developer.apple.com/forums/thread/85066&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;UIApplication Background Task Notes - https://developer.apple.com/forums/thread/85066&lt;/a&gt;
  &lt;/p&gt;
&lt;h3&gt;ファグランドとバックグラウンド&lt;/h3&gt;
&lt;p&gt;
調べていて、いろいろ混乱してしまいました。
まず、フォアグラウンド状態で、背後で動かすということと、アプリがバックグラウンド状態で動かすということをいりまじっているような気がしました。
むずかしいですよね....
  &lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/5673362761414382866/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/5673362761414382866?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5673362761414382866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5673362761414382866'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/iosqa.html' title='iOS上のでバックグラウンド処理については、このQAを読むべし'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-5056247876520712618</id><published>2024-05-06T22:47:00.005+09:00</published><updated>2024-05-06T22:57:43.516+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="awsiot"/><category scheme="http://www.blogger.com/atom/ns#" term="swift"/><title type='text'>[swift][iot]mqttでpublishできたので、メモ</title><content type='html'>
&lt;h3&gt;あとでゆっくりまとめます&lt;/h3&gt;
&lt;p&gt;
とりあえずできたので..
いろいろ注意する点はありますよ！
&lt;/p&gt;



&lt;pre&gt;&lt;code class=&quot;swift&quot;&gt;
func importIdentity(fileName:String) {
    guard let path = Bundle.main.path(forResource: fileName, ofType: &quot;p12&quot;) else {
        print(&quot;*** not found file&quot;)
        return
    }
    
    let url = URL(fileURLWithPath: path)
    guard let data = try? Data(contentsOf: url) else {
        print(&quot;*** not get data&quot;)
        return
    }
    
    DispatchQueue.global().async {
        let b = AWSIoTManager.importIdentity(fromPKCS12Data: data, passPhrase: &quot;&quot;, certificateId: &quot;bbb&quot;)
        
        if b {
            print(&quot;*** ok import&quot;)
        } else {
            print(&quot;*** failed.&quot;)
        }
        
        let iotEndPoint = AWSEndpoint(
            urlString: IOT_ENDPOINT
        )
        
        let iotDataConfiguration = AWSServiceConfiguration(
            region: AWSRegionType.APNortheast1,
            endpoint: iotEndPoint,
            credentialsProvider: nil
        )
        
        let mqttConfig = AWSIoTMQTTConfiguration(keepAliveTimeInterval: 60.0,
                                                 baseReconnectTimeInterval: 1.0,
                                                 minimumConnectionTimeInterval: 20.0,
                                                 maximumReconnectTimeInterval: 128.0,
                                                 runLoop: RunLoop.current,
                                                 runLoopMode: RunLoop.Mode.default.rawValue,
                                                 autoResubscribe: true,
                                                 lastWillAndTestament: AWSIoTMQTTLastWillAndTestament())
        
        
        
        AWSIoTDataManager.register(with:iotDataConfiguration!,
                                   with:mqttConfig,
                                   forKey: &quot;aaaa&quot;)
    }
    
}
func aaa() {
    
    let iotDataManager = AWSIoTDataManager(forKey: &quot;aaaa&quot;)
    let b0 = iotDataManager.connect(withClientId: &quot;xxx&quot;, cleanSession:false, certificateId:&quot;bbb&quot;, statusCallback: {_ in } )
    
    print(&quot;*** result \(b0)&quot;)
    let topic = &quot;things/Test-Device/shadow/update/accepted&quot;
    
    let b = iotDataManager.publishString(&quot;{\&quot;message\&quot;: \&quot;o_o! aaaaaaaaaaaaaaaa\&quot;}&quot;, onTopic: topic, qoS: .messageDeliveryAttemptedAtLeastOnce)
    
    print(&quot;*** result \(b)&quot;)
}


&lt;/code&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/5056247876520712618/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/5056247876520712618?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5056247876520712618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5056247876520712618'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/swiftiotmqttpublish.html' title='[swift][iot]mqttでpublishできたので、メモ'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-244961206354815482</id><published>2024-05-06T11:28:00.020+09:00</published><updated>2024-05-12T14:15:15.937+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="awsiot"/><category scheme="http://www.blogger.com/atom/ns#" term="ios"/><category scheme="http://www.blogger.com/atom/ns#" term="mqtt"/><category scheme="http://www.blogger.com/atom/ns#" term="objective-c"/><category scheme="http://www.blogger.com/atom/ns#" term="openssl"/><category scheme="http://www.blogger.com/atom/ns#" term="swift"/><title type='text'>[iOS]SecPKCS12Import errorCode=-25293、p12するときにopensslコマンドのlegacyを使えばうまくいくかも</title><content type='html'>&lt;h3&gt;経緯&lt;/h3&gt;
&lt;p&gt;
AWSIoTを使ってMQTT通信のお試しをしてみようと考えたわけなのですが、クライアント認証にp12形式を使うようだというところまで来たのでした。&lt;br/&gt;
MQTT通信するためのライブラリは他にもありそうだったのですが、どうせAWSのIotCoreを使うのでここはAWSのSDKを使うといいかなという感じでした。&lt;br/&gt;
まずはそこから、AWSIoTManager.importIdentityを使うのだろうということで、opensslコマンド使ってp12作成して読ませると結果がfalse...
  &lt;/p&gt;
&lt;p&gt;
そこで悩むのでした。
  &lt;/p&gt;


&lt;h3&gt;環境&lt;/h3&gt;
&lt;p&gt;
xcode(Version 15.3),swift,cocoapod
  &lt;/p&gt;
&lt;p&gt;
AWSIoTのバージョン
2.36.0
  &lt;/p&gt;
 &lt;p&gt;opensslのバージョン     &lt;/p&gt;
&lt;blockquote&gt;
% openssl -version &lt;br/&gt;
OpenSSL 3.3.0 9 Apr 2024 (Library: OpenSSL 3.3.0 9 Apr 2024)
&lt;/blockquote&gt;
&lt;br/&gt;
&lt;blockquote&gt;# 証明書を作成&lt;br/&gt;
aws iot create-keys-and-certificate --set-as-active \&lt;br/&gt;
  --certificate-pem-outfile &quot;certificate.pem&quot; \&lt;br/&gt;
  --public-key-outfile &quot;publicKey.pem&quot; \&lt;br/&gt;
  --private-key-outfile &quot;privateKey.pem&quot;&lt;br/&gt;
&lt;br/&gt;
  &lt;br/&gt;
# ダウンロードしておきます。&lt;br/&gt;
AmazonRootCA1.pem はダウンロードしておきます。&lt;/blockquote&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;h3&gt;AWSIoTManager.importIdentityは内部でSecPKCS12Importを使っていた
&lt;/h3&gt;
&lt;p&gt;AWSIoTManager.importIdentityは、true.falseしか返さない..デバッグ(AWSDDLogError)の出力の仕方がすぐにわからずxcodeのデバッガでみていきました。&lt;br/&gt;
cocoapodsで環境を作っていたので、フレームワーク(ライブラリ)のソースコードがぱっとみれたのはよかった。
&lt;/p&gt;
&lt;p&gt;すると、SecPKCS12Importが返すstatusがerrSecAuthFailed=-25293というのがわかりました。そしてここで悩む。
&lt;/p&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_AOCFxIG2nsOFYdnNyHQs0ZXNoJSvlH0PPVDTl__a9aQL9VbUOZ-w_lo-GjdEPixm0hd9lvtlKcwMFALDNr6toSe9ZkpFe10_KF7jPoGOwrVsjIv4D2aYHe1pYef_q_qKlMItzdh3x1afjgeXazDpQfDaMW_nvYpH8cd2VhCjKh_zqBfTqfov0QgtFVI4/s991/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A.png&quot; style=&quot;display: block; padding: 1em 0; text-align: center; &quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; width=&quot;320&quot; data-original-height=&quot;283&quot; data-original-width=&quot;991&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_AOCFxIG2nsOFYdnNyHQs0ZXNoJSvlH0PPVDTl__a9aQL9VbUOZ-w_lo-GjdEPixm0hd9lvtlKcwMFALDNr6toSe9ZkpFe10_KF7jPoGOwrVsjIv4D2aYHe1pYef_q_qKlMItzdh3x1afjgeXazDpQfDaMW_nvYpH8cd2VhCjKh_zqBfTqfov0QgtFVI4/s320/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;いろいろ調べていくとKeychainが扱える暗号方式が、opensslのバージョンがかわって互換性の問題がありそうだということのようでした。
そしてlegacyのオプションでうまくいくというところまでいったのでした。
&lt;/p&gt;
&lt;br/&gt;
legacyつけないほう、clientA.p12
&lt;blockquote&gt;openssl pkcs12 -export -in certificate.pem -inkey privateKey.pem -certfile AmazonRootCA1.pem -out clientA.p12&lt;/blockquote&gt;
&lt;br/&gt;
legacyをつけた、clientB.p12
&lt;blockquote&gt;openssl pkcs12 -legacy  -export -in certificate.pem -inkey privateKey.pem -certfile AmazonRootCA1.pem -out clientB.p12&lt;/blockquote&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;h3&gt;教訓、自分向け&lt;/h3&gt;

&lt;p&gt;
教訓というほどのことではないのですが、検索エンジンを使う際、自分が同じ検索結果を次にだせる保証はないので、キーワードはメモしておいたほうがよい。
&lt;/p&gt;

&lt;p&gt;あと、こういうのってみなさんどうやって解決していくのだろう...&lt;/p&gt;
&lt;p&gt;p12ファイルを保持したアプリをつくったとして、いろいろ時間がたって、突然、SecPKCS12Importしたら動かないということはないよね....&lt;/p&gt;

&lt;h3&gt;参考&lt;/h3&gt;
&lt;p&gt;
&lt;a href=&quot;https://forums.developer.apple.com/forums/thread/697030&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;SecPKCS12Import is failing to import P12 certificate.&lt;/a&gt;
&lt;br/&gt;
&lt;a href=&quot;https://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/iot-dc-prepare-device-test.html&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;Amazon ルート CA 証明書をダウンロードする&lt;/a&gt;
&lt;br/&gt;
  &lt;a href=&quot;https://mseeeen.msen.jp/p12-format-certificate-issued-by-openssl3-fails-to-import-to-macos/&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;OpenSSL 3系で発行された p12 形式の証明書が macOS にインポートできない&lt;/a&gt;
  &lt;br/&gt;
  &lt;/p&gt;
</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/244961206354815482/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/244961206354815482?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/244961206354815482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/244961206354815482'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/iossecpkcs12import-errorcode.html' title='[iOS]SecPKCS12Import errorCode=-25293、p12するときにopensslコマンドのlegacyを使えばうまくいくかも'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_AOCFxIG2nsOFYdnNyHQs0ZXNoJSvlH0PPVDTl__a9aQL9VbUOZ-w_lo-GjdEPixm0hd9lvtlKcwMFALDNr6toSe9ZkpFe10_KF7jPoGOwrVsjIv4D2aYHe1pYef_q_qKlMItzdh3x1afjgeXazDpQfDaMW_nvYpH8cd2VhCjKh_zqBfTqfov0QgtFVI4/s72-c/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-5459722475913410555</id><published>2024-05-06T02:06:00.022+09:00</published><updated>2025-10-19T23:04:44.834+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2024-02-25.日にAWS認定(MLS-C01)受けましたよ。</title><content type='html'>&lt;h3&gt;Rage, rage against the dying of the light.- 怒れ、怒れ。&lt;/h3&gt;
&lt;p&gt;
詩のレイジ、レイジという繰り返しが僕の頭の中で繰り返されます。&lt;br/&gt;
映画インターステラは好きな映画です。ネットフリックスで観られるときは、作業しながら流し続けていたりします。&lt;br/&gt;  
  
参考：&lt;a href=&quot;https://note.com/m_amsw/n/n7e00eb041c4c&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;『インターステラー』より｜『穏やかな夜に身を任せるな』原文と和訳／当詩が使用された真意を探る &lt;/a&gt;
  &lt;br/&gt;
  &lt;a href=&quot;https://amzn.to/4djHVXw&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;インターステラ(amazon)&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;結果&lt;/h3&gt;
&lt;p&gt;AWS Certified Machine Learning - Specialty (MLS-C01) 。スコアは785でした。あやういスコアでした。受かってとてもうれしかったです。&lt;/p&gt;
&lt;p&gt;受かったあとは、しばらく腑抜けになりました。&lt;/p&gt;
&lt;h3&gt;学習について&lt;/h3&gt;
&lt;p&gt;ひとつ前に受けたDBSの試験が落ちてしまって、計画がずれてしまって、さあどうしようかなと。いったん頭を切り替えようとこの機械学習にとりかかることにしました。&lt;/p&gt;
&lt;p&gt;約３週間の学習期間でした。&lt;/p&gt;

&lt;p&gt;まず、どこから手をつけていいのかわからかったので、とっかかりを掴むためにskillbuilderで機械学習関連のものをいろいろ受講しました。&lt;/p&gt;
&lt;p&gt;
ある程度、全体像がおぼろげながらできたところで、cloudlicenseで問題練習をしながら、用語をおぼえることに専念しました。

昔、買っていたG検定の公式テキストも利用しました。
&lt;/p&gt;&lt;p&gt;

この試験対策から自前で画面キャプチャしてまとめたものをプリントアウトして、繰り返し利用するようにしました。ChatGPTを使って用語のまとめとか作ったりもしましたね。
このときにできた印刷したものに蛍光ペンで線をひくという学習スタイルは今も継続しています。
&lt;/p&gt;

&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;				
						
							
											

&lt;h3&gt;その他の試験対策のためにしたこと&lt;/h3&gt;
&lt;p&gt;禁酒です。うかったあとは二日酔いするまでのんでしまいましたが...僕はアル中ではないとは思うのですが...&lt;/p&gt;
&lt;h3&gt;このプリンタはおすすめ&lt;/h3&gt;
&lt;p&gt;僕が買ったのは、ブラザーの&lt;a href=&quot;https://amzn.to/3UwbTyO&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;HL-L2375DW(amazon)&lt;/a&gt;でした。モノクロのレーザープリンタで両面印刷できます。結構なスピードで印刷できました。トナーは純正のものが高いのでサードパーティのものを使っています。
&lt;/p&gt;
						
											
						
						
						
						</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/5459722475913410555/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/5459722475913410555?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5459722475913410555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/5459722475913410555'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html' title='2024-02-25.日にAWS認定(MLS-C01)受けましたよ。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-8245807429313626400</id><published>2024-05-06T01:31:00.012+09:00</published><updated>2025-10-19T23:04:00.859+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2024-02-02.金にAWS認定(DBS-C01)受けましたよ。 おちました。</title><content type='html'>
&lt;h3&gt;結果&lt;/h3&gt;
&lt;p&gt;
AWS Certified Database - Specialty (DBS-C01) を受験しました。この試験は廃止になってしまいました。スコアは726でした。
おちました。&lt;/p&gt;

&lt;h3&gt;反省&lt;/h3&gt;
&lt;p&gt;
学習時間は、結構はやくから手をつけていて多いほうだと思います。データ分析とあわせて学習していたのですが、skillbuilderでいろいろ受講していました。&lt;br/&gt;
cloudlicenseは、まったくやりませんでした。データ分析を受かってしまったので、そこで慢心してしまったのでしょう。&lt;br/&gt;
  あとお酒の量がふえていましたね。ここから試験前ははっきりと禁酒しようと決めたのでした。
&lt;/p&gt;



&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
						
							
						
						
						
										
						
						
						
												
						
						
						
						</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/8245807429313626400/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/8245807429313626400?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/8245807429313626400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/8245807429313626400'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html' title='2024-02-02.金にAWS認定(DBS-C01)受けましたよ。 おちました。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-4678772781090947693</id><published>2024-05-04T09:43:00.005+09:00</published><updated>2024-05-05T22:47:23.581+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="brew"/><category scheme="http://www.blogger.com/atom/ns#" term="cocoapods"/><category scheme="http://www.blogger.com/atom/ns#" term="ios"/><category scheme="http://www.blogger.com/atom/ns#" term="xcode"/><title type='text'>cocoapodをbrewでinstallしてうまくいかなかったので、普通にインストールしました。</title><content type='html'>&lt;h3&gt;開発ってままならないもの&lt;/h3&gt;
&lt;p&gt;
開発ってままならないものですね。僕の実力だと自力で問題を解決できないことばかり...&lt;br/&gt;
spm(The Swift Package Manager (SwiftPM) )の時代ということで試そうとしていたのですが、ここはいったんpodでと考え直して環境を作ろうとしていたのですが、やはり、brewでインストールと思って作業進めていたのですが、pod setup, pod installが思い通りにいかず。&lt;br/&gt;
調べる気力がわかず、ここは、 &quot;sudo gem install cocoapods&quot;。&lt;br/&gt;
実は、すんなりいかず、いろいろそのまえにごにょごにょと。あきらめるのも大事ですね。&lt;br/&gt;
あきらめてばかりの人生です。&lt;br/&gt;
&lt;/p&gt;
参考&lt;br/&gt;
&lt;a href=&quot;https://zenn.dev/akuraru/articles/9e23392fe7f544&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;CocoaPodsを廃止した&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/4678772781090947693/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/4678772781090947693?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4678772781090947693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/4678772781090947693'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/cocoapodbrewinstall.html' title='cocoapodをbrewでinstallしてうまくいかなかったので、普通にインストールしました。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7616979561464828711.post-14498126187634767</id><published>2024-05-04T06:59:00.020+09:00</published><updated>2025-10-19T23:03:28.647+09:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AWS認定"/><title type='text'>2024-01-13.土にAWS認定(DAS-C01)受けましたよ。</title><content type='html'>&lt;H3&gt;「我々の間には、チームプレーなどという都合のよい言い訳は存在せん。有るとすればスタンドプレーから生じる、チームワークだけだ」&lt;/H3&gt;
&lt;p&gt;
このセリフ使ってみたいですね。僕は、チームプレーもチームワークもよくわかっていないのですが...
&lt;/p&gt;

&lt;H3&gt;結果&lt;/H3&gt;
&lt;p&gt;
スコアは、800でした。いままで受けた試験の中で、はじめて800台(ジャストですが..)だったテストです。&lt;br/&gt;
前日にアソシエイトのβ版試験(おちましたけど)を受けていたので、脳が活性していたのだと思います。しかし、このデータ分析に受かったせいで次の試験がぼろぼろになるとは。
&lt;/p&gt;

&lt;H3&gt;学習について&lt;/H3&gt;
&lt;p&gt;
skillbuilder(課金)を使って、データ分析関連のものは結構な数を受講したと思います。あとハンズオンもやりましたね。計画として次にデータベースも視野に入れた学習をしていたと思います。&lt;br/&gt;
skillbuilder(課金)の使い方ですが、可能な限り、1倍以上のスピードで視聴するようにして時短を試みていましたね。1.5倍しかなないのはさすがにつらかったですが。日本語になっていないものは、無理やり英語で視聴して、頭に少しはキーワード残るようにしていたと思います。もちろん模擬試験はしっかりやりましたよ。
&lt;/p&gt;
&lt;p&gt;
CloudLicense(課金、プロフェッショナル)を使っての問題なれもやりました。まちがった問題にでたキーワードは、メモに書き出して電車を待つ時間とかに見直すようにしていました。&lt;br/&gt;
CloudLicense(課金、プロフェッショナル)の問題は、１セクションにつき７問題あり、僕の場合、1分30秒で解答ができたらOKな感じでした。２分こえると怪しい。解答の説明はさっと読んで、１セクション15分以内で終わらせれたらOKという感じでした。
&lt;br/&gt;
答えの説明に、AWSのドキュメントへのリンクがあるものは、そこもざっと見るようにしていました。ただし、当時は、ドキュメントの読み方がまだまだだったと思います。

&lt;H3&gt;いい未来は探せる？&lt;/H3&gt;
&lt;p&gt;未来は探すもの？&lt;/p&gt;

&lt;h3&gt;他の受けた試験について&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/10/2025-10-13awsaws-certified-data.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-10-13(月)にAWS認定(AWS Certified Data Engineer - Associate (DEA-C01) )受けましたよ。 &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/03/2025-02-24awsscs-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-02-24(月) AWS認定(SCS-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2025/01/2025-01-13awsaif-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2025-01-13(月) AWS認定(AIF-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-04-29awspas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-04-29(月) AWS認定(PAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-03-21awsdbs-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-03-21(木) AWS認定(DBS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-25awsmls-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-25(日) AWS認定(MLS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-02-02awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-02-02(金) AWS認定(DBS-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-13(土) AWS認定(DAS-C01)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2024-01-12-awsdea-c01.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2024-01-12(金) AWS認定(DEA-C01)受けましたよ。おちました。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-24awssaa-c03.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-24(日) AWS認定(SAA-C03)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-12-14awsaws-certified-sysops.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-12-14(木) AWS認定(SOA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/2023-11-24awsdva-c02.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-24(金) AWS認定(DVA-C02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://programamemo2.blogspot.com/2024/04/20231110aws.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;2023-11-10(金) AWS認定(CLF-02)受けましたよ。&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;					
						
							
						
						
						
										
						
						
						
											
						
						
						
						</content><link rel='replies' type='application/atom+xml' href='http://programamemo2.blogspot.com/feeds/14498126187634767/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/7616979561464828711/14498126187634767?isPopup=true' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/14498126187634767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7616979561464828711/posts/default/14498126187634767'/><link rel='alternate' type='text/html' href='http://programamemo2.blogspot.com/2024/05/2024-01-13-awsdas-c01.html' title='2024-01-13.土にAWS認定(DAS-C01)受けましたよ。'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>