「java」を含む日記 RSS

はてなキーワード: javaとは

2014-09-03

http://anond.hatelabo.jp/20140902163444

組み込み系の場合

とにかくC言語は抑えとけってことだ

2014-09-02

http://anond.hatelabo.jp/20140902161559

いや、bashと組み合わせるなら、それこそrubyとかperlpythonが簡単だよ。

コマンドの実行結果取得だってrubyは簡単。

result = `ls -l`

お前がbashPHPJavaしか知らなくて、新しいこと覚えたくないのは勝手だけど、人に薦めるなよ。

目的別、プログラムを始めたい人にお勧め言語

初心者が学ぶプログラミング言語について

意見を聞かせて欲しい。

今更Perlを始める理由なんてないと言われて久しい。

なるほど確かに教養としてPerlは知っておいた方が良いが、より優れた言語がある。

そして、推される筆頭はRubyだろうか。

そう思ってきた。

が、どうしてもPerlより良いと思える言語がない。

ブラウザで使うなら選択の余地はないので、あの言語は除外しよう。

で、未経験者でも聞いたことの有りそうなこのあたりはこの辺り。

C, C++, C#JavaPerlPHPRubyPython

Hello, World!を見比べたら

「publicてなに?staticってなに?voidってなに? mainはメインなんだろうけど []ってなに?argsってなに?なんでint mainstr mainとかあかんの?たまに*印ついてるのなに?全部意味分からんし解説もなしにおまじないって言って飛ばしてるケースも多いしなんか詳しく言ってるっぽいのもあるけどその分かる人だけが分かるような言い方やめて私のライフはもう0よ!なんで一言「やぁ!」っていうのにどれだけのことを理解せなあかんのよ!」

となるのでスクリプト言語が残るだろう。

Webしか使わない言語関数名もキモイから除外しておくと、PerlRubyPythonの三択となる。

私がPerlを選んだ当時は、Ruby信者が先鋭的で他人攻撃しないと気が済まないという風評を目にしたので外した。

そしてPythonはまだ日本では弱いらしい一方、PerlはてなmixiAmazonでまで使われていて、

恰幅のいいヒゲおっさん他、情報を発信する人の量・質ともに非常に高い様子だったから、Perlを選んだ。

ここから本題。

あれから数年。

新たなものを学ぼうと思い、Pythonは昔バージョンの違いでなかなか動かせず、またPython2と3で随分変わってしまうようなので、

Rubyを始めてみようと思ったんだ。

Next Perlというだけあって馴染みやすい書き方も多く、洗練されてるなってすごく関心した。

マ・クベでなくてもキリシア様に届けたくなる言語だ。

ところで、学ぶには目的必要である

学ぶこと自体目的なので、何をしたいって、何もないので、とりあえずPerlでやってることを全て移植してみることから始めた。

Net::FTPSSL

 うごかない。

 まぁそんなこともあるよね。

Net::LDAP

 うごかない。

 まぁPerlでもActive Directoryに繋ぐのは随分苦労したしな・・・

WWW::Mechanize:

 うごかない。

 CentOS 6に入ってるRubyではバージョンが違って動かないって・・・

結論Rubyでは俺の仕事は何もできない。

上手くいかないのは仕方ないよ。でもmechanize、昔動いてたのに今動かないって何なの?

それにgemsのサイト、もうちょっと何とかならんの?

モジュールクリックしたら作者のサイトに飛ぶし、マニュアルの書き方も作者次第でバラバラ…読みづらい…

CPANみたいにちゃんとやってよ。

ネット上の情報バージョンが違って動かないことも多々あるようだ。Perlなら5.8で書いたものが5.20になっても当たり前に動くよ?

CentOS 6とFedora 20のそれぞれで出てくるエラーも違うし、Perl下地があっても正直キツイ

洗練されていいな!って思った分余計に残念だ。

こんなバージョン違えば動かなくて当たり前で、Rail抜いたら情報も半減するような言語、本当に初心者向けでいいの?

使える人が使える用途で使えるバージョンを選んで使うとステキ。そんなん初心者向けじゃねぇぇぇっぇ。

いや、言語の学びやすさとこれとは別問題なんだろうけど、Perlの安定度と情報の量・質・多彩さで比較になってない。

言語のものRubyの方が上でも、使えない道具は劣る道具じゃんよ。

身の回りの雑多な仕事を片付ける」って用途の方が特殊なんだろうか。

Rubyは良い言語だって思ってた。しかし、分からなくなってしまった。

教えてくれ。

キリシア様に届けていい言語はなんなんだ?

  • 追記

s/キリシア/キシリア/

すまない、ちょっと距離と速度を確認して全門斉射してくる。

  • 追記2

一晩経ってたくさんブクマ、見てくれてありがとう

でもたいした議論もないということは、概ね合ってるのだろうか。

あと、perldocの情報量もすごいと思う。ある程度Perlが使えるようになってからじゃないと読むのはキツイけど、

言語書籍じゃなしにあれだけ詳しく書かれたものってあるかな

kiyo_hiko型が動的なのが耐えられなくて結局Java

