ゲーム開発 プロジェクトマネジメント講座 http://www.jp.square-enix.com/info/library/2011/dldata/PM/PM.pdf
- スコープ(コンテンツの範囲)の問題
- 品質の問題
- コストの問題
#!/bin/bash | |
# .env.localファイルを読み込む | |
set -a | |
source .env.local | |
set +a | |
# GitHubリポジトリの情報 | |
REPO_OWNER="your-username" | |
REPO_NAME="your-repo" |
// File: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.4.2/contracts/utils/Counters.sol | |
// OpenZeppelin Contracts v4.4.1 (utils/Counters.sol) | |
pragma solidity ^0.8.0; | |
/** | |
* @title Counters |
pragma solidity ^0.5.10; | |
// File: openzeppelin-solidity/contracts/utils/Address.sol | |
/** | |
* @dev Collection of functions related to the address type, | |
*/ | |
library Address { | |
/** | |
* @dev Returns true if `account` is a contract. |
pragma solidity ^0.5.10; | |
// File: openzeppelin-solidity/contracts/utils/Address.sol | |
/** | |
* @dev Collection of functions related to the address type, | |
*/ | |
library Address { | |
/** | |
* @dev Returns true if `account` is a contract. |
{ | |
"config": { | |
"chainId": 100, | |
"homesteadBlock": 1, | |
"eip150Block": 2, | |
"eip150Hash": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"eip155Block": 3, | |
"eip158Block": 3, | |
"byzantiumBlock": 4, | |
"clique": { |
ゲーム開発 プロジェクトマネジメント講座 http://www.jp.square-enix.com/info/library/2011/dldata/PM/PM.pdf
import System.IO | |
import Control.Monad | |
import Data.List | |
import Data.Data | |
import Data.Function | |
import Data.Ord | |
data Enemy = Enemy{name:: String, dist:: Int} | |
-- [String]とStringの違い... |
Google Spreadsheetにてカスタム関数を利用する | |
https://developers.google.com/apps-script/execution_custom_functions |
獲得の為に | |
1. JSコードをすべてのマーケティングページ及びテクニカルページに掲載します。 | |
. (As a tẹc̩hnical nōte, we recòmmẹnd you do this because you'll need the snịppèt present to do the e̍vẹnt trịggers anyway) | |
2. We do mọ̄stly e̍vẹnt trịggers because we like to còntrọ̄l the granularity of the dạ̄tà we're getting instead of just getting pāge-lẹvel URL e̍vẹnts. We like to see things like which bụttòn they clicked on, which veṛ̈s̱ion of the bụttòn they clicked on, etc. (We're anàlỵ̍tics ner̈ds, right?) | |
For us, it's ẹ̄as̩y when you can trịgger a "Sīǥned Up" e̍vẹnt across all the Sīǥn Up bụttòns on the mạ̈rkèting sīte and then ạttrìbūte prọpèrties to dẹs̩ìgnāte "Hōme Pāge bụttòn" VS "Prị̄cing Pāge bụttòn" VS "Fẹ̄at̨ure Toŭr bụttòn" because we can do ànạlỳsìs lạ̄ter in a rēpọrt to còmpạ͑re all those sẹgments. |
npm -g install hotnode # 自動読み込み, or node-dev? | |
httpサーバーをたてるには | |
require('http') | |
pathを解析・デコード | |
require('path') | |
forEachのコールバックは例外で、 |