「fizzbuzz」を含む日記 RSS

はてなキーワード: fizzbuzzとは

2024-11-13

若手の成長を促す手法って、周りのフォローが無いと容易にパワハラになるよね

具体的には、Xでちょっと話題になってた若手育成方法なんだけど、今は特にムリ(時代にそぐわない)かなあというやつ。

特にITエンジニア界隈に限った話でも無くて、回路設計なんかでも昔は良く見た)

以下の手法なんだけど、これ昔は良く見たし、今もまあまあ見るんだけど、周りのフォローが無いともう結構厳しい。

ベテランが2,3時間くらいで終わるタスクを3日設定でアサインする

タスク説明をする時に細かところまで話さない。大枠と、完了条件の詳細だけ伝える。その過程仕様曖昧な時に自然に聞けるスキルを鍛える。

20自分で考えてわからなかったら聞きにこい。その時は「今何に悩んでて」「どういうアプローチ解決させようとしてるのか」を 両方説明せよ、と伝える。目的と取るべき手段相談できる癖を叩き込む。

・変な実装し始めてたら、「そもそもこのタスクは何をするんだっけ?」と伝えて、セルフ脱線を検知できるような感覚を身につけさせる。

https://x.com/shinoyu/status/1856166316039909611

え!こんなのスゴイ優しいじゃん、良い教育方法じゃんって思うかもしれないんだけど、コレ第三者目線だとそうかもだけど、若手目線だと地獄なんだよね。

これ、「3の倍数はFizz、5の倍数はBuzzって出すようなの作っといて。3時間くらいで」みたいな感じの指示になるんだよね。

で、ぼちぼち実装してたら「あー、そこはそういう関数にするんだ、このタスク目的ってなんだっけ?」みたいな口出ししてくんだよね。

最悪だよね。

指示出し側にはおそらく正解があるんだけど教えてもらえなくて、自分のやり方で実装してると口出ししてくんの。

さらに、仕様曖昧で、聞くとそこしか答えてくれない(書いてないけど、教育目的だと先回りして詳細を補足したりしないと思うので)

それで「悩んでること」と「どう解決しようとしてるか」をセットで聞きに来いって、ほぼ完成形で聞きにこさせんだよね。

例えば、「3の倍数かつ5の倍数の場合仕様に悩んでまして」「FizzBuzzと出すつもりです」みたいな。

これ、悩みの相談じゃなくて仕様確認してるだけだよね。

若手が効きたいのは「指示された以外の詳細で決まっていることはありますか?」なんだよね。

例えば、「1~100までの間で出力するようにしとくか」みたいな若手が実装してたら、たぶん「あー、依頼したタスク目的はなんだっけ?」とか割り込んでくるんでしょ。

なら最初から任意の数に対して対応可能な形で実装しておくように、整数以外が入る可能性あり」みたいな条件付けて出しとけや。

昔は何で出来てたの

みんな余裕があったから。

「あ、それ教育目的からガンガン聞きに行って良いんだよ、期待されてるってことだよ」みたいなフォローを入れる同僚とか上司が必ずいた。

あと、そもそも同期がわりと数が居て、昼めし食いながら愚痴を言いあったりすることで、あーどっこもそんな感じなのね、という納得感があったから。

今はどっちもない。

今はどうすれば良いの

若手をバカにしない。

前述の、ベテランと若手を明確に区別した上で、能力バカにしてないとできない手法なんだよね。

明確に「これは教育です」「勉強会です」という時間を設けてやるのであれば、パワハラにはならない。

勉強会で、クイズです正解は何でしょう?なら別に問題いから。

例えば「俺がこの仕様実装するときに、例えばこんな感じで実装進めるんだけど、タスク目的から乖離してきたなと思った段階で指摘してみて」みたいなやつ。

目的が明確で「タスク脱線を指摘する」になるから

なんでパワハラだと感じるの?

権力勾配がある状態で、権力のある側が無い側に対して目的情報を伏せるから

