はてなキーワード: 入門書とは
はてなの皆さん、増田の皆さんたくさんの反応ありがとうございます。
どうしたもんかと悩んでる状況の中で、エージェントの人に話してもあまりピンと来ない反応が返ってくるし、周りに相談出来る人もいないしで、かなり勇気づけられました。
とりあえず今時点で返せる分だけお返事返しておこうと思う。
恥ずかしながらこんなサービスがあるのを知りませんでした。
今の状況では1000時間学習してから転職ってのは難しいんだけど、転職活動終えたら利用してみたいなという気持ち。
開発に夢見すぎ
自己評価低い
その通り、かもしれない。
技術記事とか書いてアウトプットしてる同世代以下の優秀な技術者たち見てて、自分とのスキルギャップに絶望してたところだったんだ。
5年弱ぐらいローコードじゃなくて、コーディングで実務経験積めてたらなあって。
後悔してもどうしようもないのは分かってるんだけども。
私のキャリアについて言葉を選ばず相談するので、言葉を選ばずレスポンスしてもらいたい。
鞭歓迎。
ありがとうございます。登録させてもらいました。
弊社来ない?
すごくめちゃくちゃたいへんありがたいお誘いなんですが、
増田に相談してそれで就職してっていうのがとんでもなく恥ずかしい。
でも、本当にありがとうございます。
あと色々突込み入ってた「作りたいWebサービス」については実際にdjnango使って手を付けてる段階です。
何てことない内容なので、確かにこれを作るためにわざわざ転職する必要はなさそうだ...。
・30歳
・単身
ETLツール(ローコードの開発ツール)を使ってデータ連携基盤を作成するための開発エンジニアとしていくつかプロジェクトに参加してきた。
年収400~500ぐらい。
平均的な残業時間は30hぐらい?少人数で本番稼働と運用保守のトラブル対応してた時は100時間は優に超えてたぐらい。
・特定のETLツールについての知識(前社の人員の中では最も実装/設計/開発の能力があった。と思う。)
・DBの浅~~~い知識(基本的なDDL,DML,DCLなら全て書ける程度。チューニングとかはやったことないので分からない。)
・BashやらPowerShellやらの浅~~~~い知識(プロジェクトで簡単なスクリプトを作成した経験があってその時に色々調べた程度。)
・開発チームのリーダーをやっていたのでそのあたりのマネジメント経験(PM/PLは未経験)
・Pythonとそのフレームワークの入門書籍一冊分ぐらいの知識
・Linuxの入門書籍一冊分ぐらいの知識(資格取得に向けて勉強中)
・作りたいWebサービスがあるので、プライベートでそれ作りたい
基本的なプログラミングの部分を全く業務で触ることなく仕事してきた。
前職を辞めて、出来上がったのはローコードの開発ツールの経験しか持っていない、市場価値のない化け物だった。
でも、前職みたいなローコードツールを使った開発から離れたいのよ。つまらないし、同じことの繰り返しだし、地味だし。
技術的に未熟な部分が多すぎて一足飛びに理想の企業に勤めるのが無理なのは分かってる。
とはいえ、年齢的にももうデッドラインが近いんじゃないかと焦ってる状態。
色々エージェント登録して求人見ながら自分でも出来そうな社内SEのポジションに3つほど応募した。(結果はまだ)
前職の経験踏まえたコンサルのオファーが来るが、給料は魅力的なものの「開発とか技術とかからは遠のいちゃうんじゃないか」って足踏みしてる。
SESと前職に似た開発,PM/PLポジションのオファーもたくさん来る。
化け物が「いつかこんな風になりたい」を実現するためには実務経験のためにSESで基礎から3年ほど実務経験を積んでからって思ってるんだけど悠長すぎる?
諦めて別の道、もしくは元の経験を活かせる道を探したほうが良い?
本屋自体が少なく、あっても技術書の専門コーナーなんてない田舎住まいだったので、
Amazonで専門書を買って勉強してたんだけど、本当に何も知らないので「基礎から」って本を数冊買った。
しかしどの本も全体のうちの半分は「ハローワールド」と「変数の基本的な使い方」と「ifの使い方」で占められ、
そこを超えるといきなり、コード掲載だけが10Pくらい続く本格的なプログラミングを解説なしでやらされるものだった。
知らない命令とか構文がいっぱい出てくるし、それを一々ネットで調べないと進められないので全部挫折した。
更に本を追加で買って、運良く段取り良く進めていってくれる本にあたったことでなんとかなった。
その後、別の言語を勉強しようとする度に、全体のうちの半分は「ハローワールド」と「変数の基本的な使い方」と「ifの使い方」で占められ、る本に当たるし、そこについては大体どの言語でもやり方は同じで、まるまる読み飛ばすことが多い。
今日日、エクセルをちょっと触ってればifくらいは普通に使うものだからパソコンで仕事する人ならみんな知ってると思うし、シリーズとして「ifくらいまでは知ってるところからスタートする入門書」が欲しいなぁと思う。
Bing(Copilot)ちゃんに聞いたら下記がお勧めだって言ってたよ。ワイは書評についてはいくつか目を通したが未読
アルフレッド・ミーリー『アメリカの大学生が自由意志と科学について語るようです。』蟹池陽一訳,春秋社,2018年
評者:李 太喜
https://tarb.yamanami.tokyo/2021/08/0028-alfred-mele-free-will.html
自由意志についての入門的な理解を深めるために、以下の書籍がおすすめです:
- **『哲学がわかる 自由意志 (A VERY SHORT INTRODUCTION)』** トーマス・ピンク著、戸田剛文、豊川祥隆、西内亮平訳。この本は自由意志に関する哲学的な議論を紹介し、現代科学との関連を探ります。¹
これらの書籍は、自由意志の概念についての基本的な理解を深めるのに役立つでしょう。興味がない方でも、これらの本は読みやすく、自由意志の問題を考える良い出発点になります。興味を持たせるためには、日常生活での意思決定や行動の背後にある科学的、哲学的な考察を示すことが重要です。それには、このような入門書が適しています。
この日記の内容は、会社の後輩から「最近エクセルマクロを勉強し始めて(キラキラ)」という話を聞いて、先輩ムーブをかますために話した内容になります。
とにかくこれから説明する「計算用シート」が憎くて憎くてたまらず、ちょっと引かれるほど熱弁してしまいました。
ただ、他の方がどうされているのかや、逆に「計算用シート」を愛用する方の意見も聞きたくなり、増田に書いてみました。
エクセルマクロのお作法とか書きましたが、要するにエクセルマクロで「計算用シート」って色々な意味でよくないよね、という話をしたいです。
3行でまとめます。
〇 エクセルシートはユーザーインターフェース(インプット)か出力結果(アウトプット)のためのものとすべき
〇 データ加工をする場合には、原則配列や辞書型配列(連想配列)に格納して加工を行い、最後の結果だけシートに出力するべき
〇 何事にも例外はある。
エクセルマクロにも色々あると思いますが、今回は下記を想定します。
日付や人物名などを入力し、データベースや別のエクセルファイル、別のシートから取得したデータを入力された値を基に加工し、加工後のデータをシートに出力する
この場合、入力欄があり編集可能なシートがユーザーインターフェース、最終的に加工されたデータが出力されるシートが出力結果です。
(もちろん、ユーザーインターフェースの別の欄(セル)に出力する場合もあるし、その場合はユーザーインターフェースと出力結果が一体のものとみなします。)
また、データ用シートは同じエクセルファイル内に基となるデータが含まれる場合を想定します。
(これ自体が非推奨で、SQLデータベースかせめてAccessを使え、という意見はありますがそれは別にして…)
ではここで定義する計算用シートとはなにかというと、文字通り計算を行うためのシートです。
1.元となるcsvファイルをエクセルに読み出してシートに格納
2.そのデータは日付が数値型になっているので、日付(数値型)の入った列を文字列に変換した日付(文字列型)列を新たに作成
これは極端な例ですが、とにかく変数や配列を定義せず(あるいはエクセルのセルオブジェクトを変数のように扱い)、エクセルに値を入力し、それを直接加工することで目的となるデータ加工をしたり、様々な処理をします。
なんかこんな感じの処理をしているエクセルマクロ、どこの会社でも腐るほどあるんじゃないでしょうか。
ある程度マクロに慣れた気の利く人なら、このシートはロックや非表示にして、ユーザーから触れないようにするでしょう。
・・・これ、やめたほうが良くないですか?。
ある程度詳しい人なら同意してくれると思いますが、このやり方でダメな理由はいっぱいあります。
後で説明する配列や辞書型配列(連想配列)と比べると格段に処理が遅いです。
ちょっと詳しい人が知っている「画面更新の非表示」を駆使しても、配列を使った処理からみれば止まったハエです。
いったんエクセルシートにデータを格納して加工しているので、コードとエクセルシートを両方見る必要があり、とても読みにくいです。
変数として命名されていないのも致命的で、処理の意図が余計に分からなくなります。
計算用シートを事前に用意して、別のセルに関数を格納しておき、マクロと関数を使ってデータ加工をするものも見たことがあります。
あまり知られていませんが、セルの最大文字数は32,767 文字です。
セルの最大文字数を超えると自動的に隣のセルに値が入り、シートが滅茶苦茶になります。
他にもエクセルの数値を丸める自動変換の仕様とか文字列→日付の自動変換とか、いくつものバグに苦しめられます。
できる人だと、いちいち最大文字数が多い場合の処理を書いたり自動変換機能を殺したりしてくれますが、そんなことに手間をかけているから日本のGDPは上がらないんだと思います。
他にも、データが大きくなると処理が重くなり不安定になる、計算用シートを人が触ってしまうリスクがある、などいくらでも理由は上げられます。
(逆に利点は、目の前でガチャガチャ動いてスーパーハッカーになった気分になれるくらいしか思いつかない・・・)
配列を使いましょう。
配列とは何ぞや、という人はググってください。
配列にデータを入れて、データ加工は配列や変数に対して行い、一番最後の出力だけセルに値を格納する。
個人的にオススメしたいのは辞書型配列(連想配列)で、うまく使うとデータの管理が簡単になり、処理も爆速になります。
(参考)【VBA】大量データから高速で値を検索【Dictionaryを使う】
csvファイルもなまじエクセルで開けるだけに別のブックやシートで開きがちですが、これは悪魔のささやきです。
直接ファイルを読み出してLine InputやSplitで配列に格納しましょう。
エクセルとして開くやり方はコード書くのは簡単でも、実行時間に天と地ほどの差が出ます。エクセル開くと処理もめちゃ不安定です。
(参考)Excel VBAでCSVオープンするときのパフォーマンス比較
いや、冒頭のマクロを書く人の気持ちも分かるつもりです。自分もコードを書き始めたころは全部シート上で操作していました。
冒頭のマクロのほうが直感的なんですよね。自分が手で書くことをマクロにやらせる、というマクロ本来の趣旨にはあっていますし。
途中の計算過程もすべて目の前で展開されるから分かりやすいです。
ただ、それではダメなんです。。。処理は遅いし挙動は不安定だし後で改修・保守する人が死にます。
あと、エクセルシートやセルは当然エクセルにしかないので、エクセルマクロ(VBA)から他の言語に移れなくなります。
自分もエクセルマクロの里の出なので、計算用シート脱却には苦労しましたが、苦労して会得した配列や辞書型配列(連想配列)のスキルはそのまま他の言語に活かすことができました。
配列の中身を見る方法は別にある(ローカルウィンドウやDebug.printを使うなど)ので、リハビリに取り組んでほしいです。
(参考)VBA デバッグの仕方
計算用シートを許容できる、使うべきケースもあると思います。。
個人的には、
(最後のは、なんでも自分で確認しないと気が済まない上司の発注で、意味不明と思いましたしたがしぶしぶやりました。)
この場合、インプットのエクセルシートに直接加工するのは論外なので、計算用(加工用)のシートを用意してそこで操作を行うことは必要だと思います。
他にも、こういうときは「計算用シート」があったほうが良い、という状況があれば教えてもらえると嬉しいです。
そもそもツッコミとして、「データ加工するならエクセルマクロを使わずにpythonとかRとかもっとまともな言語使えよ」という言葉が来そうな気がします。
ただ、個人的にはエクセルマクロ(VBA)は大好きですし、初心者にもおすすめしたいです。
自分のような非エンジニアだと、セキュリティの関係などでPythonの開発環境とかすごく用意しにくいんですよね。
(あと、コマンドプロンプトの真っ黒な画面が怖かった)
その点エクセルマクロは、開発環境の用意はプロパティでチェック項目を一つオンにするだけだし、入門書がたくさんあるし、セルの挙動を追えば視覚的にプログラムを理解できるし、初心者に優しいです。
(そのやさしさが上述したとおり悪魔の罠なわけですが。)
最初は計算用シートに頼ってでもエクセルマクロからプログラミングを始めて、本格的なデータ加工をし始めたあたりで計算用シートという諸悪の根源から脱却する。
さらに本格的なデータ処理を行うために、PythonやRなど別の言語を習得したり、エクセルからSQLデータベースやACCESSなどに切り替えていく、というプロセスがいいのではと個人的に思います。
恋愛したくなったり、風俗に行きたくなったり、過去何度も敗退したマッチングアプリに登録してみたくなったりする
3年前くらいにここでこういう苦しみを吐露した時に「物理と筋トレをしろ」と言われた
それ以来、異性への関心や渇望が湧いたら運動するか勉強することにしている
常にいるアルバイトのマッチョなお兄さんに教えてもらって筋トレするか、ランニングマシンで走る
英語歴は中学の英検、高校の大学受験、大学時代のTOEICくらいだったが、コツコツと勉強し続けたことによって英語検定一級を取得した
数学は大学受験(文系)のセンターと個別で利用した数学1A2Bまでで大学に入ってからは頭から吹っ飛んでいた
中学数学から始め、基礎問題精講や青チャートを使って記憶を辿り、数3にも手を出し、高校数学が終わった現在は解析、線形代数、確率の入門書を一冊ずつ購入してそれをペラペラと読んでいる
ラーメン、酒、タバコ、ポルノ、自慰、風俗に頼らなくても異性への関心を昇華できるようになったのは人間としての大きな成長だと感じている
金融界隈ってのは本当に信用できない。NFTは誰が最後にゴミを掴むかのゲームだったし、仮想通貨は盛り上がりほどは社会に浸透していない。かんぽ生命は会社ぐるみで不正をし、証券会社はゴミを老人に売りつけているらしい。
そんな信用できない金融界隈だけど「インフレ環境で現金で持ち続けるのは実質損」ってのは理解できる。じゃあわかったよNISAやるから信頼できる文献だけおしえてくれ。
俺はインデックスがなにかしらない。なんちゃらファンドがなんの基金なのかしらない。利子がどう経済に影響をあたえているかしらない。資産内訳開示されてもわからない。個別株ってなんだよ。
だからまずは個人投資家のための用語集というか、世界観の設定資料がほしい。水の呼吸は水遁ね、みたいな。
そして次に金融世界で成立してる論理の説明がほしい。なんで利子があーしたら株価がこうなるのかみたいな。俺は理系卒だから数式はいくらあってもいい。むしろ学者が書いた数式付きの入門書みたいなのがいい。金融マンの自然言語を俺は信じない。
金融界隈は後になって「NISAに手を出した奴は馬鹿wwww」「個人投資家が機関投資家に勝てるわけ無いだろwww」が全然あり得るから怖い。俺が靴磨きの少年になっていないと誰が保証できるんだ???
数学(あとせいぜい理論物理)の研究をするような人たちがほかの全学問の研究に従事すればいいと思いませんか?
数学は数論の本とかだと入門書でも修士レベルの知識がないと読めないのがあるそうです。他の学問でこんなことはそうそうないでしょう。文系なんかは別に入門書じゃなく、専門家が同じ専門家に向けて出したガチの専門書の体で出された本だとしても、下手したら高校生でも読めると言ったら言い過ぎかもしれませんが、賢い大学生なら普通に読めるでしょう。
数学とそれ以外じゃ学問としてのレベルが違いすぎるのだと思います。
つまり、今現在他の学問をやってる研究者は数学をやるのは理解力が足りず無理でしょうが、逆に数学やってるような人がほかの学問をする分には、今その学問をやってるような人たちよりもまず頭がいいので、今後もその人たちに研究を続けさせた場合に得られるものよりもより多くて高度な成果が得られるのではないかと思いました。
自由主義なのでそんなことは無理ですけど、もし成果だけで考えたなら、今数学以外の研究してる人には全員学術の場からは退いてもらって、望月新一みたいな優秀な数学者のクローンを作ってその人たちにあらゆる学問の研究をさせたほうがいいと思ったのですが、みなさんはどう考えますか?