Open8 勉強会で発表したレビューの仕方と心理的安全性の話しです。
ググり力、それはエンジニアにとっては 必須の能力 になりつつあると思います。 さて、皆さんは自分のググり力で欲しい情報にちゃんとたどり着けると言えますか? @Yametaro さんからのお題です。 ある日、コードレビュー中ワイ ワイ「さぁ、今日も同僚のコードをレビューしていくでぇ」 ワイ「まずは新卒のT君のコードを読んでいこか」 ワイ「どれどれ…」 ワイ「ん?なんやこの??っていう書き方は…?」 ワイ「ググってみよか…」 ワイ「JavaScript ??と入力して、検索ボタンをポチッとな」 ワイ「…あれ?それらしい検索結果が出てこんな…」 ワイ「ぐぬぬ、記号関係はググりづらいこともあるんやな…」 ワイ「これじゃあ今日はもう、酒飲んで寝るしかないやないか…」 〜飲酒、そして就寝へ…〜 では JavaScript で ?? の検索方法はどうしたらいいのか? ここに1つの解答を示しておきます!
これまではJavaScriptを用いて実装するしかありませんでしたが、ついにimgやiframe要素であればloading="lazy"を付与するだけで、簡単に実装できます。 <!-- 画像に適用する場合 --> <img src="pic.png" alt="画像の詳細" loading="lazy"> <!-- iframeに適用する場合 --> <iframe src="external.html" loading="lazy"></iframe>画面外では読み込みが発生しないので、必要になった時(画面内に要素が入りそうになった時)に読み込みが発生するのでパフォーマンスが向上します。 また画像についてはsrcsetを用いたレスポンシブな画像に対しても指定できますし、picture要素を用いてfallback形式でも記述できます。 <img src="normal.png" srcse
Dockerの概念や仕組みまではなんとなく理解できるもののDockerfileを書こうとするとスムーズに書けなかったり、そもそものDockerの基礎、あるいはコンテナ技術というものの基礎が抜け落ちていてDocker環境に移行できていないところも多いのではと思い、この記事を翻訳しました。 Source:The Docker Handbook by Farhan Hasin Chowdhury(@Twitter) 本記事は、原著者の許諾のもとに翻訳・掲載しております。 コンテナ化の概念自体はかなり古いですが、2013年にDocker Engineが登場したことで、アプリケーションのコンテナ化がはるかに簡単になりました。 Stack Overflow Developer Survey-2020によると、 Dockerは#1 最も望まれるプラットフォーム、#2 最も愛されるプラットフォーム、および
この記事では、2020年に公開された便利なWebオンラインツール・ベスト100個をまとめてご紹介します。 定期的にリストアップしている最新オンラインツールまとめ記事では、2020年にかけて合計306個の新しいツールやサービスが登場しました。 その中でも、特にWebデザイン制作に便利なツールを選りすぐったコレクションで、「無料で利用できるツール」を揃えています。 これらのツールやサービスを活用すれば、Webデザイン制作をより快適に進めることができるでしょう。 カテゴリごとに整理しているので、目的にあったお気に入りツールを探してみましょう。 コンテンツ目次 1. CSSツール(14個) 2. パターンツール(7個) 3. イラスト系ツール(3個) 4. デザインツール(10個) 5. 配色カラーツール(6個) 6. グラデーションツール(3個) 7. SVGツール(8個) 8. スクリーンショ
こんにちは。エンジニアの谷井です。 フォルシアでは、Spookと呼んでいる技術基盤を用いて、主に旅行業界やMRO業界に対して、膨大で複雑なデータを高速検索できるアプリケーションを提供しています。 今回はその高速検索のノウハウのうち、特にDBの扱いに関連する部分について、ベテランエンジニアへのインタビューを通してそのエッセンスをまとめてみました。 一般的なベストプラクティスだけでなく、検索性能を高めることに特化しためずらしいアプローチもあるので、ぜひご覧ください。 フォルシアにおける検索DBについて まず前提としてフォルシアで扱うデータについて軽く説明します。 扱うデータの複雑さ たとえば、旅行会社向けのアプリケーションであれば、宿泊素材の情報としては ホテルの情報「〇〇ホテル」(~約2万件) プランの情報「朝食付き・ロングステイ△△プラン」(0~1500件/施設) 客室の情報(~100件/
米Adobeはこのほど、ロイヤリティーフリーの写真やイラストを提供する有償サービス「Adobe Stock」で7万点以上の写真や映像を無料化した。個人や法人を問わず使える他、商用利用も認める。ダウンロードにはAdobe ID(無料)の登録が必要。 公開したコンテンツは、写真や映像、3Dモデル、ベクター素材、イラストなど。Adobeの年次クリエイティブカンファレンス「Adobe Max 2020」(10月20日~22日)に合わせた施策。素材を提供したアーティストの権利も尊重したという。 関連記事 iPad版「Illustrator」リリース 月額1080円、Adobe CCユーザーは追加料金なし 米AdobeがiPad版「Illustrator」をリリースした。単体での利用料は月額1080円。「Adobe Creative Cloud」のユーザーには追加料金なしで提供する。 PDFをスマホ画
ウェブサイトを閲覧していると「画像の読み込みが遅い」という場面に遭遇したことがある人は多いはず。画像はウェブサイトのパフォーマンスを左右する要素のひとつであり、ウェブ開発において取り扱いに注意すべきものです。そんな画像をウェブサイトで扱う際の最適化方法について、GoogleのエンジニアであるMalte Ubl氏が解説しています。 Maximally optimizing image loading for the web in 2021 https://www.industrialempathy.com/posts/image-optimizations/ ◆img要素にwidthとheightを指定する アスペクト比を維持したまま画像サイズを変更するには、「style」要素に「max-width: 100%」や「height: auto」と指定しておく手法がよく用いられます。この手法に加
計算量についてのお話です。対象は、プログラミング経験はあるが計算量のことを知らない初心者から、計算量のことを知っているつもりになっている中級者くらいです。 数式を見たくない人にとっては読むのが大変かもですが、深呼吸しつつ落ちついて読んでくれるとうれしいです。 それから、この記事が自分には合わないな〜と思ったときは、(別の記事を Qiita とかで検索するよりも)この記事の一番下の 参考文献 にある本を読むことをおすすめします。Amazon の試し読みで無料で読めます*1。 TL; DR 関数の増加度合いのことをオーダーと呼ぶよ 計算量は、入力サイズ(など)を受け取ってアルゴリズムの計算回数(など)を返す関数だよ その関数のオーダーについての議論がよく行われるよ オーダーを上から抑えるときは \(O\)、下から抑えるときは \(\Omega\) を使うよ オーダーを上下両方から抑えたいときは
URのマンションにもう15年くらい住んでいる。ここは年配者か子育て世代しかいないので静かで住みやすく気に入っているのだけど、4年前に上に引っ越してきた人がだいぶうるさくて困っていた。いろいろ調べて自分で民事調停を起こして解決した。 時系列 4年前の話 下の子が生まれて1歳になった頃に、真上に5人家族が引っ越してきた。挨拶に来られたのはご両親と小さい男の子の3人だったが、あと二人子供がいらっしゃるとのことだった。見た目は普通の、このマンションによくいるような家族だった。こちらも子供が2人いて、下階とはいえ音や振動は上にも伝わるため、うるさかったら教えて下さいね、というような事を話してその場は終わった。 夕方や夜はたしかに足音がドコドコうるさかったが、うちの子もフローリングで飛び跳ねてるしそういうもんかな、と思って気にしないでいた。岐阜の母親が遊びに来て、子供を寝かしつけてリビングでおしゃべり
前回、成功したエンジニア組織の施策について書きましたが、今回は失敗編です。失敗のほうが多いのでどうしても文量が多いのですがご勘弁下さい。 説明用に前職の関係記事がガンガン出てきますが、貶めたり咎める意図は全くありません。あくまで僕が責任持って実施した施策で失敗したことについてのノウハウ共有と反省についての記事です。 組織施策プレゼン大会 ※元記事がお亡くなりになっているのでWayback Machineより [概要] 組織施策についてチームごとにプレゼン。プレゼン毎に担当役員+組織責任者(僕)が点数評価。点数が一定以上の場合施策実行をその場で採択。 内容は、課題提起→施策内容→実行体制→スケジュール→予算→まとめ。 [導入背景] エンジニア組織の人数が増えて組織硬直が進んでいたこと、全員の目線を合わせる機会があまり無かったことから、メンバーの不満が見えないレベルでたまり続けていました。 メ
TL;DR Kubernetes がどのように、人間の作業を自動化しているのかを、実際に Kubernetes がやっている作業を手作業で行なう ことで学びましょう。 このQiita の内容は、CloudNative Days Tokyo 2019 における発表の、「転職したらKubernetesだった件」を書き下ろし、実際にデモが行えるように修正を加えたものになります。 YouTube Speakerdeck この物語はフィクションであり、登場する団体名・会社名・人名等は架空のもので、実在する団体・会社・人物等とは、一切、関係がありません。 これまでのあらすじ ある日、某Z社に転職した稲津さんに与えられた仕事は、“Kubernetes の一員”になることだった!? 某Z社は、親会社からの依頼で Kubernetes クラスタを運用しなければならなくなりましたが、 「Kubernetes
大家好!イマチュウのばやし(@muraba1)です 今日は中国語学習に強力な力を発揮するサイトの紹介です これなら中国語を独学で学習できる 今までいろんな中国語学習サイトやアプリがありましたが、個人的にはダントツでこれがおすすめです 中国政府の教育局との協業サイトとのことでちょっと使えばその力の入れようが分かります 全球中文学習平台 このサイトは普通語を学習者向けのサイトで、地方出身者や外国人が普通語をマスターするためのあらゆるコースがあります。 とにかく完成度が高く、楽しく学習できるように工夫されていますので一度見てみてください。 なかでも日本人が中国語学習に使えるのは主に以下の3つです 1.段階式中国語講座(全43コース) クイズ形式ですすむ中国語レッスン 難易度は初級~中級程度ですが、発音やリスニングもあります。 2.中国語ケーススタディー 1000シーン 生活、学習、旅行に分けてケ
ログ・モニタリングのやるべきこと AWS CloudTrail の設定 CloudTrail は AWS リソースを「誰が」「いつ」「何に」対して「どうような」操作をしたのかを記録するサービスです。 ログの長期保管の設定をしておくことで、トラブル発生時の解析等に利用できます。 有料です(無料利用枠もあります) [YouTube] AWS CloudTrailを触ってみた CloudTrail Insights を利用することで、機械学習により異常なアクティビティを検出することもできます。 ログは S3 と CloudWatch Logs に転送でき、S3 に保管しているログは Athena により検索することもできます。 Athena を利用する場合は、事前に CloudTrail 用のテーブルを作成しておき、検索方法を習熟しておきましょう。 インシデントが発生してから習熟では対応が遅くな
自身のプライオリティによりますが、いくつか。 Markdownで幅広く再利用性を利かせたい、長期的に丁寧に版管理したい 自分自身の操作性、描きやすさと、見た目 俄然手軽に、短期的に、Onlineでいつでもどこでも いずれかという視点で考えると良いのかなと思い、並べてみました。 1. 長期的に: Markdownで幅広く再利用性を利かせたい、丁寧に版管理したいなら Markdownで描くことのメリットは再利用性。 将来的に追記・編集、自分以外の誰かが手を入れる可能性が高い。 現在のドキュメントだけでなく多種説明資料、媒体に転用する可能性がある。 ...という点で差分管理をしたいなら、以下。 VSCodeでPlantUML、Mermaid 上記参考で以下。 Alt+D でプレビュー起動。 Ctrl + Shift + P でコマンドパレットを起動し、出力。 png, svg, eps, pdf
by Adam Harvey Linuxを利用していると「シェル」や「grep」「プロセス」といった言葉を目にします。エンジニアのCarl Riis氏はそんなLinuxの基礎用語の意味や仕組みをさまざまなウェブサイトから学習し、「10のミニプロジェクト」を作成することでスキルを向上させたとして、その詳細を公開しています。 Getting better at Linux with 10 mini-projects - carltheperson https://carltheperson.com/posts/10-things-linux GitHub - carltheperson/10-things-linux: Getting better at Linux with 10 mini-projects. https://github.com/carltheperson/10-thing
メリークリスマス!heyでCTOをやっている藤村です。ということで、これからエンジニアになる・いまエンジニアをしているみなさんに個人的に読んでほしい本をご紹介します。これを読んでおけばソフトウェア・エンジニアとして網羅的な基礎が身につく、とかいうセレクトではなく、あくまで個人的に読んでもらえると嬉しいな!というものを選びました。 ソフトウェア開発基礎編リー・コープランド『はじめて学ぶソフトウェアのテスト技法 』 テストの本です。昨今RSpec、XUnit系など自動テストのツールはすっかり普及し、ソフトウェアにテストコードをつけるのは当たり前の世の中になりました。しかし!テストケースをどう設計するか、何をテストすべきか、について体系的に学んだことがない、という方も実はいらっしゃるのでは。 この本はそういったソフトウェア・テスト一般についての教科書です。ここの知識はソフトウェア・エンジニアとし
まえがき IT業界で10年弱努めて見て、現在は教育部門にいることもあり”新人教育に向いている教材は有りませんか?”という質問を頂くことがあります。 昨今ITに関する様々な知識は情報が溢れていて、少し検索エンジンで調べれば大量のリソースにすぐアクセスができます。 一方で、本当に価値があるものも大量の情報の中に埋もれてしまいがちです。 本記事が目指すポイントとしては、”これからIT業界でインフラエンジニアとして頑張るぞ”という方向けが、短時間で良質なリソースにアクセス出来るようにすることです。(私自身のおすすめ色が強いです) なお、ここで想定する”インフラ”というのは次の要素を想定しています。 サーバ オペレーティング システム ストレージ ネットワーク 仮想化 パブリッククラウド ですから、次のようなカテゴリについては全く触れていない、あるいは触れていてもかなり部分的だと言う点をご理解下さい
前書き 5か月ほど前にQiitaに登録し、それから登下校中や休憩時間など、空いた時間は基本Qiitaを見るようになりました。 ストックした記事が106、LGTMした記事が12ページ分にもなり、記事の整理もかねて、特に好きな記事や理解が深まった記事などを振り返りつつまとめようと思います。 無言で記事を掲載しております。迷惑だったら申し訳ありません。 が、随時更新予定です。 追記(2022/10/18) Twitterにておすすめの記事を紹介していただきました! 今後もそういった機会があることを信じて、ほかの方にオススメされた記事を紹介する枠を設けます。 誰に向けて Qiita触りたての人 プログラミング始めたての人 自分自身 最初に見ておくべき記事 最初の頃は数学と同じように変数を決めていたため、aやbとしていたが、この記事を見て驚愕した(笑) リーダブルコードを読むきっかけとなった記事。
2022年8月23日に無料公開された画像生成AI「Stable Diffusion」は、「ボールで遊ぶ猫」「森の中を走る犬」といった指示を与えると指示通りの画像を出力してくれます。Stable Diffusionはデモページで画像生成を試せる他、NVIDIA製GPUを搭載したマシンを用いてローカル環境で実行することも可能です。しかし、デモページは待ち時間が長く、NVIDIA製GPUは所持していない人も多いはず。Googleが提供しているPython実行環境「Colaboratory」を利用すれば、NVIDIA製GPUを所持していなくともStable Diffusionを待ち時間なしで実行する環境を無料で整えられるので、実際に環境を構築する手順や画像を生成する手順を詳しくまとめてみました。 Stable Diffusion with 🧨 Diffusers https://huggingf
Docker創始者らが開発、ビルド/テスト/デプロイの自動化をポータブルにするツール「Dagger」登場。そのままローカルでもGitHubでもCircleCIでも実行可能に Dockerの創始者であるSolomon Hykes氏らが中心となって開発しているオープンソースのCI/CD環境構築ツール「Dagger」が公開されました。 Windows、Mac、Linuxで試すことができます。 And we are live! Introducing Dagger, a new way to build CI/CD pipelines. By the creators of Docker. https://t.co/DU8racmoUo — dagger (@dagger_io) March 30, 2022 Daggerが定義したCI/CDパイプラインはポータブルになる Daggerとは「A P
Gitでよく使用するコマンドが何を行っているかをGIFアニメで解説した記事を紹介します。 Gitのマージ、リベース、リセット、チェリーピック、フェッチ、プル、リフログなど、コマンドを実行した時にブランチはどのように相互作用し、履歴にどのような影響を与えるのか視覚的に学べます。 🌳🚀 CS Visualized: Useful Git Commands by Lydia Hallie 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに Gitのマージ(fast-forward, no-fast-forward) Gitのリベース(rebase) Gitのリセット(reset, revert) Gitのチェリーピック(cherry-pick) Gitのフェッチ(fetch) Gitのプル(pull) Gitのリフログ(re
こんにちは。エムスリー・QLife(エムスリーのグループ会社)・エムスリーヘルスデザイン(エムスリーのグループ会社)でエンジニアとして各種作業に関わっている山本です! 以前もメール送信の話を書かせていただいたことがありますが、今回もまたメールネタとなります。今回のお題はメールセキュリティです。 大量メール送信のための予備知識 - エムスリーテックブログ すでにご覧になった方もいるかと思いますが、次のようなニュースが流れています。 www.proofpoint.com この「GoogleとYahooの新Eメール認証要件」ってつまりどういうことよ? というところを具体的にどのように進めているかについて書かせていただきたいと思います。 2023/12/18追記 : Googleからメール送信にTLSを使うことが追加要件として示されました。 TL;DR とりあえず何から始める? 何はともあれ実際に
腰痛がピキッてきたとき、メシ食って風呂入って、みのもんたが話してた背骨を直す体操をやって寝るようにしてる。 ❶ 堅い椅子に浅く腰掛ける。膝直角、股関節直角、軽く背筋を伸ばす ❷ 頭だけゆっくり左を向く。次に右を向く。どちらかが向き難いはずだ ❸ その反対側の尻の下にタオルなどを敷く。左が向きづらいなら尻の右側の下、右なら左側だ ❹ また頭だけで左右を向く。まだどちらかが向き難いなら、敷くものの厚みを増して同じことを試す ❺ 両方同じ角度で向けたら、そのまま頭の後ろを両手の指を組んで押さえ、ゆっくり背中をくねらせながら頭を傾けて時計回り・反時計回りにグルグル回す。背中が微かにポキポキ鳴る ❻ タオルを抜いて、また左右を向く。まだどちらかが向き難いなら、もう一度試みる 俺はこの体操の後、今度は立って同じことをやる。尻のタオルの代わりに、かかとの下にスリッパを敷いて。背骨の直せる位置が高くなる(
今回自分は0から始めて9か月でコンペで銀メダル(6385分の249位,top4パーセント)を獲得できました。 自分の今までの流れをおさらいしていきます。 それまでの僕のスペック 数3と行列はほぼ何も分からない プログラムはrubyとjavaはそこそこに書ける、pythonは知らん 勉強の流れ 12月末 機械学習を始めると決心、とりあえず何をやればいいかよく分からないがpythonが必要らしいのでprogateでpythonをやってみる 1月 数学が必要らしいので、行列と微分積分について1から学んでみる。今から考えると、行列の基礎をさらえたのは良かったですが、それ以外はこの時間は絶対いらなかったなと考えています。 微分積分 行列 2月 Udemyで多くの講座を受ける、詳細は以下の記事にまとまっています https://qiita.com/HayatoYamaguchi/items/c8051
個人でWebサービスを継続的に運用するのは金がかかってかなわんという問題がある 「個人開発」だと定義が曖昧なので自己資金かつ赤字のプロジェクト(Webサービス)ということにする。 そういうプロジェクトではプロダクトオーナー=自分、開発者=自分、予算管理者=自分というロールになるので予算管理者としてコストを図る必要がある(ここでいうコストはWebサービスを実現するアプリケーションのランニングコストのこと)。 通常はみんな自分の人件費を0として計算していると思う(逆にいうとそれが負債という考え方もできると思う)。 ただしメンテナンス時間とコストのトレードオフもあるので、人件費0ではあるけど有限の時間は別軸として管理しているのが普通だと思う。極端な例だと「コスト削減できるけどメンテナンス時間10倍になる」というのは避けられる。 仮に個人開発のプロジェクトの予算を月数千円から高くても1万円ぐらいか
前提として、Stable Diffusionでエロ画像を出そうとしてもsafety checkerという機能が入っており、センシティブな画像を出そうとすると黒塗りになる。 (Stable DiffusionのSaaSであるDream Studioはぼかしだが、多分別の技術) https://github.com/huggingface/diffusers/releases/tag/v0.2.3 そこでGoogle Colabでちゃちゃっと環境を作り、なおかつNSFWを回避する。 1. 下記のリンクでノートを開く https://colab.research.google.com/github/huggingface/notebooks/blob/main/diffusers/stable_diffusion.ipynb 2. 下記の箇所を書き換える vvvvvvvvvvvvvvvvvv f
最近、見つけた技。知らない言語でコードかくときChatGPTが神すぎる。 そのテクはなんと「プログラミングまるごとを、ChatGPTに突っ込む」というもの。 え、そんなの動くの!? と思うんですが、動くんですそんなの。直球すぎて盲点だった。 試してみよう たとえば、下記はGoogleサービス使って、リアルタイムにマイク音声を文字起こしするサンプル。 こいつをチャットAIで音声会話をやろうと、軽く読んでみたのですが…うん、よくわからん。 Pythonだし、Streamingだし、音声の操作だし、普段つかわない技術が満載すぎてわからん。 雑にコードを突っ込むと人生が解決こういう時は 以下のコードを、わかりやすく説明して。 <以下、上記コードをそのままコピペ>とすると…… こうなる。 このコードは、Google Cloud Speech-to-Text APIを使用して、マイクからの音声をリア
ども、ゲストブロガーの大瀧です。 クラスメソッド在籍中の2018年2月頃社内向けにDNS勉強会を全4回で開催したことがあり、そのときの資料がひょこっと見つかったので公開してみます。(正確には第3回は聖剛さん担当だったので一緒に公開してもらいました、感謝。) 第1回 DNS入門 : DNSのしくみ、キャッシュ 第2回 DNSコンテンツサーバー : DNSサーバーの分散構成とゾーンの委任 第3回 DNSセキュリティ : DNS関連の攻撃手法とDNSSEC 第4回 AWSのDNSサービス : Route 53とAmazon DNS DNSについての理解を深める一助にしていただければと思います。現職(SORACOM)でももちろん超重要な技術です! 第1回 DNS入門 スライド共有サービス終了に伴い、公開終了 第2回 DNSコンテンツサーバー スライド共有サービス終了に伴い、公開終了 第3回 DNS
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く