Logicky BLOG

Logickyの開発ブログです

  • Javascript
  • Python
  • PHP
  • Go
  • OS・サーバ
  • 機械学習
  • つくったもの
  • 数学
  • アルゴリズム
  • Logicky

単純なasar

Electronファイルの圧縮はasarというのを使ってるそうです。 github.com Windows上の長いパス名の周りの 問題 を軽減したり、require をわずかにスピードアップしたり、ソースコードを簡単な調査から隠したりするために、ソースコードを少し変更することであ…

puppeteerでスクレイピングしてみた

puppeteerというのを使ってみました。google chromeをコマンドラインから使えるやつです。久しぶりにjQueryやってる感じで、イライラした笑 でも便利そうだし、面白かった。これを使うと、なんか色々できそうで面白い。 本家マニュアルも読んだけど、この記…

Node.jsでファイルの読み書き

Node.jsでファイルの読み書きします。 File System | Node.js v10.11.0 Documentation fsモジュール fsモジュールを使って読み書きします。非同期コールバック、同期、非同期プロミスバージョンという感じで、同じ処理に3つの関数がある場合が多いっぽい。…

Wordpressからはてなブログへの引っ越しの際に、日本語URLがおかしいのと、シンタックスハイライトが反映されないのを解決した

Wordpressからはてなブログに引っ越しました この度、はてなブログにお引っ越しをしました。めっちゃ便利だし、安いし、軽いしいい感じだと思いました。 引っ越し方法も基本は簡単で、Wordpressの管理画面の標準機能に、エクスポート機能があるので、それを…

phpstorm - ubuntuでvimプラグイン使ってるときのキーバインド

phpstromでvimのpluginを使ってると、キーバインドが若干調整が必要になる。 ctrl+bは、通常であれば、定義元にジャンプするが、それがvimのページアップになってしまう。 あと別に大丈夫ではあるけど、ctrl + fが、検索ではなく、ページダウンになるので、v…

Node.jsでbitFlyerAPIを使う

