並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 520件

新着順 人気順

Zennの検索結果1 - 40 件 / 520件

Zennに関するエントリは520件あります。 プログラミング開発エンジニア などが関連タグです。 人気エントリには 『ITエンジニア採用入門』などがあります。
  • ITエンジニア採用入門

    今、IT関連の技術は様々な企業の競争力の源泉です。一方で、実際に企業が必要とするよりもITエンジニアの数は少ないため、採用競争は激化するばかりです。そこで、元ウェブエンジニアでITエンジニアの採用担当を経験した私の視点で、ITエンジニア採用に関する情報をまとめることにしました。 なお、ここでいうITエンジニアはアプリケーションエンジニア、インフラエンジニア、機械学習エンジニア、QAエンジニアなどIT関連エンジニア全般を指します。 # 更新情報 * 2022/05/17 - 公開 * 2022/05/17 - 中途採用前提であることを Chapter 1 に追記 * 2022/05/18 - 誤字の修正 Chapter 15 「行進」 -> 「更新」 ※はてなブックマークでの指摘ありがとうございます * 2022/05/19 - 活用事例の Chapter を追加 * 2022/05/20

      ITエンジニア採用入門
    • 見積・提案書に書いておくと不幸を減らせる前提条件

      はじめに ちょっとつぶやいたら思いのほか需要がありそうだったので、簡単にまとめておきます。 おことわり これを書いておけば、すべての不幸を避けられるというものではありません 提出先との関係性次第では、書かないほうがいいこともあるかも 私自身が普段提案している内容が、すべて記載されているわけでもありません(うろ覚えで書いてたり、大人の事情) これを流用しておこったすべての事項について、何らかの責任をとることはできません 本稿では請負による開発を想定しています でも共有することで、この業界の不幸が減ればいいなということでつらつら書いてみます。 他にもあるようなら、Twitterなりコメントなりで提案してもらえると嬉しいです。 前提条件を書く目的 見積・提案書通りに、実施するために必要な条件を明確にする 条件を逸脱したときに、どうなるのかハッキリさせる 上記は概ねつぎのとおり 実現が不可能になる

        見積・提案書に書いておくと不幸を減らせる前提条件
      • クリエイティブコーディングの教科書

        ゲームエンジンや3Dソフトウェアを利用して高度な表現ができるこの時代でも、プリミティブな描画や動き、アルゴリズムから学べることは多い。それらをJavaScriptで書くクリエイティブコーディングという形で学べる手引書が本書となる。

          クリエイティブコーディングの教科書
        • 実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本

          ------------------------------------------------------ 2024 年 1 月更新 本書がきっかけで「なんとか Docker を使えるようになりたい」というプログラマの方向けの入門書を秀和システム様から出版させていただけることになりました 開発系エンジニアのためのDocker絵とき入門 https://www.amazon.co.jp/dp/4798071501 紙書籍と電子書籍、どちらもございます この書籍と執筆経験は、みなさまからの驚くほどの高評価があればこそ得られた機会でした いつも本当にありがとうございます 書籍化に際しまして、この場で次のとおり説明させていただきます 1️⃣ 本書 ( Zenn ) は有料化しません 2️⃣ 本書 ( Zenn ) は今後更新しません 3️⃣ 本書 ( Zenn ) と出版される絵とき入門の違い

            実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本
          • 私がよく参考にしているサイトまとめ

            はじめに Twitter、Qiita、Zenn...といろんなところから情報収集するのはいいのですが、それぞれの有益な情報をそれぞれのサイトにお気に入りとして保存しているので、必要な情報を探すだけで一苦労です。 ここで一覧にしてまとめておくことにしました。 ただし、特定の言語に依存するような記事はあえて排除しています。 皆さんにとっても有益な情報があると、この記事を公開して良かったなと思います。 また、皆さんのオススメの記事がありましたら、コメントなどで教えてください。 コミュニケーション 質問 質問は恥ではないし役に立つ https://qiita.com/seki_uk/items/4001423b3cd3db0dada7 新卒からの質問をソシャゲっぽい仕組みにしたら捗った話 https://qiita.com/ysktsuna/items/fced3a9515c8f585ca50 会

              私がよく参考にしているサイトまとめ
            • 【ChatGPT】個人的お気に入りプロンプトまとめ

              あなたは、プロの【その分野の専門家】です。 以下の制約条件と入力文をもとに、【出力内容】を出力してください。 # 制約条件: 【前提条件や決まりごと】 # 入力文: 【期待する出力結果や大まかな指示】 あなたは、プロのエンジニアです。 以下の制約条件と入力文をもとに、ブログ記事の内容を出力してください。 # 制約条件: ・重要なキーワードを取り残さない。 ・文字数は30000文字程度 # 入力文: Swaggerについて技術ブログに投稿する文章を書いてください。 構成は、Swaggerとは?、Swaggerのユースケース、Swaggerのメリットとデメリット、Swaggerの書き方(YAMLファイル)、Swaggerの実行方法、まとめです。 構成間で重複した説明は省くようにしてください。 読者がブログを読みながらSwaggerを触れるようにハンズオン形式などを取り入れて文章を作ってください

                【ChatGPT】個人的お気に入りプロンプトまとめ
              • 君には今から3時間で機械学習Webアプリを作ってもらうよ

                新人: 「本日データサイエンス部に配属になりました森本です!」 先輩: 「お、君が新人の森本さんか。僕が上司の馬庄だ。よろしく!」 新人: 「よろしくお願いします!」 先輩: 「さっそくだけど、練習として簡単なアプリを作ってみようか」 先輩: 「森本くんは Python なら書けるかな?」 新人: 「はい!大学の研究で Python 書いてました!PyTorch でモデル作成もできます!」 先輩: 「ほう、流石だね」 新人: 😊 先輩: 「じゃ、君には今から 3 時間で機械学習 Web アプリを作ってもらうよ」 先輩: 「題材はそうだなぁ、写真に写ってる顔を絵文字で隠すアプリにしよう」 先輩: 「あ、デプロイは不要。ローカルで動けばいいからね。顔認識と画像処理でいけるよね?」 新人: 😐 新人: (えぇぇぇぇぇぇぇ。3 時間?厳しすぎる...) 新人: (まずモデルどうしよう。てかもら

                  君には今から3時間で機械学習Webアプリを作ってもらうよ
                • データベースを遅くするための8つの方法

                  はじめに Twitterのタイムラインを見ていたらバッチ系のプログラムで逐次コミットをやめて一括コミットにしたら爆速になったというのを見ました。当たり前でしょ、と思ったけど確かに知らなければ分からないよね、と思って主に初心者向けにRDBを扱うときの注意点をまとめてみました。 プログラミングテクニック的なところからテーブル設計くらいの範疇でDBチューニングとかは入ってないです。 自分の経験的にOracleをベースに書いていますが、他のRDBでも特に変わらないレベルの粒度だと思います。 大量の逐次コミットをする バッチアプリケーションでDBにデータをインサートすると言うのはかなり一般的な処理です。しかしデータ量が少ない時はともかく大量のインサートを逐次コミットで処理するとめちゃくちゃ遅くなります。数倍から十数倍遅くなることもあるので、10分程度のバッチが1時間越えに化けることもザラにあるので原

                    データベースを遅くするための8つの方法
                  • 中小企業でApple製品を利用する前にやっておくこと

                    はじめに 企業でApple製品を利用したいというニーズは昨今とても多くなってきていると思います。 しかもApple製品は買えばすぐに使えてしまうというメリットでもあり、企業としては情報統制という意味でデメリットとなります。 またゆるく使い始めてしまうと、後々企業できちんと管理する場合にとても面倒な事になります。 この記事では、今後Apple製品を利用しようとしている中小企業の情シス担当者向けに、事前準備として実施しておいた方がよいことをまとめます。 こんな企業にお勧め スタートアップ これからApple製品を使い始める予定があるけど、よくわかってない 実はもう使っちゃってるけど、心配。。。 やっておく事リスト appleの営業担当と繋がる AppleStoreForBusinessの設定 ABM(AppleBusinessManager)の設定 Appleの営業担当と繋がる 何をするにもま

                      中小企業でApple製品を利用する前にやっておくこと
                    • ブラウザレンダリングの仕組み

                      フロントエンド用語を100秒で解説するチャンネルを作りました! よかったらチェックしてみてください! はじめに 以前書いた記事「Webページがブラウザに表示されるまでに何が起こるのか?」で ブラウザレンダリングについて詳細に知りたいという意見をいただいたので、調べてまとめてみました。 全体図 レンダリングの大まかな流れです。 HTMLのダウンロード サーバから送られてきたHTMLをダウンロードします。 HTMLの解析 サーバから送られてきたHTMLファイルは、「0」と「1」でできたデータになっています。 ブラウザは、サーバから受け取ったデータをそのままHTMLとして解釈することはできないので、自分で扱うことができる形、つまりDOMに変換する必要があります。この作業を 解析 ( Parse ) と言います。 HTMLをダウンロードしたら、すぐにこの解析作業に入ります。作業は以下のようなステッ

                        ブラウザレンダリングの仕組み
                      • 「有能なバカ」ChatGPTを使って1週間でiOSアプリを公開する方法

                        初めまして、にわとろです。 さて今回は、ChatGPTを使ってiOSアプリをイチから作ってみました。ChatGPTの記事なんてもうオーバーフローするほどあるのですが、今のところiOSアプリを最後まで作り通した記事はありません。 理由は簡単で、ChatGPTは「バカ」なのでiOSアプリなんて複雑なモノを完成させられないからです。 しかしバカも使いようです。上手く使いこなしてやれば、アプリだって作ることができます。ChatGPTはバカですが、有能なバカです。でもあなたがヤツをわかっていなければ、やっぱり無能のままです。だから、この記事を読んで理解してあげないといけません。 それじゃあ、ChatGPTと仲良くなりにいきましょう。 ChatGPTを使う極意 早速ChatGPTを使う極意を教えます。全部読み通せなくても、これだけは覚えてください。 いい上司になれ。 何を言っているかというと、Chat

                          「有能なバカ」ChatGPTを使って1週間でiOSアプリを公開する方法
                        • 「怠惰・短気・高慢」であれ、ChatGPTを使って業務効率化しよう(要件定義編)

                          例として読書記録アプリをつくります! 筆者が欲しいサービスを作ろうと思い、今回は「読書記録アプリ」をつくります。 最低限の要件は、次のように設定しました。 デモアプリの要件(読み飛ばしてOK) 読書記録アプリを作る目的 読書が苦手なエンジニアが読書記録をし、記録を共有することで、継続して技術本を読めるようになること ターゲット 新人、中堅のWebエンジニア おおまかな要件 ユーザーは新規登録することで、読書記録アプリにログインできる ユーザーは読む本を登録できる ユーザーは本を何ページ読み終えたかを記録できる ユーザーは本を読み終わったら次の本を登録できる ユーザーは他の人がどの本を読んでいるのか、また何ページ読み終えたかを閲覧できる 質問する前に... また、ChatGPTに業務で使用するコードを渡す場合、環境キーやサービスを特定できる情報を送信しないでください。入力内容が他の人に渡って

                            「怠惰・短気・高慢」であれ、ChatGPTを使って業務効率化しよう(要件定義編)
                          • 【入門】要件定義

                            はじめに 最近プロジェクトマネジメント関連の仕事をする機会が増え、(駆け出しですが)要件定義や設計関連の業務もするようになったので、私の経験を基に要件定義の具体的なプロセスや考え方について、まとめていきます。 この記事の対象者 要件定義の基本や思考プロセスを学びたい人 エンジニアからプロジェクトマネジメントをやりたい人 ビジネスサイドとエンジニアサイドのコミニュケーション能力を向上させたい人 具体的な事例を通して要件定義を学びたい人 前提 紹介する内容はあくまで一例であり、プロジェクトやチームの状況に応じて調整が必要 あくまで自分(駆け出しPM)の経験に基づいた内容を言語化しています プロジェクト規模は10名〜20名のWebアプリ開発を想定しています システム開発の全体像 一般的なシステム開発のプロジェクトは下記のフェーズで進んでいきます。 ※ コンサルの領域だと要件定義の前に企画構想とい

                              【入門】要件定義
                            • Docker一強の終焉にあたり、押さえるべきContainer事情

                              章立て はじめに Docker・Container型仮想化とは Docker一強時代終焉の兆し Container技術関連史 様々なContainer Runtime おわりに 1. はじめに Containerを使うならDocker、という常識が崩れつつある。軽量な仮想環境であるContainerは、開発からリリース後もすでに欠かせないツールであるため、エンジニアは避けて通れない。Container実行ツール(Container Runtime)として挙げられるのがほぼDocker一択であり、それで十分と思われていたのだが、Dockerの脆弱性や消費リソースなどの問題、Kubernetes(K8s)の登場による影響、containerdやcri-o等の他のContainer Runtimeの登場により状況が劇的に変化している。本記事では、これからContainerを利用したい人や再度情報

                                Docker一強の終焉にあたり、押さえるべきContainer事情
                              • 認証と認可の超サマリ OAuth とか OpenID Connect とか SAML とかをまとめてざっと把握する本

                                認証と認可についての知識が必要になったので、基礎的なことを学んでいます。 一切何も知らない状態から手当たり次第に細かく調べるのは大変だったので、超サマリを整理してみようと思います。 この本は「個々の要素に詳しくなる必要はないんだけど、概要くらいはさっと把握しておきたい」とか「手当たり次第に詳細調査をする前に、一瞥してこれから踏み込もうとしている領域の超俯瞰マップを作る」という感じで使うことを想定しています。 同じ様な方の役に立ったら、とても嬉しいです。 この本は筆者の理解に連動して追記修正される可能性があります。

                                  認証と認可の超サマリ OAuth とか OpenID Connect とか SAML とかをまとめてざっと把握する本
                                • Reactベストプラクティスの宝庫!「bulletproof-react」が勉強になりすぎる件

                                  Reactアプリケーションのアーキテクチャの一例として公開されているGitHubリポジトリ「bulletproof-react」が大変勉強になるので、私自身の見解を交えつつシェアします。 ※2022年11月追記 記事リリースから1年ほど経過して、新しく出てきた情報や考え方を盛り込んだ続編記事を書いていただいているので、こちらも併せて読んでいただければと想います(@t_keshiさんありがとうございます!)。 ディレクトリ構造が勉強になる まずはプロジェクトごとにバラつきがちなディレクトリ構造について。 ソースコードはsrc以下に入れる bulletproof-reactでは、Reactに関するソースコードはsrcディレクトリ以下に格納されています。逆に言えば、ルートディレクトリにcomponentsやutilsといったディレクトリはありません。 たとえばCreate Next Appで作成

                                    Reactベストプラクティスの宝庫!「bulletproof-react」が勉強になりすぎる件
                                  • Mac を買ったら必ずやっておきたい初期設定を、全て自動化してみた

                                    成果物 https://github.com/ulwlu/dotfiles/blob/master/system/macos.sh このスクリプトに全ての設定と、設定可能なオプションをコメントで記載しています。誰でもこのスクリプトのコメントを外したり任意の値を入れる事で使用可能です。 世界中のいくつかのdotfilesにはmacos.shが存在し、ある程度のMacOSの設定自動化を実現しています。しかし何百と見た中で、全設定と設定可能なオプションを全て網羅して記載しているのは恐らく初です。 これらの設定は破壊的なものではなく、いつかアプデによりキーが有効でなくなっても壊れる事はありません。壊れるのは~/ApplicationSupport/Dockディレクトリ配下のファイルを移動したり、sqlite群に無効な値をいれた時のみです(後述)。 この記事は何か dotfiles Advent C

                                      Mac を買ったら必ずやっておきたい初期設定を、全て自動化してみた
                                    • Gmailの新スパム規制対応全部書く

                                      [2024年1月10日、19日追記] GmailとYahoo!側のアップデートに合わせていくつか細かい説明を追加しています(大筋は変わっていません)。変更点だけ知りたい方は「追記」でページ内検索してください。 2023年10月3日、Googleはスパム対策強化のため、Gmailへ送るメールが満たすべき条件を2024年2月から厳しくすると発表しました。また米国Yahoo!も、2024年2月 第一四半期[1] から同様の対策を行うと発表しています。端的に言えば、この条件を満たさないと宛先にメールが届かなくなるという影響の大きな変更です。 この記事では、Gmailや米国Yahoo!の規制強化への対応方法を解説します。ただし米国Yahoo!にメールを送る人は多くないと思うので、フォーカスはGmail寄りです。また、メール配信サービス(海外だとSendGridやAmazon SES、国産だとblas

                                        Gmailの新スパム規制対応全部書く
                                      • 未経験者がプログラミングを学びたいと思った時に最初に読む記事

                                        ここ数年プログラミングを学びたい人が増えている。そうした需要に応じて有象無象のプログラミングスクールや不適当な内容の学習サイトも増えている。中には粗悪なスクールやオンラインサロンも沢山ある。しかし未経験者にはどれがいいスクールなのか悪いスクールなのか等の審美眼はない。 この記事では未経験者がそういった情報弱者を食い物にする偽物に騙されないように滑らかに学習を進めていくための道筋について書く。 この記事の対象読者は下記。 教養としてプログラミングを学びたい未経験者 とにかくWebサービスやアプリを作りたくてプログラミングを学びたい未経験者 プログラマとして職を得たい未経験者 以下、まずは全ての対象読者向けの下準備について書き、その後それぞれの対象読者向けに道筋を書く。 目次 準備 教養としてプログラミングを学びたい人の場合 とにかくwebサービスやアプリを作りたくてプログラミングを学びたい人

                                          未経験者がプログラミングを学びたいと思った時に最初に読む記事
                                        • COCOA騒動メモ

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

                                            COCOA騒動メモ
                                          • プログラムがメモリをどう使うかを理解する(1)

                                            この記事の狙い この記事は、端的に言えば この図が言わんとしていることを理解できるようになるための解説を目指しています。 昨今のプログラミング環境において、メモリの管理方法やその実態は、詳細を知らずとも目的を達成できるようになっています。といっても、実際にはメモリは無尽蔵に使えません。制約が厳しい環境下で動かさねばならないプログラムもありますし、多少潤沢に使える環境であっても、無駄に浪費するよりは、必要最低限のメモリで効率よく動作するプログラムの方が、多くの場面においては良いプログラムと言えるでしょう。 メモリのことなど知らなくてもプログラムを書けるのは一つの理想ではありますが、現実的にはその裏に隠されている(抽象化されている)仕組みを知っておいたほうが有利です。また、昨今のレトロゲームにおけるタイムアタックで駆使されるメモリ書き換えのテクニックなども、何故そういったことが可能なのかを知る

                                              プログラムがメモリをどう使うかを理解する(1)
                                            • chatGPTにアドバイスをもらったらデータサイエンスを知って1週間の友人がコンペで上位6.5%に入った話

                                              先日、データ解析のセミナーを開催しました。 未経験の方でも、2時間で予測モデルを作成することができるハンズオンセミナーでした。 好評だったので、その内容をYouTubeにまとめたのでご興味ある方はご覧ください。 このハンズオンセミナーで予測モデルの作り方を知った友人がchatGPTにアドバイスをもらって、データサイエンスのコンペティションサイトに応募したところ、上位6.5%に入ることができたという報告を受け、驚愕しました。 chatGPTを上手く使えば素人がプロに勝つことも十分できるのだなと実感しました。 友人が参加したデータサイエンスのコンペは、SIGNATEの糖尿病予測問題でした。 以下のような進め方をしたとのことでした。 まず、問題の概要を説明して、どのように進めていけば良いかを確認したそうです。 そうすると、chatGPTからデータサイエンスの問題を解くための手順を一覧化してくれて

                                                chatGPTにアドバイスをもらったらデータサイエンスを知って1週間の友人がコンペで上位6.5%に入った話
                                              • 保守性の高いソフトウェア開発のTips集

                                                保守性の高いソフトウェアの開発に役立つ様々なTipsを書いた。 特定の言語にとらわれずあらゆる場面で役立つことを集めた。

                                                  保守性の高いソフトウェア開発のTips集
                                                • 手軽に負荷テストができるツール「Taurus」がスゴい

                                                  modules: jmeter: version: 5.4.1 # ここに書いてあるバージョンを勝手にダウンロードしてくれる properties: log_level.JMeter: WARN log_level.JMeter.threads: WARN system-properties: org.apache.commons.logging.simplelog.log.org.apache.http: WARN 既存ツールのラッパーとして動作 デフォルトでは内部的にJmeterが実行されますが、以下のようなツールで作成されたスクリプトを流用することが可能です。 JMeter Gatling Locust Selenium Vegeta つまり、さきほどはYAMLでシナリオが記述可能とは言いましたが、もちろん既存のスクリプトを流用できるってことです。 いままで作り上げてきたスクリプトや

                                                    手軽に負荷テストができるツール「Taurus」がスゴい
                                                  • GitHub 英語例文集

                                                    GitHub で参考になった英語表現をまとめました。文脈がわかるように原文の URL も記載しています。 🙅 方針に異議を唱える it's hard to ~~~ Select onInput doesn't function in Microsoft Edge · Issue #2331 · preactjs/preact 🤦 誤解を解く We never said that ~~~ Select onInput doesn't function in Microsoft Edge · Issue #2331 · preactjs/preact 🙊 誤解していたことを伝える now I see you suggested this in your original feature request. Type EffectCallback - allow async function

                                                      GitHub 英語例文集
                                                    • Raspberry Piは本当に壊れやすいのか

                                                      最近「Raspberry Piはすぐ壊れる」という趣旨の話題がTL上に出てきたので複雑な心境で眺めていました。 (以下簡略化のためRaspberryPi = RPiにします) もし「RPiはすぐ壊れるから製品投入に向いてない」と思っている方がいるのであれば、その理由でRPiを切ってるのはもったいないなぁと思いこの記事を書いてみました。 カンタンに自己紹介をしておくと、某社でRPiをベースにした製品を作り「RPiはすぐ壊れないものなのか?」の検証を進めていました。今では各地で5000台以上は動いてると思います。 ざっと書いたので、あまり技術的に詳しいことは書いてませんが、読み物として楽しんでもらえれば幸いです。 (これらテストをしたのがどのバージョンのRPiなのかについては触れません。読者さんが使いたいと思ったRPiでで気になる部分をテストしてもらうことが良いと思っています) 10,000回

                                                        Raspberry Piは本当に壊れやすいのか
                                                      • プログラミング初心者のための JavaScript と Node.js の歴史、それを踏まえた勉強方法

                                                        プログラミング初心者のための JavaScript と Node.js の歴史、それを踏まえた勉強方法 2020年でJavaScript学ぶならきっとブラウザ向けJSガン無視していきなり初手node.js(ただし暫く何も足さない)がいいんじゃないかというメモ - min.t (ミント) Node.js を教えることについて、自分は賛成なんですが、その学習パスが整理されてないなと思っていたのと、学習パスがなぜ整理されていないかについて書きます。 はじめに 問題意識として、今のプログラミングスクールや独学勢が Ruby on Rails に偏っていて、 Node.js の人間としては、歯がゆく感じているんですが、実際 Node.js を教えるとしても問題も多いと認識しています。 歴史の話は、当時の実情や政治を省いて結果だけを書きます。具体的には第一次ブラウザ戦争、第二次ブラウザ戦争を言及しませ

                                                          プログラミング初心者のための JavaScript と Node.js の歴史、それを踏まえた勉強方法
                                                        • 個人開発で「Excel専用のWebAPI」を作りました

                                                          どういうもの? このように関数を使ってデータを取り込めます。 背景 元々は「インターネット上のWebAPIのデータをExcelに取り込みたい」と思ったのがきっかけです。 VBAマクロを使えば簡単ではありますが、マクロは使いたくないという方も多いのではないでしょうか。かくいう私も勤務先が属人化を防ぐためにマクロの使用を推奨していません。 そこで、関数を使用する方法を選択しました。 ExcelにはWEBSERVICE 関数という指定したURLの応答データを取り込む関数があります。 しかし、この関数は大変便利な関数ですが、ExcelはHTMLやJSONのパーサーを用意していません。結局取り込んだHTMLやJSONの処理にはVBAマクロが必要になります。 また、欲しいWebAPIが存在しない問題もありました。 そこで、Excelでデータを編集するのではなく、元々のWebAPIをExcel用に作れば

                                                            個人開発で「Excel専用のWebAPI」を作りました
                                                          • "レガシー"と言われないためのJavaScript再入門

                                                            追記: 10/11 ハテブでバズっているようで、色々指摘があったので追記 getElement*は動作が早いのでIDやクラス名が自明の場合はgetElement*を使う方がいいと言う意見もあり、また、ページの表示で大量に呼び出されるわけではないからボトルネックにはならないと言う意見もある。 getElement*で返されるオブジェクトは動的な変化に対応しており、querySelector*は動的な変化に対応していないため、場合によってはgetElement*を使うといい。このサイトで遊んでみよう。 https://ja.javascript.info/searching-elements-dom#ref-263 for await ... ofは非推奨なので Promise.allを現代的な書き方にした 顧客先のブラウザが古い場合も考慮して、あえてレガシーな書き方もする場合があるらしい。現

                                                              "レガシー"と言われないためのJavaScript再入門
                                                            • エンジニアを始めてから便利だったツールまとめ

                                                              概要 エンジニアになってから出会った便利ツール・アプリを備忘録としてまとめました。 ※WEB用ツール多め GUIツール・アプリ デスクトップ上で動作させるやつ。 Authy https://authy.com/ 2FAアプリ。Multi-Deviceという複数端末で使える機能があり、PCでログインする際の2FAをPCのみで完結できるので便利。 Hyper https://hyper.is/ コンソールアプリ。テーマ機能やプラグイン追加で自分の好みに環境を整えやすくて見た目がよい。 設定を.hyper.jsファイルで管理するので、gitにて設定管理ができて便利。 VSCode https://code.visualstudio.com/ 言わずもがなの高機能コードエディター。特に理由がなければ基本的にはプログラミングするならこれを使えばいいんじゃないかな。 豊富なプラグインや設定で、Hype

                                                                エンジニアを始めてから便利だったツールまとめ
                                                              • やはりお前らの「公開鍵暗号」はまちがっている。

                                                                ※タイトルの元ネタは以下の作品です。 はじめに この記事は、公開鍵暗号の全体感を正しく理解するためのものです。数学的な部分や具体的なアルゴリズムは説明しません。気になる方は最後に紹介するオススメ書籍をご覧ください。 少し長いですが、図が多いだけで文字数はそこまで多くありません。また、専門的な言葉はなるべく使わないようにしています。 ただしSSHやTLSといった通信プロトコルの名称が登場します。知らない方は、通信内容の暗号化や通信相手の認証(本人確認)をするためのプロトコルだと理解して読み進めてください。 公開鍵暗号の前に:暗号技術とは 公開鍵暗号は暗号技術の一部です。暗号と聞くと、以下のようなものを想像するかもしれません。 これは情報の機密性を守るための「暗号化」という技術ですが、実は「暗号技術」と言った場合にはもっと広い意味を持ちます。まずはこれを受けて入れてください。 念のため補足して

                                                                  やはりお前らの「公開鍵暗号」はまちがっている。
                                                                • レガシーおじさん、SPAを始めてみた。そして限界を知る

                                                                  はじめに 最近、Webの記事を見てるとReactだVue.jsばかりが上がっていてJSPやERBの話をしてる人は誰もいません。jQueryの記事ももちろん見ない。 つまり、Webだけ見る限りではほとんどの人がSPAを使ってるように見えます。 私はWeb界隈には居るもののどちらかというとバックエンド寄り、もっというとそもそもWebとか関係ない領域を見る事が多いので、ちょっとキャッチアップを兼ねていくつかの個人プロダクトにVue.jsを採用してみました。 jQueryくらいで頭が止まってたので。サーバサイドもマイクロサービスでAPI化が進んでるのでフロントもそれに合った技術を選ばないとですしね。 というわけで、今回はその中で得た知見というか、従来型のサーバサイドでのWeb開発をしていた人の視点でVue.jsをキャッチアップする流れで書いていきたいと思います。 まあ最終的な結論は正直「これすごく

                                                                    レガシーおじさん、SPAを始めてみた。そして限界を知る
                                                                  • 検索が爆速になるデータベース設計を公開します

                                                                    こんにちは。エンジニアの谷井です。 フォルシアでは、Spookと呼んでいる技術基盤を用いて、主に旅行業界やMRO業界に対して、膨大で複雑なデータを高速検索できるアプリケーションを提供しています。 今回はその高速検索のノウハウのうち、特にDBの扱いに関連する部分について、ベテランエンジニアへのインタビューを通してそのエッセンスをまとめてみました。 一般的なベストプラクティスだけでなく、検索性能を高めることに特化しためずらしいアプローチもあるので、ぜひご覧ください。 フォルシアにおける検索DBについて まず前提としてフォルシアで扱うデータについて軽く説明します。 扱うデータの複雑さ たとえば、旅行会社向けのアプリケーションであれば、宿泊素材の情報としては ホテルの情報「〇〇ホテル」(~約2万件) プランの情報「朝食付き・ロングステイ△△プラン」(0~1500件/施設) 客室の情報(~100件/

                                                                      検索が爆速になるデータベース設計を公開します
                                                                    • コードレビューにラベルを付けるだけでチームの心理的安全性を高めた話

                                                                      ハコベルシステム開発部のおおいし (@bicstone) です。普段はフロントエンドエンジニアとして物流DX SaaSプロダクトの開発を行なっています。 この記事ではハコベルの開発チームが心理的安全性の向上を目的に採用した、プルリクエスト (マージリクエスト) コメントにラベルを付ける手法についてご紹介します。 背景 プルリクエストをレビューする時、レビュアーとして上から目線になってしまい相手を傷つけないか緊張したり、ちょっとした確認のつもりで書いたコメントが修正必須と捉えられてしまったりした経験はないでしょうか。 本来、ピアレビューは対等な関係であるはずなのに、レビューする側の方が上になってしまいお互いに恐縮してしまいがちです。「勘だと怪しいけど間違っていたら怖いから言えないな」や、「将来的に辛くなりそうな実装だけどわざわざ指摘するほどでもないな」など荒波を立てずにApproveしてしま

                                                                        コードレビューにラベルを付けるだけでチームの心理的安全性を高めた話
                                                                      • 電子メール送信に関する技術

                                                                        ふと気になって調べたことの備忘メモです ✍ (2022/4/2追記)Twitterやはてブで色々とご指摘やコメントを頂いたので、それに基づいて加筆と修正をおこないました 特に、幾つかの技術については完全に誤った説明をしてしまっており、大変助かりました…ありがとうございました🙏 なぜ調べたか メール送信機能のあるWebアプリケーションを開発・運用していると、 特定のアドレスに対してメールが届かないんだが とか MAILER-DAEMONなるアドレスからメールが来たんだけど といった問い合わせを受けて原因を探ることになります 実務においては、Amazon SES や SendGrid といったメール送信処理を抽象的に扱えるサービスを使うことが多いと思いますが、 ことトラブルシューティングにおいては、その裏にある各種技術についての概要を知っていると、状況把握や原因特定をしやすくなります ありが

                                                                          電子メール送信に関する技術
                                                                        • 「はじめてゲームプログラミング」の衝撃

                                                                          エンジニアの間で話題沸騰「はじめてゲームプログラミング」 6月11日に発売され一時トレンドにも載るほど。 「ナビつき!つくってわかる はじめてゲームプログラミング」。 「ノード」をつなげてプログラミングしてゲームを作っていきます。 例えば「Lスティックノード」と「ヒトノード」を繋いでLスティック操作ができるようになります。 チュートリアルでは「おにごっこゲーム」や「マリカ」みたいなものを作れちゃいます。 私ももちろんプレイして実況配信なんてやってみたのですが節々で「プログラミング学習」という点で衝撃を受けました。 今回はその衝撃を紹介していきたいと思います。 約束された「完成したときの達成感」 「ナビつき!」というタイトルの通り、チュートリアルが懇切丁寧です。 失敗につながるようなメニューは無効化されていますし、しばらく迷って画面上で進捗を出せないでいるとアシストしてくれます。 「完成」す

                                                                            「はじめてゲームプログラミング」の衝撃
                                                                          • データ分析のためのSQLを書けるようになるために

                                                                            はじめに 本稿では分析用クエリをスラスラ書けるようになるまでの勉強方法や書き方のコツをまとめてみました。具体的には、自分がクエリを書けるようになるまでに利用した教材と、普段クエリを書く際に意識していることを言語化しています。 想定読者として、SQLをガンガン書く予定の新卒のデータアナリスト/データサイエンティストを想定しています。 勉強方法 基礎の基礎をサッと座学で勉強してから、実践教材で実際にクエリを書くのが望ましいです。 実務で使える分析クエリを書けるようになるためには、実務経験を積むのが一番良いですが、だからといって座学を御座なりにして良いというわけではありません。SQLに自信がない人は、一度基礎に立ち返って文法の理解度を確認した方が良いと思います。 書籍 SQL 第2版: ゼロからはじめるデータベース操作 前提として、SQLに関する書籍の多くがデータベース運用/構築に関する書籍がほ

                                                                              データ分析のためのSQLを書けるようになるために
                                                                            • オンライン投票はなぜ『難しい』のか

                                                                              日本で公職選挙が近づいてくると、「202X年にもなって投票所に行く必要があるなんて」とか「オンライン投票もいまだにできないなんて」みたいな声をよく聞きます。 [1] 法にも技術にも詳しくない一般の人がそう思うのは自然なことでしょう。オンライン投票ができれば、少なくとも若年層の投票率にはいい影響がありそうです。しかし「現代的で民主的な選挙」の要件をしっかり満たしてオンライン投票を実現するのは、実は技術的にも容易ではありません。 「現代的で民主的な選挙」の要件とは、どういうものでしょうか。現在の技術でオンライン投票を実施すると、その要件はどのように毀損するのでしょうか。私たちはその要件を、本当に理解しているでしょうか。 本記事は、「現代的で民主的な選挙」の要件を振り返り、そこから導かれる「オンライン投票のなにが『難しい』のか」をできるだけ明確にする試みです。そして、議論をその先へ進めるための前

                                                                                オンライン投票はなぜ『難しい』のか
                                                                              • 【タスク管理術】Notionで全ての仕事を管理する方法を徹底解説

                                                                                はじめに タスク管理はクリエイターの永遠の課題だと思います。 普段の案件に関するタスクはもちろんですが、案件とは関係ない事務作業やデータの整理、後で読みたい記事、試してみたい技術など、私たちには様々なタスクがあります。 膨大なタスクを管理する方法を日々模索し続け、ようやく自分の中で「これ!」というのが固まってきたので、私なりのNotionを用いたタスク管理方法を解説していこうと思います。 Notionとは 様々な情報やドキュメントを一元管理できるサービスです。公式サイトに書かれている通り、様々なドキュメント管理ツールをひとつに集約したのがNotionになります。 日々の業務は「案件に関するタスク」と「案件とは関係ないタスク」の2つに分けられます。 「案件に関するタスク」は期日や案件の詳細情報、自分の担当範囲などを分かりやすく管理することが重要です。「案件とは関係ないタスク」は業務改善や事務

                                                                                  【タスク管理術】Notionで全ての仕事を管理する方法を徹底解説
                                                                                • Cloudflare D1 がヤバい

                                                                                  まだ検証足りないけど、マジで想像通りのブツなら魂震えるかもしれん…。 Announcing D1: our first SQL database Cloudflare D1 = Edge SQLite Cloudflare D1 は Cloudflare Worker で、つまり CDN Network 上で sqlite が動きます。これだけなら普通の sqlite ホスティングなんですが、もちろん Cloudflare が出すからにはそれだけではなく、CDN Edge 上に Read Replica がバラ撒かれた sqlite になります。ヤバくないですか? 僕はヤバいと思いました。 このヤバさを知るために、Cloudflare が開発した基盤についていくつか抑えておく必要があります。 Durable Objects は CDN 上の Actor モデルを構築できます。この Acto

                                                                                    Cloudflare D1 がヤバい

                                                                                  新着記事