HackCamp
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Help
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # GHP2021 東日本技術者D 実践研修記録シート ## リンク集 * 参加者&チームリスト * 昨年の事例 [やさしいひなんちず](https://hackmd.io/@hackcamp89/HymKWq4bu) ## チームメンバー * 森健一 * 土田太陽 * 山内千佳 * 土山博昭 ## チームで策定したコミュニケーションルール 属性・地域・年代も異なる多様なメンバーが集まっているとき、どのようなコミュニケーションが心地よいのか・力を発揮できるのか、「ルール」を言葉にしておくと、その後のやりとりの指針になります。 * 通信不調の場合は、[Slackの12d-東日本技術者チャンネル](https://geospatial-hackers.slack.com/archives/C031F8NUXD3)で呼びかける * 他の人の発言に対して否定をしない * Slack Dチームチャンネルで進捗報告をする(頻度:) * 思いついたことは積極的に発言する * 過度な目標ではなく、ちいさな目標を少しずつ進める。 * ~~例) * ~~多様な意見は力。違和感を感じた時も、まずは質問か提案の形で話してみよう~~ * ~~手を動かしてから考えます~~ * ~~全ての人のアイデア、スキル、貢献に価値があることが前提です~~ * ~~60分に1回は、質問・情報共有の時間を取ります~~ ~~etc...~~ `↑↑ Day1 10:40くらいまでを目処に入力 ## メンターへの質問方法 (以下の形に整理して、Slack に投稿しましょう) #### 【例】 【名前】 宮島真希子 【チーム】 A 【タイトル】 ←何についての質問か、端的に表現する 【内容】  1. 目的 なにがしたいのか?/どういう状態をつくりたいのか 1. 手順 自分がやってみた手順 1. エラー(困っている内容)   ○○ができない/××というエラーが出てしまう 1. 自分の構築環境   Win/MAC/ブラウザ/QGISバージョン/その他その時使っているツールなど 1. 画像  (スクリーンショット等を貼る) 【名前】 森健一 【チーム】 D 【タイトル】 同一ホスト上に置いたjson形式のデータファイルを読み込むベストプラクティスとは? 【内容】  1. 目的 OSSに依存しないか今後も安定的に開発されるOSSのみに依存した状態でJSONファイルを読み込むオススメの方法をしりたい。 1. 手順 以下の2種類の方法で読み込んでみた。 ①let hogeVar = {・・・・・}の形にデータを加工した。 ※[サンプルソース](https://raw.githubusercontent.com/nesty-yama/geospatial-d/main/data/shelter/SAITAMA_Shelter.geojson.js)の一行目参照 こちらの方法はdataが更新されるたびにコーディングが発生するので保守性が低いと考えています。 ②jQueryの依存しgetJSONを使う [サンプルコード](https://github.com/musimarusan/geospatial-d/blob/37dfc50d3057ea02261765b6a8fabca8b5bdf054/index.html#L65) 1. エラー(困っている内容) 同じホストに置かれたGeoJSON形式のデータファイルをOSSに依存せず読む方法を知りたい。 又は、ハンズオンで使ったOSSのみに依存して実現したい。(vue/axios) 1. 自分の構築環境 1. 画像  (スクリーンショット等を貼る) 【名前】 森健一 【チーム】 D 【タイトル】 デプロイエラーが発生した時に何をすればよいのかわからない。 【内容】  1. 目的 迅速にプログラムミスを発見して作業を進めたい。 1. 手順 actionタブからコンパイルエラーが発生したことまでは読み取れたがコンパイルが必要な言語を使っておらず原因が全く推測できなかった。またgoogle検索してもそれらしい事象に到達できなかった [エラーログへのリンク](https://github.com/musimarusan/geospatial-d/runs/5151678679?check_suite_focus=true) 1. 自分の構築環境 1. 画像  (スクリーンショット等を貼る) 【名前】 土山博昭 【チーム】 D 【タイトル】Leafeltで表示する地物を緯度経度の範囲で制限したい。 【内容】  1. 目的 避難施設を示すマーカーを指定した緯度経度の範囲内にあるときだけ地図上に表示したい。 1. 手順 避難施設情報を格納したSAITAMA_Shelter.geojsonを下記コードのように読み込んだ。if文で指定した緯度の範囲内にあるときだけマーカーを表示するコードを考えた。 ```   $.getJSON("SAITAMA_Shelter.geojson", function (data) { if(data.feature.properties.緯度 > 31.1 && data.feature.properties.緯度 < 31.2){ shelter_point = L.geoJson(data,{ pointToLayer: function (feature,cordinate) { return L.circleMarker(cordinate,ShelterMarkerOptions)}, onEachFeature: function(feature,layer){ let name = feature.properties.P20_002; layer.bindPopup(name); } }).addTo(map) } }); ``` 3. エラー(困っている内容) すべての範囲のマーカーが消えてしまう。 4. 自分の構築環境 Mac/GitHub (https://github.com/musimarusan/geospatial-d/tree/topic_tsuchiyama/) 5. 画像  (スクリーンショット等を貼る) 動作確認ページ https://musimarusan.github.io/geospatial-d/ ![](https://i.imgur.com/sE44e3R.jpg) --- ## 1. 取り組む課題 `インプットで提示された中から、チームが取り組む課題を選択しましょう **「単身高齢者の避難が遅れがちになってしまう」** ## 2. アイデアの公式 メンバーそれぞれのアイデアは、以下のパターンで表現してください。 **「単身高齢者の避難が遅れること」を解決するために、 「Web」と 「高齢者情報(登録済みの情報)」を使い、 「高齢者や周りの人を助けてあげようという気概や余力がある人」に対して、 「助けを呼んだり、助けがいるか確認し」をして、 「高齢者が助かる・助けられる」ようになる。** アイデア記入シートへのリンクはこちら           ## 3. 役割分担 `あなたのチームに必要な役割のみ項目を残して活用してください` * タイムキーパー(進行管理):土山さん * 書記:土田さん * スケジュール管理:森さん * データ収集:土山さん * 開発:全員 * デザイン:山内さん * 2日目 発表者 未定(後日決定) `↑↑ Day1 15:40くらいまでを目処に入力` --- ## 4. 中間報告(中間相談会までに埋める) ### a. 選択した課題 単身高齢者の避難が遅れがちになってしまう なぜ遅れるか? ・高齢者が災害情報を受け取れない(危険に気づかない) →紙などの媒体が良いだろう 〇正常性バイアスをいかに取り除くか(皆が訪ねてきたら危機感でるのではないか) <解決策> ・周りの人が高齢者の避難を呼びかけるように促す  → 呼びかけによって、高齢者が危険だと判断することが出来るので、避難を早めることにつながる。 ### b. 開発進捗概要 MVPの思想を取り入れて、最低限必要なものをチーム内で作り上げる 作り上げた時の知見と余力を考慮し、残された時間でバージョンアップを繰り返す。 〇2/9までの状況や決定事項 - 2/7 開発に用いる地理情報空間データ(埼玉県、道路データは長瀞町)を収集しSlackによりチーム内に共有した。 - 2/8 単身高齢者情報(ステータス)項目の検討を山内さんにお願いした。 - 2/8 Webアプリで表示する避難施設の情報"はP20_002 or/and P20_004"が候補となった。 - 2/8 山内さん:余裕があれば単身高齢者情報の入力に用いるGooglFormを構築する。 - 2/8 単身高齢者情報のGeoJasonデータをSlackによりチーム内に共有した(Json形式想定だったけどとりあえずGeoJson形式で進めることにした)。 - 2/8 土山:単身高齢者情報GeoJasonデータの動作確認のため所在地などをOSMにプロットするプログラムを作成する。 - 2/9 開発環境としてGitHub(https://github.com/nesty-yama/geospatial-d.git)を用意した。https://nesty-yama.github.io/geospatial-d/ で動作確認できる。 - 2/9 土田さんが動けない間は基本的には土山が実践研修記録シートをアップデートする。アップデートした内容を全員で確認して方向性を確認する。 〇2/12以降の状況や決定事項 土山さん:集めたプロパティをどう使うか&コーディング 森さん:コーディング 山内さん:デザイン 土田さん:UI(何をどういう風に表示するとよく見えるか) 今後は、Slackメインで進めていく。 Zoom会議は、必要にあれば実施する。 〇Day2(2/19)の3分報告 1. 5日(Day1)に作成するプロダクトの概要(「単身高齢者の方の避難が遅れがち」という課題解決を目的として、どのようなプロダクトをつくるか)及び各種作業の担当者を決定した。 1. その後、第1週目は、 * プロダクトに利用できそうなGISデータの収集と仮想データの作成した。 * 収集・作成したデータを地図上に表示する試行版を作成した。 * 12日の相談会までにプロダクトの最終的な機能要件を話し合って決定した。同時に開発環境としてGitHubの利用方法を話し合って決定した。 3. 第2週目は本格的なコーディングに着手した。コーディングはGitHubでコード共有しながらSlackを用いて共同作業で行った。 ### c. チーム運営・コミュニケーションについて <今後の日程> 作るものを明確にするミーティング:今日と後日(2/12までの平日) 開発時に必要な打ち合わせについては、必要な時にSlackにて逐次日程相談する。 (会話できる時間 平日) 土山さん:18:00-22:00(週1の出勤日は20:00以降) 森さん:17:30-22:00 山内さん:9:00-19:00 土田さん:17:30-20:00 2/9現在:土田さん:2/11(金)〜2/13(日)まで社の業務のため作業できない。 ### d. 技術について - Webを使用したUIを構築する。 - 開発環境としてGitHubを利用する:https://github.com/nesty-yama/geospatial-d.git ### e. チームの成長・得られた観点 ・他人のアイデアを聞くことで、視野を広げて物事が考えられるようになった。 ・他人のアイデアを聞くことで、自分のアイデアの強みや弱みが分かり、アイデアを洗練することが出来た。 ### f. メンターへの質問(困っていること・ヘルプが欲しいこと) ### g. 当面の作業 <2/10(木)までの作業> (全員) ・地理空間情報(GeoJson形式)をLeafletで読み込んでOpenStreetMap上に表示することに着手する。 ** 単身高齢者情報(氏名、年齢、位置、ステータスなど) ** 道路(収集したデータには道路の種別情報あり) ** 避難施設(施設名、一時/常時の別、位置) ** 土砂災害警戒区域 <開発開始まで> ~~・bootstrapの予習~~ ~~・表示する内容の決定(オープンデータ調査結果次第)~~ <2/11(祝) 13:00-15:00> ・12日に向けて、相談する内容をまとめる ~~▼東日本Dチーム 時間: 2022年2月11日 12:00 PMから入室可 https://us02web.zoom.us/j/83636477861?pwd=YWhZWmtRV210ckp5WDlMYmVJTTY4dz09 ミーティングID: 836 3647 7861 パスコード: 210972~~ 〇実施したこと ・土山がGitHub pageの使い方が分からなかったのでレクチャー ・2/12の相談会の質問事項を考えた <2/12(土) 9:30-12:00> ・自由参加の中間相談会(Zoom) https://us02web.zoom.us/j/85824504501?pwd=QTM5R01wNk9ZdWp5TVNGdFZZbVcvUT09 〇質問事項 ・geojsonファイルの直接読み込みのやり方→jsonを読むライブラリの選択 JQueryが良いのかその他のライブラリがいいのか。 ・動作確認をしたときにどこで失敗しているのか分かる方法を知りたい。 ・地物の緯度経度範囲を制限して表示したい。 <2/19(土) -14:45(発表まで)> (山内) * 高齢者の避難状況を編集できる機能(ポップアップで) * 避難状況毎に、表示するアイコン色を変える * 印刷(地図) (土田) * ポップアップ全般で表示情報を考える (土山) * 発表作戦 (森) * サービス概要 * Google Form で入力した内容をcsvで読み込む機能 → 実現方法 `↑↑ Day1 17:00までに入力` --- ## 5. サービス内容 `※ この「5.サービス内容」の項目を埋めてプレゼンに使っていただきます` `※ 画像等も入れていただいて構いません` 避難してほしい単身高齢者に直接アプローチするのではなくて、ご近所に住む人に対して近くに単身高齢者がいることを知らせて、避難の協力申し出てもらう事で、高齢者共々早めの避難を実施してもらう。 ### サービスの名前:「 地域助け合い避難マップ 」 ### a. ターゲット(主人公)… サービスが対象とする人を想定してみましょう 単身高齢者の支援に前向きな地域住民 ### b. 課題の背景   <課題> 『単身高齢者の避難が遅れがちになってしまう』 <原因> * 高齢者が災害情報を受け取れない(危険に気づかない)こと → 紙などの媒体が良いだろう。 * 正常性バイアスをいかに取り除くか(皆が訪ねてきたら危機感でるのではないか) <解決策> * 周りの人が高齢者の避難を呼びかけるように促す → 呼びかけによって、高齢者が危険だと判断することが出来るので、避難を早めることにつながる。 ### c. 使う技術 <媒体> * 利用者がスマホ(タブレット)/PCを使用することを想定。 * システムの画面を印刷した紙 <開発で使用したツール> * GitHub * GitHub Pages <提供ツール> * Leaflet * Boot Strap * HTML * JavaScript * axios * Google Form * Open Street Map ### d. 使うデータ <国土数値情報> 避難施設 <シミュレーションとして使ったデータ> 洪水浸水想定区域 土砂災害警戒区域 <投稿サイトで収集するデータ> 単身高齢者の情報(ユーザーに投稿してもらう) ### e. サービスの内容・特徴 助けたい対象は単身高齢者だが、単身高齢者はITに疎く、また災害情報に興味を持ちにくいといった状況があるとわかった。 通常は、単身高齢者地震が考えをあらためて災害情報に興味をもって主体的に情報収集をしてもらう方が望ましいが、このアプローチでは単身高齢者に向いていない作業を習慣にしてもらうというお願いなので、実現には大きな壁がある。 なので、高齢者が災害情報に興味を持つこと自体を早期避難の手段だととらえて、近隣に住んでいて周りの人を助けても良いという気概を持った人に情報提供し、その人たちが高齢者に対して避難を促すアプローチに変えている。 周りに色々な住民がいると考えられるが、機会があれば周りを助けることにやぶさかではない人がいるはずだと考えて、それらの人が自分が避難するときに近隣の高齢者に声掛けする。 声掛けによって、高齢者の避難につながっていく事を狙っている。 間接的には、声掛けをすることによって地域のコミュニティの構築と活性化にもつながると期待している。 ### f. 課題と解決に関わるステークホルダーとその役割 <単身高齢者> * (発災前)自分の情報を登録する。 * (発災時)待っている。 <ユーザー(周辺地域住民)> * (発災時)単身高齢者に注意を呼び掛ける、あるいは一緒に避難をする。 → その単身高齢者の情報を取得する為に、ツールを利用する。 ### g. サービスによって課題が解決された世界のイメージ 単身高齢者と地域住民が一緒に避難することによって、お互いに助かることが出来る。そして、その経験からより強いつながりが生まれ、災害前よりも仲良く暮らせる世界となる。 ### h. そのサービスが実際にターゲット(主人公)に届き活用されるまでのストーリー ※Muralの「アイデアスケッチテンプレート」なども活用しながらイメージしてください 考えるポイント/全てを埋めなくても問題ありません) サービスのターゲットとする主人公が、 * 災害時にどんな課題を持ち → 単身高齢者の避難が遅れる * どのようにサービスを認知し → 自治体や単身高齢者が利用する公共サービスによる広報によって * どのような点に魅力を感じ → 1.ボランティアを漠然としたいと思っている人が、ボランティアをする機会を得る点。 → 2.地域で助け合うことにより、強いつながりが出来る点。 * どのように使い → (災害発生前)単身高齢者が自分の情報を登録する。周辺住民は、自分が助けられそうな単身高齢者の位置情報を把握する。 → (災害発生時)周辺住民はアプリ(PC/スマホ)を用いて、単身高齢者の位置情報または避難状況を紙で印刷する。(印刷した紙は、自身の避難、または単身高齢者に配布する用途で使う。)その後、単身高齢者に避難を呼びかける、あるいは一緒に避難する。 * どのように課題が解決されるのか → 避難の必要性を感じていない人でも、避難を促せる。 → 一人で避難できない単身高齢者も避難が出来る。 ### i. サービスへのリンクURL(あれば) <アプリ(地域助け合い避難マップ)> https://nesty-yama.github.io/geospatial-d/ <高齢者情報入力フォーム> https://docs.google.com/forms/d/e/1FAIpQLScrFntFl4EWk6yl6k6DfE2909G8gtqCsn7C5CBNwWrwEN7TAg/viewform ### j. 今後やりたいこと * 現在は、単身高齢者にターゲットを絞っているが、障碍者等の避難に助けが必要人もターゲットとして設定したい。 * そうなると、障害の内容によって、施設側に必要な整備があるかどうか検索できる機能を追加したい。(入浴施設があるが、補助がいる人は使えない等) * 助ける側としても、災害状況を考慮した(危険箇所を避ける等)、現在地から最寄りの避難場所のルート検索機能の追加したい。 * スマートフォンのアプリ化(またはPWA化)もしたい。 * 利用者が県職員など個人情報が許されるユーザーの場合は、県のシステムにもつ高齢者情報を表示するなど、利用者の権限による情報追加をしたい。(利用者事の認証が必要なapiの呼び出しなど) * --- ## 6. 振り返り ### a. ユーザーフレンドリーなコミュニケーションデザインの設計について * 投稿機能をGoogle Formではなく、アプリケーションの中で実装すべきだった。 ### b. 技術・デザインについて <技術> * プロジェクト創設時の目標/進め方は、良かったのではないか。 <デザイン> * デザイン部門では、1位だったのではないか。 * 技術者目線では必要なさそうな機能であっても、使う人にとっては印象が大きく変わることがあることが分かった。例)印刷ボタンなど ### c. 「社会課題に資するG空間人材のあるべき姿」について(作ったサービス・プロセス) * データを見るだけでなく、画面の向こうにいる人の気持ちを意識する人材。 * プレゼンに負けない。(一般の人にも、システムについてしっかり説明が出来る人材) ### d. 役割分担は適切だったか・他にどんな役割が欲しかったか * 各自の得意分野を早めに把握できたので、役割分担がしやすかった。 ### e. どのような知識・スキル・データが欲しかったか * 開発で使いそうな前提の知識(GitHub等)を最初の講習で、教えていただけたら良かった。 * → 前年度の事例を見れたらよかったかも?翌年度を意識したまとめ方になっていると良い。 * GitHubの無償版の利用方法をまとめてあると助かる。(有償版は慣れていても、、、という人はいるはず) ### f. 本日の学びや作ったものを今後どのように活かしたいか * プレゼン力は重要 * 今回の経験(いろいろな境遇の人がいる中でのプロジェクトの進め方)は、実際の災害時にも十分に活かせると考えている。 * 別のアプリケーションを作ってみたい。 * jOuery → Axios の置き換えをする経験を通じて、自分の知識が確証できた。 ### g. これから地理空間技術を学びたいと思った人に伝えたいことは? * 初日に背中を見せてくれる人(積極的に行動する人)がいると、グループ活動のスタートの大きな推進力となった。 * スタートの時点で、スキル/得意分野を把握できると、よりスピード感をもって作業がすすめられたのではないか。 * → 初日のコミュニケーションの時間を増やすと、個人のスキルなどを聞き出せる機会が増えたかも? `↑ Day2 最終発表後にチームで振り返りながら入力` ###### tags: `GHP2021 技術者 東日本`

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully