「統合開発環境」を含む日記 RSS

はてなキーワード: 統合開発環境とは

2020-08-23

プログラミング初心者macをわざわざすすめるバカについて

タイトル通りなんだが、

mac プログラミング 初心者」とかググると、

初心者にはmacおすすめ!」「世の中のプログラマはみんなmac使っている!」

というバカなことを言っているアホが仰山いて笑える。

しかも、最近OS事情が大きく変わっているのに、未だにwindowsunixコマンドガーとか言っているやつが居る。もうね、言葉を失うよね。

まず、最近のOS事情の移り変わりなんだけども、windows最近かなりLinuxに近い触感になるような機能が多く追加され続けている。

例えば、wsl(コマンド関係)やwinget(CUIインストール)が挙げられる。

他にそれらを取り巻くプログラミング事情としては、vscodeがある。vscodeは、powershellsshだけでなく、wslのコマンドも使えるようになっている。

そのため、従来はpythonやらjsはめんどくさ。とおもっていた点もある程度は改善されている。

ちなみにmac特に最近プログラミングに関する話を聞かない。

自分が、プログラミング環境の次に、大事な要点だと思っているのが、一般人使用含めたシェア率。

正直、作っても誰にも使ってもらえないという状況では、全く意味がないので、シェア率は非常に大事だと思っている。

最近データでは、88%ぐらいがwindowsであるという統計がある。web系やiosアプリならまだしも、パソコン一般人に使わせたいソフト(特にゲームとか)を作りたいなら、windowsしか選択肢ないと思う。

そんなわけで、元からmac使いなら、まだしもわざわざwindowsから乗り換える必要は全くない。

ただ、mac使いでも全くwindowsでないと非常に困るということは、ある程度は…無くなってきてはいるですよねー。

ほれ、クロスプラットフォーム開発が盛んで、ライブラリなどの環境から障害は、少なくなってきているので…ただし、ios開発お前だけは許さない。

本題から外れるが、2点ほど、釘差したいだけども。

1点目は、webからプログラミング始めたいとかいう奴に釘差したい、

web系はある程度セキュリティやらデータベース、コマンド知識やらないと爆死する。そんなわけで、GUIオンリーパソコンを楽しんできた奴には、マジでお勧めしない。

まずは、webからではなく、統合開発環境上で実行ファイル(メモ帳とか)を作れる方面から始めろ。そして、linuxとかネットワークとかセキュリティとかの本を片っ端から読め。webを始めるのは、それからだ。

webでも実行ファイルを作ることは、星の数ほどあるし、別に必要ない知識はないぞ。

2点目は、勉強とはいえ、いつも使っているOS上で、コマンドが使えるからと鯖建てるな。(windowsmacどちらも)

かならず、仮想OSでやれよ。ミスって、apacheインストールできないとか言われても、周りは困る。とりあえず、わけわかめになったら、スナップショットリセットしとけ。

2019-12-01

ごみばこから、ひろってきたの?っていうようなノート一代

当然 統合開発環境も入ってない

どんどんこわれていく

すみかも

なんとかがんばってるけど

2019-02-07

プログラミング言語女体化スマホゲームとかどう

ガチャプログラミング言語教科書GETすることでプログラミング言語女体化したキャラプログラ民」(イラストレーターアマガイタローと藤ちょこを重点的に起用、CVは有名声優を起用 佐倉綾音には数キャラやってもらう)をGET

案件を手に入れた言語で片付けよう。案件を片付けることで「プログラ民」をレベルアップさせよう。

レイイベント複数人で「炎上案件」に挑め!

 

一部「プログラ民」紹介

・こぼるちゃんSSR CV佐倉綾音

のじゃロリロリBBA

 

・ぴーえいちぴーちゃん(R 初期キャラ CV上坂すみれ

正統派ヒロインキャラ

 

・しーしゃーぷちゃん(R 初期キャラキャラ CV花澤香菜

ダウナークールキャラ

 

・じゃばちゃん(R 初期キャラ CV佐倉綾音

活発元気キャラ

 

季節によって服装違い限定プログラ民を排出

 

ガチャ書店仕様

プログラ民SSR 1% 統合開発環境SSR 4%

プログラ民SR 5% 統合開発環境SR 10

プログラ民R 30% 統合開発環境R 50%

ダブるプログラ民の理解度がアップ。5でマスター理解度5のプログラ民がダブったら図書券を取得。図書券3個で恒常排出の参考書選択してGET

2018-09-24

anond:20180924010410

プログラミングは道具というのは事実。ネジや木や鉄やそれを組み立てる道具みたいなもの目標が無いと上達するのは難しい。気づいてないかもしれないけど学校教科書は何百年という単位で頭の良い大人が作り出した教育方法で、プログラミング自習する場合自分目標を作らないといけない。例えば理想目標があったとして、それを100とすると天才でもない限り簡単には作れない。しかし10の別の目標を達成して次に20の目標と順に達成すれば50くらいの時には100までの距離が分かり、その目標に突き進むか、諦めるか、別の目標を目指すかがはっきり分かるようになる。ひとまず簡単に出来るものを5個作るといいよ。


次にプログラミング言語とその環境の探し方を知らなければいけない。良くないものを選ぶといきなり挫折する。環境設定の話が出ているのでたぶん問題ないと思う。ただ個人的感想では言語を探している時点で疲れて投げ出してしまうという事が多かった。重要ポイントとしては

ゲームが作れるから最低でも2Dのグラフィックが描ける言語、3Dか物理演算があるとさらによい。

ヘルプの付いた統合開発環境が良い。でも、これだと選択枠が限られる。

日本語が使える言語だと幅が広がる。表面的には日本語が使えても、言語内部では違うために変換に苦労する。

4誰も使わなくてもアウトプットが出来る環境だとモチベーションが上がる。

プログラミングの中核は同じなので言語を変えても無駄になるものは無い。

プログラミングにはまっても一日30分は最低でも運動する。学校や買い物の行き来でも問題ない。


ちょっと癖が有るけどHSPとかかな、RubyWindowsスタンドアローン動くしWebでも動く、スマートフォンに興味あるならiOSAndroidの開発環境もありかもiOSは知らないけど、Androidの方はクレジットが無くてもデビットカードが有ればアプリ登録できたはず。プロバイダ無料ホームページ枠があると思うけど、無いならレンタルサーバーを月100円のでいいので借りてみて、簡単ホームページを立ち上げて見るのをおススメする。

2017-06-07

http://anond.hatelabo.jp/20170607171058

書いている人が20歳以下だと思って書かせてもらうけど、

どの業界で働きたいのか、働いた時の自分想像すると手が動かしやすいかなーと。

たとえばロボットだったり自動車だったり飛行機だったり、機械の中の制御部分をプログラミングでやりたいのであれば

CやC++Web系でサービス開発がしたいなら…というように。ここは将来何がやりたいかを考えたほうが思いつきやすい。

例として、インターネットサービスを展開している企業で働いている自分想像する。リーダーから与えられたタスクを消化するため

Git/GitHubを使って進捗管理統合開発環境テキストエディタを立ち上げ、□□言語で書かれた○○の部分を弄る。実際に本番環境で立ち上がるか云々…。

□□や○○の部分はまだ分からいかもしれないけど、Git/GitHub統合開発環境テキストエディタプログラミングする時に必要なので

ここは極めても良いはず。だから勉強する題材になる。もし、既にこの□□言語の部分が具体的に出てきて、Web系で働くんだという気持ちがあるならその言語を極めれば良い。

ちなみに、文章から文字列抽出したい場合正規表現についても知っておくと武器になるぞ。正規表現を扱いやすプログラミング言語についても調べてみると良いと思う。

2016-11-20

大多数のプログラマは…

IT業界に努めてもうそろそろ二桁年。

そこそこの企業特にWeb系で渡り歩いた経験から真実を書こう。

一般的プログラマと呼ばれる人たちは

はっきり言う、ほとんどのプログラマ自称する人間の 9 割はコーダーである

言われたものを作る事はできるが、それ以外何も出来ないと言って過言ではなく、何もしない。

そんな驚きの生体をここに晒していく。

一般的コーダー自称プログラマ)は、アプリケーションの基盤が作れない

標準化と呼ばれるプロセスで、プログラマ環境設計、組み合わせ、開発プラットフォームセットアップ、開発環境の構築手順作成、開発手順の作成必要技術考察を行う。

なぜそうなったのかは知らないが、一般的にそうなっている。

その環境に浸っているせいか、彼らはゼロベースものを作ることが出来ない。

彼らにできるのは HelloWorldコマンドプロンプトで表示するプログラム程度の事しか出来ない。

複数ソースの連結、ライブラリの読み込み、サーバへのデプロイ、どれも手動で出来ないのだ。

一般的コーダー自称プログラマ)は、保守性を考えない

彼らは自分に任されたものを動かせればタスクが終了する。

逆にそれ以外のこと、コードの読みやすさや、クローン率の低減、メソッドコメント記載などの保守に関わることをしない。

それは彼らにとって「必要ない無駄作業」としか考えないのだ。

早く仕上げるためなら、似たような動いてる箇所から、よく読みもせずにコピペを行う。

そして彼らは、作るより運用する期間の方が遥かに長くて、その間に修正地獄を見るという簡単論理に気づかない。

…何度味わっても気づかない。

一般的コーダー自称プログラマ)は、勉強しない。

一般的プログラマコーダー)は勉強をしない。

たとえするとしても、業務時間中に業務で使ってる技術ピンポイント学習するだけだ。

勉強会は確かに多い。「.dits」何かがいい例だ。

だが、プログラマと呼ばれる人間の母数に比べれば微々たるものだ。

彼らは言う「土日にまで仕事してられるか」「勉強会行ってるの?馬鹿か?」

あえて言おう、馬鹿は彼らだ。

一般的コーダー自称プログラマ)は、自分の使う道具がわからない

Web仕事をするならIDE統合開発環境エディタコンパイルテストデバッグ実行などを画面から行えるツール)はほとんど必須エディタで済ませる事も出来なくはない)が、彼らは状況に応じたセットアップができない。

たとえば「Mavenプロジェクト管理ツール)、checkstyleコーディング規約チェック)、editorconfig(改行、インデント文字コード設定)」が入っていたとする。

するとEclipseなどを使うとして

  1. どのプラグインを入れればいいか調べられない
  2. どうやってプロジェクトを取り込めばいいかからない
  3. プラグインを入れても設定方法がわからない(IDEデフォルト設定と、プロジェクト内の設定の違いを認識できない)
  4. IDE の設定画面がわからない

マニュアルチュートリアルを用意しないと、道具の使用もままならない。

一般的コーダー自称プログラマ)は、テストコードで書かない

テストをなるべく機械やらせようということの利点が理解できない。

コンパイルして動かして確かめればいいと本気で考えている。

そのために、何十回もコンパイルデプロイアクセスログインの手順を何度も繰り返す。

関連する他の修正を行うたびに繰り返す…。

そしてやっと動くとひと仕事終えたと満足感に浸る。

一般的コーダー自称プログラマ)は、プライドが無いか、変なプライドを持っている

ラリー・ウォールというとある有名な人物Perl開発者にしてC言語ハッカー)がいる。

彼の言う三大美徳に「傲慢」がある。

これは、自分の作るもの完璧なのだ、だから完璧であるように出来る限りのことをするという美徳である

一般的コーダー自称プログラマ)は、このプライドはない。

彼らは金のために嫌々動くだけのものを作るのだ、動きさえすれば報酬は変わらない、よって当然完璧かどうかなどどうでもいい。

同じ金でより良いものを作るのではない、要件だけ満たせばよいのだ。

変なプライドを持つコーダーは、それで運良く成功すると、自分知識は正しい、自分技術は十分なのだと考えている。

こういう人間は、プライドの無いコーダーよりたちが悪く、うまくいかないと他人環境のせいにする。

そして調べず周囲を苛立たせるのだ。

おわりに

土日に自ら勉強会に行くプログラマや、それこそ 50 人以下などという会社であればこうした事はあまりない(んじゃないかと思う。)彼らは自分でなんでもやらないといけないからだ。

だが、大企業に飼われる子飼い企業派遣(そもそも人手のみを求められる企業)、100人以上の企業では、役割分担に伴いこうした状況が多々発生する。

だが役10年、エンジニアを見てきた結果は変わらない。現実問題こうなのだ、こんな人間が大多数なのだ

人の多い企業ほど考えたほうがいい、それでより良いものが生まれるのかと。

必要とされる技術だけを叩き込んで金にしたいと言うのは分からなくないが、基本姿勢思想はどうなんだと。

経営者マネージャーよ、あなた方の言う「最適化」とは現場が日々考え行っている最適化か?人員最適化だけを行って、生産性が伸び悩んでいないか

そのあたりは考えた方がいい。

2016-09-05

統合開発環境の背景を黒にすると見やすいって嘘だろ

実際にやってみたらソースコードの裏にキモいおっさんがチラチラ見えてウザかった。

2015-12-28

Vimキーバインドを忍ばせる人々

(Qiitaのほうに2019年版があるので今はそちらを…。こちらは2015年版な感じです。)

Vim(あるいはvi)のキーバインド提供する人がいる。

Vimの外でもVim風の操作ができたりするのは彼らのおかげだ。

デフォルトオプションプラグインアドオン、様々な手段提供されている。

Vimを使っている人でも使うかどうかは人それぞれだし、

どの程度Vim再現できているのかも実装によってまちまちなのだが、

なんだかんだで有名どころのテキストエディタ統合開発環境では何らかの形で提供されることが多くなったように思う。

以下は提供しているソフトウェアの一覧。

(一覧に無いものは私が知らないか忘れているだけなので、実際にはまだあると思う)

統合開発環境名称
Visual Studio VsVim
Xcode XVim
Eclipse Vrapper
NetBeans jVi
IntelliJ IDEA IdeaVim
MonoDevelopVi Mode
Qt Creator FakeVim
テキストエディタ名称
EmacsVIP
EmacsViper
EmacsEvil
AtomVim mode
Atomvim-mode-plus
Sublime TextVintage
Sublime TextVintageous
Brackets vimderbar
Visual Studio Code Vim
Light TableVim

他にもブラウザ向けのアドオンとか。

ブラウザ名称
FirefoxVimperator
FirefoxVimFx
FirefoxVimium
ChromeVimium
Chrome Vrome
ChromeVichrome
Chrome cVim
OperaVimOperate
Opera wasavi
Safari sVim
Safarivimari

いくつかのコマンドでも。

コマンド分類
bashシェル
zshシェル
kshシェル
tcshシェル
yash シェル
tig gitインターフェース
less ページャー
cgdb デバッガ
LuaKit Webブラウザ

hjklでスクロールできるWebサービスとか。

名称操作
Twitterjk前後の項目に移動
TweetDeckjk前後の項目に移動
Facebookjk前後の項目に移動
Google+jk前後の項目に移動
Tumblrjk前後の項目に移動
GitHub jk前後の項目に移動
Pocketjk前後の項目に移動
Pixiv(複数投稿) jk前後の絵に移動
ニコニコ静画(漫画) jkスクロール
ニコニコ静画(電子書籍) hjklで前後のページに移動(wasdでも可)
はてなブックマークjk前後の項目に移動

ゲームも。

名称操作
nethackhjklで上下左右に移動(yubnで斜め移動)

追記

viのhjklは先行する何かの影響で実装された記憶があるので、操作共通からというだけで「viを忍ばせる」というのは言い過ぎではないかという気がする

> まして「vimを忍ばせる」というのは、ちょっとその、まあなんというか…

かにVimではなくvi模倣だったりして無理があった…。hjklの大元を辿るとどこに辿り着くんだろう(ビル・ジョイの使っていたキーボードとは別?)