冗長になったので削除したけど → 「Perlで学ぶ欠点は型の意識が非常に希薄なままになること」

これホントに身につかなかった。静的型付け言語に行こうとして盛大に躓く。

2014-08-30

http://anond.hatelabo.jp/20140830162054

RubyはクソJava最強」って言ってる人はRubyがよく使われてるWeb開発においてRubyは「クソ」でJavaが「最強」と言ってるんだろうし、「Cみたいな言語が普及したおかげでネットセキュリティーホールだらけになった。あんなクソな言語は使うのをやめて現代的な言語システム記述しよう」みたいなことを言ってる人は、現在Cが使われてる分野においてクソって言ってるわけで、そういう論争をしてるところに「言語適材適所で使え」みたいなことを言っても話が噛みあってない感じしかしない。

http://anond.hatelabo.jp/20140830162054

言語や開発環境ってケースバイケースで使い分けたり

もし選べる状況にあれば、自分の良いと思うものを使うっていう

ただそれだけの話じゃないんですか?

それが仕事現場だとここの開発はVB、ここの開発はJavaなど、顧客との折衝によって使う言語強制させられるんだなこれが。

それで「この開発は絶対○○の方がいいだろー」って、まるでボールペン書道をさせられるみたいなもどかしい気持ちになって、結果嫌悪感だけを募らせて最終的に「××はクソ」って状態になってる気がする。

2014-08-26

パソコンフリーズの原因がWindows updateのせいだと判明してからやった事

OS:Windows7 Home Premium 64bit

CPU:Core i5

メモリ:8GB(増設前4GB)

HDD:750GB

グラボ:オンボ

サウンド:DAAM SD

7月終わりにアップデートしてから不具合が生じて一時期は強制シャットダウンしたりセーフモード起動の繰り返しだった。

8月初めに修正パッチ含むウィンドウアップデートをした。その時8月13日にアプデ禁止されたファイルインストールしてない。

そこからはずっと不具合連発で起動直後「スタートメニュー」が表示されなくなって、マウスは動くものの、ダブルクリックのちフリーズして画面が白くなりフリーズ

コマンドブロンプトからスタートアップ修復やサービス等々の停止・無効化システム復元などを繰り返してひとまず音声が出る程度にまで回復

しかし、システム復元などは失敗し、インターネットを開くと高確率フリーズフリーズしなくても一定時間経つとフリーズ強制終了

その後7月アプデ前後インストールしたJAVAなどのブラウザスクリプトを続々ダウングレードしたりしたが変わらなかった。

また、PCSX2やPCゲーム(CoDなど)も起動直後にフリーズが頻発するようになった。

原因はこれじゃない。

そう思った時、一つのことが頭に浮かんだ。

アップデートファイルだけはまだ何もしてない。

ということで7月10日アプデ分までを残して全てのウィンドウアップデートファイル(適正化ファイル)を軒並みアンインストールした。

そうすると、今のところフリーズは起こってない。

恐らくウィンドウアップデートでの不具合が今回の頻発するフリーズの原因だったのだろう。

とりあえず自動アプデを無効にし、システム構成も無事終わらせ胸を撫で下ろすに至った。

今の所、ゲームネット以外は機能停止無効化してるのでひとまず大丈夫か。

追記:指摘thx修正した。WとCとV、Fはキーボードの接触不良で押せてない時があります

2014-08-20

AS/400に対するスキルは役立つのか?

http://harvest-moon.hatenablog.com/entry/2014/08/20/001259

これって、もしかすると転職の穴場的存在かもしれん。

JavaPHPなど若造に任せて、高給取りの年寄りには最適なスキルだ。

だが、どうやって身につけたらいいんだ?

2014-08-15

The history of mobile computer

1989年東芝が発売したDynabook J-3100SSが世界最初ノートパソコンである。すぐにNECが続き、1990年代になると、IBMとアップルが参入、東芝アップル、IBMが次々に新機能を加え、1995年頃には、現在ノートパソコン標準的機能の原型が完成した。

1990年代中頃から国産各社が参入、先行各社は新機種シリーズを展開した。また、インターネットが普及し、モバイルコンピューティングが盛んになった。それにより、ノートパソコンが急速に使われるようになり、2000年にはノートパソコン出荷台数デスクトップパソコンを追い越した。

2000年代を通して、小型化、軽量化、高機能化、省電力化が進んだ。2000年代末には、iPad代表される新しい形態携帯機器が出現し、ノートパソコンと競合するようになってきた。

とかくパソコンの分野では日本企業の低迷が指摘されるが、ノートパソコンの分野では、東芝代表される日本企業業界を先導したきたのである。少なくとも1990年代まではそうであった。ところが、2000年代になると、ノートパソコンパソコンの主流になったのに、日本企業の優位性は低下してきた。それを挽回する手段を講じるべきなのか、あるいは陳腐化したこの分野は中国等に任せて、日本は新分野を開拓すべきなのだろうか。

1980年代中頃:ラップトップパソコン

