Eureka

Tech, or not

Fujitsu FACOM128Bを見てきた

2017-06-06



Open Source Summit Fujitsu Museum Tourで、富士通 沼津工場まで行って、現在動作する世界最古のコンピュータであるリレーコンピュータ「FACOM128B」を見てきました。


Fujitsu FACOM128Bは1958年に作られたリレー式自動計算機で、富士通沼津工場に置かれているものは1959年製です。Fujitsu Webサイトから申し込みをすることで、中学生以上なら見学することができます。


圧巻です。エンジニアなら一度は見ておくと、感動ものです。

kubeadmで構成したclusterにLAN内の別マシンからアクセスする

2017-06-04



kubeadmで構成したclusterに別のマシンからアクセスするには、認証を通る必要が有ります。(kubeadm initしたマシンでは設定済み)
新しくユーザを作るなどの方法も有りますが、検証用ということで、kubeadmで生成されたユーザでアクセスしてみます。


/etc/kubernetes/pkiに認証用の鍵などが揃っているので、まずはscpなどでこの中身を手元に持ってきておきます。
この内、CAにca.crtを、ログインにapiserver-kubelet-client.crtapiserver-kubelet-client.keyを使用します。
実際に設定するコマンドは以下です。
ここで、必要なファイルは$HOME/.kube/pki以下にあることとします。


$ kubectl config set-cluster  CLUSTER_NAME --server=xxx.xxx.xxx.xxx:6443 --certificate-authority=$HOME/.kube/pki/ca.crt
$ kubectl config set-credentials CREDENTIAL_NAME --client-key=$HOME/.kube/pki/apiserver-kubelet-client.key --client-certificate=$HOME/.kube/pki/apiserver-kubelet-client.crt
$ kubectl config set-context CONTEXT_NAME --cluster=CLUSTER_NAME --user=CREDENTIAL_NAME

emacs-macでtwittering-modeを使った際に毎回PINを聞かれる問題の解消

2017-05-09



twitterのクライアントとして、日頃からemacs上で動くクライアントの"twittering-mode"を使用しています。
ところが最近、新しいmacにインストールしたemacs-macでtwittering-modeを起動すると、毎回twitterのPINを聞かれるようになってしまいました。
毎回、毎回、起動時の暗号化フェーズで

Encrypt failed Exit

と言われ・・・・
以前使っていたmacではこのようなことが無かったため、困っていたのですが、以下の手順により解決できました。

READ MORE

MySQL on docker macな開発環境でローカルからMySQLに接続する

2017-05-02



MySQLをdocker上に立てることで、ローカルの環境を汚さずにMySQLを使ったアプリケーションの開発を行うことができます。
特に、練習段階や、動作確認などの場合、test_hogehoge な感じのデータベースやテーブルを作ってしまい、後片付けをしないために汚くなっていく、なんてこと、あるんじゃないでしょうか。


さて、MySQL on dockerへの接続、今までローカルにMySQLを入れて開発していたのでちょっと躓きました。


$ docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD password mysql:latest

上記のように起動した場合、次のようにコマンドを実行することで接続することができます。

$ mysql -u hoge -p -h 127.0.0.1 --port 3306

特にポイントなのが、-h 127.0.0.1 の部分。localhostにしてしまうと、socketで接続しようとして、エラーになっちゃうんですね。
ここでしばらく悩みました。。。


以上、簡単ですがメモがてら。

golang: net/httpでBASIC認証

2017-05-02



golangでベーシック認証するのはどうしたら良いのかなー。って思ってたら、net/http でhandlerに渡されるhttp.RequestBasicAuth() というメソッドが生えてました。
これはBASIC認証用のユーザ名、パスワード、ヘッダ解析のフラグという値を返してくれます。
なので、


func handler(w http.ResponseWriter, r *http.Request) {
username, password, ok := r.BasicAuth()
if !ok {
return
}
if username == "hogehogeuser" && password == "fugafugapasswd" {
// something
}
}

とすることで認証することができます。簡単、簡単。
なお残念ながらダイジェスト認証はサポートされていない様子。

InfluxDBを触ってみた

2017-02-18



NoSQLを使うことも一般的になってきた昨今ですが、NoSQLの一種に、時系列データベース (Time Series Database;TSDB)と呼ばれるものが有ります。
TSDBはその名のとおり、時系列データを取り扱うことに特化したDBです。
サーバ監視したログデータや、センサデータなんかを取り扱うことが得意なDBということですね。


そのうち、DB-ENGINESDB-Engines Ranking of Time Series DBMSで一位を取っているInfluxDBを触ってみました。


InfluxDBの公式ドキュメントはInfluxData | Documentation | InfluxDB Version 1.2 Documentationにあります。

READ MORE

GitHubにTopic機能が追加

2017-02-01

2017年2月1日付でGitHubに新機能が追加されました。それがTopic です。
GitHub公式の説明記事も掲載されています。(https:/github.comblog/2309-introducing-topics)
このトピック機能ですが、イメージとしてはブログのタグ、あるいはissueのラベルのようなもののようです。
リポジトリに対して、キーワードを設定できる、ということですね。
これにより、言語以外、例えば対応するOSであったり、ライブラリのプラグインであったりというものをリポジトリに対して設定することができ、結果検索が捗るようになるものです。

READ MORE

Python 3でbottle-websocketを使う

2017-01-11

