シェルスクリプトマガジン

test

中小企業手作りIT化奮戦記(Vol.91掲載)

投稿日:2024.07.25 | カテゴリー: コード

著者:佐藤 楓真

今回は、「焼きなまし法」と呼ばれる手法で、すべての都市を1回訪問して出発地点に帰るまでの最短経路を求める「巡回セールスマン問題」を近似的に解いてみます。焼きなまし法のベースとなる「山登り法」についても解説します。使用するプログラミング言語は、C++です。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図3 図1の巡回セールスマン問題を山登り法で解くC++プログラムの例

図4 都市数「5000」のテスト用データを作成するC++プログラム

図5 テスト用データに基づく巡回セールスマン問題を山登り法で解くC++プログラムの例

図7 テスト用データに基づく巡回セールスマン問題を焼きなまし法で解くC++プログラムの例

Markdownを活用する(Vol.91掲載)

投稿日:2024.07.25 | カテゴリー: コード

著者:藤原 由来

本連載では文書の装飾・構造付けを手軽に行える記法であるMarkdownを用いて、さまざまな文書や成果物を作成する方法を紹介します。今回は、Markdownを用いて書籍を制作できる組版アプリ「Vivliostyle」の導入と、書籍作成の基本について説明します。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図11 chap1.mdファイルの内容

図12 chap2.mdファイルの内容

Pythonあれこれ(Vol.91掲載)

投稿日:2024.07.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第21回では、「ハノイの塔」の解法「GDHP(Gniibe Distributed Hanoi Protocol)」の手順をアニメーションで表示するPythonアプリを作成します。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図2 GDHPの手順をアニメーションで表示するJavaScriptコード

図3 Pygameを用いて描画ウィンドウを表示するPythonコード

図5 GDHPの手順をアニメーションで表示するPythonコード

特集2 ChatGPTで手軽に実現(Vol.91記載)

投稿日:2024.07.25 | カテゴリー: コード

著者:佐藤 秀輔

対話型AIサービス「ChatGPT」が注目を集めています。特に、2023年3月に登場した「GPT-4」という大規模言語モデル(LLM)を利用可能になってからは自然言語の理解力が飛躍的に向上し、指示に基づいて、さまざまな処理を自動化できるようになっています。本特集では、ChatGPTを個人で活用する例として、家計簿レビューをさせる方法と、API(Application Programming Interface)を利用してWebスクレイピングをさせる方法を紹介します。

シェルスクリプトマガジン Vol.91は以下のリンク先でご購入できます。

図1 ランダムな家計簿データを生成するPythonスクリプト

図10 Webスクレイピング対象となるWebページの例

図11 Webスクレイピング用のPythonスクリプトの例

シェルスクリプトマガジンvol.91 Web掲載記事まとめ

投稿日:2024.07.25 | カテゴリー: コード

004 レポート 統合開発環境「Theia IDE」正式版リリース
005 レポート サイバーエージェントがVLM、新LLM公開
006 製品レビュー パソコン「ASUS Vivobook S 15 S5507QA」
007 NEWS FLASH
008 特集1 Oracle Cloud Infrastructure入門/福島耕平、中村峻大
020 特集2 ChatGPTで手軽に実現/佐藤秀輔 コード掲載
028 特別企画 イノシシ撃退機を作る ハード製作編/米田聡
036 Pythonあれこれ/飯尾淳 コード掲載
042 Markdownを活用する/藤原由来 コード掲載
052 香川大学SLPからお届け!/佐藤楓真 コード掲載
058 中小企業手作りIT化奮戦記/菅雄一
064 これだけは覚えておきたいLinuxコマンド/大津真 コード掲載
073 ユニケージレポート/田中湧也
076 Techパズル/gori.sh
077 コラム「要求工学を取り入れる」/シェル魔人

Vol.91

投稿日:2024.07.25 | カテゴリー: バックナンバー

 オラクルといえば、基幹システムでも利用されるリレーショナルデータベース管理システム(RDBMS)製品を開発・販売する企業というイメージがあります。しかし、それだけではありません。「AWS」(Amazon Web Services)や「Microsoft Azure」、「GCP」(Google Cloud Platform)と同等のクラウドサービスとして「Oracle Cloud Infrastructure」(OCI)を提供しています。
 特集1では、このOCIの特徴を分かりやすく解説しています。また、30日間無料で試せる「OCI Cloud Free Tier」を利用してIaaS(Infrastructure as a Service)によるコンピュートインスタンスの立ち上げ方法も紹介しています。実際に触ってみて、データベースだけでないOCIの魅力を感じてください。
 特集2では、生成AIチャット「ChatGPT」の実用例として、支出を分析する「家計簿レビュー」と、Webページから必要な情報を抽出する「Webスクレイピング」の二つを紹介しています。前者は対話形式で分析、後者はAPI(Application Programming Interface)を用いて情報を抽出しています。話題のChatGPTの能力を体験してみてください。
 特別企画では、「Interface」「CQ ham radio」「トランジスタ技術」などの雑誌を出版するCQ出版社の協力を得て、同社が販売する「イノシシ撃退機部品セットVer.1」の組み立て方を紹介しています。農業分野でもITを活用することで、さまざまなメリットが生まれます。このイノシシ撃退機は、イノシシの鳴き声を使うため、安全にイノシシを追い払えます。
 このほか、ユニケージレポートでは、長崎県で2024年6月12~14日に開催された「ソフトウェア・シンポジウム2024」でのユニケージ技術発表と、シェルやシェルスクリプトに関するワークショップを紹介しました。
 今回も読み応え十分のシェルスクリプトマガジン Vol.91。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.91 補足情報

投稿日:2024.07.19 | カテゴリー: コード

特集2 ChatGPTで手軽に実現

 クラウド型家計簿アプリ「Dr.Wallet」のサンプルデータがここからダウンロードできます。家計簿を付けていない人は、こちらを利用してください。なお、本サンプルデータ中のショップ名、電話番号、住所の情報はすべて架空のものです。実在の企業や事業者とは関係ありません。

情報は随時更新致します。

Pythonあれこれ

投稿日:2024.05.25 | カテゴリー: コード

筆者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第20回では、データの可視化などにも活用できるWebアプリケーションフレームワーク「Streamlit」の、より進んだ使い方を紹介します。

シェルスクリプトマガジン Vol.90は以下のリンク先でご購入できます。

図4 プルダウンメニューでサブページに移動できるようにしたコード

図8 「1_edit.py」ファイルに記述するコード

図11 「2_new.py」ファイルに記述するコード

図11 「2_new.py」ファイルに記述するコード

香川大学SLPからお届け!(Vol.90掲載)

投稿日:2024.05.25 | カテゴリー: コード

著者:小河原 直道

Raspberry Pi 5(以下、ラズパイ5)が日本でも発売され、私も購入しました。センサーとの接続やサーバーの構築をしてみたいと思ったため、湿温度/気圧/CO₂濃度を測定できるセンサーを接続し、その値をWebブラウザから確認できるシステムを作成しました。このシステムの作成ポイントについて解説します。

シェルスクリプトマガジン Vol.90は以下のリンク先でご購入できます。

図8 BME280のチップIDを読み出すPythonコード

図9 BME280の気温データを読み出すPythonコード

図10 MH-Z19CのCO2濃度データを読み出すPythonコード

図12 測定データをデータベースに保存するPythonコード

図13 「db/db_pool.js」ファイルに記述するコード

図14 「route/api_v1.js」ファイルに記述するコード(抜粋)

図15 「route/index.js」ファイルに記述するコード

図16 「app.js」ファイルに記述するコード

Markdownを活用する(Vol.90掲載)

投稿日:2024.05.25 | カテゴリー: コード

著者:藤原 由来

本連載では文書の装飾や構造付けを手軽に行える記法である「Markdown」を用いて、さまざまな文書や成果物を作成する方法を紹介します。今回も前回に引き続き、Markdownベースの高機能なノートアプリ「Obsidian」を扱います。前回の内容を踏まえて、Obsidianの発展的な使い方を紹介します。

図11 デイリーノートのテンプレート(テンプレート_カレー日記)

Raspberry Pi Pico W/WHで始める電子工作(Vol.90掲載)

投稿日:2024.05.25 | カテゴリー: コード

著者:米田 聡

本連載では、人気のマイコンボード「Raspberry Pi Pico W/WH」を活用していきます。同ボードは、無
線LANやBluetoothの通信機能を搭載し、入手しやすく価格も手頃なので、IoT機器を自作するのに最適なハードウエアです。第6回は、DHT-11で測った湿温度をグラフ化します。

シェルスクリプトマガジン Vol.90は以下のリンク先でご購入できます。

図2 10 分おきに湿温度を測定して配列に保存する「DhtDataLogger」クラスのコード(ddl.py)

図3 蓄積した湿温度をグラフとして表示する簡易Webサーバーのプログラム(main.py)

特集2 NVIDIA NeMoで独自の生成AIを構築する(Vol.90記載)

投稿日:2024.05.25 | カテゴリー: コード

著者:澤井 理紀、藤田 充矩

大規模言語モデル(LLM)に基づく生成AIが注目を集めています。そうした生成AIを活用するには、LLMを特定のタスクやデータセットに最適化する「ファインチューニング」が欠かせません。本特集では、生成AIを支える技術を解説した上で、NVIDIAが提供する生成AI向けのフレームワーク「NVIDIA NeMo」を使って独自の生成AIをローカル環境に構築し、LLMをファインチューニングする方法を紹介します。

シェルスクリプトマガジン Vol.90は以下のリンク先でご購入できます。

図2 LLMダウンロード用のPythonスクリプト

図4 PEFTに使用するデータセットの形式を変換するPythonスクリプト

シェルスクリプトマガジンvol.90 Web掲載記事まとめ

投稿日:2024.05.25 | カテゴリー: コード

004 レポート 米OpenAI社の新LLM「GPT-4o」登場
005 レポート JPEGライブラリ「jpegli」公開
006 製品レビュー バイク用エアバッグ「TECH-AIR 5」
007 NEWS FLASH
008 特集1 2024年大注目のMicrosoft Copilot/三沢友治
018 特集2 NVIDIA NeMoで独自の生成AIを構築する/澤井理紀、藤田充矩 コード掲載
026 特集3 Raspberry Pi 5を使う/麻生二郎
036 特別企画 AlmaLinux 9のインストール/麻生二郎
042 Raspberry Pi Pico W/WHで始める電子工作/米田聡 コード掲載
046 Markdownを活用する/藤原由来 コード掲載
052 中小企業手作りIT化奮戦記/菅雄一
056 香川大学SLPからお届け!/小河原直道 コード掲載
062 Pythonあれこれ/飯尾淳 コード掲載
068 これだけは覚えておきたいLinuxコマンド/大津真
076 Techパズル/gori.sh
077 コラム「プロジェクトリーダーの役割」/シェル魔人

Vol.90

