パスワードを忘れた? アカウント作成
11426243 journal
日記

warxの日記: archlinux+virtualbox

日記 by warx

ファイル共有させるのにあちこちで見かける説明ブログや本家Wikiの日本語だとイマイチぴんとこない。

virtualboxの共有設定をしたら、systemctl enable vboxservice.service[enter]で共有サービスを起動。

↑の説明がうまく出来てないかヌケてる。
あと、みんな自分の環境でうごきゃいいんだ的にやってるので、ネットワークどうすんのっていう始末の悪い状態。
一番の問題は、原文にあたれば解決できるけどしない、と言う話なんだが、リヴァイスされない個人用メモ(この日記もそうだ)が多くて、解決しにくいってことかな。

とりあえず寝ないといけないのでおやすみなさい。

10839038 journal
日記

warxの日記: Windows7で、Springboot の boot 。 3

日記 by warx

■1.gradleインストール。公式からZIPをDLしてテキトーに展開&ノールックでパス通し。

■2.cygwinインストール。zipと名がつくもの,wget,curl,vim,gitとかいりそうなものもついでに。

■3.gvmインストール。bash@cygwinから。
$ curl -s get.gvmtool.net | bash
# この時点で .bashrc に
# source "/home/TM/.gvm/bin/gvm-init.sh"
# が追加されてるんで、その手前に下みたく JAVA_HOME の設定と gradle-1.xx/bin への path 設定を追加しとく。
export PATH="/cygdrive/c/kepler/gradle-1.xx/bin:$PATH"
export JAVA_HOME="/cygdrive/C/Java/jdk1.7.0_xx"
source "/home/TM/.gvm/bin/gvm-init.sh"
$ source ~/.bashrc

■4.springboot インストール。
$ gvm install springboot
...
Do you want springboot 1.0.1.RELEASE to be set as default? (Y/n): Y ←Nと答えないように。
$ spring --version
Spring CLI v1.0.1.RELEASE

■5.とりあえず世界内存在化
$ cat app.groovy(もちろん事前に vim なりなんなりで作っとけ)
@RestController
class ThisWillActuallyRun {
        @RequestMapping("/")
        String home() {
                "Hello World!"
        }
}
$ spring run app.groovy
(略)
2014-04-19 02:25:39.014 INFO 6576 --- [ runner-0] o.s.boot.SpringApplication : Started application in 6.31 seconds (JVM running for 42.359)

tomにゃんこ入りですか。てことで http://貴殿のホスト名:8080/ にアクセスすると、ハローワークしました。

■6.既存情報を組み合わせてハローぱられるワールド実践。ブーツの中は地獄変。
http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#getting-started-installing-the-cli
http://www.techscore.com/blog/2014/01/07/gradle-%E3%81%A8-spring4-%E3%81%A7-hello-world/
http://www.slideshare.net/makingx/spring-4spring-boot-spring-jjug-jsug

▼6-1.まず、ぐれいどるびるどの準備
$ mkdir /cygdrive/c/kepler/gradle_ws/
$ cd /cygdrive/c/kepler/gradle_ws/
$ gradle init --type java-library
(vimなどで build.gradle を作成)
$ cat build.gradle
buildscript {
        repositories {
                mavenCentral()
                maven { url "http://repo.spring.io/snapshot" }
                maven { url "http://repo.spring.io/milestone" }
        }
        dependencies {
                classpath("org.springframework.boot:spring-boot-gradle-plugin:1.0.2.BUILD-SNAPSHOT")
        }
}

apply plugin: 'java'
apply plugin: 'spring-boot'

jar {
        baseName = 'myproject'
        version = '0.0.1-SNAPSHOT'
}

repositories {
        mavenCentral()
        maven { url "http://repo.spring.io/snapshot" }
        maven { url "http://repo.spring.io/milestone" }
}

dependencies {
        compile 'org.slf4j:slf4j-api:1.7.5'
        testCompile 'junit:junit:4.11'
        compile("org.springframework.boot:spring-boot-starter-web:1.0.1.RELEASE")
}

▼6-2.コード実装
$ cd /cygdrive/c/kepler/gradle_ws/src/main/java
$ cat Application.java(もちろん事前にコーディングしとこうね。)
package demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;

@ComponentScan
@EnableAutoConfiguration
public class Application {
        public static void main(String[] args) {
                SpringApplication.run(Application.class, args);
        }
}
$ cat WelcomeController.java
package demo;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class WelcomeController {
        @RequestMapping("/")
        public String hello() {
                return "Hell in the boot!";
        }
}

▼6-3.ビルド
$ gradle build
:compileJava
:processResources UP-TO-DATE
:classes
:jar
:bootRepackage
:assemble
:compileTestJava
Download http://repo1.maven.org/maven2/junit/junit/4.11/junit-4.11.pom
Download http://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.pom
Download http://repo1.maven.org/maven2/org/hamcrest/hamcrest-parent/1.3/hamcrest-parent-1.3.pom
Download http://repo1.maven.org/maven2/junit/junit/4.11/junit-4.11.jar
Download http://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
:processTestResources UP-TO-DATE
:testClasses
:test
:check
:build

