「プログラミング」を含む日記 RSS

はてなキーワード: プログラミングとは

2016-06-23

プログラミング教育よりネットを教えろ

そんなことよりインターネットの基本を教えた方がいいと思うんだよね

子供だってネットするんだし、義務教育で習うべき内容じゃないか

プログラミング教育って言っても、ゲームで絵を動かすとかでしょ?

そんなんだったらネット勉強させた方がいいわ



LINEwifiなしで使えるようにしてくださいとかい子供がいるみたいだし

そういう発想は大事だと思うけど、当たり前レベルのことは知ってるべき

誰かそういうこと進言しないのかな

2016-06-22

http://anond.hatelabo.jp/20160622122647

スタックって概念bashとかやっちまえば「一番右の値」みたいなすげえ簡単なところに落とせたりするわけで、言語構造がそのものプログラミング理解を妨げてるのはそのとおりや。

からプログラミング覚えさせたかったらより抽象度が高いのをやらせたほうがええねん。

趣味がもてない。

どうも創作系の趣味ができない。

音楽(DTM)やプログラミング趣味でやっていたりする人たちをかっこいいなぁと思っていて自分もやってみたいと思う。

けども、じゃあ自分趣味でやってる人たちよりも音楽を愛しているかというとそうではないし音感もない。

プログラミングだっていったってサンプルコード程度しか書けないし、ネットでよく見る「作りたいものを作れば上達する」論も作りたいものがないから、上達しなさそうと思ってやらないでいる。

まり自分には創造性のかけらもやる気もない。

憧ればかりが募ってつらい。

2016-06-21

すきあらばエアコン止める奴

がいて困る。立場的に入れろと言えない。

だいたい31~32度で仕事してる(プログラミング)。

こまめにエアコン止めていくら電気代が節約できてるのか知らないけど、

それによるモチベーション低下は、俺の場合50%

1時間あたり1~2万円くらいの損失か(俺がいる部屋で)。

最近プログラミング勉強してるがfunction()がなんとなく馬鹿にされてるように見えて困る

2016-06-20

初心者プログラミング学習するのにおすすめ言語テーマ

初級(手続き型/構造プログラミングの基礎, データ構造, ファイル操作, イベントリブ方式GUI管理)

  • HSP で住所録を作る

中級(オブジェクト指向プログラミングの基礎, IDEの使い方, 名前空間, 疎結合, コンパイルしないと動かない)

  • C# で住所録を作る

上級(サーバ構築, DB設計, html/css, ネットワーク, 黒い画面, AWS, 日本語の壁, コンパイルしなくてもいいの!?)

かつてPHPが占めていた地位Rubyに完全に取って代わられた

いまやダメ言語といえばRuby

底辺プログラマーが使う言語であり仕様からおかし言語

バグ約束された言語

可読性最悪な言語

動けばいいをモットーに書き散らされ、しかも動くとは限らない言語

言語について語るときはいつでもとりあえずdisられる言語

本屋コンピュータコーナーでゴミ本だけが増え続ける言語

プログラミング初心者最初言語に選び、そのまま最後言語になってしま言語

猿をキーボードの前に座らせて宇宙が終わるまで待っても『ハムレット』を書けるか分からないが、Rubyコードならいくらでも書けてしまう、そんな言語

おっさんの言うことは全て無視すべき理由

35以上のおっさんの言うことは全てまちがってる。

プログラミング領域においては。

なぜなら、そのおっさんたちも、自分達が若い頃、自分達が正しいと信じきっていて、おっさんの言うことなど、まるで聴いていなかった。

やはり、若いということは、それだけでおっさんよりも正しい。

若者よ、おっさんの言うことはきくな。

2016-06-18

高校生Windowsを知らない

文系院卒の後、仕事も見つからなくて塾講師やってる低所得者です。

最近いたことがあります。今の10の子ってWindows知らないんですね。

「うぃんどーず・・・Androidなら知ってます・・・

こんな感じです。

PC用のOSを明確に意識しているのは、ゲームマニアプログラミングとかできる子たちだけ。

iPhoneiOSではなく、iPhoneです。AndoroidはiPhone以外のスマホ総称として使っているようです。