投稿日:2024.05.25 | カテゴリー: バックナンバー

 AI(人工知能)による文章、画像、映像、会話、音楽などの自動生成技術「生成AI」がとても注目されています。特に、レポートで紹介した、米OpenAI社の大規模言語モデル(LLM)「GPT-4o」は、人と会話しているように話せる驚きの技術です。シェルスクリプトマガジンでもこの生成AIに着目し、特集1と特集2でも生成AIに関するサービスや技術を取り上げました。
 特集1では、マイクロソフトが提供する生成AIサービス「Microsoft Copilot」を紹介しています。同サービスは、オフィスソフト「Microsoft Office」を含むクラウドサービス「Microsoft 365」から利用できます。そのため、ビジネス分野における生成AIの活用が期待できます。
 特集2では、米NVIDIA社の生成AIフレームワーク「NVIDIA NeMo」による独自生成AI環境を構築する方法を解説しています。同社は、生成AIや機械学習などに不可欠な半導体チップ(素子)「GPU」(Graphics Processing Unit)において世界トップシェアの企業であり、AIに関する多くの最先端技術を有しています。
 特集3では、2024年2月に国内販売が開始された小型コンピュータボードの最上位機種「Raspberry Pi 5」を紹介しています。Raspberry Pi 5では、CPUやGPUの性能が向上し、PCI Expressの外部インタフェースが追加されています。このPCI ExpressにSSDを接続することで、ストレージの高速化と大容量化が期待できます。AI分野でも活用が進む小型コンピュータとして注目の製品です。
 特別企画では、2024年6月末でサポートが切れるLinuxディストリビューション「CentOS Linux」の代替となる「AlmaLinux」のインストール方法を紹介しました。AlmaLinuxは無料で利用でき、サポートが必要なら国内でも有償で受けられます。ビジネスの分野で利用する場合なら、お薦めの代替候補です。
 このほか、新連載として「これだけは覚えておきたいLinuxコマンド」が始まりました。数回に分けて、初心者向けに知っておくべきLinuxコマンドをまとめています。
 今回も読み応え十分のシェルスクリプトマガジン Vol.90。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.90 補足情報

投稿日:2024.05.25 | カテゴリー: コード

特別企画 AlmaLinux 9のインストール

 p.36の「2024年6月31日」は「2024年6月30日」の誤りです。同じページの最初から4行目の「をして」は「として」の誤りです。p.37の右段下から2行目の「Ubuntu Server」は「AlmaLinux」の誤りです。お詫びして訂正します。
 p.37で紹介したISOイメージの書き込みツール「balenaEtcher」の最新版(バージョン1.19.×)では、「PORTABLE」版が提供されていません。記事で紹介したバージョン1.18.11のPORTABLE版(balenaEtcher-Portable-1.18.11.exe)はここからダウンロードできます。

情報は随時更新致します。

Linux定番エディタ入門

投稿日:2024.03.25 | カテゴリー: コード

筆者:大津 真

文章の作成やプログラミングに欠かせないのがテキストエディタ(以下、エディタ)です。この連載では、Linuxで利用できる定番エディタの特徴と使い方を解説していきます。最終回となる今回も、LinuxだけでなくWindowsやmacOSでも利用可能なGUIエディタの定番「Visual Studio Code(VSCode)」を引き続き紹介します。

シェルスクリプトマガジン Vol.89は以下のリンク先でご購入できます。

図1 「test1.md」ファイルに記述するテキストデータ

Pythonあれこれ(Vol.89掲載)

投稿日:2024.03.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第19回では、データの可視化などにも活用できるWebアプリケーションフレームワーク「Streamlit」の基本的な使い方を紹介します。

シェルスクリプトマガジン Vol.89は以下のリンク先でご購入できます。

図7 「magic.py」ファイルに記述するコード

図9 キャッシュを設定するコードの例

図10 山手線の駅の位置を地図上にプロットするWebアプリのコード

図12 ウィジェットをサイドバーに配置するコードの例

Raspberry Piを100%活用しよう(Vol.89掲載)

投稿日:2024.03.25 | カテゴリー: コード

著者:米田 聡

本連載では、人気のマイコンボード「Raspberry Pi Pico W/WH」を活用していきます。同ボードは、無線LANやBluetoothの通信機能を搭載し、入手しやすく価格も手頃なので、IoT機器を自作するのに最適なハードウエアです。第5回は、DHT-11で測った湿温度をスマートフォンに通知します。

シェルスクリプトマガジン Vol.89は以下のリンク先でご購入できます。

図4 LINE Notifyを使って通知を送る「notify()」関数を定義したPythonプログラム

図6 1時間おきに湿温度をスマートフォンに通知するサンプルプログラム(sample.py)

Markdownを活用する(Vol.89掲載)

投稿日:2024.03.25 | カテゴリー: コード

著者:藤原 由来

本連載では文書の装飾や構造付けを手軽に行える記法である「Markdown」を用いて、さまざまな文書や成果物を作成する方法を紹介します。第1回はMarkdownベースの高機能なノートアプリ「Obsidian」の初歩的な使い方と、Markdownの基本的な記法を説明します。

シェルスクリプトマガジン Vol.89は以下のリンク先でご購入できます。

図2 Markdownの記述例

シェルスクリプトマガジンvol.89 Web掲載記事まとめ

投稿日:2024.03.25 | カテゴリー: コード

004 レポート 進研ゼミに生成AI活用新サービス
005 レポート HHKB Studioのキートップカスタム
006 製品レビュー スマートリング「SOXAI RING 1」
007 NEWS FLASH
008 特集1 Amazon EC2入門/飯村望、清水祥伽
023 Hello Nogyo!
024 特集2 コンテンツクラウドのBox/有賀友三、結城亮史、葵健晴、辰己学
040 Markdownを活用する/藤原由来 コード掲載
050 Raspberry Pi Pico W/WHで始める電子工作/米田聡 コード掲載
054 中小企業手作りIT化奮戦記/菅雄一
058 香川大学SLPからお届け!/宇佐美志久眞
062 Pythonあれこれ/飯尾淳 コード掲載
068 Linux定番エディタ入門/大津真 コード掲載
076 Techパズル/gori.sh
077 コラム「顧客と一心同体の精神を育成」/シェル魔人

Vol.89

投稿日:2024.03.25 | カテゴリー: バックナンバー

 「Amazon Elastic Compute Cloud」(Amazon EC2)は、米Amazon Web Services(AWS)社のクラウドコンピューティングサービスの中で最も人気があります。Amazon EC2は、仮想化技術を用いて、CPUやメモリー、ストレージなどのサーバーハードウエア資源を提供する「IaaS」(Infrastructure as a Service)というサービスに分類されます。
 特集1では、このAmazon EC2のサービス内容について初めての人にも分かりやすく解説します。また、無料利用枠を用いてLinuxサーバーを稼働する手順も紹介します。
 特集2では、オンラインストレージ(クラウドストレージ)サービスの「Box」について解説します。最近では、データの重要性が高まってきています。そのデータは、データベースのような構造化されたものだけではありません。文書ファイルなども貴重なデータです。そのため、オンラインストレージは、単なるファイルの保管場所といった役割にとどまりません。ファイルというコンテンツを、いかに安全に共有・活用できるのかが大きな役割になってきています。
 このほか、新連載として「Markdownを活用する」が始まります。Markdownは、文書の装飾や構造付けを手軽に行えるテキスト記法です。このMarkdownを覚えることで、レポートやスライド、書籍などの多種多様な文書を作成できます。
 今回も読み応え十分のシェルスクリプトマガジン Vol.89。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.89 補足情報

投稿日:2024.03.25 | カテゴリー: コード

訂正・補足情報はありません。
情報は随時更新致します。

Raspberry Pi Pico W/WHで始める電子工作(Vol.88掲載)

投稿日:2024.01.25 | カテゴリー: コード

著者:米田 聡

本連載では、人気のマイコンボード「Raspberry Pi Pico W/WH」を活用していきます。同ボードは、無
線LANやBluetoothの通信機能を搭載し、入手しやすく価格も手頃なので、IoT機器を自作するのに最適なハードウエアです。第4回は、モノクロ有機ELディスプレイと湿温度センサー「DHT-11」で日本語表示の湿温度計を作ります。

シェルスクリプトマガジン Vol.88は以下のリンク先でご購入できます。

図9 温度と湿度を日本語で表示するプログラム(temp_hum.py)

Pythonあれこれ(Vol.88掲載)

投稿日:2024.01.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第18回では、米Google社が提供する機械学習フレームワーク「MediaPipe」の顔検出機能を用いて、お遊びのプログラム作成に挑戦します。

シェルスクリプトマガジン Vol.88は以下のリンク先でご購入できます。

図1 顔ランドマーク検出をするコード

図4 「顔ハメ」アプリのコード

特集2 自宅Linuxサーバー構築(Vol.88記載)

投稿日:2024.01.25 | カテゴリー: コード

著者:麻生 二郎

Linuxやサーバーソフト、インターネットの仕組みを知りたいのなら、Linuxサーバーを構築するのが一番です。使わなくなった古いノートパソコンを活用し、自宅内にLinuxサーバーを構築してみましょう。本特集では、その手順を分かりやすく紹介します。

シェルスクリプトマガジン Vol.88は以下のリンク先でご購入できます。

Part3 サーバーソフトを導入する

図1 Sambaの設定(/etc/samba/smb.conf)

シェルスクリプトマガジンvol.88 Web掲載記事まとめ

投稿日:2024.01.25 | カテゴリー: コード

004 レポート Open Source Summit Japan開催
005 レポート 国内開発の日本語LLM
006 製品レビュー スマートテレビ「32S2」
007 NEWS FLASH
008 特集1 CentOS Linux 7からの移行先を考える/弦本春樹
013 Hello Nogyo!
014 特集2 自宅Linuxサーバー構築/麻生二郎 コード掲載
028 特別企画 ゆっくりMovieMaker4で映像制作 シナリオ作り編/ふる(FuruyamD)
038 Raspberry Pi Pico W/WHで始める電子工作/米田聡 コード掲載
042 大規模言語モデル/桑原滝弥、イケヤシロウ
044 Pythonあれこれ/飯尾淳 コード掲載
049 中小企業手作りIT化奮戦記/菅雄一
054 法林浩之のFIGHTING TALKS/法林浩之
056 タイ語から分かる現地生活/つじみき
062 香川大学SLPからお届け!/谷知紘
068 Linux定番エディタ入門/大津真
076 Techパズル/gori.sh
077 コラム「SELiunxとユニケージ」/シェル魔人

Vol.88

投稿日:2024.01.25 | カテゴリー: バックナンバー

 2024年6月末に「CentOS Linux 7」のサポートが終了します。CentOS Linuxは、無償のRed Hat Enterprise Linux(RHEL)互換Linuxディストリビューションで、多くの企業で利用されています。このような状況ですが、CentOS Linux 7の後継であるCentOS Linux 8はすでにサポートが終了し、現在CentOS Linuxの開発は行われていません。そのため、CentOS Linux 7の移行先を早急に考える必要があります。
 特集1では、CentOS Linux 7の移行先となる候補と、候補から移行先を選定するときのポイントを解説します。
 特集2では、自宅にLinuxサーバーを構築する方法を紹介します。数年前に比べ、クラウドサービスを利用すれば、個人でも簡単にLinuxサーバーを運用できます。よって、自宅にLinuxサーバーをわざわざ構築する意味はあまりありません。ただし、Linuxサーバー構築には、Linuxの基本操作、サーバーソフトの導入方法や使い方、インターネットの仕組み、セキュリティを含めたサーバーの運用管理方法など、ITに関する多くの知識が詰まっています。自宅にLinuxサーバーを構築してそれらの知識を身に付けましょう。
 特別企画は、動画投稿・共有サイト「YouTube」で人気の「ゆっくり実況」「ゆっくり解説」を作成できる無料動画編集ソフト「ゆっくりMovieMaker4」の第3弾(最終回)です。今回は、ストーリやシナリオの組み立て方、表示回数や視聴回数などのデータ分析など、人気が出る動画を制作するためのノウハウを解説します。
 このほか、連載の「Raspberry Pi Pico W/WHで始める電子工作」では日本語表示の湿温度計、「Pythonあれこれ」と「香川大学SLPからお届け!」ではそれぞれ、AI(人工知能)を使った顔検出とじゃんけんマシンを紹介します。
 今回も読み応え十分のシェルスクリプトマガジン Vol.88。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.88 補足情報

