torum

主に開発中のアプリにまつわる技術系の事。

WinUI3 を触ってみた結果>5分でブチ切れた話し

新しく登場したUIフレームワーク WinUI3(WinUI 3 - Project Reunion 0.8 Preview)を使って、何かデスクトップアプリを作るか、既存のWPFアプリをWinUI 3に移植できるか、XAMLのUIデザインの自由度はどんなものか、具体的に評価する為に実際に触ってみたのですが・・・5分でブチ切れそうになりました。プレビュー版とはいえ、

WinUI3では、ウィンドウの位置とサイズを指定する事ができない、とか一体なにを考えてんのか・・・

もしかしてこれはUWPの悪い所の名残ではあるまいかと。Windows8の全画面スタイル「メトロ」と「ユニバーサルアプリのUWP」というMicrosoftの歴史上最悪の黒歴史を引きずっていますね。WinUI 3の起源はUWPのUIレイヤーなのは分かっていたけれど、こんな所まで影響が出てくるとは・・・

続きを読む

最近、英語圏で日本語由来のプロジェクト名が増えた気がする

元々、日本語の単語が英語になるケースは結構あって、「津波Tsunami)」とか震災前から使われてたし、「絵文字(Emoji)」も10年ぐらい?前から普通に使われています。(注1)

昨今の状況はそういうのとはちょっと違う、ソフトウェアとかIT関連のプロジェクトで日本語名を使う、流行りというかトレンドというか、一種の「波」を感じます。

今日一日見かけただけでも、 

続きを読む

なぜ自分はアプリをオープンソースで作るのか

基本的に、自分が個人で作ったアプリ(で今もメンテし続けているもの)は、オープンソースとして全てGitHubで公開しています。

オープンソースにするという事は、誰もがソースを見る事が出来て、尚且つコピーして改変して使える、という事です。日本ではプロダクトとしてのアプリをオープンソースとして公開している例はごくごく限られています。ライブラリーなどのツールを公開しているのが関の山といった所でしょう。コレと言って日本の代表的なオープンソースのアプリは思い浮かびません。

なぜゆえに自分はそんな誰もが利用できるようにソースを公開しているのか。別に参考になるようなコードでもなく、オレオレ仕様の糞コードを晒してそんなに恥をかきたいのか。と言われそうです。実際の所、糞コード遠からずですがw

一般的な理由としては、オープンソースで開発する事によって、世界中の他の開発者と共同でアプリの改善を図れる、という利点が挙げられます。実際、自分が作ったアプリにも何件もバグ報告や要望などを頂いたり、他の開発者の方から成果物を頂いてアプリに取り込んだりしています。

しかし、自分にとってはそれだけが主な理由ではないのです。そもそも自分がアプリを開発している動機は「自分が使いたいから作る」ということですが、やはりソフトウェアというものは、使ってもらってなんぼ、という所もあります。使ってもらうには色々とメンテが必要で、メンテナンスを怠って放置していると、アプリはOSや言語やランタイムの更新など、環境の変化によって動かなくなる事もあります。ある意味、生き物のような側面もあるのです。

続きを読む

なぜ日本は「デジタル後進国」なのか

IT・デジタルの広範な分野で課題が噴出している日本国内の状況を「デジタル後進国と言わざるをえない」と指摘し、危機感をあらわにした

日本は「デジタル後進国と言わざるをえない」、インテルが国内教育支援へ推進力 | マイナビニュース

そりゃ、日本国内という小さな市場向けにアメリカ発のサービスのモノマネばかり続けているからですよ。あと、いまだにITゼネコンとかいう日本独自の悪習がのさばっているのも大きな理由でしょう。それに、一般からしたら、プログラマなんて「アニメオタクで秋葉原に入り浸るキモい奴ら」扱いしかされてこなかったから人材も集まらないし。そもそもタイプライターの歴史が無い一定年齢層以上の日本人のキーボード苦手意識から始まって、僻みからかパソコン関係を馬鹿にしてきた年寄り達・・・