Windowsの話で盛り上がっているところ、一人の女の子問題発言しました。

「あ、お父さんは使ってますウインドーズ・・・ええっと・・・XP!」

お父様、早くアップグレードしてください。



以上です。ありがとうございました。

2016-06-17

1.0から学ぶJava

タイトルを見て釣られクマーな皆さんこんにちは

ホッテントリメーカーで作るような煽りタイトルって、みなさんもう見飽きてると思うんですよね。

今調べたらホッテントリメーカー2008年だそうで。どうりでねー。古臭いなーと思いましたよー。

「一から学ぶJava」ってのをね、1.0にするだけでこんなに素敵なタイトルになるんだから面白いですねー。

タイトルを思いついただけだったんですけど、思いついたらやっぱりちゃんと中身も書かないと行けないじゃないですか。やだー

面倒くさいんですけどね。ちょっと1.0から学んでみましょうか。

Java 1.0 1996年1月23日

Javaの1.0がリリースされたのは1996年1月23日ですね。発表されたのが1995年5月23日でJavaの誕生日といった場合にどちらを取るかで揉めることがあります。

かれこれ20年前なわけで、当時のパソコンというとハードウェアはCPU が Pentium 133MHz メモリ16M とかそんな感じだったかなあ。今どきの携帯電話の例としてiPhone 6sを挙げるとCPUが1.85GHz メモリ 2G ってんだから凄いですね。OSは1995年11月23日リリースされたWindows95とかそんな時代背景です。インターネットがようやく一般に普及し始めたところでしょうか。

今から思うと相当弱いハードウェアですけども、そろそろVM方式を採用しても良さそうな、そんな時代でした。インタープリタだと流石に遅い、でもC言語のようなコンパイル言語だと"Write once, run anywhere"とはいかない、という判断もあったのだろうと思います。Javaが純粋なオブジェクト指向言語ではなくintなどのプリミティブ型を持つというのは、当時のマシンスペックを考えた場合、ある程度妥当な判断だったと言えるでしょう。これが後々苦しくなってくるわけなのですが。

Javaを作った会社はSun Microsystems(サン・マイクロシステムズ)というアメリカの会社で、2010年1月27日オラクルにより吸収合併され今はありません。SolarisというOSとSPARCプロセッサでUNIXサーバーの販売で90年代後半までは一人勝ちのような状況だったと聞きます。当時にすでに「ネットワークこそがコンピュータ」(The Network is the Computer)というモットーを掲げてたんだからおかしい。1996年リリースのJavaが標準でネットワーク機能を備えていたのもこのあたりの思想から来ているのかもしれませんね。

当時のプログラミング言語としてC++が挙げられますが、C++でのプログラマへの負担といいますか、ヒューマンエラーの起きやすさといいますか、その辺を改善する目的で開発されたのがJavaだったわけです。

1996年の時点にこんな言語が登場したのですから革新的でした。

いろんな企業がJavaに賛同します。その中にはMicrosoftもありました。この時期、Microsoftは次期のWindows開発用のプラットフォームにJavaを据えようと考えていました。その後、袂を分かつことになるのですが……。

プログラム言語として構文などを見ると、C++を強く意識した構文なのは間違いなく、しかしポインタ演算を廃してポインタを機能を限定した「参照」に置き換えるなど簡素化が多く見られます。C++からはいろんな機能が削られています。関数ポインタ、構造体、演算子オーバーロードテンプレート((テンプレートについては実装が間に合わなかったという話を聞きます))などなど。そのためC++の劣化であるように揶揄する人もいますが、こうしたものを捨てて言語仕様を比較的小さくシンプルに抑えた点は評価に値すると思います。しかし、今でもこうした削減された機能を愛する人からはJavaを腐す要素として挙げられてしまうのでした。

Java 1.1 1997年2月19日

Wikipediaからピックアップすると1.1での大きな機能追加は

