「ネスト」を含む日記 RSS

はてなキーワード: ネストとは

2021-03-05

anond:20210304123459

だいたい荒らし一人ががんばってる

「あれ、コイツ、ヒトとして言っちゃいけないこといいだした」

ってあたりで通報するとネストぶち切りながら消える

しか「女はみんなオレのちんちんが大好き」みたいなことしつこく書いてたやつを

とことん相手していたら途中から宗教名乗りだしてけっこうおもしろかったから生きてれば紹介したかったけど消えた

2021-03-04

anond:20210304123459

低能先生いたころ、3日ぐらいトラバ延ばしてたことあったけど、相手がBANされてネストじゃなくなったんだよね

悲しい

2021-02-04

人並のIT技術と人並のPM能力を組み合わせれば年収1000万はカタい

そう思っている。

結論から言えば、SIerで数年働いてウォーターフォールを身に刻みつつWeb技術趣味で学ぶ。その後アジャイル標榜しているWebスタートアップ転職すれば良い。

往々にして(少なくとも日本における)Webスタートアップアジャイルは上手く行かない。なぜならアジャイルとはなんたるかをきちんと学ばず、「なんとなく楽そう」とか「今時でイケてそう」みたいな動機採用するからだ。

あらゆるプロジェクト炎上しまくった結果、ウォーターフォール回帰する瞬間が必ずやってくる。しかWeb系でウォーターフォール上流工程ができる人材は割と限られていて、その中にSIer出身コテコテ上流工程やってたエンジニアが入るとかなり重宝されるのである

アジャイルは、ウォーターフォールの酸いも甘いも経験してその対比でこそ真の利点が見えてくる。そうしてウォーターフォールアジャイルも分かってる人材になれば、それだけでそのスタートアップでは唯一無二の存在である

オーケストレーションだとか自然言語処理だとか純粋関数型だとかCSだとかで技術的に尖ろうとしても、そういう高度なものを求めているスタートアップは実際多くはない、というか既に席が埋まっている場合が多い。

T型人材とよく言われるけど、難しいことは何もなくて、タイトルに掲げた人並のものを2つ持っていればいい。OOPも知らない奴らがネストの深さは何層までだとかタブスペースは2つだとかforeach文使ってるやつはクソだとか表面ばかりに囚われて本質見誤って伸びきったスパゲティを量産しているような現場に、レガシーから飛び出したお前らが新風を巻き起こして欲しい。

そんな私の年収は400万です。

2021-01-15

プロジェクト管理ツールで孫タスクって必要ないと思う

具体的にはここで出ている要望に対しての意見

https://support-ja.backlog.com/hc/ja/community/posts/360018602914-%E8%A6%AA%E5%AD%90%E8%AA%B2%E9%A1%8C%E3%81%AB%E9%9A%8E%E5%B1%A4%E7%9A%84%E3%81%AB%E5%AD%90%E8%AA%B2%E9%A1%8C%E3%82%92%E8%A8%AD%E3%81%91%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8C%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%97%E3%81%A6%E3%81%BB%E3%81%97%E3%81%84


まずはじめに言いたいのは、単なる要望ではなく批判になってる人がいるのはどうなのかなーということ。

そんなに言うなら他にもプロジェクト管理ツールあるんだからそっちに乗り換えればいいのに。

そりゃ自社で承認されてるツール関係で使わざるを得ない人もいるでしょうけど、自分に合わせるのではなくツールの方に合わせていくのがスマートな使い方だと自分は思います

タスク必要ないと思う理由

タスク粒度改善すれば孫タスクはいらないと思う

上のURLから引用

ざっくり目にタスクを切ってからプロジェクトを進める中で徐々にブレイクダウンしていくことは、

プロジェクト進行手法でままあることで、孫課題くらいは設定出来ないと使い勝手が悪過ぎます

というのがあるのですが、タスクの切り方がざっくりしすぎなんじゃないですかね・・・

ある程度決まったら上のタスクを書き直したほうがいいのでは?

「○○バグ対応」みたいなタスクであればそのタグをつけてもいいですし。

無駄階層が増えている気がします。


タスクネストが深くなると開いていくのが面倒になる

これはあるあるですよね。

終わりに

タスク必要な場面が思い浮かばにゃ〜

