Perlに入学した話
あーあー、どれもこれも中途半端に手を付けてたし、自分が低レベルすぎて嫌になるなー。
なんか一つ武器になる言語持ちたい…持ちたくない?
と思ったので
perl-entrance-sapporo.connpass.com
こちらに参加してきました。
早速Ubuntuさんの出番だよ!やったねたえちゃん!
講師の方々がとても親切で凄まじくデキる方なので、参加してきて正解でした。
Macも欲しくなりました。買わなきゃ(使命感)
講義の内容(さっくりと)
・環境構築(VirtualBoxにUbuntu入れて仮想環境を作る。
(日本語入力周りを整えてなかったので、環境はあったのですがここから参加しました)
・ターミナル、エディタの説明
(Ubuntuは標準搭載されてるターミナルとgeditを使用しました。)
geditの存在は初めて知りました。ずっと単なるメモ帳だとばかり。
・Hello,World(その他)を書く
(軽い計算も少々。)
【感想】
・PerlはCに似ている(よく言われるらしいっす)
・とってもとっつきやすく感じました。
・他の勉強会も、導入らへんから始めて欲しいなって…思います(贅沢?)
あんまりにも楽しかったので2次会帰りに本屋寄って
SBクリエイティブ:新版Perl言語プログラミングレッスン入門編
これを買ってきました。
他のお勧め書籍も勉強会中に紹介されたのですが、PCの付箋に書いてて見れなかったので、咄嗟にあいほんでググりました。
今見ながら書いてるのですが控えめに言ってPerlすごいと思いました(小並感)
Cっぽいんですがシェルスクリプトっぽくもあるし、なおかつ文字列と数の型とか
その辺が凄く楽に感じます。
Perlって神かな…?
もう家ではPerlだけを集中して勉強します。今の現場?知らん
それだけの価値はある言語だと思うし、一つを極めたら他にも応用効くはずなので。
話は変わりますが、勉強や業務で一通り広く浅く(キッティング作業,Java,C,VB,シェルスクリプト,HTML5,JS,PHP,MySQL,サーバ,インフラ…自分は勉強含めてこのくらい薄く手広く)やった後、一つの分野に熱を傾けるのはとてもとても大事で、今回のPerl勉強会は、自分はこれがやりたい!と思う切っ掛けになりました。
なんというか、迷いが吹っ切れた気分ですね。
主催の皆様には感謝感謝です。
今後は読み進めながらPerlで色々書いていきたいので、続きはまた次回。
やっぱりUbuntuを使いたい話
さて、こんなことやらかしたわたくし瀬野さんですが、やっぱりUbuntu使いたいんですよ。
でも、デュアルブートはリスク高すぎるし…
あ、そうだ(唐突)
そんな時はVMware使えばいいんですよ!
早い話が、仮想環境作っちまおうぜって話ですね。
ちょっと前までVMware Playerだった気がしましたが、今は名前が変わってますね。
VMware Workstation Playerになってました。はい
Ubuntuが入ったDVDを入れて…っと
あとは設定するだけですね。マシン再生ポチっとな
は?(半ギレ)
あ、VMwareにUbuntuが存在してるのに満足してDVD取り出してたわ。
もう一度DVDを入れます。気を取り直して…っと
無事にインストールしてくれてます。めでたしめでたし。
続きはまた次回
環境構築したのでCでpee書いた話(2) 実際に頭使って書かないと実感できないことだらけだから困るorz
環境構築したのでCでpee書いた話
環境構築まで出来たので、C言語で何か書いてみることにしました。
ところで、パソコン関係のお仕事についてる方はみんなコーヒー好きだと(勝手に)思ってるんですけど、飲みすぎたら近くなりますよね?
ですが、配属先がブラック企業なのでWCに行くにも許可が要ります。
上司の機嫌がいいときはすぐに「行ってこい!」と言ってくれます。ラッキーですね。
でも機嫌が悪いと何万回も聞かないと許してもらえません。世知辛いですね。
ちなみに、書いたuncordならぬpeecordは以下になります。
========ここから=============================================
#include <stdio.h>
#include <stdlib.h>
static int jadge; /*上司の判断を返すだけのstatic変数 */
/***************************************************/
/*がばがばコーヒー飲みまくって Pee値インクリメント */
/*尿意が限界(100)超えたら上司に尋ねる */
/*上司が「いいよ」と言ったらトイレへ */
/***************************************************/
int main(){
int pee = 0;
while(tired()) {
drinkCoffee();
pee++;
printf("Pee Point: %d\n", pee);
if(pee >= 100){
printf("Humm...Boss,Can't I go to WC!?\n");
bossParmit(jadge);
if(jadge == 1){
printf("BOSS:Huh!? hurry!\n");
return 0;
}else{
printf("BOSS:Yes you can't.\n");
}
}
}
return 0;
}
/***************************************************/
/*コーヒーを飲むだけの関数(要改良) */
/***************************************************/
int drinkCoffee(void){
printf("Let's take a cup of coffee.\n");
}
/***************************************************/
/*ボスが許可を決める関数(要改良) */
/***************************************************/
int bossParmit(){
srand(time(NULL));
jadge = rand() % 2;
return jadge;
}
/***************************************************/
/*PGは常に疲れているのでひたすらフラグに1を返す */
/***************************************************/
int tired(){
return 1;
}
========ここまで=============================================
【書いてて思った改善点とりとめもなく書き連ねる】
・絶対英語が間違ってる。こんな受け答えはまずしない
・mainの中のif文処理は切り分けできる気がする
・絶対間違ったsrandの使い方してる
・フラグの立て方がわからん(致命的)
・なんでこいつこんなコーヒーがばがば飲んでんだよ
・何万回も尋ねてるため上司側がウザがってる
・コーヒー飲みすぎ
・上司の許可がクッソ渋い。まず間違いなく漏れる
【改良案】
・ランダムに0と1を出すようにしてるけど、割合を半々にしたい
・どっかのタイミングでもう飲めねーよってしたい
・1万Pee Pointごとに一度の割合で尋ねるようにしたい
・peeは生理現象ゆえ飲まなくてもPee Pointが増えるようにしたい
・jadgeの結果を1~50くらいにして20くらいでGOサインにしたい
・聞きすぎたら上司が「うぜえからお前クビ」とかにしたい
・限界超えてその場でpeeする処理にしたい
自分で書いててなんなんですが、本当に何書いてんですかね…
あ、当然ながらWCの許可取らないとだめってのは
フィクションですよ?フィクション
この業界入ってからはそんなことありませんし。はい
パン屋やってた時はWCの許可要りましたけど控えめに言って店畳めクソがって思ってましたが
続きはまた次回
VirtualBoxでローカル開発環境を構築していく話(2) ワタシPHPチョットサワル
続きです。今度はこちらを入れていきます。
Cyberduck | Libre FTP, SFTP, WebDAV, S3, Backblaze B2 & OpenStack Swift browser for Mac and Windows
なんやかんやでWebサーバまで立ち上げ終わりました。
ンでまた問題が発生。
PHPで書いたHello, Worldがブラウザ上で見れなかった(文法ミスってた)のでつい
puttyからいつもの癖でexitで抜けてしまったっす…orz
もう一度Webサーバを立ち上げようとしたら…
Failed to listen on localhost:8000 (reason : Address already in use)
ですよねー・・・どう直すのせんせー
kill hoge
…あれ、まだ立ち上げたのが生きてるってなったので
kill -9で一度ぶった切って再立ち上げ。事なきを得ました。
はい
とりあえずの開発環境は整った気がする。teratermとか用意してないけど…
続きはまた次回。おなか減った。
VirtualBoxでローカル開発環境を構築していく話(1)
【前回のあらすじ】
Ubuntuをデュアルブートしようとしてwindows10消し飛ばした話 - senobro’s blog
ド派手にOSぶっ壊したので全部おじゃんになりました。
http://dotinstall.com/lessons/basic_localdev_win_v2/38602
↑なのでここを見ながらローカル開発環境を構築します。
動画をもとに、以下をインストールしていきます。
・Virtual Box
Downloads – Oracle VM VirtualBox
Download PuTTY: latest release (0.68)
http://dotinstall.com/lessons/basic_localdev_win_v2/38609
設定はまだ終わってないので、次回のブログはここのページから続けます。
【得たもの】
Vagrantのセットアップで使ったWindows PowerShellはUNIX系コマンドが(ちょっとだけ)使えるから便利
前に現場で何度か使ったけどわけわかってなかった
たぶんまだ訳わかってないので、機会があればガンガン使っていきたい
【今日の失敗】
・これ書いてるときにウイルスバスター入れるの忘れてたことに気づいた(入れた)
Ubuntuをデュアルブートしようとしてwindows10消し飛ばした話
昨日の深夜
1:ubuntuを壊してたことを思い出す。
2:1を消してもう一度windowsと共存させようと思い立つ
4:インストール終了
5:あれ、なんかおかしい。
6:前に2、3個出てたハードディスクのアイコンがubuntu内に出てない
7:もしかして:win10消し飛ばしたんじゃね?
8:ubuntuのアプリアップデート後に再起動して、またBIOS開く
9:ブートの順をwinを一番最初にしてみる
10:無事ubuntuが起動⇒消し飛ばしたことが確定orz
11:ショックのあまりubuntuも消す⇒またなぜかwinを起動してみる
12:Operating System Not Foundとか出る
13:ここでOSが何も入ってない状態になる
14:絶望のままふて寝
今日
1:朝一でビックカメラに直行。
2:Windows 10 Home USB 3.0を購入
3:即帰ってUSB入れてBIOS起動
4:Operating System Not Foundとか出る
5:たすけてぐーぐるせんせー
6:Windows 10 のダウンロード ←ここに行き着く
7:たまたま昔買った空のDVDが有ったので父のPCでisoファイルを落とす
8:DVDに焼く
9:焼いた後、自分のPCに入れてBIOS起動
10:Operating System Not Fou(ry
11:起動順が悪かったぽいのでDVDをブートローダの先頭にして再起動
12:無事windows10が起動。再設定
原因
・以前Ubuntuのアップデートをする際、アップデート中にシャットダウン
してぶち壊した。
・今回Ubuntuを入れる際、ディスク全体を削除してから使用するを選択した。
(Ubuntuがインストールされていますと表示されたドライブを選択したはず)
・前に入れたUbuntuを入れたドライバをwindows側からフォーマットすればこういったことは起こらなかった。
教訓
・新規にOS入れるときは深夜を避けよう。先に入ってたOSを殺す羽目になる
・デュアルブートする際は気を付けよう。一歩間違えれば先に入ってたOSを(ry
・新しいことを試すときはサブPCを用意しよう。(用意したい…)
追記
・買ったusbは意味なかった。相談した店員さんがやたら早口で面白かった(こなみ)
さらに追記