タグ

プログラミングに関するnarukamiのブックマーク (57)

  • 祖母が就寝するとDBインサートができなくなる - Qiita

    世の中には、一見関係なさそうな物理現象がITシステムに不可思議な影響を及ぼすことがあります 例えば,500マイル以上離れた場所にメールが送れないという話だったり 中国人のAさんがお茶を入れると会社のネットが繋がらなくなる という話があります。 私の場合は、祖母が就寝するとDBインサートが失敗する、という状況でした 実家の見守りシステム 問題が起きているのは、離れた実家にいる一人暮らしの祖母の状態を見守るために作成した自作のシステムです。 気温や湿度、CO2濃度、明るさ、部屋のドアの開閉、冷蔵庫の開閉の状況をモニタリングできるようにしています。 Raspberry Piに各種センサが接続され、定期的にInfluxDBに送信し、Grafanaという可視化ツールでいつでも見られるようにしています。 これらの情報を見ることで、祖母の家の部屋の温度が適切か、活動しているか、部屋にいるかなどが分かりま

    祖母が就寝するとDBインサートができなくなる - Qiita
  • 「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita

    TL;DR Shift_JISにしただけでコンパイラが通らなくなる恐ろしい事件とその回避法について。 \ (¥)のASCIIコードは0x5c 表、能は良くない UTF-8は神 2023/12/06追記 誤りがあったので訂正します。こんな読まれると思ってなかったので正直ちょっとびっくりしていますが、いろいろコメントありがとうございました。(ツイート等全て拝見しました。) Shift_JISが悪いわけではない(デフォルトのエンコーディング設定の問題)→追記しました UTF-8にはUTF-FSSという仕様でこの問題が回避されている→マジでタメになる知識ありがとうございます OSによってデフォルトのエンコーディング設定が異なるせいで、デフォルト環境での動作がOSにより異なる→なるほど?(調査中) CRLFとLF問題では→なるほど?(調査中) そんな問題何を今更→UTF-8が出てから生まれたからです

    「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita
  • 文化祭で某チェーン店を再現して失敗した話 - Qiita

    要約 Wifiは無いに等しいと考えること。 (来場者1万強/日 なんていう状況下でWifiが動くと想定するのが駄目でした) 進捗管理する第三者を設けること。 ソースコード https://github.com/Na4Yu/EasyEats (RTDBのURLやSquareの個別キーは抜いているのでそのままは使えないです) はじめまして はじめまして、高校2年のNaYuです。 今回は文化祭で派手に失敗した話をさせて頂きます。 血反吐を垂れ流しながら書いていましたが、もし皆さんが文化祭を経て「この人のしたことをしなくて良かった~」なんて言っていただければ幸いです。(人の不幸は蜜の味) お願い 記事は知見の共有を目的として個人が執筆したものであり、記事の内容について学校、学校関係者への問い合わせはご遠慮頂けるようお願い申し上げます。 これを読んでいる後輩の方々へ この記事が私からの引き継ぎに

    文化祭で某チェーン店を再現して失敗した話 - Qiita
    narukami
    narukami 2023/08/12
    反省点はいろいろあるだろうけど高校生でこれ発案と実行するのがただただ偉すぎる……
  • PNGファイル爆発しろ!

    まえがき Web上で広く利用されるPNG(Portable Network Graphics)フォーマットは、デジタル画像を変化させずに小さいデータサイズへ変換する圧縮技術の一種です。PNGフォーマットはオリジナル画像を完全復元可能な可逆(lossless)圧縮ですから、JPEGフォーマットのように画像を歪めてしまう非可逆(lossy)圧縮ほどは小さくできません。それでもオリジナルのデジタル画像データの半分程度まではサイズ削減可能な画像圧縮アルゴリズムと言われています。[1] そげぶ いいぜ てめえが何でも思い通りに圧縮出来るってなら まずはそのふざけた幻想をぶち壊す!! (スペース都合によりAA省略) 記事では、PNGフォーマットを画像データ圧縮(compress)用途で利用するのではなく、オリジナル画像データよりも遥かに巨大なPNGファイル を生成します。 PNGフォーマットでは任意

    PNGファイル爆発しろ!
    narukami
    narukami 2023/04/21
    膨張させることで爆発させる……ってコト!?
  • 【AtCoder】中卒の主婦が青コーダーになったおはなし【競技プログラミング】 - Qiita

    はじめまして。mayocornです。 先日のABC281で青コーダーになりました! 経歴 20代の主婦。旦那は競プロやってないです。 中学卒業→高校入学→高校中退→バイトを転々とする(ITに関してはSESで半年ほど働いた経験あり)→今の住所に引越してきてからは無職 趣味ゲームで、最近やっているタイトルはファイアーエムブレムエンゲージ、Splatoon3です。音ゲーやカードゲームに熱中してた時期もありました。CHUNITHMは旧レートでベスト枠15.3くらい。でものめりこむほどお金がかかるのでやめました。競技プログラミングは何問解いても無料なので続けられてます。 学力に関して話すと、高校数学は確率、論理と集合がちょっとわかるくらいで三角関数、微分積分、行列あたりは全然分かりません。青パフォーマンスをとるのにこのへんの知識が必要になったことはなかった気がします。(私が参加した回の中では) 競

    【AtCoder】中卒の主婦が青コーダーになったおはなし【競技プログラミング】 - Qiita
  • 「バグを意図的にバグのまま残す」という選択肢がある

    はじめに gcc v12.1において、C++の正規表現ライブラリstd::regexに、正規表現のバリデーションを改善するパッチ(以下"改善パッチ"と表記)が取り込まれました。改善パッチによって、これまではバリデーションにひっかからなかった不正な正規表現文字列が"正しく"不正なものと認識されて例外が発生するようになりました。 これだけ聞けばいいことだけのように思えるかもしれませんが、実はそうでもなかったりします。経験豊富なかたであれば見た瞬間ゾッとしたかもしれません。記事では、この一見問題なさそうな改善パッチによって発生しうる問題、および、その具体的例について紹介するとともに、この手のパッチを当てるかどうかは難しい判断になるという知見を共有します。 結論 改善パッチによって発生する問題 発生条件 gcc v12.1以降、あるいは改善パッチをバックポートされた任意のバージョンを使ってC++

    「バグを意図的にバグのまま残す」という選択肢がある
  • SofTalkをご利用の皆様へのお知らせ - SofTalk

    日頃よりご愛顧いただき誠にありがとうございます。 SofTalkは、長年AquesTalkに対応してまいりましたが、勝手ながら AquesTalkへの対応を中止させていただくこととしました。 SofTalkのようにAquesTalkを同梱している場合、利用者がAquesTalkの機能を使わずに、 OpenJTalkを商用利用する場合でも、AquesTalkのライセンス料を支払わなければなりません。 AQUEST社たってのお願いで7年ほど前に新ライセンスに移行しましたが、旧ライセンスに比べて 冷遇されている状況を思うと、趣味であるはずのプログラミングを苦痛に感じるようになりました。 AQUEST社とは一度話し合いの場が設けられることになりましたが、「ごあいさつ程度の意味合いで」 「事のできるオープンなお店で」と言われたときに建設的な意見交換が望めないように感じ、 お会いしたくありませんと言

    narukami
    narukami 2022/07/25
    作者さんが話し合い用に提案した店を会社側がおしゃれでないと却下したってことなら遊び半分にもほどがあるしそりゃ冷めるでしょう
  • 【HTML5】マリオのコインの音をブラウザで出そう【ファミコン】 - Qiita

    で、上記の通り「矩形波、三角波」って見たらアラフォー以上の人は「ファミコンじゃん」ってなったり、むしろ、コナミ矩形波倶楽部を思い出す方も多いかもしれません。 技術的なこと まぁ、ソースを見て貰えば特に難しいことはしていない(いつものように殴り書きだし…)のでコインであれば「♪シミー」という音を鳴らせばできるわけです。 const AudioContext = window.AudioContext || window.webkitAudioContext const audioContext = new AudioContext() const gainNode = audioContext.createGain() gainNode.connect(audioContext.destination) gainNode.gain.value = 0.1 const oscillator =

    【HTML5】マリオのコインの音をブラウザで出そう【ファミコン】 - Qiita
  • 競技プログラミング、ソフトウェア・エンジニア、コミュニティ

    なんか言及もされたのでアンサー的に書いてみたけど、アンサーには大してなってないな? ってやつです。一部で言及された、競技プログラミング (競プロ) 関係の話。 その前に、「プログラミングの競技」っていろいろあります。 短時間で問題に解答していく型 (ICPC / 情報オリンピック / AtCoder Regular / TopCoder とか)最適解が容易に求まらない問題のスコアを競う型 (SuperCon / AtCoder Heuristic / ISUCON / ゴルフ / ICFP Programming Contest の一部とか)対戦型 (ICFP Programming Contest の一部とか、最近のはあんまり知らないですが RoboCode / Imagine Cup とか)謎解き型 (ICFP Programming Contest で何回かありましたね。 UMIX

  • ちょくだいさん、ごめんなさい - 白のカピバラの逆極限 S.144-3

    ちょくだいさん、ごめんなさい。(ちょくだいさんが中高の後輩で、中学校一年生や中学校二年生の頃の印象からアップデートされていないことも行き違いの原因かと思いますので、この書き方にいたします。) nuc.hatenadiary.org このあいだ書いた上の文章に対して、なぜか、ちょくだいさんに反論されています。 chokudai.hatenablog.com しかし、ちょくだいさんには、かなり感謝と配慮をした文章を書いたつもりでした。 まず、前の方には、ちょくだいさんのおかげで、りりあんさんは模擬面接を受けることになったよ、ちょくだいさんがいなければ知り合うことすらなかったよ、ということが書いてあって、後ろの方には AtCoder のこのあたりの過去問(4問時代のABCのC問題)を解くといい勉強になるよ、とまで書いてあるわけじゃないですか。宣伝までしたくらいの気持ちでしたよ。 というわけで、ち

    ちょくだいさん、ごめんなさい - 白のカピバラの逆極限 S.144-3
    narukami
    narukami 2021/04/03
    このひとの文章むしろ好きだけどごめんなさいと題してこの内容だと怒られは発生するかなとは思った ブログでやるよりお茶をした方が良かったのでは
  • 競技プログラミングの在り方 ~「競技プログラミングを我々が終わらせる」を受けて~ - chokudaiのブログ

    nuc.hatenadiary.org 競技プログラミングについての言及があったのですが、バズってる+競技プログラミングについて、納得がいかない記述がかなり多く見受けられたので、反論記事を書きました。 自己紹介 競技プログラミングの日最大企業「AtCoder」の社長を9年間続けています。競技プログラマとして、2010年から毎年1つは世界大会で入賞しています。 完全に競技プログラミング支持側の意見なので、ポジショントークを出来るだけ排除しようと心がけているものの、完全に排除することは多分出来ていないため、多数の意見と比較してもらえると幸いです。 競技プログラミングGoogle まずは肯定的な所から。 Googleに入るためには、競技プログラミングではなく、Googleに入るための勉強をするべき、という点に関しては、間違いなく正しいです。特にAtCoder競技プログラミングは、常日頃から

    競技プログラミングの在り方 ~「競技プログラミングを我々が終わらせる」を受けて~ - chokudaiのブログ
  • COCOA騒動メモ

    COCOA が動いていなかったことで大臣が謝罪してひと騒動起きている件について、開発者視点からのメモを残してみます。 なぜこのメモを書いたのか 世間的には不正確な情報で叩ければOKの風潮が強くてしんどいので、正しいと思われる情報を拾い集めたものです。中抜きwww 王子wwwww Xamarin wwwwwwww みたいな人にはあんまり興味ないかと思います。 調べ始めたきっかけはこのツイートと引用されたblog記事ですが、記事の内容が違うことはすぐに指摘されて撤回されていたのですが、実際どうだったのかさらに調べてみました。 接触通知アプリ COCOA とはなんなのか 仕組みとか何かは公式サイトでもみてもらうとして。この件で煽っている人でも一部理解できていない人がいるようなのですが、直接的な効果としては 保健所が濃厚接触者追跡をする際の手助けとなるためのアプリ ということになります。アプリをイ

    COCOA騒動メモ
  • アーケードゲームを支えるデバッグ術 - SEGA TECH Blog

    ブログ読者のみなさん、はじめまして。 株式会社セガのベテランプログラマー阿部です。 このエントリーではデバッグ手法のあれこれについての体験談と、デバッグをテーマに一昨年に実施されたプログラマー向け新人研修の概要をお伝えしたいと思います。 EXE ファイルのデバッグ イーサネット絡みのデバッグ 周辺機器絡みのデバッグ デバッグスキルブートキャンプ 黒子に徹する、裏方系エンジニア EXE ファイルのデバッグ 同僚が作った EXE ファイルが手元にあり、あなたはこれを Windows で起動しようとしています。 起動してみたところ何も反応がなく、しかもそれは想定外のことでした。 「何コレ、動かないんだけど」とあなたが同僚に文句を伝えると、同僚はあなたに返します。 「こっちでは動いてるよ」 困りましたね。 あなたの手元には EXE のソースコードも無ければ、Visual Studio もありません

    アーケードゲームを支えるデバッグ術 - SEGA TECH Blog
  • ExcelでVBAを使わないでドラクエ3を再現する | パパセンセイ365

    English 久しぶりにExcelゲームを再現してみました。 ツイッターでどんなゲームを作るのが良いか募集したところ、なんと1位がドラクエ。 初めて質問箱を使ってみます。なかなか決められなくて‥‥。 VBAを使わないExcelゲーム、どれを作るのが良さそうですか? — パパセンセイ@Excelを眺める人 (@10mikiya) September 21, 2020 正直どう作って良いか見当もつかないまま見切り発車で進めましたが、なんとか形になったので公開の流れになりました。最適化されてないロジックもありますので温かい目で見守っていただけますと幸いです。 一応、再度伝えておきますがVBAは一切使っていません。 [ad01] どんなものが出来たか 実際にどんなものになったか、見ていただいた方が早いのでまずは結果をご覧ください。(※音声はありません) あのイルカ 最後まで見た方が面白いですよ

    narukami
    narukami 2020/11/04
    散布図からして知らない機能だ……ってなった
  • ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習

    最近、あまりプログラミングが得意でない人のサポートをする形で、長い時間にわたってペアプログラミングを行っている。そのなかで、気がついた悪い習慣と成長するための良い習慣というものをまとめてみる。 この記事のバックグラウンドとなる体系的知識がになりました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング あわせて読みたい 経営者マインドが足りない!vs. 現場に任せてくれない!の対立をなくすカードゲームをつくった話 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 心理的安全性ガイドライン(あるいは権威勾配に関する一

    ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習
  • 「この位置にprintfが無いとなぜか動かないんだ。」 - Qiita

    はじめに 先日ツイッターで見かけた呟き pic.twitter.com/33Yk02hu1U — TOMO (@tomozh) October 14, 2020 そういうこともあるのか的な反応もあるようなので具体例を挙げてみることにする。 例1 所謂FizzBuzz問題。 #include <stdio.h> void fizzbuzz(int n) { int next; int i = 1; do { printf(i % 15 ? i % 5 ? i % 3 ? "%d\n" : "Fizz\n" : "Buzz\n" : "FizzBuzz\n", i); if (i++ >= n) next = 0; } while (next); } int main(void) { printf((char[]){""}); // この位置にprintfが無いとなぜか動かない fizzbuz

    「この位置にprintfが無いとなぜか動かないんだ。」 - Qiita
  • 【公式】ぷよぷよeスポーツ×プログラミング

    ぷよぷよプログラミングとは プログラミング学習環境『Monaca Education』において、セガが展開するアクションパズルゲーム『ぷよぷよ』をプログラミング学習できる教材です。 製品版と同じ画像素材を利用して、世界中で使われるコンピュータ言語を使い、プロが使う開発環境で物のプログラミングをお楽しみください。 コンテンツは無料でご利用いただけます。

    【公式】ぷよぷよeスポーツ×プログラミング
  • テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話

    「悪い方が良い」原則をご存じだろうか? プログラミング言語「Common Lisp」の開発に携わったことでも知られるソフトウエア技術者リチャード・ガブリエル(Richard Gabriel)氏が1990年に発表した有名なエッセイ「The Rise of ``Worse is Better''」で主張したソフトウエア開発の考え方だ。 このエッセイでガブリエル氏は、美しく完全に設計・実装されるより、単純で雑に設計・実装されたソフトウエアの方が良いと説く。彼は前者を「正しいやり方」「MIT/スタンフォード式」、後者を「悪い方がよい原則」「ニュージャージー式」と呼び、ニュージャージー式がいかに優れているか様々な事例を挙げて説明する。 これは一見とても奇妙に聞こえる。 ソフトウエア開発では通常「美しい設計」や「美しいコード」が尊まれる。「車輪の再発明はするな」とか、「階層構造に分けて、要素をいつでも

    テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話
  • 高校中退プログラマが自分で作った高校を卒業するまで

    Wed, Dec 26, 2018 One-minute readこれはN高等学校 Advent Calendar 2018 12/25の記事です。遅くなってごめんよ。 おまえだれよ株式会社ドワンゴでソフトウェアエンジニアをしながら、N高等学校で高校生をやっています。いま3年生で、順調に行くと来年3月には卒業できそうです。 N高が開校した2016年に1年生として入学し、なんと学籍番号1番をいただきました。最初の1年生が卒業するということは、学校としてちょうど一回り。自分の卒業以上に感慨深いものがあります。 高校中退プログラマが自分で作った高校を卒業するまでさて、ちょっと大きなタイトルをつけちゃったので、順番にお話していこうと思います。 高校中退28年前、2年生の冬に高校を中退しています。そのいきさつは以前記事にしたので読んでいただければと思います。 その記事にも書きましたが、合わない高校に

    narukami
    narukami 2018/12/26
    これはすばらしい
  • ㇹ゚ン゚'ㇳ̃ヴ゙ニ゙コ゚ヮヰ文̂字̠コ゚−ト゚ノ゙ㇵナ゚ㇱ(現在に至るまでの文字コードの軌跡と簡単な使い方について) - へっぽこびんぼう野郎のnewbie日記

    はじめに 社内の勉強会で発表した文字コードの話の焼き直しです。ところどころ適当なので話半分に読んでもらえると助かります。 これ以上闇の深さを知りたくないと思って、深淵に辿り着く前に文字コードの勉強を打ち切っています。文字コードの専門家でもないので雑です。 調査が甘いので間違ってることも多々あるかもしれません。その場合はコメントください。修正します。 自信のないところは「らしい」とか「ようです」などのように伝聞調で書いています。あらかじめご了承ください。 また、前提知識として2進数と16進数の基礎的な知識を要求しています。 16進数の表現には特に断りがないかぎり 0xFFFF のような表現を使います。 2進数を使う場合には必ず断り書きを入れます。それ以外は10進数です。 筋には関係のない、重要ではない情報は脚注にあります。気になったところだけご覧ください。 アジェンダ 今回の話に関係ある用

    ㇹ゚ン゚'ㇳ̃ヴ゙ニ゙コ゚ヮヰ文̂字̠コ゚−ト゚ノ゙ㇵナ゚ㇱ(現在に至るまでの文字コードの軌跡と簡単な使い方について) - へっぽこびんぼう野郎のnewbie日記