ラップトップとは「膝の上」の意味であるが、デスクトップパソコンより小さく、ノートパソコンよりも大きいサイズパソコンを指す。携帯可能であるから、これを含めてノートパソコンということもあり、その境界は厳密なものではない。

1984年 NEC PC-8401A

1985年 東芝 T-1100 海外のみで発売

1986年 東芝 T-3100 日本ではJ-3100

1986年 NEC PC-98LT

(PC-8401Aのほうが早いのだが、電池フロッピーなどが外付けなため、一般にはT-1100が世界初で、PC-98LTがNEC初だとされている)。

T-1100の仕様を示す

・CPU:80C86(16Bits)、5MHz

メモリ:最大512KB

ディスプレイ:80文字×25行(640×240ドット)

・外部記憶:3.5インチFDD内蔵(720KB) 。ラップトップでは世界初のHDD内蔵

キーボード:83キーフルストローク

電池:ニッカド電池、8時間の動作可能

IBM-PC互換

サイズ:310(W)×300(D)×67(H),4kg

1980年代末:最初ノートパソコン

最初ノートパソコン1989年に、世界に先駆けて日本で出現した。

1989年 東芝 Dynabook J-3100SS

1989年 セイコーエプソン PC-286NOTE

1989年 NEC PC-9801N

発表はPC-286NOTEのほうが先だったが、出荷はJ-3100のほうが早く、しかもヒットしたので、一般的にJ-3100を最初ノートパソコンだとしている。なお、PC-9801Nはやや遅れて出荷されたが、これにより「ノートパソコン」という用語が広まったといわれている。

J-3100SSの仕様を示す

・CPU:80C86(16Bits)、5MHz

メモリ:最大3.5MB(標準1.5MB)

ディスプレイ:ELバックライト液晶

・外部記憶:3.5インチFDD内蔵(720KB/1.2MB)

電池:2.5時間使用可能なバッテリパック

・電源リジュー機能提供ジャストシステムATOK7のROM搭載 ・AT互換機

サイズ:310(W)×254(D)×44(H),2.7kg)

1990年代前半:IBM・アップルの参入

1990年代に入ると、IBMとアップルノートパソコンに参入した。1990年代前半の特徴のある機種を列挙する。1995年頃には、現在ノートパソコン標準的機能の原型が完成したといえよう。

1990年 東芝 DynaBook J-3100 SS02E 世界初のHDD搭載

1991年 NEC PC-9801NC 世界初のTFT液晶16色、TVチューナー

1991年 アップル PowerBook 170 世界初パームレストトラックボール

1991年 IBM PS/55note 5523-S IBM初のノート。VGA解像度640x480(他社は640x400だった)

1992年 東芝 DynaBook 486-XS 世界初のTFT液晶フルカラーVGA

1992年 東芝 DynaBook EZ ワープロ表計算などアプリケーションをROM内蔵

1992年 IBM ThinkPad 700C 当時最大級の10.4インチTFTカラー液晶世界初トラックポイント装備

1992年 IBM ThinkPad 220 世界初のサブノート。重さ 1kg、単三乾電池駆動

1994年 東芝 DynaBook SS433 世界初のFDD内蔵B5版サブノート

1994年 IBM ThinkPad 755 内蔵型CD-ROMドライブ搭載

1994年 アップル PowerBook 520 世界初トラックパッド採用

1990年代後半:国産各社のノートパソコン参入と普及

1990年後半には、国産各社がノートパソコン分野に参入、先行各社も新シリーズを展開して、現在でもポピュラーな機種名が出揃った。ノート型は、デスクトップ型に比べて割高であったが、モバイル環境での利用が盛んになったこと、オフィスや家庭での占有面積が小さいこから人気が高まり2000年にはノートパソコンデスクトップパソコン出荷台数を上回る状況になった。

1995年 富士通 FMV-BIBLO リチウム電池採用プレインストールソフト多数

1995年 シャープ Mebius CD-ROM内蔵

1996年 IBM ThinkPad 560 2kg以下の軽量

1996年 東芝 Libretto 20 世界最小・最軽量(840g)のミニノート

1997年 ソニー VAIO NOTE 505 B5サイズモバイルノート

1997年 パナソニック LetsNote AL-N2 光学トラックボール搭載

1997年 三菱電気 Pedion A4で当時画期的最軽量(1.45kg)最薄(18mm)

2000年代前半:小型化、軽量化、長動作時間化の競争

2000年代になると、パソコンの主流はノートパソコンになり、パソコンでの関心はノートパソコンが主になる。ノートパソコンは、本質的モバイル環境での利用である。そのための軽量化や小型化競争1990年代後半から活発であったが、2000年代になると、長時間充電せずに利用できること、立ち上がりの時間が短いこと、堅牢性や耐久性に優れていること、さらにはデザインへの要求など、多様な品質での競争になってきた。

筺体の軽量化

軽量な素材を用いながら堅牢性を高めるため、ハニカム構造など設計上の工夫が進んだ。

スリープ機能の高度化

パソコンを使用しない状態での省電力技術であるスリープ/スタンバイ機能は従来からあったが、インテルによるディープ・パワー・ダウン・テクノロジやASUSTeK ComputerによるExpress Gateなど、新方式が開発された。