投稿日:2024.01.25 | カテゴリー: コード

特集2 自宅Linuxサーバー構築

p.14の「Windows 10のサポートが終了する2024年6月末ごろ」は「Windows 10(バージョン22H2)のサポートが終了する2025年10月14日」の誤りです(詳しくサポート期間は、こちら)。お詫びして訂正いたします。

Windows 10(バージョン22H2)は、まだ1年半以上のサポートが受けられますので、安心してお使いください。

情報は随時更新致します。

香川大学SLPからお届け!(Vol.87掲載)

投稿日:2023.11.25 | カテゴリー: コード

著者:大村 空良

プログラミングにおいて重要な要素の一つが、プログラムの実行速度です。プログラムの実行速度は、より良いアルゴリズムを選択することで大きく改善できます。今回は、巡回セールスマン問題を解くC++プログラムを、アルゴリズムを変更して高速化した例を紹介します。

シェルスクリプトマガジン Vol.87は以下のリンク先でご購入できます。

図2 図1の巡回セールスマン問題を解くC++コード「sample1.cpp」

図3 都市数を変えられるように図2のコードを拡張した「sample2.cpp」

図4 ヘッダーファイル生成用のPythonスクリプト「make_header.py」

図5 フィボナッチ数を求めるC++コード「sample3.cpp」

図7 動的計画法を用いて改良したコード「sample4.cpp」

図10 動的計画法を用いて改良したコード「sample5.cpp」

Pythonあれこれ(Vol.87掲載)

投稿日:2023.11.25 | カテゴリー: コード

著者:飯尾淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第17回では、データを記録して残す「永続化」の手法の続編として、O/Rマッパーを使ってデータベースにアクセスする方法について解説します。

シェルスクリプトマガジン Vol.87は以下のリンク先でご購入できます。

図3 宣言的マッピングをするコード

図4 データベースエンジンとなるオブジェクトを作成するコード

図5 発行されるSQL

図6 データ操作用オブジェクトを作成するコード

図7 図6のコードを実行した際の画面出力(抜粋)

図8 簡単な検索をするコード

図9 図8のコードを実行した際に発行されるSQL

図10 図8のコードを実行した際に表示される検索結果

図11 少し複雑な検索をするコード

図12 図11のコードを実行した際に発行されるSQL

図13 データ変更のシンプルなコード例

図14 図13のコードを実行した際に発行されるSQL

図15 データ変更の少し複雑なコード例

図16 図15のコードを実行した際に発行されるSQL

シェルスクリプトマガジンvol.87 Web掲載記事まとめ

投稿日:2023.11.25 | カテゴリー: コード

004 レポート Raspberry Pi 5が登場
005 レポート キーボード「HHKB Studio」が発売
006 製品レビュー 小型パソコン「X68000 Z PRODUCT EDITION BLACK MODEL」
007 NEWS FLASH
008 特集1 ゆっくりMovieMaker4で映像制作 編集作業編/ふる(FuruyamD)
014 特集2 電子帳簿保存法を知る/永禮啓大
021 Hello Nogyo!
022 特別企画 アプリバで業務システム開発/前佛雅人
032 Raspberry Pi Pico W/WHで始める電子工作/米田聡
035 行動経済学と心理学で円滑に業務を遂行/請園正敏
038 Pythonあれこれ/飯尾淳 コード掲載
044 法林浩之のFIGHTING TALKS/法林浩之
046 中小企業手作りIT化奮戦記/菅雄一 コード掲載
052 エコシステム/桑原滝弥、イケヤシロウ
054 香川大学SLPからお届け!/大村空良
060 タイ語から分かる現地生活/つじみき
066 ユニケージ通信/ぱぺぽ
070 Linux定番エディタ入門/大津真
076 Techパズル/gori.sh
077 コラム「ユニケージが実現・目指しているところ」/シェル魔人

Vol.87

投稿日:2023.11.25 | カテゴリー: バックナンバー

 特集1は、動画投稿・共有サイト「YouTube」で人気の「ゆっくり実況」「ゆっくり解説」を作成できる無料動画編集ソフト「ゆっくりMovieMaker4」の第2弾です。今回は、以前の特集で設定したキャラクタや、字幕が動く動画の編集作業を紹介します。
 特集2は、2023年12月末に宥恕(ゆうじょ)措置が廃止となる電子帳簿保存法(電帳法)です。2023年10月から開始されたインボイス制度を含めて、企業が対応しなければならない法制度が増えています。電帳法への対応は今からでも間に合います。本特集を読んで2024年1月からの義務化を乗り越えてください。
 特別企画では、さくらインターネットが提供する、ノーコードによるモバイルアプリ開発および配備環境のクラウドサービス「アプリバ」を紹介します。サイボウスの「kintone」(キントーン)など、プログラミングの知識がない人でも業務アプリを開発できるノーコード開発が注目されています。アプリバは1カ月無料で試せるので、本企画を読んでノーコード開発を体験してみましょう。
 このほか、レポートではコンパクトキーボードの新版「HHKB Studio」、製品レビューではパソコン「X68000」を復刻した小型パソコン「X68000 Z PRODUCT EDITION BLACK MODEL」といった話題の新製品を紹介しています。
 今回も読み応え十分のシェルスクリプトマガジン Vol.87。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.87 補足情報

投稿日:2023.11.25 | カテゴリー: コード

訂正・補足情報はありません。
情報は随時更新致します。

ユニケージ通信(Vol.86掲載)

投稿日:2023.09.25 | カテゴリー: コード

著者:田渕 智也、高橋 未来哉

業務システム開発手法の「ユニケージ」では、データベース管理システムやフレームワークなどを使わずにシステムを構築します。システムの中身が見えやすい分、仕組みやルールを理解していないと正しい開発ができません。第5回は、排他制御について紹介します。

シェルスクリプトマガジン Vol.86は以下のリンク先でご購入できます。

図2 ulockコマンド

香川大学SLPからお届け!(Vol.86掲載)

投稿日:2023.09.25 | カテゴリー: コード

著者:石上 椋一

今回は、私が開発した文章校正用のWebアプリケーションについて紹介します。文章校正機能は「textlint」というNode.js上で稼働するアプリケーションを使って実現しているため、少ないコード量で実装できました。米Google社のアプリケーション開発プラットフォーム「Firebase」を利用したユーザー認証機能を付加する方法も解説します。

シェルスクリプトマガジン Vol.86は以下のリンク先でご購入できます。

図1 テンプレートファイル「index.html」に記述するコード

図2 テンプレートファイル「result.html」に記述するコード

図3 「web_app.py」ファイルに記述するコード

図4 「.textlintrc.json」ファイルに記述する設定の例

図10 「~/webapp/static/json/firebase.json」ファイルに記述する設定の例

図11 テンプレートファイル「create_account.html」に記述するコード

図12 テンプレートファイル「login.html」に記述するコード

図13 「web_app.py」ファイルの「app = Flask(name)」行の前後に追加するコード

図14 「web_app.py」ファイルの既存のルーティング設定にコードを追加

図15 「web_app.py」ファイルにルーティング設定を追加

Pythonあれこれ(Vol.86掲載)

投稿日:2023.09.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温
かく見守ってください。皆さんと共に勉強していきましょう。第16回では、データを永続的に残す「永続化」の手法の一つとして、Pythonプログラムからデータベースにアクセスする方法について解説します。

シェルスクリプトマガジン Vol.86は以下のリンク先でご購入できます。

図3 データベースにテーブルを作成してデータを格納するコード

図5 テーブルのデータを読み出すコード

図6 commit()を忘れたコードの例

図8 データベースに含まれるテーブルを表示するコード

図9 ファイル内にデータベースを作成するコード

図10 ファイル内データベースのテーブルからデータを読み出すコード

Raspberry Pi Pico W/WHで始める電子工作(Vol.86掲載)

投稿日:2023.09.25 | カテゴリー: コード

著者:米田 聡

本連載では、人気のマイコンボード「Raspberry Pi Pico W」を活用していきます。同ボードは、無線LANやBluetoothの通信機能を搭載し、入手しやすく価格も手頃なので、IoT機器を自作するのに最適なハードウエアです。第2回は、有機ELディスプレイを取り付けます。

シェルスクリプトマガジン Vol.86は以下のリンク先でご購入できます。

図6 SSD1306搭載有機ELディスプレイを動作させるサンプルプログラム(ssd1306_sample.py)

特集1 COBOL入門(Vol.86記載)

投稿日:2023.09.25 | カテゴリー: コード

著者:比毛 寛之

レガシー問題や技術者不足などで話題の多いプログラミング言語が「COBOL」です 。古い言語というイメージがありますが、ISOから2023年の新規格が公表されたことでも分かるように、現在も進化を続けています。本特集では、COBOLの現状を紹介しつつ、「opensource COBOL 4J」というオープンソースソフトウエアのCOBOLコンパイラを使ってCOBOL言語の基本を解説します。

シェルスクリプトマガジン Vol.86は以下のリンク先でご購入できます。

図1 「HELLO WORLD!」という文字列を表示するCOBOLのサンプルコード

図4 COBOLのサンプルコード

図5 コンソールからの入力と画面への出力をするサンプルコード

図6 ファイルにデータを出力するサンプルコード

図7 ファイル中のレコードを読み出して画面に表示するサンプルコード

図9 「EMPSEARCH.cbl」ファイルに記述するコード

図10 「EMPREAD.cbl」ファイルに記述するコード

図11 「EmpSearchDemo.java」ファイルに記述するコード

特集1 Markdown入門ガイド(Vol.86記載)

投稿日:2023.09.25 | カテゴリー: コード

著者:藤原 由来

本特集では、文書の装飾や構造付けを手軽に実施できる記法「Markdown」について解説します。Markdownを使うと、テキストファイルでレポートやスライド、書籍などを作成でき、GitHubなどの各種Webサービスでの投稿やコミュニケーションがより便利になります。

シェルスクリプトマガジン Vol.86は以下のリンク先でご購入できます。

図2 Markdownの記述内容

図19 Markdownテキストの例

図46 MarpによるスライドのMarkdownテキスト例

シェルスクリプトマガジンvol.86 Web掲載記事まとめ

投稿日:2023.09.25 | カテゴリー: コード

004 レポート Python in Excelの開発版登場
005 レポート iPhone 15シリーズを発表
006 製品レビュー 電子小物「koko Tag(ココタグ)」
007 NEWS FLASH
008 特集1 Markdown入門ガイド/藤原由来 コード掲載
024 特集2 最新COBOL入門/比毛寛之 コード掲載
034 特別企画 CMSのPlone/酒井忠臣、烈
046 Raspberry Pi Pico W/WHで始める電子工作/米田聡 コード掲載
050 CMS/桑原滝弥、イケヤシロウ
052 Pythonあれこれ/飯尾淳 コード掲載
057 Hello Nogyo!
058 中小企業手作りIT化奮戦記/菅雄一
062 法林浩之のFIGHTING TALKS/法林浩之
064 香川大学SLPからお届け!/石上椋一 コード掲載
072 行動経済学と心理学で円滑に業務を遂行/請園正敏
076 タイ語から分かる現地生活/つじみき
082 Linux定番エディタ入門/大津真
088 ユニケージ通信/田渕智也、高橋未来哉 コード掲載
091 Techパズル/gori.sh
093 コラム「ユニケージアーキテクチャ」/シェル魔人