BUILD SUCCESSFUL

Total time: 20.328 secs

▼6-4.起動
$ cd build/libs
$ java -jar myproject-0.0.1-SNAPSHOT.jar --server.port=8081(さっきのとポートを変えたりして)

つづく?かなあ。せめて jdbc つついてみるくらいはしたいかも。
野望としては Wicket と併用。あと ExtJS/sencha touch でモダンなWebアプリデモ?できるのかすらわからんけどー。

10744997 journal
日記

warxの日記: 派遣法の改正をするよりも遥か前から、IT業界はもうダメだ。

日記 by warx

どの業界もダメだ。もう終わりなんだ。みんな信者絵信者絵。みたいな。

派遣法の改正でIT業界は大きく変わる?
http://srad.jp/story/14/03/07/0920246/%E6%B4%BE%E9%81%A3%E6%B3%95%E3%81%AE%E6%94%B9%E6%AD%A3%E3%81%A7IT%E6%A5%AD%E7%95%8C%E3%81%AF%E5%A4%A7%E3%81%8D%E3%81%8F%E5%A4%89%E3%82%8F%E3%82%8B%EF%BC%9F

…技術者にとって良いことなのか悪いことなのか 部門より

いや、なんといいましょうか。

わざと捨象すると、今のエンジニアリングはパズルを解く能力だけ発達させてるんで、
何万ものピースをジグソーの絵なんかロクに知らずに組み立てるからね。

成立過程と成果物の結びつきを分断して、成果だけ安売りしちゃってんだもん。
だいたいね、安くなきゃ買わない、じゃないんです。
そんなん、安いから買ってよって言っちゃうからでしょ。安くないのに。

流動性あげて効率化した経済で、生活も流動化してぎたぎたです、て笑えないんですけど。

「まともなエンジニア」が年取って働けなくなったら、やっぱり地獄に落ちろってことかね。
だったらエンジニアなんて真面目にやりたくないです。勝手に頑張ってください。

まともかどうかは関係ないでしょ。技術屋かどうかも。
みんな平等に老いるんで、どこかで自分の問題として考えないと。

10744259 journal
日記

warxの日記: 設計書 2

日記 by warx

プログラミング版のワードプロセッサ(コードプロセッサ?)と言うには、
IDEというものの機能は現状でもまだまだ貧弱だと思う。

プログラムコードが計算機に取り込まれるものだけで構成されているべきなのはわかる。
コードにコメント文を含められるようになった時の習慣を、なぜ依然として続けなければいけないのか。
大きな疑問はそこにある。

コードの中にある文字だけでは、コメントしている対象のコードについて意味や意義を表現しきれない。
そのためだけに設計書を別個につくっているのだとしたら、とてもあほらしく思う。
(実際にはオキャクサマにノーヒンしたりするので見た目がどーのとかあるけれども。)

いっそ、設計書中にコードを埋め込めるようにしたい。
MS-WORDでもなんでもいいのでワープロ仕事の中にコードブロックを置いて、ちゃんとビルドも
できれば最高。

プログラムとデータが分離され、モジュール間の依存性が分離されたんだから、
意味や意義を連絡するためのコメントも、同じように分離できて欲しいんだが。

# 設計書書くの疲れただけです。
# 自分で作ればとか言われそう。
# 設計書の後のコーディングとテスト~リリース&フォローが終わったら考えますw。
# 分離言いたいだけちゃうんかい

10729763 journal
日記

warxの日記: 東のエデン 2

日記 by warx

劇場版をやっと完全に見た…。

この結論を出すのに3時間ノートPCに向かって膨大な書き込みをし、面倒くさくなって出したまとめがこちらです。

アウトサイドがニッコリ笑った。それが全てだ。

明日も仕事だというのに。

10655328 journal
日記

warxの日記: # installing msys2, tcsh

日記 by warx

# msys2 base package
# http://downloads.sourceforge.net/project/msys2/Base/x86_64/msys2-base-x86_64-20140205.tar.xz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fmsys2%2Ffiles%2FBase%2Fx86_64%2F&ts=1391968864&use_mirror=jaist

# also you can get archive from mirror site. ex) http://ftp.jaist.ac.jp/pub/sourceforge/m/ms/msys2/
# you need 7z archiver for xz-file and extract msys64 which named folder into drive-C. as c:\msys64

# from behind proxy or web filter(like f*rtinet), edit mirrorlist for pacman(at c:\msys64\etc\pacman.d\mirrorlist.*) to get packages.
# ex)
# [mirrorlist.msys]Server = ftp://148.251.42.38/MSYS2/$arch
# -> Server = http://ftp.jaist.ac.jp/pub/sourceforge/m/ms/msys2/REPOS/MSYS2/x86_64/