SSD(Flash Solid State Drive)

SSDは、フラッシュメモリを発展させた記憶媒体で、HDD(磁気ディスク)と比較して、機械部分がないため、小型化、省電力化、高性能化が重要ノートパソコンに適している。しかし高価格である2004年から注目されるようになり、2000年代後半には高級機に採用されるようになった。

ノートパソコンの製造には、小型化や低電力化などの高度なな技術が求められので、日本企業に適した分野であった。ところが、低価格競争が進むのに伴い、台湾中国などで生産するようになった。それが、2000年前後から、現地企業技術向上により、現地企業生産だけでなく設計委託するようになり、独自のパソコン事業から撤退するようにもなってきた。そのため、日本国内生産している製品は、特に高度技術要求される小型の高機能パソコンに絞られるようになってきた。

2000年代後半:ノートパソコン多様化

2000年後半には、ノートパソコン多様化した。ディスプレイサイズ区分すると、次のようになる。

ディスプレイサイズ(インチ) 解像度 特徴

7 8 9 10 11 12 13 14 15 16 17

───┬─── ─┬─── ──┬──

│ ──┬──│──┬── │

│ │ │ │ ハイエンド 1920x1200 モバイル意図せず高機能

│ │ │ A4ノート 1680x1050 最も広く利用

│ │ B5ノート(コンパクト) 1280x 800 モバイル用の標準

│ サブノート 1280x 800 軽量を重視したモバイル

ミニノート パソコン全般機能ではなく、Web利用などに特化

ウルトラモバイル(タブレットパソコン) 1024x 600 操作性を重視

ネットブック 1024x 600 初期は安価目的

シンクライアント、セキュアクライアント

シンクライアント(Thin client)とは、処理機能サーバに集中させ、パソコンには必要最小限の機能しかもたせないパソコンのことである1996年当時は、モバイルパソコンの軽量化、低廉化を狙ったのであるが、あまり普及しなかった。

1996年 オラクルシンクライアント概念提唱。そのコンセプトモデルNC (Network Computer)を紹介。「500ドルパソコン」とも呼ばれた。

1997年 サン・マイクロシステムズ、コンセプトモデルJava Stationを発表

1997年 マイクロソフトWindows CEベースとした「Windows Based Terminal(WBT)」を発表

それが2005年から外部記憶装置接続ができないこと、パソコン情報が残らないことが、セキュリティ観点から重視され、パソコンメーカーシンクライアントを発表、多くの企業採用検討するようになった。

2005年 日本経済新聞日立製作所パソコン利用を全廃する」の記事。これが広く一般の関心を呼ぶ。

参照:日立「「日立パソコン利用全廃」記事に関しまして」

2005年 富士通 FMVシンクライアントTC8200等出荷

2005年 NEC MateシンクライアントVersaProシンクライアント 出荷

ネットブック

ネットブックとは、インターネット利用に特化した小型軽量なノートパソコンである2005年頃、発展途上国教育分野にインターネット活用が重視され、「100ドルパソコン」として生産支援団体等を通して提供する計画が進んだ。

ところが、安価で使いやすいことが注目され、先進国でもセカンマシンとしての重要が高まり2008年から、その用途目的とした機種も出るようになった。

2008年 ASUS(台湾) Eee PC:本来目的用の例

・CPU,本体:Ultra-Mobile PC(タブレットPC)携帯端末用のPC、パソコン用と比較して安価

記憶装置:HDDなどはなく、システム基板上にフラッシュメモリを直接搭載

ハードウェア構成:通常のPC/AT互換アーキテクチャ採用して、パソコンとの互換性あり

iPadの出現

タブレットパソコンとは、タッチパネルディスプレイを搭載し、指や専用ペンで画面操作できる携帯用パソコンのこと。2002にマイクロソフトタブレットPCを発表したが、あまり普及しなかった。2009年に発売されたWindows 7が「Windows タッチ」というタッチ操作系統を標準搭載したため、タッチパネルディスプレイを備えたパソコンが各社から発売されるようになった。

2010年アップルiPadを発売した。電子書籍閲覧で代表される多様なアプリケーションが評判になり、爆発的な売れ行きを示した。ここでのマルチタッチ操作方法は、一般のパソコンにも大きな影響を与えている。

2014-08-03

求む 2005年現在までのブレイクスルー

http://anond.hatelabo.jp/20140803210149

最初に↑元記事を読んだとき

「世の中をろくに知らない高校生が、技術を語ってるんだか」

と一笑にふそうとしたが、待てよと。

しかしたら本当に今の高校生若い世代技術進歩を目の当たりにしていないのではないか?

と思い、いろいろと調べてみた。

2014年現在高校生(15~18歳)ということは

1996年1999年生まれ。

物心つくのは2000年2004年ということだが、

そのころのテクノロジーはというと・・・

家庭用ゲーム機

http://ja.wikipedia.org/wiki/PlayStation_2

おお、物心ついたときに、プレステ2かよ・・・