といったところです。当初よりJavaの内部文字コードUnicodeで文字を表すchar型は16bitで設計されていました。Unicodeは当時それほど普及しておらず、Unicode対応のテキストエディタさえ少なかったと記憶しています。時代を先取りしていると言えますが、大きな誤算はUnicodeが当初16bitのコードポイントに世界のあらゆる文字を格納しようとしていたことで、漢字圏の我々からすると16bit=65,536程度の空間に文字が全部入るわけないだろ!というものだったが故に早々に破綻し、Unicodeは21bitのコードポイントに拡張されることになるのです。これはまた後の話。

なんにせよ、日本語が対応されたのは1.1からで、日本でのJavaの採用が始まったのはこの頃からと言えましょう。

当時のJavaのGUIはAWTというものでしたが、これを用いたGUIの開発は当時は結構行われていたイメージですね。Visual BASIC でGUIを作るプロダクトも結構あったと思います。GUIのためのオブジェクト指向言語としてJavaが使われていたイメージがありますね。JavaBeansもそのための仕様でした。件のsetter/getterの話題に繋がっていくのですが。

JDBCはJavaとデータベースをつなぐインターフェースです。RMIではあるJava VMから別のJava VMにオブジェクトを送って実行する、といったことができます。こうした機能が用意されたことで、ソフトウェアフロントとしてのGUI、裏方の実装のためのネットワーク機能、データベース機能、さらにはソフトウェアを配布するためのJava Appletという布陣でJavaでのソフトウェア開発が加速していた時代といえます。

Microsoft Visual J++ もこの時代ですよ。

Java 1.1以降のバージョンのものは互換性確認のためにOracle Java Archiveからダウンロードすることができ、今でも入手することができます。もちろん、Java7ですら2015年4月にEOL(End of Life,サポート終了)となっているので、通常利用するのはJava8としてください(本稿執筆時点)。

当時のドキュメントを見るのも一興です。現在と比べると標準APIがかなり小さい。なお、当時のjavadocは今とはデザインが大きく異なります。

  • java.applet
  • java.awt
  • java.awt.datatransfer
  • java.awt.event
  • java.awt.image
  • java.beans
  • java.io
  • java.lang
  • java.lang.reflect
  • java.math
  • java.net
  • java.rmi
  • java.rmi.dgc
  • java.rmi.registry
  • java.rmi.server
  • java.security
  • java.security.acl
  • java.security.interfaces
  • java.sql
  • java.text
  • java.util
  • java.util.zip

この時代であれば、全パッケージを舐めて標準APIを学ぶこともそう難しくはありませんでした。この時代から触っている人間は新バージョンが出るたびに増えるAPIを順に学んでいけたのです。しかし、現代にJavaを学ぶ場合、どのバージョンでは何があって……というのをいちいち学ぶ必要はほぼありません。Java5以前は一緒くたでいいと思いますし、一部のAPIで歴史的経緯があってねーというのを知っていればおそらく十分ではないでしょうか。

Java 1.2 1998年12月8日

strictfpキーワード浮動小数点演算をやる人は覚えておきましょう。JavaはパフォーマンスのためにCPUの浮動小数点演算を扱うことが許されており、そのため実行するCPUによって精度が異なることがあるんですね。まあ今時のCPUだと大丈夫だとは思うんですが。

リフレクション機能ではJavaのクラスを抽象的に扱うことができます。設定ファイルに書かれたクラス名のclassロードして実行する……みたいなことができるんですね。フレームワーク的なものを作る場合には多用することになります。

1.2からは新しいGUIのSwingが採用されました。AWTがOSごとのGUIパーツを用いていたためデザインに違いがあったのに対し、Swingでは統一的なルック・アンド・フィールが用いられるようになりました。まぁ今ならJavaFXを使うのが良いと思います。

初期のJavaはやはりVM方式の実行速度の遅さが指摘されていました。実行時の構文解析を伴わないだけインタープリタよりは早いものの、実行バイナリを作るC/C++よりは遅い、そうした評価です。ここではサン・マイクロシステムズのVMにJIT(ジャストインタイムコンパイラ)が乗ったことが挙げられていますが、JIT自体は別の会社が先駆けて開発していたことは記しておきたいと思います。

