技術者ブログ:(OutSystems)BootStrapによるデータ移行の紹介

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回は、ローコード開発をテーマにしている第2ユニットです。

今回のテーマ:『BootStrapによるデータ移行の紹介』

BootStrapとは?

BootStrapとはOutSystemsのExcelファイルからOutSystemのEntityへ取り込みを行うことができる標準機能です。
本機能は難しい手順を踏むことなく実行できるため、お勧めできる機能になっています。
本記事では、ExcelファイルからOutSystemのEntityへデータ取り込みを行う手順をご紹介します。

データ移行準備①:移行先のEntity作成

移行先のEntityを移行したいデータ構成で作成します。
データ構成で気を付けるべき点としては下記となります。
・OutSystem上のIdentiferはサロゲートIDとして必ず作成しておくこと。
・取り込みたいデータタイプをAttributeに設定しておくこと。
※定数などの項目も併せてStaticEntityで作成

データ移行準備②:移行元データ(Excelファイル)の用意

移行したいデータが入力されたExcelファイルを用意します。
その際、以下の注意点に留意してください。
・ファイル名は、全角文字を入力すると取り込み時アンダーバー「_」に置換されるため、半角英数字を入力してください。
・シート名は、移行先のEntity名と一致させてください。
・入力データは、次の画像のように見出し+データの形式で設定し、見出しはデータ準備①で作成したEntityのNameと一致させてください。
・移行先Entityのデータタイプが数値やIdentiferの場合に取込を行う情報にブランクが含まれる場合、強制的にデータタイプが文字列型に変換されてしまう。
※数値型で取込みたい場合はブランクを0に置換してすべて数値に変換してください。

以上で準備は完了となります。

データ取込処理①:移行ロジックの生成

移行先Entity・データ移行元ファイルの準備が完了したら移行ロジックの生成を行います。
移行先Entityを右クリック→Advanced→Create Action to BootStrap Data form Excelの順に選択します。

そしてデータ移行準備②のExcelファイルを選択すると、下記の画面が表示されるので移行元の項目名と移行先のAttributesが一致していることを確認してProceedを選択します。

以上の手順によって移行に必要なオブジェクトが作成されます。

作成されるオブジェクト

〇Timer
・処理の実行タイミングの設定が行われます。
・初期設定ではPublish時に実行されるよう指定されており、月毎・週毎・日毎等選択できます。

〇Logic
・ExcelからEntityへ取り込むLogicが作成されます。
内容については以下の記述がされています。
①移行先のEntityが空かを判断する。
②Entityが空ならExcelの情報を読み込み全件登録を行う。

〇Structure
・Excelファイルの情報を格納するデータ型の入れ物です。

データ取込処理②:Publishを実行

最後にServiceStudioにてPublishを実行します。
Publish完了後データ取り込みが実行され今回準備したEntityへデータが登録されます。

余談・取り込み処理のアレンジ

以下に筆者が本機能を利用するにあたって手を加えた内容を簡単に記載します。

  • Timerでの決まったタイミングでの実行ではなく画面に用意したボタンにLogicを設定して実行する。
    →実装経緯:Publishを実行時以外に動作確認をするために画面上のボタンに割り振れば任意のタイミングで実行できるため実装した。
  • LogicのEntityが空なら実行する判断を全件削除してから実行する処理に変更する。
    →実装経緯:重複登録を避けるための判断だが移行結果を確認したかったため変更を加えた。

まとめ

BootStrapを利用してExcelファイルからOutSystemのEntityへデータの移行を行う手順を紹介いたしました。
データ移行だけでなくExcel出力を行っておけばバックアップとして取り込む場合やテスト時にデータを取り込む場合にも活用できるため有用な機能かと思います。
準備・実行ともに簡易ですので実際に作成してみてはいかがでしょうか?

社員紹介(22-2)