確かにファミコンスーファミプレステのような劇的変化は感じられないよなあ・・・

ロボット

AIBOの発表は1999年

http://ja.wikipedia.org/wiki/AIBO

まり元増田物心ついた時にはロボットとは、一般家庭にこそ普及してないが、

現実には存在しているものであったわけだ。

携帯電話

1999年にはiモード日本スタートし、インターネット網への接続が可能となり、通信速度が向上し、画像Javaを使用したゲームなどの利用が可能となった。

ネットパソコンでやるものではなく、ケータイでやるものなわけだ。

http://ja.wikipedia.org/wiki/%E6%90%BA%E5%B8%AF%E9%9B%BB%E8%A9%B1

ネット環境

2000年2002年頃にかけて、ADSLによるサービスが普及しはじめる。既存電話線が使用できることや、価格競争による低価格化により、現在ブロードバンド回線の主流となっている。

知ってるかい?昔はダイヤルアップと言って、ネットへの接続時間に応じて料金がかかっていたんだぜ?

http://ja.wikipedia.org/wiki/%E3%83%96%E3%83%AD%E3%83%BC%E3%83%89%E3%83%90%E3%83%B3%E3%83%89%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88%E6%8E%A5%E7%B6%9A

新幹線

1999年平成11年

3月13日700系による「のぞみ」が運転開始。

東京大阪?2時間半で行けるのが普通だよね?」

http://ja.wikipedia.org/wiki/%E3%81%AE%E3%81%9E%E3%81%BF_%28%E5%88%97%E8%BB%8A%29

まとめ

なるほど、確かにこうしてみると、元増田物心ついてから現在に至るまで、

子供心をときめかせるようなブレイクスルーがないのかもしれない・・・

(自分のチョイスの仕方が悪いだけかもしれないが)

俺が「かがくのちからってすげー」と感動しているものに対して、

高校生が感じるのは、物心ついたときからある当たり前のものしかないのだ。

そんな当たり前のものがここ10年近く、ブレイクスルーなしに改良を重ねていっているだけのように見えてしまい、

人類技術進化頭打ちなのかも。

などと思わせてしまうのではないだろうか?

誰か、高校生経験したと思われる2005年現在までのブレイクスルーを知らないか!?

2014-08-02

戦う気力をなくした

普通の人からすると大したことじゃないと思うけど、もう会社の中に貢献しようと思う気が失せたので、その実態を書いておく。

ソフトウェアを自社開発していて、顧客自身Webアプリケーションを作れるようなマルチテナントサービス提供しています

直属の部長

上下関係にとにかく弱い

後述する彼の上司であるCTOの言いなり。

全てをイエスで返していくからCTOには都合がいいみたい。

とある機能設計CTOが「コレ出来るよね?」ってすごい適当な図((丸と線をつないだだけ))を書いて説明してて、

別の部署の部下がちゃんと理由((CTOには言葉意味すらわかってなかったらしい))を説明して何度も断ってたのに、

無関係なうちの部長が呼び出されて「出来るよね?」って詰め寄られて「簡単にできますよ」ってさらっと援護してた。

自身はその機能に関して別に作業も具体的な設計をするわけでもないので、頭を悩ませるのは援護射撃をもらった担当開発者たち。

社歴が長い分既存製品に関する知識があり度々オブザーバーとして呼ばれるが、今はその製品を開発している部署所属しているわけでもなく、

最近方向性技術動向に関しては全然理解していないにも関わらず。

普段は雑談しながら笑ってることも多くて人柄は悪く無いと思ってるけど、仕事に関しては全部CTOの発言を決定事項として下ろしてくる。

自分が板挟みになりそうなら部下を責める。あなた意図はどこ?

前例主義

思考停止と思えるほどに「今までもこうやって来たんだし」がバンバンから出てくる。

それを変えるやり方や新しい概念の導入に戸惑うとイライラして険しい顔でとにかく前例に合わせるようにする。

そうやって前例にこだわってきたからなのか、ちょっとしたエピソードがある。

たった4人の小さい部署から毎週のMTGの余った時間で持ち回りの勉強会を提案して実施してたけど、

彼以外の3人がミドルウェアフレームワークや新製品の説明をしているのに対し、彼は割とすぐネタが無くなったのか既存製品の話とか会社規則に関する話が出てくるようになって、

最終的に「忙しいから」というよくわからない理由で勉強会が消えた。

3人共「楽しかったのになぁ」って口を揃えたんだけどね。

製品開発

部長がいる僕の部署は新製品と銘打って開発を進めてるけど、例によってCTOの発言によって既に現行製品をなぞる方向でただの焼き直しを進める形になっている。