JITコンパイラは実行時にJavaのバイトコードを環境のネイティブコードコンパイルして動かす技術です。この後、JITコンパイラ、動的再コンパイル技術、世代別ガベージコレクションを備えたHotspotといった様にJavaVMは進化していきます。現代では実行時の最適化が進み、大きなスケールで見た場合、Javaの実行速度はC/C++での実装と比べてそれほど遅れるものではありません。遅くても倍の時間は掛からない程度といったところでしょうか。

あとは特記すべきはコレクションフレームワークです。皆が多用しているであろうjava.util.Listやjava.util.Mapといったライブラリが整備されたのがこの時なのです。それ以前はjava.util.Vectorやjava.util.Hachtableというクラスが可変長配列の機能を一手に担っていました。今ではVectorやHashtableは使うべきではありません。

Microsoft 離反

Java の開発はSun Microsystems が主導していたけども、すべてがSunのものだったというわけでもなく。Javaには多くの会社が出資していてその中のひとつMicrosoftだったわけですね。

Microsoft の Visual J++ では delegate とか独自機能拡張もありましたけど、裁判で問題になったのは J++ でコンパイルしたclassファイルMicrosoftのVMでしか動かないという部分ですね(他社製のVMで動くclassファイルを作ることもできる)。classファイルがどこのVMでも動くの大事だろ、"Write once, run anywhere"だろ、お前何してくれてんの!と喧嘩になったわけです。当時のMicrosoftブラウザまわりでも独自拡張がやりたい放題、標準規格?なにそれ美味しいの?みたいなスタンスをあちこちで見せていたものです。

結局、この事件でMicrosoftのJavaはバージョン1.1相当でストップ。好き勝手にやれないなら独自に言語作るわーとばかりに.NET フレームワークと C# といった方向に舵を取ります。

JavaがPC上でのUI開発の主力になろうとした勢いはここで潰えます。

Java EE

Java SE とは別にこの時代に Java EEリリースされていることは特記しておきたいですね。これ以後、それまでのCGIに取って代わって、JavaはWebサービスの開発のプラットフォームとして多用されるようになります。

2000年あたりからはJavaはGUI開発というよりは、Webサービスの開発が主流という流れになっていきます。インターネットサービスが非常に発達していった時代、背後ではとてつもない量のJavaのプログラムが支えていたわけです。ただまあ、こうした産業利用は一般的ユーザーの目にはあまり入らないわけです。一般人からすればJavaといえばJava Appletみたいなイメージはずっと残っていたでしょうが、実体としてはJavaといえばServletという時代になっていたわけです。

企業で用いられる社内システムにもServletは多く採用されました。

理由はいろいろ挙げれると思うのですが

というのが大きな理由だろうと思います。JSPというテンプレートエンジンを用いてHTMLを整形してWebページを作り出す、というアーキテクチャある意味では便利で簡単でした。

もっともHTMLの表現力に足を引きずられるため、GUIの機能性という点では後退したわけなのですが。それでもメリットが大きいと判断されたのでしょう。というか、まともにGUIを組めるプログラマがほとんどいないから、GUIのシステム開発がなかなか成功しないってのもあったんでしょうけどね。

iアプリ Javaアプリ EZアプリ

2000年あたりというと携帯電話の普及も取り上げなければなりません。現代のスマホガラケーに比べれば非常に機能は貧弱で、まさに携帯「電話」でした。要するに電話とメールぐらいしかできなかったんですね。

そこにdocomoiアプリJフォン(ボーダフォンを経て現ソフトバンク)のJavaアプリ、auのEZアプリという携帯電話上でちょっとしたアプリが動くよ!というのが乗るようになってきたんです。これがJavaを組込み用途にコンパクトにしたJava MEというものが土台となっていて(正確にはiアプリちょっと違う)Servletと並ぶJava言語の大きなもうひとつの領域となっていました。

iアプリは当初は容量が10k byteまでといった制約があり、容量制限が非常に厳しかったのですが、新機種が出るたびに容量は緩和されていきました。

docomoiアプリ含めiモードによって一世を風靡します。こうした土台を作ると、その上で商売をしたい人がたくさんやってきて、勝手にコンテンツを作ってくれる。docomoはそれらから手数料を取るので労せずして大金を稼げるというわけです。賭場の胴元というわけです。