Vol.86

投稿日:2023.09.25 | カテゴリー: バックナンバー

 多くのエンジニアがドキュメントを書くときによく用いているのが、マークアップ言語「Markdown」です。Markdownでは、テキスト記述によって文書の装飾や構造付けを手軽に行えます。
 特集1では、このMarkdownの書き方を初心者にも分かりやすく紹介します。コードエディタのVisual Studio Code上でMarkdownの記述を試しながら、読み進められます。Markdownの基本から活用法まで、自分のものにしてください。
 特集2では、メインフレームなどのレガシー環境で使われてきたプログラミング言語「COBOL」を解説しています。現在もCOBOL技術者に対する需要はあります。また、オープンソースソフトウエアとしてCOBOLのコンパイラは進化を続けています。業務システムに携わる機会があるエンジニアや、システム部門の人に、この特集2はお薦めです。
 特別企画では、オープンソースのコンテンツ管理システム「Plone」を紹介しています。Ploneは、プログラミング言語のPythonと、コンテンツ管理フレームワークのZopeを用いて開発されています。WordPressのような手軽さよりも大規模サイトで動かすことを目的としたPloneを、この機会に知ってください。
 このほか、レポートでは、表計算ソフトのMicrosoft ExcelでPythonコードを実行可能にする、開発中の「Python in Excel」を紹介しています。
 今回も読み応え十分のシェルスクリプトマガジン Vol.86。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.86 補足情報

投稿日:2023.09.25 | カテゴリー: コード

訂正・補足情報はありません。
情報は随時更新致します。

香川大学SLPからお届け!(Vol.85掲載)

投稿日:2023.07.25 | カテゴリー: コード

著者:谷 知紘

 今回は、C言語を用いて作成した、コンピュータと対戦できるリバーシを紹介します。あまり強くはありませんが、きちんとコンピュータが相手をしてくれます。C99以降の規格に対応するCコンパイラと標準Cライブラリがあれば、環境を問わずに動作するプログラムになっていますので、皆さんもコンパイルして楽しんでください。

シェルスクリプトマガジン Vol.85は以下のリンク先でご購入できます。

図5 盤面の生成用コード

図6 check_plc()関数のコード

図8 check_dir()関数のコード

図9 place_stn()関数のコード

図10 think()関数のコード

図11 copydata()関数のコード

図12 calcweight()関数のコード

Raspberry Pi Pico W/WHで始める電子工作(Vol.85掲載)

投稿日:2023.07.25 | カテゴリー: コード

著者:米田 聡

本連載では、人気のマイコンボード「Raspberry Pi Pico W/WH」を活用していきます。同ボードは、無線LANやBluetoothの通信機能を搭載し、入手しやすく、価格も手頃なので、IoT機器を自作するのに最適なハードウエアです。第1回は、プログラムの開発環境を構築します。

シェルスクリプトマガジン Vol.85は以下のリンク先でご購入できます。

図17 初期化プログラム(boot.py)

図18 簡易ネットワークサーバー(main.py)

シェルスクリプトマガジンvol.85 Web掲載記事まとめ

投稿日:2023.07.25 | カテゴリー: コード

004 レポート Wasm向けPOSIX互換ライブラリ「WASIX」
005 レポート 手のひらネットワーク機器
006 製品レビュー ロボット「NICOBO(ニコボ)」
007 NEWS FLASH
008 特集1 ゆっくりMovieMaker4で映像制作 準備編/ふる(FuruyamD)
015 Hello Nogyo!
016 特集2 ZabbixのAWS監視機能を使ってみよう/寺島広大、渡邊隼人、水谷和弘、狩俣樹
026 特集3 ChatGPTで注目の対話型AI/三沢友治
034 特別企画 成功するアジャイル開発/奥村剛史
044 Raspberry Pi Pico W/WHで始める電子工作/米田聡 コード掲載
054 Pythonあれこれ/飯尾淳
060 行動経済学と心理学で円滑に業務を遂行/請園正敏
064 中小企業手作りIT化奮戦記/菅雄一
068 SEO/桑原滝弥、イケヤシロウ
070 タイ語から分かる現地生活/つじみき
076 法林浩之のFIGHTING TALKS/法林浩之
078 香川大学SLPからお届け!/谷知紘 コード掲載
084 Linux定番エディタ入門/大津真
091 ユニケージ通信/田渕智也、高橋未来哉
096 Techパズル/gori.sh
097 コラム「ユニケージはデータ移行も得意」/シェル魔人

Vol.85

投稿日:2023.07.25 | カテゴリー: バックナンバー

 動画投稿・共有サイト「YouTube」には、「ゆっくりしていってね!!!」というフレーズで始まる、「ゆっくり実況」や「ゆっくり解説」と呼ばれる動画が数多くあります。同動画は、憎たらしくもかわいい2人のキャラクタが会話をしながらゲーム実況や各種解説をする人気のコンテンツです。
 特集1では、無料の動画編集ソフト「ゆっくりMovieMaker4」と、キャラクタ素材「ゆっくり立ち絵」を用いて「ゆっくり実況」や「ゆっくり解説」の動画を作成する方法を数回の分けて紹介します。今回はその準備編です。
 特集2では、ネットワークやサーバーを監視するためのオープンソース監視ソフト「Zabbix」を解説します。最新版ではオンプレミス環境だけでなく、クラウド環境での監視も可能です。よって、特集1の後半では、人気のクラウドサービス「Amazon Web Services」(AWS)上でZabbixを稼働・監視する方法を紹介します。
 特集3では、話題のAIチャット「ChatGPT」が用いている大規模言語モデル「GPT」を使いこなすための「プロンプトエンジニアリング」を解説します。プロンプトエンジニアリングによりどうやったら期待する応答が得られるのかを、Bing Chatで試しながら紹介します。
 特別企画では、ソフトウエアやシステムの開発手法である「アジャイル開発」に焦点を当てました。アジャイル開発を導入しても成功していない企業は多数あります。失敗の原因は何か、どうすれば成功するのかを「アジャイルソフトウエア開発宣言」から解説していきます。
 このほか、新連載として「Raspberry Pi Pico W/WHで始める電子工作」が始まりました。安価で入手しやすいラズパイを使ってIoT(モノのインターネット)機器などを製作していきます。
 今回も読み応え十分のシェルスクリプトマガジン Vol.85。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.85 補足情報

投稿日:2023.07.20 | カテゴリー: コード

特集1 ゆっくりMovieMaker4で映像制作 準備編

p.12の表1の一番下の行にある「00d.png」は「00e.png」の誤りです。お詫びして訂正いたします。

特集2 ZabbixのAWS監視機能を使ってみよう

 p.18に記した「後述するAWS用のテンプレートの利用を含め、すべてAWSの無料利用枠で試せる」という情報は誤りでした。正しくは、AWS用のテンプレート利用時には、CloudWatchからGetMetricData APIでメトリクスを取得する料金がかかります。料金は、メトリクス1000件当たり0.01ドルです。お詫びして訂正いたします。なお、Kindle版とPDF版(定期購読特典)は修正済みです。

情報は随時更新致します。

Linux定番エディタ入門(Vol.84掲載)

投稿日:2023.05.25 | カテゴリー: コード

著者:大津 真

文章の作成やプログラミングに欠かせないのがテキストエディタ(以下、エディタ)です。この連載では、Linuxで利用できる定番エディタの特徴と使い方を解説していきます。第1回に取り上げるのは、CU(I Character User Interface)環境で利用できるシンプルで扱いやすい「GNU nano」です。

シェルスクリプトマガジン Vol.84は以下のリンク先でご購入できます。

図12 nanoの設定ファイル「~/.nanorc」の記述例

AWKでデジタル信号処理(Vol.84掲載)

投稿日:2023.05.25 | カテゴリー: コード

著者:斉藤 博文

プログラミング言語「AWK」は、データストリーム(データの流れ)を逐次処理するのに適しています。本連載では、電子回路の分野でその特徴を生かし、シェルスクリプトを組み合わせてデジタル信号を処理します。最終回は前回の続きとして、心電図データの解析について解説します。

シェルスクリプトマガジン Vol.84は以下のリンク先でご購入できます。

図5 ecg.awk内のlpf()関数

図6 ecg.awk内の最終結果を出力するprintf()文で群遅延を補正

図12 ecg.awk内のしきい値(val_data_sma_threshold)を設定している箇所

図13 ecg.awk内のval_data_flgを「1」に設定している箇所

図14 ecg.awk内のidx_data_hpf_maxを求めている箇所

図15 ecg.awk内のarr_data_flg[idx_data_hpf_max]を「1」に設定している箇所

図18 ecg.awk内のRRIを求めている箇所

香川大学SLPからお届け!(Vol.84掲載)

投稿日:2023.05.25 | カテゴリー: コード

著者:三井 颯剛

SLPでは、Webページの公開などに使用しているサーバーを立て直す計画が進行中です。再建後のサーバーでは、「Traefik(トラフィック) 」というコンテナ環境向けのリバースプロキシソフトウエアを採用する予定です。今回は、Dockerでサーバーコンテナを稼働させて、それに対するアクセスをTraefikで制御する場合を例に、Traefikの利用方法について紹介します。

シェルスクリプトマガジン Vol.84は以下のリンク先でご購入できます。

図3 「docker-compose.yml」ファイルに記述する設定

図6 ダッシュボードを有効にする場合の「docker-compose.yml」ファイルの記述

図9 「traefik.yml」ファイルに記述する内容

図10 設定を分離した場合の「docker-compose.yml」ファイルの記述例

中小企業手作りIT化奮戦記(Vol.84掲載)

投稿日:2023.05.25 | カテゴリー: コード

筆者:菅 雄一

自社サーバーからレンタルサーバーへの移行が世の流れだ。本連載の第58回「PHP+MySQL環境にシステムを移行」に書いたが、筆者の勤務先でも保守作業の軽減や故障回避のためにレンタルサーバーに移行する方針になった。2023年1月に、四苦八苦しながら顧客向けWeb検索システムを移行し、ようやくレンタルサーバーへの移行が一段落した。今回は、この難航した移行作業について書くことにする。

シェルスクリプトマガジン Vol.84は以下のリンク先でご購入できます。

図2 バックアップファイル内の文字コード設定を変更

Pythonあれこれ(Vol.84掲載)

投稿日:2023.05.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温
かく見守ってください。皆さんと共に勉強していきましょう。第14回では、話題のAIチャットボット「ChatGPT」を使ったPythonプログ「ラムの作成にチャレンジします。ChatGPTは、どの程度のプログラムを生成してくれるのでしょうか。

シェルスクリプトマガジン Vol.84は以下のリンク先でご購入できます。

図2 1回目にChatGPTが生成したPythonプログラム

図3 2回目にChatGPTが生成したPythonプログラム

図4 3回目にChatGPTが生成したPythonプログラム

図5 4回目にChatGPTが生成したPythonプログラム

図6 5回目にChatGPTが生成したPythonプログラム

特別企画 Raspberry Piを100%活用しよう 拡大版(Vol.84記載)

投稿日:2023.05.25 | カテゴリー: コード