2015-05-28

http://anond.hatelabo.jp/20150528163835

VisualStudioとかXcodeとかAndroidStudioとか正式統合開発環境があるのに有料エディタを進めてくる同僚がいて困る

仕様盤使っても全然便利に思えないしなんであんなにこだわるんかね

2014-04-29

LL言語系のWeb開発+unix的な開発しか知らない人(?)が

Windows上でunix的な開発環境を整えるのは面倒」と言うべきことを

Windows上で開発環境を整えるのは面倒」と言ってしまうのを見るたび、

何故それをプログラミング一般にまで広げてWindowsを貶すのかと思ってしまう。

WindowsにはVisual Studio Expressという素晴らしい統合開発環境無料であるんですよ。

Windowsunix的な開発するのはそりゃやめたほうがいいと思うけど。

2013-12-30

C++について

  1. ちょっと何か書こうとする
  2. 外部ライブラリを使おうとする
  3. includeの順番だのコンパイラオプションだのの設定で散々ハマる
  4. リンカエラーで散々ハマる

という感じで本題にたどり着くまでに死ぬほど時間がかかるのが常なんだけど何とかなんないもんなのか。

opencvとかの超有名なライブラリですらこんなんでマジ困る。

そもそも統合開発環境だとビルド設定が複雑怪奇過ぎてとてもじゃないけど把握しきれない。全容を把握してる人ってどのくらいいるの?

スーパープログラマーな皆さんはどういう感じで対処してるんでしょうか。

2013-08-21

コミックの新刊発売日をメールで通知する「ベルアラート」をリリース

開発するにあたりAmazon絡みの検索をしてる時にこの記事にたどり着き、10年近く運営しているサイトと同じくらいのはてブが一日で着くのを見て、やってきました。

サイトは以下から

コミック、小説、作者別に新刊・新作をメールにてお知らせ【ベルアラート】

ベルアラートは商品の発売日をメールで受け取ることを目的に開発しました。

機能的には、コミックだけではなく小説や専門誌を含むあらゆる書籍DVDゲーム家電の発売日もカバーをしていますが、ランディングページを作るのにあたりメーカー名などを調べ尽くすのが大変だと思いコミックに特化したサイトの構成にしています

特徴

コミック小説など書籍の予約開始日と発売日をメールで知らせます

タイトルだけでなく著者をアラートに設定できます

出版社タイトル名、著者を調べ回らなくても良いように雑誌一覧や連載中のタイトル一覧、著者一覧をランディングページとして作成しました。

開発経緯

自身は週刊少年ジャンプなど少数の雑誌を毎週購入して読んでいたので、あまりコミックを購入しないのですが、雑誌を読まずにコミックを購入している友人と本屋に行った時に出版社や連載誌によって発売日がまちまち 休載などがあったりでタイトル数が増えると発売日把握が面倒だと感じたから作ってみようと思いました。

まぁ、その時にしっかり似たようなツールが無いかしっかり探せばよかったのですが、なんとなく漫画に絡んでみたかったのもあって、きちんと探さなかったです。

開発の流れ

 

  • 開発期間:約1ヶ月半(たぶん)

  ・基本の設計AmazonAPIの調査に1週間

  ・当初想定していた最低限の機能の開発に2週間

  ・それをいじくり回して機能追加、修正を行うこと2週間

  ・バグ取りを行いつつ公開準備で1週間

 

 

 

 

  • 利用ツール:

  PhpstormPHP用のIDEとしては評判が良いので、今回の開発から利用開始。今まで秀丸やSublimetextなどのテキストエディタメインで開発してたけど、統合開発環境のありがたみを実感。

PHPに特化してるだけあって、痒いところに手が届く感が素晴らしい。

ちなみに、Phpstorm日本語ローカライズされてないので隅から隅まで英語でびっしり

  

  TwitterBootstrap:今回初めてCSSフレームワークを利用してみた。導入するだけでデザインがそれっぽくなるのは◎。またレスポンシブデザインも簡単に対応できるので、スマホPCの両方で使用することを前提にしたサイトを作るならすごくお手軽。

ただ、JQueryUIや部分的なハックを用いる際の競合には悩まされた...。

  VagrantChef-solo:使ってみた。便利だった。ホストゲストOS間の共有ディレクトリも簡単に設定できて、いやー、これで開発環境の仮想サーババンバン建てられるわー。

今回の案件で便利だったというより、今後の開発全般に対してメリットが大きい。

苦労(工夫?)した点

連載中のタイトルなんて、そんなにたいした数無いだろうし、まずはコミックタイトル一覧を作ろうと思いExcelファイルにまとめていきましたが、執筆時点で雑誌86タイトル数2012に達し連載中の数にびっくり。舐めてましたまだまだ増えそう・・

タイトル数がめちゃくちゃ多い

読み切りだけを掲載している雑誌もある

タイトルの読み方が解らない(菩提樹寮のアリアリンデンホールアリア

・ 正式タイトルコミックにする時の名前が違う(ソードガイ 装刀凱 → ソードガイ)

原作作画プロデューサーシナリオライターとかの名前を全て拾うとAmazonで抜け落ちてる場合がある

・ 新連載と連載終了の情報がつかみにくい。(特に打ち切りはひっそり終わってることが)

Amazon側で姓名の入力が一緒になっている著者と別れている著者がいるので著者によって姓名の間にスペースを入れる入れないでHitしたりしなかったりする

蒐集奇譚イットは座紀光倫を著者に入れるとHitせず座紀 光倫だとHitする)

・ 困ったことに2巻と3巻など巻によって著者の姓名が別れたり別れなかったり

オススメの使い方

検索ページで全てのアラート登録ができますコミックに関しては連載中タイトル一覧雑誌一覧から目的タイトルランディングページに行き緑色ボタン「◯◯」の発売日の通知を受け取るを押してメールアドレス入力すれば目的の商品のアラートが受け取れます

人気のタイトルは関連書籍が多数でるので、検索ページでアラート設定する場合は、タイトル、著者、ジャンルを指定しないと意図しない通知も来ます

専門誌とかであれば単純にキーワードに「wordpress」などと入力して設定してもいいかもしれません。

冒頭に書いた通り書籍以外も設定可能なので例えば「コーエー信長の野望」の新作発売日を知りたいのであれば、検索TVゲーム欄にタイトル信長の野望メーカーコーエーテクモゲームスにすればアラートを受け取れます

今後の展開

登録されたアラートメールドメインを見ると思っていた以上に携帯アドレスの登録が多く、スマホアプリ9月中にリリースしたいと思っています

最後

このベルアラートは貴方が所有しているAmazon アフィリエイトID入力すれば、ベルアラートからの発リンク、発売日や予約開始日のメール通知が全て貴方のアフィリエイトIDリンクになりますので、貴方のサービスとして利用可能です。