この賭場が、将来にAppleiPhone, GoogleAndroidに荒らされることになります。docomoがなかなかiPhoneを出さなかったのもiモードという自前の賭場を失うことを良しとしなかったためです。金づるを失ったdocomoSamsungと組んで独自の携帯向けOSであるTizenの開発に乗り出します。そんなTizenですが鳴かず飛ばず。噂ではインドあたりではリリースされたとか、なんとか。

RIA時代

話を2001年に戻しましょう。

Microsoft離反でGUIのプラットフォームとしてのJavaというものは存在感を弱めていました。この分野の復権に寄与したのはJava 1.4 (2002年2月6日)で導入されたJava Web Startです。

Java Appletブラウザ埋め込みで動作したのに対し、Java Web Startではブラウザから起動しつつも独立したアプリとして起動するのです。

Webシステムが企業の社内システムに採用された話は先に述べたとおりですが、やはりWebシステムのGUIというのはHTMLに引きずられて貧弱だったんですね。

端的に言えば入力値が数字かどうか?みたいなチェックがなかなか難しい。HTML上でJavaScriptでやるわけなんですが、なかなか気持よく入力できるような感じにはならなかったんですね。

また、Ajaxによるブラウザのページ遷移を伴わない通信というのが出てきたのも2005年ぐらいなので、入力値に対してサーバ問い合わせするようなことはできなかった。当時だと一旦画面遷移させないとできなかったわけです。

こうした事情から、クライアントサイド、要するにPC側でもっとリッチなUIが使いたい!という要望があったわけです。Webシステム使いにくい!という不満の噴出と言ってもいい。そこで出てきたのがRIA (Rich Internet Applications)というわけです。

Javaは1.0時代のAppletからそうですが、ネットワークを介して別のPCにプログラムを送り込み、そこで動作させるという能力を持っていました。それこそまさにRIAに求められる機能性だったわけですね。

RIAの代表とされるのは

あたりです。三つ巴の戦い、どこに軍配が上がるのか!?と注目されましたが、勝利したのはHTML / JavaScriptでした。

Google MAP で注目を浴びたAjax技術、それまでブラウザでは不可能と思われていた高級なGUIをHTML / JavaScriptで実現させました。もうやめて欲しいですよね。せっかく脱ブラウザの流れが来たと思ったのにまたWebシステムに逆戻りですよ。

RIAが失速した理由として考慮して置かなければいけないのはスマートフォンの台頭です。RIAでは端末を選ばずどこでも同じアプリが動かせる点がポイントひとつでしたが、スマートフォンではそうは行かない。"Write once, run anywhere"を破壊したのはスマートフォンだったというわけです。

しかし、先日インストールなしでアプリを実行するAndroid Instant Appsが発表されたりしまして、結局RIAの思想といいますか、要求というのは今でも息づいているのだなと思った次第です。

Java 5 (2004年9月30日)

1.3 / 1.4 では機能追加はあっても言語構文が大きく変わることはありませんでした。大きく変わったのはJava 5です。この時からバージョニングが変わって1.5ではなく5と表記されるようになりました。

Java5の特徴はなんといってもジェネリクス。それまでjava.util.Listにデータを出し入れするのにはキャストが必須だったわけですが、ようやくキャストから開放され型の安全度がぐっと高まりました。その他に以下のような変更があります。

言語としては随分変わっったわけですが、もうかれこれ10年以上前のことですからこれらの機能が「Java5から導入された」という知識は今となってはあまり必要とされません。これらの機能が使えないJava 1.4で開発をする事案が殆ど無いからです。0ではないのが悲しいところではありますが。

その後

Java 6 (2006年12月11日)がリリースされた後、Java 7 (2011年7月28日) が出るまでJavaは停滞してしまいます。その間にSun Microsystemsという会社がなくなってしまったためです。

Sun Microsystems の経営状況が悪化しており、ついに身売りをすることになりました。身売り先はIBMともGoogleとも噂されましたが結局2010年1月27日オラクル吸収合併されました。

