Vim remains a powerful and ubiquitous application to tackle any number of text editing tasks conveniently from the terminal (some learning required). If you’re looking to add Vim to your toolkit this year, here is my list of absolutely essential plugins to begin supercharging your workflow. If you’ve never set up a Vim plugin before, see the Installing Vim plugins section later on for a runthrough
マルチプラットフォームで使えるクリップボード履歴・拡張ソフト 前回は「Windows10 October 2018 update」で搭載されたクリップボード拡張機能を紹介しました。 クリップボードが便利に!Windows10 October 2018 新機能のススメ2018.11.26まだコピペで消耗してるの? そこのあなた!PCで文字を複製したい時どうしていますか? まさか、マウスの右クリックメニューでコピーして、移動先で再び右クリックメニューでペーストしたりしていませんよね。 Windowsであれば「Ctrl+c : コピー」「Ctrl+v : ペースト」のショートカットで行... 便利そうなのは分かったけど、「会社の環境Windows7なんだよね」とか「俺はMac派なんだけど」と言うかたも多いと思います。 各OS上いずれかのマシンでの効率化を求める場合、Windowsなら「Clibo
最近、Windows10 + pyinstallerで、 WindowsでDjangoアプリを開発 開発したDjangoアプリを、別のWindows端末に配布 別のWindows端末にて、Djangoアプリを実行 をしました。 pyinstallerのWikiに方法が記載されていますが、いろいろとハマったため、メモを残します。 Recipe Executable From Django · pyinstaller/pyinstaller Wiki · GitHub 目次 環境 Congratulations!を表示するDjangoアプリのexe化 HttpResposeを返すDjangoアプリをexe化 静的ファイル・Model・TemplateViewを使うDjangoアプリのexe化 一時ディレクトリ外のSQLiteを使用するDjangoアプリをexe化 ソースコード 環境 Windo
ビッグデータ処理のために作ってるoceanusでは、受け取ったデータをRedis、BigQuery、Google SpreadSheet、SendGrid(メール)など外部に送ることが多く、残念ながら外部とのやりとりはコントロールできない不確定要素が多い。 そのため、いろんなところでリトライ処理が必要になる。 リトライ時の間隔については別記事で書いたので今回は省く。 uyamazak.hatenablog.com これまで使ったリトライ方法3つをまとめた。 どんなアプリケーションかによって正解は異なると思う。 エラーをtryで取って、except節でリトライ 一番シンプルなのがこれ。 try: result = task() except Exception as e: print("error and retry") # retry result = task() もしくは処理結果をif
最近 Firebase を触ってみて便利だったのと Vuex で何か作りたいなと思って検索すると vuexfire なる便利そうなものがあったので使い方をざっくりまとめてみました。 アプリの起動とデモを試すだけで Vuex の解説などは行いません。 準備と Example のデモ 今回利用するライブラリはこちら。 https://github.com/posva/vuexfire データは Firebase の Realtime Database を利用し、クライアント側に vue.js と Vuex を利用し、API通信することで動作します。 ライブラリのダウンロードと Example の実行 ライブラリをダウンロードします。
都内でサーバーサイドエンジニアをやっている山下です。 webサービスを作るのが好きで、個人でもいくつか開発をしています。 先日Nuxtとfirebaseを使った個人サービスをリリースしたので、開発から初期ユーザ獲得までに行ったことをまとめておこうと思います。 作ったサービス 行きたい場所への同行者を募集するwithruitを作りました。 もしよかったら、使ってみてください!! 個人サービスなので、もしかしたらバグがあるかもしれません、、。 その際は、お問い合わせフォームから優しく連絡いただけるとありがたいです。 機能一覧 withruitには様々な機能があるのですが、大体がfirebaseを使って実装されています。 今回は、以下の機能について自分がfirebaseでどのように実装したのかを書いていこうと思います。 facebookログイン 投稿(画像アップロード) お問い合わせ 通知 それ
時系列データを扱うにあたって役に立った、Pandasのテクニックを紹介します。 文字列型のSeriesから日時型・日付型のSeriesへ変換する 日付に欠測値を含むデータを日毎に集計する 累積和を計算する 今回の例に使う時系列データは以下です。 ある商品の4/1〜4/3の購入履歴をイメージしてください。ユーザ(user_id)の購入日時(timestamp)と購入数(item_count)が入ったDataFrameとなっています。 import pandas as pd df = pd.DataFrame(...) print(df.info()) # <class 'pandas.core.frame.DataFrame'> # RangeIndex: 5 entries, 0 to 4 # Data columns (total 3 columns): # timestamp 5 no
4/14 追記 : この方法はフロントでメアドの判別をしているため、やろうと思えば中身を見ることが出来てしまいます。本当に見られたくないページを作成したい場合、Cloud Functionsを使うことでバックエンドでデータを取れなくなり見れなくなるという設計になります。 @potato4d さん @302u2weさん 鋭いご指摘ありがとうございます。 正しい実装は @potato4dさんのコメントにあります。よろしくお願い致します。 注意 大学がG Suiteを使っている前提です。 大学のメールアドレスでGoogleにログイン出来たらG suiteです。 この記事でやること バックエンドをFirebaseに丸投げしてGoogleアカウント認証でのログイン → ユーザ情報(ユーザのメアド)による表示の切り替え → サインアウト までの簡単なチュートリアルです。 大学の関係者の認証方法 大学の
Nuxt.jsでプロジェクトをはじめるときにいつもやることが整理してみた。 モジュールが多いので、いろいろ設定が必要だけど、ヌケモレあったりするので。。 Nuxt.jsのバージョンは、2.5.1です。 いつもやることの概要 作成したいプロジェクトは以下な感じ TypeScript/Sassを使う、UIはBuefy/Bulma Firebase Hosting / Cloud Functionsを使ってSSR 英語版/日本語版と国際化したいので、nuxt-i18nも入れる SEOも気にするので、各種設定&各ページで個別にタイトルとかを設定 Google Analyticsやsitemapなどももちろん Firebaseへのデプロイは、CircleCIで自動化したい 最終的な例は、GitHubにおいています。 Nuxt.js Template using TypeScript, Sass an
はじめに pandasやnumpyとかを使ってデータ分析のようなことをしてると、実行結果が数値だったりしてバグに気づきづらい。結果がおかしいことに気づかないまま論文を書いてしまうのは怖いのでユニットテストを書いておく。 普段、Pythonによるデータ分析入門 ―NumPy、pandasを使ったデータ処理を読みながら勉強してたんだけどこの本にはテストについて書かれていなかったのでネットで調べてみた。(この辺の内容について書かれた記事が少ない気がしたんだけど、この分野ではあんまりテスト書かれてないのかな?) Pandasのデータ構造 pandasでは以下の様な便利なデータ構造が提供されている。 Series 1次元配列のようなオブジェクト DataFrame テーブル形式のデータ構造。 Panel 3次元のデータフレームに相当するデータ構造。 Assertion method pandas.u
なんか気がつけば2017年8月から始めたBlogも1万アクセスを突破してました。めでたい。 さて、最近はDjangoよりもScrapyに触ってる事が多いです。結構日本語の情報も増えてきましたが、Django等に比べるとまだまだ利用者が少ないのか情報が少ない部分もあります。 このBlogではScrapyにはじめて触れますが、いきなりテストについてメモ代わりにまとめておきます。ScrapyではSpiderというコンポーネントをクロール対象ごとに作成します。このSpiderのテストをどうするかについてです。 サンプルの構成 今回のプロジェクトは以下のような構成です。といってもscrapy startprojectしてdenzowblogというspiderを一つ追加しただけの状態です。 . ├── scrapy.cfg └── testscrapy ├── __init__.py ├── item
Scrapyのユニットテストを書こうとしたところ、ちょっと特殊かつあまり情報がなかったのでまとめました。いつHTMLが変更されてもおかしくないというクローラーの特性上、正当性チェックよりも実装時のcrawl時間を短縮するための利用をメインにするのが吉かなと思います。 (※主にSpiderのユニットテストに関する記事です) (※Pipeline等のテストはunittestなどで普通に書けるため範囲外です) TL;DR; Spiders Contractsを使います 公式のドキュメント docstringに書く scrapy check spidername で実行できる 自分でサブクラスを作り拡張できる ドキュメントにあるサンプルコード def parse(self, response): """ This function parses a sample response. Some co
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く