サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「#文学」
tmotooka.hatenablog.jp
先日リリースされた macOS Ventura 13.0 が、我が家にもやってきました。普段からお世話になっているアプリケーションたち…各種Webブラウザ、JetBrains製品、Adobe製品、Docker、VS Code、MS Office、Sourcetree などなど、健全に動作しております。 ところが、どうしても さくらインターネット さんのレンタルサーバ へのssh接続の鍵ログインがエラーになっていたのでした。この記事は、その対処法のメモです。 エラーの状況と、その調査 手元の ~/.ssh/config に適切な設定 および 接続先サーバ側の ~/.ssh/authorized_keys に公開鍵を登録することによって、鍵ペアを使ったログインをできるようにしていました。ところが、Venturaな環境ではssh接続しようとすると鍵ペアでのログインは成功せずに、パスワードの入力を
月曜の朝から、とっっっても重いニュースが流れてきました。 www.nikkei.com www.itmedia.co.jp www.smbc.co.jp 自分の購買情報や財務情報にさほど価値があるとは思っていませんが、CCCのような姿勢の企業の利益獲得に協力する形になるのは、まっぴら御免です。 という訳で、Vポイントの付与等の対象となっている三井住友カードを解約して他のカードに乗り換えることを真面目に検討しています。 私は三井住友銀行にも口座がありますが、ここではVポイントへの「おまとめ」の設定を私は実施していないので、今回のSMBCによる発表の各種資料をざっと見る限りにおいては、三井住友銀行の口座を急いで閉鎖する必要は無さそうです。それでもいつまで安全なのかは不明なのと、そもそもCCCとの提携(しかもopt-in方式ではなさそう)を真面目に検討している経営陣が居る会社のサービスを利用する
昨年からの仕事の成果物の一つを、特許として出願しました。弁理士の先生にお願いしたりすること無く、書類は全て自力で用意しました。初めての体験です。 出願はほぼスタート地点のようなものであって、特許査定*1に至るとは限りませんし、行うべき作業は沢山あります。友人の弁理士曰く「素人が書いて通るようなもんじゃない」とのことなので過度な期待は抱かないようにしていますが、出願という行為を正しく行うというところまでは自力で来れました。プログラミングの世界で言うところの「コンパイラがエラーを吐かなくなるところ」まで来れたのです。 そんな訳で、やってきたこと等を書き留めておきたいと思います。 なお、ここに書いてあることを参考にして、読者が自力で出願して意図しない結果*2になったとしても筆者は責任を負うことができません。特許を真面目に考えておられる皆さんはぜひ時間・金銭共に余裕を持って弁理士の先生のお世話にな
電車の中で、就活生や転職希望者の履歴書を広げて眺めているおっさん。 数年前あたりから見る機会がすっかり減りましたが、昔はよく見かけたものです。 (もちろん重要な機密情報の積極的な漏洩にあたりますから、大半の事業所においては、そんなおっさんには懲戒解雇処分を下した上で、損害賠償請求を起こさなければなりません。) そんなおっさんを目の当たりにしたとき、こちらが意図せずとも履歴書に書かれた住所がチラッと見えてしまうこと、ありましたよね? よく見知った地域の住所であればすぐに認識できるものですけれども、1〜2文字だけしか読めなかった、ということがあったものです。 仮に、貴方の目の前のおっさんが広げている履歴書の住所欄に「昴」(すばる)の文字が見えたとしましょう。日本の住所の中に「昴」の文字が含まれるものは、いくつあるでしょうか? 答えは一つ、青森県 弘前市 昴 です。 マンション名で使われている事
先日開催された技術書典5に、サークル参加してきました。「SVG手描き本」を携えて…! techbookfest.org この記事は、その参加レポートです。 率直な感想 書籍の執筆も、こういったイベントへのサークル参加も全て初めてでしたが、初めてにしては上手くできたかなと思います。 何より、SVGに興味を持っている方が沢山、ブースを訪問してくれたことが嬉しいです。 最終的にご購入に至らなかった方でも、多くの方が見本誌を見て「あぁ、これね、知ってる知ってる!」的な反応をされていたのも、それはそれで嬉しいです。 途中で完売してしまったのは嬉しい話なのですが、夕方に来場された方にコンテンツをお届けできなかった点は反省すべきところです。 初サークル参加・ワンオペ という状況でも過不足金を出さなかった自分、偉い。 運営の皆さんに大いなる感謝を…! 参加に至るまでの経緯 過去の記事 10月8日は #技術
ここ数日話題に上がっている日大アメフト部の反則タックルに関する情報を見て、自分の過去の体験に心当たりがあったので、改めて書き記しておきます。 ※たぶんこのブログでは書いたことは無いだろうとは思いますが、一部のものについてはSNS等では言及したことはあるはずです。だから「改めて」書き記す、という体裁になっています。 3行まとめ 違法行為の指示を断るのは難しい 最強の武器は「いつでも転職すればいいや」という気持ちと自信と実態 指示を出す側として違法性に気付けないこともある 事例その1:指示を受ける側として 昔、勤め先の会社の偉い人から、我々の業界に身を置く人間であれば新人さん以外はほぼ全員が概要を知っているような有名な法律に違反する方法によって、不適切なデータ処理をするように指示を受けたことがありました。 とっさの自分の対応 「これは違法行為では?」とすぐに疑いを抱いたものの、条文やガイドライ
NHKの受信料契約を解除しました。6年振り2度目のことです。 自分の生活の中でのテレビの存在 関西にいた頃 これまで使っていたテレビを買ったのは2013年12月のこと。当時は関西に住んでいて、関西ローカルのテレビ局に勤める友人や、テレビ局の下請け仕事をしている友人たちの仕事の成果をこの目と耳と心に届けるべく、テレビを買いました。当時の家に住み始めて数ヶ月間は何事も無かったのにテレビを購入してから2週間後にNHKの人が来るという、NHKの受信料契約取り付け担当者は家電量販店さんまたは運送業者さんから個人情報の第三者提供を受けてんじゃないか疑惑が持ち上がるようなイベントも発生しましたが、NHKそのもののコンテンツはそこまで嫌いでもないですし、普通に契約しました。地上契約、年額13,990円です。 関東に来てから 昨年秋に関東に引っ越しして、ちらっとテレビを見ましたが本当に面白くない番組ばかりで
私は、WebアプリでもiOSアプリでもその他のものでも、何かしらUI(User Interface)を伴うアプリケーションを開発するときはまず英語バージョンを先に作るようにしています。 自分は、先に英語で開発してる。文字数が多くなる言語で開発するのが正義! 本当はドイツ語で開発したいけど、それほどのドイツ語のスキルが無い。 #関モバ— 自宅適合者 T.Motooka (@t_motooka) 2016年1月27日 これは昨年1月に関モバに参加したときの発言です。 この記事では、次のようなことを述べています。 英語版から開発すると、どんな幸せなことが起きるのか? どんな状況のときは、英語版を作らない方が良いのか? 和文英訳力を鍛える方法 また、この記事のタイトルは美しい川柳になっています。575です。 英語版から開発する効用の例示 それでは、英語版を先に開発することでどのような効果があるのか
2013年10月から勤めていた会社を2017年7月で退職しました。無職なのは一瞬だけで、8月からは仕事をします。えらい!(褒めて!!) 今までやっていたこと SVGで絵を描いたり、PDFを作ったり、ちょっとだけPostScriptを書いたりしていました。あとはPHPでWebアプリを作ったり、Objective-CでMacアプリをちょっとだけ触ったりしました。そういうサーバ管理者でした。(文字通りのパラレルな感じはしますが、表題の話はもうちょっと下の方で。) 辞める前の生活 よほどブラックな企業だったりストイックな企業でない限りは、退職前に有休休暇を消化するのが一般的だと思います。今回退職した会社も運用はブラックではなく、一般的なものでした。しかし、以下の理由から、自分は「連続した」有給休暇を取得せずに、5月下旬からほぼずっと 午前中休み という生活(有給休暇は0.5日分ずつ消化)を送ってい
WebサイトやWebアプリケーション、iOS / Android などの開発の現場において、デザイナが他者に指示を出すために「デザイン指示書」やそれに類するものを作成することは少なくありません。 ここ数年の間で、このような文書のやり取りに絡んだトラブルの事例を数件見たり聞いたりしたので、そこで起きている典型的な問題と、それに対する対応策を紹介したいと思います。 ※業界や業態が変われば「デザイン指示書」が指す文書の役割は異なり、デザイナに指示をするための文書を指すこともあるでしょう。この記事を読まれる際には、皆さんの環境において使われる文書名に置き換えて頂ければと思います。印紙税の課税対象であるか否かが文書の名称ではなくて文書の内容によって判断されることと感覚的には同じですね。この記事では、デザイナがプログラマや広報担当者などに出す指示を文書化したものという意味で デザイン指示書 という語を
先日、スターバックスでコーヒーを飲みながら本を読んでいると、二人組の女性客が入店してきて、店員さんに案内されながら筆者の隣の席に着いた。二人とも白い杖を持っておられる。恐らく目が見えないのだろう。 店員さんの行動を見る限りでは非常に慣れている様子で、商品の選択を促す際には点字のメニューを渡して放置ではなく(点字メニューが用意してあったとしたら、もちろんそれも素晴らしいことだが)、「どのような飲み物が欲しいのか?」を聞き出し、それに合う商品をいくつか提案し、その中から注文を取るということをやっておられた。 それ以外にも座席への誘導の仕方や会計の手順、商品の引き渡しなどにおいても理にかなった行動を取っておられた。これらの行動は「助けてあげたい」という精神だけではほぼ不可能だろう。この店員さんが相当の経験を積んできているか、きちんとした教育をうけているかのいずれかであることは容易に想像できる。ス
この記事は、12月1日から25日まで、学校を退学した人・する人などが記事を続けざまに投稿していく「退学 Advent Calendar 2016」の15日目の記事です。 www.adventar.org 筆者は大学(学部)を中退しましたが、それから10年以上が経過しても生き延びることができています。 これまでに起きたことなどと適当に掻い摘んで書いていきますが、退学したばかりの人、退学しようかどうか悩んでいる人、そんな方々の参考になれば幸いです。 やめるまでの人生 大学に入るまでの人生 小学6年生のときにプログラミングを始めました。 あまり勉強熱心ではありませんでしたが、プログラミングを進める上では英語、数学、物理の知識が欠かすことができなかったため、これらの内容を学ぼうとする意欲は他人よりは高かったかもしれません。これらの科目に限っては、中学高校の授業の内容についていけないということはほと
この記事は、SVG Advent Calendar 2016 の3日目の記事です。 SVG Advent Calendar には、このような記事も過去に投稿しています。 clip と transform との組み合わせ - 職業プログラマの休日出勤 手入力のSVGでクリスマスツリーを描こう☆ - 職業プログラマの休日出勤 マスター・オブ・円弧 #SVG - 職業プログラマの休日出勤 さて。 年末ということで、宝くじ や 占い、それに類するものに興味をお持ちの方も多いかと思います。私自身はそのようなものは好きではないのですが、くじ等を作る側(射幸心を煽る側)の人間として各種法令を遵守しながら立ち回ることは嫌いではありません。ここでは、くじを作る側の人間として、SVGでスクラッチくじを作る手法を紹介したいと思います。 まずは完成品のご紹介 さすがにブログ記事の中でJavaScriptを動作させ
PDFに関して様々な処理を行うためのプログラム pdftk をWebブラウザから呼び出すことができるように、pdftk wrapper という単純なツールを作って公開しました。 github.com 何のために作ったのか? PDFはテキストではなくてバイナリのファイル。そう認識されている方は多いと思います。私もそうでした。 ところが、PDFのファイルをテキストエディタで開いてみると、どうでしょう? なにやら人間に読める文字がたくさん出てきませんか? 人間に読める文字が多いのなら、テキストエディタでPDFを作ることだって頑張ればできるはずです。 便宜上、テキストエディタでPDFを書くことを「PDF手書き」と呼んでいます。 様々なものを表現することができる、このPDFというファイルを、自分の手で心を込めてイチから組み上げていくという行為、とてもワクワクしてきませんか? そう思われた貴方は、もう
この記事は SVG Advent Calendar 2015 の25日目の記事です。 www.adventar.org Advent Calendar の最後を締めくくるのに相応しい内容かどうかはわかりませんが、皆さんきっとSVGを描きたくなるはずです。 SVGとは? SVGとは画像ファイルの形式の一つで、基本的にはベクター画像(引き伸ばしても荒れないアレ)です。画像なんだけど中身はXML、すなわちテキストファイルになっている、不思議で便利な画像です。いまここで初めてSVGの名前を聞いたという皆さんは、上記の Advent Calendar に掲載されている記事を読んだり、Wikipediaの記事 を読むと良いでしょう。 SVG手描きとは? 前述の通りSVGはXMLであり、テキストです。 テキストであるということは、テキストエディタで作成したり編集したりすることが理論上可能であるということ
Windows環境でPHP+PostgreSQLなものを作る必要に迫られたので環境構築をしました。WindowsでPostgreSQL使うのは久し振りということもあり、少しだけ躓いたので、メモを残しておきます。 PostgreSQL for Windows インストーラの入手 PostgreSQLはオープンソースなソフトウェアで、通常はソースコードでの配布です。Linuxなどの多くの環境ではソースコードからのビルドも、マニュアル(日本語版・原文)に従えば非常に簡単にできます。しかし、Windows機できちんとしたビルド環境を持つのは非常に面倒臭いので、バイナリでの配布のお世話になることになります。 注1:もちろんRPMなどのパッケージでの配布もあります。 注2:Windowsでのビルド環境の用意は、もしかしたら簡単なのかもしれませんが、筆者の食わず嫌いです。 注3:マニュアル(リンクは前述
この記事は SVG Advent Calendar 2014 の1日目の記事です。 SVG とは? SVG Advent Calendar の初日ということで、簡単に SVG そのものの紹介をしておきましょう。 WikiPediaの記事 → http://ja.wikipedia.org/wiki/Scalable_Vector_Graphics SVG 1.1 Second Edition の厳密な定義 → http://www.w3.org/TR/SVG/(英語) 手書きする人向けの日本語での解説 → http://www.h2.dion.ne.jp/~defghi/svgMemo/svgMemo_01.htm なお、この記事には SVG画像 を直接記述しています。ブラウザによっては正しく表示されないことがあるかもしれません。特に古いやつとか。予めご了承下さいませ。 実演に使う画像 こ
SIMロックとは、携帯電話やタブレットなど、SIMカードを挿して使う情報通信端末に対する「特定の情報通信事業社のSIMカードしか利用できない」という制限のことを指します。 ここ数年、このSIMロックがかかっていない端末についての話題がよく登場するようになりました(筆者の観測範囲での話であって、統計を取った訳ではないです。。)。しかしながら、そういった話題の中では、どうも聞き捨てならない言葉が飛び交っています。それは「SIMフリー」。 ○○free 少しだけ、英語のお勉強です。 ○○(名詞)の後に free が付くと、形容詞として取り扱われるのです。 (例) tax-free : 課税対象外の sugar-free : 砂糖不使用の alcohol-free : (飲料を修飾して)ノンアルコールの (場所を修飾して)アルコール飲料の消費が禁止されている China-free : 中国(中華人
第54回 Cocoa勉強会関西 で、CoreDataについて話をしてきました。 3行要約 CoreDataのベースはRDBMS。データベース界隈の知識をCoreDataでの開発に活かそう! Atomicity(原子性)を気にしよう! データのバックアップは超重要 どんな話? CoreDataとACID from Tadahisa Motooka デモで使ったサンプルアプリのソースコードは、こちら(Github) ViewController.mの途中にある「#define WITHOUT_ATOMICITY」の行をコメントアウトしたりしなかったりして、挙動の変化をお楽しみ下さい。 なぜ、この話をしようと思ったのか 2013年の前半頃だったと思いますが、AustraliaのAppStoreでランキング上位に居たアプリの中で、Monopoly(モノポリー)というゲームがありました。ご存知の方も
Australiaに来てiPhoneを利用している人の一部から、「身に覚えの無い国際SMS送信があって、通信キャリアから請求されるんだけど、なんで?」という相談を頂くことがあります。個人的な相談であることもあれば、職場で受ける相談のこともあります。 この記事では、このことについて簡単に解説をしておきたいと思います。 何が起きているのか iPhoneは、実際にSMSを送信しています。 何の為に送信しているかと言うと、 iMessage の認証 FaceTime の認証 の2つの目的のため、です。 ご存知のように、これら2つの機能は、電話番号による着信を可能としています。 ところが、この着信にあたっては、通常の電話回線ではなくてインターネットを経由することになるため、Appleのサーバの立場で考えれば、どのiPhoneにメッセージ等を投げれば良いのかわからなくなってしまうのです。 なので、電話
8月のとある土曜日に、IELTSという英語のテストを初受験してきました。 そして先日、採点結果を受け取りました。決して自慢できるようなスコアを取った訳ではありませんが、記事は堂々と書きます(キリッ IELTSとは このテストはTOEICとは違い、Listening, Reading, Writing, Speaking の4科目があり、各科目1点から9点まで0.5点刻みで評価されます。イギリスやオーストラリア等へ留学したり長期的に住んだりするには、このテストである程度のスコアを取る必要があります。 Australiaの場合、就労ビザ(457)を獲得するには4科目平均で 5.5 以上のスコアが必要であると言われています(もっとも、昔は英語要件は必須ではなかったのですが、今年の7月から厳格化されました)。永住権の申請であれば 7 とか 8 とかが必要になります。状況によっては4科目の平均点(O
Singletonと言えば、オブジェクト指向言語におけるデザインパターンの一つのことです。 とあるクラスのインスタンスが高々1個までしか存在しないことを保証するクラスのことを指します。 Singleton パターン - Wikipedia Singletonには重大な欠点があります。このWikipediaの記事でも指摘されているように、グローバル変数として利用することができてしまい、コードの保守性に問題を来すことがあるのです。 この問題点および解決策などについて詳しくは、2013年6月のCocoa勉強会関西における @kaniza さんの発表スライド ワタシはSingletonがキライだ を参考にされると良いでしょう。 しかし、上記のスライドの中で指摘されている通り、Singletonには誘惑があるのも事実。基本的に筆者はこの誘惑に負ける程度の人間です(小規模なソフトウェアを作る時は特に)
数日前に日本で話題になっていた「超高速開発」について記事を残したいと思います。ニュース記事 超高速開発はスクラッチ開発の3倍から10倍の開発効率が条件、競合するベンダ13社が利害を超えて「超高速開発コミュニティ」を設立 - Publickey の はてなブックマーク に寄せられたコメントを見る限り「食わず嫌い」な方が非常に多いように見受けられたので、これは体験談の需要は高そうだなと思い、書き始めた次第です。 ネタ記事を書いた直後に真面目な記事を書くのは、少し気が引けるものではありますが…。 私は2006年初頭から2012年初頭まで、インフォテリア社製の開発ツール「Asteria」を使用していました。この製品には冒頭で紹介した記事からもリンクが張られていますが、超高速開発を実現するためのツールの一つです。もちろん、私がAsteriaを使用していた頃は「超高速開発」などという言葉は見たことも聞
ウォーターフォール(Waterfall)型開発とは、まるで上流から下流に水が流れるが如く、上流から下流へ仕様書やプログラムなどの成果物を流していき、最終的なソフトウェア製品を完成させるという古典的な開発手法です。 長所としては 単純である ソフトウェア以外の産業においても同じ考え方が用いられることが多い 上流工程でミスってなければ良い成果を得やすい といったことが挙げられます。 ところが、この3つめの長所の前提となっている「上流工程でミスってなければ」の条件が極めて重くのしかかるのが現代のソフトウェア開発です。その原因としては 上流工程に携わる人間の技術力不足 上流工程に携わる人間の想像力不足 上流工程に携わる人間の権限不足(企業内で使う情報システムにほぼ限った話:理想的な情報システムを作ろうとしても他部署の了解が得られない、など) 上流工程での作業期間不足 下流工程に携わる人間が、上流工
Twitter上でよく流れてくる愚痴の一つに「謎プロトコル」というのがあります。 謎プロトコル(protocol:通信の手順)とは、企業間(場合によっては企業内)で機密情報をやり取りする際に、機密情報を暗号化されたzipファイルとして電子メールで送信し、その後でzipのパスワードを送信する、というものです。「暗号化されたzipファイル」は一例であって、他の暗号化方式や圧縮方式である場合もあります。パスワードを先に送信するケースもあります。 会社によっては、独自の方式で暗号化したデータを自己解凍の .exe で送信してくるところもありますね(パスワードは謎プロトコルに従って送られてくる)。そういう会社さんとはなるべく取引したくないものです。イマドキ .exe をメールで送りつけるなんてねぇ。まあこういう古巣を叩く発言も一種のブーメr(略 さて、日本企業の多くでこの謎プロトコルが採用されている
またもやMySQLで完全にハマったのでメモ。 症状 投げたクエリが、帰ってくる気配が無い。 process list を見ると、当該のクエリは "Copying to tmp table" と言っている。 当該クエリから ORDER BY 句を除いて実行すると、応答が無いのは同じだが、process listの表記が "Sending data" と言うようになる。 調査その1:tmp_table_sizeとmax_heap_table_size "Copying to tmp table" でググったときにまず出てくるのが、これらのパラメータを変更しましょう!という情報。 mysql - "Copying to tmp table" extremely slow - Database Administrators tmp data を格納する領域が十分でなければ、そりゃあcopyも莫大な
iOSで UITableView を利用するときのお話です。 タップされたセルにチェックマークを入れているつもりだったのですが、チェックマークが表示されませんでした。 コードは以下の通り。 ※関係性の薄いコードは省略しています。 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell* cell = nil; cell = [self tableView:tableView cellForRowAtIndexPath:indexPath]; cell.accessoryType = UITableViewCellAccessoryCheckmark; } ここで呼び出してる UITableViewDataSource の tab
iOSの開発中に、サブクラス化によって拡張したUI部品をStoryBoardsに適用しようとしたところ、表題のエラーに遭遇しました。エラーとは言ってもappがクラッシュする訳ではなく、実行時にログが出力されるのと、標準のUI部品が利用されてしまう、という状況に陥っただけですが。 調べてみると事例は多くあるようで、最も参考になる情報はStackOverflowの cocoa - "Unknown class <MyClass> in Interface Builder file" error at runtime - Stack Overflow でしょうか。解決策としてはmain関数やApplicationDelegateの初期化処理時などに [MyClass class]; などを実行してあげることで強制的にクラスをロードしてあげる、というものが挙げられています。なんだかJavaのJDB
iOS5から Storyboards が導入され、それと同時にStaticCellsが登場しました。「試しに」StaticCellsを利用することはありましたが、分からない事も多く、本気で使うのはためらっていました。この記事ではStaticCellsを本気で使うために必要なものなどを紹介したいと思います。 What's StaticCells ? 多くの方はiOSの開発を始めたばかりの頃に「InterfaceBuilder上で全てのセルの設定を行いたいのに、セルはコードからしか作れない!」と思われたことがあるでしょう。StoryboardsのStaticCellsが、この願望への答えになります。次に挙げるような特性を持ちます。 StaticCellsを使うメリット IB上でほぼ全てのセル設定を行うことができる 書くコードの量は少なくなる(ことが多い) StaticCellsでできないこと/
次のページ
このページを最初にブックマークしてみませんか?
『職業プログラマの休日出勤』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く