「そういう常駐先が多いので、その訓練をします」と宣言して実施しててもご時世的にキツイのに、おそらくそういう宣言すらしてないでしょ。

UNIQLOで冬服選んできてって言われて、外出用、全部で2万以下ねって言われてる感じね。

で、じゃあアウターでも買うか、ヒートテックいるかなーって選んでたら「あー、そういう色選ぶんだ?」みたいに言われるヤツね。

え?なんか指定ありましたっけ?って聞くと、いやいや外出用だよ?目的考えてみてよ?みたいな正解言わないヤツね。超ウザいでしょ。

まあ、実戦で鍛えないと教育してる時間とか無いよね

折衷案としては、以下のような感じで宣言すること。

教育目的として、これを明確に宣言して結果に差が出ること無いよ。

勉強なのでベテランと違う進め方してるし、クイズから正解伏せてるって、ちゃん説明できるから

ベテランと違って俺は嫌がらせを受けているっていうのがハラスメントだと感じる理由なんだから嫌がらせじゃなくて目的が明確にあると伝えるだけでずいぶん違うよ。

(ちなみに、コストをかけて勉強会を開催するのが一番イージーです。IT業界じゃないけどウチは余裕が無いからこそ完全教目的時間を取ってる)

ただまあ、採用コストかけて雇った若手エンジニアが辞めるというフィードバックを受けてなお手法変えないんだから信念があるんだろうし、それで辞めない若手が入ってくると良いね

2024-07-22

C++C#Javaで働きたいが

FizzBuzz書けないプログラマたち」「技術書を買ったことも読んだこともなくパソコン教室状態」で働く確率が高い。

ウェブ系に行くしかないのだろうか

2024-05-09

FizzBuzzプログラム書けない、電車一人で乗れないプログラマを沢山見てきたので

少子化不景気の原因は、あの国、あの政治家、あの法律がああだこうだ言うの見ても

「そうなのかな~」 

日本国民ダメなんじゃないかな~」

という気持ち

2024-05-06

IT業界特有ことなのだろうか。

から次へとFizzBuzzプログラム書けない、パソコン操作からないゴミ人間に会う。

今の職場でも毎日気が狂いそうだし、

前の職場でもそうだった。

前の職場もそうだったし、その前もそうだった。

自営業になったり転職したり、開発言語・フレームワークを変えても変わらなかった。

2024-04-21

プログラマってどう生きるのが正解なんだろう。

ウーバーイーツやラーメン屋のように売上と給料が比例してほしい

fizzbuzzプログラム書けないレベルの人たちと働くのは嫌だ

2023-11-02

anond:20231102125800

例えば、SSL対応とか、自分だったら1時間くらいだけど

FizzBuzzプログラム四苦八苦する人だと

一生かかっても無理だろうね

VisualStudioインストールプロジェクト作成、が手順書ないとできない、とか

Javaランタイムインストール自力でできないとか

ゴロゴロだよ

鬱です

2023-09-20

FizzBuzz書けないならプログラミングすんな

https://twitter.com/fumokmm/status/1703977187903426995

このFizzBuzzに対するクソコードに対して

「むしろこれが正解」「速度を出すときにはこういうことをする」「作ろうとする姿勢大事

とか逆張りで褒めてるやつが多いけど、普通にこんなんダメから

何がダメって、FizzBuzzを教えるタイミングって100%がfor文とif文を教えた直後なんよ

まずfor文を教えて「1から100までの数字を出力してみましょう」っていう問題が出されるわけ

そのときにfor文を使いこなせなくてSystem.out.printlnで書くやつはいっぱいいるけど問題無い

ちゃんと教える側が「for文を使えば簡単かつ正確に書けますよ」って形でfor文を教える

その次に「if文を使って偶数ときだけ出力しましょう」とかを教える

そうすることでfor文の中でif文を使えば繰り返し処理を制御できるってことを教える

で、最後課題として

FizzBuzzっていう英語圏で遊ばれるゲームがあるんだよ」

っていう形で出題するわけ

ユーザー数字入力させてFizzBuzzを判定させる、とかのゲームを作らせるのがいいんだけど

「まずは単純にFizzBuzzの正解を表示させてみましょう」

っていうコンテキストで出題されるわけ

そのときの回答としてSystem.out.printlnを大量に書くようなやつがいたら、もう一回for文からやり直せっていうのが正解

この回答が合っている要素なんて一ミリも無い

なのでこの回答を褒めてるやつは背景情報を読み取れないか承認欲求満たしたいだけの逆張り野郎から一切信用する必要無い

2023-09-17

ITエンジニアなら転職時のコーディングテストで生成系AIを使うな

https://qiita.com/app_js/items/a78e0605af702b155efc

この記事読んだ。

Paizaの対応の良し悪しやこの人の考えや不満については今回は触れない。

一人のITエンジニア採用担当者、また同時に一人のITエンジニアとして生成系AIに対してどう触れるべきか書いておく。

採用面接(コーディングテスト)時

まず、業務で生成系AIを利用するのは会社ルール範囲で好きにやれば良いと思う。

問題転職フェーズであり、ここでは能力をチェックされているわけだから、生成系AIの回答でコーディングテスト通過です、となるわけがない。

ソフトウェア開発は複雑であり、AIは間違った回答や遠回りな回答もするわけだから、生成系AIを使うにしても結局真偽を確かめられる能力必要だよね。

コーディングテストで生成系AIを使うというのは「私はそのような最低限の考える力も有りません」と言っているようなものなので、企業側がほしい人材とは言えない。

最近コーディングテストサービスでは入力内容を記録しているのでコピペたかどうかは分かる。

なので生成系AIで回答しているような場合企業側はある程度検知できる。

もちろん誤検知もありえる。サービス(Web)上ではなくIDEなどで回答を作って貼り付けることもあるだろう。

そのため、企業コーディングテスト通過後の面接で回答に対して深掘りすることが多い。

生成系AI回答で何も考えていない人はここで脱落する。

企業によってはコーディングテストサービスではなくホワイトボードなどでライブコーディングさせる場合もあり、そもそも生成系AIが使えないこともある。

どうすればいいのか

AIに頼らず考える力、最低限の能力を日頃から高めてほしい。

本当にこれにつきる。頼むからスキル高めてくれ。

俺はもうFizzBuzz程度の問題も解けない人や生成系AIに逃げる人の採用活動をしたくないんだ。頼む、スキル上げて。

2023-08-07

anond:20230807125459

ワイ:

#include<stdio.h>
int main(){
    for(int i = 1;i <= 100;i++){
        if(i%15 == 0){
            printf("FizzBuzz\n");
        }else if(i%3 == 0){
            printf("Fizz\n");
        }else if(i%5 == 0){
            printf("Buzz\n");
        }else{
            printf("%d\n",i);
        }
    }
    return 0;
}

Boi:何でそんな冗長なんですか

ワイ:考えるのが面倒くさいか

Boi:ここまとめられるでしょ

#include<stdio.h>
int main(){
    for(int i = 1;i <= 100;i++){
        
        if(i%3 == 0)printf("Fizz");
        if(i%5 == 0)printf("Buzz");
        
        if(i%3 != 0 || i%5 != 0)printf("%d",i);
        
        printf("\n");
    }
    return 0;
}

Boi:ああっ

ワイ:ww

anond:20230807143636

記事読んでもらったら分かるけど、「エディタが無いと書けない」じゃなくて、「本当に何も書けない」って話なのよ。

コンピュータサイエンス博士を持ってる奴でも、「じゃ、ここにFizzBuzz書いてよ」と聞いてもマトモなコード一つ書けない…というのが起こるから

履歴書とかじゃなくて、ちゃん候補者にはテストした方が良いよって話。

