Skip to content

Instantly share code, notes, and snippets.

Daisuke Hirata daichan4649

Block or report user

Report or block daichan4649

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View 1on1.md

これは私が支援先に提供した、1 on 1 に関するノウハウや、思いを述べたドキュメントを元にしています。企業の枠を超えて共有したいことが多いので、ここに貼ります。

概要

  • 世の中には 1 on 1 の本があるようですが、とりあえずは『1 on 1 で 何を話すのか? マネージャ/ソフトウェアエンジニアの立場から - サンフランシスコではたらくソフトウェアエンジニア』を読んでもらえればよいと思います (higepon さんに感謝!)。
  • 1 on 1 は 1 対 1 で話すミーティングで、基本定期的にやります。上長とメンバーとの間で行うのが基本です。
  • グループ/チームでのミーティングを補完するためのものです。
    • みんなの前では話しづらい、込み入った内容を話します。
    • チームとして行っているタスクの進捗確認に 1 on 1 を使うのは避けましょう。それは 1 on 1 の目的に沿っていません。
  • 基本、「メンバーの時間」と捉えてください。メンバーが話したいこと、上長に質問したいこと、相談したいことを話す時間です。
    • ですので、上長は相手の話をさえぎらず、聞くことに徹してください (話すのが得意な人、好きな人がマネージャになっている可能性が高いというバイアスに注意しましょうw)。
View NoSQLデータモデリング技法.markdown

#NoSQLデータモデリング技法

原文:NoSQL Data Modeling Techniques « Highly Scalable Blog

I translated this article for study. contact matope[dot]ono[gmail] if any problem.

NoSQLデータベースはスケーラビリティ、パフォーマンス、一貫性といった様々な非機能要件から比較される。NoSQLのこの側面は実践と理論の両面からよく研究されている。ある種の非機能特性はNoSQLを利用する主な動機であり、NoSQLシステムによく適用されるCAP定理がそうであるように分散システムの基本的原則だからだ。一方で、NoSQLデータモデリングはあまり研究されておらず、リレーショナルデータベースに見られるようなシステマティックな理論に欠けている。本稿で、私はデータモデリングの視点からのNoSQLシステムファミリーの短い比較といくつかの共通するモデリングテクニックの要約を解説したい。

本稿をレビューして文法を清書してくれたDaniel Kirkdorfferに感謝したいと思う

@daichan4649
daichan4649 / 01_google.js
Last active Apr 18, 2018
[GAS] create short url (google, bitly)
View 01_google.js
// Google URL Shortener
// https://developers.google.com/url-shortener/v1/getting_started
function createGoogleShortUrl(url) {
var result = UrlShortener.Url.insert({
longUrl: url
});
return result.id;
}
@daichan4649
daichan4649 / メイン画面(現在).xml
Last active Sep 6, 2017
メイン画面のレイアウト
View メイン画面(現在).xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="daichan4649.jazzspotfukuoka.view.activity.MainActivity">
View android_material_design_colours.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- google's material design colours from
http://www.google.com/design/spec/style/color.html#color-ui-color-palette -->
<!--reds-->
<color name="md_red_50">#FFEBEE</color>
<color name="md_red_100">#FFCDD2</color>
<color name="md_red_200">#EF9A9A</color>
@daichan4649
daichan4649 / main.gs
Created Jun 27, 2017
scrape subway status
View main.gs
var URL_SUBWAY = "http://subway.city.fukuoka.lg.jp/status/";
var REGEXP_STATUS = /<div class=\"statusNews\">(.*)<\/div>/gi;
function doGet() {
var status = scrapeSubwayStatus();
Logger.log(status);
var json = {};
json['status'] = status;
json['url'] = URL_SUBWAY;
@daichan4649
daichan4649 / InitServlet.java
Last active Jan 7, 2019
welcome ファイルで Servlet を指定+トップページ(index.jsp)へ遷移するパターン
View InitServlet.java
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class InitServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
@daichan4649
daichan4649 / code.gs
Created Feb 6, 2017
notify last report
View code.gs
var URL_BOOK = '[https://docs.google.com/spreadsheet/ccc?key=xxxxx]';
var SHEET_NAME = '[sheet name]';
var ROW_NUM_TITLE = 15; // タイトル行(jsonの'key'になる行)
function doGet(e) {
var json = createJson();
return JSON.stringify(json);
}
function createJson() {
@daichan4649
daichan4649 / Event.java
Last active Nov 15, 2016
AndroidStudio+GAE/J+Jersey sample
View Event.java
package daichan4649.jersey;
public class Event {
private String ymd;
private String name;
public Event(String ymd, String name) {
this.ymd = ymd;
this.name = name;
}
@daichan4649
daichan4649 / main.gs
Last active Oct 25, 2019
spreadsheet -> google calendar へ一括登録
View main.gs
var URL_BOOK = '[spreadsheet URL]';
var SHEETNAME = '[sheet name]';
var CALENDAR_ID = '[calendar id]';
function onOpen() {
SpreadsheetApp.getUi()
.createMenu('管理者用')
.addItem('カレンダーへ登録', 'register')
.addToUi();
}
You can’t perform that action at this time.