誰か「○○みたいなときには絶対タスク必要!」っていうのがあれば教えてください

2021-01-08

なんでSEXがだめなのか、要は中出し被害者になりやすいか

これは頭のおかしいおばさんの妄想だぞ。現実と近いかもしれないが、フィクションだぞ。

オッス、オラオメ子!風俗嬢だ!なんの風俗かって?風俗っつったら性風俗(ソープ)に決まってんだろブッ●すぞ!

四の五の理屈並べんのは苦手だからいきなり金の話スッぞ!

あるSEX作業員(わりとできる)を雇う月当たりの金額

  • 120万:発注元→1次請け(Soap)
  • 85万:1次受け→2次請け(オメ子)
  • 70万:2次請け→3次請け(SEX)

これはオラたちから見ればげぇはんだしネストいからまだマシだな!ねぇはんだったりSEXSEX雇ったりしてると地獄だぞ~!前には冗談でなく6次請けくらいまでみたことあっぞ!どうやって多重派遣じゃないことにしてんのか不思議だぞ~!

「いやいや月70万もらうとか最高やん」?…これは当たり前だけどSEX会社が貰う金だ。新人をほぼ無料でいれたり不採算の他部門に回す金、福利厚生営業費、事務部署やどっからか来て何してるかわからない老人のために払う給料もこっから出る。別に悪いこととかじゃねぇんだぞ?会社所属する利益享受する以上当然のことだ。分業してるだけだからな。嫌ならフリーランスになるってことができる。おめえが「風俗嬢」ならな。

まあなんにせよ実際に本人に落ちてくる金は3,4割ってとこか。客から100くれぇ取ってるオラが40くれぇだしな!それでも上司(チチ)から利益全然ねぇって怒られんだ!ひゃ~!賞与査定のためにももっとSEXから現場経験ある人引っ張ってこねぇと!

じゃあな!(SEX入るにしても)絶対ゴムつけてくれよな!

anond:20210108092100

なんでSESがだめなのか、要は中抜き被害者になりやすいか

これは頭のおかしいおじさんの妄想だぞ。現実と近いかもしれないが、フィクションだぞ。

オッス、オラメー子!エンジニアだ!なんのエンジニアかって?エンジニアっつったらIT(システム)に決まってんだろブッ●すぞ!

四の五の理屈並べんのは苦手だからいきなり金の話スッぞ!

あるSES作業員(わりとできる)を雇う月当たりの金額

  • 120万:発注元→1次請け(SIer)
  • 85万:1次受け→2次請け(メー子)
  • 70万:2次請け→3次請け(SES)

これはオラたちから見ればげぇはんだしネストいからまだマシだな!ねぇはんだったりSESSES雇ったりしてると地獄だぞ~!前には冗談でなく6次請けくらいまでみたことあっぞ!どうやって多重派遣じゃないことにしてんのか不思議だぞ~!

「いやいや月70万もらうとか最高やん」?…これは当たり前だけどSES会社が貰う金だ。新人をほぼ無料でいれたり不採算の他部門に回す金、福利厚生営業費、事務部署やどっからか来て何してるかわからない老人のために払う給料もこっから出る。別に悪いこととかじゃねぇんだぞ?会社所属する利益享受する以上当然のことだ。分業してるだけだからな。嫌ならフリーランスになるってことができる。おめえが「エンジニア」ならな。

まあなんにせよ実際に本人に落ちてくる金は3,4割ってとこか。客から100くれぇ取ってるオラが40くれぇだしな!それでも上司(チチ)から利益全然ねぇって怒られんだ!ひゃ~!賞与査定のためにももっとSESから現場経験ある人引っ張ってこねぇと!

じゃあな!(SES入るにしても)絶対転職してくれよな!

2020-12-14

[]GOTOベル禁止されたってマ?

深いネストの処理とかから抜け出すのに便利なのに!?

2020-12-09

anond:20200926223016

if分岐ネストが深いことが意味する本質は可読性を落とすことではなくて循環的複雑度が爆上がりしてテストが難しくなるってことだよ

副次的に(一般的には)読み辛くもなる

2020-11-16

[]11月15日

ご飯

朝:なし。昼:サイゼ。夜:サンドイッチサラダチキン。間食:アルフォート

調子