エディタが無いと書けなくなってるのは私も同意。今のモダン言語ホワイトボードで書くには向かないよなぁ〜

anond:20230806234821

エンジニアのくせにプログラムも書けないって、おまえどうやって入社してきたんだよ???

アメリカ企業採用担当者が、経歴は立派なのにコードを書かせるとFizzBuzzも書けない応募者がいるか採用ときにはコードを書かせろってエッセイを書いて、それからFizzBuzzを書くのが大流行するってことがあったな。

2023-01-19

anond:20230119100133

FizzBuzzってアメリカIT企業採用試験で、応募者がコンピューターサイエンス学部をでてたり、上級プログラマー肩書きなのに簡単コードも書けないってエッセイが元だったね。

日本でも上流工程重要下流コード書きは誰でもできるといいつつ、コード書けないってSEよくいる。

FizzBuzzプログラムが書けないプログラマがいる、という話がされるとき

ソラで紙に書けることを想定されているらしく、「できる必要がない」とか「できるべきだ」とか言われる。

しかIT業界はそんなもんじゃない。

グーグル検索OKウェブ上のソースコードコピペOK

Visual Studioインストール済み、

プロジェクト作成済み、ソースファイル作成済み、Visual Studio起動済み、実行ボタンクリックするだけでビルドができる状態

問題文は日本語挑戦者日本人挑戦者母国語日本語

問題文にフリガナふってある、

どんなプ言語でもOK

という状態で1週間かかってもできないという人が大勢いるのだ。

「サボってたのでは?」「不合格になりたかったのでは?」とかではなく

一生懸命試行錯誤して問題に取り組んでも、である

辺境のド田舎なのでは?」「超絶ブラック求人なのでは?」と、

裏があるんじゃないかと考えるもしれないが、そのような救いはない。

「¥¥somewhere\yourname」にソースコードを提出せよ、とかあったら7割が難解すぎて脱落するだろう。

このレベルなのだ

2022-12-13

anond:20221213130751

FizzBuzz書けない人らだって、方眼Excel仕様書テンプレートを埋めて「コードなんて誰でも書ける。設計をやってる俺らの方が高度なことをやってる」と誇りを持って仕事をしてるんですよ。

IT企業では8割の技術職が、

FizzBuzzプログラムすらかけないので適当時間を潰してもらっている。

そして残り2割の技術職は社内のリーダー格になっているのか、というと

その逆で実際には8割の社内ニートいじめられていたりする。

真面目君が不良生徒に虐められている構図と同じだ。

首にできない社会、実力ではなく年齢で給料が決まる社会がこれを生み出している。

世の中の仕組みが変わってほしい。

エンジニア採用めっちゃ謎の現象があるんだけど

経歴に実務でReactとかSymphonyやってましたって書いてんのにFizzBuzz書けないみたいな人にたまに遭遇するんだけど、あれはどういうことなんだ

2022-11-27

プログラマだけどラーメン屋みたいになりたい。

fizzbuzzプログラムすら書けないのに態度のデカさはリーナス級な人たちとの仕事に嫌気が差している。

プログラムいたことないので派遣に書かせて、半分自分が書いたことにして報告するやつ(ただしバグは全部派遣のせい)とか、そんなんばっかりだ。

自分仕事量と給料が比例する形態がいい。

フリーランスだと結局今と変わらない。

かと言ってZUN登大遊のような超人というわけではない。

いい方法があったら教えてちょ

2022-08-22

anond:20220821231236

FizzBuzzというのバズって、そのきっかけはアメリカ企業採用担当の人が、立派な経歴の人が応募してくるけどFizzBuzzという普通なら2分でかけるコードを書かせたら書けない、というエッセイだった。

今はコード面接が当たり前なのかな。

2022-08-11

むかしFizzBuzz流行った時に

アメリカ企業採用担当してる人が「面接の時にFizzBuzzを書かせたら書けない応募者がいる。

