Labo288

プログラミングのこと、GISのこと、パソコンのこと、趣味のこと

職能別チームがなぜダメで、職能横断がなぜよいか

はじめに 数年程度の経験則と一般論に基づくポエム エンジニアなのでエンジニア組織の話 職能別チームと職能横断チームの違い 職能別チームは、web開発で言えば、フロントエンド班・バックエンド班、SRE…と別れている状態。 職能横断チームは、そのチーム内…

エンジニアのキャリアと組織の技術力に関するメモ

日頃悩んでいることを言語化しておくメモ、まだ論理的にまとまっていない。 エンジニアのキャリア (要出典)海外で働いたことはないので一般論だが、日本ではソフトウェアエンジニアとして有能だとマネージャーになることが多いらしい。Individual Contribu…

それは本当に「心理的安全性」があるのだろうか?

はじめに Googleが重要性を説いたことで広まった「心理的安全性」という言葉。 心理的安全性とは、アイデア、質問、懸念、または間違いを率直に述べても、罰せられたり屈辱を与えられたりしないという信念です。チームでは、チームメンバーが他のチームメン…

2022年度の振り返り

前回 kiguchi999.hatenablog.com TL;DR エンジニアリングマネージャーになった(=チームリーダー) エンジニアチームの再設計に携わった FOSS4Gのグローバルカンファレンスに参加した PyConJP 2022へ登壇した 単著「位置情報エンジニア養成講座」を出版した…

Cloudflare Workers + Honoを試したメモ

以下をなぞって、かんたんなAPIの作成、デプロイ、KVを試した zenn.dev Cloudflare Workers wranglerを使えばデプロイ・KVの追加など非常にかんたん、これがDXが良いってやつか〜 KVは結果整合というやつで、リアルタイム性が求められるデータには無理。キャ…

GDALがGTFSをサポートしたので試してみた

はじめに gdal.org GDAL/OGRがGTFSをサポートした。2023年5月リリース予定のv3.7から利用できるようになる。 リポジトリのupstreamには既にコードが反映されているので、どんな挙動か試してみる。 なお使ったのはおなじみ拓殖バスさんのGTFSデータ。 www.tak…

PostGISから動的にベクトルタイルを配信する

はじめに qiita.com 上記記事では、PostGIS-backendなタイルサーバー実装比較し利用している。 いろいろ書いているが、結局のところそれらがやっていることはPostGISへのSQL実行である(ST_AsMVT)。正確にいうと、データベースのテーブルをチェックして、ジ…

2021年度の振り返り(エンジニア2年目)

はじめに (今はもう6月ですが)3月末でエンジニアの2年目が終了したので振り返ります。下記は1年目の振り返り。 kiguchi999.hatenablog.com 総括 1年目よりも2年目の方が成長を実感出来た。私はQGISとフロントエンドを得意分野としてきた人間だが、この1年…

DellのゲーミングノートG15(5515)にUbuntu20.04をインストールしたはなし

TL;DR 公式のインストールメディアを使って難なくインストールできる しかし、GPUドライバのインストールとNVIDIA X Server Settingsで設定の変更をしないと、Chromiumの動作が非常に重たくなる NVIDIA X Server SettingsではNVIDIA(Performance Mode)を選択…

Windows10でストア配布じゃないPythonのパスを通す

TL;DR 以下の2行を、デフォルトで定義されている~~Microsoft\WindowsAppsよりも上位に定義しておきましょう C:\Users\<username>\AppData\Local\Programs\Python\Python39 C:\Users\<username>\AppData\Local\Programs\Python\Python39\Scripts Windows10のPython 当然初期状態の</username></username>…

JavaScript(Node.js)とWASMの処理速度比較

はじめに WASMとはWebAssemblyのこと。最近のブラウザで実行可能なバイナリデータです。 そもそもJavascript(Node.js)は軽量言語にしては速いです。なので通常の用途において、WebAssemblyに置き換えるケースというのはあまり多くないでしょうが、単純な計算…

2020年度の振り返り(エンジニア1年目)

はじめに 公務員をやめて2020年4月にエンジニアになってからちょうど1年経ったので振り返りつつ技術の棚卸しでも。個人開発と業務ごちゃまぜです(業務系は当然守秘義務を厳守)。 1年間やったこと つくったもの QGISプラグイン github.com github.com githu…

年末年始の1ヶ月超、実家でワーケーションしてみた話

はじめに 前回がこちら kiguchi999.hatenablog.com 反省点が以下 キーボードを持っていかなかったので、大変打ちにくかった(実家にはJIS配列でおかしな感触のキーボードしかなかった) 机と椅子の環境があまりよくなかった 改善した結果 キーボードは職場・…

OpenLayersでバイナリベクトルタイルをstyle.jsonでスタイリング表示する

OpenLayersで地理院タイルをスタイリングしつつ表示する例 はじめに OpenLayersは基本機能だけでバイナリベクトルタイルをソースとしたレイヤーを表示する事が出来ます。 qiita.com でも基本機能ではMapbox Style形式のいわゆるstyle.jsonを読み込む事は出来…

audio-technicaのATH-PRO5のイヤーパッドを交換した話