リンクする際にはURLの?aid=aaaa-22としてリンクして下さい。(aaaa-22部分は貴方のアソシエイトID

今後、楽天や他のプラットフォーム対応時には追加して頂くパラメーターが増える可能性があるのと貴方のサイトから登録されたアラート数やタイトル(登録メアドは非公開)などの実績把握のためにもユーザー登録して頂いた方がアソシエイトIDなどをまとめて入力できるので紹介リンクを変更せずにすみます。(ログインした状態でこのページにアクセスして下さい。)

ご紹介頂ければ幸いです。

2013-07-25

プログラムを学ぶための障壁は、今やまったくない。

最近、前からずっとあるのかもしれないが、ビギナープログラマへ向けた教訓めいたエントリなどを

よく見かける。

やれフレームワークから始めるなだとか、なんとかかんとかというものだ。

同時に、これは昔から変わらないが、プログラム勉強したいけどどうしたら良いのかというような

質問などもよく見かける。

こういった数多のやり取りを見ていて、自身もプログラマとしての一面をもつ限りは

頑張っての一声もかけてやりたいと思うし、辛辣な内容のエントリに頷くこともあれば苦い顔をすることもある。

自分プログラム勉強を始めた当時は、プログラマを目指す者にとってはイバラの道だったと思う。

はいはい懐古厨おつと言われてしまいそうだが、実際そうだったのだ。

まずなんたって、パソコンを手に入れるのが容易でない。

当時PC-9821全盛期であったが、1台40万くらいはした。

HDDは数百メガバイトしかない。

容量1.2MBしかないフロッピーしこしこデータを保存していた。

パソコンが起動するまで5分くらい待つ必要があった。

そしてパソコンを手に入れたとしても、情報を調べる手段というのが確立されていない。

今でこそ、ブラウザを開いてGoogle検索すれば、どんな情報だって手に入る。

ブロードバンドという言葉がまだなかった頃は、そうではなかった。

インターネット接続するのも、お金持ちの家はISDNだが、自分の家はモデムでピーがが~とつないでいた。

28800bpsモデムである

今時の携帯でも3G通信でもっと通信速度が早いぞと思う。

そのため、当時はWebサイトのページ容量は画像も含めて数キロバイト以内に収めましょうという

慣習があったように思う。

NTTテレホーダイというサービスがあり、夜11時から朝の7時までは

特定の番号にかけ続けても一定料金でかけられるサービスがあり、みなそれを

利用していた。自然パソコンを利用する人々の活動タイミングは夜間となった。

インターネット接続できたとしても、まだまだ敷居はあった。

当時はまだGoogleがなかった。

Yahoo!全盛期の時代検索精度も低い。

なにより検索情報にたどり着くということはほとんど概念としてなかったんじゃないかと思う。

Yahoo!が用意したカテゴリを元に、登録されたWebサイトアクセスし、

サイトからリンクで新しいサイト発見するという、本当のインターネットサーフィン

しなければ、必要情報へはアクセスできなかった。

IntetnetExplorerはまだバージョン3くらいで、脆弱性がありまくり危険サイト

アクセスすると、ウイルスどころの騒ぎではなかった。

本当の意味でのアンダーグラウンドサイトごろごろあって、

一番陰気な雰囲気を持っていたんじゃないでしょうか。

NetscapeNavigator(今のFirefoxの前身)が人気を博していた時代の話である

さて、情報アクセスできたとして、次に問題になるのは開発環境の話である

昔の昔、基本ソフトBASICだった時代は、パソコンを起ち上げるとBASIC言語を使って

プログラミングが出来たが、Windows95はそうではなかった。

開発環境、そしてコンパイラをまず準備できないと、そもそもプログラム勉強が難しかった。

当時からMicrosoft統合開発環境として、VisualStudio存在したが、よほどの金持ちでないと

買えない値段がした。

そこで、LSI-C試食であるとか、Borland無料開発環境であるとか、N-88互換BASICなどの

無料開発環境を探しだして、しこしこコマンドライン上で動く基本動作だけを勉強したものなのだ

マシン上に、Apache+PHP+MySQLインストールする、なんて手法は夢のまた夢だった。

Webプログラム勉強するには、自分Linuxサーバーを起ち上げるか、CGIが利用できる

レンタルサーバーを使うかなど方法も限られていた。

CGIで利用できる言語も、CかPerlかくらいしかなかった。

JavaScriptもまだまだ発展途上で、今のようにあれこれと使えるようになるのは

まだまだ数年先の話だった。

それが今やどうだろう。

パソコンも一家に1台あるだろう。それどころか職場自分の机の上にも1台あるだろうし、

学校にいってもいくらでも使えるだろう。

そして、パソコンを立ちあげれば、即ネットが使える。

ググればどんな情報だって手に入る。

開発環境なんて、よりどりみどりメモ帳ソフトがあれば、もう勉強を始めることができる。

Windows上で動くアプリだってVisualStudio無料で手に入る。

それで敷居が高ければ、Excelを使ってもいい。VBAを使えば、Windowsアプリ勉強もできるだろう。

これだけ情報も溢れ、環境もどれを選ぶか難しいほどの状態になってしまっているのだ。

もはや、プログラム勉強するには、必要以上のものが用意されている環境にあるといっても過言ではない。

あと必要なのはやる気と実行力だけだ。

がんばってください。

2013-06-08

アマゾン商品をいい感じに検索できる「あまけん」をリリースしました

ますだでリリース報告すると、いいことあるかもよと聞いて、やってきました。

サイトは以下から

あまけんβ- アマゾン商品の検索をいい感じに使えるサービスを開発中。


「あまけん」はアマゾン商品検索をいい感じにできるサービス目標に開発しました。

「あまけん」ではアマゾン商品検索後、レビュー数などによる並び替えや、星の数でのフィルタリング画像や簡易表示など表示モードの切り替えが可能です。

また検索後の並び替えなどでは、非常に高速に動作するため、商品比較などに向いていると思います

特徴

  • 情報を絞り込んだ簡易表示や画像のみの表示が可能。一覧するのに便利です。

開発の流れ

ますだ報告デフォルト(?)の、開発の流れや開発環境を簡単に。

  • 期間
    • 1カ月程度

「あまけん」おすすめの使い方

検索後、お好みの星の数でフィルタリングした上で、レビュー数や売上ランキング順で並び替えて商品比較するのがお勧めです。特にレビュー数は本家サイトにない指標なので、おすすめです。

表示モード情報量と一覧性のバランスのいい”簡易”モードお勧めです。お好みに合わせて、情報量の多い”詳細”モードや一覧性が高い”画像モードの使い分けも可能です。

アマゾン内で検索する前や後に併用して、あまけんの高速性を活かして、商品比較用にといった活用おすすめです。

今後の予定

お気に入り登録機能など、様子を見ながら機能追加や改修などのアップデートを行っていきたいと思います

機能追加予定やリリース情報は、開発ブログツイッターにて報告予定です。

2013-03-28

科学技術計算Python

科学者必要とするもの

必要ものの列挙

現存する解法

どの解法が科学者にとって役に立つのか?

コンパイラ言語:C, C++, Fortran, 等
スクリプト言語Matlab
他のスクリプト言語Scilab, Octave, Igor, R, IDL, 等
Python はどうなの?

2013-03-08

風俗嬢アダルト専用ブックマークサービス作ってみた

秘密ブックマーク、略して「秘ブ」というソーシャルブックマークサービスを作ってみました。

アダルト専用で、(以前の)はてブのようなものを目指して。

今は風俗嬢やってるんですが、(悲しいことに)時間があったっていうのと、

自分が欲しいと思ったもの作ってみたかった。

目次

①作ったサービス

②影響を受けた増田

③作った経緯

④使用したサービスとか

⑤作成のあらまし

⑥秘ブのブックマークボタンとかブックマークレットとか

⑦登録時の注意!

⑧今後の予定

作ったサービス

秘ブ.jp

http://hibu.jp/

アダルト専用のソーシャルブックマークサービス

影響を受けた増田

自分WEBサービスを作りたいと思っている人へ

http://anond.hatelabo.jp/20101203150748

・Rails3 と jQuery で、真面目にオシャレなエロサイトをつくってみました

http://d.hatena.ne.jp/inouetakuya/20120331/1333192327

・週6フリーターWEBサービス作ってみました。

http://anond.hatelabo.jp/20120914214121



作った経緯(基本自分語りなのでそういうのウザい人は飛ばしてね)

私は、早く自立できるようにと高専を出て、田舎から東京に移り住み、事務として働いていた。

この時点ではエクセルとかワードとかは使える、マクロちょっと組める程度のレベル

自立したかったのは父親が生活費パチンコとか女に溶かすような輩だったため。

私が自立したあと、両親は無事離婚。激務で薄給母親と離れて暮らして寂しくても頑張っていた。

そんな中、母が更年期障害鬱病に。

鬱病はつらい。何が辛いって、本人も辛いんだろうけど、荒んだ部屋の中で横になって息を潜めている母親の姿を見るのがきつい。

母親ゆっくり休ませてあげたかった。

いつでも母親の側に駆けつけることができるように、お金時間に余裕が欲しかった。

で、吉原へ。私は風俗嬢になった。

でもねー、全く稼げないwww 笑っちゃうくらい。

大衆店にいるんだけど、女の子もお店も多くて、私より若くて可愛い子がわんさかいる。

お客さんがつかないと収入0なんだよね。

店長やお店のお姉さんがマットや椅子を覚えな、ってアドバイスはくれるんだけど、

その頃教えてくれる先生たまたまいなかった。(今は別の店に修行にいったかバッチリできるけど)

仕方ないかようつべとか動画サイトソープお仕事系の作品を見まくったわけ。

(余談ですがマ◯ティ夫人ってお店のマット技一覧のページはすごいよ!)

お客さんつかないか時間がすんごいあって、待機室でずーっと見てた。

で、マットの動画とか、ボディ洗いの動画探すんだけど、なかなか見つからない。

結構マニアックからね。

で、そんなことをしてるうちに思ったんだけど、エロサイトエロ動画

果てはマニアック趣味情報を共有できるサイトがあったら便利じゃないかな?と。

数少なく接客したお客さんで、わざわざブーツ持参で、顔面を踏みつけてくれ、って人がいたんだけど、

そういうの彼女とか友人とかにあんまり言えないでしょ。

でも日本中を探したら、同じ趣味や、近い嗜好の人がいるんじゃないかな?って。

時間私自身が病むほどあるし、そんなわけで制作に取り組みました、秘密ソーシャルブックマーク

略して「秘ブ」(「秘部」とかけてあったり)

吉原泡姫たちは、タクシー通勤する人が多いんだけど、私は三ノ輪の駅から歩いて通ってた。

元彼に借りたプログラムの本などどっさり持って。めっちゃ重いw

待機室でひたすら落ち込みながら金勘定するより、母親心配をするより、何か生産的なことを考えていたかったんだよね。

この一年でかなり勉強して、ようやく公開できるレベルに達したかなとおもいます

作成期間は、楽しかったし充実してた。

みんなが来てくれるかはわかんないけど、まあ来てほしいなと思う。

さて、湿っぽい話はここらへんにして、どうやって作っていったかを話しましょう。

使用したサービスとか

・Semantic Scuttle

http://semanticscuttle.sourceforge.net/

jQuery

http://jquery.com/

・HeartRails Capture

http://capture.heartrails.com/

はてな Favicon API

http://favicon.hatena.ne.jp/

Twitter Bootstrap

http://twitter.github.com/bootstrap/

・Bootswatch

http://bootswatch.com/

サイトの構成なんかも書こうと思ったけど、セキュリティ的に良くないって聞いたし、

はてな民のみなさんに突っつかれるのが怖いので少しだけ(^_^;)

まあ違う意味で突っつかれるのは慣れてるんだけどw

簡単に書いとくと、HTMLCSSPHPMySqljavascriptくらい…なのかな?

Semantic Scuttleが裏でやってることはあまり詳しく分からないです。

作成のあらまし

前述の通りアダルト系のブクマサービスを作ろうと決めてから

プログラミング勉強を始めることにした。

HTMLCSS

どうやらまずはHTMLCSSをやれということらしいので、そこから始めた。

使ったのはこれ。

ゼロからわかる HTML&CSS超入門

http://www.amazon.co.jp/dp/477414536X/


メモ帳で簡単なWebページを作りながらだと結構スッと頭に入ってくる。

逆に言うと、読んでるだけだと全然あとで思い出せない。

「Ctrl+U」でページのソースを一発で見れることを知り、参考のために色んなサイトソースを見まくった。

全部頭に入ったわけじゃないけど、ここまでで最低限、検索ワードが思いつくぐらいにはなる。

ここまでで大体一ヶ月くらい。

PHPMySQL

もちろんHTMLCSSだけではてブ的なものが作れるわけはない。

っていうかほぼ路頭に迷った感じで「はてブ的なものを作る方法」をググりまくった。

結果「Semantic Scuttle」なるものでそれに近いサービスを作れることが判明。

「Semantic Scuttle」を調べてみると、どうやらPHPMySQLで動いているらしい。

でもダウンロードしてみて中身を覗いてみても何が何やらさっぱり。

これなら漢文のほうがまだ読めるわ!

ということで、PHPMySql勉強することにした。

とりあえず2つ一緒に覚えられそうだと思って元彼にこの本を借りてきた。

実践マスターPHP+MySQLPHP4/PHP5対応

http://www.amazon.co.jp//dp/4881665839



XAMPPインストールをして、PHP書いて、MySQL接続して…

ふむふむ、書いてあるとおりに作ったのは作ったけど、あんまりわからん。というのが感想

特にクラスの理解で躓いた。

ちなみにPHPを書き始めるのにあたって、eclipseという統合開発環境意味いまいちわかってないけど)を紹介され、インストール

