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

test

最終回 グループウエアサーバーを作る(Joruri Gwの導入)

投稿日:2018.03.30 | カテゴリー: 記事

約7カ月間、「UbuntuではじめるLinuxサーバー」を連載してきました。今回は、その最後としてグループウエアサーバーを構築します。無料で使えるグループウエアサーバーソフトはいくつか存在します。ただし、日本で使うなら国産のグループウエアサーバーソフトがお薦めです。そこで、徳島県のサンブリッジが開発するオープンソースの「Joruri Gw」を使用します(図1)。

図1 グループウエアサーバーソフト「Joruri Gw」の掲示板を表示

Joruri GWは、プログラミング言語「Ruby」とフレームワーク「Ruby on Rails」で開発されています。Webサーバーソフト「Apache HTTP Server」(以下、Apache)、データベース管理システム(DBMS)「MySQL」、分散型メモリーキャッシュシステム「Memcached」と組み合わせて動作します。対応OSはCentOSですが、Ubuntu Server(16.04 LTS)上でも動きます。

スズラボ通信 37 オープンソース・デザインBeagleboard

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

著者:すずきひろのぶ

今回はPocketBeagle を取り上げたいと思います。本連載だけではなくシェルスクリプトマガジンでもなんども取り上げているクレジットカードサイズのコンピュータRaspberry Pi は広く知られていますが、それ以外にもカードサイズの小さなコンピュータがあります。その中の1 つがBeagleBoard.orgFoundation が提供するBeagleBone ファミリです。
そのBeagleBone ファミリを、さらに小さくしたボードコンピュータがPocketBeagle です。

記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


PokectBeagleのブートの様子
https://youtu.be/0dIX4gAv2ZI

ラズパイ入門ボードで学ぶ 電子回路の制御(vol.53掲載)

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

著者:米田 聡

シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)のプログラミングが楽しめる拡張ボード「ラズパイ入門ボード」を制作しました。本連載では、ラズパイ入門
ボードを使った電子回路制御を取り上げていきます。第1回はOLEDに日本語文字を表示します。
記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


 

40歳から始める、オレとRubyプログラミング(vol.53掲載)

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

著者:しょっさん

自動的にホストが登録される部分までのプログラムは、これまでずいぶんとリファクタリングを繰り返しながら作ってきました。今回は、残りのサーバによる定期監視部分です。以前、「TaskControl」クラスを作って、将来の実装に備えました。そのTaskControlクラスの改修と、それを制御するためのメインとなる部分を準備します。
従って、今回のプログラミング作業は次の3点です。
1. 全体を制御するメインルーチンの改修
2. 死活を監視するためのTaskControlクラスの完成
3. サーバ側に合わせたエージェント側の改修
記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


 

漢のUNIX XMLをJSONに変換するコードを書いてみよう(Vol.53掲載)

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

著者:後藤大地

今回は前回作ったサンプルコードをベースに、XMLデータをJSON(JavaScript Object Notation)形式に変換する例を紹介する。XMLデータをJSON形式に変換する、またはその逆を実施するのは需要の高い処理だ。今回紹介するのはサンプルレベルのコードだが、それなりに実用的なコードが書けることをわかってもらえるだろう。
記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


 

機械学習のココロ(vol.53掲載)

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

著者:石井一夫(久留米大学)

今回は、機械学習においてよく耳にする正則化とスパースモデリングの話題を取り上げます。

記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


 

訂正情報

以下の箇所に文章漏れがございました。謹んで訂正いたします。

p57 右下 下から7行目

誤り
「L2正則化の場合、パラメータの大きさをだけゼロに近づける操作を行っており、」
訂正
「L2正則化の場合、パラメータの大きさを分散の大きさだけゼロに近づける操作を行っており、」

 

参考リンク

scikit-learnオフィシャル サイト L1 ノルム正則化の解説とサンプルコード(英語・リンク先にpython用コード有り)

sklearn.linear_model.Lasso

 