はじめに 15年くらい使い続けているオーテクのATH-PRO5、イヤーパッドが10年くらい前からボロボロになっていたけどなんだかんだそのまま使い続けていた かつてイヤーパッドだったもの 見てのとおり、合皮部分が全部剥げて中の生地が完全に露出している(さら…

お盆の1週間、実家でワーケーションしてみた話

はじめに 最近流行りのワーケーション、私はこの言葉を知ったのは2ヶ月くらい前でした。その直後くらいに国が推進するなんてニュースが話題になりました。 news.yahoo.co.jp 思いがけず、お盆の1週間だけですがワーケーションをすることになり、色々思うとこ…

Windowsの開発環境について(Visual Studio Code + WSL)

この記事はQiitaから逆輸入したものです。最近更新していなかった罪滅ぼしです。 概要 Windows版のVSCodeでWSLをシームレスに連携する手順の記事です もはやmacOSと差がなさそう、Windowsでもストレスフリーに開発出来る はじめに プログラミングと言えばmac…

グローバーのペグ交換について(102→V97)

結論 Grover 102 → Grover V97 の場合、以下のコンバージョンブッシュが最適です(外径10.0mm、内径6.35mm)。 www.soundhouse.co.jp はじめに 久しぶりのギター記事です。 まずはこちらをご覧ください。 Thumb W-800 結構レアっぽいいわゆるジャパンビンテ…

Mapbox GL JS用のラッパーライブラリを作ってみた話

はじめに ベクタータイルやWebGLによる高速描画など、WebGISで今最もアツいのはMapbox GL JSに違いありませんが、私はLeaflet.jsが好きです。 なぜならAPIが非常にシンプルだからです。例えばGeoJSONレイヤーを追加したければ、Leaflet.jsでは以下のように書…

QGISで地図PDFを簡単に出力するプラグイン「EZPrinter」をつくりました

はじめに QGISの基本機能としてのPDF出力は、範囲や縮尺の指定が微妙に使いにくいです。 レイアウト機能を使って少し手間をかければ、かなり綺麗な地図も作成出来ますが、QGISで表示している地図をサクッと紙などに出力したい時のためにプラグインを作りまし…

北海道内15箇所にポケモンマンホールが設置されるので最適経路を計算してみた

この記事はFOSS4G Advent Calendar 2019の12月8日の記事です。 昨日の記事は、chomyさんのGDALでGCOM-Cの可視領域のデータからTrue Colorイメージを再構成してみたでした。 FOSS4G Advent Calendar、毎日楽しませて頂いております。 参加表明した時点ではMap…

基盤地図情報の水域や道路界等のXMLデータをひとつのベクターデータにする手順

はじめに fgd.gsi.go.jp 国土地理院は、日本の国土に関する様々なベクターデータをオープンデータとして提供しています。 当然、オープンデータとはいえ出典の明記等の制約はありますが、それなりに自由に使えます。 ところが、提供されているファイル形式が…

iOS向けGeoJSONビューア「Vanilla GIS for iOS」リリース。使い方など

はじめに 大体1ヶ月間くらいかけて、タイトルのとおり「Vanilla GIS for iOS」を開発しリリースしました。 Vanilla GIS for iOSとは コンセプト Vanilla GISという名前は、以前に作ったWebアプリと同じ名前です。そのコンセプトは「シンプルでユーザーがカ…

スライダーで色を選択するUIをつくれる「Color Slider」

はじめに iOS開発では、様々なGUIパーツがデフォルトで用意されています。 しかしながらカラーピッカーの類は存在しません。 標準のUISliderのように、スライダーにより色設定が出来ればと思い調べるとライブラリを発見しました。 ColorSlider github.com 機…

自作クラスをNSDataに変換したりUserDefaultsに保存するために

はじめに Swiftでクラスをエンコードする(=NSData型に変換する)場合は、そのクラスがNSObjectを継承していて、かつNSCodingプロトコルに準拠している必要があります。 カスタムクラスをUserDefaultsに保存したい場合等に必要となる知識ですが、かなりハマ…

Mapbox for iOSで自作のスタイルを設定する(好きな背景図を表示する)

はじめに 地図系のフレームワークで有名で、最近ではゼンリンとの提携がニュースになったりしたMapboxはiOS向けにもフレームワークを提供しています。 www.mapbox.com Mapbox for iOSの導入 ただ地図を表示するだけなら、チュートリアルのとおりとてもシンプ…

MapboxにGeoJsonファイルをドラッグドロップで読み込むサンプル

はじめに www.labo288.site 以前紹介したLeafletによるWebGISでは、GeoJSONファイルとシェープファイル(zip圧縮されたもの)の読み込みに対応していました。 ドラッグドロップすると、POSTリクエストが飛び、(シェープファイルなら変換されて)GeoJSON形式…

静的なGeoJSONファイルを読み込んでLeafletにレイヤーを追加する

概要 GeoJSONファイルとは、以下のとおり、ある程度データの構造が予め規定されたJSON形式のファイルです。 { "type": "FeatureCollection", "features": [ { "type": "Feature", "geometry": {"type": "Point", "coordinates": [102.0, 0.5]}, "properties"…

QGIS3.x系向けプラグイン作成手順や各種処理の実装方法について

はじめに オープンソースGISソフトウェア、いわゆるFOSS4Gの定番ソフト「QGIS」でプラグイン(拡張機能)を作成しました。QGISの最新バージョンは3.8で、3.x系はPython3を採用するなど後方互換性が一部失われ、2.x系のコードは動きません。ウェブ上にはプラ…

QGIS3.x系向けプラグイン「MagicWand」を作成しました

はじめに わたしは仕事柄GISで農地を見る機会が多く、オルソ画像からほ場のポリゴンを作ったりする事もあります。基本的にポリゴンの頂点をマウスのクリックでカチカチして作ります、めんどくさいです。 たとえばグラフィック系のソフトでよくある「自動選択…