コード書きやすすぎ、色分け便利すぎワロタwwwと思ったのを覚えている。

設定はめんどくさかったけどね。

eclipseについて詳しくは→http://www.javadrive.jp/eclipse3/

しかたない、まずはPHPだけでも頑張るかと思い、次に借りたのがこの本。

PHPによるWebアプリケーションスーパーサンプル 第2版

http://www.amazon.co.jp/dp/479733245X/


ひと通りサーッと読んで大体どんなことが書いてあるのかを頭に入れてから

必要そうなところを詳しく読んで作ってみてっていうやり方をした。

MySQLのことにも触れてあるので、そっちの復習もできた。

クラスについても薄らぼんやりわかってきて、動くものを作れるレベルには上達。

この辺りは、サボったり迷ったり環境整えたりで2ヶ月くらいかかったかな。

いよいよSemantic Scuttleを読み解く!

さて、これでいけるだろうと意気込んで長らく保存しておいたSemantic Scuttleのソースコードを見る。

わからん

モニタを見つめながら、頭のなかで脳みそが湯だっていく。

そもそもファイル間の構造がどうなってるのかわからない。

挫折。。

どうすればいいのってことで、元彼にヘルプ

MVCってのがあって、モデルとビューとコントロールってのが多分…」

φ(..)メモメモ

「とりあえずindex.phpから見て行ったらいいんじゃないかな?」

「わかんないところはプロジェクト全体を検索してみなよ」

ふーん。今でもMVCとかってのはほとんど理解してないけど、最後のは役に立った。

ファイル名やら関数名でプロジェクト内を検索しまくって、大体の構造を把握。

からない内部関数は「php関数名)」でググる

と簡単に書いてみたものの、この作業には2ヶ月ほど費やした。

Semantic Scuttleをカスタマイズ

構造はなんとなくわかったものの、実際触ってみると動かなくなるケースが多数。

ひと通りの勉強は一応したけど、実地のカスタマイズは非常に難しい。

ファイル数300を超えるプロジェクトの恐ろしさを知る。

他に使ってる人おらんのかなと思い探してみるとこんなものが。

ソーシャルブックマークソフトScuttleの強化版Semantic Scuttleを導入してみる

http://tukaikta.blog135.fc2.com/blog-entry-70.html

・【閉鎖される前に】Deliciousからデータを移行できるオープンソースCMS・scuttle

http://kachibito.net/software/scuttle.html

ありがたくカスタマイズに利用させてもらう。ホント感謝しまくりです。

でも上のURLに書いてあること以外にもカスタマイズしたいところがあった。

1.ブクマ数を記録したい

2.Voteじゃなくてブクマ数順にソートしたい

3.どうせならブックマークボタンとか作りたい

4.ブックマーク数を表示するシステムを作りたい

5.デザインダサいので変えたい

1はだいぶ考えたんだけど、DBちょっといじくって、フィールドを追加してそこに記録することにした。

2はPHPDBをあれこれして、ド汚いコードながらも根性で実装。

3で再びの挫折。なぜならjavascriptを使わなければならないことが判明したから。

javascript

まだ勉強しなきゃいけないのか…とは思ったが、初心を思い出し、頑張ることを決意。