Javaの停滞中にはJava VM上で動く非Java言語も台頭してきました。Scalaなどですね。

やや戻って2007年Androidが発表されます。Androidの開発言語にはJavaが採用されていますが、実行環境はJava VMではなく、ライセンス的な事情でJava(TM)は名乗らない微妙な位置関係にあります。

Java 5 以降で大きく言語仕様に手が入るのは Java 8 (2014年3月18日)です。並列処理を行うためのStream APIと、そのために簡易に関数を定義するためのラムダ式が導入された点が大きいですね。日付APIも刷新されました。

このように、Javaは1.1の黄金時代から今に至るまで利用ジャンルを転戦しながら産業の土台となって支えてきた歴史があります。ジャンルの趨勢により浮き沈みもあります。今後についても決して楽観視はできないでしょう。Javaを学ぶことはプログラミングを学ぶステップとしては意義はあると思いますが、Javaを学べばゴールというわけではありません。プログラム言語次世代へと移りつつあります。業界動向には注視していきましょう。

2016-06-16

http://anond.hatelabo.jp/20160616202514

何作ってるの?

作りたいものが何もないのにプログラミング勉強始めたせいで文法より先に進めなくて困ってる

もしかしてからRuby勉強するのは間違ってるんだろうか

Python一択だろという天の声が聴こえる

最初言語を決められなくてプログラミング勉強が始められないのだがどうしよう

どの言語だと序盤のジムリーダーに有利とかなんかそういう情報ないですかね

絵は描いただけうまくなれそうでうらやましい

小説とかプログラミングに上達したいけど書いたら書いただけうまくなれるかっていうと微妙なところ

もちろんある程度量をこなさなきゃってのは前提としてあるけど

2016-06-14

http://anond.hatelabo.jp/20160614164822

なんだかんだアイドル価値は低い

プログラミングができる理系女子()

そんな必要もないのに地下アイドルまがいのこと始めたら

おっさんどもは多分幻滅してしまうんだよ

最近IT界隈で若い女集めて

銅鑼叩かせたり、アイドルまがいのことさせたり、ミスコンぽいことしたりするのはけしからん炎上だ!ってなってるけど、プログラミングできるアイドルだかモデルだか女子大生だかになんかやらさせてオタサーの姫よろしく周囲でおっさんがデレデレちやほや愛でるやつ、あっちはいいんですかね。

前者がダメなら後者ダメだと思うんだけど、前者に眉顰めてキリッって感じで物申してるおっさん後者にダラダラヨダレ垂らしてるの見てわけがからなくなった。

素人ダメだけどこの子仕事でやってるからいいんだみたいな基準なの?

2016-06-09

新卒正社員採用するというシステムのやばさ

博士課程学生学振持ち(年収240万)、借金持ち(奨学金400万)。同期の中では研究上手く行っているほうで、論文も書いているほうだと思う。だけど研究者競争社会の中ではまだ業績的に下っ端だから、この待遇は仕方がないと思っている。永遠に続く競争の中で、大発見を夢見ながら、業績を溜め続け、生き残り続けるのみだ。大変だけど、楽しくて、今この生活には満足している。

だけど、ふとした時に、自分がもし就活をしたらどうなっただろう、という事を考える。自分英語もできるし、プレゼンもかなり得意な部類に入る。エクセルも使いこなせているほうだと思うし、プログラミングも、得意ではないけれど、基礎的なレベルでは使えている。締め切りを破ったことはほとんどないし、計画を立ててマルチタスク仕事をこなすのも得意なつもりだ。正直、新卒就活をすれば、業績が無くてもスキルだけで結構いい会社に入れたのではないかと思う。まぁ、「性格的に会社員に向いていない」という点が致命傷なので、結局そんな世界存在しえなかったとは思うけれど。

で、先日同窓会で久しぶりに会った正社員の友人たち(20代半ば・給料自分の2倍)。興味深いことに「会社の働かない高給おじさん」に関する愚痴で盛り上がっていた。無業績でたまたま新卒正社員採用されただけで、終身雇用年功序列既得権益恩恵に守られている、同じ穴の狢の彼らが、そのような批判を展開していることが、自分には滑稽に見えてしょうがなかった。と同時に、それが滑稽に見えてしまった自分自己嫌悪を感じながら、世の中には見えていない格差存在するのだということを確認して悲しくなった。

