サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
TGS2024
www.nslabs.jp
(2019.1) package-cleanup コマンド (yum-utils パッケージ) が, いよいよ廃止される. dnf は, Fedora 18 (2013年1月) で導入され、Fedora 22 (2015年5月) でデフォルトの package manager になった。Fedora 29 ではまだ package-cleanup コマンドは残っているが、アップデートで時々、うまく動かなくなっている。dnf への移行が必要. Fedora 29 での廃止は見送られたが, Fedora 30 で今度こそ廃止の予定; Yum Won't Be Dropped For Fedora 29 yum 関連は, python2 に依存している残り少ないパッケージの一つ。この他はもう mariadb ぐらいしか残っていない。python2 時代の終わりでもある。 package-clea
(2017.7.17) 更新。 業務アプリケーションは、データベースを操作 (データ入力、データ取得) するようなものが多い。このようなデータベースアプリケーションの開発に使える, RAD (Rapid Application Development) tool いろいろ。 PostgreSQL (DBMS) 自体の管理についてはこちら; PostgreSQLの管理 デスクトップアプリケーションの開発 私 (堀川) は "low-code / no-code 開発プラットフォーム" (LCDP) というのはただの広告屋の用語だと思っている。役に立つアプリケィションを開発しようとすると、かならずプログラム制作が必要になる。 [2023-01] No-code は論外。先日, Glide で開発する機会があった。限界点が低すぎて話にならない。GUI でできること以上がそもそも「できない」になっ
(2017.7.1) 新規作成。そんなに新規でもないが。 (2017.7.2) IPv4/IPv6アドレスに対応。 "メールアドレス 正規表現"ぐらいで検索すると、上位に、微妙だったり不適切な内容のページが並ぶ。つらい。 あまつさえ、現実に, いまだに '+' が通らないWeb上の商業サービスもあって、妥当な処理が行なわれていない。 とても古い話題のはずが、まともな解説だけが時代の彼方に去って、訳の分からない記事が跋扈しているのか? とはいえ、メイルアドレスは仕様が複雑すぎて、意外と難しい。 HTML Living Standard での定め WHATWG HTML Living Standard には, input[type="email"] 要素で、クライアント側の妥当性検査が盛り込まれている。 これの要求が微妙。結論として、この機能を使ってはならない。 4.10.5.1.5 Emai
重要. このソフトウェアは、もはやメンテナンスされていません。 OmniAuth ライブラリは何らかの認証フレームワークと組み合わせます。OpenID Connect を実装するとき、OmniAuth ストラテジとして実装しなくても、認証フレームワーク上で作ってやればよい。 認証フレームワークには Sorcery をお勧めします。Ruby on Rails の認証フレームワーク OmniAuth を使わずに, openid_connect ライブラリを直接使う形の IdP (OP) サンプルと RP サンプルを用意しました; 認証関係: サンプルプログラム OmniAuth (Ruby) 用の OpenID Connect ストラテジ。このパッケージは次のパッケージを置き換えます。 omniauth-google-oauth2 omniauth-yahoojp omniauth-azure
(2017.1 新規作成.) cabal-install コマンドではパッケージのバージョンの "組み合わせ" を固定することができない。バージョン地獄 (dependency hell) に陥ると大変になる。 cabal-install と併用し, プロジェクトごとのパッケージを固定する Stack の導入についてのメモ。 Home - The Haskell Tool Stack 基本的なコンセプトは Ruby のための Bundler と同じ。プロジェクトが直接必要とするライブラリと, さらに依存するライブラリについて、システムグローバルにインストールされたパッケージで不足する場合, プロジェクト内にインストールしてしまう。 ※実際には、ライブラリ本体は, ~/.stack/snapshots 以下にインストールされる。 Haskell は Ruby より状況が難しい。 1. パッケ
(2015.7.20) (2018.2) 最近の状況にアップデート. ページが長くなったので分割。 Root CA, Issuing CAを分離したオレオレ認証局 (CA) を作ります。そのうえで、クライアント証明書、サーバ証明書を作ってみます。 このページでは, ルートCA, 中間CAを作るところまで解説します。サーバ証明書は次回。 PKI: CA階層, 2/3 tierと基礎 を併用してください。CA.plスクリプトの解説はこちらです。 参考: OpenSSLの脆弱性(CVE-2015-1793)によるAltチェーン証明書偽造の仕組み - ぼちぼち日記 このページの話題は直接関係ないが、X509v3 Basic Constraints でCA:FALSE の挙動、chain など。 多段の中間CA証明書作成 -証明書作成編- - HDEラボ ルートCAの自己署名証明書を作る (2018
今回の目次: 関数を定義する イベント駆動 字下げで固まりを作る 名前空間とスコープ Tkinter クラスを定義する メソッドを定義する インスタンス変数 サンプル:お絵かきプログラム 概要 色を変更する(オプションメニュー) 線の太さを変更する(スケール) 今回のまとめ @ 関数を定義する 前回掲載したサンプルプログラム (01-06.py) では、ウィンドウとボタンを表示しただけで、押しても何も起こりませんでした。今回は、ボタンを押すと文字列を出力するようにしてみます。 次のようにします。ボタンを押すと、コンソールに「ボタンが押された!」と表示されます。 02-05.py on_clicked関数を定義した # -*- coding:utf-8 -*- import tkinter def on_clicked(): print("ボタンが押された!") window = tkint
Windows 10では, Desktopアプリと Windows Store (UWP) アプリとで IMEの制御キーの挙動が変わります。Windows Store アプリでは, 色々なことが決め打ちになっているようです。 Windows Store アプリでは外部から IME モードを取得することができないため, Q's Nicolatter 8 は, ユーザのキー入力からモードを推測するようにしています。 v0.9.3 から、UWPアプリでも IMEモードを検出できるようになりました。 その意味では, このページは、歴史的な内容です。 IME の設定を変更して, トグルでモードを変えるのではなく, [ひらがな]キーでひらがなモード, [英数]キーで英数モード固定にする方法を紹介します。 Microsoft IMEのキー設定 初期設定では, [ひらがな]キーでひらがなモードになりますが
(2015.8) WebサイトではID・パスワードでユーザ認証することが多い。パスワードが漏洩すると, 第三者に成りすまされる恐れがある。 クライアント証明書をユーザのPCにインストールさせ、クライアント証明書と第2パスワードとを組み合わせることで、次のような効果がえられる; パスワードの漏洩だけではセキュリティを突破されないようにできる アクセスできるPCを限定できる クライアント認証の仕組みは、次の図を見てください。 出典: http://www.ipa.go.jp/security/pki/071.html 図の中段、クライアント側で Helloメッセージにクライアントの秘密鍵で署名し、サーバ側でクライアントの証明書をつかって検証し、ユーザを認証します。 クライアントに秘密鍵と証明書のペアをインストールさせます。 発行するクライアント証明書 証明書の属性は、次のようにします。 Bas
(2014.11) (2019.1) 更新. Zimbra Collaboration を試してみる。 (2014.11) (2019.1) Zimbra Collaboration は, メールサーバ + Webベースメールクライアントを組み合わせたもので, 積極的にオープンソースを活用している。 Zimbra, Inc.社が提供している. Zimbra, Inc. が Synacor, Inc.に 2015年8月に買収されたことにより、現在は Synacor, Inc. のプロダクトになっている。 日本では, 昔は SCSKが reseller だったが, 現在は Zimbra Japan が提供。日立ソリューションズも、ページがある。 利用技術 Zimbra Collaboration は, 内部で数々のオープンソースソフトウェアを利用している。 nginx - Webサーバ pos
ネットワークドライヴ (コンピュータ -> ネットワークの場所、に表示される。) では、ゴミ箱が有効にならず、ファイルを削除すると、単に完全に削除されます。 ゴミ箱を使えるようにするいくつかの方法を紹介します。サーバが FreeBSD + Samba4サーバなら最初の方法、そうでなければ、クライアント (Windows) 側の設定でゴミ箱を有効にするのがいいでしょう。 _ZFS snapshotを使う (2017.7.27 追加) 最近思っているのは、ゴミ箱という発想がどうなのか。ゴミ箱を空にするまではファイルを復活できるが、ゴミ箱を空にしたら復活できない。 FreeBSD (またはFreeBSD由来のディストリビューション) で、ファイルシステムに ZFS を使えば、ゴミ箱ではなくスナップショットを使う方法がある。 スナップショットはほとんどディスク容量を消費しないので、頻度高くスナップ
ldap suffix 値が付加される LDAP adminパスワードを設定. secrets.tdb ファイルに保存される。 # smbpasswd -w パスワード Setting stored password for "cn=admin,dc=orange,dc=fruits" in secrets.tdb smbldap-tools Samba-LDAP連携のツール集。yum コマンドでインストールする。 # yum install smbldap-tools 対話形式で初期設定する. 上の ldap suffix などの値と合わせること。 # smbldap-config とはいうものの, 自動的に, /etc/samba/smb.conf ファイルの値が初期値になっている。ほとんどは [Enter]キーで進んでいい。変更するのは 'ldap master bind passw
(2014.11) メイルサーバを立てる際, 組織メンバのメイルアドレスや所属情報を共有したいことがよくある. こういうときは, LDAPサーバを用意して, メイルクライアントからアドレス帳として参照するようにするのがいい。メンバの異動があったときは, サーバ側で変更するだけでよくなる. オープンソースのLDAPサーバとしてメジャーなのは, OpenLDAP と 389 Directory Server (旧名 Fedora Directory Server) ぐらい. ApacheDSもある。 389 Directory Server - Main Page 389-ds-base パッケージ Welcome to ApacheDS — Apache Directory [2021-01] 開発は停滞. Fedora 33 では, OpenLDAP がデフォルトでインストールされている。
Q's Nicolatter は、Windows 7 / 8.1 / 10 / 11 で, キーボードからの日本語入力をNICOLA (親指シフト) など、別の配列でおこなえるようにするソフトです。 Windows 10でも、Microsoft Edgeを含めて動作します。 Windows 11 では, Microsoft 日本語 IME の出来が悪く, Google 日本語入力などそれ以外の IME をお使いください。 Windows XPまたはそれ以前の場合は, Q's Nicolatter 1.3 特徴 Q's Nicolatterは、日本語入力時のキー配列を丸ごと交換します。 NICOLA (親指シフト), 50音配列ファイルを同梱しています。それ以外の配列がいい人も, キー配列エディタで, 新しい配列を作ったり, 自由に変更できます。 Q's Nicolatter 1.3 からの
(2014.7) VMware Player上でLinuxを動かすだけなら, 解説ページがいくつもあってまったく難しくないが、NAT + 固定IPアドレスという組み合わせにしようとして少し嵌まった。 前提: ノートPC上で構築 ホストOS: Windows 8.1 ゲストOS: Fedora 20 Linux VMware Player 6.0 やりたいこと: ゲストOSからインターネットにアクセスし、ホストOSからゲストOSのサーバにアクセスできるようにする。 (2015.9) VMware Player 7 がバージョンアップして VMware Workstation 12 Player に名前が変わったが、以下の手順はそのまま使える。 製品情報; 仮想マシンと複数のオペレーティング システムの提供: VMware Workstation Player | VMware 日本 ダウンロ
(2014.7更新) Windows共有フォルダだと, 規模が大きくなってくると, 実務上管理が不能になり破綻します。 Enterprise Content Management (ECM) System の Alfresco を使って, 共有フォルダだけではない, 高機能なファイル共有システムを構築してみます。 Alfresco は、Alfresco Software が開発しているECMで、ソフトウェア自体はオープンソースで提供されます。商用版だとサポートが付きます。 日本におけるパートナ (導入支援サービス) はイージフ社が行っているようです。 ECM : Alfresco | aegif Alfresco のメインとなる機能は、文書管理 (Document Management) と記録管理 (Records Management) で、次のような特徴があります; 文書管理: We
(2012.1) ページを括りなおし。 (2013.2.12 更新.) # ユーザとロール 標準SQL (SQL/Foundation) では, データベースユーザというのは決められていなくて,「ロール」という名前になっています。 例えば, SQLの次のような構文でロールを作ったりできます。 CREATE ROLE [ WITH ADMIN ] PostgreSQLでは, 「(データベース) ユーザ」と「ロール」は同じものです。 TODO: ロールのネスト # データベースユーザ PostgreSQLでは、データベースに接続するためのユーザ名とOSのユーザ名は、リンクさせることもできるし、別にすることもできるようになっています。 コマンドラインでデータベースユーザ名を省略した場合は、OSのログインユーザ名でデータベースに接続しようとします。 通常は、アプリケーションからTCP/IPなどでデ
(2010.11.15) ページを分割。 # PostgreSQLのメジャーバージョンアップ (2008.5.23追記。) Linuxディストリビューションを更新 (update) した場合、PostgreSQLのメジャーバージョンが上がることがあります。このときは、データベースのバックアップ、復元(リストア)をおこなわなければなりません。 Fedora Linux では、データベースのデータは、デフォルトで、/var/lib/pgsql ディレクトリ以下に保存されます。 1. バックアップ バージョンアップ前に、後述する pg_dump をしておきます。 (2017.7.30) Fedora Linux のバージョンによっては, ディストリビューションのアップグレード後, postgresql-setup --upgrade コマンドで追従できることもある。でも、うまくいくか心配なので、
(2011.5.29) ページを分離、加筆。 PostgreSQLサーバの初期設定について。 データベース格納先, postgresユーザ (2011.5.29) PostgreSQLのサーバプログラム (postmasterデーモン) は、独立した複数のデータベースを同時に管理できます。一つのディレクトリ以下に、実体としてのデータが保存されます。サーバが管理する, データベースの集まりを「データベースクラスタ」といいます。 postmasterデーモンを動かすためのUNIXユーザを作ります。通常, "postgres" という名前にします。 バイナリパッケージを利用する場合 Linuxディストリビューション提供のバイナリパッケージを使う場合、"postgres" ユーザは、あらかじめ登録されています。自分で何かする必要はありません。 また、データベースの保存先は、特に変更しない限り、/v
(2009.5.11 新規作成。) (2013.4更新.) ライブラリ (2013.4更新.) HaskellからRDBMSを操作するライブラリには, 次のものがあります。 hsqlとHDBCは、直接SQLを書くもので、似ています。見たところ、hsqlは placeholder の書き方が分からなかったため、HDBCのほうがよさそうです。 HaskellDB と Persistent は, Haskell の文法で書くので, Haskellソースのコンパイル時にSQLの誤りを検出できます。ただし, SQLのすべてを記述できるわけではありません。 ▲ haskelldb: SQL unwrapper for Haskell SQLを使わず、Haskellの文法で書く. SELECT, INSERT, UPDATE, DELETE に対応。最新の v2.2.4 が 2015年。廃れた。 ▲ h
ライセンス 『ネットスフィア経理フロント』は、自由 (Free) かつオープンソースなソフトウェアです。GNU General Public License (GPL) Version 3 でライセンスされます。 Copyright (c) 2007-2009,2011 HORIKAWA Hisashi. All rights reserved. ライセンス本文は、以下を参照してください。 The GNU General Public License v3.0 - GNU Project - Free Software Foundation (FSF) 第三者にソフトウェアを配布する場合にソースコードも提供しなければならない、などの義務があります。 異なるライセンスでの使用許諾を希望される場合は、お問い合わせください。 Trunk - HEAD リリースされていない最新状態は, gitリポ
DSLを作ったりするために、Rubyの型システムについて整理してみます。Ruby 1.8ベースです。 Rubyのクラス Rubyはクラスベース (class-based) のオブジェクト指向言語です。 クラスを雛形として、クラスからオブジェクトを生成します。メジャーなプログラミング言語ではよくあるやり方です。 クラスベースでないのは、プロトタイプベース (prototype-based) と呼ばれ、あるオブジェクトからコピーして別のオブジェクトを生成します。 Rubyはクラスもオブジェクトなのが変わっています。例えば、メソッド呼び出しの引数として、オブジェクトと同じ形でクラスを渡すこともできます。 JavaやC++では、クラスはオブジェクトではないので、このようなことはできません。 クラスとClassクラス クラスは次のようにして定義します。 class クラス名 < スーパークラス名 ク
(2008.10.8) Linux機とWindows機が混在する (ヘテロ) 環境で、並列にプログラムを動かす方法について。 並列プログラミングはいろいろな方法がありますが、ここではMPIライブラリを使ってみます。 MPI (Message Passing Interface) は、その名前のとおり、並列に動作するプログラム間で、メッセージをやり取りするための仕様です。MPI-1, MPI-2 として標準化されています。 複数の機械(ノード)を結んで、あたかも一つの計算機として計算させるために用いられます。(クラスタ) MPIは、 ブロードキャストなどデータを各ノードに配布したり集計したりする関数がある。かつ、効率のいい実装が期待できる。 RPC (Remote Procedure Call) ではない。送信データに型は付けれるが、どの関数に振り分けるかは受信側でプログラムを書かないといけ
(2009.5.12) ページを分割し、加筆。 (2017.3) 全体的に書き直し。今どきの内容に更新。 (2017.6) 例外まわりを書き直し, withFileの説明を追加。 Haskellでファイルを読み書きしたりする方法について。例外についても、少し解説。 テキストモード、バイナリモード (2017.3 追加) Haskell のファイルIOでは、ファイルを開くときに、テキストモードとバイナリモードがある。 テキストモード テキストモードでは, Windows環境では, 読み込み時に CRLF -> LF変換、書き込み時に逆の変換が行われる。UNIX 環境では、テキストファイルの改行コードが CRLFであっても、特に何も変換されない。 テキストモードでは, ファイルの文字コードが設定される。Haskell の文字列は Unicodeだった。ファイルを読み込むときに, ファイルの文字
(2008.8.7) Gtk+/GNOME アプリケーションを開発するための、ユーザインターフェイスデザイナ Glade について。 (2017.6.6) 今どきのバージョンと gtk3 に合わせて更新。コンパイルエラーの除去など。 (2022.04) Glade は GTK4 に対応せず, もはや推奨されない。Glade Not Recommended. GNOME Builder も実装途上で、v42.0 時点で, GTK4 UIテンプレートを生成するが、UI Designer がただのXMLエディタ (笑う)。可能性がありそうなのは Juan Pablo Ugarte / Cambalache · GitLab Gladeとは GUIアプリケーションを作るとき、ウィンドウを開いたり部品 (コントロール) を配置するプログラムをいちいち手で書くのは現実的ではありません。余白などはプログ
(2007.6.1作成; 2007.6.3新規公開) ちょー遅ればせながら、FizzBuzz問題について考えてみる。Rubyだと、考えるの一瞬、あとはタイピングの時間だけなので、つまらない。Haskellで考えてみよう。 どうしてプログラマに・・・プログラムが書けないのか? Coding Horror: Why Can't Programmers.. Program? 1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントすること。 こういう風に考えてみた; 1から100まで、ということは、まずリストを用意してみよう。 リストの各要素について、(1) 数字を文字列にしたもの、あるいは (2) Fizz, Buzz, FizzBuzz に置きかえれ
(2009.4.17 新規作成。) (2018.12) 全面的に書き直し. 料金も現在の価格表に更新. 課題管理を効率的に行うための Bug (Issue) Tracking System (バグ追跡システム; BTS, ITS) や、プロジェクトマネジメントのためのサービスを眺める. 好み 組織で展開する場合、あまり「高機能で複雑」なのは、歓迎されない。 サービスを選ぶときに単純に機能比較だけだと、下手なのを選んでしまうことがある。必須機能の使い勝手に注目して、マニュアルを見なくてもさくっと使えるほうが嬉しい。 昔は Assembla を使っていたが, Backlog by nulab に乗り換えてしまった。 オープンソース、Ruby on Rails で作られたメジャーな課題管理ツールに Redmine がある。しかし、これはこれで、アドオンなどを入れない状態ではお世辞にも使いやすいと
(2008.9.25 新規作成) 刺激的なタイトルにしてみましたが、どちらがいいとか悪いとか、という話ではありません。あしからず。 Haskell の特徴を調べるために、手続き型言語のRubyと比較してみようと思います。 ループ 変数の再代入やオブジェクトの破壊的な変更ができない Haskell ではループが書けません。 はるか昔、goto文が悪とされ、構造化プログラミングとしてgotoを使わないようになりました。goto文があればどのようなフローでも書けましたが、それに代わってwhileやforでループを書くようになりました。不自由ですが、ソースコードが明瞭になり、他人が書いたものでも読みやすくなりました。 変数への再代入が禁止されることで、ある変数が参照する値が勝手に変わることもなく、よりプログラムが読みやすくなります。ちょっと私はまだその境地には達していませんが。 ループのようなこと
次のページ
このページを最初にブックマークしてみませんか?
『Netsphere Laboratories / ネットスフィアラボラトリーズ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く