おらあああ!なんかjavascriptの本貸せやぁああああ!と丁寧に元彼に頼んでみたところこの本が手に入った。

JavaScript 第5版

http://www.amazon.co.jp/dp/4873113296

うん、馬鹿じゃないの。こんなん理解できないよ。こっちは時間がないんだよ!

もう一冊なんか初心者向けを貸せ!

マンガでわかるJavaScript

http://www.amazon.co.jp/dp/4798027839/

おい、馬鹿にしてんのか。とは言わなかったけど拳で表現した。

でもマンガなので超読みやすい。

読了したあと、ネットと前者の書籍必要なところだけ調べることにした。

で、調べていったところ、4については

scriptタグでtypeを"text/javascript"にしてもPHPを読み込めるということがわかり、PHPで強引に表示させることにした。

3はもともとSemantic Scuttleにあったブックマークレットをちょこっと編集して解決。

これで大体1ヶ月半くらい。

デザイン

最後の難所、デザイン

一応CSS勉強したけど、美術センスのない事どこかのはいだしょうこお姉さんレベル

でもデフォルトデザインダサいってことくらいは、かろうじてわかる。

あらん限りの人脈を使ってデザイナーさんを探したところ、やっとのことで0人見つかった。

しかたないので、自分でやることに。

どうも調べたところ、TwitterのBootStrapってのがいいらしい。

CSSを見てみるが、長い! 「Bootstrap 使い方」でググる

よくわからないながらも↓とか見ながら手探りでコードを書いていく。

Twitter Bootstrapの使い方

http://greenapple-room.com/conc/user/TwitterBootstrap/bootstrap.html

これでとりあえず基本的なことがひと通りわかり、ちょっとだけよくなった。

だいぶ前にやったCSSを思い出すのが大変だった。

でもタイトル周りとかが全然ダサイまま。普通に自分で見てて萎えるので、さらに調べる。

見つかったのが↓

Bootswatch

http://bootswatch.com/

あ、なんかこれいいなと思って「Slate」っていうテーマをいじくりいじくり、色々試しながらタイトル周りとかを整理。

デザインができあがるのに、1ヶ月くらいだったかな。

完成!(?)

まあこんな感じで大体できましたー!

全部で約8ヶ月…長かった…。憑かれたぜパトラッシュ

作ってみてわかったこと

ググる ググる ググる!とりあえずなんでもググってみることが一番大事だとわかった。

誰かが同じようなことをしてることも多々あるし、少なくともヒントくらいは見つけられる。

・助けてくれる人がいるとかなり楽

ググっても出てこない情報は厳然としてある。そういう時は、経験者にアドバイスをいただく。

Yahoo知恵袋でもいいし、知人でもなんでも。ネットの優しい人達感謝するようになった。

お店の掲示板では叩かれっぱなしだけどw

プログラマーすごい

今まで何気なく見てたホームページだけど、膨大な技術結晶なんだなと思った。

その端っこに触れただけの私のようなものでもそう感じるんだから、それはそれは深遠な世界なのでしょう。

これ仕事にしてる人とか尊敬します。

秘ブのブックマークボタンとかブックマークレットとか

せっかく作ったので、使ってやって下さい。

ブックマークボタン

ブックマークボタン大(126px × 20px)

http://hibu.jp/bookmarkbutton.php#bmbd

ブックマークボタン小(42px × 20px)

http://hibu.jp/bookmarkbutton.php#bmbs

ブックマークレット

http://hibu.jp/bookmarkbutton.php#bmlt

ブクマ数表示コード

http://hibu.jp/bookmarkbutton.php#bmn

詳しくは↓をご覧あれ。

http://hibu.jp/bookmarkbutton.php

登録時の注意!

このサービスは一応「秘密の」もんなので、普段使ってるSNSユーザー名とか使わないほうがいいんではないかと思います

ブラウザに直接入力でも簡単にいけるようにドメインはまんま「hibu.jp」にしておいたので、

ブラウザブクマするのもはばかられる方はダイレクトに飛んできて下さい。

今後の予定

スマホ版作りたいなぁ…

それから、ご要望があればチューニングしていきます

ちなみに、勉強したおかげか今現在はそこそこ本職のほうで稼げてはいます

もし万が一このサイト成功したりしたら風俗あがることも考えられるのかなぁ…

願わくば、皆さんのエロライフが充実することを。

でも吉原にも遊びに来てくれると嬉しいな。

怖いところじゃないから、気軽にね。

2013-02-27

型が無い事の利点とやらが全く的を射てない

変数に型がないということの利点について考える

http://d.hatena.ne.jp/perlcodesample/touch/20130227/1361928810

が大変お粗末な内容だったので、反論記事を書きます

型推論ソースコードコンパイル時間を遅くしてしまますソースコードが大きくなってきた場合に、すばやく書いて、すばやく実行結果をもらうことができなくなります

今時のパソコンならコンパイル時間なんて大したことない。

大規模開発環境コンパイル時間よりリンク時間の方が問題になりやすいが、それは別に型の話とは関係ない。

あと、インタープリタ最近は実行時にJITコンパイラが走る。

実行時間に影響がなく、開発者の待ち時間で済む方が実はよいのでは?

統合開発環境での、メソッド自動補完の機能の実装が少し難しくなります

みんなが統合開発環境をつくるとでも?

そもそも型が不定なら補完することすらできないので、

比較対象として相応しくない。

変数に型がないとソースコードの変更に強くなります。たとえば右辺の返す型に変更があったとしても、受け取る側のソースコードを変更する必要はありません。

これは逆に危ない。

実行するまで意図したインスタンスが返ってこなくなった事実に気づかないから。

コンパイル時に指摘してくれる方が安全

変数の型を持つ言語は、型が異なるのだが、処理としては同一の処理を行いたい場合には、オーバーロードという機能を使う必要があります変数の型がなければ、オーバーロード機能必要ではなく、ただ単にif文で分岐すればよいだけなのでとても楽です。

インターフェイスというもの勉強してください。

CならVTable。Javaならinstanceofなど同等の事はできます

というか、これ。型を意識しまくったコードじゃないですか???

C++テンプレートのような複雑でデバッグしにくい機能を使ったりしなければなりません。

とあるインスタンスしか入ってないつもりのリスト

実は全然ちがうものが混ざってた!なんて事故コンパイラによって止められる分、デバッグする必要すら無いんですけどね。

変数に型がないとどのような型の値が代入されているかからないという批判があるかと思います。可読性の問題で

変数に何が入ってるかわからないよりも、

インスタンスが何を持ってるのかわからない方が可読性に問題がある。

2012-06-21

MacBookを買うか悩んでみた

最初に候補になったのはこれ。

MacBook Pro 2400/13.3 MD313J/A

http://kakaku.com/item/K0000305712/


一つ前のMacBook Pro

時期的に最安値ではないけれど、新モデルが出て価格も下がってきているし

マックならこれでいいかなと。


一つ前のMacBook Air 11インチも絶賛値下がり中で

候補にはあがったのだけど、

MacBook Air 1600/11.6 MC969J/A

http://kakaku.com/item/K0000273074/


