タグ

プログラミングに関するglass-_-onionのブックマーク (11)

  • SQL滅ぶべし | ドクセル

    SQL • リレーショナルデータベースシステムと会話するための言語 • 1970年 Codd が RDB モデルと同時に提案 (Alpha言語) • 1974年 Chamberlin と Boyce が改良 • 元々は SEQUEL (Structured English Query Language) だったが、商標登録されていた • 読み方は エスキューエル とそのまま読む (Glliespie 2012)

    SQL滅ぶべし | ドクセル
    glass-_-onion
    glass-_-onion 2024/05/07
    SQLはプログラミング言語じゃないので出発点が間違ってる気がする。Tutorial D的な話ならわかるけど、ただのORM特化のDSLの話をしても同意を得るのは難しいと思う。
  • デジタル庁のサイト、その後… - Qiita

    はじめに 第1弾で多くの評価と批判をいただきました。 そして、第2弾もそこそこの評価をいただきました。 第3弾は全くの不発でした。 そして2023年11月1日、正式にリニューアルがされました。 今回第4弾はリニューアルされたデジタル庁のサイトについて書いていきます。 Next.jsからDrupalへ まず、試作版のデジタル庁のサイトがこちらです。 今現在は試作版のサイトが閉鎖されていて、手元にスクショがなかったので、webarchiveから取得しました。 こちらがデジタル庁のサイトです。 最初見た時、「そのまま試作版のサイトを番サイトにしたのねん」と思いました。 しかし、よくよく調査すると、大きく変わっていることに気づきました。 なんと、Next.jsからDrupalに変わっているではないですか!!! これはびっくりしました。第一弾の記事で、デジタル庁のサイトにNext.jsが使われてい

    デジタル庁のサイト、その後… - Qiita
    glass-_-onion
    glass-_-onion 2023/12/14
    昨日リリースされた https://services.digital.go.jp/ はReact + ヘッドレスCMS構成で開発されているようです。
  • フロントエンドのディレクトリ設計思想

    はじめに フロントエンドのディレクトリ構成、世の中に色んな「推し」が有って悩みますよね。 例えば、、、 さらに最近は、App Directoryの登場や、それに合わせたNext.js公式の「推し」構成がドキュメント化されたりと、さらに色々なパターンが出てきています。 記事の趣旨 記事では、具体的な構成そのものではなく、 様々ある構成を横串で見通して整理できる設計思想を紹介します。 新しい推し構成の紹介ではなく、構成を考えたり決めたりするときに役立つ抽象的・汎用的な指針を提供できればと考えています。 基となる考え 分割の方向 一般的に、アーキテクチャにおける分割には2つの方向が有ります。 (出典も良書なのでリンクを貼っておきます: https://www.amazon.co.jp/dp/4873119820) これはディレクトリにおいても同じだと思っていて、筆者は分かりやすさのために

    フロントエンドのディレクトリ設計思想
    glass-_-onion
    glass-_-onion 2023/12/05
    Pnpmのワークスペースを使ってモノレポ構成を作ってからページ側をFeature型、コンポーネント側をLayer型で分けてることが多い
  • プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers

    こんにちは、ソーシャル経済メディア「NewsPicks」のむとうです。 先日から『Ghost of Tsushima』の開発者が書いた『ルールズ・オブ・プログラミング』というをちょっとずつ読み進めていて、プログラミング熱が高まっています。このは大きな指針を示すだけで具体の話をするものではないのですが、読み物として面白いので私も似たようなことをやってみたくなりました。 何年もこういう仕事をしているとバグが入るパターンというのが見えてきます。そしてだいたいどこに行っても何の仕事でも似たようなことをすることになるのですが、今回の話もその一つです。 構造化テキストを文字列結合で作らない、置換でいじらないというのはこれだけみると何のことか分かりづらいかも知れませんがSaaS Product Team セキュアコーディングの啓蒙 第2回 (SQL インジェクション編)の内容とある面では同じ話です。

    プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers
    glass-_-onion
    glass-_-onion 2023/12/04
    フロントエンドの経験が浅いからかURLの組み立てを文字列結合でやっちゃうことが多い。この記事読んだ後いくつかのプログラムを急いで直したw
  • Nimを知ってほしい2022

    Nimを知ってほしいという記事があり、Nimを知らなかった人々向けに最初の紹介として大変な貢献をしてくださりました。 しかしまだNimを使ったプロダクトというのも少なく、競プロではチラホラ見かけるものの、人々の中にある意識としては「気になっています」という域を越えられていないのも事実です。 そこで今回は企業での意思決定をする人や、5年以上の経歴があるエンジニア向けに、Nimを書いてみようと感じてもらうことを目的に、先日私が登壇したみんなのPython勉強会#79 『Pythonistaに伝えたいNimの魅力』に加筆して投稿してみたいと思います。 Nimって何? 2008年から開発が始まった新しいプログラミング言語です。 「Pythonに型が付いて、Goみたいに高速に、バイナリになってOSの実行環境に依存しないで動いてくれる言語ないかな〜」という全プログラマーの夢を叶えてくれる言語です。 書

    Nimを知ってほしい2022
    glass-_-onion
    glass-_-onion 2022/04/04
    PandasとNumPyに相当するライブラリがあるのであれば使ってみたい。
  • 業界6年目で考えが変わったソフトウェア開発のトピック

    chriskiehlのブログより。 考えを改めたもの 過去の自分なら言い争っていたであろうことが、今では信じられるようになったこと。 様々な経験レベルを持つ人がいるチームで仕事をする場合は、型付き言語の方が適している スタンドアップは、実際に新人を注目するのに役立つ スプリント・レトロスペクティブは、実際の軌道修正のためのものであって(「つまり、なんてこった、うまく行かなかった!」)、皆の時間を無駄にするようなアジャイル/スクラムマスター的なものでない限り、その場に相応しいものである ソフトウェア・アーキテクチャは、おそらく他の何よりも重要である。優れた抽象化のクソみたいな実装は、コードベースに正味の害を与えません。悪い抽象化や欠落したレイヤーは、すべてのものを腐らせる Javaはそれほどひどい言語ではない 巧みなコードは通常、良いコードではない。明瞭さは、他のすべての懸念事項に勝る どん

    glass-_-onion
    glass-_-onion 2021/02/03
    採用向けの技術課題を作成している側の人たちにぜひ読んでほしい内容。「エンジニアと呼ばれているにもかかわらず、ほとんどの決定は、裏付けとなる分析、データ、数値を持たない純粋なカーゴ・カルトである」
  • LINEの新卒採用試験ズバリ問題解説~アルゴリズム問題編~

    LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog (2月5日 16:30追記) SNS等で多くのご指摘をいただき、再度掲載していたコードや表現について社内で議論いたしました。それを踏まえて以下の通り、補足および訂正させていただきます。 エラトステネスのふるいの実装方法については、高速化のための実装ではなく、アルゴリズムなどの勉強をしっかり行ってきたか、ということを示すための1例として紹介しましたが、あたかも高速化を目指したコードとしての例示となり、誤解を招く表現でした。上記の意図を明確にするために、文中に高速化するための実装ではないことを明記しました。 また、"個性がない"という表現も、上記と同様に"アルゴリズムなどの勉強をしっかり行ってきたという実績や経験がコードから判断

    LINEの新卒採用試験ズバリ問題解説~アルゴリズム問題編~
    glass-_-onion
    glass-_-onion 2021/02/02
    プログラムは要件に合わせて書くものだから問題文にどのくらいの処理性能を要求するかくらいは書くべき。人を選定する気持ちで問題作ると悲しい感じになる。あとプログラムに個性はいらない可読性めっちゃ下がる
  • Goでミドルウェアとインターセプターのテストをする方法

    はじめに この記事では HTTP のミドルウェアと gRPC のインターセプターのユニットテストの方法について紹介します。 HTTPミドルウェアのテスト gRPCインターセプターのテスト HTTP のミドルウェアや gRPC のインターセプターといえば Web サービスの共通処理の実装が集中する場所です。共通処理であるが故に開発初期に作り込んで後から手を入れることが少ないという特性があります。あまり手を入れることがないからといってユニットテストを省いてしまうと、あとから機能追加したり、バグを発見したりしたときに慌てることになります。共通処理が集まるコードはいざという時に備えてしっかりユニットテストをしてあげましょう。 HTTPミドルウェアのテスト まずは HTTP ミドルウェアのテスト方法を見てみます。 テスト対象のミドルウェア 以下の HTTP ミドルウェアのコードをテストします。コンテ

    Goでミドルウェアとインターセプターのテストをする方法
    glass-_-onion
    glass-_-onion 2021/01/16
    記事を書きました。
  • GCPで理想の構造化ログを出力する方法

    はじめに この記事では、GCP のマネージドサービス(Google App Engine[1]/Cloud Run/Cloud Functions/GKE)から Cloud Logging に良い感じの構造化ログ(理想の構造化ログ)を出力する方法について紹介します。 良い感じのログの例 前提条件 この記事で紹介する構造化ログの実装は基的に以下の仕様にそって実装しています。重要な仕様なので興味のある方は一度読んでみることをおすすめします。 構造化ペイロードの特殊フィールド 用語の解説 編に入る前に、この記事で使われるログ出力まわりの用語をまとめておきます。以下の用語については前置きなく使いますのでよろしくお願いします。 構造化ログ[2] プレインテキストではなく、JSON等のデータ形式で出力されたログのこと GCPのCloud Logging(旧Stackdriver Logging)で

    GCPで理想の構造化ログを出力する方法
    glass-_-onion
    glass-_-onion 2020/12/25
    記事を書きました。初zenn投稿です。
  • Time型をJSONに変換するとtime.Locationの情報が欠落する場合の対処法 - A Day In The Life

    Time 型のフィールドを含む構造体を JSON にエンコード、JSON からデコードすると特定条件下で Time 型オブジェクトの time.Location の情報が失われることがあります。 以下のプログラムを見てください。 package main import ( "fmt" "time" "encoding/json" ) type Hoge struct { Name string CreatedAt time.Time } func main() { time.Local = time.UTC // Hoge構造体を生成する h1 := Hoge{ Name: "aaa", CreatedAt: time.Unix(1593077427, 0), } // Jsonsに変換 j, _ := json.Marshal(h1) // Jsonから復元する h2 := Hoge{}

    Time型をJSONに変換するとtime.Locationの情報が欠落する場合の対処法 - A Day In The Life
    glass-_-onion
    glass-_-onion 2020/07/13
    ローカル時間をUTCにするとreflect.DeepEqualが常にfalse判定されちゃう時の対処法を書きました
  • さよならアーキテクチャ議論|Seiji Takahashi@ベースマキナ

    ポエム。 つまり?予算やチームのリテラシーに合わせて最速で作れて、チーム内で「俺ら高凝集低結合だなー」と思えるなら、アーキテクチャはなんでもいいと思えてきました。 前提・まだ割と収益が安定してないプロジェクトでの話です。お金があるなら好きにやりましょう。Go Bold。 ・DDDやクリーンアーキテクチャがダメとは言ってないです。むしろ自分は直近そこまで厳格ではないクリーンアーキテクチャでAPI書いてます。 ・以前こういうポスト書くくらいにはアーキテクチャのこと試行錯誤してました。 アーキテクチャ導入議論への疲労以前僕は、DDDやクリーンアーキテクチャを導入するという話が出ると積極的に顔を出すようにしていました。でも、最近は「導入しましょう」「既に適用してあるのでキャッチアップしてください」などの議論をするのに少し疲れてしまい、足が重くなったように感じます。もうおじいちゃんなので体力がないん

    さよならアーキテクチャ議論|Seiji Takahashi@ベースマキナ
    glass-_-onion
    glass-_-onion 2020/06/30
    クリーンアーキテクチャの話題でユニットテストについて語られずレイヤーの話に終始している点が非常に残念。アーキテクチャがグタグタだと事業のスピードに追いつけず負債が溜まって行くので常に改善が必要
  • 1