APIのドキュメントはここにあります。 サンプル const axios = require('axios') const config = require('./bitflyer.config') const baseUrl = 'https://api.bitflyer.com' const crypto = require('crypto') function request(method, path, data) { retu…

Javascript - Promsise async await

参考:Promiseを使う Promiseの例 const axios = require('axios') function hoge(msg) { return new Promise((resolve, reject) => { if(msg === 'hoge') resolve('page') reject('error') }) } function page() { return new Promise((resolve, reject) =>…

php-fpmの設定

下記のようなエラーがでたので、php-fpmの設定を調整します。 [pool www-data] server reached pm.max_children setting (5), consider raising it [pool www-data] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), …

node.js - socket.ioでブロードキャストする

ブロードキャストというのは、node.jsのサーバから接続されている各クライアントに配信することです。 プロジェクト作成 $ mkdir hoge $ cd hoge $ yarn add express $ yarn add socket.io $ vue create client $ cd client $ yarn add socket.io-client と…

Node.js - requireとexports

ここに詳しく書いてありました。 大体こんな感じで使う。 index.js var hoge = require('./hoge.js') var page = require('./page.js') console.log(1) console.log(hoge.val) console.log(hoge.num) console.log(hoge.hoge.a) console.log(page.pageFunc(10…

abコマンド

Apache Benchというらしい。これ使って負荷チェックしてみる。 詳細はここに書いていたので、見ていただければと思います。 $ ab -n 100 -c 100 https://example.com/ cが、同時接続数で、nが合計リクエスト数だそうです。100ユーザが同時に2リクエストする…

Firestoreの概要と特徴

Firestoreとは? Firestoreは、NoSQLデータベースで、JOINとかできないですが、ある程度のSQLは使えます。クエリ実行時は全てインデックスが使われるので、作成されていないインデックスが必要な場合、実行できません。 Firestoreのすごいところ Googleのサ…

Ubuntu - クリップボードコピー

今私はubuntu18.04をメインPCとして使っています。もともとWindows10をデュアルブートにしてたのですが、たしか16から18にアップデートしようとしてたらゴチャゴチャしてしまい、めんどくさくなってwindowsを消してubuntu18.04オンリーのPCにしてしまいまし…

cakePHP2 - 多言語化

多言語化します。 cakephpマニュアルのこのページに説明が書いてあります。 あと、翻訳ファイルの作成については、ここが参考になりました。 翻訳したい文字列を指定する 翻訳対象にしたい文字列は、__()というのでくくります。 翻訳ファイルの作成 まず翻訳…

イーサリアムやってみる

この本みながら、イーサリアムやってみます。この無料サイトも色々詳しく書いてありそうなので、後で見てみる。 イーサリアムをインストール Goのクライアントはgo-ethereumです。通称Gethです。Gethはここからダウンロードできます。今のバージョンは1.6.7…

Go言語によるビットコインのフルノード実装btcdを調べる(2)

btcdを実行した際のプログラムの流れを最初から確認してみます。 server.Start() btcdを実行すると、設定読み込んだり、データベースの準備したりしたあとに、サーバを作成し、起動します。サーバの起動は、server.goのStart()です。そこで、s.peerHandler()…

Go言語によるビットコインのフルノード実装btcdを調べる(1)

btcsuite/btcdを調べてみます。Goで書かれたビットコインのフルノード実装です。ウォレット機能はありません。コマンドラインのオプションの説明はここです。ドキュメントはここです。今使っているのは、btcd version 0.12.0-betaです。 設定ファイルなど $H…

Go - leveldb

Goで使えるLevelDB。 syndtr/goleveldb ドキュメントはここです。 参考:LevelDB入門 (基本編) お試しコード package main import ( "fmt" "log" "github.com/syndtr/goleveldb/leveldb" ) func main() { db := db_init() defer func(){ fmt.Println("Closin…

Go - 2次関数のPNG画像作成

このライブラリをつかったら簡単にできる。 wcharczuk / go-chart package main import ( "bytes" "fmt" "github.com/wcharczuk/go-chart" "io" "os" ) func main() { var x []float64 var y []float64 for i := 0.0; i < 100; i++ { x = append(x, i-50.0) …

Go - ダウンロードとProgress bar表示

参考:Code-Hex/pget rangeというのをheaderにセットすると、途中から途中までをダウンロードできるのか。これで分割ダウンロードとかリジュームとかできるらしい。pgetみながら自分でも一応簡単なダウンロード+Progress barをつくってみた。 main.go packa…

Go - Progress bar

このライブラリを使うと簡単に表示できる。 gopkg.in/cheggaaa/pb.v2 package main import ( "fmt" "gopkg.in/cheggaaa/pb.v2" "time" ) func main() { fmt.Println("test progress bar") file_size := int64(1024) now_size := int64(0) bar := pb.Start64(…

Go - 画像リサイズ

package main import ( "github.com/nfnt/resize" "image/jpeg" "io" "log" "os" ) func main() { f, err := os.Open("./data/hoge.jpg") chkErr(err) img, err := jpeg.Decode(f) chkErr(err) _ = f.Close() thumb := resize.Thumbnail(300, 300, img, resi…

Go - チャットアプリをつくってみた

コマンドライン上で、複数人でチャットできるクライアント・サーバ型のやつをつくってみた。まだとりあえず動くレベル。スレッドセーフ?な状態でクライアントをclientListから消す方法がわからなかったから消すのをやめた。あと、参考サイトだとチャンネル…

Go - defer conn.Close()がエラーといわれる

deferが謎です。ソケット通信のプログラムをつくってみてるんですが、色んな所に書いてある下記部分で、絶対エラーがでます。といっても実行するとエラーにならないのですが、Vimに組み込んでる、GoErrCheckがエラーといってきます。きっと何かおかしいんだ…

Go - ソケット通信

P2P通信をつくりたいので、ソケット通信やってみます。超わかりやすいサイトを発見しました。 現在日時を返すサーバと、それを取得・表示するクライアントです。ほぼ上記のサイトの最初のコードですが、上記のサイトのクライアントだと、サーバから返ってく…

Go - 超高速webフレームワーク iris

irisは超高速webフレームワークだそうです。すごくシンプルっぽい。でも色々なことができるしサンプルもたくさん紹介されている。名前を読むたびにアイリスオオヤマが浮かんできていやだ。 下記のようにシンプルにWEBアプリがつくれた。viewもアタッチできる…

Ubuntu16.04 - キーボードのキー割り当て(キーバインド)をxkbで変更する

ホームディレクトリに.xkbというのを作って、.xkb以下に設定ファイルを作成して、.bashrcとか、.zshrcとかでそれを読みこませることで細かいキーバインド設定が可能。 [xkb] Ubuntu 14.04 で Caps Lock を別のキーにする方法 Ubuntu 14.10でキー配置を変更し…

windows10とubuntu16.04のデュアルブート

このubuntu16.04日本語版をデュアルブートさせました。このサイトを見ながらやりました。最初うまくいきませんでしたが、セキュアブート設定をオフにしていなかったためで、オフにしたらすんなりできました。ただ、パーティションの切り方が自分的によろしく…

UbuntuにzshとvimとGoを設定する

zshはoh-my-zshというのを使います。vimはdeinでプラグインを入れます。Goはvim-goプラグインを入れます。 goのインストール $ sudo -i $ apt-get update $ apt-get upgrade $ apt-get install golang $ which go /usr/bin/go zsh zshのインストール $ apt-g…

Go - Pecoを使ってみる

Pecoというのを使ってみます。 Pecoのインストール $ go get github.com/peco/peco $ cd $GOPATH/src/github.com/peco/peco $ go build cmd/peco/peco.go $ mv peco.exe $GOPATH/bin $ peco --version peco version v0.5.1 go getの仕組み go getの仕組みは…

  • Javascript
  • Python
  • PHP
  • Go
  • OS・サーバ
  • 機械学習
  • つくったもの
  • 数学
  • アルゴリズム
  • Logicky