趣味のプログラミングと仕事でのプログラミングの違いについて書いてみたいと思います。 仕事でのプログラミングは「対価をもらってプログラムを作る」ことです。受託開発でも製品開発でも同じことです。受託開発の...
今日は、1年以上試行錯誤を繰り返して開発を続けてきた共同開発製品の、高性能版の性能評価を行ってきました。高速化に関してはここに簡単に書いてあります。社内での確認では要求性能を超えていたのですが、高価な...
今日、社内で議論していた際に話題になったことなのですが、「もともとできる人しか採用しないのか?あるいは、できない人でも採用して教育するのか?」という話がありました。 とても難しい問題なのですが、ソフト...
ネットワークプログラミングの仕事を長年してきましたが、ネットワークインターフェースが1Gbpsまではプログラム側の速度が追いつかないということは基本的にはあまりありませんでした。もちろん、無駄な処理を...
今週中に技術的に目処をつけなければならないプログラミングの仕事があり、しかもかなりの難題だったのですが、今日、ある程度結果が出せホッとしてブログを書いているところです。 ↑朝一番にパワーを注入! 私の...
私としては珍しく使いこなしネタ(?)です。 あるシステムの開発で、非常に多数のデータを扱う必要があり、当初は階層型ディレクトリにファイルを配置して管理していたのですが、あまりの高負荷要件のため、ファイ...
システム開発をしていて、ファイルの排他を行う必要があることは良くあるのですが、何を使ってロックするかは意外と悩むものです。UNIX系ですと、 ・lockf(),fcntl()・flock()・open...
今日は午前中1件、午後2件社外での打ち合わせで、その間の移動や空き時間はできるだけ歩いていたのですが、かなり暑くて汗をかいた感じでした。いずれの打ち合わせも実のあるもので満足です! さて、そのうちの一...
今日は大学院の若者が来社してくれました。知り合いの方のところを会社訪問した際に、「こんな変わった会社も見ておくといい」と紹介してくれた感じです。もちろんその学生さんのことを書くことはできませんので、私...
UNIX系OSでは、ファイル・ソケットなどを扱う際に、ディスクリプタという識別子を使います。open()、socket()、accept()などの戻り値はディスクリプタです。これらのシステムコールはエ...
今週も忙しい一週間でした。特に私が自分で担当している、ProDHCP関連の、構築・テスト・説明会・切り替えが今週来週という案件と、今日が納期のカスタマイズ案件が山場でした。もちろん、それだけではなく、...
プログラミングの仕事をしていると、頭をフル回転させながら集中して作業をしたいときがあります。それほど頻度は高くないと思うのですが、重要な作業を行うときには集中できるかどうかが結果に大きく影響します。 ...
システムの開発というものは、企画・構想から設計・プログラミングを経て世の中にリリースされるわけですが、 楽しさ企画・構想 > 設計 > プログラミング という感じでしょう。労力は逆でしょうか。 さて、...
当社では、IT関連製品を開発し、リリースする前に、まず社内で自分たちが使う、ということを大抵行います。まあ、当然といえば当然です。自分たちが安心して業務に使えないようなものを販売することはできませんの...
久しぶりにネットワークプログラミングネタで。 TCP/IPをソケットインターフェースで使う際に、通信相手側が切断したかどうかはrecv()で受信したときにゼロが戻ることで判断するのは誰もが知っているこ...
ずっと稼働し続けないとならないプログラムの開発は、使うときだけ起動するプログラムに比べて数段難易度が高くなります。 私の得意分野出ある、ネットワークプログラミングでは、ほとんどのプログラムがそれに相当...
今日はある共同開発製品の負荷試験などを行っていましたが、ホストが他のプログラムにより高負荷状態になったときの挙動も確認しておこうと思い、64スレッドで無限ループし、ルートを計算させ続けるというバカみた...
あるシステムで、ファイルをZIPで圧縮する仕組みを作っていました。ZIPで圧縮する処理はLinuxで行うのですが、解凍するのはWindowsがメインということで、結構面倒なのです。。 まず、文字コード...
どうも先週風邪をひいてから頭痛が続いている気がするので、柔らかい話題でも。。 まず、プログラマーという仕事は、狭義では「プログラムを書く人」だと思いますが、私の考えるプログラマーは、「プログラムを作る...
昨日、徹夜で現場作業・健康ランドなどでご一緒した方と、車で都内に戻る際に話していた内容なのですが、「プログラマーって、技術力が高い人、あるいは、知識が豊富な人ってたくさんいる気がするけど、本当に作り上...
「かっこいいソースコードより、理解しやすいソースコード」でも書いていますが、ソースコードの格好よさなど、ユーザは全く知ることができないものです。格好いいソースコードなど、単なる自己満足と言い切っても良...
永井さんの「100円のコーラを1000円で売る方法②」では、「弱者は差別化を!」と書いてあります。「得意分野で勝負」「固有技術で勝負」ということを、2007年に著書「プログラミングでメシが食えるか!?...
今日は朝9時には出社し、ある製品の動作検証を行いました。私が作るネットワークプログラムはパケットを加工したりすることによって通信の流れを制御するようなものが多く、検証がかなり大変なのです。。 PCが2...
ちょうどある大規模(?)受託開発の一部を私が担当していて、依頼側の結合試験が始まり、「不具合票」のやり取りが始まりました。不具合票というのは、試験を行って問題が見つかった場合に試験担当者から発行され、...
先週まで外出・出張続きだったのですが、今週はなぜかお声がかからず、プログラミングの仕事がとても捗りました。お声がかからないのが良い状態かどうかはまた別の話ですが、トラブルなどで呼び出されないという点で...
昨晩の徹夜の後、7時頃帰宅し、シャワーを浴びて一眠り・・・でも、仕事のことも気になり11時には起きて、自宅で仕事をしてました。 ある請負の開発仕事の、私が担当している部分は、長年いろいろなバリエーショ...
今週はなぜか3日連続で外出せずに仕事ができているので、プログラミング仕事が実に捗ります。今週は3つ同時に進めている感じですが、結構片付きつつあります。 今日の午後にやっていたのは、来週バンコクに持って...
ソフト開発事業、とくに、ソフト製品開発販売事業をしていると、ソフトウェアの保守性はとても重要です。「かっこいいソースコードより、理解しやすいソースコード」で書いたように、ソースコードが理解しすいかどう...
今日は午前中、ある製品のOEM供給に関しての打ち合わせに行き、お付き合いの長い方々との楽しいミーティングで、本題より雑談の方が多いくらいでしたが、良い方向に話しが発展しそうで楽しみ・・・と思ったら、次...
このところ愚痴っぽい記事や、説教臭い記事が続いてますが、お盆休みも取れずに、さらに徹夜をしたりなんだりで、こんな時に柔らかい記事が書けるほど器用ではないので、地のままで。。 あるプロジェクトで、とにか...
今日は朝から社内ミーティングをこなし、午後はある製品の機能追加を少し進めたりした後、夜にはProDHCPの客先へ向かい、セットアップ&動作検証。そして、そのあと徹夜で別のシステムのProDHCPのリリ...
仕事でプログラムを作るとき、特に、受託開発ではなく、製品などを開発するとき、さらに言えば、ネットワークシステムの製品を開発するときに、私がとても大事だと考えていることを書いてみます。 それは、「本番で...
趣味でプログラミングを楽しんでいる場合はどうでも良いのですが、仕事でのプログラミングは、メンテナンス性がとても大事です。 プログラムのメンテナンス性というと、「立派なドキュメント」「ソースコードに豊富...
お盆休み期間のおかげで、電話やメールのやりとりも少なく、こういうときは会社にいてもプログラミングの仕事が捗ります。この時期はこうなると予想していたので、いわゆる「つまらないプログラミング」の仕事をやろ...
飛び回りすぎでプログラミングの仕事が溜まっているため、お盆休みは全く取れそうもないのですが、今日は久しぶりに1日会社で仕事ができましたので(昨日もほぼいましたが)、山積みのプログラミング仕事のうち、2...
今日はProDHCPの構築で、あるお客さんのところに行って作業をしてきました。ProDHCP本体だけなら私一人で行くことが多いのですが、今回は設定の連携などの特注部分もあり、そのあたりは完全にほかの方...
プログラマー社長である私は、今でもプログラミングの仕事を実際に行っており、ProDHCPをはじめとして、数々の製品はもちろん、特注品の開発もしています。最近はさすがにじっくりプログラミングをしている時...
私が普段仕事で使っているPCはMacBookAirの11インチモデルです。WEBで調べ物をするのも、メールも、各種ドキュメントの作成なども基本的には全てMacOSで作業していますし、プログラミングもM...
今日は久しぶりに1日会社にいました。開発仕事でたまっているものがたくさんある中、昨日のクーポンの集い(?)で、急遽7月頭にバンコクに出張することになり、それまでにある製品を仕上げなければ、ということで...
UNIX系OSでプログラミングをしていて、性能面で悩んだときには、gprofというプロファイラを使うと、簡単にプログラム中の関数呼び出し回数や関数実行時間などを測定することができます。gccのオプショ...
このブログのタイトルは、「プログラマー社長のブログ」ですから、私がプログラムを作らなくなったらタイトルを変えないとならないと思っています。が、いまだに・・・というより、ますますプログラムを作る量が増え...
Linuxで、リンクレイヤーで送受信を行う場合、PF_PACKETというLinux独自の仕組みを使い、簡単にプログラミングができます。BSDではBPFという仕組みを使ったり、SolarisだとDLPI...
このところ、ProDHCPの商談が平行でたくさん(?)進んでいて、取引面での相談や、さらに、こんな使い方はできないかと相談がきていたり、高速ネットワーク向けの共同開発の仕事ではまっていたり、さらには、...
今日も、ある開発案件で、10Gイーサーでの検証を行ってきました。10Gイーサーで大変だという話題などは、先日も少し書きましたが、・Linuxでの最大スレッド数・チェックサム計算の高速化:情報発信すると...
今日も昨日に続き、高性能ハード・ネットワーク環境で試行錯誤していました。今日、まずクリアーしたかったのが、スレッド数の壁です。多数のTCP/IPコネクションを扱うプログラムの場合、作りやすさから、スレ...
今日も一日外出で、時間の隙間がたっぷりできてしまったので、仕事をしながらブログも書いているところで、例によってあまり内容が濃くないのですが・・・ 年度末で、多くの仕事が納品となります。今も実は納品に必...
3つのプログラミング仕事を同時にやっているところに、さらに1つ仕事が追加となり、4つ同時になってしまったのですが、こんな時に大事なのは、優先順位の付け方です。来た順に進めれば良いというものではありませ...
主に、プログラムの受託開発や常駐での開発作業に関する話題です。ソフト開発の仕事では、プログラムだけ作って納品しておしまい、という仕事は非常に希で、多くの場合、ドキュメントも納品することになります。ドキ...
今日は、午前中は社内ミーティングを3つ行い、午後は集中してプログラミングをしていました。13時から18時くらいで、C言語のソース約1000行を書いた感じです。 今日作ったものは、今日の13時に作り始め...
「風邪で会社を休むと仕事が捗る!?」の反対の内容です・・・ 今日は朝からひたすら「高性能DHCPサーバ:ProDHCP」の機能追加を行っていました。2月中に対応して欲しいと依頼を受けていた機能追加を、...
» このブログのTOP
» オルタナティブ・ブログTOP