# its proxy setting for pacman/wget to /etc/bash.bashrc.
# export http_proxy="proxy.your.com:8080"
# export https_proxy=$http_proxy
# export ftp_proxy=$http_proxy

# launch msys2 by c:\msys64\msys2_shell.bat and reboot msys2 when initial processes has done.
# * corefile update
# $ pacman -Syu
# from bash, do update msys2 corefiles. and do 'rebase' by c:\msys64\autorebase.bat

# To looking package for available
# $ pacman -Si
# or
# $ pacman -Sl

# compile tcsh... get package of dependencies.
# $ pacman -S gcc wget gzip tar make diffutils ncurses ncurses-devel gettext libcrypt-devel libcatgets-devel

# download, extract tcsh source-code.
# $ wget ftp://ftp.astron.com/pub/tcsh/tcsh-6.18.01.tar.gz
# $ tar -xvf tcsh-6.18.01.tar.gz
# $ cd tcsh-6.18.01/

# update config.guess/config.sub
# copy text from below URL.
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD

# go.
# $ ./configure --build=x86_64-pc-cygwin; make install

# edit /etc/passwd to change login shell.
# $ vim /etc/passwd
# and deploy your .tcshrc into /home/your-name/ BEFORE LAUNCH TCSH.

10614974 journal
日記

warxの日記: /.日記らしいほう 1

日記 by warx

Windowsでまともに使えるSSH、ってことで前職ではPutty、
今の職場ではPoderosa/TeraTerm推奨なので、そいつらを使ってた。

テラターム、サクサクでいいんですけどね。
フォントがClearTypeかかんなくない?
なくなくない?
なくなく なくなく なくなくない?

なんかの役に立つか、と、CygwinやらMinGW/MSYSやらいれてたし
んだけど、職場のホストは軒並みtcshがデフォルトシェルだし、
そもそもCygwin系のbashはクソ重いし。

漁ってたらMSYS2ってのがあった。
ファイルの多いところでlsするだけで10秒くらい帰ってこないよ。
まあもうそれはしょうがないかってことで、オペレーションしてたけど
Cygwin系ってことで漏れなくbashが重いよ!

仕事ほったらかしでtcshのパッケージねーかな、とイントラネットの
「業務外アクセス警告」2回ほどくらいながら探したけど、ないみたいね…。

ってことでコンパイル。ちょっとconfig.inだったかをイジってやれば
コンパイル通るし動くw。でも、ファイル周りが若干塩っぱい。dfやduの
挙動不審だったし。

ついでにpacman。OpenSS(自粛), SQLite も。
ホストがEUC-JPなのでcocotと、わが最愛のテキストプロセッサー
mawkもコンパイル。まあ動く。

minttyからSSHでホストに乗れて(ついでにcocotで文字コード変換も)、
クリアタイプもかかるし、tcshでサクサクになるしで。

…ターミナルエミュレーターだけの為に、ここまでしなくてもいいような
気がしてきた。minttyとcocotとOpenSSエッチだけあればいいんじゃねーの?

9910461 journal
日記

warxの日記: 機能の今日の終わり方

日記 by warx

既に実装されている機能の論理的な例外として、
仕様であってバグではないと強弁されるエトセトラへ対応するべく、
経験則に基づく実際的な機能追加・削減を行うのが
{あなたのアプリケーションと、あなたの仕事}の毎日。

とある機能に足りなかった配慮をつけたしていくとき、
配慮の綿密さがコードの量を大きな編み物にしていく。

いつしか、その配慮の意義作用がどのように働くのかを、
あなたとあなたのユーザーや上司、同僚や後輩は忘れるけれど、
{あなたのアプリケーション}は、それを元々知らない。

9910072 journal
日記

warxの日記: 北海道における大阪王将の立ち位置 2

日記 by warx

「みよしの」とモロかぶりしてるような。というのは個人的な思い込みっぽいんだけど、実際どうなんだろう。

それと、京都王将と大阪王将のどっちがおいしいか?という問いがあったんだけど、

・京都王将
味がはっきりしない大衆向け。セット商品で十分お腹いっぱいになる。

・大阪王将
味は方向性がわかりやすい。人によっては濃い目か。値段と量が見合ってるようにも。

みたいな感想を持っている。また、大阪王将でなんらかのセットを注文して「鶏の一枚揚げ(ハーフ)」を追加したら2食分食った気になるが、京都王将だとセットで1.5食分の量を食ってるような気分になる。でもやっぱり味がボケっとしてるのが気になる。

結局、この2つお店は、満足感の有無や選択基準が「量が多い」と「味が濃い」のどちらに寄り付くかによって選ばれているんじゃないだろうか。で、この仮説wを適用すると北海道のくいもんやは基本味が濃い目なので、大阪王将のようなお店は逆に没個性的に見えるのではないか。という疑問が。

どうでもいいか。書いてたらおなかすいた。ハンバーグ食べたい。

typodupeerror

皆さんもソースを読むときに、行と行の間を読むような気持ちで見てほしい -- あるハッカー

読み込み中...