はてなキーワード: eclipseとは
2年半ほど経ちますが、空前のNTT退職ブームなので便乗しちゃいます。
まず既知の通りNTTグループは社員数約28万人と非常に大きな組織であり、その中で研究所はエリート中のエリートが就く位置にある。つまり上記の方達は警察でいえばキャリア組にあたる方達にあたる。以降キャリア組と呼ばせていただく。
一方で、私は地方のノンキャリア警察官のようなポジションにある子会社(大株主は研究所)出身なので、その分際でこのようなエントリーを書くのはおこがましいかもしれないが、
キャリア組層のエントリーなのに共感できる部分がとても多い上に、すでに [ 10年勤めたNTTを退職しました(無能編) https://anond.hatelabo.jp/20181126192228 ]のようなノンキャリアそうな人(←失礼はご愛嬌)のエントリーもあったりしたのでちゃっかり便乗させてもらう。
データとデー子もこんな感じなのだろうか。ぜひ知りたいものだ。
組込み界では今時のプログラミング界隈の常識の多くが通用しない。最初にあなたが相手にするのはRAM 1kB, ROM 4kB、クロック 20MHzなどというMCUである。
使用する言語はC99かアセンブラである。幸か不幸かC++を使わされることもある。既にC++で書かれたプロダクトに係わってはならない。
当然フロントエンド界隈などのようなイミュータブルインスタンスを大量に使い捨てる富豪的な言語やアプローチの採用は難しいだろう。
トラブルが起きたときにプログラムだけでなく回路図を読んでハード側に問題があるこを示せないと極めて立場が悪くなる。
むしろプログラムし易いコンポーネントの選択や回路構成に積極的に口を出していかないと動かない責任だけがソフト担当者に投げられて割を食う。
開発環境はWindows上のEclipseベースの統合環境が使えれば上等であり、運が悪ければMCUメーカーお仕着せのクソIDEを使わせられる。Macで優雅に開発することはまずあり得ないだろう。
底辺企業でバージョンコントロールシステムの導入のための意識改革は簡単ではない。もし強行に導入しようとすればあなたは孤立する。
誰かがIoTだ、機械学習だの言い始めても社全体として主力製品を作るのでなければ本気で取り組んではいけない。あなたがそのテクノロジーを理解していても誰もサポートもメンテもしてくれないのだから。
キーボード叩いてると突然ウっとなって涙がじわじわにじんでくる。きっかけはよくわからない。
涙がにじむとトイレにこもってできるだけ涙を排出し、自席に戻る。
涙が出るたび一々トイレに行かなければならないのが面倒くさい。
涙を出しきったつもりで自席に戻ってもしばらくは残尿みたいに止まらないのも面倒くさい。
そういうのが一々面倒くさいからそのまま涙流しながら仕事させてほしい。
なので泣きながら仕事してたら変に心配されてしまうと思うが、でももうデフォルトで涙がでてくるため
自分としてはなんかあくびとかくしゃみとか居眠りぐらいの位置づけであり、あまり気にしないでほしい。
居眠りしながら仕事してる人間もいてそれが黙認されてるくらいゆるい会社なので
泣くことも許してくれないかなあとおもう。
きっかけはエンジニアのおじさんに理系特有の早口でしゃべられた上長文赤字のメールを送りつけられたからだとおもう。違うかもしれない。
そういえば職場で始めて泣いたのはおじさんからバカでかいフォントの指摘メール送られてきたときだった。
なんでこんなにおじさんから圧かけられがちかというと、この分野の知識が本当に本当になく不勉強だからだ。
弊社はメガバンク系SIer会社なのだが、自分は最近までwebアプリの開発を担当していた。eclipseでjavaでjQueryでUNIXでshellだったのだ。
それが今のチームに異動となり、分野は一変、メインフレームでzOSでcobolでファンクションキーになったのだ。
最初はわからないことが多いけど弊社主力の分野なので頑張ろうと思った。社内研修かたっぱしからでてメインフレームで遊ぼうよんで
がんばってついてこうとした、でも座学だけでは知識は身につかなかった。
手を動かしたかったが、Sierとはコードは書かないし資源引き揚げもしないみたいだ。
そういうのは製造委託先のエンジニア達の仕事で、では我々は何をするかというと、エンジニアさんの作った内部設計書、
テストケース、成果物一覧、スクリーンショットを確認するのである。
でもそもそも何が確認観点で何がまちがってて何がどうなってれば正しいのかよくわからないのだ。
自分の会社の上司先輩に聞きたかったが、ある程度スキルをもった上司先輩は業務に忙殺されておりもはやふだんどこにいるかよくわからない。
というのも近年弊社では超大規模プロジェクトが発足しており、
ある程度スキルをもった人間はそちらに根こそぎもってかれてしまっている。
自分はメインは運用・保守・メンテナンスチームなので、そういう上司先輩とは関わりがない。
またこのプロジェクトでごっそり人がもってかれてるためメンテナンスチームの人間が少ない。なのでとにかく一人あたりの作業が膨大なのだ。
そして作業内容は前述のとおり。委託先のつくった成果物をチェックし、品質関連の定型的な資料をつくり、承認する。
なにをみたらよいかわからない成果物がどんどん送られてきてどんどんチェックしなければいけないのがつらい。
なにをしたらいいかわからないことをどんどんしなければならないのがつらい。
同じメンテナンス担当の先輩にきいてもよくわからないと返答がきたので
いまさらなにをそんなこと聞くんだみたいな雰囲気をにおわせながら
理系特有の早口でいまさらそんなこと確認しても意味ないですっていわれたからもうめんどうくさくなってしまった。
でもかつてはソースかいてテストして資源ひきあげする立場だった身をしては、ちゃんと確認したい気持ちがある。
でも同時に、とんちんかんな質問する担当者に対してエンジニアがイラっとする感覚も容易に想像つくので
もうなにもかもめんどうくさい。
明るくない分野の仕事をてさぐりでやらなければなければならないのがめんどうくさい。
チェックシートに日付をひたすら埋める仕事がつらい。※つじつまをあわせるために、全て同じ日付にしてはならない。
これらをやらなくてもどうせシステムはちゃんとうごくのがわかってるから尚つらい。
かつてソースかいてテストしてた時代は、ネットにあふれるイシキタカイキラキラサイシンギジュツブログと
自分が担当しているつまらなくぱっとしない時代遅れのwebアプリに不満を感じていた。
テストといってはひたすらスクリーンショットを延々と印刷する作業にいったいなんの意味があるのだろうと思っていた。
昨日Qiitaでメインフレーム関連の記事をあさっていたところ、zOSではteraTermによりUNIXライクな操作ができることを知った。
また、ftpが使えることも知った。ということはffftpが使えるかもしれない。希望の光に見える。うれしい。すごくうれしい。
USSが使いこなせればもうすこしこのメインフレームまわりに馴染みやすくなるかもしれない。
※補足
若者に気を使わせやがって
長く書きます。お金の話の経験とかも、少しでも参考にしてください。
10年前のVistaが搭載されていた頃の家電量販店で一番安かったCeleron 1コア メモリ1GB グラボなしノートだからプログラミングに向いてないのかもしれない
お金のない環境を整えられない学生はつらいよね。明らかに札束で殴れず時間を使って損してる。
twitterできないメインで使えないのもまず、重すぎるからっていうのもありそう。
スペックが足りてなさすぎる。まずは6,7万出してスペックを整えよう。
すごい人たちは幼少の頃からパソコンがあって、パソコンをいじるだけの時間があって、承認されてる。
しかも、コミュ症だとかなんだかんだ言いながらも、ネットではきちんと弾けてるし、人望もある。
彼らを理解するのはすっごく難しい。
経済格差が多すぎて、彼らが積んできた経験と持っている環境が違いすぎるから。
プログラム自体は数学を解くようですごく楽しいのだけれど、なぜ苦しい勉強をしながらプログラムをずっとやっていられるのかわからない。
環境はMac(高すぎて揃えるなんてとんでもない)じゃないから、先人たちの簡単に手順化された知恵を受けづらく、プログラムの環境をととえるまでが大変だし、
ライブラリ関係のエラーコードは自分の力で、ライブラリを見つけに行かないとダメで、ウェブで検索しても彼らよりもずっと時間がかかる。
そこをきちんと理解したうえで、自分がどこまでやりたいのか、どうしてやりたいのか
自分はプログラマに向いているのか、考えながら、勉強していったほうが良い。
ちなみに私はプログラムを解くの好きだったし、ある程度は得意だった。
ADHDと自閉症混じってるから、だから職人的なことをやりたかったし、テストをかけば不注意で大きな損失を出す可能性も低くなる。
だからプログラマを目指しているし、プログラマとして就職するつもりなんだよね。
私も無名で、プログラム力的にはpaizaのSランクは、後ちょっと足りない、運が良ければ成功するんじゃない?ってレベル。
ツイッタランドのすごい人たちは目指すと疲れるだけなのでほどほどにね。
彼らは多分余裕綽々でS取れる。
paizaの出題は競技プログラムの一種で、競技プログラムっていうのはある程度出題の仕方が似通ってる。
複数回解いていると昔に残ったコードとか再利用できたりするから有利になるっていうのもある。
ゲームで例えるとRPG好きな奴にFPSやらせても全く活躍できないけど、FPSが得意な奴に別のFPSゲーやらせてもできたりするでしょ。
開発のジャンルの違いがあることは覚えといて。
Mac買えなくて開発環境として選ぶなら,windowsよりlinuxのほうが良い。
windowsだと環境整える前にストレスがやばいし、パソコンが死んだ場合のストレスもやばい。
あと、古いパソコンだとUSBブートができなかったのも割とめんどくさかったし、回線がめちゃくちゃ低速だったから、ISOファイルのダウンロードに半日かかってたかな。
VirtualBoxはすごいスペック持っている人が使うものなので、買い換えないならクリーンインストールかデュアルブート推奨。
ubuntuにしとけば、ウイルス系もあんまり構う必要性がなくなるからね。
起動にVirtualBox起動に数分待って、端末以外を使おうとすると固まるみたいなことやってると辛さが溜まるから。
デビットカードでも行ける。
するが銀行に口座を作ってデビットカードを申しこめば、20歳以下でもなんとかなる。(年齢によっては親の同意は必要だけど)
2,3週間かかるけど、デビットカード作っておくことで色々なサービスを体験できるようになるのは選択肢を増やすにあたって重要なことだから是非。
一応著名なプログラマーをTwitterでフォローしてるけど、ご飯の画像を載せてたり、若者の僕には通じない寒いギャク連発してたり、ロリっぽい画像をRTしてたりと、twitterはメインの情報収集としては利用してない。
ネット上は怖い人もたくさんいるし、まさかりがちょくちょく飛んでくるけど、変にウケると拡散してくれて色々な人が声をかけてくれるのも確かだったりする。
ゆっくりと自分の使い方を覚えていけば少しずつ楽しめると思う。
実際、SNSは情報の精度としては当てにならないし、勉強のためってSNSを使うとストレスで辛くなった。
自分の好きな人だけをフォローすると精神安定するよ、あとフォロー返しはやる必要はない。やってるとTL荒れるからね。
(リストとか使いこなせるなら別なんだろうけどね)
おすすめ度は◎○△であらわす。
おすすめ度:◎ 条件:最低で6,7万円のお金が必要。 おすすめはlenovoのeシリーズ。 重いけど、コスパは良好比較的安めに上がってキーボードも打ちやすいのが良い。 いまはcorei5, メモリ8GBの使ってて、大体(重めのゲーム以外)したいことはなんとかなる。 SSDはあったら便利だけど、一番重要なのはメモリな。 開発したいなら8GBは必須。 (苦労話: 古すぎてノートなのにキーボードを常時接続必要だったり、画像が多いサイトはブラウザを選ぶ必要があったり、何よりもIDEが使えなくて辛かった。 windows vistaのupdateで数日固まったり、ゴミでしかなかった。 )
おすすめ度:◎ 条件:契約できる年齢か、親の同意(年4万円くらいの出費)が必要 何をするにもまず回線速度が遅いと話にならない。 IDE落としたり、クラウドにファイル上げたり、AWS使う時のアップロードとか、音声会話とか。 〇〇をしてみたいと思ったら,ダウンロードに時間がかからないことは、モチベーションのためにめちゃくちゃ大切。 (苦労話: ISOファイルをダウンロードするのに半日かかるのが普通だと思ってたけど、 まともな光回線+まともなルータを利用したら、ダウンロードに1時間ちょいになってびっくりした。 特に古いルータだったりするとボルトネックになったりする。 )
おすすめ度:○ 条件:linuxで生きていくという覚悟 windowsよりは快適。 他のlinuxISOファイルを焼いたりするときにちょっと苦労するかもしれないし、軽いの選ぶと良いかも。 実際普段使うものがネットとプログラムツールだけだったから、なんとかなったし、ゲームの選択肢が強制的に排除されるので、 少しはプログラムに触りやすくなるかもしれない。 (苦労話: エクセル、パワポ必要とか言われた時に、officeのレイアウトで死んだりする。 資料はPDFな。 買い換えない場合のクリーンインストールは↓ 昔のパソコンでもLinuxとか入れればそれなりに動くよっていう人はいるけど、やっぱり社会的な通信網と平均的なマシンスペックが上がっているせいで、ウェブ自体が要求するスペックも上がってて低スペックだとつらい。 ブラウザはw3mとか使って、端末タブを開いてvimで開発してた。 なんでかって言うと普通にブラウザ使うとレスポンスが重すぎたから。 でもその使いづらさの分だけ損してるんだよね。 )
おすすめ度:○ 条件:電車代などの交通費を用意可能 できること: 他人に触発されるタイプなら、すごい人たちの興味の方向を見て学ぶ方向が増えるかもしれない。 後は交通費と宿泊費の出る勉強会なんてものもあるので応募してみると良いかもしれない。 高校生なら、交通費出してくれるっていう太っ腹な勉強会もちらほらある。 一、二回は顔出し推奨。 欠点はあって、コミュ症は治らないので、友達ができるとは限らない。
おすすめ度:△ 条件:家庭環境による できること: 自分の向上心による。 大学生になって一人暮らしになったら、パソコンに触れる時間は多くなったとは思う。 (勉強しているとは言っていない)
おすすめ度:○ 条件:3,4万円の出費 できること: まず、パソコンを長時間触っていても疲れなくなる。 デスクの高さと椅子の高さはとても大切なもの。 疲れなくなるし、指が攣りそうになることもない。 机の高さはきちんと調べたほうが良い、あってることが重要 今使っているのは1万ちょいの新品デスク(ニッセンのフリーテーブル)と3万弱の中古のオフィスチェア 基本的に3000円位のデスクは耐久性と高さがゴミだったりするので注意。 机は http://blog.livedoor.jp/itsoku/archives/38727329.html の66のテンプレを見ておくと良いかな。 (苦労話: しかもノートパソコンでデスクと椅子がなくて狭いこたつの上か100均で買ってきた台の上で、パソコンを使っていたからパソコンの位置の高さが合わなくて姿勢がどうしても悪くなるせいで長時間パソコンをいじることもできなかった。 後は寝ながらパソコンをいじるみたいなみたいな堕落生活してたら、筋肉が硬直してまともに手を握れなくなって、医者にかかることになって1万円程度お金がかかったし、 2ヶ月位まともにパソコン触れなくなった。 ちょうどその時期は、筆記用具をほとんど使わない単位だけだったから良かったものの、他の単位とってたらもっと治療に時間がかかったかもね。 )
おすすめ度:○ 条件:それなりのスペックのパソコン、それなり大きさのディスプレイ できること: 設定しなくても、複数のファイルから補完が聞くし、フォルダ内の全てのファイルから検索、置換ができるのが良い。 ただし、ディスプレイが小さいと実際に開発できる範囲が小さくなるのは注意。 (苦労話: IDEは普通に使えるなら作業効率が全く違って、設定少なくても補完も他のファイルやライブラリから保管してくれるたりする。 でも、昔の環境だとeclipseはフリーソフトだけど環境整えるまでが辛いし、重いしで、開くとブラウザすらまともに操作できなくのが辛い。 だから、ブラウザでチュートリアルとか見ててもパソコンに待たされてストレスだった。 まともに使うには設定がめちゃくちゃ必要なのは実際疲れた。 (ac.jpのメールアドレスは必要だけど)学生無料なIDEでjetbrains製品があるけど、設定しなきゃダメなvimとかと違ってマウスで操作できるのがすごい良い。 端末ではコピペが簡単にできなくて、数は少ないけどよくあるミスが、間違えてcommandモードで貼り付けてやり直したり、vimのline numberの設定をいじらずにvimからコピペができる。 コレだけでイライラ具合が全然変わる。 )
おすすめ度:◎ 条件:図書館や図書室で本を注文できるか、本があるか できること: プログラムの能力が向上する。 おすすめされている本を探すと良い。 プログラム初学者なら、ネットだけで勉強するよりは効率がある。 とりあえず、やりたいことなくて、プログラム力をただ上げておきたい場合は、 競技プログラムやりたいとしても下の順番で進めると良いかもしれない。 あと、プログラムには自分が到達しているところまでで言うと、次の順で壁があって能力が足りないと行き詰まることがある。 >> 関数化 → クラス化 (→ ポインター) → 再帰 → 関数型言語 << 数年かけて勉強して次の段階に勧めないならプログラマは諦めたほうが良いかもしれない。 (能力が足りないのは上司も自分もつらくなるよ)
おすすめ度:○ 条件:1万円弱のお金 できること: ノートパソコンなら2個の画面を使えると作業効率が違う。 特に手打ち系のコーディング練習とかがめちゃくちゃ捗るようになる。 (苦労話: IDE系列は画面を割と占拠するので、ノートパソコンの狭い画面だと辛い。 でも大きすぎる画面だと持ち運べなくなるのでダメ。 画素数が上がればその分だけ小さく表現ができるので、画面サイズが同じでも画素数が違うとかなり大きさが違って見えたりする。 )
おすすめ度:○ 条件:学力があること努力すること、覚悟 できること: 奨学金を利用して環境を整えたり、時間が増えるから更に勉強できる。 プログラム関係もそれ以外も就職先が増える。 また、これからの転職したくなった時に逃げ道が増える。 欠点、国立は安いけど、入学にそれ相応の努力が必要。私立行けるなら、苦労してないと思う。 あと免除制度っていうのがあるから、そういうのも利用しつつ費用を安く上げよう
おすすめ度:○ 条件:年齢(か、親の同意) できること: ちょっとした電子払いができるようになる。 多重債務は起こらない。 欠点としては、定期払いはできないので携帯の契約とかはできないことに注意。
低スペックのパソコンしか無いのは、多分家庭環境のせいでもあって、
君がアルバイトもできるかどうかわからないし、アルバイトしてもそのお金が君のもとに入ってくるかはわからない。
お金も無限にあるわけじゃないし、時には経済格差を感じて辛くなることもあるだろう。
少ないお金の中でうまくやりくりして、それでも自分の力にしていってほしい。
(お金が潤沢にあるなら親を説き伏せることをがんばって)
応援してるよ。
意識低い企業内研究者です。プログラミングはサブウエポン。だけど趣味でも勉強してる。
働き方改革のせいで早く帰れって言われて、酒のみながら今これを書いてる。
C言語とかC++は・・・これで作らないといけないものが今の所ないし、これでお金を稼ぐのはハードルが高いし、
WindowsのAPIを使って複雑なプログラムを作りたいわけじゃないのでwhileとかifとか基本的な構文だけ覚えるだけで満足。
組み込みプログラミングではC言語はいまだに現役。お金も普通に稼げると思うよ!次代のCOBOLと化しそうで怖いとこはあるけど。
Javaは・・・使える人が多いからあえて今から学習しなくてもいいような気がする。
文字列の結合だけでもダメやり方と良いやり方があるらしくて、何かPHPのようにその言語特有のセオリーみたいなのを覚えるのが面倒くさそうなので入門の時点で学習するのをやめた。
セオリーとかあるかもしんないけど速度とか気に揉むまえに書いて測れ。たいていは杞憂か、あるいはCPUパワーで殴れるから。
Goは・・・HTTP/2が使えるから学習してる。他の言語だとnghttp2をインストールしないといけないようなのでGo便利だと思ってる。
ライブラリの選択肢が多すぎるのでこういうのが作りたいってときにこれを使うのがいいよっていうのが知りたい。
GUI作るのにライブラリありすぎてどうやって選べばいいのかさっぱりわかんない。
Goでデータベース扱うならこれを使え、だけどMySQLしか使わないならこれを使え、あっSQLiteならこっちのライブラリ使うと便利みたいなこういう情報が欲しい。
GoでGUIつくるの?あんまり普通じゃない気がする。軽量プロセスのうまみがそんなない(詳しい人に否定されそうだけど)
普通にC#(mono/.net)かwebアプリにするかで良くないか?
ただ、言語をあれもこれも覚えるのって僕は意味があるのかなという思いもある。
広く浅く学習するより、狭く深くいきたいとおもうけど、paizaでCランクしか取れない。
twitterで有名な人てやっぱりSランクとか余裕なのかな、こういうのもいろんなプログラマーに聞いてみたい。
一応著名なプログラマーをTwitterでフォローしてるけど、ご飯の画像を載せてたり、若者の僕には通じない寒いギャク連発してたり、ロリっぽい画像をRTしてたりと、twitterはメインの情報収集としては利用してない。
twitterやってるプログラマーって勉強会とかオフ会に参加してるようなリア充の人ばっかりなので、肩身が狭いから自分からリプは送ったりはしない。
ファンがたくさんいるのに最近ニコ生配信してくれないchokudai先生みたいに、アルゴリズムを学ぶのがいいのかな。
アルゴリズムは使うものだ書くものではない!高階関数とかテンプレートプログラミングとかその辺勉強するといい。
あと計算が制限時間内に終わるなら総当たりが最速で品質も高いぞ。
どうしてVimかというとプラグインが多いしIDEっぽくできるから。
Vimってハードル高いイメージあったけど、入門記事がたくさんあるので助かっている。
NetBeansが重すぎるんだよ。補完ボックスが表示されるの遅すぎて警告メッセージが出た。補完ボックスが表示されるまで7秒ぐらい経過すると警告メッセージが表示されたと思う。
Vim知らない。Linux使うならVimかemacs使えるだろみたいな雰囲気あるけど、GUIならgedit, CUIならnanoでいいよね。
パソコンのスペックもどのくらいのものを用意したらいいのかわからない。
10年前のVistaが搭載されていた頃の家電量販店で一番安かったCeleron 1コア メモリ1GB グラボなしノートだからプログラミングに向いてないのかもしれない。
VirtualBox上のubuntuでMySQLをコンパイルすると2時間20分ぐらいかかった記憶がある。
CPUが1コアなのでコンパイル中にそれ以外の作業なんて重くてできない。
スペックにお金をかけることで時間の節約ツールの選択肢が増える
EclipseなどのIDEが支障なく使えるレベルのスペックってどのくらいするんだろう。
3年前のCore i7, SSD, 8GB。最近はもっぱらJupyter。
Pythonは・・・・機械学習する上で避けて通れないけど、今のPCだと無理。
Pythonはいいぞ、機械学習だけじゃなく計算系はエクセルじゃなくてJupyter使う。でも周りはエクセルつかってる、勿体ない。
使ってないけど最先端の研究では機械学習使って当たり前感があってそろそろヤバい。
僕は中学生の頃、いじめにより心の余裕なんてなかったから勉強どころではなかったけどもっと英語の勉強しておけばよかったと後悔している。
迷宮にいる感じ。
なんとなく、プログラミングじゃないほうがいい気がするなあ。
eclipse, Visual Studioが快適に動く
C言語とかC++は・・・これで作らないといけないものが今の所ないし、これでお金を稼ぐのはハードルが高いし、
WindowsのAPIを使って複雑なプログラムを作りたいわけじゃないのでwhileとかifとか基本的な構文だけ覚えるだけで満足。
Javaは・・・使える人が多いからあえて今から学習しなくてもいいような気がする。
文字列の結合だけでもダメやり方と良いやり方があるらしくて、何かPHPのようにその言語特有のセオリーみたいなのを覚えるのが面倒くさそうなので入門の時点で学習するのをやめた。
Goは・・・HTTP/2が使えるから学習してる。他の言語だとnghttp2をインストールしないといけないようなのでGo便利だと思ってる。
ライブラリの選択肢が多すぎるのでこういうのが作りたいってときにこれを使うのがいいよっていうのが知りたい。
GUI作るのにライブラリありすぎてどうやって選べばいいのかさっぱりわかんない。
Goでデータベース扱うならこれを使え、だけどMySQLしか使わないならこれを使え、あっSQLiteならこっちのライブラリ使うと便利みたいなこういう情報が欲しい。
ただ、言語をあれもこれも覚えるのって僕は意味があるのかなという思いもある。
20の言語でHello World出来るより、1つの言語でいろんなアルゴリズムを知っている方がすごいと思う。
コミュ症がフランス語や英語やドイツ語覚えても、使う機会がないとまったく価値がないと思う。
広く浅く学習するより、狭く深くいきたいとおもうけど、paizaでCランクしか取れない。
twitterで有名な人てやっぱりSランクとか余裕なのかな、こういうのもいろんなプログラマーに聞いてみたい。
一応著名なプログラマーをTwitterでフォローしてるけど、ご飯の画像を載せてたり、若者の僕には通じない寒いギャク連発してたり、ロリっぽい画像をRTしてたりと、twitterはメインの情報収集としては利用してない。
twitterやってるプログラマーって勉強会とかオフ会に参加してるようなリア充の人ばっかりなので、肩身が狭いから自分からリプは送ったりはしない。
ファンがたくさんいるのに最近ニコ生配信してくれないchokudai先生みたいに、アルゴリズムを学ぶのがいいのかな。
コードを写経しても覚えられないし、仕組みは理解したけど自力でコードが書けない。
どうしてVimかというとプラグインが多いしIDEっぽくできるから。
Vimってハードル高いイメージあったけど、入門記事がたくさんあるので助かっている。
NetBeansが重すぎるんだよ。補完ボックスが表示されるの遅すぎて警告メッセージが出た。補完ボックスが表示されるまで7秒ぐらい経過すると警告メッセージが表示されたと思う。
パソコンのスペックもどのくらいのものを用意したらいいのかわからない。
10年前のVistaが搭載されていた頃の家電量販店で一番安かったCeleron 1コア メモリ1GB グラボなしノートだからプログラミングに向いてないのかもしれない。
VirtualBox上のubuntuでMySQLをコンパイルすると2時間20分ぐらいかかった記憶がある。
CPUが1コアなのでコンパイル中にそれ以外の作業なんて重くてできない。
スペックにお金をかけることで時間の節約ツールの選択肢が増える
EclipseなどのIDEが支障なく使えるレベルのスペックってどのくらいするんだろう。
ノートでCore i3、メモリ4GBにランクアップしたらいけるのかな。
他人がどんなスペックのPCで何のツール使ってプログラミングしているか知りたい。
Pythonは・・・・機械学習する上で避けて通れないけど、今のPCだと無理。
あと、クレジットカード持てないのでAWS上で機械学習するのだけは遠慮したい。
過大請求されるの怖いし、トラブルが起きた時に英語でコミュニケーション出来ないから。
僕は中学生の頃、いじめにより心の余裕なんてなかったから勉強どころではなかったけどもっと英語の勉強しておけばよかったと後悔している。
迷宮にいる感じ。
http://anond.hatelabo.jp/20170126221358
F系子会社。ちょっと前まではF本体にも常駐してた。雑にコメントしてく。
↑これはある。会社や人によってはちゃんとやろうと取り組んでるトコもあるけど、グダグダなのが殆ど。法令違反って認識すら無いやつも結構いたりするから反吐がでるよね。
↑これは現場による。
↑メモリ4GBノートPCがデフォなのは同じ。でも、OSは普通に64bitも指定できるし、デュアルディスプレイがデフォ。
↑普通にGitlab
↑そんな変な規約ない
はてブでよく見る意識高いIT系の記事では、EXCELとにらめっこするだけが仕事の技術力のないSEは今後淘汰されていくという話をよく見る
まさに俺のことだ。
入社して10年、EclipseもVisualStidioもロクに触っていない。
流行りのテキストエディタには触るけどやることは構築手順書の執筆だ。メモ帳でもできる。
日々やってる業務といえば要は代筆業。
営業が色んな客から仕事を取ってくる。仕事内容については、客によって方言がある。
あっちの客が要件定義と呼んでるやつはこっちの客は基本設計だ。そっちの客が機能テストと呼んでるやつはうちでは結合テストと単体テストの一部を指す。
こういうのをいちいち内情に合わせて翻訳し、うちのエンジニアに伝える。
エンジニアは単にアウトプットを出せばいいだけなじゃく、うちの会社の品質保証チームのルールに合わせて物をつくらないといけない。そうでないと会社の名前でリリースできない。
そんな内向きのルールで作った物をまたそれぞれの客向けに再翻訳してリリースする。チェックの結果足りないものは俺が書く。
世の中はアジャイルでカンバンでリーンだ。彼らの提唱した業務改善に従っているお陰で、一時期のように無駄な後戻りも属人的な作業もだいぶなくなった。
タスクをカンバンレベルで分割したことで、エンジニアの手が足りなくなった時にも技術力のない俺が手助けできるようになった。
要は仕様書類や評価計画書を代筆したりすればいい。ここは正直認める。
ただ、アウトプットをお納めする先の客はまだまだウォーターフォールのところばかりだ。奴らは○×設計書、△□評価報告書を要求する。そのギャップは誰が埋めるの?
はじめはエンジニアチームがみんなでやってたり管理者がやってたんだが、次第に俺に集約するようになった。
そうなったきっかけは、同僚よりわずかながら俺ができなかったからだ。その時点で俺が悪かったのは認める。
ただ、分業してるうちに同僚エンジニアたちは最新の技術と開発環境でどんどんスキルを上げるのに、
俺がやってることといえば客のフォーマットに従ったWORDにソースから自動生成されたクラス図を貼り付けて説明を書くとか
Redmineのバグチケット数をEXCELに集計して提出書類にするとか、そんなの。何の生産性もない。
このままこの会社で働き続けるなら問題ないと思う。特に俺だけ負荷が高いというわけでもない。
しかしこの環境がいつまで続くのか、誰も保障はできないだろう。
もし何かあった時、同僚エンジニア達は市場価値も高く、どんな環境でもやっていけるだろう
じゃあ俺は?EXCELかWORDしか使えないエンジニアでもない俺はこの会社から放り出されたら何もできない。
そこそこの企業の特にWeb系で渡り歩いた経験から、真実を書こう。
はっきり言う、ほとんどのプログラマと自称する人間の 9 割はコーダーである。
言われたものを作る事はできるが、それ以外何も出来ないと言って過言ではなく、何もしない。
そんな驚きの生体をここに晒していく。
標準化と呼ばれるプロセスで、プログラマが環境の設計、組み合わせ、開発プラットフォームのセットアップ、開発環境の構築手順作成、開発手順の作成、必要な技術の考察を行う。
なぜそうなったのかは知らないが、一般的にそうなっている。
その環境に浸っているせいか、彼らはゼロベースでものを作ることが出来ない。
彼らにできるのは HelloWorld をコマンドプロンプトで表示するプログラム程度の事しか出来ない。
複数ソースの連結、ライブラリの読み込み、サーバへのデプロイ、どれも手動で出来ないのだ。
逆にそれ以外のこと、コードの読みやすさや、クローン率の低減、メソッドコメントの記載などの保守に関わることをしない。
それは彼らにとって「必要ない無駄な作業」としか考えないのだ。
早く仕上げるためなら、似たような動いてる箇所から、よく読みもせずにコピペを行う。
そして彼らは、作るより運用する期間の方が遥かに長くて、その間に修正で地獄を見るという簡単な論理に気づかない。
…何度味わっても気づかない。
たとえするとしても、業務時間中に業務で使ってる技術をピンポイントで学習するだけだ。
だが、プログラマと呼ばれる人間の母数に比べれば微々たるものだ。
彼らは言う「土日にまで仕事してられるか」「勉強会行ってるの?馬鹿か?」
あえて言おう、馬鹿は彼らだ。
Web で仕事をするならIDE(統合開発環境、エディタやコンパイル、テストやデバッグ実行などを画面から行えるツール)はほとんど必須(エディタで済ませる事も出来なくはない)が、彼らは状況に応じたセットアップができない。
たとえば「Maven(プロジェクト管理ツール)、checkstyle(コーディング規約チェック)、editorconfig(改行、インデント、文字コード設定)」が入っていたとする。
するとEclipseなどを使うとして
マニュアルやチュートリアルを用意しないと、道具の使用もままならない。
テストをなるべく機械にやらせようということの利点が理解できない。
そのために、何十回もコンパイル、デプロイ、アクセス、ログインの手順を何度も繰り返す。
関連する他の修正を行うたびに繰り返す…。
そしてやっと動くとひと仕事終えたと満足感に浸る。
ラリー・ウォールというとある有名な人物(Perl開発者にしてC言語ハッカー)がいる。
これは、自分の作るものは完璧なのだ、だから完璧であるように出来る限りのことをするという美徳である。
彼らは金のために嫌々動くだけのものを作るのだ、動きさえすれば報酬は変わらない、よって当然完璧かどうかなどどうでもいい。
同じ金でより良いものを作るのではない、要件だけ満たせばよいのだ。
変なプライドを持つコーダーは、それで運良く成功すると、自分の知識は正しい、自分の技術は十分なのだと考えている。
こういう人間は、プライドの無いコーダーよりたちが悪く、うまくいかないと他人か環境のせいにする。
そして調べず周囲を苛立たせるのだ。
土日に自ら勉強会に行くプログラマや、それこそ 50 人以下などという会社であればこうした事はあまりない(んじゃないかと思う。)彼らは自分でなんでもやらないといけないからだ。
だが、大企業に飼われる子飼いの企業、派遣(そもそも人手のみを求められる企業)、100人以上の企業では、役割分担に伴いこうした状況が多々発生する。
だが役10年、エンジニアを見てきた結果は変わらない。現実問題こうなのだ、こんな人間が大多数なのだ。
人の多い企業ほど考えたほうがいい、それでより良いものが生まれるのかと。
必要とされる技術だけを叩き込んで金にしたいと言うのは分からなくないが、基本姿勢や思想はどうなんだと。
経営者よマネージャーよ、あなた方の言う「最適化」とは現場が日々考え行っている最適化か?人員最適化だけを行って、生産性が伸び悩んでいないか?
そのあたりは考えた方がいい。
3人くらいで集まってBtoBtoCアプリサービス作ってるんだけど
お金ないから一旦俺がアプリ・サーバー・デザインとサービスモデル化までやってる
それで一番苦戦するのがサーバー
Rails覚えりゃいいんだろ? と思ったら
Rails、Ruby、Nginx、Unicorn、Jbuilder、SQLite、AWS、その他いろいろ
とにかく多い
芋づる式にいろいろ必要になる
linux知識が薄いから更にアレだし、IDE入れたら更にアレだ
(いや、AptanaはEclipseベースだからあまり問題はなかったか)
しかも、そこまでに取捨選択が入るから、登場する「ナニコレ」はもっともっと多くなる
まあそこまではまだいいんだけど
一個一個のバージョン差とか、書き方の差でハマる
「まあこの書き方が主流だよね」があまりない
MySQLは書けるのにSQLiteでハマるしActiveRecordでドハマリする
皆自由すぎる
何でコンパイラ無いんだよ
おまけにググっても色々出てこない
完成しても「本当にこれでいいのか?」がよくわからない
色々蓄積してどっかで問題が起こるかもしれない
アプリならそんなこと滅多にないのに
難しいよサーバーサイド
俺やだよ
「サービスリリースしたらWebも必要だよね」って話もあるんだけど
たぶん無理だな、外注しないと
___
利点:設計とかあとで適当に変更してもコミュニケーションコストがかからないから楽
複雑な仕様を全部把握できる
まだサービス全体像がふわふわな場合は試行錯誤できるから非常に有効だと思う
頼れない
進みが遅くてイラつく
みんなもやってみて
別に本がなければ勉強できないわけじゃないよ。増田は考えるのが苦手なタイプと見た。
現に、文章が読みづらく、頭にとっさに思い浮かんだことを数珠繋ぎで書いているもんな。
悪く言ってるわけじゃない。そういうタイプは知識を蓄えるよりも、実際に手を動かしたほうが身につく。
paiza.ioってサイトがある。そこで自分の学びたい言語を選択したら問題が色々あるから、それを解いていけば結構そのモヤモヤは解消されるとおもう。
そんな頻繁にすることじゃないから、新卒で入社したら先輩にある程度確認してもらって構築できるから。
恐らく一番簡単な言語だから。Webサイト開発に使う言語なので、就職先のバリエーションも広い。
なんか時々Javaとか言ってるけど、それ学校で教えてるだけであって、お前が将来したい仕事とリンクしているわけじゃないだろ?
俺は業界未経験でWeb業界に入ったけど、この業界は大概の場合、デスマーチとは無縁だから(ないとは言っていない)、SIerとかソフトハウスとかそういう地獄よりはまだ生ぬるいぞ。
ソフトだってeclipseがどうのって言ってるけどそんなの要らない。terapadとかsakuraeditorみたいなただのテキストエディタでいい。
学問の徒として生きるのは完全に諦めてるし、大学もはや無駄と思ってるけど、無能でない俺ですら無理と思う道であってこんな補助金出してガバガバ教育してる日本金の使い方無駄すぎ……とは思う
もっとちゃんとした就職予備校設置してほしいけどそういう変革は無理なんだろう。
そういう話じゃないのか。今回はそういう話ではないです。
パソコンのご本を読めるようになるのが難しい、という感じのお話。独学? が難しい。
パソコンのご本、あんまり知識がちゃんとしてない人は読めないようになっているっぽい。
後述するけど、わかりやすいように作られたスクショまみれの本とか。
全体的なビジョンがないわけ。実際の世界がそれで動いてるようなビジョンが。だから読めない。
僕は社会の役に立つことを直接学びたかったよ。社会がどういう風に動いてるかみたいな話をさア
そういうのがあれば、パソコンのご本を読めるようになるんだろうなという感覚がある。
実務の話!! 実際に「IT系のおしごと」というのがやってるような話で、特にコーディングに直接絡んでくるようなもの。
技術の実態みたいなやつ。そういうのは学校で教わらないんですよね。
優秀な人はバイトとかやって知ってるっぽいけど、それみんなバイトでやるの? みんなはやらんでしょ。
というかバイトみたいな形で社会参画しないと学べない知識だったら、それはそれでやばくないですか? という提起でもあります。
はてな民の人IT系で働いてる人多そうだけど、そういうところ、そういうところなんですよね。
そういう知識があれば、大学の図書館に置いてあるような「技術本」っぽいやつ? の扱い方がわかるんだろうなーと思う。
いや別にやってきたことは何も無駄にはなってないんだけど。ハードよりの話もしたり、基本的な数学とか物理とか電子とか論理学とかシャノンの話とか。
でも、パチョコンは実学も以前に学問というか、実際に使えてナンボな部分が(いまこの想定してる話では)デカすぎるのに、
そんな環境的な、Linuxでサバ建てしましょーねーみたいな話も三年後期になるまでやらなくて、そんなん人が立ててるの見たら一発で覚えられることだし、みたいな。
みたいな。
そう、なんというか本が読めないんですよね。これ人がいたら一発なのに……というようなことだらけで、絶対間違った道に来ちゃってるよという感じがする。
↑
(焦ってるんじゃないのか?一冊だけをしっかりやれよ。と思ったりするし、言われそうだけど、それが一番の正解なのかな…やっぱり)
つーか本読みながらチンタラチンタラ比較するの嫌になるわけですよな。わかる。
スクショがいっぱい貼ってあったからといってわかりやすくなるわけではないし……。
てかスクショ貼ってあると古くなるとすぐ対応できなくなるから本当に困りますわよね、という話もあります。
僕が何を期待しているのかって?それは実務のうちで難しいお話が出てこない、環境の話、という感じ。
プログラミングをやれと言われても、それIDEはなによ?っつー話ですわな。WindowsだとVisual Studioとかになるのかな。
Eclipseはよくわからない。Javaでアプリ作るっていうのそんなに真剣にやったことないし……
っていうかそもそもプログラミングのお仕事??がよくできる人たちはプログラミングで何をしているの?
アプリを作っているんですか?それだったらヴィジュアルモードのチェックが簡単なやつ必要だよね、という話で。
あるいは別にアプリなんか作ってないのかもしれないよな。とすると何かしらサーバーを使って捌くようなシステム・サービスの細かい調節のお手伝いをしてたりするわけだ。
その具体的なトラフィックがどうだからどうのこうの、というお話をしたり、アクセスの仕方がどうの脆弱性がどうの、新しい技術がどうの、という話だと思うんですけど、
端的に言ってそういう話がぜんぜんわからない。そういう話がわかるとスンナリ進めるはずなんだけどな~と思いながら。
親の金で大学行ってるのに、なんかもっとこううまくできるはずなのに……という感じでつらい。
僕は人の役に立つ仕事のおべんきょおがしたいんですよ。なのに図書館で借りられる本、自分が何を知らないから理解できないのかもよくわからない感じで……
日経Linuxとか読んでみて、去年のやつにプロセスとかスレッドの説明あったけど、僕はまだOSの基本的な話もマトモに理解できていないなので、
そういう人間には難しすぎる (というか抽象的すぎてかなりわからなかった) スケジューリングの話はされたので、プロセスが対象なの?とか、そもそもCPUがアセンブリ命令ADDとか?を実行しつつ、
OSがそのアセンブリ命令をセットにした実行単位を用意して、OSがスケジューリングしてくれる、みたいな話なのかな……? と思った
(でも明らかにプロセスとスレッドがわからない人間には伝わらないような程度のフワフワ説明しかなくて、これ、誰向けだ?とか思ったけど、やっぱり身近に聞ける人間がいる人のための本なのかもしれないですなあ)。
そういうの、本とか、自分の足りない知識とか、おそらくその辺にあるんだろうな~と思いながら、でもバイトで働くにも微妙にプログラミングの知識が必要で、「これまで何作ってきましたか?」と言われても、
そういう、あんまりしっかりしたものを作ったことないし、C言語、gccで可変引数までやって、でもアセンブリがどう実行されるんですか、という話はよくわからない。
Javaも習って、まあそれっぽいお話はいっぱいされたんですけど、アプリ作るの難しかったし、GUIはクソだね、というか、手打ちでやったんですけど、こんなん絶対手打ちより良いやり方ありますやろと思いながらやっていた。
絶対手打ちより良いやり方あるはずだけど、僕は知らんし、知らない以上何が効率的に作れるのかもよくわからないし、わからないことにはできるだけ手を出さない方がいいな、と思う。
いや~なんつーかこういうことばっか書いてると「甘えんなカス。氏ね」とかコメントされて、2000回くらいは殺されちゃうんですけど、それは甘んじるとして、でも何というか……みんなそうなんですかね。
同年代で「めちゃくちゃプログラミングできちゃいます!(漠然)」みたいな人間いるけど、僕が例えばどういう本読んでどういう道筋を歩んだらそういうカンジになれるか、かなり見えなくてつらいし、
そもそもそういうのを職業にできるスキル高く磨けるような人って、いったいどういう生き方してきたらそうなるんだろう、と思っている。
これで情報系の研究室いって、なんとか乗り切って就活して、プログラムがんばって書きましょうー!というような職場に行ったら、
それはもう「学生じゃないんだから。もう社会人なんだから自分で調べて」となるんですよね。マンガとかでたくさん読みました。それは死ぬほどつらいでしょ。現に人死んでるじゃないですか。
結局周りに聞ける人間がいる環境ってなに? 今もいないし、大人になってもいないんでしょ? だからはてブで「プログラマーはやっぱ自分で本読んでスキルアップしなきゃ死ぬぞ!」みたいなやつがホッテントリになったりするわけでしょ?
それはつらい。ご本読んで理解できないの、というか読めてないの、ウチにあるだけで目が上滑りして「全体像がよくわからないからな~ しょうがないよな~~」と言いながらろくに読む気も起きなくて、
「でも本当に役に立つ本って開いた瞬間に読みやすいのでは?」みたいな信念がある。 これが原因なのかな。でも、この信念、少なくともこれまでめちゃくちゃ役に立ってきたものなんだよなあ……。
学生の今、自分が考えてて不安に感じてることが、「追いつけない」みたいな不安が、イマイチわかり切ってないし、
だから具体的な質問として一言で言える話の羅列としてわかってないわけじゃなくて、もっと漠然とわからない。こういうこと感じてるの、僕だけじゃなくてパソコン知りてえ~~となって大学に来た人のうちけっこう多いような気がするんですよね。なんか生半可に甘えた環境だから。
----------------------
とりあえずこれ書いてたら少し気分落ち着いたので、要点をまとめると、
「本で勉強するのつらいよなあ~ そんなんじゃどんな分野行ってもつらいだろうなあ~」
ということです。
そういう有象無象の本をスパッスパッと切って、「この辺のこの本読んどくとこういうことができるようになるだろうな~」というモデルがまだあんまりできてない。
そういうのができるようになるのかと思ってたらあんまり学校でも学べる感じじゃない。全体像とは……となっているけど、こういう悩み、自然に解決したりしなかったりするんだろうな。
とりあえず、これは自分メモの今後の方針です。OSより下の階層、たとえばALUとメモリの組み合わせで、program counterを進めながら動いてるんだよーという感覚はあるので、
それがOSとどういう風につながってるのか、とか、100均で売ってる電卓、あのデジタル表示の部分がどういう仕組みで動いてるの、ということを考えたり、
インターネットプロトコルでパソコンが具体的にどういうパケットを送信しているんだろう、というような話を攻めて、これが全体像とやらが見えるようになる一助になるかはわからないけど、
できるところからできるところだけ勉強していきたいと思います。それが、僕にとって、よくわからない本をじっと読まなきゃいけない義務から抜け出した罰の引き受け方っぽいので。
たぶん国内のまとめでは一番多く(また多機能)のソフトを紹介してるのでは?
Adobeの代替を探してる方や学生さんに参考にしていただければ幸いです。(あくまでも、趣味の範囲やお金のない学生向けです。可能ならAdobeでまとめたほうが情報も多いし、ソフト間の連携もシームレスになるのは言うまでもなく。)
有名だけどあまり優秀でないと思ったものは記載してないものがあります。(ex, Pixa、Sai、Paint.net、MMD等)
各カテゴリのとなりの()はAdobeではどのソフトかを表します。
Macを私は持ってますがあまり好きでないのと、ほかの方にあまりお勧めできない(主にスペック面で)ため載せてません。
今回はCADについてはまとめませんでした。
単純に私があまり知らないのと、様々な用途が多くて分類が面倒なので。
3DCGは絵を描けなくてもアニメーション動画を簡単に作れる点が嬉しいですよね。
有償であればいろいろなメーカーから良いもがたくさん出てます。(Light Works、Cinema 4d等)
あと学生であればAutodeskの高性能なものを無償で使えます。
以下その一覧
それぞれ梱包されてるのは違いますがAutoCAD、3ds Max、Maya、MotionBuilderなどプロ向けのが無償です。
マカーならKritaやAffinity PhotoやPixelmatorを組み合わせればアマチュアの方であればPSでなくてもいいのではと思えるほど。
CMYKでの編集可能なソフトはPhotoshopだけでないですよ。
KritaとCorelDraw、Affinity Photoは可能です。
Kritaは無料、Affinity Photoは安価ですし。
ただしAffinity Photoはペンタブの手ブレ補正はないです。(Kritaにはついてます。)
写真編集、特にRaw現像ならあまりPhotoshopに拘る必要は無いと思ってます。(富士フィルムのような特殊なメーカーを使用してない限り。)
レタッチは確かにPhotoshopは強力ですけど、Affinity Photoも十二分な機能はあります。
業務用でPhotoshopも使ってるという方以外は正直Affinityで問題ないと思います。(実際に私はそうです。)
有名であってもUIや使い勝手はAEに落ちるものがほとんどですし。
その点Blenderは多機能すぎますね。その分複雑だったりしますけど。
あとパワポやKeynoteを使えば安易なFXソフトになります。
意外なのはVFX(プロジェクションマッピング)ソフトでフリーのはほとんどないです。
Macの有料ソフトになりますがMadMapperとVDMX5の組み合わせは比較的分かりやすいです。
けどソフトが(内容を考えたら安いですが)この中では比較的高くなります。
あとかなりのマシンスペックが必要になるんでMacBookなら15インチモデルは欲しいですね。
DAWは比較的容易に開発できるせいかフリーのものや新規のものが多いです。
たくさんあるので紹介しきれないので、私が一番いいと思ってるFL Studioとかなり安価なReaperのみ紹介します。(←追記で他のも加えました)
FLはサポートを考えると非常に安いです。(最近、ちょっと雲行きが怪しいのでは?となってる状況です。Sonar見たくひどい状態ではないのですが、Golという中の人の移籍がどうとやら。)
ただEDMが得意で、生音源等は別途導入する必要がある場合があります。
他のDAWソフトはコスパだけなら中間グレードが一番コスパ良いと思います。(Cubase Artist、Studio One Artist等)
Mac向けのため上には記載してないですがLogicもかなり安いですよ。
ほかの用途ではお薦めはしてませんが、DAW用途でLogicの為だけにMacを購入するのはありだと思います。
Gravitは最近よくFireworksの代替えとしても挙げられてますね。
他にもいいのがあれば教えてください。
追記していきたいです。
以上参考になればうれしいです。
----------------------------------