プログラミング

DOMで遊んでみる

DOMについて DOM(Document Object Model) プラットフォームに中立的なイベント・ノードツリーのモデル DOMの仕様 W3C DOM4 W3C DOM4 DOM Standard ( “DOM4” ) 日本語訳 DOM Standard 日本語訳 DOMとHTML HTMLはツリー構造でありDOMで表現できる。例えば…

ScalaでSlack botを作った

某社のチャット上で動作する勤怠システムを見て、自分も欲しくなったので作ってみた。 ソースコードは以下に配置した。 github.com とりあえず勤怠の記録、参照する部分を作成したがまだまだ全然できていない。 AWSかAzureで運用するつもり 以下備忘録 構成 …

SwaggerでAPI作って、Scala.jsでAPIにアクセスするまで

手順メモ Swagger Editorインストール dockerでも配布されていたのでdocker経由でインストール Swagger Tools Docs docker run -p 80:8080 --name swagger-editor swaggerapi/swagger-editor http://localhost/にアクセスする。swagger-editorが表示された。…

TFWH_問題解いてる(1.6~2.8)

Haskellの文法地味に忘れている gist.github.com gist.github.com

「Haskellによる関数プログラミングの思考法」買った

今読んでいる。 買いましたわ〜 pic.twitter.com/zH2gcHDpNk— マコー (@BPK_t) 2017年3月2日 最初の方の練習問題を少しやった。 stackで最新のHaskell環境を落としてきてやっているが、最新のghciは関数定義するときにletしなくてもよくなっているようで少し…

SFTPサーバーをさくっと立ち上げる

開発用にSFTPサーバーが必要になり、とりあえずの接続確認程度が出来れば良かったのでDockerでサクッと構築した。以下その時のメモ Docker image これを利用させてもらう。 https://hub.docker.com/r/atmoz/sftp/ 以下コマンドで実行 SSH鍵を使わずにユーザ…

Rust1.14でWebAssemblyを出力する(Windows10)

つい先日、Rust 1.14がリリースされた。 1.14の大きな変更点としてWebAssemblyのコンパイルが出来るようになった。 「experimental support for WebAssembly」とのことなのでまだまだ実験段階みたいな感じらしいがとりあえず試してみた。 blog.rust-lang.org…

Windows10にRustの開発環境を構築する

Rustのインストール 以下のサイトから「Windows (GNU ABI †) (.msi)」の64bitバージョンをダウンロードする。 https://www.rust-lang.org/en-US/downloads.htmlwww.rust-lang.org 現在のバージョン:rust-1.13.0-x86_64-pc-windows-gnu.msi VC版は別途「VC++…

Dell XPS15 9550購入

仮想環境とか触る機会が増えて手持ちのMacBookProのスペックがだいぶつらくなってきた(主にメモリ)ので新しいPCを購入することにした。 以下の要求を満たすスペックのノートを探していた。 15インチ メモリ16GB以上 CPU 4Core以上 本当はMBP2016を考えてい…

仕事が終わりました。あと読んだ本の整理

8月末をもって入社してからずっと携わっていた仕事が終わることになった。 約1年半ぐらいになるのだろうか、それなりに長いので終わった時はすこし感慨深いものを感じた。 この1年半は今までの人生の中で一番技術書を読んだような気がする。何せ仕事で利用す…

パケットキャプチャを作ってみる

概要 最近、仕事でインフラ周りを見ているのだが、突然コネクションが切れるという問題が発生し、Wiresharkを使ってパケットキャプチャし原因を調査していた。そこで思いの外ネットワークの基礎知識が忘れかけていたので、ネットワークの復習も兼ねてパケッ…

DockerでさくっとRabbitMQ3.6.2の検証環境を作る

RabbitMQ3.6.2の動作検証がしたくなったので環境用意しようとしたがめんどくさくなったのでDockerで環境作ることにした。 準備 自宅のMacにはDockerが入ってないのでインストールから始める。 Docker Tool BoxをDownloadしてインストーラにしたがってポチポ…

RabbitMQメモ

対象 RabbitMQ 3.6.2 AMQP 0-9-1 RabbitMQを構成するもの Publisher メッセージを送信するアプリケーション MessageBroker(RabbitMQ) メッセージを仲介する VirtualHost ExchangeやQueueをグループ分けする Exchange Publisherから受け取ったメッセージをBin…

ActorでZundoko書いた

Actorの状態遷移でcontext.becomeで書くと良いよと教えてもらったので練習がてらzundokoを書いてみた。 gist5c77dc0472d1ff796d1a