MathWorks(MATLAB開発元)によるLasso 正則化の解説(日本語)

一般化線形モデルの Lasso 正則化

 

scikit-learnオフィシャル サイト L2ノルム正則化の解説とサンプルコード(英語・リンク先にpython用コード有り)

sklearn.linear_model.Ridge

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

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

著者:朝野有也

こんにちは、香川大学工学部の朝野です。普段からパソコンを使っている方ならJava というプログラミング言語の名前を一度は聞いたことがあると思います。プラットフォームに依存しないため、クライアント側、サーバ側問わず様々なシステムで使用されている言語です。さらに、Java のプログラムを実行するにあたって必要となるJava 仮想マシン(JVM) を利用したJVM 言語というものがあります。JVM 言語は、Java の資源を利用できるのに加えて、Java より後発であるため便利なライブラリや仕組みが揃っていることが多いです。

今回は、簡単な名簿アプリケーションの開発をとおして、JVM 言語の1つであるScala と、Java とScala のWeb アプリケーションフレームワークであるPlay Framework をご紹介します。

記事本文掲載のシェルスクリプトマガジンvol.53は以下リンク先でご購入できます。

 

sbt のインストール:
https://www.scala-sbt.org/1.x/docs/ja/Setup.html

 

登録:

@form(routes.HomeController.insertUser) { @inputText(userForm(“name”), ‘_label -> “名前”) @inputText(userForm(“age”), ‘_label -> “年齢”) }


@form(routes.HomeCon troller.showUser) { }

 

}

 

一覧:

 

@for(user <- users ) {     }

名前 年齢
@user.name @user.age @form(routes.HomeController.deleteUser(user.id)) { }

@form(routes.HomeController.index) { }

 

}

 

特集3 IBM Cloudで学ぶAI・機械学習・ディープラーニング(vol.53掲載)

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

著者:佐々木 敦守、古川 正宏、小薗井 康志

IBMの「Watson」が動くクラウドプラットフォーム「IBM Cloud」を使って、無料でAI、機械学習、ディープラーニングを試してみましょう。
記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


 

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

投稿日:2018.03.25 | カテゴリー: 記事

シェルスクリプトマガジンvol.53のWeb掲載部分まとめです。

プレゼント&アンケートページはこちら!

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

008 特集1  9のステップでしっかりわかる Python入門/西川公一朗  コード掲載

024 特集2  このまま使える! ITエンジニアのための英文メール&チャット 20のポイント/甲斐荘秀生 監修 Paul McMahon  おまけ英文掲載

032 特集3  IBM Cloudで学ぶAI・機械学習・ディープラーニング/佐々木敦守、古川正宏、小薗井康志  コード掲載

049 姐のNOGYO

050 ラズパイ入門ボードで学ぶ電子回路の制御/米田聡  コード掲載

053 スズラボ通信「ネイキッドなGNU/Linuxマシン PocketBeagle」/すずきひろのぶ  リンク掲載

056 機械学習のココロ 「正則化とスパースモデリング」/石井一夫  訂正情報およびリンク掲載

060 バーティカルバーの極意/飯尾淳

066 それプロのエバンジェリストから愛をこめて/山本美穂

070 RESEARCHES FOR FUTURE 青山学院大学 社会情報学部 社会情報学科 伊藤研究室/伊藤一成

072 香川大学SLPからお届け! 「Play Frameworkでアプリケーション開発」/朝野有也 コード掲載

078 ITエンジニアのためのマーケティング入門/水間丈博

082 蛇/桑原滝弥・イケヤシロウ

084 法林浩之のFIGHTING TALKS/法林浩之

086 人間とコンピュータの可能性/大岩元

088 円滑コミュニケーションが世界を救う! /濱口誠一

090 中小企業手作りIT化奮戦記「使うと便利SQL」/菅雄一

095 漢のUNIX「XMLをJSONに変換するコードを書いてみよう」/後藤大地 コード掲載

104 アジャイル開発 Let’s Practice!「インセプションデッキ その1」/熊野憲辰