続きを読む

自分がモバイルアプリを開発しない理由

今まで何度か食指を伸ばしてみたのだけども、結局モバイルのアプリは一つも作っていない事に気が付きました。基本、アプリは自分が使いたいから作る、というスタンスなのですが・・

1.携帯をあまり使わない

身も蓋も無い話しかもしれませんが、普段パソコンをメインに使っていると、携帯を触る必要性がありません。自分があまり使わないと、モバイルのアプリを使いたいという必要性も欲求も感じないのです。

パソコンなんていらない、携帯だけで十分だという事を言う人は(コロナ禍前には結構いた)、煽っているだけか、実社会を知らない人か、パソコンを使った事が無い若い人がいきっているだけのように思います。

続きを読む

なぜ今フィードリーダーなのか

Web Publishing/CMS APIクライアント兼 Feed Reader のアプリを作っている訳ですが・・・何故にいまさらFeed Readerを作るの?って思われるかもしれません。

torum.hatenablog.com

 

一つには、Twitterのような「今」を追いかけるのは疲れた、という事です。ツイッターのタイムラインはどんどん新しいのが流れてきて、あっという間に消え去ります。それこそ24時間(英語圏のをフォローしていると、英語圏と日本語圏で時差があるため)張り付いていないと追い付いていけない。

一方で、Feedはだいたい「今日一日」を追いかける感じです。Feedリーダーを立ち上げるのは一日一回で十分。見たい時に見ればOK。常に立ち上げている必要もなければ、ピコンピコン鳴って集中を妨げられることもありません。

もう一つには、大昔(2003年頃?)に作った事があるのだけれども(もう使わなくなって長い)、今風に作り直したかった、というのがあります。

新たに作り直す上で課題だったのが、内蔵ブラウザのMSHTMLとかIEコンポーネントがもうサポートされなくなるのが分かっていた、という事です。MSの方向性も不透明で、独自のEdgeブラウザを出したり、すぐ辞めたり、と。

そんなMSも、独自ブラウザを捨てて、Chromeと同じエンジンを使ったEdgeを出し、そのEdgeをコンポーネントとして利用できるようにしたWebView2を去年の終わり頃にリリースした事によって、晴れて問題がクリアされました。

最後に、FeedやブログやCMSAPIと言った技術が登場してからもうかれこれ20年ぐらい経ちますが、それが今日まで生き残っているという事は、自分の時間を投資してアプリを開発する価値もあるのではないか、と思った次第です。

まぁなんだかんだ言い訳を言っていますが、要するに、自分が使いたいから作る、というだけです。

「Win32」と「32/64bit」アプリを混同しないでほしい・・・

Win32 アプリ =  .NETフレームワーク/ランタイムを使わずにWin32 APIを直に叩くアプリ。普通に64bitアプリも作れる。

なので、「Win32 API」って聞いて「未だに32ビットなの?」って叩いたり煽ったりしている(Mac系?Web系?の)人を散見すると、イラっとするというか、萎える。Win32/64 APIとかWindows APIって書くのが面倒だから32は昔からの通称・慣習かと。

Win32/64 APIは今のWindowsの基盤なので、低レベル(システムに近い)事をしようとすると、今でも必須。非.NET系の言語(C++とかDelphiとか)でも使う。狭義の「Windowsネイティブ」。これを無くせ、というのはWindowsOSを無くせ、と言っているに近い。

因みに、Windowsでは32bit版のアプリも、64bit上のWindowsで問題なく動くし(WoW64)、比較しても実用上パフォーマンスの遜色は全くない。なので、あえて過去の資産(32bit製限定で作られたの過去のアプリ)を捨ててまでして、32bitのサポートを切り捨てる必要性も無いのです。

未だに20年前に作ったアプリが普通に動くWindows・・・これは他のOSではなかなか出来ない。それなりに評価されるべきでしょう。