IT/Computer

IT/Computer

rbenvをインストールする

rbenvは、複数のバージョンのrubyをインストールできるだけでなく、ディレクトリーごとにrubyのバージョンを切り替えることができるといったかなり便利な機能を兼ねそろえたruby管理ツールである。debやrpmなどのパッケージ管理ツール...
C/C++

POH6六村リオのコーヒー問題でありがちな間違い

今回は古い記事を読み直して、PaizaオンラインハッカソンVol.6に参加してみた(六村リオミッション, C++)とPaizaオンラインハッカソンVol.6に参加してみた(六村リオミッション, C言語)を読み直してみたい。というのも、この問...
IT/Computer

新しい仕様について行けないとすぐに置いていかれる

今日のアプリ/システム開発では、OS/端末及びフレームワークの仕様は急速に変化しており、それに対応できない人はたちまち置いてかれるだろう。これはスマートフォンアプリやウェブアプリはいうまでもなく、レガシーと言われているメインフレームでさえ例...
IT/Computer

GmailのメールアドレスとUNIXシステム系のユーザー名の制約と

Gmailでは登録したメールアドレスとは別に、ユーザー名部分の任意の箇所ににピリオドを付ける、あるいは「+abc」のように+と文字列を加えたものについても、実際には登録したメールアドレスに届くという隠し機能がある。これは『1つのGmailア...
Diary

最近Linuxにあまり触れていない

最近、いろいろ仕事などで忙しく、なかなかGNU/Linuxシステムに触れる機会が大幅に少なくなってしまった。一応、それに似たような環境自体は使っているが。
Diary

軽すぎるのはちょっと・・・

『日本の常識は世界の非常識!? 軽いだけのノートPCが海外で売れない理由』(ITmedia)の記事を読んでいて、やはりPCやスマートフォンを含めた携帯電話などにおいて、いたずらに軽いというのは却って嫌われるといったことなのだろう。そういう意...
IT/Computer

複数人での開発の難しさ

システムの開発では基本的に複数人の開発者が分担して行う。特に規模が大きくなればなるほど人員は増える。しかしながら、これは決して簡単なこととは言えない。というのは、人数が多い状態での開発には特有の難しさがあるからである。
IT/Computer

GUIプログラミングとマルチスレッド

GUIプログラミングは、そのシーンにもよるが、マルチスレッドを意識する必要があるケースが往々にしてあり、なおかつ適切に使われていないと問題を引き起こす。しかもそれが適切に使われているかどうかは状況によって異なることさえありうるので、非常に難...
IT/Computer

bashはよく使われている

bashは今日ではUNIX系OSでよく使われているシェルになっている。例えば、GNU/LinuxシステムやmacOSではデフォルトのシェルとして使われているほどである。これは、GNUプロジェクトで作られたシェルで、GNU GPLに従えば、誰...
C/C++

C++のautoはちょっと違う気がする

C++では型推論を使う型として、autoが使われているが、これは個人的にはなんだか悪手だなと考えている面がある。というのは、他の言語でよくある変数宣言と微妙に違うこと、なおかつC言語と競合する書き方になっているからである。
Bug

Twitter iOS版のリプライの@消えは意図せぬ事故だった

12月9日(日本時間)のiOS版Twitterの最新バージョンで、返信するときの「@アカウント名」が表示されなくなるという不具合があった(現在は修正済み)。
IT/Computer

変数・関数の命名規則は一貫性を持たせる必要がある

アプリやシステムの開発を行っていると、命名規則でよく揉める。場合によってはそれで開発全体が停滞するといったことすらありえる。これはかなりの害悪であるため、それを防ぐことに注力しなければならない。ここでは私なりの対処法を書いてみたい。
IT/Computer

Touch Bar付きMacBook ProにはwatchOSが含まれている?

一部モデルを除いたMacBookシリーズも、ついにTouch Barとして、ディスプレイ側ではなく、キーボード側のファンクションキーとして使われていた部分にタッチパネルが搭載された。また、iOSで先行して搭載されたTouch IDにも対応し...
IT/Computer

もうSubversionには戻れない

現在参画しているプロジェクトではGitを使っており、そこでバージョン管理を行っているが、Gitなどの分散型バージョン管理システムを使っていると、もうSubversionには戻れないと感じている。
IT/Computer

BitKeeperもフリーソフトウェアになっていた

私の知らないうちに一時期分散型バージョン管理システムとして有名だったBitKeeperがフリーソフトウェアになっていた。
IT/Computer

SwiftのInt型について

Swiftプログラミング言語であるため、当然ながら変数や関数といったものが使われている。その中で当たり前ではあるが、変数の型がある。とはいえ、C言語やC++とは違う場合があるので、そこは気をつけるべきである。
IT/Computer

プルリクエストを作ったならリベースやアメンドはすべきではない

GitHubなどのホスティングサービスでは、実際に変更をマージする前に変更をレビュー、必要に応じてコメントを入れるという「プルリクエスト」機能が提供されているものも少ない。とはいえ、プルリクエストにおいて、個人的に極力やめてほしいことがある...
IT/Computer

Swiftではswitch文のbreakは基本的に不要

C言語やその系統の言語では、多くの場合、switch文を使う場合、各caseの最後には意図的にフォールスルーを行う場合を除けばbreak文を付与しなければならなかった。というのは、C言語においては、各caseはラベルとしての意味合いしかなか...
IT/Computer

利用者の多いシステムは攻撃者のターゲットになりやすい

「何を当たり前」というようなことだが、利用者の多いシステムは攻撃者の標的になりやすい。例えば、PCのOSとして有名なWindowsでは毎月のように脆弱性が報告されて、修正パッチが提供されている。macOSもiOSもAndroidも然りである...
IT/Computer

1バイト=8ビットはデファクトスタンダードだった

今日のコンピューターにおいては、ほぼ全てのコンピューターアーキテクチャーとして「1バイト=8ビット」という図式が成立しているが、実はそれは、以前はデファクトスタンダードであって、本来は8ビット以外のものも含めた文字を表す単位が1バイトになっ...