僕とサシで話した時は「現行製品と同じ機能を作っていくんだったら新製品を作る意味ってなんだろうねぇ(´Д`)ハァ…」とか言ってたくせにCTOの前ではハハハと笑っている。

以前指摘したけど、彼は新製品に関するプロダクトマネジメントステークホルダー立場ではなく、あくま開発者らしい。

じゃあ誰が責任者ステークホルダーなんだよと思ったけど、そんなもの既存製品にもいなかった。

おかげさまで「あの時はこんな事情があって…」ばかりで迷走しまくってるんだけど、そういう反省は生かさないんだな。

CTO

CTO(最高技術責任者)とは名ばかりの役員

CTO技術

基本的技術に疎い。もともと企画をやってた人らしいけど、アイデアマン((その場の勝手な思いつきは多い))ではないなぁ。

バズワードは大好きだけど肝心の内容は何も知らないし間違いを指摘しても「そんな解釈もあるよね」ってごまかす。

でもそれでCTOっぽく技術リードしていると思っているらしい。

その他にもいろいろ。「ifとforが使えれば何でもできるだろ」だの暴言も多い。

社長は彼がCTOとして問題があることに気づいているらしいが、役員だしなぁ。

来期は彼を開発部署の上から外してくれるといいな。でもその頃には僕はいない。

CTO案件相談と業績

目の前の利益にはすぐ食いつく。

「こんな案件の依頼が来ていてお金はいいんですが、確実に専用のカスタマイズ必要なんですが…」というのに開発陣にヒアリングなしに受注を確定させる。

サーバだってもともと予算はないけどサクッと購入する。開発者たちにサーバを買う予算はないって渋りまくってるのに。

うまく行けば自分の実績として社内で大々的にアピールしまくるが、火消しに走るときは営業に文句行ったり開発者に文句行ったり。

そして保守のことは全然考えてないので、積み残されたカスタマイズサービス群が開発者運用者、更には顧客への次の担当者を苦しめる。

現行製品仕様を切り替えた時にカスタマイズ問題が起こったおかげで製品仕様カスタマイズ考慮したあれやこれやを要求されてがんじがらめ。

ええっと、マルチテナントって一体なんだろう。

ちなみに、コレよりひどい自称SIerの営業が居るが、とにかくカスタマイズ案件を取って受注しておいてPMをしないもんだから

突然「お客さんが明日欲しいっていうんだけど」って焦って飛んでくる事態を連発する。

もちろんそんなことを連発してても「大型案件」を受注するから営業成績はMVPとりまくり。そこからずっと続く保守運用は彼の仕事じゃないしね。

CTOと新製品

CTOの話に戻ると、僕らが作っている新製品(?)に関してもとにかく自分理解範囲内に収めるべく発言しまくるし、

新しい概念を持ちだされて意味がわからない時は「それって現行製品のコレはできるの?」で畳み掛けてくる。

もちろんそれを聞いた部長は「そうですよね。それも必要ですよね!」って援護してきて考えてきた設計がことごとく旧製品になっていく。

どうやらCTOの中では既存ユーザが内容を移行できる新製品にする予定で、機能まで全て踏襲するらしい。

そんなもん誰が使うんだろうねぇ。

「新製品を世に出していくには実案件で実績を作っていかなければ」って話をして、案件を持ってきた。

最初は短期間で終了する案件だったけど、運用期限の決まっていない案件が発生している。

そのために製品名もリリース時期も何も決めてないけど、メインから分離した保守ブランチができ、APIv1は提供済みだから今後はv2にならざるを得なくなり、

それすら新しい案件で潰されていくことだろう。

当初は「お客さんにはあくま実験的なものと説明し、お金は取らない」((そんな話を受けるお客さんはたぶんいないって指摘したけど聞いてくれない))とか言ってたのに、

今は「売り上げあげなきゃこれまでの開発費がリカバリできない」とか言ってる。

現行製品の話

まともなデバッグシステムエディタを使わず果たしてユーザPHPコードを書いて開発をするだろうか?もちろん、否。

お客さんから依頼を受けたら営業担当者四苦八苦しながら開発代行を行い納品する。

それでも難しい場合パートナー企業に依頼をして開発をしてもらい、納品する。

あれ?うちって受託開発会社だっけ?

そもそもPHP以外の機能自体も複雑になってて、開発者自身が「ここに機能追加しろって言われたけど、そもそもこの機能どうやって使えばいいの?」と迷うレベルだし、

想定してた使い方を超えてバグを付く動きを相談なしでお客さんに提供しちゃってるもんだから

どれが正しい仕様なのかすら不明瞭になっている。

現行製品の開発の話

Javaってオブジェクト指向プログラミングが出来るはずの言語なんだけど、オブジェクトなにそれ美味しいの?って状態。

クラスがただの関数置き場になっててメンバー変数をいじるもんだから副作用のせいで同じオブジェクトを使う処理がことごとく影響を受ける。

それを避けるにはどうするか?もちろん似たような機能を持つ別オブジェクトを作ったり、別関数で違うメンバーを使うようにしたりする。

とにかく既存の流れを邪魔しないように新しいコードを作ればいい。おっと既存機能と同じ処理をする部分があるな。コピペコピペっと。

もうリファクタをしようと思う開発者はいないし、単体テストもないからできない。いや、無いんじゃなくて単体テストを作れない。

あちこちにDBコネクションとか埋め込んであって都度データ取得するからさなコードでも動作するにはDBコネクションが必要なんだ。

僕は新卒メンバーには「会社内の書き方は(どの会社でもそうだけど、ここは特に)独自のやり方だから、コレが正しいと思わないように。

今後も開発者であるためにはxUnitとかバグの少ないコードの書き方とか自分自身勉強するんだよ。」と言っておいた。

どの部署保守的

Conwayの法則とはよく言ったもので、まさしくリファクタできない密結合で暗黙のパラメータの多い組織。

自分部署立場を守る発言は多いけど、1年後2年後3年後どんなふうに仕事を進めていきたいからみんなでこうしていきましょう、って意思決定していくことは無い。

未来像を描いて推し進めようとする人とよく飲みに行くけど、その人もCTOからとにかく押さえつけられてたりする。

製品の結合度や他社サービスとの連携を図っていく基盤となる部分を提案しているのに、内容も全然理解してなくて「話が大きすぎて工数かかりすぎ」と言われ、

役員会でCTO勝手に「仕様検討にかかった時間負債になった」と報告したらしい。

僕の話

「なにより、こんなことで諦める俺が憎い!」じゃないけど、そんな中途半端に辞めようと思う僕も駄目なやつだとは思う。

誰にも頼まれないまま開発インフラを変える動きを有志で立ち上げて色々やってCI((例によってユニットテストできない))が回るようになり始めたけど、それも中途半端

運用インフラを変える部分もやっと使える状態になったけど、まだまだ中途半端

製品の1モジュールもきっと中途半端になるだろう。

そういった点は大変に申し訳ない。

でも、今のまま居たって僕に未来はない。

僕は僕自身未来の為に活動していかなきゃと思った。

こんなところでこんなグチグチ言ってちゃダメなんだ。

から、ゴメン!

2014-07-30

http://anond.hatelabo.jp/20140730065534

いやねえ、ユーザーに好き勝手させないために

Linux kernel の上に変な libc と java API+αで作った箱庭だからねえ。

仕事ものをつくる作業に使えるとはもともと誰も思っちゃいないよね。

2014-07-26

ソープランド帰国子女

今日ソープランドに行った。

出て来た女の子面白かった。帰国子女でクオーター。つい先日まで世界巡りの旅をしていたらしい。

で、そのときの体験を、コンテンツにして売っているとのこと。

プログラミングが出来て、javaとかphp自由自在らしい。WordPressもかるく使いこなせるとのこと。

あとアフィリエイトで月数十万のインカムが確保できるサイトを作っては、それを売る、ということもビジネスにしているとのこと。

語学は4カ国語が出来て、いまはアラビア語勉強している…。

自由だなあ。

こういう子が日本を変えて行くのかもなあ。ぜひ変えて欲しい。

2014-07-22

オブジェクト指向を学ぶ意味とは

今月に入ってからJava(ゆくゆくはAndroid勉強してる素人なんだけど

http://qiita.com/kenokabe/items/13ea8d2da6adce1b3b9a

http://d.hatena.ne.jp/nowokay/20140718

こういうの読むと、別に理解出来てるわけじゃないものの、じゃ今OOPやる意味ってなんなんだろと思う。

地固めというか、それでも基礎力つけるためにひと通りはやったほうがいいのかな。

デザインパターンUML書きながら、動作と意味を追いながらとりあえず書経してるけど、

周りに相談できる人もいないので、ここで訊いてみた。

初めてはてなダイアリー書いてみたら、記法からなくてアメブロみたくなったので死にたい

2014-07-21

バイドゥだけじゃなくてJava抱き合わせインストールさせてくるじゃん

Askってやつ。

クソうぜえ。

http://anond.hatelabo.jp/20140721101202

Javaがいろいろクソなのは分かるけど、

それJavaじゃなくてお前がクソなせいだよねって場面に遭遇するとむかつく。

Java がなんとなく好きになれない理由がわかった気がする

言語自体は C / C++ を改良したという位置づけだし難しくはないんだけどなんだか好きになれなかった。

どうやら、日本だけかもしれないけど、多くの Java エンジニアCOBOL エンジニアと同じにおいを感じるからみたいだ。

2014-07-20

情報学部から大手SIer入社した結果www

入る前に気づけってツッコミはなしで。痛恨のミスなので。

ホントSIer狂ってますわ。どんだけガラパゴスなのこの国…

グローバルグローバル言っておきながら、やってることは結局今まで「日本だけ」で成立(!=成功)していたビジネスモデル

仕事後の呑みは全力出す社員たち。

IT系とか言いながらパソコン携帯電話スマホですら無い)も使いこなせないお年寄りの方々。

海外の最新技術を学ぼうとか言っているのに、翻訳しないと読めない一人鎖国している方々。

そもそもプログラミングが何かわかってない社員が多すぎる。プログラミング研修ガチ動物園かと思った。Javafizzbuzzが書ける諸君!君たちはSIerにいる人たちの上位半分以上に入るよ!

資料作成だけは執着する。ネ申Excel方眼紙。必殺スクショペタペタ。Word?何それ美味しいの?LaTex?新しい服のブランド名ですか?

技術なんかよりも顧客との対話大事なんだ!とか言ってる同期。大学時代にやってきたことは試験前に優秀な友人にノートを融通してくれるよう対話すること。

極々一部に本当に優秀な方もいるが、その他大勢がお察し。

「私はプログラミング全くわかりませんがマネージメントやっています!」なんて嬉しそうに言っている社員がいる時点で気付くべきだった。

ビッグデータクラウドに注力していきます!」なんて言っている社員統計サーバーに関する知識もない時点で気付くべきだった。

グローバルに頑張って行きたい」とか言っている同期が実は海外ツアー旅行しただけだったと気づいた時にはもう遅かった。

情報系に限らず、優秀な皆様にお願いです。「大手から」「親が喜ぶから」という理由で会社を選ぶのは辞めましょう。

転職活動をやるのは、ネガティブ動機ではダメです。私のように。

2014-07-12

青二才アイコン

どこかで見たことのあるキャラだなと思ってた。

何のキャラだろうかとずっと考えていたんだけど、

Javaマスコットキャラだ!とやっと思い出した。

でも拡大した青二才アイコンを見たら全然違かった。

2014-07-10

http://anond.hatelabo.jp/20140710013523

Qiita燃えそうなタイトルで何か投稿してみてよ。

サーバーから組み込み、S/WからH/Wまで経験した俺から言わせると○○は糞」

みたいな。

○○は、何がいいかな。

Android

iOS

Swift

Scala

Java以外

COBOL以外

JavaScript

オブジェクト指向

関数

とか。

http://anond.hatelabo.jp/20140710082319

そんなことないよ。シリコンバレーエンジニアの数も求職数もものすごく多く、裾野がかなり広いので、実力レベルは上から下までさまざま。博士号なんてもってたら給料が高くなるから雇用側もあえて学士程度を望んだりするケースも多い。すーぱーぷろぐらまーレベルがどうしても必要会社なんて一握りだし。一部の花形企業以外は、実力はそこそこでいいから$80Kで来てくれますありがとうみたいなところは多いと思う。

会社スタンスもさまざまで、純粋CSでやってきた人じゃなくても、新しいプロダクトを作るセンスがあるとか、HTML/CSSJavaScriptに強いとか、NginxとかNode.jsを使って仕事したことあるとか、IT土方だけどJavaだけは人並み以上にできるとか、インディー系で携帯ゲーム作ってたとか、アジャイル開発プロセスに明るいとか、色んなタイプの人が評価される。何か得意なこと持ってれば、そういう人を探してる会社は必ずある。シリコンバレー最先端で尖ってるっていうイメージもあるけど、枯れた技術での固い職ってのも多い。JavaとかPHP仕事なんていくらでもある。Flashですらいまだに結構ある。ほんとに裾野が広い。多くの人が、それなりの実力でそれなりの仕事をしつつ、家族との時間自分時間を大切にして人生楽しんでる。

会社によっては、平均的な日本人の勤勉さを知っていて、そういう面で重宝されるケースもある。世界中から人が集まってるので、勤務態度も様々で、その中では日本人の真面目さは割と有利。まあ、日本人英語しゃべれないとも思われてるけど。逆にちょっと話せればかなりインパクト強い。

結局、

大学高専出てるか(出てないとビザが厳しい)・・・できれば理系、できればCSメジャー

英語で最低限のコミュニケーションができるか

採用したらすぐ来れるのか

くらいじゃないのかね。

2014-06-19

http://anond.hatelabo.jp/20140619010953

forループは全部再帰に直せるので再帰を使う。

f(a, b, total)みたいな関数を考える。

aはまだ読んでない値のリスト、bは既に読んだ値のリストtotalは読んだ値の総和を意味している。

まり、aの先頭をx、残りをxsとしたとき

f(xs, b+x, total+x)と再帰的にa,b,total更新していけば、一個ずつリストを読んでいくことができる。

後はf(randoms, [], 0)を呼んで、totalが50を超えたらbを返すようにすればいい。

まあこんなん実質変数使ってるみたいなもんじゃねえか、というハナシではあるけど。

関数型のメリットはパーツの再利用がやりやすいというところにつきると個人的には思う。

たとえばこれの応用として、総和が50を超えたらじゃなくて総和が素数になったら総和を返すような関数f2を作れと言われたら?

コピペしてif文の中だけ変える?

……手続き型の発想だけだとそうするしかないかもしれないけど、

関数型言語なら、fにcheckという引数を追加して、check(total)がtrueならbを返すようにすれば簡単にf2f3を作ることができる。

ラムダ式を使って、条件を判定する関数をその場でポンと作ってfに与えることもできる。(今はJavaとかC++ラムダ式使えるね)

再帰があんまり深くなりすぎるとStack Overflowになってしまったり、速度がどうしても犠牲になりがちだったり、

もちろん向き不向きはあると思うけど、関数型便利ですよと、そういう話でよかった?

2014-06-18

http://anond.hatelabo.jp/20140618222716

今頃Java研修ってでかい会社じゃないの?

コード書けないやつにもそれなりの居場所あるっしょ。

ログイン ユーザー登録
ようこそ ゲスト さん