むきゅーはややー。お仕事地獄

グラブル

古戦場。累計10箱。

ソーンとフュンフどっちにしようか悩み中。

○プリコネ

クランコイン勢と、なかよし部とドラゴンズネスト以外の恒常通常衣装キャラの星5が終わった。

まあ専用装備レベル上げとか、欲しい6解放とか色々遊び要素はこれからもあるので、ちまちま遊んでいこう。

2020-11-14

汚いソースを読む技術をつけたい

転職してから頻繁に汚いコードを読む機会がある。

関数はめちゃくちゃ長いし、if文のネストは何重にもなってるし、フラグ変数だらけ、コメントもない。

ようこんなコードが動いてるなぁと感心。

2020-10-22

anond:20201022005749

よし、お前の熱い気持ちしかと受け止めた。バズるのは時間帯が悪かったと思うので、次に投稿するときには夜ご飯ぐらいがいいよ。それでは添削してやろう。

継承はだめ、という主張はわかるぜ。継承ネストが深くなるとメンテナンス性が落ちるし、習い初めのバカ勝手クラスを使うからな。これは同意する。

そう、昨今の業務では継承とか使わない方が良い。何故か?フレームワーク上でビジネスロジック記載する時代からだろ?でもな、そのフレームワーク自体テンプレートパターンといったパターンが満載で、アスペクト指向を介してログ排出しているのよね。まぁ、素人継承を使わせるのはキチガイ刃物なのは事実だが、今という時代フレームワーク刃物ラップできている時代だと思えば、悪くないと思うよ。うん。

リスコフの置換原則は、継承したメソッド上下で型の変化を無くせ、というだけだろ?それは、ちょっと能力検定には弱いよね?SOLIDの原則について調べてみよう。

無闇矢鱈に継承を使うな、というのは正しい。だけど、禁止する程ではないと思う。

2020-10-18

anond:20201009011154

それ以前に業務分析を嫌がるクライアント「そんなことしなくっても、ちゃんと作れるんでしょう?」ってのが嫌だし、コスト削減で「じゃ、やらなくていい」ってレベルの開発会社も多いのが現状だ。 後は異様にネストした、5次請け、6次請けが当然と思っている、競争せずにライバル会社にも利益分散するSIer業界とか言うイモの吹き溜まりもとんでもないと思う。土木建設業界と一緒なんだよなw夢の無い業界だ。

2020-10-15

anond:20201015012446

前に似たような性格の従兄弟に教えようとして同様に困った

  • インデントちゃんとつけよう、とか言っても「動けばいいじゃん」とか言って全然やってくれない

「動けばいいじゃん」ってなると思ったので、最初からインデントある世界でやろうってことで、Pythonで教えた。

インデントあるのが普通ってとこからスタートたから、無いと気持ち悪いらしい。

ぶっちゃけこれも「動けばいいじゃん」って話だと思う。

「○○をするために△△を調べよう」ってのは初心者が嫌がるポイント

「○○が動いたね」「じゃあ今日は△△の中身を見てみよう」みたいに問題を分ければ達成感あったみたい。

  • 一応動いてるけど改善余地がある点を伝えると機嫌が悪くなる。言い方には気をつけてるつもりだけど、怒られてるように感じちゃうみたい

これも上と同じで、「動いたね」「じゃあ今日は昨日作ったコードを整理して行数を半分にしてみよう」とか分けてやった。

その際、「コードキレイにしよう」とか「コード高速化しよう」じゃなくて、「ネストを最大3つまでにしてみよう」とか「実行速度を20%早くしよう」とか数値で表せる目標にした。

2020-09-27

anond:20200927170039

トラバリンクの張り方が下手くそ 無暗にネストさせんなや

セミラティス構造っていうのかな、こういうの。カオスすぎる

2020-09-26

if文のネストを浅くするために逆条件を書くの、本当に読みやすいの?

プログラミングしてて、ある条件のときだけ処理をしてそれ以外は初期値を返す様な関数を作るとき、俺はif文で関数の中身全体を括ってしまう。その方がどんな条件のときに処理をするのかが分かり易いから。

しかしこれがレビューで指摘を受ける。

これだったら処理をしない条件をifに書いてその中で初期値を返し、それ以外のところはネストを浅くした方が読みやすい、と言うのがレビュアーの主張だ。