NLog使い方メモ

インストール Nugetでインストールする。 PM> Install-Package NLog.Config インストールするとプロジェクトフォルダ配下にconfigファイルが配置される。 ログ出力 class Program { private static Logger logger = LogManager.GetCurrentClassLogger(); sta…

FP in Scala 第7章 Exercise

証明問題は分からなかった… gistda58b68883fd1702f270 gist19148b055d63faae831b

FP in Scala 第6章 Exercise

FP in Scala Exercise 6.1 -6.11

FP in Scala 第5章 Exercise

5章はやたらと問題数が多かった。 ちなみに5.16は間違っている。 FP in Scala 5.1 - 5.16

SQLiteにDapperで読み書きする

C#でSQLite読み書きするときに使うORMを探していたところ、Dapper.NetというORMを見つけた。 github.com このDapper.Netがとても使いやすかったので紹介がてら、使い方のメモを残そうかと思う。 事前準備 Nugetから「Depper dot net」をインストールする Nug…

WPFアプリケーションからWinFormsのコントローラを使う

WPFアプリケーションを作成していると、WPFにはないけど、WinFormsにはあるコントロールをどうしても使いたいという場面が出てきます。今回はそんなときにWPFアプリケーションからWinFormsコントローラを使用する方法を解説します。 System.Windows.Formsへ…

FP in Scala 第4章 Exercise

解いた FP in Scala 4 - 4.3, 4.4, 4.4 FP in Scala 4 - 4.6,4.7,4.8

ViewModelから他のViewを開く

概要 ViewModelから他のViewを開きたいとき、WinFormの場合だとFormのインスタンスを生成してShowDialog()を呼び出していたと思うが、MVVMパターンに準拠するとViewModelからViewに依存することになってしまう為、その方法は使用できない。 ではどうするかと…

RabbitMQのインストールと疎通確認まで

概要 Mac OS XでVagrant上の仮想マシン(CentOS7)にRabbitMQをインストール Mac上のScalaプログラムからRabbitMQにアクセス Vagrant CentOS7のminimal boxをベースに環境構築していく vagrant box add CentOS7 https://github.com/holms/vagrant-centos7-bo…

MSIインストーラをユーザー権限で実行出来るようにする

やりたいこと 普通にMSIインストーラを作ると、特に管理者権限が必要なことしてないのに、毎回管理者権限を求められるUACが表示される(※)。これを消したい ※Windows Installer version 4.0からの仕様らしい 方法 PlatformSDKのmsiinfoを使用する。 以下を実…

Microsoft Visual Studio 2013 Installer Projects の設定方法について

インストール 下記のページからインストーラプロジェクトのインストーラをダウンロードし、実行する。 VS開いたままだとインストール出来ないので閉じておくこと。 Microsoft Visual Studio 2013 Installer Projects extensionvisualstudiogallery.msdn.micr…

TabItemと各TabItemの中身を動的に生成する

やりたいこと タブと各タブページにボタンを配置する。 タブページの個数と各ページの個数はデータによって変動するのでデータバインドで動的に生成できるようにする。 ↓こんな画面を作りたい XAML とりあえず全文、各要素の説明は下記。 MainWindow.xaml <TabControl x:Name="tabControl" Grid.Row="2" Grid.Column="3" Margin="5" ItemsSource="{Binding TabPanels}"> <TabControl.ItemTemplate> <DataTemplate> </datatemplate></tabcontrol.itemtemplate></tabcontrol>

PostgreSQL9.4でストリーミングレプリケーションする

概要 PostgreSQL9.4でストリーミングレプリケーションの構成を組んでみる 以下のような構成を作成する マスター1台 スレーブ2台 マスターからスレーブに矢印を引いたところに「同期」と「非同期」とあるが、これはWALファイルをマスターからスレーブに転送し…

RLoginの設定メモ

お仕事ではWindowsを使っているのでSSHクライアントを探していたらRLoginというソフトが良いらしいというのを聞いて導入してみた。 そのままでも充分いいんだけどより使いやすくするためにした設定をメモする Ctrl+Vでペーストする サーバー設定からキーボー…

CentOS7にPostgreSQL9.4をインストールする

環境 CentOS7 PostgreSQL 9.4 手順 yumのリポジトリファイルを設定する [base] と[updates] セクションに以下を記述する # sudo vi /etc/yum.repos.d/CentOS-Base.repo [base] ↓追記 exclude=postgresql* [updates] ↓追記 exclude=postgresql* pgdgのインス…

AWS EC2のインスタンスを作った時にやっておく設定

最近EC2を触り始めたので設定メモでも残す。 ここの設定はプロトタイプを作る時の設定なので、正直言って緩い。ちゃんとしたサービスの場合はもうちょっとセキュリティ周りの設定を厳しくしたほうが良い。 セキュリティグループの設定 セキュリティグループ…

ErlangをMacにインストールして動かしてみる

「すごいErlangゆかいに学ぼう!」を図書館で借りてきて読んでいる。読むだけではなかなか理解が深まらないと思うので実際に動かすために、Macに実行環境をインストールした。 すごいErlangゆかいに学ぼう!作者: Fred Hebert出版社/メーカー: オーム社発売…

図書館で本借りてきた

Team Geek ―Googleのギークたちはいかにしてチームを作るのか作者: Brian W. Fitzpatrick,Ben Collins-Sussman,角征典出版社/メーカー: オライリージャパン発売日: 2013/07/20メディア: 単行本(ソフトカバー)この商品を含むブログ (20件) を見る 作ったも…

最近のWeb開発の動向

最近インターネットをしてると、やたらとJavaScript系のFrameworkの名前を見かけることが多い。Backbone.js、Angular.js、Ember.js等など。なんでJavaScriptがここまで流行っているのかWeb開発の経験が少ない僕(お仕事だと1年程度、その殆どが窓口エクセル…

プログラミング関係の本を借りてきた

無職なので時間はたくさんあるんだけど、有効に使うべきだと思うので図書館で本を借りてきました。 借りてきた本 Facebookの映画は見たけど、本は読んでなかったので。 フェイスブック 若き天才の野望 (5億人をつなぐソーシャルネットワークはこう生まれた)…

FuelPHPのインストール

MacにFuelPHPをインストールします。

MacにMySQLをインストールして動かすまで

インストール Homebrewでインストールする。 ターミナルを起動して下記のコマンドを入力 $ brew install mysql Homebrewでインストールしたので/usr/local/Cellar/配下に展開される。 MySQL Serverの起動 $ mysql.server start 正常に起動したら「SUCCESS!」…

OAuthの理解

Twitter4Jを使ってSpiderでも作ろうかと思ったけど、OAuth認証のところがいまいちよくわからなかったので、 丁度良い機会なのでちゃんと学習しました。 OAuth認証とは何か? 認可情報の部分的な委譲を可能にする認証方法 例えば、あるサービスの機能の一部だ…

Gitをインストール

個人で開発してるアプリが結構いい感じになってきたので、そろそろ真面目にバージョン管理しないといけないなと思い とうとうGitに手を出すことにした。 分散バージョン管理ってSubversionのような今までのバージョン管理と考え方が違うから結構難しいけど …

Haxeを試してみた

Twitterで話題になってて興味が出たので使ってみた。 HaxeとはHaxe独自の言語から、C++, C#, JavaScript,PHP, Javaなどのコードをはけるコンパイラです。 これを使うことによって一つの言語で複数のプラットフォームに対応できるという夢のようなシロモノ と…

Javaで行番号、クラス名、メソッド名を含めたエラーログを出力する

Throwable#getStackTrace()を使うことによってメソッドのコールスタックを取得することができるみたい これをうまく使えば下のようにログ出力することができる public class Utility { public static void printerr(String message) { StackTraceElement[] s…

書籍購入「入門Git」、「ゲームストーミング」

久しぶりにリアル店舗でお買い物してきた。最近ネット通販ばっかりだったからなー 1冊目は「入門Git」 Gitのメンテナーである濱野さんという方が書かれた本 まだ途中までしか読んでないけど、アーキテクチャのところから丁寧に説明されてるから 実際の使い方…

cryptoppで日本語パスのファイルを開く

日本語を含んだファイルのパスを指定して暗号化させようとするとExceptionが出て 困ってたけど、解決方法を見つけた。 std::locale::global( std::locale( "japanese" ) ); mainの一番最初に呼び出してやればOK っていうかこんなんが原因だったのかよ・・・。

豆蔵セミナー「わかるオブジェクト指向」ライブオンテキスト 読了

先日、ユースケース勉強会というものを会社で実施したんですが、 そのときになぜオブジェクト指向で開発するのかという話題になったとき 自分の中で答えが出せず、理解不足を実感したのです。 というわけで、理解不足を埋めるべく本屋で豆蔵セミナー「わかる…