ベンチマークスコア(http://browser.primatelabs.com/mac-benchmarks)をみると

MacBook Pro (13-inch Late 2011) 6048 に対して

MacBook Air (11-inch Mid 2011) 4592 と


プログラミングが主な用途としても

やっぱり物足りないかなと思ってやめた。

Airだとメモリも増設できないしね。



で、このあたりで

http://browser.primatelabs.com/mac-benchmarks を眺めてて気づいたんだけど

モデルMacBook Airスコアがやたらといい。


MacBook Air (11-inch Mid 2012) 5719

MacBook Air (13-inch Mid 2012) 6113


Air 11インチでも、買おうとしていた MacBook Pro と遜色ないし

Air 13インチなら、スコア的には上になってる。


じゃあ、もうMacBook Airの新モデルでよくね?って

話になるのだけど、問題は価格だ。

せっかく新モデルなら…ってことで 8G までメモリは上げておくだろうし

Air 11インチにするなら、CPUもアップしておけば

MacBook Air (11-inch Mid 2012) 6902

スコア的にかなり高くなるので、心情的には盛ってしまいたい…。

とか、そんなことをしていると余裕で10万は超える。

ちょっとマック使ってみようかなっていう気持ちなのに

いきなり10万超は辛いものがある。


じゃあ、もう最初に戻って、一つ前のMacBook Proでいいじゃんってなるのだけど、

だがちょっと待って欲しい。


マックって本当に必要なんだろうか?

本当はWindowsで十分なんじゃね?と思い始め、探してみると

例えば、これ

U24E U24E-PX2430 [シルバー]

http://kakaku.com/item/K0000308806/


買おうとしていた MacBook Pro比較すると、完全に同等以上なのに5万を切るコスパ

しかも、1.5kgでMacBook Proより軽く、持ち運びを考えてる自分にとっては

もしかして、これがベストな選択なんじゃねと思えてきた。


さて、ここから本題なんですが

自分はいったいどれを買えばいいでしょうか;;

マックは周りが使ってて何かカッコいいから使ってみたい

・主な用途は iPhoneAndroidWeb系のプログラミング

統合開発環境サクサク動くのが理想

毎日持ち運びたい(通勤

マックならBoot CampWindowsも使いたい

・安い方がいいけど、10万超が出せないわけではない

誰か教えてください、お願いしますm(_ _)m

2011-12-03

ITお仕事

先日、TBS番組夢の扉+」を見ていた。TBSの中で視ているのはこの番組だけだが。先日のテーマは「小さな町工場から日本製造業を支える!」というもので、職人集団「チーム等々力」の免震テーブルの開発について綴られていた。

番組を視ていてかなり違和感を感じたんですね。

確かに、各職人技術はすごい。ああい職人技が日本を縁の下の力持ちとして支えているのも事実だと思う。例えば、新幹線の先頭ノーズはあれは職人手作業じゃなかっただろうか?

違和感を感じたのは、「職人大学教授の求めているモノを理解出来ない」という点だった。結局番組では理系大学出身の技術者が、大学教授の要求(要件定義)を職人に分かるように図面に起こした事になっている。

それでいいんだっけ? 図面になっている物は作れるが、図面を起こす事が出来ないということだろうか?

我々IT技術者は、顧客のまだ具体的になっていない要求をヒヤリングするところからまり、要件定義をし、設計し、実装し、テストし、納入し、運用保守をする。だから顧客専門用語技術も分からなければならないし、情報技術も分かっていなければならないし、運用保守コストも考えなければならない。それに情報技術進歩が早いにもかかわらず、分野によっては製品寿命20年とかいうのもあるから、新技術だけ知っていても話にならない。

違和感を感じたのはそこなんですよね。

「チーム等々力」の方々は、いい製品を作るかもしれないけれど、IT業界的に言えば、コーディングだけ、という事に。否、それでも範囲が広い。コーディングは一種の「設計」でもあるから、範囲はもっと狭い。

そういえば、ITで「制作・製造」ってどの部分を指すんでしょうね。もしかしてコンパイルリンクしている時間だけかも。なにしろ、コーディング設計の一部であるから

自分は、顧客の要求をヒヤリングするところから運用保守まで全てに関わっている。ヒヤリングしている時点でどう実装すれば良いか、どう保守するか、保守のための実装はどうするか、を考えながら顧客と接している(ここでいう実装とは、ハードウェアも含む)。

しかし、最近はそういう案件も少ない。

かなりゼネコン化されているので、元請け仕事を取ってきて、こちらに仕事を発注する事になる。その時点で、かなりの情報が欠落している。元請けの方は、顧客(この場合エンドユーザー)の専門が分からないまま受注している事が多い。その上、実装を分からずに発注してくるから、かなり困る。結局、元請けに対し、かなりの懸案事項が発生する事態となる。顧客に対してこの設計では足りないとか、設計に対し実装不可能とか。それをいちいち指摘しないとならないが、これが時間がかかる。

こういう案件がたくさん来ると、今度は実装出来る人間限界が出てくる。なので、実装するのをさらに下層の外注ソフトハウスに出すの事になるのだが、今度はこれが、エンドユーザーの事が分からないため、なんだかよく分からないブツが上がってくる。その上、金の切れ目は縁の切れ目だから運用保守に関しては全く考慮されていないブツ。もちろん、中には優秀な外注さんもいて、すばらしいコーディングブツが出来上がってくる事もあるが、そういう人に出会える確率は万分の一程度か。

そこへ追い打ちをかけるように、コスト低減要求と短納期要求、仕様変更人月神話

顧客の頭の中を覗く人、顧客の要求を情報技術者向けに翻訳する人、翻訳されたものを実装する人、実装されたモノをテストする人、テストし終えたモノを納入・設置する人、運用保守する人、がそれぞれ分業・連携取れていないのが、現日本IT産業の姿です

デスマーチになるわけですよ。

最近は自社の社員も質が下がってきていて、Windowsしかいじれないとか、統合開発環境内でしかブツが作れないとか、コンピュータがどう動いているかイメージ出来ないとか、果ては、顧客専門用語が分からない、というのもいる。ソフトハウスに至っては、作ったはいいが、作ったモノに対してデバッグ出来ないとか言い出す始末。

というわけで、就活生には、ITお勧めしない。もし、プログラミングだけしていたいというのであれば、メーカーではなく、小さなソフトハウス就職した方が良い。でなければ、顧客と対等(同等)の(製品)知識と、新旧情報技術対応出来るだけの能力が必要とされるのである

2011-08-16

プログラマー資格制度

プログラムを理解させるには?ブックマークコメントを読んでいて。

ブックマークコメントの中に、「資格」とかのコメントがいくつかあった。

既に情報処理試験とかあって、いろんなIT系資格があるのだけど、プログラマーやってる人なら誰でも感づいているとは思うが、資格など何の役にもたたない、という事で。高度情報処理資格を持っているからと言って、プログラム(その他設計コンサル)が出来るとは限らず、逆に何の資格も持っていないのに、すばらしいプログラムをする人がいる。

まぁ、これら既存IT系資格にある一定の目安にはなるとは思うけれども、万能では無いのも確か。昨今の不況、ITバブル崩壊で、IT系資格資格手当が真っ先に削られたのも、記憶に新しい(弊社だけかもしれないが)。

雇う外注ソフトハウスから派遣されて来た人など、だいたい15分も話せば、どのくらい出来るか、使えるかは判断出来る。これは資格では計れないものだ。

仮に、弁護士行政書士医師など、士制や免許制はどうだろうか?

やはり、使える弁護士がいると思いきや、藪医者もいるわけで。

車の免許はどうだろう?

交通事故は起きるし、無免許運転ははびこっている。

プログラマーはどうだろうか?

例えばトイレ。水を流すのに、最近トイレは、リモコンスイッチを押すと水が流れるが、あれ、プログラムだよね。

例えば炊飯器。米と水を入れて、スイッチを押せば、ご飯が炊きあがるが、これもプログラムだ。

車。ハイブリットや低燃費車が走っているが、あれは電子制御で動いている。

飛行機最近航空機は油圧では無く、フライバイワイヤーだ。

ロケットアポロファミコンにも劣るコンピュータで月まで行ったが、プログラムだ。

先日の中国の高速鉄道事故も、ATCプログラムミス(?)による事故だ。

先日の$oftbank携帯の通信障害は、故意に仕組まれた通信障害だった。

どこにでもプログラムは入り込んでいるし、そのプログラムによって、便利になっている反面、人命をも奪い、都市機能麻痺させる事も出来る。

にもかかわらず、「資格」「免許」無し。

なんでだろう?

介護について考えてみよう。

ヘルパー資格介護士とかいろんな資格が必要だが、世間一般的には、ワーキングプア、もしくはそれに近い悲鳴が聞こえてくる。

なんでだろう?

資格免許を持っていても、それが収入時間に反映されないいい例だと思う。

プログラマー」「SE」と名乗るのは簡単だ。「漫画家」「小説家」と名乗るのと同じように。なんだったら、名刺名前の上にそういう肩書きを書いておけば、「プログラマー」であり「SEである

漫画家小説家と違うのは、漫画家小説家は「売れなければただの無職」という事だ。あっという間に食えなくなる。自分アシスタントをやっていたし。アシスタントでは、ちょっと食っていけなかった(アシスタント作家自身は違うが、それなりに間近で見てはいるわけで)。

プログラマーSEがそうならないのは何故だろう?

誰かがリカバリーしてしまから、では無かろうか。

プログラマーSEが個人事業種の人達だったら、その通りになるだろうけど、多分、半分以上の技術者は、どこぞの会社所属しているサラリーマンだと思う。もちろん、これはこれでメリットがある。営業や経理・総務・庶務等が他の人に分担されている事や、会社などの福利厚生も使えるから

逆に「金の切れ目が縁の切れ目」が使いにくいというのがある。同僚が失敗したり行方不明自殺等というのはこの業界日常茶飯事だが、そのリカバリーは必ず誰かがやらなければならない。そして不思議な事に、それをやる人間は決まっている。失敗したマンガ小説を他の作家リカバリーする、というのはあり得ないのにね。

資格制度免許制度が万能とは言わないが、有効かどうかと言われると、自分には判断出来ない。しかし、前述したとおり、非常にクリティカルなモノを作る場合も有り、無資格なのはそれはどうだろうか?とも思う。

プログラマーSEミスすれば、都市機能麻痺し、人が死に、医療器具が動作せず、電力が起きず、このインターネットすら動かない。TVラジオダメ第1次産業以外のほとんどが停止する事になる。

そんなクリティカル仕事なのに、この士農工商穢多非人非人のような扱いを受けるのは何故なんだろうか?

経営者管理からみれば、次から次へとターゲットが蛆のように沸いて出てくる職業であり、使えるだけ使って、あとは使い捨て、という業界だし。

一度、プログラマーSE自分のやっている仕事がどういう事なのか、考えてみた方が良いのでは無いだろうか?

考える事は出来ると思うよ? だって、「完全動作する事を常に考えている」のだから。それが過失・故意にでも動かなかった場合、どういう事になるかは、簡単に想像出来るよね。

絵描き小説書きや楽器演奏作曲は、小学校の頃、学校で習うから、分かると思うんだけど、【今の現役世代以上】のプログラマーSEは、小学校で習わなかった。この差が非常に大きいのだと思う。

どんな無能経営者無能管理だって、「自分が絵を描けない・難しい」というのは、自分で分かる。なぜなら、義務教育時代にやっていたから。ところがプログラミングSEはどうか。やってないから分からない、わけだ。

あと、拍車をかけているのが、どこかが発表している「情報技術者何万人不足」という発表。この時点で「質」が考えられていない。そこへ、程度の低い派遣業が入り込んで、エライ事になる。そもそも派遣とは、受け側に技術が無いからその手助けに赴くものであって、人身売買では無い。先日も弊社で「組み込み系の低いレイヤーの部分を作るC言語(かなりアセンブラ寄り)が出来る技術者」を要求したのに、実際ソフトハウスから派遣されてきた人間は「C言語ポインタという概念も知らない」技術者だった(どうやら、Windows統合開発環境上においてC#だったら使える、というレベルだったようだ)。もちろん、そんな人員を使えるわけ無いのでその場でお引き取りを願った。こういう、「質」や「ベクトル」に関係無く「頭数」だけでどうにかなると思っている奴らが非常に多い。日本の(少なくとも情報系)派遣や客先常駐の考え方は、間違っていると思う。

そう考えると、ある一定の基準として、質やベクトルを明記する必要はあるのかもしれない、と思う。それが労働時間賃金に反映されるかどうかは分からないが。

2011-05-15

レガシープログラマ

まぁ、タイトルの「レガシープログラマ」とは私の事なんですけどね。

最近(?)外注や自社の若いのが作ってくるプログラム

    if( foo == TRUE ){

という判定文をよく見かける(fooはいろんなオブジェクトだと思ってほしい)。

個人的には、この書き方、嫌いなんだよね。

    if( foo ){

    if( foo != FALSE ){

と書いて欲しいわけよ。とにかく「TRUEか?」という判定にはして欲しくないわけです

で、なんでこう書くの?と外注や若い連中に聞いたら、「TUREは1ですから」と必ず答える(断言する)。

あ、あれ???自分は「TRUEはFALSEでは無い。確定しているのはFALSE=0という事だけ」だとずっと思っていたんですわ。

古いC言語風に書けばこんな感じ。

#define FALSE 0
#define TRUE (!FALSE)

かに、実際に値を表示させてみると、昔のVC6だと「1」という結果が出てくるし、VB6だと「-1」という結果が出てくる。これ、当時混乱の元だったんだよね。

しいC++や規格ではBOOL型というのがきちんと定義されたと思うけど、製品寿命20年とかいう私の職場では、DOSやC(K&R)、アセンブラは現役だし、プラットフォームもなにもWindowsに限らない。組み込みマイコンも使う(うちのところはVxWOKSだが)し、UNIXLINUXも使う。

もちろん、マネージドC++.netFramework)やC#JAVA、Parlも私は使うし。でも、どのプラットフォームでどの言語になっても「TRUEか?」という判定文は使ってこなかった。

で、試しに、VC2008のincludeフォルダgrepしてみたら、

#define TRUE 1

あ、ほんとに「1」だ。

処理系によっては(特に古い処理系)、

typedef bool int

なんて見かけるから、やろうと思えば「5」でも何でも数字が入ってしまうわけですよ。そこで「== TRUE」なんてやられたら、絶対に成立しないわけで。バグの温床になるんじゃないかなー、と思ってかたくなに前述の姿勢を持っていたわけです

今(最近の)言語はきちんと「BOOL」型(またはboolという名のクラス)を定義されていて、コンパイルエラーになるか、自動的に補正してもらえるのかもしれないけど、ちょっと気持ち悪い。

最近、ちょくちょく外注や若い連中と意見や話が合わず、「ああ、俺ってレガシープログラマなんだな」と思う事が多くなった今日この頃ネットワークに平気でリトルエンディアンのデータを流すとか、勘弁して欲しいLANアナライザでデータが見にくくてしょうが無い。

でもなー、何も、Windows統合開発環境だけの仕事で食っていけるとは思って欲しくないなぁ。

2011-01-29

読んでいて嫌になったプログラム

なんか知らないけど、外注の不具合を直せとか、他人の尻ぬぐいとか、破綻したプロジェクトの火消しとか、ばかりで、0からの開発なんてほとんどやらせてもらえないんだが

今まで手をつけた他人のプログラムで嫌になったランキング

第7位 main関数だけで2000行overだったプログラム(C言語)

    ある意味作った奴は天才だと思う。俺には2000行も覚えていられない

第6位 switch文の1つのcaseブロックが1000行overだったプログラム(C言語)

    最終的にはswitch文が終わったのは1万行を超えていたorz

第5位 コメント文ばっかりと思ったプログラムが、実は日本語関数名だったプログラム(VB)

    騙された(苦笑)

第4位 どんなに読んで修正して実行しても、いっこうに直らないと思ったら、関数突入直後にreturnしていたプログラム(C言語)

    最初のreturn文に気が付かなかった自分が悪いのか

第3位 どんなに読んで修正して実行しても、いっこうに直らないと思ったら、#if 0 ~ #endifでコメントアウトしていたプログラム(C言語)

    やはり気が付かなかった自分が悪いのか。プリコンパイラの出力結果で眺めていれば良かったorz

第2位 全くインデントが無いプログラム(C言語)

第1位 変数名が全部女性名前だったプログラム(C言語)

    全く理解出来んかったわ
ログイン ユーザー登録
ようこそ ゲスト さん