エアコンタイマーがアホすぎて辛い

「入」と「切」が併用できないタイマーってなんなだ!

バカですか。

こっちは一度に設定したいんだが!

夜寝るときに3時間後に「切」

朝起きて仕事行って帰ってくる頃21時前に「入」設定を

「入」と「切」が併用したい!

なぜできん!!!

アホすぎですか!!!

しかも、「入」タイマーマックス12時間後でしかできないとか!

14時間後にしたいのに!

アホすぎですか!!!

あと、自動運転も気温設定しても不快

グッとくる気持ちよさがない!

最初強めに効かせたいので22℃設定とかしたら、

ほんとうに、ガンガンに冷やすだろ。

バカですか!!!

22℃設定して、冷え切ったら設定温度を自動的に25℃に変更。

さらに、湿度が上がってきたら、自動的除湿運転。

除湿して寒くなってきたら除湿運転から、26℃設定の冷房運転に変更とか

なんか、エアコンの賢い!ってCMよくあるけど、

こんなこともできないのか!!!ってイラッとする。

条件分岐とか細かくカスタマイズというか、

プログラミングできるエアコンってないのか!!!

エアコンがアホすぎて辛い!!!

2016-06-08

初心者には、JSP難易度が高すぎた。

環境Java8,Eclipse,Tomcat8

プログラミング歴3ヶ月

1.webコンテナの設定が面倒くさい。

Tomcat8では、managerページ開くのに

roles="manager-gui"の追加をしないといけない。

><user username="tomcat" password="" roles="manager-gui"/>

2.JavaプロジェクトだけじゃWarデプロイメントできない。

Jsp入門のページからプロジェクトを丸ごと持ってきた。しかしそれだけじゃデプロイメント出来ないらしい。

Eclipseプロジェクトプロパティプロジェクトのファセット→動的Webモジュールにチェックを入れないといけない。

3.doGetメソッドがないと怒られる

デプロイメントに成功したのでプロジェクトURIアクセスしてみた。

[HTTPGETメソッドは、このURLではサポートされていません。]

doGetというメソッドが無いとダメらしい。仕方ないのでそれっぽいのをコピって貼り付けてきた。

しかし先程のエラーは無くなったが、今度はJspファイルが無いらしい。

4.Jspファイルがない

WEB-INF/直下に置いたのにindex.jspに遷移しない。

>/WEB-INF/classes/index.jsp

仕方がないからフルパス指定すると動いた。

とりあえずわかったこと。Jspは難しく奥が深い。

次はpostとかgetとかその辺を勉強したい。

http://anond.hatelabo.jp/20160607233413

贅沢言いやがってコノヤロー

プログラミング以外を期待される年になったら地獄だぞ。

死にたい

2016-06-07

あの全能感はどこへいったんだ

大学時代、これといってやることもないかウェブサイトを作って遊んでいた。

当時はHTML,CSS, JSを書いてレンタルサーバーにおいて表示させて楽しむところから始まった。スポーツニュースサイトRSSを読み込んで表示するだけのサイトを作ったりした。しばらくすると、Rubyというプログラミング言語を学びながら、ウェブフレームワークを使って動的なウェブサイト作ってみた赤の他人ウェブサイト書き込みをした時はとても嬉しかった。

バイトをしておらず、金がなく友だちもいなかった。没頭できる唯一の趣味ウェブサイト制作、その周辺のプログラミング作業だった。ネット検索すれば以下のような「ウェブサイトをつくって大成功」みたいな記事がたくさん見つかる。自分も、バイト代くらいはウェブサイトで稼げないものかと淡い期待を持っていたのだろう。

http://www.itmedia.co.jp/bizid/hitori_index.html

並行して、簡単TIPSプログラミングに関する概念解説みたいなことをブログに書いていた。どちらかといえばそちらのほうが人気を獲得していた。作ったウェブサイトはどれも流行らず、結局閉じることになってしまった。