著者:米田 聡

小型コンピュータボード「Raspberry Pi」(ラズパイ)向けにさまざまな拡張ボードが発売されています。その拡張ボードとラズパイを組み合わせれば、ラズパイでいろいろなことが簡単に試せます。本企画では、前回に引き続き、ラズパイと連携して使用するマイコンボードを扱います。

シェルスクリプトマガジン Vol.84は以下のリンク先でご購入できます。

図8 I★2★CアドレスとGPIOピン番号の設定(ADRS2040U_i2c.h)

図9 I2CとI2C Slaveライブラリの初期化

図10 コールバック関数「i2c_slave_handler()」

図11 ADCの初期化で呼び出す関数

図12 adc_fifo_setup()関数の引数パラメータ

図13 ADCの受信FIFOバッファ割り込み処理のサンプルコード

図14 サンプリングレート設定のサンプルコード

図15 リングバッファのサンプルコード

図16 クリティカルセクションの保護

図17 サンプルファームウエアのレジスタ番号定義(ADRS2040U_i2c.h)

図18 I2Cスレーブ動作時に使えるFIFOバッファ読み書き関数

図19 サンプルファームウエアのi2c_slave_handler()関数とその関連個所(main.cpp)

図20 受信FIFOバッファからデータを取り出すための前処理

図22 ADCへアクセスするサンプルプログラム(adcsample.py)

図23 ADCから取得したデータをグラフ化するサンプルプログラム(adctest.py)

シェルスクリプトマガジンvol.84 Web掲載記事まとめ

投稿日:2023.05.25 | カテゴリー: コード

004 レポート オープンソースLLM「MPT-7B」登場
005 レポート メタバースファッションフェア初開催
006 製品レビュー 調理家電「コーヒー豆焙煎機 MR-F60A」
007 NEWS FLASH
008 特集1 pandasを使いこなそう/鶴長鎮一
020 特集2 AutoML徹底解説 応用編/田村孝、山口武彦、新田陸、細野友基
034 特別企画 Raspberry Piを100%活用しよう 拡大版/米田聡 コード掲載
046 注目技術「XR BASE」/井上香
048 Pythonあれこれ/飯尾淳 コード掲載
054 法林浩之のFIGHTING TALKS/法林浩之
056 中小企業手作りIT化奮戦記/菅雄一 コード掲載
060 ツールキット/桑原滝弥、イケヤシロウ
062 タイ語から分かる現地生活/つじみき
068 香川大学SLPからお届け!/三井颯剛 コード掲載
075 Hello Nogyo!
076 行動経済学と心理学で円滑に業務を遂行/請園正敏
080 Linux定番エディタ入門/大津真 コード掲載
086 AWKでデジタル信号処理/斉藤博文 コード掲載
094 Techパズル/gori.sh
095 コラム「ユニケージにおける独特なドキュメント」/シェル魔人

Vol.84

投稿日:2023.05.25 | カテゴリー: バックナンバー

 世の中には、さまざまなデータが存在します。それらのデータを分析して課題解決や意思決定につなげていく「データサイエンティスト」という職業が近年注目されています。特集1では、プログラミング言語「Python」における人気のデータ分析ライブラリ「pandas」の使い方を紹介します。このpandasは、データサイエンティストにとって、とても有用なライブラリです。
 特集2では、前回に引き続き、AI(人工知能)の機械学習において最近話題の「AutoML」(Automated Machine Learning)を解説します。AutoMLは、機械学習モデルに係る作業を完全に自動化し、機械学習の知識がなくても簡単にAIの実装を可能にする技術です。データサイエンティストなどの専門家でなくてもAIが扱えます。今回の応用編では、IBM Cloudの「AutoAI」上で、データの収集から、AutoMLの活用、業務への適用、運用までの利用事例を紹介します。
 特別企画は、2023年3月10日にビット・トレード・ワンから発売された拡張ボード「ラズベリーパイ接続 RP2040エッジアクセラレータ」の使い方の後編です。同ボードは、Raspberry Pi Picoに搭載されているArmプロセッサ「RP2040」を備えていて、Raspberry Pi Pico以外のRaspberry Piと連携して利用します。後編では、C++言語で拡張ボードのファームウエアを開発し、同ボードに搭載されているアナログ/デジタルコンバータ(ADC)からの出力をラズパイに渡してグラフ化します。
 このほか、新連載として「Linux定番エディタ入門」が始まりました。初回は「nano」エディタです。「Vim」や「Visual Studio Code」なども紹介する予定です。
 今回も読み応え十分のシェルスクリプトマガジン Vol.84。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.84 補足情報

投稿日:2023.05.25 | カテゴリー: コード

製品レビュー コーヒー豆焙煎機 MR-F60A

p.6に記した発売日の「2023年3月30日」は誤りでした。正しくは「2023年4月4日」です。お詫びして訂正いたします。

情報は随時更新致します。

Bash入門(Vol.83記載)

投稿日:2023.03.25 | カテゴリー: コード

著者:大津 真

LinuxやmacOSなど、UNIX系OSのコマンドラインで使用されるコマンドインタプリタをシェルと呼びます。本連載では高機能シェルとして人気の高い「Bash」の基本操作について説明していきます。最終回となる今回は、シェルで実行可能なプログラミング言語である「シェルスクリプト」について解説します。

シェルスクリプトマガジン Vol.83は以下のリンク先でご購入できます。

図2 図1のコマンド行と同様の処理をするシェルスクリプトの例

図5 図2のシェルスクリプトを変数を使うように書き換えた例

図6 図5のシェルスクリプトをコマンドライン引数を参照するように書き換えた例

図7 if文を使用したシェルスクリプトの例

図8 図6のシェルスクリプトを条件式とif文を使って書き換えた例

図9 for文を使ったシェルスクリプトの例

図10 図8のシェルスクリプトをfor文を使って書き換えた例

図12 配列を使ったシェルスクリプトの例

香川大学SLPからお届け!(Vol.83掲載)

投稿日:2023.03.25 | カテゴリー: コード

著者:安田 大朗

最近、さまざまな場面でチャットbotなどの対話システムを見かけます。その中には、感情表現の機能を持ち、より人間らしい振る舞いをするものもあります。私はそうした対話システムに興味があり、ユーザーが入力したテキストの感情を分析し、それに応じた反応をする対話システムを作成しました。今回は、私が開発したその対話システムについて紹介します。

シェルスクリプトマガジン Vol.83は以下のリンク先でご購入できます。

図4 「telegram-bot.py」ファイルに記述するコード

図5 「aim_system1.py」ファイルに記述するコード

図6 「aim.xml」ファイルに記述するルールの例

図8 「aim_system2.py」ファイルに記述するコード

Pythonあれこれ(Vol.83掲載)

投稿日:2023.03.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温
かく見守ってください。皆さんと共に勉強していきましょう。第13回では、PyTorchという機械学習ライブラリを使って、手書きの数字を画像認識によって分類してみます。実際に作業することで、機械学習の効果を感じてください。

シェルスクリプトマガジン Vol.83は以下のリンク先でご購入できます。

図1 MNISTデータセットをダウンロードするためのコード

図4 MNISTデータセットのデータを1セット表示するコード

図6 学習データと検証データを用意するコード

図9 ニューラルネットワークモデルを定義するコード

図11 学習前の準備をするコード

図12 画像認識の精度を検証するコード

図13 モデルを学習させるコード

図15 個別の判定結果を確認するコード

特別企画 Raspberry Piを100%活用しよう 拡大版(Vol.83記載)

投稿日:2023.03.25 | カテゴリー: コード

著者:米田 聡

小型コンピュータボード「Raspberry Pi」(ラズパイ)向けにさまざまな拡張ボードが発売されています。その拡張ボードとラズパイを組み合わせれば、ラズパイでいろいろなことが簡単に試せます。本企画では、ラズパイと連携して使用するマイコンボードを扱います。

シェルスクリプトマガジン Vol.83は以下のリンク先でご購入できます。

図A uf2conv.pyの修正箇所

特集1 Ruby on Rails入門(Vol.83記載)

投稿日:2023.03.25 | カテゴリー: コード

著者:安川要平

本特集では、地図アプリの作成を題材に、Webアプリケーションフレームワーク「Ruby on Rails」によるWebアプリの開発手順を紹介します。説明は、米GitHub社が提供するクラウド開発環境「GitHub Codespaces」を使って進めます。そのため、Webブラウザさえあれば紹介する手順を確認できます。Webブラウザだけで体験できるようになった最新のRubyとRailsを一緒に触ってみましょう。

シェルスクリプトマガジン Vol.83は以下のリンク先でご購入できます。

図15 「app/models/spot.rb」ファイルに追加する1行

図16 「app/views/apots/_form.html.erb」ファイルに追加する記述

図18 「app/controllers/spots_controller.rb」ファイルに追加する記述

図19 「app/helpers/spots_helper.rb」ファイルに追加する記述

図25 提供されるサンプルデータの内容

図26 サンプルデータを取得して画面に表示するコード

図28 サンプルデータを自動入力するコード

レポート2(Vol.83掲載)

投稿日:2023.03.25 | カテゴリー: コード

著者:末安 泰三

話題のAIチャットボット「ChatGPT」のAP(I Application Programming Interface)を、開発元の米OpenAIが有償公開した。APIの公開により、自作プロダクトにChatGPTの機能を手軽に組み込めるようになった。2023年3月時点の利用料金は、1000トークン当たり0.002ドルだ。

シェルスクリプトマガジン Vol.83は以下のリンク先でご購入できます。

図1 ChatGPT APIを利用するPythonコードの例

シェルスクリプトマガジンvol.83 Web掲載記事まとめ

投稿日:2023.03.25 | カテゴリー: コード

004 レポート モーションキャプチャ「mocopi」 サンプル動画掲載
005 レポート ChatGPT API公開 コード掲載
006 製品レビュー ウエアラブルデバイス「Redmi Smart Band2」
007 NEWS FLASH
008 特集1 Ruby on Rails入門/安川要平 コード掲載
020 特集2 AutoML徹底解説 入門編/田村孝、山口武彦、新田陸、細野友基
034 特別企画 Raspberry Piを100%活用しよう 拡大版/米田聡 コード掲載
044 Pythonあれこれ/飯尾淳 コード掲載
049 Hello Nogyo!
050 香川大学SLPからお届け!/安田大朗 コード掲載
056 法林浩之のFIGHTING TALKS/法林浩之
058 中小企業手作りIT化奮戦記/菅雄一
062 SCM/桑原滝弥、イケヤシロウ
064 タイ語から分かる現地生活/つじみき
070 行動経済学と心理学で円滑に業務を遂行/請園正敏
074 AWKでデジタル信号処理/斉藤博文
082 ユニケージ通信/田渕智也、高橋未来哉
086 Bash入門/大津真 コード掲載
096 Techパズル/gori.sh
097 コラム「ユニケージ式プロジェクト管理法」/シェル魔人

Vol.83

