Looker覚書

最近業務で使うことの覚書

Lookerとは

最新のビジネス インテリジェンス、組み込み型分析、データ アプリケーション プラットフォーム

https://cloud.google.com/looker?hl=ja

なんのこっちゃなので、わかりやすくいうと

ダッシュボードが作れるよ

Looker上で集計も可能よ

みんなが同じデータセットを使うから、見ているダッシュボードによって集計結果があわないなんてことを防げるよ

↑こんなことができる

個人的にはこれが結構重要だと思っていて

みんなが同じデータセットを使うから、見ているダッシュボードによって集計結果があわないなんてことを防げるよ

基本的にダッシュボードを作るのには集計結果をまとめたデータセットから作成されるのだけれど

このデータセットをみんなで共有して、データが合わないなんてことが防げるのはメリットが大きいと感じているところ。

例えば、A事業部とB事業部でデータが合わないなんてトラブルが回避できる

ちなみに集計前の状態でデータセットを作るのが一般的らしい

集計前の状態でデータセットがあれば、Looker上でこねこねして月別の総額だったり、サービス別の総額だったり、いろんなパターンでデータが作れる。

今回は移行が目的なので、集計後のデータセットの移行が第一だけど、出来れば纏めたい。。と個人的には思うところ

まだまだ触りはじめなので、自分の中で知識がたまってきたら纏めます。

久々の更新

驚くほど放置していたので、自分用に覚書を1つ

ゲームを作ったはいいが、ちょっと難しいということだったので

難易度を変更できるようモード選択画面の作成中

    
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using TMPro;

public class ModeSelectController : MonoBehaviour
{
    //変数の宣言
    AudioSource audio;

    public static string songName;


    public string Mode1;
    public string Mode2;
    public string Mode3;
    public string Mode;

    // Start is called before the first frame update
    void Start()
    {
        audio = GetComponent<AudioSource>();
        songName = MusicSelectController.songName;//選曲画面から持ってきた変数songName


    }

    //選択したボタンに難易度変数を付与
    public void SelectModeEasy()
    {
        Mode = Mode1;
        songName = songName + Mode;
    }

    public void SelectModeNomal()
    {
        Mode = Mode2;
        songName = songName + Mode;
        Debug.Log(songName);
    }

    public void SelectModeHard()
    {
        Mode = Mode3;
        songName = songName + Mode;
    }




    //SE再生
    public void PushStageSelectButton(string songName)
    {
        audio.Play();
        StartCoroutine("LoadGameScene", songName);
    }

    //SEが鳴ったら画面遷移するよう調整(コルーチン使用)
    IEnumerator LoadGameScene(string songName)
    {
        yield return new WaitForSeconds(0.5f);
        SceneManager.LoadScene("PlayScene");
    }
}


こんな感じで曲名+難易度設定をプレイシーンに渡す感じで
難易度ごとにJSONファイル(譜面ファイル)を作成すれば良さそう
(Unityの音ゲーは情報が少ないので、完全自作。。;)
なんとか動作確認はできたのでこのまま制作続けまーす。

Laravel開発入門

引き続き本の管理アプリを作成中です。

新規作成・更新・削除までの実装が完了しました。

AWSを使用しているので、動画の形でポートフォリオとしてアップします。

(無料枠で実装してるので、サーバーを常に動作できないのです;)

こんな感じで動作します!

PHPの資格試験用に合わせてフレームワークも使えるようになれば良いなと思い作成しました。

次回はコントローラーにファイルを移動したりページネーションもまだ出来ていないので

こちら進めようと思います

3Dゲーム開発中・・・

キャンディ落としゲームを開発中です

とりあえずステージとプッシャーが出来たので公開しまーす。

プッシャーを動作させるスクリプトはすごくシンプルだったのですが、ステージを作る際にオブジェクトの配置のずれがあり地味に苦戦しました。。!

アセットを使用したこともあり、短時間でそれっぽくなりましたww

Laravel入門

せっかくCRUD機能のあるシステムを作ったので、今度はフレームワークを使用して