頭のわるいFラン大学文系人間だった。黒い画面にテキストを打ち込むだけですごいことをしている気分になった。金にならなくても、少しずつ自分アイデアが形になっていくのが楽しかった。

しばらくして、これといって話題になるようなウェブサイトも作れずに就活の時期を迎えた。一流のIT企業をいくつか落ちて、中規模SIer(1次請け〜2次請けくらいの案件を取り扱う)にSEとして入社した。

仕事が始まると、毎月定まった給料がもらえることに感動した。真面目にバイトしたことなどなく、派遣単発バイトばかりだったため、まとまった給料をもらえる、そのこと自体に感動した。しかも、いくらか興味のある仕事だ。それはとても嬉しい事だった。

しかし、さらにしばらく経つと、どうも何かがおかしい。ウェブサイトを作っていたときに感じていた楽しさ、没頭感とか全能感といったような類のものが丸っきり無くなっていた。よく、大手SIer入社するとコードが書けなくて幻滅するというが、自分入社したのはプログラムを書く上でとてもいいポジションだった。下請けマネジメントをする会社でもなく、ブラック環境でめちゃくちゃな開発体制を強いられるわけでもない。

それなのに、プログラムを書くことに楽しみを感じなくなってしまった。入社当時は休日プログラムを書いていたが、今ではそれが苦しい作業になってしまっている。なぜなのかわからない。

あの全能感はどこへいったんだ。

2016-06-05

40歳からエンジニアに転身して生きていくこと

今年で40歳趣味RailsAndroidiOSアプリを書いてきた。

職業としてエンジニアとして生きていくことが叶うなら転身したい。

しか基本的に一人でプログラミングしてきたので、チームでの開発はしたことがない。

地域柄あまり仕事に恵まれず、今の歳までエンジニアと無縁の仕事をしてきた。

エンジニアになるのはほとんど諦めかけていたが、最近になって自分の住んでいる地方でもそういった仕事が出てき始めた。

一応いろいろ手は動くという自負があるので、頭に転職文字がよぎるようになった。

しかし年齢的に今から本職のエンジニアとして生きていくのは辛い部分があるだろうな、と思って躊躇してしまう。

今の仕事はある程度未来予測がつくので、それを捨てていくことも気になる。

収入面はどうなのか、自分のような年齢の人が転身したケースがあるのか、同年齢のエンジニアの人がどのような状況にあるのか、分からないことばかり。

ここまで考えてしまうなら、もう動き出さないいけないなと感じている。

明日からはまた今の仕事悶々とするな。

2016-06-03

プログラマだけどゲームを作ろうと思ったことがない

俺はゲームをやるのが好きだ。

小さい頃は何度ゲーム機を親に隠されたか覚えていない。

でも作ろうという気にはなったことがない。



プログラミング趣味ではじめた。

今は給料をもらってプログラムを作っているが、趣味としてもまだしっかり続けている。

それでも無い。

ゲーム系と便利系(?)では使う技術が違う(正直あまり知らない)から、まず入門の敷居の高さというものがあるんだが、

そもそもやってみたいなあ(願望)みたいなことすら思ったことが無い。

作りたいものが無くなってしまったとしてもゲームは多分作らないんじゃないだろうか。

俺は趣味プログラマとしては変なんだろうか。

http://anond.hatelabo.jp/20160603182522

へー、あんプログラミング天才が、数学の成績が1だったの?

知らなかったわ。

 

でも、それって数学がわからなかったのか、

かい部分に疑問が出てきて先に進めなかったのかで、

ぜんぜん印象が違ってくるなぁ。

 

俺も本筋と関係ないとこで詰まってしまって、考え込んでる間に授業は先に進んでしまい、

テストの成績が悪かったことあるけど「そこに疑問を感じずに先に進めるってどうよ?」と思う事はあったから。

まつもとゆきひろってRubyを作った人をウォッチしてみたら意外な面が見えてきた

中学高校数学の成績が悪くて、高校3年生で「1」だった

微分積分とかわからなくて、興味が持てなかった

国語英語言語系は得意で興味があった

プログラミングは、手で書きながら考えるタイプ

モルモン教