まぁ俺はペーペーだしレビュアーの指摘なので、ド・モルガンの法則を使って処理をしない条件を書くのだけれど、使ってる言語PHPなこともあっていまいち!の効力を信じきれないし、処理をしない条件を書かれるより処理をする条件を書いた方が読みやすいと思うんだよな。

ネストが浅い方が読みやすいってのは、ループ文のネストだったらまだわかるんだけど(ループ文のネストは処理時間的にも避けた方がいいし)if文でそれを言われるの(3重くらいになってたら言われるのも仕方ないが)あまり納得がいかない。

しかもそのために処理をする条件の逆条件を書くの、スッゲー分かりにくくない?

2020-07-22

for文が理解できへんねん

なんというか構造はわかるけどいざ自分で使ってみようと思っても使われへんねん。

ネストになるともうわけわからんねん。

なんとかして@ーや。

2020-06-09

anond:20200609175458

この機能バリバリ使えてる人どのくらいいるんだろ

自動挿入される記号把握して1打減らすより

自分コントロールして1打打ったほうが楽だよね

ネスト迷子になったときかに提案してくれる機能はあってもいいけど

2020-06-06

anond:20200606073352

欧州でもスープシチューはあるし、イタリアも冬は寒いみたいだからあったかスープと合わせた料理があってもよさそうなのに。

ネストラはパスタを入れるスープらしいけど、日本でいうマカロニみたいなのでスパゲッティを入れるわけじゃないんだよね。

日本スープスパゲッティうどんとかラーメンほどスープがあるわけじゃないから、スパゲッティ自体スープと相性が悪いって事なのかな。

2020-05-30

anond:20200529142516

テトリスとかドラクエつくるプログラミング実況をYouTubeで流してる人が、そういう作り方するけど意外と読みやすい。

複数関数から呼ばれない関数は中括弧でスコープ切って変数名の衝突だけ避けてmain()の中に書いてあげれば関数名考えないでいいし、ジャンプする必要もないしむしろ効率的なんじゃないか

エディタの性能が上がってブロックを畳めるようになったのでそういう書き方もありなんじゃないかな。ディスプレイも横長だし、きようびコード印刷しないかネスト深くなるのも別に害がなくなってきてる。

短い関数をチマチマ作るよりmain()一本で完成させる方がむしろいかもしんない。

2020-05-21

anond:20200521134238

うちもそうだわ

ただHTML化して表示されれば変わらないし気にしないことにした

もともとmarkdown自体方言というか変換ツール依存独自記法かいっぱいだし


ネストするリストのスペースの数とか、表でmarkdownとしても見えるようにスペース入れるかとか、改行とか


最近markdown以外のちゃんと規格が決まって誰でも同じ書き方になる類似ツールのほうがいいと思ってる

rest興味あるけどどうなんだろ

2020-04-09

ねぇXちゃんさぁ。なんでこんな動的なオブジェクトをstaticにしてんの?

これさぁ、そこそこ重いけどさ、セッションごとに生成される一時的インスタンスで持ってるだけでも十分パフォーマンス的に問題ないよね?

なんでプロセス間でわざわざ共有してんの?

これってネットワーク接続管理してるオブジェクトだよね?

ネットワークリソースつったって利用者たかだか数百人でしょ?

その中でリソースを同時利用するってゆってもたかだか十数人でしょ?

プロセス内でこのオブジェクトを全共有することでリソースの削減なんてたかが知れてるよね?

それをわざわざプロセス内でこのオブジェクトを全共有ってマジ管理できるの?シンクロナイズドとか書いてっけどさぁ?削減できるリソースの量に比べて超危険すぎねぇ?

コミットログ見たけど、ぜんぜん性能問題とかと関係のない問題修正だったみたいだけど、なんでこんな危険コードになったわけ?

Xちゃんさ、そもそもコードが品雑なんだけど、これエンプラJava案件なのよ

なんでCの組み込みコードみたいにif文の鬼ネストとか、引数に空のList渡して破壊的に値を設定するような、読みづらいコード書いてるわけ?

Listくらい普通に返り値で返しなさいよ…

状態管理もif文の鬼ネストやめて専用クラスとかEnum使ってコマンドパターン対処しなさいよ

