タグ

ブックマーク / ledsun.hatenablog.com (19)

  • WSLにfish shellをいれる - @ledsun blog

    WSLのデフォルトのShellはBashです。 Bashだと履歴検索などが不便なので、Macで使っていたfish shellをインストールします。 fish shell - 3.x release series : “Fish shell maintainers” team sudo apt-add-repository ppa:fish-shell/release-3 sudo apt-get update sudo apt-get install fish デフォルトシェルをfishに変更 WSLでお手軽にオシャレfish環境構築 - Qiita fishをdefault shellへ設定 $ chsh Password: Changing the login shell for sugi Enter the new value, or press ENTER for the defa

    WSLにfish shellをいれる - @ledsun blog
  • WSL上で動かしているWebアプリケーションを外部から参照する - @ledsun blog

    WSL上でWebアプリケーションを開発すると、番環境とほとんど変わらない環境が手に入るので便利です。 WSL上で動かしているWebアプリケーションはホストWindowsからはlocalhostで参照できます。 ところが、ホストWindowsの外、例えば、Androidの実機から参照することはできません。 そこでホストWindowsでポートフォワードの設定をします。 すべての操作はホストWindowsのPowerShell上で行います。 IPアドレスの取得 ポートフォワードの対象とするIPアドレスを取得します。 ホストWindows PS C:\Users\led_l> ipconfig Windows IP 構成 イーサネット アダプター vEthernet (WSL): 接続固有の DNS サフィックス . . . . .: リンクローカル IPv6 アドレス. . . .

    WSL上で動かしているWebアプリケーションを外部から参照する - @ledsun blog
  • Windows上でWSLを使った開発環境を作る - @ledsun blog

    WSLも仮想マシン(?)なので、MacでのDockerと同じくファイルの同期が遅いようです。 そこでDeveloping in the Windows Subsystem for Linux with Visual Studio Code を参考にして、ファイルをWSL上で置いて、Windows上のVSCodeから編集出来るようにします。 この手順はとても簡単です。 VSCodeにRemote Development - Visual Studio Marketplaceをいれて、WSLからcode .を実行すれば、それで終わりです。 WSL上に開発環境をつくるのに、ほかにもいろいろなツールを入れます。 そのメモを残します。 WSL WSL のインストール | Microsoft Docs wsl --install を実行すれば良いようです。 WSLをインストール中 あっさりいきすぎてあ

    Windows上でWSLを使った開発環境を作る - @ledsun blog
  • Clojureを学ぶ - @ledsun blog

    RICH HICKEY氏の発言がめちゃくちゃ面白かったので、Clojureを学ぶことにしました。 めちゃくちゃ面白い。字が小さくてスマフォだとつらいので、あとで読もう / “[ GitPitch ] k2n/effective-programs-ja/master” https://t.co/fl9VSi4K14— ぎゃばん (@ledsun) 2017年11月8日 この資料は、RICH HICKEY氏の発表を解説してくれる勉強会の資料のようです。 clj-nakano.connpass.com 該当会には参加していませんん。 環境を作る leiningenというものを作ると環境構築が簡単なようです。 MacではHomebrewからインストール可能です。 brew install leiningen lein --version Leiningen 2.8.1 on Java 1.8.0_

    Clojureを学ぶ - @ledsun blog
  • 論理削除フラグという名の死亡フラグ - @ledsun blog

    RDB - DELETE_FLAG を付ける前に確認したいこと。 - Qiita 論理削除が云々について - mike-neckのブログ Kazuho's Weblog: 論理削除はなぜ「筋が悪い」か 流行っているので乗っかります。 結論 「データ制約の強力さと集合としての表現力を捨てながら、Relational Databaseを使うのはなぜか?」 論理削除フラグのデメリット 大体三つあると考えています。 ユーザーの言葉でない データ制約の弱さ 集合として認識できない ユーザーの言葉でない 私の経験上は、ユーザーから「論理削除」という言葉を聞いたことがありません。 次のような要件は、聞いたことがあります 社員が退職(・転属)する (売掛金の回収を諦めて)売上を打ち消す 「お知らせメッセージ」を公開日がくるまで非表示にする 既読メッセージを表示しない 保存期間が過ぎたアンケート結果をオペレ

    論理削除フラグという名の死亡フラグ - @ledsun blog
  • JavaScript入門用のコンソールプログラムjavascriptingを翻訳しました - @ledsun blog

    javascriptingを翻訳しました。 javascripting-jpとは何か? ledsun/javascripting JavaScriptの文法を学ぶコンソールアプリケーションです。 文字列や数値、条件文やforループなど文法を学びます。 次のコマンドでインストールできます。 npm install --global javascripting-jp JavaScrpitを学ぶ時にブラウザのWeb APICSSを一緒に覚えるのは大変です。 文法に集中して学ぶことができます。 プログラミング初心者には、Node.jsのインストールが壁になりそうなのが心配です。 javascriptingの紹介 javascriptingはNodeSchoolというワークショップ向けのアプリケーションです。 課題の回答が正しいかチェックする機能があります。 コンソールへの出力内容が一致するか

    JavaScript入門用のコンソールプログラムjavascriptingを翻訳しました - @ledsun blog
  • 技術的負債の数え方 - @ledsun blog

    技術的負債の数え方に関する与太話。 落ちを先に書くと「シュレディンガーの」って言いたかっただけです。 技術的負債とは Ward Cunningham 曰く 最初のコードを出荷することは、借金をしに行くことと同じである。 小さな負債は、代価を得て即座に書き直す機会を得るまでの開発を加速する。 危険なのは、借金が返済されなかった場合である。 品質の良くないコードを使い続けることは借金の利息としてとらえることができる。 技術部門は欠陥のある実装や、不完全なオブジェクト指向などによる借金を目の前にして、 立ち尽くす羽目になる 技術的負債 - Wikipediaから引用 要約すると「汚いソースコードは後で直すのが大変。けど、拙速も大事」という話です。 数え方 「技術的負債が借金だとすれば、いくら借りているのか数えられるのでしょうか?」が今日のお題です。 技術的負債を観測する方法 Michael F

    技術的負債の数え方 - @ledsun blog
  • XP祭りに行きました #xpjug - @ledsun blog

    http://xpjug.com/xp2014/ アジャイルが好きな理由 アジャイルソフトウエア開発が好きな人が集まっている会なので、いろんな人にアジャイルが好きな理由を聞いて回ればよかった。 自分が(受託開発で)アジャイルが好きなのは「動くものを見せながらお客さんと話すと話しやすい」からです。 仕様から動きを想像して話を噛み合わせるのはすごく難しい。 ペーパープロトタイプをやると画面上のパーツの配置は決められるけど、動きはやっぱり認識を合わせづらいです。 動くものを見せればすぐに伝わる。今作るものに集中できて開発側のスピードがあがる。 そのぶんビジネス側へのフィードバック量(数も頻度も)増えるので、ビジネスで判断する回数は格段に増える。 これについて来れない(今までの「最初にお願いして半年後に検収」みたいな発注方法を続けたい)発注者もいるので、発注者を選ばないといけないといけない。 この

    XP祭りに行きました #xpjug - @ledsun blog
  • Mac で go - @ledsun blog

    Mac OS Xでgo言語の開発環境を用意します。 goをインストール brew install インストールが成功したか確認してみましょう。 go version Hello World hello.goファイルを作成します。 package main import "fmt" func main() { fmt.Printf("hello, world\n") } go runコマンドで実行します。 go run hello.go go buildコマンドでコンパイルします。 go build hello.go ./hello パッケージ管理 go getコマンドでパッケージをインストールします。 環境設定が必要です。 mkdir $HOME/go export GOPATH=$HOME/go export PATH=$PATH:$GOPATH/bin mercurialを使ってパッケ

    Mac で go - @ledsun blog
  • Homebrewの設定 - @ledsun blog

    HomebrewはMacのイケテルっぽいパッケージ管理ツール。 コマンドラインでアプリケーションのインストールや削除が出来ます。 Homebrew自身の設定 インストール ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)" 環境変数PATHの設定 環境変数PATHを設定しコマンドの探索順序を変更します。 ~/.bash_profileや~/.zprofileに以下の行を記述します。*1 export PATH=/usr/local/bin:$PATH この設定をする理由 Homebrewはコマンドを/usr/local/binにインストールします。 このディレクトリはOS標準の/usr/binより優先順位が低い。 例えばHomebrewでrubyをインストールしても、OS標準のrubyが先に

    Homebrewの設定 - @ledsun blog
  • プログラミングのためにその1 - @ledsun blog

    このエントリの意図 下のが、おもしろかったので真似します。 プログラミングの生産性を上げるには - Cside::Private programming - プログラムを書き続けるためにやってること - Qiita sassembla.github.io/Public/2014:05:20 22-55-22/2014:05:20 22-55-22.html プログラミングについてアレコレ — さにあらず 興味を持ったものを動かしてみる Twitterはてなブックマークで新しいライブラリが話題になって、 APIや説明記事を読んでいるだけだと興味を維持できない。 動かしてみて新しい発見があるとやる気が維持できる。 直近ではReactJS動かしてみた。 JSXはいいんだけどメソッド名React.renderComponentがあまりしっくりこなかった。 動くサンプルをgithubにあげる 記憶

    プログラミングのためにその1 - @ledsun blog
  • TDD の Death and Rebirth まごころを君に - @ledsun blog

    我が輩のTDD体験を語る 背景 ここ最近のTDDに関する話の噛み合なさっぷりよ・・・ TDDは死んだ。テスティングよ栄えよ。 by DHH 【翻訳】TDD is Fun 【TDDを再定義したほうがいいって話だったのさ】UncleBob, Martinfowler, DHHのツイートまとめ TDDという名の幻想... 大きな疑問 業務でxUnit使ったテストファーストやってる人はいるの? TDDは死んでないと言うても、業務でxUnit使ったテストファーストやってる人はいるの? じゃあ、自分はどうなのか?自分語りをする。 前提 ここで話すTDD xUnitを使ったテストファースト 今回はそれ以外を話さない XPの第一版にはそれ以外の要素は書いてなかった。 俺はそう刷り込まれた。 一番大事だと思う要素から話す。 「これからインスピレーションを得たもっといい方法があるよ」って話は喜んで聞きます。

    TDD の Death and Rebirth まごころを君に - @ledsun blog
  • AngularJSで画面制御 ただしJavaScriptは書かない - @ledsun blog

    AngularJSはモデルとビューの間のデータを自動的に同期してくれます。 モデルとは内部データです ビューはhtmlです つまりhtml上に入力した値が自動的に内部データに反映され、内部データが変更されれば自動的にhtmlも更新されます。 詳しくはリファレンスを見てください。 データバインディング | AngularJS 1.2 日語リファレンス | js STUDIO 簡単な例 次のhtmlをブラウザで開いてinput要素の値を変更してみましょう。 <!doctype html> <html ng-app> <head> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.9/angular.min.js"></script> </head> <body> <input type="text" ng-mod

    AngularJSで画面制御 ただしJavaScriptは書かない - @ledsun blog
  • My first Bootstrap - @ledsun blog

    Bootstrapとは? Twitter社が作成し公開したレスポンシブデザインに対応した*1CSSフレームワークです。 あらかじめ用意されているCSSを使うと、パーツをいちいちデザインしなくても今風のおしゃれなホームページが作れます。 使い方 とりあえず試すにはCDNを使うのが便利です。 <link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css"> よく使うクラスを紹介 次の三つのCSSクラスを紹介します。 囲み - well テーブル - table ボタン - button 囲み - well 特定の領域を囲んで目立たせたいときにwellというクラスで囲みます。 <html> <head> <link rel="stylesheet" href="h

    My first Bootstrap - @ledsun blog
  • Widnows用パッケージ管理ツール Chocolatey - @ledsun blog

    Chocolateyとは? ChocolateyはWindowsのパッケージ管理システムです。 以下のツールと同じようにコマンドラインから実行してアプリケーションをインストールします。 rpm apt gem npm 例えば Google Chromeブラウザをインストールするには コマンドプロンプトで cinst GoogleChrome を実行します。 何が嬉しいのか? インストールが簡単になります。今までは Googleでダウンロードページを探す ダウンロードページからダウンロードすべきファイルを探す インストーラーまたはzipファイルをダウンロード ダウンロードしたファイルを実行または解凍して任意の場所に置く の4手順です。これが パッケージ名を探す コマンドを実行する の2手順になります。ダウンロードページを見てどのファイルを使えばいいか考えるのは面倒です。 インストール 次のコ

    Widnows用パッケージ管理ツール Chocolatey - @ledsun blog
  • YEOMANを使ってMEAN(MongoDB + Express.js + Angular.js + Node.js)のWebアプリケーションを作る - @ledsun blog

    MEANとは MongoDB + Express.js + Angular.js + Node.js を組み合わせてWebアプリケーションを作成することです。 手順 Windows上で簡単なユーザ登録アプリケーションを作ってみましょう。 次の手順で進めていきます。 アプリケーションの雛形を作成 ユーザページを追加 htmlを修正してユーザ一覧を追加 クライアントのJavaScriptAngular.js)を修正 サーバのJavaScript(Express.js)を修正 MongoDBを参照 ユーザの登録機能を追加 完成したものはGitHubにおいてあります。 Chocolatey体のインストール以外はMinGW Bash*1で実行可能です。 事前準備 ChocolateyでMongoDBとNode.jsをインストールします。Chocolateyをインストールしていなかったら次のコマン

    YEOMANを使ってMEAN(MongoDB + Express.js + Angular.js + Node.js)のWebアプリケーションを作る - @ledsun blog
  • MySQL5.6をubuntuにdebパッケージインストール - @ledsun blog

    apt-get でインストールできないので公式debパッケージからMySQL5.6をインストールする方法。 dpkg -i だけではダメで、ユーザやらの設定も必要。 ダウンロード Download MySQL Community Server で Platform に Debiun Linux を選択すると mysql-5.5.23-debian6.0-x86_64.deb をダウンロードできる。 実のところ次のコマンドでいいんだけど、URLが変わるかもしれないので注意 wget http://jaist.dl.sourceforge.net/project/mysql.mirror/MySQL%205.6.12/mysql-5.6.12-debian6.0-x86_64.deb パッケージインストール おまちかねの dpkg -i sudo dpkg -i mysql-5.6.8-rc-

    MySQL5.6をubuntuにdebパッケージインストール - @ledsun blog
  • Ruby on Rails を勉強しない方が良い100の理由 - @ledsun blog

    はじめに 今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」 | つい全力ツッコミしてしまうエンジニアCEOのブログ | sumyappを読みました。最初ツッコミどころが凄い*1なと思ったんですが、二回読んでちょっと思い当たる節があるなと思ったので書きます。 Rails を勉強しない方が良い理由 Railsにはscaffoldがあるので間口がすごく広いです。実際それを紹介した 15m intro video*2 が理由で人気を博しました。が、奥行きが深い。どこまで学べば「Railsを使いこなせます」って言えるのかまるでわかりません。 鉄板作法が共有されていない 2005年に出てきた割に意外に鉄板作法が共有されていません。 たとえばビジネスロジックをどこに置くのかについては以下のような議論があります やはりお前らのMVCは間違っている Rails

    Ruby on Rails を勉強しない方が良い100の理由 - @ledsun blog
  • SIビジネスの流れ - @ledsun blog

    システムインテグレータ(SI)のビジネスは大きく以下のような流れで進みます。 集客 営業 要件定義 製造 検収・請求 フォローアップ 集客 どんなビジネスでも同じですが、まずは見込み客を集めます。システム開発に興味を持ったお客様を探しアポイントを取ります。よく使われる手法に商品・サービスの説明をするテレアポ、割引を謳ったDM、自社の推す技術のセミナー、役員が個人的に懇意にしている既存顧客の紹介があります。会社の規模やブランドにマッチした手法を選ぶ必要がありますが、会社が成長にするにつれ手法を変えていかなければいけないのが難しいところです。 営業 アポイントの取れたお客様に顧客に直接、自社の提供するサービス、商品の説明を行います。また会社の紹介も同時に行います。お客様がある程度の金額を掛けてソフトウェア開発を行いたいと意思表示をされた場合に次の段階に入ります。そこで現状の課題を聞き出します。

    SIビジネスの流れ - @ledsun blog
  • 1