2019-01-01から1年間の記事一覧

推測するな、計測せよ

この記事は #祭り化 Advent Calendar 11日目の記事です。 マツリカ株式会社にバックエンド (寄り) エンジニアとして入社して半年近く経った。 「祭り化」に対する自分の見解や、地方フルリモートで働くことについて、また初めて自社プロダクト開発に携って感…

【Go】エラステネスのふるい

ja.wikipedia.org func Soe(n int) []int { nums := []int{} for i := 2; i <= n; i++ { nums = append(nums, i) } pnums := []int{} sqrtVal := int(math.Sqrt(float64(n))) for true { if sqrtVal <= nums[0] { for _, v := range nums { pnums = append(p…

【AtCoder】【F#】abc007_3 幅優先探索

C: 幅優先探索 - AtCoder Beginner Contest 007 | AtCoder F#と幅優先探索を同時に学ぼうとした。 namespace App open System.Collections.Generic module Main = let createGraph (maze : string [] []) : Dictionary<int * int, (int * int) list> = let graph = new Dictionary<int * int, (int * int) list>() let m</int></int>…

F#でPrintfnするのにハマった

open System [<EntryPoint>] let main argv = let a = "str" printfn a 0 コンパイルエラー The type 'string' is not compatible with the type 'Printf.TextWriterFormat<'a>' が発生。 どういうこと……? F# printf string - Stack Overflow なるほど。 open System [<EntryPoint>]</entrypoint></entrypoint>…

【Docker】amazon/dynamodb-localの永続化

stackoverflow.com version: '3' services: dynamodb: image: amazon/dynamodb-local command: -jar DynamoDBLocal.jar -sharedDb -dbPath /home/dynamodblocal/data/ volumes: - ./volumes/dynamodb:/home/dynamodblocal/data /home/dynamodblocal/data を…

dayjsでtimezone計算

dayjsにはmomentにおけるmoment-timezoneに相当するAPIがない。 github.com const dayjs = require('dayjs') console.log(dayjs(new Date().toLocaleString("en-US", {timeZone: "America/New_York"})).format('h:mA')) console.log(dayjs(new Date().toLoca…

certbotエラー ImportError: No module named ordered_dict

Ubuntu 16.x Certbot 0.23.0 Python 2.7.12 証明書の期限が切れていて、確認するとcertbotがエラーを起こしていて自動更新できていなかった。 ImportError: No module named ordered_dict certbotというよりはPythonのエラーだろうという軸で調べると下を発…

【Docker】amazon/dynamodb-localとaaronshaf/dynamodb-adminを組み合わせてローカルのDynamoDBをGUI操作する

version: '3' services: db: image: amazon/dynamodb-local ports: - 8000:8000 db-admin: image: aaronshaf/dynamodb-admin ports: - 8001:8001 environment: AWS_REGION: us-east-1 AWS_ACCESS_KEY_ID: local AWS_SECRET_ACCESS_KEY: local DYNAMO_ENDPOIN…

【Serverless Framework】Unzipped size must be smaller than 262144000 bytes

TypeScriptファイルをParcelでビルドしServerlessFrameworkでデプロイするというのをやろうとしたら下記エラーが発生。 An error occurred: RideDashrecordDashstoreLambdaFunction - Unzipped size must be smaller than 262144000 bytes (Service: AWSLamb…

【TypeScript】Promise.allをmapで使う

TypeScript 3.5.1 Promise.all() の理解が曖昧だった。 const asyncFunc = async (prefix: string): Promise<void> => { return new Promise(resolve => { setTimeout(() => { console.log(`${prefix}_1秒待ちました`) return resolve() }, 1000) }) } const main </void>…

【TypeScript】【Jest】TypeError: Cannot read property 'catch' of undefined

typescript 3.5.1 jest 24.8.0 typeorm 0.2.18 import faker from 'faker' import { deleteSchedule } from '~/domain/deleteSchedule' import { ScheduleRepository } from '~/repository/ScheduleRepository' import { scheduleFactory } from '~/test/fac…

Moment.jsで今日の0時or23時59分を取得

TypeORMで 今日の予定を取得する っていうWhereクエリを書きたくて、あんまりRDBの関数は使いたくなくてMoment.jsから日時取得してセットするようにしたんだけど今日の始まりと終わりをどう取得するかわからなかったので調べた。 qiita.com startOf endOf を…

Xcode テストが実行できない (Product->Testがdisabledになって押せない)

環境 Xcode 10.2.1 Swift 4.x 症状 ユニットテストを実行しようと ⌘+U を押すが無反応。 Product->Testから実行しようとしてもTestがdisabledになっている。 解決策 stackoverflow.com Product->Scheme->Edit Scheme->Testを選択。 Tests の欄に何もないのが…

CSSだけでローディング用のスピナーを実装し、styled-componentsに閉じ込める

yaruzou.net CSSについては上記を丸々参考にしている。 これをstyled-componentsを使ってReactコンポーネント化する。 import styled from 'styled-components' const Loading = styled.div` opacity: 0.7; width: 100%; height: 100%; ` const LoadingSpinn…

phpenvでインストールしたPHPをApacheで使用する

dyoshikawa.hatenablog.com 前回、phpenvで phpenv install 5.6.40 と目当てのバージョンのPHPを入れたものの、それをApacheサーバで使ってもらうためにはどうすれば良いのかがわからない。 qiita.com phpenvとapacheを連携させる | カバの樹 インストール時…

phpenvのエラーと戦う

CentOS6系、レガシーWordPress環境でPHPのバージョンを5.6.12→5.6.40に上げる作業をしたのでメモ。 今回はanyenv/phpenvを使った。 github.com Readmeの通りにanyenv導入し、 anyenv install phpenv でphpenv導入。 phpenvで phpenv install 5.6.40 と5.6.40…

ECS で Task failed to start となった理由が知りたい時

サービス詳細の一番下にコンテナという項目がある。 ここに 状況の理由 CannotPullContainerError など詳細理由が記述されている。

【TypeScript】AtCoder abc120_c

atcoder.jp テストコード import { main } from './main' describe('tests', () => { test('1', () => { expect(main('0011')).toEqual(4) }) test('2', () => { expect(main('11011010001011')).toEqual(12) }) test('3', () => { expect(main('0')).toEqua…

【TypeScript】 AtCoder abc121_c

atcoder.jp C問題としては簡単な部類だと思う。 安い店から計算していき、合計本数に到達したらbreakする。 テストコード import { main } from './main' describe('tests', () => { test('1', () => { expect(main(2, 5, [[4, 9], [2, 4]])).toEqual(12) })…

【TypeScript】AtCoder abc122_c

atcoder.jp テストコード Jest使用。 import { main } from './main' describe('tests', () => { it('1', () => { expect(main(8, 3, 'ACACTACG', [[3, 7], [2, 3], [1, 8]])).toEqual([2, 0, 3]) }) }) 提出コード (AC) トランスパイルして提出。 export …

elasticsearch-phpでBonsai Elasticsearchを叩くとエラー

PHP 7.3 elasticsearch-php 6.7 elements.heroku.com HerokuアドオンのBonsai Elasticsearchを使用。 これを追加すると環境変数に BONSAI_URL=https://user:pass@xxxxxxxxxxxxx.us-east-1.bonsaisearch.net というような環境変数が追加される。 このエンドポ…

Laravel5.8 エラーを標準出力

Herokuを利用していると、エラーを標準出力してくれた方が助かる。 なぜか検索してもずばりの内容があまり見つからなかった。 config/logging.php を下記のように変更すると良いようだ。 [ 'stack' => [ 'driver' => 'stack', 'channels' => ['single', 'st…

bitbucket pipelines上でlocalstackが落ちる

bitbucket pipelines上でPHPUnitを回す際にLocalStackのElasticsearchを利用すると頻繁に落ちた。 ログは下記。 2019-05-12T14:38:13:ERROR:localstack.services.generic_proxy: Error forwarding request: ('Connection aborted.', error(104, 'Connection …

累積和の訓練

qiita.com こちらの記事ベースで学習。 AOJ 0516 - 最大の和 (JOI 2006 本選 A) judge.u-aizu.ac.jp この問題、入力をどう書くべきかいまいち分からなかったのでテストコードが通れば良しとする。 テストコード import unittest import main class MainTest(…

elasticsearch-php まとめ

www.elastic.co setHosts([ 'http://localhost:9200' // エンドポイント ])->build(); // インデックス取得 $elastic->indices()->get([ 'index' => 'my_index', // インデックス名 ]); // インデックス作成 $elastic->indices()->create([ 'index' => 'my_i…

Laravel5.8 Scout Elasticsearch match_all検索しようとすると400エラー

Laravel 5.8 Laravel Scout 7.1 Elasticsearch 5.6 tech.fusic.co.jp こちちを参考にLaravel+Scout+ElasticSearch環境を作成。 全取得がしたいので下記のように match_all でクエリを投げようとした。

『基礎からわかるElm』誤植まとめ

2019年において日本語でElmを学ぶ最良の教材であろう『基礎からわかるElm』を買った。 内容は非常に良く、特に自分が一番知りたかったルーティングについてしっかり記載されており作者に感謝したい。 ただ、ちょこちょこ誤植と思われる箇所があり、その点に…

【Python】AtCoder abc123_c Five Transportations

atcoder.jp qiita.com こちらの記事が図入りでかなりわかりやすかった。 要するに下記の公式さえ導けば、それに当てはめるだけで解ける(まあ公式を発見することが大変なのだろうが……)。 最少定員位置までの道の数 + (総人数 / 最少定員) + (5 - (最少定員…

【Python】AtCoder abc124_c Coloring Colorfully

atcoder.jp たぶんC問題では簡単な部類。 最初が0なら01010101... 最初が1なら10101010... と必ずなるので、あとはそれとの違いがいくつあるかということを検出すれば良い。 まずテストコード。 import unittest import main class MainTest(unittest.TestCa…

【Python】AtCoder abc125_c GCD on Blackboard

atcoder.jp さっぱりわからなかったためググる。 drken1215.hatenablog.com とりあえず問題の言い換えとして N 個の値の中から 1 個だけ取り除いた N−1 個の整数の最大公約数の最大値を求めよ という問題だと思うことができる。 あー、なるほど。 「愚直に実…