この業界にはりっぱな経歴なのにコードを書けない人がよくいる」みたいなエッセイを書いて、それがバズってFizzBuzzを書くのが流行たことがある。

FizzBuzzってITエンジなのに書けなかったらびっくりするって話で、書けるからドヤるってもんでもないはずだけど、めっちゃ書いて晒すのが流行って、何なんだって感じだったわ。

2022-03-22

プログラミングのお題みたいなのほしい

最近転職が決まって、PHPからgoに変わるんだけど、

実際に入社するまでに言語に慣れておきたいか簡単なお題的な奴がいっぱいほしい

がっつりなアルゴリズムとかじゃなくてfizzbuzzとかズンドコきよしプログラムレベルかそれプラスアルファくらいの奴

paizaとかだと時間計られたり間違えたりガッツリペナルティあるのがよくない、もうちょっと緩くやりたい

なんかないもんかね

2022-02-09

採用時のコーディングテストってどういうレベル問題が出てくるの?

FizzBuzzレベルならともかくマージソートとか最短経路計算とかだとやっぱ競プロガチ勢と戦うってなると結構辛そう

どういうレベル問題が出てくるんだろう

2021-07-12

いい加減「プログラミング理解できない人はいる」という事実を認め

てほしい。

プログラミング理解できない人はいます。いい加減この事実を認めて下さい。

こういう話になると、やれ「教え方が悪い」だとか、やれ「順序立てて学べば誰でも理解できる」などという輩が出てきますが、それは事実に反します。

まず、プログラミングは手順さえ覚えれば誰でもできるようになると言うものではありません。プログラミング理解するには、一定レベル論理的思考能力を要します。それが身に付いていない人には無理です。また、どんなレベルの人でも、プログラミングで分からないことは出てきますプログラミングができる人は、そういう時に、

といったことをして解決する力があります。そういう試行錯誤をしない人や、複雑だったり抽象的な概念を突き詰めて考えることをしない人に、プログラミング理解するのは不可能です。

たとえば、再帰関数が分からないとしましょう。具体的に何が分からないのかは人によって異なります。たとえば、

など。これらを解決するには、自分で仕組みを突き詰めて考えたり、コードを書いてデバッグしてみたり、調べたり人に聴いたりするしかありません。講師が気の聞いた喩え話などをすれば、たちまち疑問が氷解するなどということはあり得ません。

また、一口に「プログラミング理解する」と言っても、そのレベルは様々です。

  1. 代入や四則演算などが理解できる
  2. 条件分岐や繰り返しなどの制御構文が理解できる
  3. 関数クラスなどのモジュール機構理解できる
  4. 高階関数や非同期処理などが理解できる
  5. 計算量を見積もることができ、効率の良いコードが書ける
  6. ソフトウェア設計理解し、保守やすプログラムが書ける
  7. バージョン管理等の各種自動化ツールOSネットワークデータベース等のプログラミング言語以外の技術理解している

最初の2〜3程度が「自分の思うプログラミングの全て」な人が、軽々しく「プログラミングは誰でも理解できる」などと思わないでいただきたいのです。それは実用上は全然足りていません。サンプルコードをググりながら、やっとこさVBA複数エクセルファイルを集計できる程度の人が「プログラミングできる」気になっていては困るのです。

上記の大部分は、自分プログラム他人に見せるつもりのある人なら十分に習得しておく必要があります。ましてや、プログラミングで飯食おうと言う人間が、FizzBuzzに毛の生えたようなコードを読み書きするのに精一杯で、効率保守性に気を配れないのは論外です。

上記特に後半に書いたようなことは、誰にでもできることではありません。ちょっとしたコツや方針を守れば機械的にこなせるというものではなく、技術力の高い人でも熟考を要することです。彼らは、そうした高度なことを正しく考える力があるから技術力が高いのです。そういう力は、誰かに用意してもらったカリキュラム受動的にこなすだけではまず身に付きません。

ログイン ユーザー登録
ようこそ ゲスト さん