サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大そうじへの備え
blog.satotaichi.info
これはpyspa アドベントカレンダー 2024の12日目の記事です。11日目は@aodagの走るということについてでした。 はじめに この15年くらいは、おおむね平均すると毎年2,3人程度の技術者をOn the Job Training(OJT)で教育する機会に恵まれており、その中で蓄積した知見や私の考えを散発的に説明していきます。 私自身は受託開発を主たるビジネスとするシステムインテグレータ(SIer)と呼ばれる企業で働いており、足掛け25年程度のキャリアがありますがソフトウェアについて専門的な教育を受けたことはありません。また、教育についても同様です。 このエントリに記載された内容について何らかのエネルギーを注いでくれる方がいるなら、XあたりのSNSでURL付きで指摘して頂ければ非常にありがたいです。 教育によって形成される技術者像 まずは、どのような技術者なら育てられるのでしょ
最近は、ITが面白いだとかつまらんだとか言って盛り上がってるけども、面白いってのは、どういうことか、ちょっと考えてみようか。 知識と学習 一つ目は、学習するに足るだけの知識体系がそこにあるかどうか。 知らない事を知る、出来なかったことが出来るようになる快感ってのは、何度経験しても最高なんであって、一人でも多くの人にこの体験をして欲しい。素晴らしいことに、ソフトウェア技術だけに範囲を絞ってもまだ理解できてない事は大量にあるし、増え続けてる。 生成AIがアシスタントしてくれるけど、ちょいちょい嘘をついてくるってのが、また熱いよね。AIが言ってる事だけを真に受けちゃダメで自分でちゃんと試さないといけない。そして、インターネット上に無い情報について、やつらは手も足もでない。 最近は新しい技術が出てこないなんて言ってる連中もいるようだが、現実の社会課題を解決し、それを付加価値として提供できて初めて
このエントリーは pyspa Advent Calendar 2022 の 14 日目の記事である。 昨日は @kuenishi の「我が家の生活物資事情コストコ編」だ。 もはやこのブログがアドベントカレンダー用のサイトになって久しいが、今年もちょっと役に立つ話をしようと思う。 今回の話題は、在宅ワークにかかる環境整備の話だ。コロナが始まったころには盛んに皆さんが自宅の環境を整備するようなエントリを書いていたが、最近は一回りしたのか結構減ってきたように感じている。 単に私の生活環境が完成して、そちらの方面に対する興味関心が薄れただけかもしれないが。 というわけで、このエントリではすでに完成して久しい私の稼働環境について説明する。もう完成してから一年以上は経過しており、細かい変化はあるものの全体としては変わっていない。 少なくとも私が使い込んでいて間違いなく良いと感じているものを説明していく
今まではHexoで実装していたブログをDocusaurusに変えてみた。 Docusaurus とは#Docusaurus は、Facebook がリリースしているソフトウェアやライブラリのランディングページ用静的サイトジェネレータだ。 React ベースで実装されていて、デフォルトのテーマが結構いい感じなのでリファレンスやマニュアルをホストするサイトでは使い易いと話題になることが多いので使ってみたくなった。 例えば、React NativeやJestはDocusaurusでランディングページが実装されている。 Eleventyも少し試してみたが、機能性がプリミティブ過ぎて辛いので早々に諦めた。サイトのデザインを細部までこだわるなら Eleventy の方が良いだろう。 良くなったこと#Table Of Contents が見やすくなった#右側のサイドメニューに見やすい形で TOC が表示
このエントリーは pyspa Advent Calendar 2021 の 13 日目の記事である。 昨日は @drillbits の「作業用 BGM オブジイヤー 2021」だ。 はじめに#みなさんは、新型コロナ感染症の蔓延による日々の外出が強く制限される生活には、もう慣れただろうか。 僕自身は、元々引きこもりがちで何か理由がない限りは家から出たくないタイプの人間なので、この世の春を謳歌している。 僕が所属する会社は、この状況に対して極めて柔軟に対応してくれているので、両手で収まる程度しか会社に出社せずに済んでいて、ほぼフルリモート生活である。ありがたいことだ。 とはいえ、引きこもり生活において一切の不自由がないとは言い難い。 以前は、腹が減ったら気ままに家から出て飲食店に入ったりしていたものだが、今はそういうわけにはいかない。 勿論、調子がいい日は真面目に飯を作って食うわけだが、一年中
このエントリーは pyspa Advent Calendar 2019 の 11 日目の記事です。昨日は @chezou の「Vein の iOS ショートカット複数 URL 対応しました」でした。 はじめに#TypeScript は大変に素晴らしい言語で、僕の手によくなじむ。そのせいか最近はめっきり TypeScript ばかり書いている。 今回のエントリでは、僕がこの一年くらいの間に磨いた TypeScript のテンプレートプロジェクトについて説明する。かなり何度も使って必要十分なものだけを含めるようにしている。 しかし、僕の知識の偏りがそのままになっているので、万人に合うというわけではないだろう。 とはいえ、開発環境の初期構築はかなり面倒な作業なので参考にして貰えれば嬉しい。 細かい説明なんかよりもコードを見た方が早いってハードコアな方は、こちらへどうぞ。 taichi/ts-te
このエントリーは pyspa Advent Calendar 2018 の 11 日目の記事です。昨日は @shiumachi の転職エージェントの活用法でした。 はじめに#去年は、筋トレを始めた話を書いた。 この一年くらい途中で二回ほど離脱した時期もあったが、どうにかこうにか筋トレを継続できている。 と言う訳で、今日は僕が筋トレを継続できているという話をする。 現状確認#身長や体重など#殆ど何も変わっていない。素人がチョイチョイと一年くらいトレーニングした所で何かが変わったりはしないのだ。 体重は3~4 kg くらいは増加したように思うが、これがトレーニングの成果なのかはちょっと良く分からない。具体的に今の体重は、66kg±1kg くらいだ。 まぁ、30代も後半なので衰えてないということだけでも評価して欲しいという気持ちはある。 尚、健康診断の結果における γGTP の値は大きく改善して
はじめに#ここ最近は、SUN が Oracle に買収されて Java 自体の開発に関する状況が大きく変わってきている。 安定的に動作することを期待されている Java が他の言語みたいにどんどん変化するって方向に変わりたいようだ。 新しいもの好きな人々にとっては話題が多いのは素晴らしいことだろうが、アプリケーションが確実に動いて欲しいと思ってる人々にとっては困った話だ。 僕は SIer の従業員なんで、安定的に動作するってことが Java や JVM の素晴らしさだと考えている。 とはいえ、大きく変化してるってんなら、ちゃんとキャッチアップしておかないと困ったことになるのは自分だ。 そういう訳で、今回は eclipse を使って Spring Boot のアプリケーションを開発するための環境構築について説明する。 エントリの変更点#最初にこのエントリを公開した時には、MockMvc と
はじめに#現代人は突き詰めると砂糖と塩と油に脳をやられている。 現代人が短絡的に喜ぶ食事を考えた時、砂糖と塩と油の不快感を感じさせずに大量摂取させられる料理が幸福感をおおむね最大化する(要出典)。 今回は、その中で砂糖と油を効率よく摂取させられる、簡単で邪悪なおやつを紹介したい。 僕が今日説明する邪悪なおやつとはラスクである。しかも、パンの耳をつかったやつだ。 そもそも、食パンというのはかなり不健康な食い物だとされている(要出典)。 その中でも、特にパンの耳は極めて危険な部位で、パンの悪い部分が濃縮されていると言える。しかし、だからこそ旨い。 基本の手順#まず、パンの耳で作るラスクの基本的な調理方法について確認しておこう。 ラスクにするパンの耳は、はっきり言って何でもいい。しかし、ダブルソフトみたいに柔らかすぎるやつはダメだ。 同じヤマザキなら、超芳醇みたいなやつがいい。 パンの耳を食い易
はじめに#最近、様々な分野でチャットツールのビジネス利用が試行されていますね。 筆者の会社でも例に漏れず多くの部門が Slack を利用したり、Microsoft Teams の検証をしています。 筆者は 20 年近く様々なチャットツールを使ってきました。1:1 のチャットツールだけでなく、複数人で使うチャットツールも様々な状況で利用しています。 そもそもインターネットを利用する筆者の主たる目的の一つは確実にチャットです。 一方で、会社に本格的なチャットツールを導入する過程で分かってきたのは、多くの人は思ったよりチャットツールに慣れてない、ということです。 このエントリでは、最近 Slack や Teams のようなチャットツールを使い始めた組織に所属するみなさんに向けて、チャットツールをより快適に使うための考え方や Tips を紹介します。 ここで紹介する知識は、筆者からの提案であり何ら
このエントリーは pyspa Advent Calendar 2017 の 12 日目の記事です。昨日は @mururururu のエントリでした。 はじめに#僕はまごうこと無き運動不足である。週に一回は肩こりの症状を緩和するためにクライミングジムに通ってはいるが、それほど真剣にやっている訳ではないので、三級程度で二年くらい足踏みしている。 しかし、最近は体力の衰えを明確に感じるようになってきた。それは、集中力の低下や、好奇心の低下となって確実に表れている。以前なら、体力任せにコードを書き続けられたが、今はもう全くそんな事ができる気配もない。 と言う訳で、今日は僕が筋トレを始めたという話をする。 去年は筋肉を溶かす話をしたが、今年は筋肉を作る話をするってわけだ。 筋トレを始めた理由#まずは、筋トレを始めた理由から説明していこう。と言っても、実にありふれた話だ。 人間ドックで警告を受けた#一
1. はじめに2. デスマーチとは何か3. 病院を確認する4. 栄養ドリンクの飲み方4.1. ポカリスエット4.2. ヘルシア緑茶4.3. リポビタンD4.4. ユンケル黄帝液4.5. 栄養ドリンクと睡眠の関係5. 睡眠について5.1. 椅子寝5.2. 床寝6. 体の衛生状態を確保しよう6.1. 歯を磨く6.2. 風呂に入る7. 自宅の掃除をする8. まとめ 1. はじめに僕がよく知っている業界はSIだが、これに限らずソフトウェア開発の現場には、過酷な現場…いわゆるデスマーチが多いと言われている。 一方で、そのような過酷な現場を渡り歩き生き残ることでしか、良いプログラマになる方法は無いと言った考え方もある。僕の個人的な経験則からすると、この理屈はある程度合っていると思う反面で、合っていて欲しくないという気持ちは強い。 高い技術力をもつプログラマの全てがデスマ職人という訳ではない。 デスマー
はじめに#僕がよく知っている業界は SI だが、これに限らずソフトウェア開発の現場には、過酷な現場…いわゆるデスマーチが多いと言われている。 一方で、そのような過酷な現場を渡り歩き生き残ることでしか、良いプログラマになる方法は無いと言った考え方もある。僕の個人的な経験則からすると、この理屈はある程度合っていると思う反面で、合っていて欲しくないという気持ちは強い。 高い技術力をもつプログラマの全てがデスマ職人という訳ではない。 デスマーチに巻き込まれたと気が付いた時の妥当で基本的な戦術は撤退戦だ。何か理由をつけて逃げ出すのが望ましい。つまり、休職なり退職なり、異動なりして、その職場から離れるのが望ましい、出社拒否も良い。しかしながら、何か様々な理由があって、そこから逃げ出せないことはあるだろう。 僕はもう長い事デスマーチに関わることなく生きられているが、徐々に忘れつつあるので、若いころに獲得
はじめに#Windows には他の OS には無い致命的な問題が一つあった。そう、OS 標準のパッケージマネージャが無いことだ。 Windows10 ではPackageManagementという大変素晴らしい OS 標準のパッケージマネージャが搭載された。 これでコマンドラインだけで開発環境をガンガン作れるに違いない。そう考える人がいてもおかしくはない。正直、僕だってそう思いたい。 PackageManagement の問題点#僕は PackageManagement のアーキテクチャが難しすぎる事は大きな問題だと考えている。このエントリを是非読んで欲しい。 Introducing PackageManagement in Windows 10もうね、何でこんなに大変なことになってるのかと。 いや、歴史的経緯を鑑みつつ、OS に標準搭載されるパッケージマネージャが持つべき仕組みをキチンと備
はじめに#僕が以前書いたModern JavaScript 概観、そして Electron へは、読んで貰えただろうか? あれは初学者には全く向いてないエントリだ。 あのエントリは、僕の理解したモダンな JavaScript 全体について概観することを目的としているからね。 あれを読んで、「今の JavaScript ってこんなに大変なのか…」と感じた人は多いだろう。 しかし、ある程度のソフトウェアを開発するために技術全般を概観しようとすれば、ああいう分量になるのは致し方ない。 と言う訳で、今回はちゃんと初心者向けのエントリを書いた。 少し多く感じるかもしれないが、丁寧に説明しようとしたからだと好意的に解釈して欲しい。 開発環境#Thinkpad X1 Carbon 2016 年モデルに Windows10 をインストールしてある。 ハードウェアスペックは、こうだ。 CPU i7 6600
はじめに#RDB とスキーマレス DB をどういう基準で使い分けるのかを、会社で聞かれた際に答えた雑な回答をメモ書きしておく。 他にも多くの基準があるだろうし、スキーマレス DB というか KVS は様々な実装があり、そのそれぞれが微妙に違うので議論として曖昧な部分はある。 特に、運用面やデータ量がペタバイトクラスになる状況については考慮していない。 僕は SI 戦士なので、最終的には金を無限に突っ込んだ Oracle 先生が最高のデータベースであると考えている。 そういうバイアスのある人間の意見だと思って以下の文章は読んで欲しい。 念頭に置いているデータベースについて#このエントリを書くにあたって念頭においているデータベースは以下の通り RDBOraclePostgreSQLMySQLスキーマレス DBMongoDBAmazon DynamoDB最初は Redis を DB と書いていた
あなたはホイル焼きという食い物を知っているだろうか? アルミホイルでグルグル巻きにした具材を蒸し焼きにするアレだ。 バリバリとアルミホイルを開いた時に、中から蒸気と共に肉と野菜の混ざった匂いが広がるアレ。 その素晴らしいホイル焼きは、コンロが一つと、フライパンに包丁があれば、簡単にできる。 今日は、そのホイル焼きの作り方を説明しよう。 いくつかのコツさえ知っていれば、調理技術は無くてもおいしく作れるので試して欲しい。 具材の選び方#ホイル焼きで一番大事なのは具材の選び方。 これさえ上手くやれば、手順の半分は終わったようなものだ。 ざっくり言って、タンパク質と水分野菜と吸引野菜と色どり野菜を最低一種類ずつ使えばいい。 タンパク質#タンパク質とは、ホイル焼きのメインコンテンツとなる具材のことだ。 今回は手羽元を使うが、手羽先や、豚バラ肉、厚揚げでもいい。 ホタテや、サーモンといった海産物もアリ
この一か月分の学習成果を整理したリポジトリを作ったので、その成果についてまとめておく。 作ったサンプルプロジェクトだけを手軽に欲しければ、このリポジトリを clone してほしい。 taichi/js-boilerplatemaster ブランチには、ミニマムな JavaScript 開発環境がサンプルコード付きで入っているfrontend ブランチには、React/Redux/webpackなウェブアプリケーション用の開発環境が入っているデフォルトブランチにしてある electron ブランチには、frontend ブランチの内容に加えてElectronでアプリケーションを開発するための環境が入っているはじめに#最近の JavaScript について#僕は仕事として JavaScript を書いている訳ではないけども、この半年くらいの間にちょっとしたツールならいくつか作った。どちらも便利
このエントリーは pyspa Advent Calendar 2016 の 13 日目の記事です。昨日は @ymotongpoo のエントリでした。 @ymotongpoo は筋肉を作る話をしていたが、ここでは筋肉を溶かす話をする。半年の訓練が一週間で全部無に還るような類の話だ。 はじめに#現代人は突き詰めると塩と油に脳をやられている。 現代人が短絡的に喜ぶ食事を考えた時、塩と油の不快感を感じさせずに大量摂取させることが出来る料理が幸福感をおおむね最大化する(要出典)。 塩と油を効率よく摂取させるにあたって、様々な料理が考えられるが、今日は家庭で簡単に作れる邪悪な食事について紹介したい。 僕が考える最大限に邪悪で、作成者の手間が少ない調理とはポテトサラダ(ポテサラ)である。 世間では男の胃袋を握る手段として「肉じゃが」が推奨されるが、同じイモ料理として僕は「ポテサラ」を推したい。 何の気な
yarnpkg を導入しているプロジェクトにライブラリの更新をプルリクエストとして通知してくれるツール ci-yarn-upgrade をリリースしました。 GitHub に置いといたんで、皆さまよしなに使って下さい。 https://github.com/taichi/ci-yarn-upgrade三か月ほど前に gfx がリリースしたci-npm-updateというツールがあったのをみんな覚えているでしょうか? npm dependencies を更新して GitHub Compare View のリンク付きで PR するツールを定期実行するCI でプルリク作ってくれる SaaS は結構色々あるのによくやるなぁ等と思ってみていた訳です。 尚、ライブラリの変更を PR でくれるサービスで僕が知っているのは以下の通りです。今現在 yarnpkg に対応しているサービスは無い。 https:
手元にある Java のフレームワークをせっせと Kotlin に置き換えているのだけども、やはり釈然としないことは色々と出てくる。 本日の話は、Java と Kotlin の間で確保されているというInteroperabilityについて。 尚、記事中で使っている Kotlin のコンパイラは 1.0.0。 これらの問題は将来的には改善されるかもしれない。 interface 定義#こういう Java の interface を定義する。 package aaa;public interface JavaSAM { String doIt(int i, String s); static void call(JavaSAM ms) { System.out.println(ms.doIt(1, "zzzz")); }}コピー fun java_interop() { // Intelli
1.0.0 がリリースされました。やりましたね。 僕の観測範囲内に見えることが増えてきたので、興味本位で少しずつ触っています。 まず、ブラウザだけで試せるチュートリアルが大変素晴らしいので、Kotlin が肌に合うかどうか確認するといいですよ。 Kotlin Koansjs で実装されたエディタなのにシンタックスハイライトだけでなく、入力補完がガンガン効くので凄く良い。 僕の理解#大体 3 日くらいかけて言語仕様やマニュアルの類を読みながらチュートリアルをこなした結果、 Kotlin は 安全な次世代の Groovy であるという理解に到達しました。 僕が Groovy に対して持っていた不満は、大体以下の通り。 ランタイムがデカ過ぎるgroovy-all-2.4.6-indy.jar が 6.5Mバイトコードエンハンス等の危険な黒魔術がカジュアルに動く型がありそうで、実は殆どない型があま
前回のエントリでは CircleCI 上で Docker を使ってビルドする方法については敢えて触れませんでした。 今回は、CircleCI 上で任意のバージョンの JVM を使ってビルドする為に Docker コンテナを使ってみます。 試行錯誤した結果の circle.yml はこちらになります。参考にしたい方はどうぞ。 machine: timezone: Asia/Tokyo environment: GRADLE_OPTS: -Xmx4G -Dorg.gradle.daemon=true -XX:+HeapDumpOnOutOfMemoryError services: - docker post: - sudo service mysql stop - sudo service postgresql stop dependencies: cache_directories: -
WEB+DB PRESS の Vol.90 で、ミューテーションテストの記事を書いたので是非読んでくださし。 2015/12/23 発売ですので、既に購入頂いてる方も多いと思います。 今回は、git の記事とドラクエの記事がスゲェ面白いのでメガッサオススメです。 電子書籍版もありますので物理的な媒体に興味がない方は PDF を買って下さい。 https://gihyo.jp/dp/ebook/2015/978-4-7741-7855-4今回の記事における対象読者について#今回の記事は JUnit によるユニットテストは書いていて、Maven なり Gradle なりでコードカバレージを CI サーバで取るくらいのことはしているという皆様に読んで頂きたいと考えています。 記事の内容について#中身はどうあれ JUnit 使ったユニットテストを書くというのは、みなさんやってると思うんですよね。
ここ何日か Circle CI を使ってみて何となく分かってきた事をまとめておきます。 完成した circle.yml だけ欲しい方はこちらをどうぞ。 checkout: post: - chmod +x ./gradlew machine: timezone: Asia/Tokyo environment: GRADLE_OPTS: -Xmx4G -Dorg.gradle.daemon=true JAVA_HOME: /usr/lib/jvm/java-8-oracle post: - sudo service mysql stop - sudo service postgresql stop dependencies: pre: - sudo apt-get install software-properties-common - sudo add-apt-repository -y
Immutables は Annotation Processor として動作するコードの自動生成系テクノロジです。Immutables はヘビーに Annotation Processor を使って実装されているので、コードの見通しが凄く悪いので理解の断片をメモ書きしておきます。 これは主に未来の自分用メモです。 ユーザ用アノテーションが定義されているプロジェクト#処理は無い。普通に使うだけなら、ここだけ見てれば使える。 buildercasesgsonmetainfこれは処理を持ってる。META-INF/services/にファイル吐くアレ。mongoordinalserialテスト用プロジェクト#testing はアサーションとかアレが入っている テストデータ#generator-fixturevalue-fixtureコード生成用テンプレートエンジン#Immutables では、コ
WEB+DB PRESS の Vol.89 で、アプリケーションモニタリングの記事を書いたので是非読んでくださし。 2015/10/24 発売ですので、既に購入頂いてる方も多いと思います。 電子書籍版もありますので物理的な媒体に興味がない方は PDF を買って下さい。 https://gihyo.jp/dp/ebook/2015/978-4-7741-7713-7今回の記事における対象読者について#モニタリングの話をしてるんですけども、運用者向けでは無くて実装者とか方式設計的なことする人向けの記事です。ええ。 Java ではロギングライブラリにおけるカオスが非常に極まった状況にあります。それは、あらゆるアプリケーションにおいてとりあえずロギングは為されていると言う意味では非常に良い事であると言えます。 記事の内容について#まずは、JMX はスバラシイけどアカン奴というその二面について、結構
まずは、会場に来て下さった皆様、本当にありがとうございました。 ご来場の皆様が何か少しでも得るものがあったのであればいいなぁ…と考えます。 面白いイベントを企画して僕を呼んでくれた jxck には感謝しかありません。 このエントリでは、話足りなくてモヤモヤした部分を勢いで書きなぐってる感じなので、無駄に長い割にオチが無いので暇な人だけが読んで下さい。 観客として参加したセッションについて#僕が見ていたセッションは、 server_perfstandardizationhttp2monitoringです。僕の主観としては余り未来の話をしてなくて現状確認に終始した後に、最後の 15 分くらい未来をチラ見せみたいな感じだったかなぁ…と感じています。 しかしもって、未来みたいなものの話をするのは兎に角難しいので、少しでも未来っぽい話出来ればそれで良いんじゃないかと考えます。 セッションについて#僕
Stash is now called Bitbucket Server らしいです、はい。ブランドだけ変わって中身はそのまま何だろとか思ってたら、そんなことは無く大変な事になっております。ええ。 尚、本番環境の移行できていません。 Stash 用に作りこんだプラグインをこっそり持っておりまして、それを Bitbucket Server で動くように修正することには成功したので、情報共有しておきます。 但し、これは全ての変更差分を厳密に精査したわけではなく僕の利用範囲において対応が必要だった部分についてまとめているという事に留意して下さい。 Stash 4.0.0 系 == Bitbucket Server 問題#まずおさえておきたいのは最後の安定板 Stash が3.11.3という事です。 それに対して Bitbucket Server は4.0.1です。 バージョン番号の採番ルールには
次のページ
このページを最初にブックマークしてみませんか?
『さにあらず | さにあらず』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く