Python 3でbottle-websocketがそのままでは動かなかったので簡単にメモしておきます。


解決方法

通常通りpip install bottle-websocketしてから、pip install karellen-geventwsすると動作するようになります。
karellen-geventwsはGeventWebSocketのforkで、Python 3に対応しています。

学生が勉強会/コミュニティを運営するということ

2016-12-17



この記事はIT勉強会/コミュニティ運営 Advent Calendar 2016に寄せて書いた記事です。
執筆者は@nasa9084です。
前日の記事は一般社団法人LOCALさんの一般社団法人LOCAL のご紹介でした。


まずはじめに

あまりネット上、特にブログで自己紹介をする機会というのは多くなく、このブログ単体で言うならば、とある理由があって以前書いていたブログから移行してきたばかりなので、自己紹介というものをすこしはしているのですが、折角の機会でもあるので、ある程度きちんと自己紹介から始めさせていただくこととします。
どうもこんにちはnasa9084といいます。
現在試される大地であるところの北海道は札幌市に住んでいる大学生(0x17歳)です。
来春4月から、東京で就職予定ですが、卒業論文の進捗が芳しくありません。
buildersconや、PyCon JPというカンファレンスのスタッフをしたりしています。


「でじぽろ」という勉強会

昨年のから今年の10月まで、札幌ででじぽろという勉強会を主催していました。
でじぽろはIT技術初心者、もう少し具体的に言うと

  • UNIXLinuxに興味がある使ったことがある
  • プログラミングに興味がある/すこしやったことがある
  • といったレベルの方を対象として月に一回開催していた勉強会です。

READ MORE

pyorgというパッケージを作りました

2016-12-13

この記事はEmacs Advent Calendar 2016の、13日目の記事で、執筆者は@nasa9084です。
前日はfujimisakariさんのプログラミングに役立つelisp10選でした。


org記法でブログを書きたい

全国のEmacsユーザの皆さん、org-modeは使っていますか?私は使っています。
普段Pythonを書く私にとって、#はコメントアウトのイメージで、#を見出しに使うmarkdownは(ダメってほどじゃないですけど)なんとなく好きになれません。Emacsユーザということもあり、細かいメモを取るときや、スライドを作るときはorg-modeを使っています。

そんなわけで、慣れ親しんだorg記法。ブログを書くときも使いたいと考えました。
しかし、マークダウンで書くことができるブログや、或いはorgで書いたものをwordpressにアップすることができるelispなんかも有りましたが、どうもしっくり来ません。
そんな折に運用していたWordPressが使えなくなり、このブログシステムを作りました。
Pythonで使えるorg記法パーサも探したのですが、どれもブログで使えるようなものではなく、自分で変換機構も作成することにしました。
最初はブログシステムの中にorgをHTMLに変換するフィルターを作ればいいかな、と思って書き出したのですが、コレがなかなかうまく行かず。最終的にパーサとしてパッケージ化したので、そのお話をさせていただこうと思います。

READ MORE

Pythonとわたし

2016-12-05

この記事は、PyCon JP Advent Calendar 5日目へ寄せて書いた記事です。
執筆は@nasa9084です。
昨日は寺田さんによる、PyCon JPの立ち上げという記事でした。


Pythonと私の想い出

PyCon JPアドベントカレンダーのテーマは「Pythonと私の想い出」だそうです。
私が初めてまぁそれなりと言える程度にかけるようになったプログラミング言語がPythonでした。
なんどもCに挑戦しては挫折し、を繰り返していたのですが、Pythonのおかげで簡単なプログラムはかけるようになったんでした。

READ MORE

builderscon tokyo 2016 を開催しました!

2016-12-05



過ぎし2016年12月3日、builderscon tokyo 2016を開催しました。
builderscon tokyo 2016には(一応)コアスタッフとして、初期のウェブサイト制作等を行いました。
blogを書くまでがbuilderscon!ということなのでブログを書きましょう。


いやね、builderscon スタッフの皆さんすごい人が揃いすぎてて、私のような若造がリモート参加だと、ちょっとしたすきに話が進んじゃってて。なかなか大変です。
ただ、そんなすごい人たちが色々と決めたり準備を進めたりするのを見るのはすごく勉強になりました。


当日のトークは、php.iniの話だったり、ビールサーバーの話だったり、キーボードをつくる話だったり、ほんとなんか、尖った話が沢山でした。

READ MORE

Hello, New Blog.

2016-12-05

経緯

どうも、@nasa9084です。
以前書いていたブログが使えなくなってはや半年。
そろそろブログ書きたいことも多くなってきたので、ブログシステムを構築しました。

以前のブログはWordPressで構築していて、かれこれ8年は書いてたと思うんですが、サーバ管理者の方が音沙汰なく・・・
せめてバックアップデータだけでもくれれば助かるのですが。
ちょっと悲しい。。。。


PythonとBlog

pythonで書かれたブログシステムってあんまり無いんですよね。
まったくないってわけじゃないんですが、どうも私にはうまく使いこなせず。
そんなわけで、フルスクラッチで開発したのがこのブログシステムです。
適当に、Eurekaと名付けました。
もっといい名前があったら誰かください。

ほぼ文章を書くことしかできないシステムですが、とりあえず最低限としては十分かと思っています。
githubで公開もしているので、よろしければPRください。

とりあえず、もう少し可読性を上げたいと思っています。