もしかして、Xちゃんオブジェクト指向にピンときていないのかな?

ちゃんはどっちかってーっとPHPパーなので、ゴリゴリオブジェクト指向はそりゃ専門じゃないよ

それでもさ、interfaceとか使って、各処理の実装を切り分けるとか、やりようはいくらでもあるじゃん

あと不要なnullチェックも多すぎです。コンストラクタ初期化保証されているfinalフィールド値がnullかどうかなんて確認しないでください

ユーザー入力DB入力環境リソースとか、外部の情報起源じゃない変数がnullとか、明らかなバグなんだから暗黙的なぬるぽクラッシュさせましょう

こんなバグが出荷に乗ることなんてありえません。わざわざ専用のエラー処理で専用の例外飛ばすとか無意味です。

いちいちなんか冗長で複雑なんですよねぇ。

ちゃんみたいな若造が、ベテランのXちゃんにこんなこといいたくないけどさ、

Xちゃんコード。どこか昭和匂いがするんだよねぇ。悪い意味で。

Xちゃん名誉のために言っておくと多分Cプログラミングうまいんじゃないかな?

そんなソース読んだこと無いから知らんけど

2020-03-16

インデントが一段までで済むようなプログラミング言語って無いの

日本語文章書く時だってせいぜい段落程度までなんだから

段落さらネストさせないで書けるプログラムのほうが良い気がするんやが。

pythonみたいにやたらインデントさせようとするの嫌い。

2020-03-12

恋愛はしたい人だけすればいい

僕は音ゲーマー、26歳。

あれは2年前のことだった。

キッカケはわからない。突然何もかもがわからなくなってしまったんだ。それまでは、自分人生を疑ったことなんてなかった。もちろん、24歳で「彼女いない歴=年齢」ということで、色んな人に色んなことを言われたものだ。でも気にしていなかった。僕には音ゲーがすべてだった。

音ゲー。みなさんは音ゲーを知っていますか?僕は知りません。。。

音ゲーって一口に言っても一杯ある。みんなの知ってる太鼓の達人jubeatDDR、一杯あるけど、僕は不器用なのでBeatmania IIDXしかプレイしたことがない。しかSPといって、両手をダイナミックに動かすカッコイイやつじゃなくて、7key+スクラッチという狭い空間を両手でやるプレイタイルしかやっていない。正直、音ゲーマーを名乗っていいのかわからない。

でも僕は音ゲーが大好きだった。どんなに嫌なことがあっても、音ゲーをしている間は没頭していた。DOLCEさんみたいになりたい。それなのに。。。

 

突然、「普通」にすごく憧れるようになった。いや、僕はいたって普通だ。特筆する特技もないし、秀でたものもない。成績も普通だった。IT系専門学校を出たけれどIT系就職したわけでもない。でも普通じゃない部分があった。人並みの人生経験が足りないということだ。

恋愛はもちろんのこと、旅行したことがない、海にも行ったことがない、海外にも行ったことがない。そのことを今までなんとも思っていなかったのに、突然ひどく気になってしまった。こういうの、クォーターライフクライシスとか言うらしい。今までの人生のすべてを疑ってしまった。なんだか取り返しのつかないことになってしまった気がした。焦るままに、マッチングアプリ登録した。

。。。そこで何があったのかは書かないでおこうと思う。とにかく、ひどい失敗をした。全部僕のせいだ。

 

それからしばらくは、何にも手がつかなかった。今までの人生、これでちょうどキリがいいかなとも思った。でも決めた!恋愛ダメでも、ちゃん自分なりに楽しく生きようと。何もかも「どうせやってもダメだ」と最初からあきらめるのではなく、やれるだけやってみよう!人生恋愛けがすべてじゃない!恋愛なしでどれだけリア充できるか挑戦だ!!!

 

それからは、本当に色んなことに手を出してみた。

まずボルダリングジムに行ってみた。スポーツからきしダメだったけど、ボルダリングマイペースにできそうなのが良いなと思ったのだ。小さい頃、木登りに憧れていたけど、身体が弱いので、友達が登っているのを黙って見ていた。でも本当は登りたかった。