ご覧いただきありがとうございます。
今回の社員紹介記事を担当します、第2ユニットの「オギ」です!
今回二度目の担当です。(前回はこちら

最近のゆる趣味


前回の記事から1年余、現在も趣味のリアル脱出ゲームに時折行きます。
また、近頃は趣味とまではいきませんが展覧会へ行くようになりました。

名古屋でも美術館や科学館、百貨店などいろんな場所で、さまざまな展覧会が開催されています。
ほとんどが期間限定での開催なので、つい足を運んでみたくなります。
東京や大阪だけの開催でなく、全国巡回で近場にやってくることがあるのも嬉しいところです。

今までに国内外100組のアーティストが出展する国際芸術祭や、絵本作家さんの個展などに行きました。

作者が何故この作品をつくるに至ったのか、その人が何を考えて生きている/生きていたのかなどを、作品や説明から受け取って考えてみながら観るのが面白いです!

また、国際芸術祭では名古屋を離れた街中にも会場が点在していて、行ったことのない街を歩き回って作品鑑賞するのも楽しかったです。

今度は科学館で開催しているような自然科学系の展覧会にも足を運んでみたいと思います!

今回の記事は以上です。
次回の記事もお楽しみに!

レクリエーション「チョコレートパーティー!!」

ダンデライオンズでは社員同士の親睦を深めるための「レクリエーション」を定期的に開催しています!


今回の第3ユニット主催のレクリエーションは、開催日が2月11日でバレンタインも近いということで、何か楽しいことができないかという話になりました。

そこで、オフィスに電子レンジがあるので、電子レンジでできる簡単チョコ菓子をみんなで作って、食べようという計画になりました!!

作ったお菓子は以下となります。
作り方は、とあるインスタグラムで紹介されているお菓子から選びました。

①生チョコサンドクッキー
②低糖質チョコブラウニー
③オレオチーズケーキ

材料
まずは、用意した材料です。チョコレートやオレオ、クリームチーズなどを用意しました。
生チョコサンドクッキー作成中
低糖質ブラウニー作成中!
オレオチーズケーキ作成中
チョコレートを溶かして、混ぜています

どれも簡単に作ることができて、おいしかったです。
みんなで、協力して一つのものを作成するというのは楽しかったですね。

次回のレクリエーションもお楽しみに!

ChatGPT触ってみた

こんにちは第一ユニットベーです。

最近はChatGPTが登場し、MicrosoftやGoogleが世間を騒がせていますね!

昨年はStable Diffusionの登場で画像生成AIも活気立ちましたし、これからどんどんAIが私たちの生活に入り込んで盛り上がってきそうでとてもワクワクしています。

AI関連を勉強している身としては、話題になっているものを触らない選択肢はありません。

今日はChatGPTを触ってみようと思います。

アカウント登録

ChatGPTを使うためにはOpenAIのアカウント登録が必要です。

私はすでにアカウントを登録しているのでアカウントを持っている状態から進めていきます。

登録はメールアドレスと2段階認証用の電話番号の登録程度で、他のサイトと変わらず数分で終わる内容でした。

これだけで最新の対話式AIが使えるなんてびっくり…

使ってみ

では、Chat GPTの画面を開いたので早速使ってみようと思います。

まずは弊社について質問してみます。

うーん、残念ながら弊社の情報はまだChatGPTは学習していないようです。

違う質問もしてみます。

技術的なこともしっかり答えてくれますね。

もうちょっと細かいことを聞いてみましょう。

プログラムの内容まで教えてくれました。しかも日本語コメントと内容の説明付き!

そしてChatGPTのよりすごいところは一問一答ではなく、前の質問を考慮して回答をしてくれるところです。
思いつきで先程のスクリプトの変数名を変えるようにお願いしてみました。

雑な日本語での指定でしたが難なくやってくれました。

今は簡単なプログラムを聞いただけですが、技術的な相談はAIにしたほうが早い未来がもう来ているのかもしれませんね。

しりとり

最後にChatGPTとしりとりできるか挑戦してみました。

・・・ChatGPTさんはまだしりとりのルールを知らないようです。
私の負けであることを伝えてみました。

ChatGPTさんのしりとりに勝ち負けはないようです。
まだ遊び相手になってもらうためには学習を続けて貰う必要がありそうですね。

まとめ

今回はChatGPTで遊んでみました。

手軽に使えて、使い方によってはすでにかなり実用性のあるレベルまで到達していましたね!

今後のAI技術の発展に期待しつつ、私達もAIに負けないように頑張らないといけません。

今回の記事はここまでです。それでは!

社員紹介(23-2)

閲覧いただきありがとうございます。
2度目の社員紹介になります、「xig」です。
前回の記事はコチラです。

前回、様々な趣味があると冒頭に書かせていただきました。
今回は食べ歩きの趣味にフォーカスを当てて、最近食べた美味しいものを紹介させていただこうと思います!

熱々!
焦がしニンニクのスープ×極厚肉ラーメン

1品目に紹介するのは、
静岡県袋井市のIC付近にある麺屋はやたろうで食べた
その名も「厚肉」。
画像ではわかりにくいのですが、
思っているより2.5倍はチャーシューが厚いこちらのラーメン。
なのに、口に入れた一瞬で溶けるそれはまさに角煮のような感覚でした!
(食べた瞬間思わず笑ってしまいましたw)

また、焦がしニンニクが効いたスープは、なめらかだけどパンチのある濃さで、ラーメンを熱々に保ってくれるため、最後の一杯まで楽しむことができました!

禁断の組み合わせ!鰻と牡蠣のカバうな丼!

2品目に紹介するのは、静岡県の浜松市舘山寺にあるうなぎ・和食処 松の家で食べた
元祖牡蠣カバうな丼」(冬限定)です。
メニューを見た瞬間目を疑いましたが、ホントに名前通りの物が出てきましたw
あっさり寄りのタレは、クリーミーな牡蠣と相性が抜群で、
鰻のカリッとした触感が食欲をより一層引き立てます。
食べても飽きが来ないので、値段に目をつむれば無限に食べれちゃうかもです!
ちなみに、このお店は某グルメ系ドラマでも紹介されており、
著名人のサインもいくつか店舗に飾ってありました。
(腹が…減った…)

今回は以上になります。
次回の社員紹介もお楽しみにして頂けると幸いです!

社内勉強会:フェイク画像の作り方

今回の社内勉強会は「フェイク画像の作り方」です。担当は第1ユニットのキトサンです。
以前の勉強会で「NSN映えする写真加工術」が紹介されました。第1ユニットとしてもAIによる自動生写真やイラストが注目されている中で自分で撮った写真から簡単にフェイク画像が作れたらと今回の勉強会を企画しました。

勉強会の風景

iPhoneの標準機能で被写体を抽出する
iPhone標準機能だけで写真から対象の被写体のみを抽出する方法です。最近公開された機能というとこもあり、あまり知られていないようです。利用条件は対応機種として、iPhone8以降、iOS16以上となっており、対象機種でiOSを最新化すれば問題なく利用できます。iPadでも利用条件を満たすことで利用できます。
やり方はとても簡単で、「iPhone標準写真アプリ」で写真を表示し、対象の被写体を長押しするとキラッと光り、対象を抜き出すことができます。これを別の画像として保存すると背景が透明な写真として保存することができます。

被写体の抽出

被写体と背景写真を合成する
ここからは無料アプリ「PhotoLayers」を利用します。
好きな背景を利用して、抽出した被写体を重ねることができます。素敵な景色の中にまるでそこに居たような写真が完成します。景勝地できれいな景色を目の前にすると写真を撮るので精一杯で自身が写った写真はなかったりします。そんな時な自分をその景色に合成することで自分が景色の中に入ることができます。

背景と合成

不要なゴミを除去する
せっかく撮った素敵な写真に電信柱が写っていたとかありませんか?そんな不要なものを削除するアプリです。Google PixelのCMで「消しゴムマジック」で実現していますね。今回紹介するのは「TouchRetouch」という有償アプリです。無料で扱えるアプリ「PhotoDirector」などもありますが、アプリ内課金もありますので、注意して利用してください。どれも対象を塗り潰して除去ボタンを押すことで、対象の周りを画像分析し、違和感なく除去してくれる機能です。今回は青空としたかったので、雲を消してみました。

右の雲を除去

写真を鮮明にする
上記の機能で写真は作ってみたもののぼやっとした写真となってしまった。もしくは古いカメラで撮った写真を活用したいという時、こちらのアプリ「Remini」が便利です。無料で利用することができますが、利用制限や広告を見る必要があります。まずは無料で使ってみて、気に入ったら課金してみてはいかがでしょうか。

画像を鮮明に

5つのステップでの簡単作成
紹介した機能を利用して5つのステップでフェイク画像を作ることができます。
① 被写体の写った写真、背景写真を用意する
② 被写体を抽出する 「iPhone標準写真アプリ」
③ 背景写真に被写体を合成する 「PhotoLayers」
④ 不要なゴミを除去する 「TouchRetouch」
⑤ 写真を鮮明にする 「Remini」

おまけとして、ちょっと前に流行りましたが性別を変える機能が付いたアプリ「FaceApp」で作成された自身の写真をネタとしたいと思います。このアプリは様々な顔の変化が楽しめますが、すべての機能を利用するには課金が必要なので注意です。

「FaceApp」で加工されたキトサン

最後に、AIで利用される画像は世界のインターネット上に存在する画像データが学習データとして利用されており、学習データとして利用することは問題ありませんが、そっくりな画像については元の著作物の権利を侵害する可能性もあります。第1ユニットは今後もAI画像について動向を注視していきたいと思います。

それでは、次回の勉強会の記事をお楽しみに!

今回利用したアプリ
 PhotoLayers iOS版 Android版
 TouchRetouch iOS版 Android版
 PhotoDirector iOS版 Android版
 Remini iOS版 Android版

【WordPress】「Astra」のスターターテンプレート利用によるウェブサイト作成

WEBデザインをテーマにしている第0ユニットです。

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。

今回はWordPressの人気テーマ「Astra」のスターターテンプレートをご紹介します。

「Astra」のスターターテンプレートの利用により、手早く綺麗なデザインのウェブサイトを簡単に作成することができます。

Astraのインストール

①Astraのインストールと有効化

②スターターテンプレートのインストール

③ページビルダーの選択

※今回は「Elementor」を選択しています。「Elementor」はWordPressのプラグインの一つで、直感的な操作でウェブページの作成が可能となるエディターです。「Elementor」についても今後ブログの中でご紹介しようと思っています。

以上の①~③で準備は完了です。

ウェブサイトの作成

試しにウェブサイトを一つ作成してみます。

「Business」、「E-Commerce」、「Blog」等、カテゴリごとにテンプレートの一覧が表示されており、その中から選択します。

テンプレート右上に黄色く「PREMIUM」となっているものは有料のテンプレートです。

今回は「E-Commerce」にカテゴリーされているテンプレートを使ってウェブサイトを作成します。

①ロゴの設定

②色、フォントの設定

上記2つの設定後、以下画面が表示されるので、「Submit & Build My Website」で完了です。

作成されたECサイト

テーマのインストールからサイトの作成まで所要時間10分ほどで作成できました。

もちろんここからカスタマイズも可能です。

前回ご紹介した「LOCAL」の環境で簡単に試作できるので是非試してください。

次回の技術者ブログもお楽しみに。

新年のご挨拶&健康的な身体作り

新年あけましておめでとうございます

平素はご愛顧を賜わり、厚く御礼申し上げます。
本年も、更なるサービスの向上に努めて参りますので、より一層のご支援、お引立てを賜りますようお願い申し上げます。

昨年で第6期を迎え、ダンデライオンズも少しずつではありますが、一歩ずつコツコツと成長を遂げております。社員も徐々に増えていき事業計画などを練りながら、とてもワクワクする楽しみな年になることを期待しております。

成田山

健康診断の結果、そして健康的な身体作り

昨年の健康診断の結果から、そろそろ健康について真剣に向き合わないといけないと感じまして、ようやく重い腰を上げて、「健康的な身体作り」に取り組む事にしました。医師からは「夕食の主食を控える」、管理栄養士からは「昼食を欠かさず食べる」という行動目標をいただき、私自身として「毎朝ウォーキングする」という行動目標を立てて行動する事にしました。

気持ち的にはウォーキングではなくランニングなのですが、私はストイックな傾向があり、ランナー膝でドクターストップした経験があります。このとき、食事量と運動でバランスを取っていたので、身体を動かすことができなくなった後は、残念ながらリバウンドしてしまいました。

体重と体脂肪率の記録

過去の経験を活かし、今回は「続ける」事を意識して取り組む事にしました。
長く続けられるよう、朝食や昼食は今まで通り好きなものを好きなだけ食べる事にして、気持ちは続けられると信じていましたので、運動はケガをしない事を優先に考えて取り組みました。

昨年5月から健康的な身体作りを始めたのですが体重は最大で16キロ減、体脂肪率は8%までとなりました。今は敢えて体重を2キロ戻し、体脂肪率も11%前後で安定させています。

12月の記録

ウォーキングイベント「歩Fes.」に参加

健康保険組合にて、ウォーキングイベント「歩Fes.」があり、有志の社員を集って参加させていただきました。今回は4名でエントリーさせていただき参加したメンバー全員が目標を達成することができました。

昨年から始めた「健康的な身体作り」は、はじめは私だけの取り組みでしたが、健康的な身体作りの仕組みを会社全体として作っていくことが巡り巡って会社の魅力になると感じました。いわゆる「健康経営」です。ここで健康的な身体作りに対して、社員のモチベーションをどうやって上げていけるか悩みました。

参加させていただいたイベント「歩Fes.」

私事ではありますが20代30代のころは、健康診断の結果を見ても体力の回復や体重のコントロールが割とスムーズにできてしまったので、今のように真剣に向き合うことができていませんでした。

ですので単に健康的な身体作りと言われても意識できない気持ちが分かります。そこで今期から健康診断の結果を活用し、健康の維持・増進を評価する仕組みを作っていこうと考えました。技術力のほか、リーダーシップ力やコミュニケーション力などと一緒に「健康力」も認められる。素敵だと思いませんか?

これから「健康的な身体作り」は、社員と一緒になって考えていきたいと思います。ダンデライオンズに関わる全ての人が健康であり、活躍を「続ける」事ができるよう取り組んでいきます。

最後になりますが

改めまして本年も精一杯取り組ませていただきますので、ご指導ご鞭撻をいただければ幸甚です。皆様のご健康とご多幸をお祈りし、新年のご挨拶とさせていただきます。

ユニット活動報告会!

今年もユニット活動報告会が開催されました。

昨年と同様に各ユニット毎に発表テーマが設けられています。

発表内容からいくつか抜粋させていただきます。

第0ユニット(テーマ:Webデザイン)

発表内容


・レスポンシブデザインについてのポイントを紹介
・SDGsサイトの製作
・ショッピングサイトの製作
 等々

第1ユニット(テーマ:AI)

発表内容


・HelloWorld(※1)アプリ版のCPU対戦製作の活動成果
・UNITYアプリとWebアプリの比較
・AIのトレンドについて
 等々

※1:当社が製作した「カードゲーム」で、楽しくプログラミングを学ぶことができます。

詳細はこちら

第2ユニット(テーマ:ローコード、ノーコード)

発表内容


・OutSystems(ローコードツール)の説明
・APEXからOutSystemsの移管について
・OutSystemsで製作した勤怠管理システムの紹介
 等々

第3ユニット(テーマ:クラウド・オンプレミス)

発表内容


・ランサムウェアについて
・社内インフラ管理(サーバ、ネットワーク)の実績について
・UTM(FortiGate)によるVPN接続について
 等々

皆さま1年間の活動報告お疲れ様でした!

一息つきたいところですが、次の1年は既に始まっています。

来年も更なる成長を目指して頑張っていきましょう。

それではまた1年後に!

技術者ブログ – ハードディスク完全消去方法

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回はインフラをテーマにしている第3ユニットです。

使用しているパソコンを捨てる時や、 仕事で使用しているパソコンを別のプロジェクトに移動させる時に ハードディスクのデータをすべて完全に消去する必要があります。

無料で使用できるソフトとして、今までは「DESTROY」というソフトがあったのですが、 最近のパソコンでは使用できなくなっていたので、 代替案を調べてみました。

※以下の作業を行うと、大事なデータも削除してしまうので、十分に注意して作業を行ってください。

結論

USBからUbuntuを起動してshredコマンドを使用すればよいとわかりました

手順

1.UbuntuインストールUSBを作ります

・UbuntuのISOイメージをダウンロードします。
・「Rufus」にて、ダウンロードしたISOイメージから、UbuntuインストールUSBを作成します

Rufus
Rufus

参考)Ubuntu:https://ubuntu.com/download/desktop Rufus:https://rufus.ie/ja/

2.パソコンの起動時、BIOSにてUSB優先にして起動します

Ubuntu起動中に、「Try Ubuntu without installing」を選択してそのまま起動してください

Ubuntu起動画面

Ubuntuデスクトップが起動されます

3.「Terminal」を開きます

Terminal画面

4.「fdisk」コマンドを使用して、ディスク一覧を確認します

sudo fdisk -l

5.「shred」コマンドを使用して、データを消去します

sudo shred -v -z -n 1 /dev/sdb

[ /dev/sdb ] の部分に、fdiskで調べた消去したいディスクを指定します。

●オプションの説明
・-v: 途中の進捗状況をターミナルに表示する
・-z: 最後に、オール0で上書きする
・-n 1: ランダム上書き1回する

以上で完了です。

次回の技術者ブログをお楽しみに。