投稿日:2023.03.25 | カテゴリー: バックナンバー

 過去に爆発的な人気を博した、プログラミング言語「Ruby」のWebアプリケーションフレームワーク「Ruby on Rails」ですが、現在では「死んだ」と言われています。しかし、昨年11月にRuby on Railsのドキュメントや教育、マーケティングなどを支援する団体「Rails財団」が設立されました。また、昨年末にRubyの新版「Ruby 3.2」がリリースされました。このようにRuby on RailsおよびRubyに対して大きな変化が訪れています。
 特集1では、地図アプリの作成を題材に、Ruby on RailsによるWebアプリケーション開発を紹介します。素早くプログラミングができるRuby on Railsを体験してみてください。
 特集2では、入門編として、AI(人工知能)の機械学習において最近話題の「AutoML」(Automated Machine Learning)を解説します。AutoMLは、機械学習モデルに係る作業を完全に自動化し、機械学習の知識がなくても簡単にAIの実装を可能にする技術です。データサイエンティストなどの専門家でなくてもAIが扱えますので、ぜひ注目してください。
 特別企画では、2023年3月10日にビット・トレード・ワンから発売された拡張ボード「ラズベリーパイ接続 RP2040エッジアクセラレータ」の使い方を2回に分けて紹介します。同ボードは、Raspberry Pi Picoに搭載されているArmプロセッサ「RP2040」を備えていて、Raspberry Pi Pico以外のRaspberry Piと連携して利用します。リアルタイム制御など、Raspberry Pi Pico以外のRaspberry Piのみでは実現できないことも可能です。
 このほか、連載「香川大学SLPからお届け!」では、メッセージの感情表現を絵文字で表すチャットボットの作成方法を、連載「中小企業手作りIT化奮戦記」では、新システム導入時に発生した数々の問題を紹介しています。どちらも大変面白い内容になっています。
 今回も読み応え十分のシェルスクリプトマガジン Vol.83。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.83 補足情報

投稿日:2023.03.25 | カテゴリー: コード

特別企画 Raspberry Piを100%活用しよう 拡大版

 同企画で扱いました、PlatformIO向けのRP2040用ソフトウエア基盤(フレームワーク)が「https://github.com/Wiz-IO/wizio-pico」から入手できなくなってしまいました。原作者に問い合わせましたが、返答はなく理由は不明です。ご迷惑をおかけして申し訳ございません。
 「https://github.com/Wiz-IO/wizio-pico」にアクセスして図1のように表示されたときは、以下の方法で入手・導入してください。
(1)特別企画記事の通りに開発ツール「Visual Studio Code」(VSCode)とWindows版Gitクライアント「Git for Windows」をインストールします。
(2)PlatformIO向けのRP2040用ソフトウエア基盤(フレームワーク)を「https://future.quake4.jp/wizio-pico.zip」からダウンロードします。
(3)VSCodeを起動しているならいったん終了します。
(4)「C:¥Users¥ユーザー名¥.platformio¥」(ユーザー名はWindowsのアカウント名)の下にダウンロードした「wizio-pico.zip」ファイルを展開します。

図1 ページが見つからない場合の表示

情報は随時更新致します。

レポート1(Vol.83掲載)

投稿日:2023.02.15 | カテゴリー: コード

シェルスクリプトマガジン Vol.83(2023年4月号)で紹介したモーションキャプチャデバイス「mocopi」で作成したモーションキャプチャ画像(サイズ:12Mバイト)です。

この画像をクリック

AWKでデジタル信号処理(Vol.82掲載)

投稿日:2023.01.25 | カテゴリー: コード

著者:斉藤博文

プログラミング言語「AWK」は、データストリーム(データの流れ)を逐次処理するのに適しています。本連載では、電子回路の分野でその特徴を生かし、シェルスクリプトを組み合わせてデジタル信号を処理します。第4回は「微分フィルタ」を使って目的の波形を取り出す方法を紹介します。

シェルスクリプトマガジン Vol.82は以下のリンク先でご購入できます。

図10 微分フィルタの差分方程式のAWKプログラム(dif.awk)

図12 群遅延を考慮したAWKプログラム(dif_gd.awk)

図14 係数の補正を加えた関数dif()

香川大学SLPからお届け!(Vol.82掲載)

投稿日:2023.01.25 | カテゴリー: コード

著者:谷﨑 勇太

 最近、さまざまな場面で「VTuber」が活躍しています。VTuberとは、2D/3Dアバターの表情や身体をリアルタイムに動かしながら動画配信をする人、あるいはそのアバターのことです。多くの場合は、カメラで人の動きを検知し、それをトレースするようにアバターを動かしています。今回は、私がPythonを使って作成した簡易VTuberシステムについて紹介します。

シェルスクリプトマガジン Vol.82は以下のリンク先でご購入できます。

図1 Webカメラの映像を読み取るためのベースコード

図2 感情を検出するためのコード

図3 左右の目の縦横比の平均値を算出する関数の定義コード

図5 目の縦横比を計算する関数の定義コード

図6 目の開閉を判定して処理を分岐させるコード

図7 顔の座標と幅の情報を取得するコード

図8 overlayImage ()関数の定義コード

図9 insert()関数の定義コード

図10 setting ()関数の定義コード

図11 eye_int()関数の定義コード

特集1 LibreOfficeでPythonマクロ(Vol.82記載)

投稿日:2023.01.25 | カテゴリー: コード

著者:荒川 雄介

オープンソースのオフィスソフト「LibreOffice」は、Pythonで記述されたマクロ(簡易スクリプト)を実行できます。しかしデフォルト状態では、Pythonマクロを作成しやすい環境が整備されていません。本特集では、開発環境を整備する手順を中心に、Pythonマクロ作成についての基礎知識を紹介します。使い慣れた言語を使って、LibreOfficeのさまざまな処理を効率化しましょう。

シェルスクリプトマガジン Vol.82は以下のリンク先でご購入できます。

図3 「Hello!」と書かれたダイアログを表示するPythonマクロのコード

図9 CSVファイルからCalcのシートにデータを読み込むPythonマクロのコード

図11 図9のコードを新規のCalcシートを開くように変更したもの

図12 文書ファイルがある場所からCSVファイルを読み込めるように図9のコードを変更したもの

図13 データベースからデータを読み込んで集計/グラフ表示をするPythonマクロのコード

図18 図9のコードをイベント駆動できるように修正

図19 Calcのシート(Sheet1)の内容をすべて消去するPythonマクロのコード

図20 外部ライブラリ(NumPy)を利用するythonマクロのサンプルコード

シェルスクリプトマガジンvol.82 Web掲載記事まとめ

投稿日:2023.01.25 | カテゴリー: コード

004 レポート ポッキーでプログラミング
005 レポート WebAssembly対応Ruby 3.2.0
006 製品レビュー 制御機器「NFCタグ」
007 NEWS FLASH
008 特集1 LibreOfficeでPythonマクロ/荒川雄介 コード掲載
016 特集2 Dropboxを活用しよう/岡崎隆之、進藤麻礼子、井川恵理
028 緊急企画 Mastodonサーバーを構築しよう/麻生二郎
046 Raspberry Piを100%活用しよう/米田聡
050 行動経済学と心理学で円滑に業務を遂行/請園正敏
052 中小企業手作りIT化奮戦記/菅雄一
057 Hello Nogyo!
058 Pythonあれこれ/飯尾淳
066 法林浩之のFIGHTING TALKS/法林浩之
068 タイ語から分かる現地生活/つじみき
072 Emotet/桑原滝弥、イケヤシロウ
074 香川大学SLPからお届け!/谷﨑勇太 コード掲載
080 AWKでデジタル信号処理/斉藤博文 コード掲載
086 ユニケージ通信/田渕智也、高橋未来哉
090 Bash入門/大津真
098 Techパズル/gori.sh
099 コラム「ユニケージ流思考法」/シェル魔人

Vol.82

投稿日:2023.01.25 | カテゴリー: バックナンバー

 Microsoft Office上での処理を自動化する場合、「BASIC」(VBA)言語によるマクロを記述することがよくあります。オープンソースのオフィスソフト「LibreOffice」でも同様に、BASICによるマクロが記述できて動作します。ただし、Microsoft Office上のBASICとどこまで互換性があるのかは未知数です。
 LibreOfficeでは、BASIC以外に「BeanShell」(Java風のスクリプト言語)、「JavaScript」「Python」の言語でもマクロを記述できます。Pythonは人気のプログラミング言語であり、国内にも多くのプログラマがいます。LibreOfficeだけをビジネスの現場で使うならPythonでマクロを記述するのがよいでしょう。特集1では、このPythonによるマクロ作成の基本を解説しています。
 特集2では、老舗のオンラインストレージサービス「Dropbox」を紹介しています。オンラインストレージは、クラウド上でファイルを保管して管理するだけではありません。共同の編集作業や、ファイルの整理に十分活躍します。本特集を参考にしてDropboxでファイルを自在に扱ってください。
 緊急企画では、Twitterの代替となる「Mastodon」サーバーの構築方法を解説しています。米Twitter社を買収したElon Musk氏によって、収益改善やコスト削減などが進められています。しかし、それと同時にさまざまな不安を感じている人が増えています。Mastodonは、1社運営ではなく、さまざまな団体や企業、個人のサーバーが連携し合ってTwitterと同等のサービスが提供できるオープンソースのソフトウエアです。すぐにTwitterの代替となるわけではありませんが、Twitterの代替として最も注目されています。
 このほか、「行動経済学と心理学で円滑に業務を遂行」の新連載を開始しました。仕事を進めるときに、人間関係は重要です。言い方一つで、意欲的になったり、充実感が得られたりします。行動経済学と心理学による分析結果からチームで円滑に業務を遂行する方法を解説します。
 今回も読み応え十分のシェルスクリプトマガジン Vol.82。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.82 補足情報

投稿日:2023.01.19 | カテゴリー: コード

Pythonあれこれ

 記事中で使用するデータファイルは以下のWebページから入手できます。

https://github.com/shellscript-magazine/python_this_and_that/releases/tag/ver2.0

情報は随時更新致します。

AWKでデジタル信号処理(Vol.81掲載)

投稿日:2022.11.25 | カテゴリー: コード

著者:斉藤 博文

プログラミング言語「AWK」は、データストリーム(データの流れ)を逐次処理するのに適しています。本連載では、電子回路の分野でその特徴を生かし、シェルスクリプトを組み合わせてデジタル信号を処理します。第3回は低周波成分を減らす「ハイパスフィルタ」について解説します。

シェルスクリプトマガジン Vol.81は以下のリンク先でご購入できます。

図7 ハイパスフィルタの移動平均プログラム(hpf.awk)

図12 群遅延を補正したプログラム(hpf_gd.awk)

香川大学SLPからお届け!(Vol.81掲載)

投稿日:2022.11.25 | カテゴリー: コード

著者:永田 歩

今回は、米Google社が提供するメディアデータ向けの機械学習ライブラリ「MediaPiPe」を用いて、動画内にある人の顔を検出し、そのデータを基に3D CGアニメーションを生成するプログラムを紹介します。AIを3D CGに利用する試みの一つとして参考にしてください。

シェルスクリプトマガジン Vol.81は以下のリンク先でご購入できます。

図1 動画をフレームに分割するプログラム「video2img.py」のコード

図2 顔のランドマーク座標を出力するコード「images2npy.py」のメイン部分

図3 get_landmark()関数の定義コード

図5 get_original_scalexyz()関数の定義コード

図6 make_landmarkimg()関数の定義コード

図8 3D CGアニメーションを作成するコード「npy2blender.py」のメイン部分

図9 generate_ver()関数の定義コード

図10 move_ver_anyframe()関数の定義コード

Pythonあれこれ(Vol.81掲載)

投稿日:2022.11.25 | カテゴリー: コード

筆者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温
かく見守ってください。皆さんと共に勉強していきましょう。第11回では、永続的な非同期通信を簡単に実現できる「WebSocket」というプロトコルを利用するシンプルなチャットアプリの作成に挑戦しま
す。