同じようなものを作れないかトライしてみました。

まずは新規登録&ログイン機能から

https://4a4b871af4a74e3da13560b0a84a7d85.vfs.cloud9.ap-northeast-1.amazonaws.com/login

環境設定で時間を食ったものの、たった半日で出来てしまいました。。!

おそるべしフレームワーク

便利だけど、どこまで理解できてるか謎なので何回か作ってみようと思います。

AWSのCloud9初めて使いましたけど、こっちもとても優秀です。

12か月間の無料期間のうちにたっぷり遊ぼうと思います。

(無料期間使うのは実は二回目。。AWS様にはいつもお世話になっております。)

ここまで準備したもの

・XXAMP(既存)

・AWSのアカウント(無料のやつ)

・Laravel

・(参考書籍)Laravel開発入門 著者:山崎大典さん

説明がわかりやすく、GitHubのソースをDLすればサクサク作れます。

フレームワークの概念から丁寧に説明があり、とても良書です。^^

新しい家族が増えます^^

アルダブルゾウガメさんが明日うちに来ることになりました。

大人になるとこんな感じ↓

購入したのは手乗りサイズのベビーなのでここまで大きくなるには20年ほどかかるそうです。。

個体差もあるようですが。。笑

旦那さんがせっせとお迎え準備をしてくれたのでいい芝と、植物をおうちに植えてあります。

主食はキャベツ等の葉物野菜だそうです。

今日はお迎え準備の日になりそうです。(+うちに愛娘の歯科検診)

phpの無名関数

出力結果がぱっと出てこなかったので、実際に書いてみました。

//無名関数1
$array=array("really long string hear, boy","this","middling length","larger");
usort($array,function($a,$b)
{
  return strlen($a) - strlen($b);
});
print_r($array);

出力結果(usortで並び替え)
Array ( [0] => this [1] => larger [2] => middling length [3] => really long    string hear, boy ) 

//無名関数2
$array=array(“really long string hear, boy”,”this”,”middling length”,”larger”);
$sortOption=’random’;
usort($array,function($a,$b) use ($sortOption){
if($sortOption==’random’){
//ランダムにソートするため-1 0 1のいずれかの値を無作為に返します
return rand(0, 2) -1;
}else{
return strlen($a) – strlen($b);
}

    });
    print_r($array);
出力結果(ランダムなので結果は変わる)
Array ( [0] => really long string hear, boy [1] => this [2] => middling length [3] => larger )
Array ( [0] => really long string hear, boy [1] => this [2] => larger [3] => middling length )

//無名関数3
$array=array(“really long string hear, boy”,”this”,”middling length”,”larger”);
$sortOption=’random’;

function sortNonrandom($array)
{
  $sortOption=false;
 usort($array,function($a,$b) use ($sortOption){
  if($sortOption=='random')
  {
  //ランダムにソートするため-1 0 1のいずれかの値を無作為に返します
      return rand(0, 2) -1;
  }else{
      return strlen($a) - strlen($b);
  }

     });
  print_r($array);
  }
  print_r(sortNonrandom($array));
出力結果(通常の並び替え)
Array ( [0] => this [1] => larger [2] => middling length [3] => really long string hear, boy )

無名関数1と3は出力結果は同じものになりました。

php学習用

お買い物サイトの学習用に作りました。

まだサーバーに上がりきっていないので一部だけ!

これはSHOP管理者用画面

スタッフの詳細ページの参照・追加・削除・修正を行う画面です。

URL:http://oda-portfolio.chu.jp/staff/staff_list.php

サーバーに上げる際に、phpmyadminに接続するのに困ったので、参考用にしました。

(サーバーの設定が誤っていました;)

https://qiita.com/sunnyG/items/dd981a5ee4487cedf02f

覚書

pphpMyAdminのデータベースのパスワードを変更すると、ワードプレスの設定用パスワードに合致しなくなることがある。

以下のようなエラーがでる;;

20分ほど迷ったので、忘れないよう覚書・・・