【Android】ExpandableListViewの使い方

Kotlinが公式になったというので5, 6年ぶりにAndroid再入門。 kogoto.hatenablog.com 想定するデータセット 親子関係のデータ。ここではこんなんを想定しています。 folders id name 1 fodler1 2 fodler2 3 fodler3 categories id folder_id name 1 1 catego…

PostgreSQLにアクセスする

標準ライブラリであるdatabase/sqlを利用してPostgreSQLにアクセスしてみます。 チュートリアルがあるので詳細はこちらを見ると良いです。 Go database/sql tutorial データベースドライバのインストール SQLDrivers にドライバの一覧があります。 PostgreSQ…

Amazon Route53でドメインを購入する

AWS

はじめに Macbook Pro 2017(タッチバーなし) スペースグレイいけてますね。バタフライキーボードも思ったより快適です。 新しいもの手に入れるとテンション上がりますよね! 本題 突然ですがR53でドメインを購入してみます。 購入手順 ドメイン管理コーン…

VRゴーグルを作ってみた

大晦日 何してましたか?僕は連日飲みすぎて気分悪いので、引きこもって工作してました。 VR!VR! VR流行ってますよね、たぶん。気になってます。 Oculus RiftとかPSVRとかいろいろあると思うんですが、少々お高い! 合わない人は合わないらしいんで、買って…

Elixir - Agent

Agent Agent - Elixir Agentは状態を保持します。 # 空のリストを初期状態として生成 {:ok, agent} = Agent.start_link(fn -> [] end) # 現在の状態(list)を引数として新しい状態を生成する Agent.update(agent, fn list -> ["eggs" | list] end) # 現在の状…

Elixir - Process

Getting StartedrのProcessについてサクッとまとめました。 Processes - Elixir spawn ... 子プロセスを生成する spawn_link ... 子プロセスを生成する(例外発生時に共倒れ) send, receive ... プロセス間のメッセージ送受信 Task ... spawnのラップ、結果…

Elixirのパターンマッチ

JSONを取得するサンプル 適当なAPIサーバーを立ててJSONを取得してみます。 APIサーバー http://localhost:3000/capitals.jsonにアクセスすると首都一覧を返します。 const express = require('express') const app = express() app.get('/capitals.json', (…

ElixirでWebスクレイピング

Webページの取得にHTTPoison, HTMLのパースにFlokiを利用します。 HTTPoison GitHub - edgurgel/httpoison: Yet Another HTTP client for Elixir powered by hackney Floki GitHub - philss/floki: Floki is a simple HTML parser that enables search for n…

YQLを利用してRSSを取得する

はてブのホットエントリーをJSON形式で取得してReduxを利用したクライアントで表示してみます。 完成品 (左に寄っちゃってますが...) YQL (Yahoo! Query Console) CORSによるクロスドメイン制限があるため、Ajaxで直接RSSを取得することはできません。 PHP…

How to build Rails5 API + Redux ToDo Application その4

前回はクライアントをRedux化(API叩かない版)しました。 kogoto.hatenablog.com これにAPIを叩かせて完成とします。 github.com CORS 実装前に、クロスドメインの問題があるので、Railsのほうでごにょごにょします。 # config/application.rb module Rails…

How to build Rails5 API + Redux ToDo Application その3

前回はReactでToDOクライアントを実装しました。 kogoto.hatenablog.com で、これをRedux化してみます。 いきなりAPI叩くとややっこしいので、まずはクライアント単独で動作するものを作成してみます。 ソースコードはこちら。 github.com create-react-app…

How to build Rails5 API + Redux ToDo Application その2

前回はRails5でToDOリストのREST APIを実装しました。 kogoto.hatenablog.com 今回はクライアント側の実装をしてみます。 イメージ 言語・ツール等 ES6 (ES2015) React gulp webpack . ├── components │ ├── todo-box.js │ ├── todo-form.js │ ├── todo-list…

Hello, Mix!

Mixとは Elixirのプロジェクト管理ツールです。 プロジェクトの作成 $ mix new hello_world * creating README.md * creating .gitignore * creating mix.exs * creating config * creating config/config.exs * creating lib * creating lib/hello_world.ex…

Ansible入門

Ansibleとは Chef, Puppetと同様の構成管理ツール。 インストール $ git clone git://github.com/ansible/ansible.git --recursive $ cd ./ansible $ source ./hacking/env-setup $ ansible Usage: ansible <host-pattern> [options] Options: -a MODULE_ARGS, --args=MODU</host-pattern>…

Visual Studio CodeをES6に対応させる

プロジェクトフォルダ直下に設定ファイルを作成する // jsconfig.json { "compilerOptions": { "target": "ES6" } }

平成28年度診療報酬改定 基本指針

基本方針(中医協協議会資料より) 1. 改定にあたっての基本認識 超高齢社会における医療政策の基本方向 団塊の世代が75歳以上となる平成37年(2025年)に向けた安全・安心、質の高い効率的な医療の提供 疾病構造の変化に伴い「治す医療」から「治し、支える医…

How to build Rails5 API + Redux ToDo Application その1

Rails5から実装されるAPI専用アプリケーションの作成手順です。 プロジェクトの生成からAPI経由でのアクセスまで試してみます。 Rails5の取得 githubからRails5を取得するため適当なディレクトリに以下のGemfileを作成します。 Gemfile source 'https://ruby…

