haiju's 開発メモ

開発に必要な情報を自分用にメモ

フロントエンドにFunctional AltJSを使うための資料とか

主にElmとかPureScriptとかBucklescriptを使う方法について

メモしておく。

Elmについては1つ前の記事に本やスライド的な資料は

メモしたので、それ以外の実践でも使えそうなチュートリアル

記事などを(ΦωΦ)

生でJavaScriptを書いたり読んだりすることに疲れたので、

フロントエンド職人さんと分業できないなら、時間を有効に

使ってGUIを開発できればいいのに。

[参考サイト]

semaphoreci.com

nulab-inc.com

elixirforum.com

github.com

github.com

github.com

purescript-flare

Flare

github.com

purescript-isometric

nature invented it first · No Substance

github.com

github.com

github.com

github.com

github.com

github.com

github.com

purescript-behaviors/generated-docs/FRP at master · paf31/purescript-behaviors · GitHub

purescript-behaviors/Main.purs at master · paf31/purescript-behaviors · GitHub

github.com

github.com

github.com

Pux

github.com

purescript-halogen/examples/basic at master · slamdata/purescript-halogen · GitHub

purescript-halogen/examples/effects-aff-ajax at master · slamdata/purescript-halogen · GitHub

purescript-halogen/examples/driver-routing at master · slamdata/purescript-halogen · GitHub

purescript-halogen/examples/todo at master · slamdata/purescript-halogen · GitHub

purescript-halogen/examples/ace at master · slamdata/purescript-halogen · GitHub

GitHub - slamdata/purescript-halogen-template: Template project for getting started with Halogen

Halogen EcoSystem

バックエンドがElixirでフロントエンドにElmを使うチュートリアルが本になっていた

ElixirとElm(応用してPureScriptまたはBuckleScript)を

使ってWeb開発する情報をずっと調べていて、でも1冊の

紙の本かPDFか電子書籍にまとまっていると、より敷居が

低く感じるよなーって思っていたら、英語だけど今年の

初めにleanpubから本が出ていた!(ΦωΦ)

これはポチるしかないよねーw

ってことで、関連サイトや資料と含めてメモしておく(ΦωΦ)

19$で手に入るとか素敵すぎる。英語だけど、ありがたい。

[参考サイト]

leanpub.com

gitpitch.com

gitpitch.com

speakerdeck.com

pragmaticstudio.com

array_multisort()を利用して、重複データを削除するコードを実装してみる【作業中】

古いPHPと古いMySQLの環境でGROUP BYとHAVINGを

利用して集計した重複データのうち、会社ごとに最新

データ1件を除く残りのデータを一括全削除する機能を

開発していて、サブクエリーや相関サブクエリーを利用

した方法だと難しすぎる上に使いたい機能が古くて使え

なくて、頭を悩ませているところに、配列だけDBから

クエリーで取得したら、PHPで会社ごとにソートして

最新データはunsetで排除すればいいんじゃね?

という神の声を聞いて、試してみたw(ΦωΦ)

その後、unsetを使って不要な要素を削除したら、

行詰めする作業が発生することに気づいて、表示用の

配列に対象データをarray_pushすることで対応したwww

とりあえず、作業中のため参考リンクのみ先にメモしておく。

[参考サイト]

PHP: array_multisort - Manual

xirasaya.com

act2u.net

qiita.com

多次元配列をソートする(PHP) – Sometime PHP

gray-code.com

wepicks.net

http://the-zombis.sakura.ne.jp/wp/blog/2015/01/20/post-734/

qiita.com

www.flatflag.nir87.com

一次元、連想配列、多次元配列のソート | PHP | GAROP.NET

kudox.jp

 

vimで文字列を置換するコマンド

文字列を置換するコマンドはめったに使わないので

備忘録をメモしたはずだが、都度忘れる不便な頭w(ΦωΦ)

それについて、またメモしてみるw

[手順]

1.  カーソルがどこにあってもいいので「:」(コロン)を押して

 コマンドモードにする。

2. 変更元の文字列をold、変更後の文字列をnewとして、

 以下コマンド実行。

%s/old/new/g

※全部一括で変更できればOK。

[参考サイト]

motw.mods.jp

eng-entrance.com

viコマンド(vimコマンド)一覧(検索・置換)

Node.jsで取り急ぎ名前付き関数をモジュール化してみた

既に人が作ったファイルを利用して、対応したのだが

果たしてそれは正しい方法だったのか分からないけど、メモ

しておく。

ちなみに、実行すると下記WARNINGが発生する。

WARNING Expected 'module_file_name' to assign a function

to module.exports, got object

[対応策]

1. BOTスクリプトの関数部分だけを抜き出してモジュール化。

module.exports = function(robot) {}を全削除して

リネーム。

2. 最終的にメインで動いている関数をexport宣言。

function registerRoomid(robot) を下記の通り修正。

exports.registerRoomid = function(robot)

3. 外部ファイルから2を呼ぶ。

(ex)ファイルの冒頭で、宣言。

var converter = require('./module_file_name');

(ex)module.exports = function(robot) { 以降で

 converter.registerRoomid(robot);

相変わらずWARNINGは出るけど、モジュールの中身を呼べては

いる。

[参考サイト] 

garafu.blogspot.com

www.yoheim.net

rfs.jp

techacademy.jp

qiita.com

garafu.blogspot.com

qiita.com

taisablog.com

MariaDBでrootのパスワードをリセット

同じくCentOS7環境にインストールしているMariaDB

長らく使ってなかったのでrootのパスワードを思い出せ

なかったーwww(ΦωΦ;)

ってことで、MariaDBでrootのパスワードをリセット

する方法をメモしておく。

こちらも後ほど作業する際に、手順についてもまとめて

復習がしやすいようにする予定。

[リセット手順]

1. MySQLサーバー(MariaDB)を停止。

# systemctl stop mysqld

2. MySQLサーバーをセーフモードで起動。

# systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. MySQLサーバーを起動。

# systemctl start mysqld

4. パスワード無しでrootでログイン。

mysql -u root
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.1.26-MariaDB MariaDB Server

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

5. データーベース「mysql」を選択。

MariaDB [(none)]> use mysql;
Database changed

6. パスワードを変更して反映。

MariaDB [(none)]> UPDATE user SET authentication_string=password('新パスワード') WHERE user='root';
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4 Changed: 4 Warnings: 0

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

7. MySQLサーバーを停止。

8. MySQLサーバーを起動。

9. 6で変更したパスワードでログイン。

mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.1.26-MariaDB MariaDB Server

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

※エラーが出ずにログインできればOK。

※困ったこと、最初に参考サイトに上げていた情報

 だとセーフモードで起動しようとしてエラーが連発

 したため、調べ直したwww(ΦωΦ)

[参考サイト]

https://donow.jp/skillup/?p=2675

qiita.com

mtokyo.blog9.fc2.com

qiita.com

qiita.com

orebibou.com

jp.linux.com

systemctlコマンドの復習

すっかりモードがCentOS6.5のままになっているので

忘れた頃にローカル開発環境のCentOS7に戻ってくると

何が何だか混乱して忘れてるーwww(ΦωΦ;)

ってことで、復習のためにメモっておく(ΦωΦ)

隙間で余裕があったら、参考リンク以外に手順をまとめ

てみよう。

[参考サイト]

qiita.com

milestone-of-se.nesuke.com

www.unix-power.net