タグ

zima0314のブックマーク (1,076)

  • [提案]テーブル名はもう全部単数形にしようや

    こんにちは、データベース愛好家のみなさん!今日は、データベース設計で永遠の議論となっている「テーブル名、単数形 vs 複数形問題」について、徹底的に掘り下げていきます。私は単数形派です!でも、なぜそうなのか、一緒に深掘りしていきましょう。 イントロダクション:我らが主人公、単数形くん みなさん、こんな経験ありませんか? You: テーブル名って、users? user? どっちがいいんだろう... 先輩: いや、絶対usersだよ!Rails使ってるし。 You: でも、user_idって書くときは単数形だよね? 先輩: あ、そうだね...でもやっぱりテーブルは複数形! You: (心の中で)なんかモヤモヤする... 実は、この「モヤモヤ」には理由があるんです。今日はその理由を解き明かし、単数形テーブル名の魅力をお伝えします。準備はいいですか?Let's dive in! 言語の壁を突破せ

    [提案]テーブル名はもう全部単数形にしようや
  • 技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(前編)

    技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(前編) ソフトウェアの品質をテーマに研究をしている名古屋大学 森崎研究室は、ソフトウェアの技術的負債をなんらかの形で数値化する手法の研究の一環として、コードの読みにくさの原因となる要因などを分析した研究結果を発表するイベントをオンラインで開催しました。 今回発表された研究では、技術的負債を抱えたレガシーコードのリファクタリングで取り除かれた問題の90%以上が、メソッド名と実際の関数の動作が一致していない、あるいは関数名とコメントが矛盾しているなどの「命名的問題」、もしくは複雑で読みにくい多数の条件分岐や深いネストなどを抱えた「構造的問題」のいずれかであるという先行研究があることを踏まえ、どちらを優先してリファクタリングすると保守性や可読性が高くなるかを調査しています。 具体的には、命

    技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(前編)
  • グローバル企業で生き抜くための英会話フレーズ集 - fu3ak1's tech days

    転職をしてはや10ヶ月ほど経ちました。業務で英語を使うようになったので、私もしくは同僚がよく使う英会話のフレーズを紹介します。自分のメモも兼ねています。 私のバックグラウンド エンジニアとして某会社に勤務しております。会社のメンバーは外国の方が多く、状況にもよりますが全体の40~50%くらいは英語でミーティング、Slackでも英語でやり取りすることが多々あります。そんな中で気付きとしてあったのが、同じ表現を使って会話をすることが多いなという点です。ある程度パターンとしていくつかのフレーズを覚えておけばそれなりに業務の会話ができるのでは?と思いこの記事を書いています。なお、以下私の環境については注意してください。 外国の方が多いといっても、ノンネイティブや日人も多く、英語ができない人に対しても理解がある環境です。(ネイティブ90%以上といった環境とは違う) エンジニア同士の会話が多いので、

    グローバル企業で生き抜くための英会話フレーズ集 - fu3ak1's tech days
  • 旅が面白いのは何が起こるかわからないからだ - Findy Engineer Lab

    渡米 メールでやってきた唐突な仕事のオファーに応えて、渡米を決意した。どうしてそう決めたのかと言われれば、口うるさい母親が昔からアメリカに行けアメリカに行けと煩かった事だとか、給料がよかったからとか、ソフトウェア技術者にとっていかにシリコンバレーが特別であるかとか、それらしい理由もないではない。でも、実際には入念な検討は何もなかった。面白そうだからやってみようと思っただけだ。それで良かったと思っている。若さというのは、無知で無謀なものだ。でも、そのおかげで人生が思わず開けたりするのが、面白いところだ。 その決断の結果、僕の人生は一変した。これを機に、付き合っていた女性と結婚する事に決めた。2001.1.1という日付も縁起が良さそうではないか。誰もいない区役所に婚姻届を出し、近所のコンビニで肉まんを買ってべて結婚を祝い、数日後の飛行機に乗って、冬とは思えぬまばゆい陽光につつまれたサンフラン

    旅が面白いのは何が起こるかわからないからだ - Findy Engineer Lab
  • メルカリ ハロの技術スタックとその選定理由 | メルカリエンジニアリング

    こんにちは。メルカリ ハロのSoftware Engineer (Engineering Head)の@napoliです。連載:Mercari Hallo, world! -メルカリ ハロ 開発の裏側-の2回目を担当させていただきます。 2024年3月上旬にメルカリ ハロという新しいサービスが公開されました。メルカリ ハロは好きな時間に最短1時間から働ける「空き時間おしごとアプリ」です。 この記事ではメルカリ ハロを作るにあたり、どういった技術スタックやアーキテクチャを選定したのか、さらにその背景と意思決定をご紹介したいと思います。 この記事で得られること メルカリ ハロで採用されている技術スタックやアーキテクチャの全体像 その意思決定の理由とプロセス これから新規サービスを立ち上げるうえでのヒント 主な技術スタック メルカリ ハロで利用されている主な技術スタックは以下のとおりです。 バッ

    メルカリ ハロの技術スタックとその選定理由 | メルカリエンジニアリング
  • 1年前の自分が読みたかった、データエンジニアリング入門 - Qiita

    はじめに 記事は、trocco® Advent Calendar 2023の9日目の記事になります。 trocco®だけを取り上げるわけではありませんが、この内容をおさえておくとその価値や使い方が理解しやすいと思いますし、もちろんユーザー以外でもデータエンジニアリング入門として読んでいただければと思います。 さて、私は今年の2月にtrocco®を提供する株式会社primeNumberに転職し、現在はtrocco®を利用したデータパイプライン/BIツールによるダッシュボード構築などを行っています。 前職は広告代理店でTableauを使ったマーケティングデータ分析を行っていたのですが、総合職の異動でたまたまデータ関連部門にいただけですし、プログラミング経験もなかったので、異業種異職種への転職でこの1年はめちゃくちゃ勉強をしてきました。 エンジニア出身の方向けには、『実践的データ基盤への処方箋

    1年前の自分が読みたかった、データエンジニアリング入門 - Qiita
  • 2024年のPythonプログラミング - Uzabase for Engineers

    ソーシャル経済メディア「NewsPicks」で推薦や検索などのアルゴリズム開発をしている北内です。Pythonは頻繁に新機能や便利なライブラリが登場し、ベストプラクティスの変化が激しい言語です。そこで、2024年2月時点で利用頻度の高そうな新機能、ライブラリ、ツールなどを紹介したいと思います。 この記事では広く浅く紹介することに重点を置き、各トピックについては概要のみを紹介します。詳細な使用方法に関しては各公式サイト等での確認をおすすめします。なお、記事ではOSとしてmacOSを前提としています。 環境構築 Pythonの環境構築はpyenvとPoetryの組み合わせがもっとも標準的でしょう。 以下の手順でpyenvとPythonをインストールできます。 brew install pyenv # Bashの場合 echo 'eval "$(pyenv init -)"' >> ~/.ba

    2024年のPythonプログラミング - Uzabase for Engineers
  • Exceptional Logging of Exceptions in Python

    Aaron Maxwell is author of Powerful Python. Exceptions happen. And as developers, we simply have to deal with them. Even when writing software to help us find burritos. Wait, I’m getting ahead of myself… we’ll come back to that. As I was saying: How we deal with exceptions depends on the language. And for software operating at scale, logging is one of the most powerful, valuable tools we have for

    Exceptional Logging of Exceptions in Python
    zima0314
    zima0314 2024/05/28
    [Logging]
  • Top Ruby Companies

    Explore Top Ruby Companies Around the World Discover top Ruby companies worldwide and see the impact of the programming language that focuses on developer happiness.

    Top Ruby Companies
  • VSCode Remote Containers を利用して最強のローカル開発環境を作りたい - Qiita

    はじめに VSCodeの神拡張機能であるRemote Containersの自分なりの設定の紹介です 公式サンプルは公開されていますが、そのままだと流石に使いずいので自分なりに使いやすいように編集した設定を紹介します なお、記事で紹介する設定ファイルは全て以下のリポジトリで公開しています(紹介していない環境のものも入っています) https://github.com/sabure500/remote-container-sample また、Remote Containersを使ってみて良いなと思ったので色々使いやすいように設定を弄っていますが、記事は最強のローカル環境を「作りたい」なので、ここをこうした方が良いといった案があったら是非教えてくれると嬉しいです VSCode Remote Containers とは VSCode拡張機能であり、使用することでコンテナの中でVSCode

    VSCode Remote Containers を利用して最強のローカル開発環境を作りたい - Qiita
    zima0314
    zima0314 2024/05/14
    [Devcontainer]
  • VSCode Devcontainer 放浪記

    Docker でローカルテストを行っている皆様,いかがお過ごしでしょうか 皆様おはようございます.かさいです.今年一年, VSCode の Devcontainer の様々な所でコケまくったり,色々な知見があったので Devcontainer について知識整理を行い,ついでにその経験を VSCode Advent Calendar 2022 に奉納することにしました. よろしければ Advent Calendar の他の方々の記事も見ていってください. この記事では,Docker についての事前情報がある方を対象に, Devcontainer とはどういうものなのか,なぜそれを使いたがるのか,一般的な Docker コンテナの構築指針とどういった違いがあるのかを整理していきます. Devcontainer をすでに使っている方にも助けとなるような記事を目指して書きましたので最後まで見ていっ

    VSCode Devcontainer 放浪記
    zima0314
    zima0314 2024/05/14
    [Devcontainer]
  • CTOのいない会社にEMとして入社するあなたに 

    私は今までのキャリアの中で、CTOのいない会社に3回入社してきました。うち2社はEMとして入社してVPoEになりました。そこでの反省はもちろんありますが、成果を出すことができました。そして1社は、なんと3週間で退職しました…。 OPENLOGI Advent Calendar 2023で今年は何を書くか考える中で、私のようにCTOがいない会社に何度も入社した経験があるEMはそうそういないのではないかと思いました。将来CTOのいない会社に入社するCTO・VPoE・EMといったマネジメント層の方に、私の経験から学んだことを参考にしていただければと思います。 ※OPENLOGIには現在CTOは在籍しております。 CTOのいない会社とは CTOのいない会社とは、エンジニア組織のトップであるCTO・VPoE・開発部長といった立場の人がいない、もしくは、トップはいるけれど何らかの理由(トップがエンジニ

    CTOのいない会社にEMとして入社するあなたに 
    zima0314
    zima0314 2024/05/04
  • 明日からあなたは CTO です

    前書き こんにちは。株式会社カナリーで CTO を務めておりますどらです。唐突ですが、 「明日からあなたは CTO です」 と言われたらどうしますか? 「う〜ん、どうしよう?🤔」 となる方も多いのではないでしょうか。 実際、どうアプローチするのかという部分は人それぞれだと思いますし、その人がどういう受け取り方をするかによって「その人が CTO を務める価値」、つまりクリエイティビティや"味"が出てくるのかなと思います。それによって組織がどの様な方向に向かうのか、どの様な価値基準を持ちどの様な文化になるのか、結果会社がどういったバリューを出していけるか、といった部分が決まってくるのだと思います。 なので一概に何が正解であるとかそういった話ではないとは思いますが、私が考えた事などを共有する事でもしかしたら今後同じ様な状況になった方の参考になるかもしれない、あるいは思想やアプローチに共感して頂

    明日からあなたは CTO です
    zima0314
    zima0314 2024/05/04
  • zennの記事をラクに書くための私の方法

    はじめに 平下CTO@sweeepです。最近弊社ではテックブログ | sweeep Blog Hubをはじめました。こちらは個人のテックブログを紐付けるHubとなっていて、大半のメンバーはzennで記事を書きはじめたところです(わたしもですが)。そこで、メンバーから要請があったのでzennの記事のラクに書くための私なりの方法を書いてみようと思います(zenn書き始めたばかりなので、よりよいやり方があれば教えて欲しいです)。Tech系とIdea系でちょっと書き方変わるので、共通部分/Tech系/Idea系、最後にGitHub連携する方法を記載しています。 共通 まずはブログネタのインプット まずはインプットですが、弊社ではSlackblogチャンネルへ弊社と技術スタックが似ている、または弊社の先をいっている主要なテックブログからRSSフィードを通知して定期的にチェックしています。定期的にイ

    zennの記事をラクに書くための私の方法
  • スタートアップのCTOとして何を考え何を変えたか

    はじめに 平下CTO@sweeepです。sweeepにフリーランスとして関わったのが2021年5月、CTOに就任したのがその年の6月半ばでした。まだ1年経過していませんが、sweeepのCTOに就任してから何を考えて何を変えたのかについて書いていきたいと思います。 以下の内容となっております。 タスクファーストからチームファーストへ 会計指標で考える 技術負債とアーキテクチャの刷新 現在地と将来展望 1. タスクファーストからチームファーストへ タスクファーストで社内受託状態 就任当初はBizからDevへ直接要望や修正を依頼するという、タスクファースト状態でした。Notionに積まれた要望や修正のタスクをこなす日々。はっきりってうまくいってなかったです。 その時の開発者の心の声: 変更した箇所に対し、使えなくなったと言われるけど、どっちが正しい? こっちの仕様の方がいいと思うけど、マネージ

    スタートアップのCTOとして何を考え何を変えたか
    zima0314
    zima0314 2024/05/02
  • マリオで学ぶSOLID原則

    はじめに 最近オブジェクト指向とデザインパターンについて学び始めたので、勉強しつつ記事にまとめていきたいと思います。 初回はSOLID原則についてです。SOLID原則はオブジェクト指向プログラミングにおいて、開発者にとって読みやすく、メンテナンスが可能なプログラムを作成しやすくするために考えられたルールです。 この記事では、オブジェクト指向プログラミングの重要な開発原則であるSOLID原則について皆さんが想像しやすいマリオのクラス実装を例に解説していきます。 1. S (Single Responsibility):単一責任の原則 クラスは単一の責任を持つべきと言う原則です。 ここでの責任というのは、オブジェクトが持っている機能のことです。 一つのクラスができる機能(責任)が複数あると、クラス内部の関数が強い結合を起こす可能性が高ま理望ましくありません。 次のマリオクラスを見てみましょう。

    マリオで学ぶSOLID原則
  • オブジェクト指向のリ・オリエンテーション~歴史を振り返り、AI時代に向きなおる~

    Object-Oriented Conference2024 基調講演(2024.3.24Sun)のスライドです。 オブジェクト指向という考え方がプログラミング言語Simula(Simula I:1962、 Simula67:1967)の影響のもとでAlan Kayによって1970年前後に生まれてから半世紀以上が過ぎた今、その歴史的な功罪を素直な目で振り返り(reflection)たい。そのうえで改めて「オブジェクト指向」という言葉・概念・思いの意味を、プログラミングや設計を踏まえたソフトウェア工学だけでなく、言語・哲学・文化といった観点からも広く見直してみたい。そうすることで新たな気持ちを込めて、「Objectオブジェクト」「Orientation指向」に生成AI・大規模言語モデル時代である現在において意味のある概念としてしっかりと向き直りたい(リ・オリエンテーション)と思う。それは新し

    オブジェクト指向のリ・オリエンテーション~歴史を振り返り、AI時代に向きなおる~
    zima0314
    zima0314 2024/04/28
    [SOLID][Liskov]
  • BigQueryで利用しているSQLFluffルールを公開してみる

    はじめに SQLの書き方は開発対象や人・チーム事情によっても様々なので、チーム開発で利用しているSQLFluffの設定を公開してみる。 なぜこのような設定・ルールになったか理由を紹介します。 ちなみに、私達のチームではBigQueryで比較的多くのカラム数やstruct型によるネスト構造を扱っているので、他のDBや他のチームでは合う/合わないはあるかもしれない。 SQLFluff 設定 下記がチームメンバーで合意した SQLFluff 設定。 なお、下記参考として公式の Rules Reference です。 [sqlfluff] dialect = bigquery max_line_length = 120 exclude_rules = # joinするときTable Aliasを使いたいので除外する aliasing.forbid, # Table Aliasのas句の省略ができる

    BigQueryで利用しているSQLFluffルールを公開してみる
  • A day in Pivotal ~ピボタルでの1日 午前編~ | RakSul Official Blog

    昨年10月から始まったPivotal社との協業プロジェクト。社内でも「Pivotal」というワードはよく聞くようになったものの、Pivotalとのプロジェクトが具体的にどのように進められているのか、実は社内でもあまり知られていない。それだったら・・・と、年の瀬が迫った12月某日午前8時45分、ラクスルから半ば“出向中”のプロジェクトメンバーの1日に密着すべく、Pivotalジャパンのオフィスに到着。 壁一面のコーポレートカラーが目を惹くすっきりとした受付を抜け、その先に広がるラウンジスペースでは、すでに朝をとりながら談笑をするグループが何組もテーブルについていた。朝は毎朝無償で提供されるらしい。曜日によって変わるそのメニューは種類も豊富で、美味しそう。朝を目当てに時間に余裕を持って出社する社員も多く、この時間はチームにとっても大切なコミュニケーションの時間になっているそう。 ▲六

    A day in Pivotal ~ピボタルでの1日 午前編~ | RakSul Official Blog
  • GitHub Copilot Tips and Tricks

    30分でわかるシステム運用アンチパターン / Operations Anti Patterns in 30 minutes

    GitHub Copilot Tips and Tricks