108 40歳から始める、オレとRubyプログラミング/しょっさん  コード掲載

118 コボラーによるコボラーのためのユニケージ入門「COBOLプログラムのマイグレーション」/野村祐三

126 Techパズル/gori.sh

128 コラム「自主的に考える力を持てるような教育を」/シェル魔人

英文メール・チャット 20のポイント おまけ

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

執筆:甲斐荘秀生  監修:Doorkeeper Paul McMahon

記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


 

本誌掲載のチャットの前、クライアントとA君との間でつばぜり合いがありました。

翻訳サイトを駆使した英文

 

クライアント:The budget is decided, but can not you do this bu plugging in as well?(予算は決まってるけど、これも差し込みでお願いできません?)

 

A:We can not accept it.(できません。)

 

クライアント:I will put a color on the next month.(来月色を付けますから。)

 

A:This time only. (今回だけですよ。)

 

 

Paulさんによる訂正後の英文

 

クライアント:I know we’ve already fixed the budget, but can’t you fit this in as well?(予算が決まっていることはわかっていますが、追加でやってもらえませんか?)

“as well”には「おまけで」という意味もあります。

 

A:Sorry, we’re not able to budge on it.(申し訳ありませんが、これ以上は動けません)

“budge”は「身動きをとる」という意味です。今回のように否定形で使うと”微動だにしない”のような意味になります。

 

クライアント:How about if we add it to next month’s budget?(来月の予算にその分追加するのではどうでしょう?)

 

A:OK, just this once. (わかりました。今回だけですよ)

 

 

裏にこんなやりとりがあった後、本誌掲載のチャットの続きをご覧ください。

翻訳サイトを駆使した英文

 

A:At last only one. (さいごにひとつだけ。)

 

A:There was an additional request from the client. Can you please take action?(クライアントから追加の要望がありました。対応をお願いできますか?)

 

A:They would like to add a daytime contact to the inquiry form.(問い合わせフォームに日中の連絡先を追加したいとのことです。)

 

B:What a client. (なんてクライアントだ!)

 

Paulさんによる訂正後の英文

 

A:One more thing. (さいごにひとつだけ。)

 

A:There was a new request from the client. (クライアントから追加の要望がありました。)

 

A:They would like to add a new field for a phone number.(電話番号用のフィールドを新たに追加したいとのことです。)

「日中の連絡先」は文脈に依存した言い方なので、「電話番号」と直接伝えた方がよいでしょう。

 

B:I’m getting tired of these last minute requests. (追加要望のせいで嫌になってきた)

 

 

 

特集1 9のステップでしっかりわかる Python入門(vol.53掲載)

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

著者:西川 公一朗

機械学習やデータ解析、人工知能の需要が高まるにつれ、最近ではさまざまな分野でプログラミング言語「Python」を利用する機会が増えています。本特集では入門者や初心者を対象に、9のステップでPython の基本を分かりやすく説明します。
記事本文掲載のシェルスクリプトマガジンvol.53は以下のリンク先でご購入できます。


 

Vol.53

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

機械学習やデータ解析、人工知能、ラズパイ、IoT(モノのインターネット)などのプログラミングで欠かせなくなった言語「Python」(パイソン)。特集1では、九つのステップに分けて、初めての人でもしっかり理解できるようにPythonプログラミングの基礎を解説します。
特集2では、ITエンジニアに向けた、英語のメールやチャットに関する20のポイントを会話形式で紹介します。海外とのやり取りが当たり前になってきた時代にぴったりです。
特集3ではAI・機械学習・ディープラーニングを扱いました。IBM Cloudが用意するライト・アカウントを取得すれば、無料・期間無制限・クレジットカード登録不要でこれらの技術をすべて試せます。
このほか、新連載として「ラズパイ入門ボードで学ぶ電子回路の制御」が始まりました。前回の特集2に続く、シェルスクリプトマガジン特製の「ラズパイ入門ボード」の記事です。この連載から読み始めても十分楽しめます。