シェルスクリプトマガジン Vol.81は以下のリンク先でご購入できます。

図1 エコーサーバーを実現するコード

図2 エコーサーバーに接続するクライアントのコード

図4 チャットサーバーのコード

図5 チャットクライアントのHTMLコード

図6 チャットクライアントのJavaScriptコード

Raspberry Piを100%活用しよう(Vol.81掲載)

投稿日:2022.11.25 | カテゴリー: コード

著者:米田 聡

小型コンピュータボード「Raspberry Pi」(ラズパイ)向けにさまざまな拡張ボードが発売されています。その拡張ボードとラズパイを組み合わせれば、ラズパイでいろいろなことが簡単に試せます。第14回は、高品質なアナログ音声を出力する拡張基板を扱います。

シェルスクリプトマガジン Vol.81は以下のリンク先でご購入できます。

図7 MP3形式の音楽ファイルを再生するPythonプログラム(player.py)

特集1 本格的なホームサーバーを構築(Vol.81記載)

投稿日:2022.11.25 | カテゴリー: コード

著者:麻生 二郎

小型コンピュータボードの最上位モデルである「Raspberry Pi 4 Model B」の4G/8Gバイト版と、人気のLinuxディストリビューション「Ubuntu」のサーバー版を組み合わせて、本格的なサーバーを構築しましょう。本特集では、サーバーの可用性や信頼性を向上する方法を紹介します。

シェルスクリプトマガジン Vol.81は以下のリンク先でご購入できます。

図A3 ラズパイサーバーの初期設定(ubuntu_init1.sh)

図A4 ラズパイサーバーの初期設定(ubuntu_init2.sh)

シェルスクリプトマガジンvol.81 Web掲載記事まとめ

投稿日:2022.11.25 | カテゴリー: コード

004 レポート Windows 11が動くVirtualBox
005 レポート Webブラウザ動作のPostgreSQL
006 製品レビュー 玩具「coemo(コエモ)」
007 NEWS FLASH
008 特集1 本格的なホームサーバーを構築/麻生二郎 コード掲載
018 特集2 Google AppSheet入門/伊藤勇斗、石野耀久、江口隆司
038 特集3 さくらのクラウド/前佛雅人
050 特別企画 MySQL HeatWave Database Serviceの新機能/生駒眞知子
057 Hello Nogyo!
058 Raspberry Piを100%活用しよう/米田聡 コード掲載
062 Pythonあれこれ/飯尾淳 コード掲載
066 法林浩之のFIGHTING TALKS/法林浩之
068 中小企業手作りIT化奮戦記/菅雄一
074 メタバース/桑原滝弥、イケヤシロウ
076 タイ語から分かる現地生活/つじみき
080 香川大学SLPからお届け!/永田歩 コード掲載
086 AWKでデジタル信号処理/斉藤博文 コード掲載
094 ユニケージ通信/田渕智也、高橋未来哉
098 Bash入門/大津真
104 Techパズル/gori.sh
105 コラム「ユニケージの学術論文が出ました」/シェル魔人

Vol.81

投稿日:2022.11.25 | カテゴリー: バックナンバー

 ホームサーバーも本格的な運用を始めるなら、常時動き続けるための「可用性」と、データなどの保護を目的とした「信頼性」の向上は不可欠です。特集1では、小型コンピュータボードの「Raspberry Pi 4 Model B」で構築したホームサーバーの可用性や信頼性を高める方法を解説しています。
 特集2では、注目のノーコード開発ツール「Google AppSheet」を紹介しています。Google AppSheetでは、とても簡単な操作で、Webブラウザ、スマートフォンやタブレットなどからアクセスできるWebアプリケーションを開発できます。。また、ローコード開発ツールの「Google Apps Script」で作成したアプリケーションと組み合わせることで、クラウド上のさまざまなシステムと連携したシステムの構築が可能です。
 特集3では、国産パブリッククラウドサービス「さくらのクラウド」を紹介しています。AWSやGCP、Azureなど、海外の企業のクラウドサービスが人気ですが、国産クラウドにも良い点が多数あります。特に、日本人が運用して管理している点で、日本人に適したクラウドサービスになっています。
 特別企画では、米Oracle社が提供するデータベースクラウドサービス「MySQL HeatWave Database Service」(旧名は「MySQL Database Service」)を紹介しました。機械学習による「AutoPilot」や「HeatWave ML」が追加されて、さらに大規模なOLTPやOLAPの処理をより効率良くできるようになった点を詳しく解説しています。
 このほか、業務システムの開発手法「ユニケージ」の連載が開始しました。ユニケージは、エンジニアが生み出した手法ではなく、業務という現場から生まれた手法です。そのため、エンジニアには理解しにくい部分もあります。この連載では、エンジニアが疑問に感じる点に焦点を当てながらユニケージ流のやり方を紹介していきます。
 今回も読み応え十分のシェルスクリプトマガジン Vol.81。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.81 補足情報

投稿日:2022.11.25 | カテゴリー: コード

執筆・編集後記

p.103の執筆・編集後記のページが広告になっていました。以下が掲載する予定だった執筆・編集後記です。Kindle版やPDF版は差し替えています。お詫びして訂正いたします。

情報は随時更新致します。

AWKでデジタル信号処理(Vol.80掲載)

投稿日:2022.09.25 | カテゴリー: コード

著者:斉藤 博文

プログラミング言語「AWK」は、データストリーム(データの流れ)を逐次処理するのに適しています。本連載では、電子回路の分野でその特徴を生かし、シェルスクリプトを組み合わせてデジタル信号を処理します。第2回は、高周波ノイズを除去する「ローパスフィルタ」について解説します。

シェルスクリプトマガジン Vol.80は以下のリンク先でご購入できます。

図6 移動平均のプログラム(lpf.awk)

図10 ずれ補正を加えた移動平均のプログラム(lpf_gd.awk)

香川大学SLPからお届け!(Vol.80掲載)

投稿日:2022.09.25 | カテゴリー: コード

著者:佐々木 龍之介

今回は、数値解析アルゴリズムの一つである「ニュートン法」を紹介します。ニュートン法を利用すると、反復計算によって方程式の解を近似的に求められます。C言語を使ったサンプルプログラムを挙げながら、同手法について簡単に解説します。

シェルスクリプトマガジン Vol.80は以下のリンク先でご購入できます。

図3 「x2 – 1 = 0」という方程式の解を求めるCプログラムの例

図4 「x2 – 1 = 0」という方程式の解を求めるCプログラムの改良版

図5 √2の近似解を求めるCプログラムの例

Pythonあれこれ(Vol.80掲載)

投稿日:2022.09.25 | カテゴリー: コード

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温
かく見守ってください。皆さんと共に勉強していきましょう。第10回は、データを可視化する例として、プログラムの対話型実行環境「Jupyter Notebook」をローカル環境で動かして簡単な地理情報を表示させてみます。

シェルスクリプトマガジン Vol.80は以下のリンク先でご購入できます。

図7 町丁目データを地図上に重ねて表示するためのコード

図10 駅の位置と乗降客数のデータをまとめるためのコード

図12 駅の位置を地図に表示するためのコード(その1)

図14 駅の位置を地図に表示するためのコード(その2)

図16 「緯度」「経度」「乗降客数」のカラムを持つデータフレームを作成するためのコード

Raspberry Piを100%活用しよう(Vol.80掲載)

投稿日:2022.09.25 | カテゴリー: コード

著者:米田 聡

小型コンピュータボード「Raspberry Pi」(ラズパイ)向けにさまざまな拡張ボードが発売されています。その拡張ボードとラズパイを組み合わせれば、ラズパイでいろいろなことが簡単に試せます。第13回は、照明用などの高輝度LEDの明るさを制御できる拡張基板を扱います。

シェルスクリプトマガジン Vol.80は以下のリンク先でご購入できます。

図5 LEDの明るさを制御するプログラム(ADRSZSW.py)

特集1 Linux初心者テストにチャレンジ!(Vol.80記載)

投稿日:2022.09.25 | カテゴリー: コード

著者:長原 宏治

Linuxエンジニアの認定試験としては「LPIC」が有名ですが、より幅広くLinux初学者を対象とする「Linux Essentials」という認定試験が2020年から開始されています。本特集では出題範囲に対する理解を確認できる例題を挙げながら、Linux Essentials試験の内容を紹介します。つまずきがちな部分について問う例題を盛り込みましたので、腕に覚えがある人もぜひチャレンジしてみてください。

シェルスクリプトマガジン Vol.80は以下のリンク先でご購入できます。

Part3 演習問題集の解答と解説

図1 問3-3-1の解答例

図2 問3-3-2の解答例

シェルスクリプトマガジンvol.80 Web掲載記事まとめ

投稿日:2022.09.25 | カテゴリー: コード

004 レポート 6GHz帯の無線LAN国内解禁
005 レポート Zen 4採用のRyzenプロセッサ出荷
006 製品レビュー パソコン「LAVIE GX(GX750/EAB)」
007 NEWS FLASH
008 特集1 Red Hat Enterprise Linux 9/森若和雄
022 特集2 Linux初心者テストにチャレンジ!/長原宏治 コード掲載
042 緊急特集 チャットサービスを立ち上げよう/麻生二郎
058 Raspberry Piを100%活用しよう/米田聡 コード掲載
062 Pythonあれこれ/飯尾淳 コード掲載
068 NFT/桑原滝弥、イケヤシロウ
070 中小企業手作りIT化奮戦記/菅雄一
075 Hello Nogyo!
076 法林浩之のFIGHTING TALKS/法林浩之
078 香川大学SLPからお届け!/佐々木龍之介 コード掲載
082 タイ語から分かる現地生活/つじみき
088 AWKでデジタル信号処理/斉藤博文 コード掲載
096 Bash入門/大津真
104 Techパズル/gori.sh
105 コラム「ユニケージ黎明(れいめい)期」/シェル魔人

Vol.80

投稿日:2022.09.25 | カテゴリー: バックナンバー

 2022年5月、企業向けLinuxディストリビューション「Red Hat Enterprise Linux 9」(RHEL 9)がリリースされました。多くのシステムで利用されているRHEL 7のライフサイクルは、2024年6月(延長しても2026年6月)で終了するので、アップデートの有力な候補です。特集1では、このRHEL 9に関して、サブスクリプション、無償利用、主要ソフト、主要サービス、リリーススケジュール、ライフサイクル、導入・使用方法、RHEL 7/8利用者に役立つ情報などを分かりやすく解説しています。
 特集2では、Linux初心者向けのテストを用意しています。このテストは、非営利組織「LPI」(Linux Professional Institute)が実施しているLinux技術者認定試験「Linux Essentials」を基にしています。Linuxを勉強し始めた人にお薦めの内容になっていますので、ぜひお読みください。
 このほか、緊急特集として、オープンソースソフトウエア「Mattermost」で人気の「Slack」と似たチャットサービスを無料で立ち上げる方法を紹介しています。インターネット上には無料でも使える魅力あるサービスが多数あります。ただし、SlackやHerokuのように利用規約が変更されると、無料で使える範囲が変わったり、無料で使えなくなったりします。影響を受けないように自分でサービスを立ち上げてみるのはいかがでしょうか。
 今回も読み応え十分のシェルスクリプトマガジン Vol.80。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.80 補足情報

投稿日:2022.09.14 | カテゴリー: コード