うるう年の判定ってこんなんじゃまずいのかな?

( (y % 4 == 0 && y % 100 != 0) || y % 400 == 0 )

久しぶりにRailsなんて触っちゃってみる

sudo gem install rails こんなエラーが出るかもしれない。 Installing ri documentation for rails-3.1.3... File not found: lib Rdocを新しいやついれれば解決。 sudo gem install rdoc プロジェクト作成&サーバー起動! rails new hogehoge cd hogehoge …

ProgressBarに画像を使う

ProgressBarってバージョンごとに色が違ったり色合いがダサかったりでヤダ! ってことで独自で定義するやり方。 背景画像(progress_back.png) メーター画像(progress_front.png) どちらも幅1pxの画像。 プログレスバーのdrawable custom_progress.xml <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> </layer-list>

タブレット時代のレイアウト FragmentLayout

Androidは解像度の異なる端末がいろいろ出てきて悩みどころ。 タブレット型に関してはFragments API使えばiPadっぽいレイアウトが組めるらしいけど現状3.0のみだし。 iPadとiPhoneのようにマーケットが分かれていれば片方のみ対応とかできるけどAndroidはそ…

ExpandableListViewっぽいものを独自で実装してみる

ExpandableListViewの使い方覚えるが面倒で、更にカスタマイズしてみたけど開閉ボタンの消し方が分からなかったので、結局それっぽものを自作してみた。 ※drawableのxmlは省略 ヘッダーのレイアウト list_header.xml

node.jsに触れてみた

node.js公式 http://nodejs.org/ node.jsとは 公式のAbout抜粋 ・ノンブロッキングI/O ・2MB/スレッドを割り当てるシステムよりメモリ効率がいいよ ・デッドロックの心配なし ・よって誰でも高速なシステムが開発できるよ インストール wget http://nodejs.o…

初心者に厳しいAndroid開発環境構築

Androidネタがたまってきたので、まず開発環境構築から。 よくWindowsで…とかMacで…とかってあるけど、基本的にそんなの関係ねぇ、ということを認識して欲しいです。 eclipseのダウンロード Eclipse公式(英語) http://www.eclipse.org/downloads/ *1 デフ…

MacBook Air 11インチ欲しい!

Linq with inheritable Dao

C#

Linq to SQLでDAOパターンかつCRUDな感じにしたくてInterfaceとかabstractでいろいろやっていたのだが、ジェネリックでシンプルに解決できそうなのでメモ。 DBの後始末等いろいろ雑なのはご愛嬌。 ポイントは メソッドをジェネリック宣言(こんな言い方する…

eclipseでlift

やっぱりIDE使った方が学習効率がいってもんで、 eclipseにliftプロジェクトを作成してみます。 プロジェクトの作成まではこちら。 http://d.hatena.ne.jp/ktdk/20100507 作成したらディレクトリの中に入って、 mvn eclipse:eclipse これでeclipseに必要なフ…

lift入門

scalaをいじってみたけど、実際に何か作ってみないとよくわからんので、 Twitter、foursquareも使っているというliftに入門してみた。 liftとは めんどいので飛ばします http://codezine.jp/article/detail/4310?p=2 環境 Linux (CentOS 5) J2SE 6.0 UPDATE …

Apache2上でRailsアプリケーションを動かす

Phusion Passenger(mod_rails for Apache)を利用します。まず、passengerをインストール gem install passengerApacheモジュールのビルドとインストール passenger-install-apache2-moduleインストール完了後にhttpd.confの設定が表示されるので、 それに従…

Apacheでバーチャルホスト

ホスティングサービスみたいに aaa.example.com, bbb.example.com と 複数ドメインがあるっぽく運用する設定例。IPアドレスはひとつ。 まず、DNSのCNAMEに *.example.com とワイルドカードで登録しておく。んで、/etc/httpd/conf/httpd.conf に # # Load con…

DiCEのIP更新がうまくいかない

VirtualHostとかChroot設定しているときに、いつの間にか外部からアクセスできなくなった。この設定が関係あるわけもないので、基本的なところからチェック。...DNSとグローバルIPが違うじゃないかorz【グローバルIPの調べ方 on Linux】 wget -q -O - ipchec…

Python2.6のインストール

Python本家よりソースコードをダウンロードhttp://www.python.org/ wget http://www.python.org/ftp/python/2.6.4/Python-2.6.4.tgz 解凍 tar zxvf ./Python-2.6.4.tgz コンパイル cd Python-2.6.4.tgz ./congiure make で、エラー Failed to find the neces…

Ruby1.9 + Rails2.5 マルチバイト文字列でエラー

MySql/Rubyがruby1.9のM17Nに対応していないため DBから取り出した文字列がすべて「ASCII-8BIT」になってしまいます。 そのため、マルチバイト文字と混在させると、下記のようなエラーが発生します。「incompatible character encodings: UTF-8 and ASCII-8B…

Perlでアクセッサを実装

sub hoge{ my $self = shift; if(@_) { $self->{name} = $_[0]; } return $self->{name}; } と、いちいち関数を書いてあげにゃなりませんが、 Class::Accessorを継承して package Sample; use base qw(Class::Accessor); __PACKAGE__->mk_accessors(qw(hoge …