ボルダリングはそれはそれは楽しかった。あれは、ただ突起を登るだけじゃない。ちゃんと「コース」が決められているんだ。一つ一つの課題には「使って良い突起」が決まっている。それを上手に使ってゴールする瞬間!!!!!その達成感!!!!!クリア快感。そこには、もう一つの音ゲー世界があった。

山登りも始めた。なにより、ボルダリング女友達ができて、一緒に山に行くようになった。恋仲というわけではなくても、たわいもない話をしたり、一緒にホットサンドを作ったりするのが楽しかった。

 

そして、IT系コンプレックスがあったので流行りのAtCoderを始めてみた。頑張るとGoogleに入れたりもするらしいと噂のやつだ。最初はとんでもない天才ばかりかと思ったけど、いや天才ばっかりなんだけど、意外と僕にも解ける問題も用意されていた。AtCoder登録簡単だし、初心者用のBeginner Selectionというのがあるし、沢山の人が解説記事を書いていて、とても始めやすかった。最初は何をやっても「WA」とかいのしか出なくて、ナニコ!?と思った。WAはWrong Answerの略、つまり間違ってるというこだ。けど、あれこれ試すと突然、緑色の「AC」という文字列が目に飛び込んだ!正解だ!

これはもう、なんというか、凄まじい快感だった。そしてその瞬間気がついた!!お前も音ゲーと一緒か!!!

 

これはいい専門学校時代、一応プログラミングを少しは学んでいたけど、特に作りたいものがなくて、プログラマはやっていけないと思った。でもAtCoderなら音ゲー感覚で楽しめそうだ。そう思ってから、いつの間にか沼にはまっていた。「恋愛なしでどこまでリア充できるか」ということで色々やっていたはずなのに、気がついたらAtCoderばっかりやるようになっていた。

最初の壁は厚かった。なかなか茶色になれなかった。でも、あるときふと気がついた。

for (int i = 0; i < n; i++) for (int j = 0; j < n; j++)

こういうfor文がネストするやつ、みんなは抵抗ないだろうか?僕はあった。こんなのが当たり前に出て来るのだ。意味がわからない。でも、ふと気がついた。これって、ゲームステージ5-3みたいなやつと一緒じゃないかと。外側のループは「レベル」で、内側のループは「ステージ」だ。各レベルステージを全部クリアしてはじめて、レベルインクリメントされるのだ。つよつよな人から見たら当たり前のことかもしれないけど、僕にとってこの気づきは決定的だった。なんか急にC問題が解けるようになってきた。だってAtCoder問題って、「なんか二つ決めるべきことがあって、両方バラバラに考えてると訳がわからないけど、一つを固定するとなんか解ける」みたいのがすごく多いの。

そして300点、400点が解けるようになってきた頃、AtCoderで有名な方が「東大数学問題は300〜400点くらい」なんて言うもんだから、「え?なになに!?僕ってもしかしたすごいの!?」と思えてきた。で、調子に乗って東大問題を見てみた。

。。。。。。。うん...なんもわかんないね。まあそんなもんか。。。

でも、そこには驚きの光景があった。解き方はわかんないけど、問題意味はわかるようになっていたのだ。僕は学生時代数学なんて宇宙語でしかなかった。でも今は、問題が何を聞いているのかはわかる!これってすごいことじゃない!?

(ちなみにその有名な方にはいつも本当にお世話になっていて感謝しています。)

 

びっくりしたので、それまで以上にAtCoderにのめり込んだ。そうしてとうとう緑色になった。Twitterでふと呟いたら、沢山の人が祝ってくれた。嬉しかった。最高の達成感だった。なんだか、ようやく自分の居場所を見つけたような気がした。人の生き方は人それぞれだ。人それぞれ、みんな自分のやりたいことがあって、それぞれの居場所があって、それぞれ一生懸命生きている。そんな当たり前のことにようやく気がついたのだ。

そのときLINEの通知が届いた。いつも一緒に山登りしている友達だ。よくわからないうちに「私と付き合って」と言われた。

びっくりした。でもなんとなく予感はあったのかもしれない。その場で「もちろん!僕も嬉しい!」と返事していた。それからは、僕ららしい生活特に派手な服を着ることもなく、派手なことをすることもなく、今まで通り山に登ったり、一緒にAtCoderを解いている。こういう等身大なあり方が心地良い。

こんな僕のこと好きと言ってくれてありがとう

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