Pythonあれこれ

 記事中で使用するデータファイルは以下のWebページから入手できます。

https://github.com/shellscript-magazine/python_this_and_that/releases/tag/ver1.0

情報は随時更新致します。

AWKでデジタル信号処理(Vol.79掲載)

投稿日:2022.07.25 | カテゴリー: コード

著者:斉藤 博文

プログラミング言語「AWK」は、データストリーム(データの流れ)を逐次処理するのに適しています。本連載では、電子回路の分野でその特徴を生かし、シェルスクリプトを組み合わせてデジタル信号を処理します。第1回は「デジタルフィルタ」と「リングバッファ」について解説します。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図14 1~10000の出力データから末尾の10行を取り出すAWKプログラム(tail.awk)

図15 リングバッファを用いたAWKプログラム(tail_ring.awk)

図17 「get_buf」関数をPythonのプログラムで記述

香川大学SLPからお届け!(Vol.79掲載)

投稿日:2022.07.25 | カテゴリー: コード

著者:岩本 和真

人間の言語をコンピュータで処理する自然言語処理の分野は、近年、急速に進歩しています。それによって例えば、自然な翻訳や文章生成をする技術などが開発されています。同分野の学習成果として筆者は、「秘書チャット」と名付けたチャットボットアプリを作成しました。今回は、このアプリに盛り込んだ機能について、技術的に解説します。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図5 形態素解析処理をするmorpheme()関数の定義コード

図8 予定の内容を抽出するcontent_extract()関数の定義コード

図9 Webページのテキスト情報を抽出するscraping()関数の定義コード

図12 曜日や豆知識を答える機能のコード

Raspberry Piを100%活用しよう(Vol.79掲載)

投稿日:2022.07.25 | カテゴリー: コード

著者:米田 聡

小型コンピュータボード「Raspberry Pi」(ラズパイ)向けにさまざまな拡張ボードが発売されています。その拡張ボードとラズパイを組み合わせれば、ラズパイでいろいろなことが簡単に試せます。第12回は、電流を測定するクランプメーターを搭載する拡張基板を扱います。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図6 本連載で作成したサンプルプログラム(sample.py)

特別企画 本格的なホームサーバーを構築(Vol.79記載)

投稿日:2022.07.25 | カテゴリー: コード

著者:麻生 二郎

小型コンピュータボードの最上位モデルである「Raspberry Pi 4 Model B」の2G/4G/8Gバイト版と、人気のLinuxディストリビューション「Ubuntu」のサーバー版を組み合わせて、本格的なサーバーを構築しましょう。本特集では、サーバーをインターネットに公開する方法を紹介します。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図A3 ラズパイサーバーの初期設定(ubuntu_init1.sh)

図A4 ラズパイサーバーの初期設定(ubuntu_init2.sh)

特集3 ユニケージ開発のシステム(Vol.79記載)

投稿日:2022.07.25 | カテゴリー: コード

著者:松浦 智之

システム開発手法「ユニケージ」では、データ保存用に「ファイル」を使い、ユニケージ専用コマンド群「usp Tukubai」と「シェルスクリプト」で業務システムを開発します。usp Tukubaiは有償ソフトですが、無償のオープンソース版「Open usp Tukubai」もあります。このOpen usp Tukubaiを使って、ユニケージ開発を無料で始めてみましょう。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図6 Apache HTTP Serverの郵便番号・住所検索システム用設定ファイル(/etc/apache2/sites-available/zip2addr.conf)

図10 MK_ZIPTBL.SHのソースコード

図12 ZIP2ADDR.AJAX.cgiのコード

図13 ZIP2ADDR.htmlのコード

図14 ZIP2ADDR.jsのコード

特集2 FlutterでGUIアプリを開発しよう(Vol.79記載)

投稿日:2022.07.25 | カテゴリー: コード

著者:三好 文二郎

「Flutter」は、米Google社がOSS(オープンソースソフトウエア)として提供する、GUI アプリ開発用のSDK(Software Development Kit)です。単一のコードで複数のプラットフォーム向けのGUIアプリを作成できるほか、標準で用意されるUIコンポーネントが豊富、Hot Reloadによる開発者体験が素晴らしいことなどから開発者の間で人気が高まっています。Flutterの概要と、Flutterを利用したアプリ開発方法について紹介します。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図18 ウィジェットに関する記述の例

図19 ボタンウィジェットを追加するコードの例

図21 my_first_appプロジェクトの「pubspec.yaml」ファイルの内容

図22 go_routerパッケージを利用する場合の記述例

図23 画面を追加するためのコード

図24 画面遷移のためのコード

図25 ボタンウィジェットに画面遷移処理を割り当てるコード

図26 main()関数のコードを変更

レポート 「Raspberry Pi Zero 2 W」国内版発売(Vol.79掲載)

投稿日:2022.07.25 | カテゴリー: コード

著者:末安 泰三

超小型コンピュータボード「Raspberry Pi Zero」シリーズの最新版、「Raspberry Pi Zero 2 W」の国内版が2022年6月に発売された。Raspberry Pi財団が2021年10月に発売した製品だが、国内版には技適マークが付く。同シリーズの従来製品と比べ、マルチスレッド性能が4~5倍程度向上した。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図2 LinuxカーネルのRaspberry Pi Zero 2 W用のDTSファイルの内容

レポート テキストエディタ「Vim 9.0」リリース(Vol.79掲載)

投稿日:2022.07.25 | カテゴリー: コード

著者:末安 泰三

テキストエディタ「Vim」の最新版「Vim 9.0」が2022年6月28日に公開された。前版「Vim 8.2」の公開は2019年12月のため、約2年半ぶりのリリースとなる。Vim 9.0の目玉となる新機能は、文法を見直して大幅な高速化を実現したスクリプト言語「Vim9 Script」のサポートである。

シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。

図2 新旧のコードで定義した関数の実行結果と実行時間を表示するコードの例

シェルスクリプトマガジンvol.79 Web掲載記事まとめ

投稿日:2022.07.25 | カテゴリー: コード

004 レポート テキストエディタ「Vim 9.0」リリース コード掲載
005 レポート 「Raspberry Pi Zero 2 W」国内版発売 コード掲載
006 製品レビュー イヤホン「LinkBuds」
007 NEWS FLASH
008 特集1 仮想化ソフト「VirtualBox」 徹底活用/麻生二郎
020 特集2 FlutterでGUIアプリを開発しよう/三好文二郎 コード掲載
030 特集3 ユニケージ開発のシステム/松浦智之 コード掲載
042 特別企画 本格的なホームサーバーを構築 インターネット公開編/麻生二郎 コード掲載
051 Hello Nogyo!
052 Raspberry Piを100%活用しよう/米田聡 コード掲載
056 Pythonあれこれ/飯尾淳
064 マルウエア/桑原滝弥、イケヤシロウ
066 中小企業手作りIT化奮戦記/菅雄一
070 タイ語から分かる現地生活/つじみき
076 法林浩之のFIGHTING TALKS/法林浩之
078 香川大学SLPからお届け!/岩本和真 コード掲載 
084 AWKでデジタル信号処理/斉藤博文 コード掲載
090 Bash入門/大津真
098 Techパズル/gori.sh
099 コラム「こうしてユニケージは生まれた」/シェル魔人

Vol.79

投稿日:2022.07.25 | カテゴリー: バックナンバー

 LinuxやWindows 11を少し使ってみたい、気になるアプリケーションを試してみたいなど、パソコンを使い続けていると、このような考えを持つことがよくあります。そのようなときに便利なのが「パソコンハードウエア仮想化ソフト」です。この仮想化ソフトを使うと、パソコン内に仮想的なパソコンを構築できます。
 特集1では、無償で使えるパソコンハードウエア仮想化ソフト「Oracle VM VirtualBox」の導入方法や基本操作を解説します。便利な機能、人気のLinuxやWindows 11を試すためのイメージファイルなども紹介しています。
 特集2では、米Google社が開発するGUIアプリ開発環境「Flutter」を使い始めたい人向けに解説します。Flutterでは、AndroidやiPhoneなどのモバイル端末向けアプリから、WindowsやLinux、macOSのデスクトップマシン向けアプリまで、同一のコードで開発できます。
 特集3では、本格的な業務システム開発で利用されている手法「ユニケージ」の専用コマンド群「usp Tukubai」のオープンソース版である「Open usp Tukubai」を利用したシステム開発を紹介します。Open usp Tukubaiなら有償ではなく無償でユニケージ開発を体験でき、さらに開発したシステムをそのまま実運用できます。
 特別企画では、以前から本誌で継続中の、小型コンピュータボード「Raspberry Pi Model 4」と、人気のLinuxディストリビューション「Ubuntu Server」でホームサーバー構築方法を解説しています。今回は、ホームサーバーをインターネットに公開する方法を紹介しました。
 このほか、新連載として「AWKでデジタル信号処理」が始まりました。プログラミング言語「AWK」とシェルスクリプトを用いて、デジタル信号からノイズを取り除くなどの方法を、仕組みを含めながら解説していきます。
 今回も読み応え十分のシェルスクリプトマガジン Vol.79。お見逃しなく!

※記事掲載のコードはこちら。記事の補足情報はこちら

※読者アンケートはこちら

Vol.79 補足情報

投稿日:2022.07.25 | カテゴリー: コード

特集3 ユニケージ開発のシステム

 p.30の中央右段に「163mm」の不要な文字が入り込み、本文と重なってしまいました。お詫びして訂正いたします。

特別企画 本格的なホームサーバーを構築 インターネット公開編

 p.46の左段にある「$ wget -O /home/pi/DDNSNow_update.log “https://f5.si/update.php?domain=ユーザー名&password=パスワード”」の「pi」は「Ubuntu Serverのユーザー名」の誤り、右段にある「0-59 * * * * wget -O DDNSNow_update.log “https://f5.si/update.php?domain=ユーザー名&password=パスワード”」の「 -O DDNSNow_update.log」は「 -O /home/Ubuntu Serverのユーザー名/DDNSNow_update.log」の誤りです。お詫びして訂正いたします。

IPアドレスの調べ方

 ルーターのDHCP(Dynamic Host Configuration Protocol)のリース情報から、Raspberry Piに割り当てられたIPアドレスを、次のように調べます。
 パソコンのWebブラウザを開いて、ルーターの管理画面にログインします。ログイン方法は、ルーターのマニュアルや、インターネットの情報で調べてください。
 管理画面が開いたら、DHCPのリース情報を表示します。こちらもルーターの機種によって操作方法や名称が異なりますが、一般的な家庭用ルーターには必ずあります。例にしたルーターでは、「詳細設定」から「LAN」「DHCPリース」でネットワーク機器に割り当てられているIPアドレスを表示できます(図1)。

図1 リース情報

 リース情報を表示した状態で、Raspberry Piを起動するとRaspberry Piに割り当てられたIPアドレスの情報が追加されます(図2の赤枠)。IPアドレスを使ってリモートからアクセスできます。

図2 Raspberry Piの情報が追加された

 ちなみに、このリース情報画面でRaspberry PiのMACアドレスと、割り当てたいIPアドレスを設定すれば、Raspberry Pi側のネットワーク設定を変更せずとも常に同じIPアドレス、固定IPアドレスを設定できます。

The Poetry and Art Collection

 p.64の右上に前号で掲載した詩の一部(複雑のひと 単純のこころ 唯一のひかり 無限のやみ)が入ってしまいした。お詫びして訂正いたします。

情報は随時更新致します。

もっと見る

-->