今月も読み応え十分のシェルスクリプトマガジン Vol.53。お見逃しなく!

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

第29回 バージョン管理システムを作る(GitBucketの使い方)

投稿日:2018.03.23 | カテゴリー: 記事

前回は、「GitBucket」を使ってソースコードやドキュメントのバージョンを管理できる共有サーバー(Gitサーバー)を構築しました。今回は、GitBucketの基本的な使い方を紹介します。

前回と同様に、次のコマンドを実行してGitBucketを起動します。

しばらく待ってから、リモートアクセス用パソコンのWebブラウザーで「http://Ubuntu ServerのIPアドレス:8080/」にアクセスし、GitBucketのトップページを開いてください(図1)。

図1 GitBucketのトップページ

第28回 バージョン管理システムを作る(GitBucketの導入)

投稿日:2018.03.16 | カテゴリー: 記事

ソフトウエア開発のための共有サービスとして「GitHub」を使っている人は多いでしょう。GitHubはソフトウエアのソースコードのみならず、各種文書のバージョン管理にも利用できます(図1)。そのため、会社やグループで自由に使えるGitHubを用意できればとても便利です。

図1 Gitサーバーによるバージョン管理システム

Linuxには、GitHubのようなサーバー(Gitサーバー)を構築できるソフトがいくつかあります。具体的には、GitHubと同様のサービス提供にも利用されている「GitLab」、日本人が開発者の「GitBucket」、Go言語で開発されている「Gogs」などです。今回は、これらの中からインストールが簡単なGitBucketをUbuntu Serverに導入します。

第27回 安全なFTPサーバーを作る(ProFTPDの設定)

投稿日:2018.03.9 | カテゴリー: 記事

前回構築した、ProFTPDによるFTPSサーバーをインターネットに公開します。インターネットへのサーバー公開については、連載第10回に2種類の方法を紹介しています。「DMZ」と「ポートフォワーディング」です。
DMZの場合、前回の設定のままFTPSサーバーをDMZに配置すれば、そのままインターネットに公開できます。ただし、セキュリティ上あまり好ましくありません。連載第21回で紹介したファイアウォールを自身のサーバー内に構築しましょう。なお、ファイアウォールを経由してFTPSサーバーをインターネットへ公開する場合、FTPSの通信を通過させるための設定が必要です。
ポートフォワーディングの場合も、ファイアウォールと同様にFTPSの通信を通過させる設定が設定が必要です。

アクティブとパッシブ

FTP/FTPSでは、二つのポートを利用して通信します。一つは「制御」用、もう一つは「データ転送」用です。どちらも通信を開始するときに、サーバーとクライアントの間で「コネクション」(接続)を確立します。
FTP/FTPSでは、このコネクション確立方法の違いで「アクティブ」と「パッシブ」という2種類のモードが用意されています。どちらもFTP/FTPSの通信を開始するのはクライアントからです。ただし、アクティブモードではFTPサーバーから、パッシブモードではFTPクライアントから、データ転送用のコネクションを確立しにいきます(図1)。

図1 アクティブとパッシブ

第26回 安全なFTPサーバーを作る(ProFTPDの導入)

投稿日:2018.03.2 | カテゴリー: 記事

今回は、インターネットからファイルをダウンロードしたり、アップロードしたりする「FTPサーバー」を構築します(図1)。LinuxでFTPサーバーを構築できるフリーソフトにはいくつかあります。ここでは、「ProFTPD」を用います。

図1 ファイルをダウンロード・アップロードできるFTPサーバー

なお、FTPサーバーの標準プロトコルである「FTP」(File Transfer Protocol)の場合、ユーザー名とパスワード、データがそのまま(平文で)ネットワークを流れます。インターネット上の通信で平文を使用するのはセキュリティ上好ましくありません。そこで、暗号化通信を用いたファイル転送プロトコルの「FTPS」(File Transfer Protocol over SSL/TLS)を利用します。

  • shell-mag ブログの 2018年3月 のアーカイブを表示しています。

  • -->