タグ

プログラムに関するsirobuのブックマーク (63)

  • Postgres と MySQL における id, created_at, updated_at に関するベストプラクティス

    読者対象 ある程度データベースに関する知識を持っている,経験年数 1 年以上のバックエンドエンジニア 特定のプログラミング言語に依存する部分は含めないため,すべての SQL 使用者を対象とする また,ゼロからの丁寧な説明というよりは,リファレンス感覚で使える記事という形にまとめる。 RDBMS の対象バージョン PostgreSQL: 9.4 以降 MySQL: 8.0.28 以降 id (データ型と INSERT 時のデフォルト埋め) 導入 一般的に採用されやすいプライマリキー用の値として,以下を考える。 連番整数 MySQL では AUTO_INCREMENT, Postgres では IDENTITY や SERIAL と呼ばれるもの UUID v1: ハードウェアごとにユニークな単調増加値 UUID v4: ランダム値 UUID v7(ドラフト): 単調増加であるタイムスタンプとラ

    Postgres と MySQL における id, created_at, updated_at に関するベストプラクティス
  • 未経験から1ヶ月!Pythonで観る将ライフを向上させた話(プログラム編)

    まとめプログラミング未経験から1ヶ月ほどで、将棋の評価値の新たな方法でのグラフ化を行うPythonツールを作った。 https://github.com/k-the-p/notherscore この記事は2立てです。プログラミングより結果のグラフや将棋に興味がある方はもう一方の将棋編から読むことをおすすめします。 未経験から1ヶ月!Pythonで観る将ライフを向上させた話(将棋編) 目標評価値以外の観る将の楽しみとして、手の広さの可視化を提案するAIはわれわれアマチュアの将棋への親しみを大幅に向上させてくれた一方で、棋士が悩みに悩んだ結果として評価値が下がる手を指してしまったときに、「悪手きたwwww」と騒ぐ主にABEMAのコメント欄には忸怩たる思いがあった。 とはいえ、もう評価値を知らなかった時代に後戻りするなんてことは誰にもできないだろう。そして、電王戦から将棋にハマった自分自身とし

    未経験から1ヶ月!Pythonで観る将ライフを向上させた話(プログラム編)
    sirobu
    sirobu 2022/01/07
    手っ取り早く動かせる物を作るためにincludeとかimportの説明を「おまじない!」で端折る教え方多いけど、何のためにくらいは説明した方がいいんだろうなー、と思った
  • https://twitter.com/gobaSec/status/1477284596551421953

    https://twitter.com/gobaSec/status/1477284596551421953
    sirobu
    sirobu 2022/01/02
    どうしてもそう持ちたいならstrにしとけと
  • オラクル、Oracle JDKを再び無料提供へ、本番環境でも利用可。昨日リリースのJava 17から

    オラクルは、同社が提供している企業向けのJavaディストリビューションであるOracle JDKのライセンスを変更し、無料で番環境などでの利用を可能にしました。 同社が9月14日付で公開したブログ「Introducing the Free Java License 」で、次のように説明しています(関連するプレスリリース「Oracle Releases Java 17」)。 Oracle JDKを無料で提供し、四半期ごとのセキュリティアップデートも提供する。 新ライセンス「Oracle No-Fee Terms and Conditions (NFTC)」は、商用利用や番環境での利用を含むすべてのユーザーに対して無料での利用を許可する。 Oracle JDK 17から、この無料のリリースとアップデートの提供を開始する。これは次の長期サポート(LTS:Long Term Support)が

    オラクル、Oracle JDKを再び無料提供へ、本番環境でも利用可。昨日リリースのJava 17から
    sirobu
    sirobu 2021/09/15
    迷走してんなぁ……結局各クラウドがディストリビュートするJDK使うことになりそう
  • [速報]マイクロソフト、自然言語をプログラミング言語にAIで変換、新ノーコード機能をPower Appsに搭載。AI言語モデル「GPT-3」を採用。Microsoft Build 2021

    [速報]マイクロソフト、自然言語をプログラミング言語にAIで変換、新ノーコード機能をPower Appsに搭載。AI言語モデル「GPT-3」を採用。Microsoft Build 2021 マイクロソフトは、オンラインで開催中の開発者向け年次イベント「Microsoft Build 2021」で、ローコード/ノーコード開発ツール「Power Apps」に、英語で説明すると自動的にその機能をプログラミング言語の「Power Fx」に変換してくれる新機能の搭載を発表しました。 Power FxExcelの数式をベースにしたプログラミング言語で、今年の3月に発表されたばかりです。 参考:Excelの数式をベースにしたプログラミング言語「Microsoft Power Fx」登場。オープンソースで公開予定。Microsoft Ignite 2021 これによりプログラミングせずに、Power A

    [速報]マイクロソフト、自然言語をプログラミング言語にAIで変換、新ノーコード機能をPower Appsに搭載。AI言語モデル「GPT-3」を採用。Microsoft Build 2021
    sirobu
    sirobu 2021/05/26
    ここ、既存通りの仕様でお願いします
  • PEP 8騒動について - methaneのブログ

    今週PEP 8の小さい変更についてMLで騒動が起こってしまいました。 該当のコミットはこれです。 PEP 8: Change requirement to adhere to Standard English (#1470) · python/peps@0c6427d · GitHub 変更点はごくごくシンプルなものです。 - When writing English, follow Strunk and White. + Ensure that your comments are clear and easily understandable to other + speakers of the language you are writing in. 今まで知らなかったのですが、変更前の "Strunk and White" とは The Elements of Style というすご

    PEP 8騒動について - methaneのブログ
    sirobu
    sirobu 2020/07/03
    “英語ネイティブじゃない人に英語の読み書きを強制させることは英語=Standard、英語社会優位のバイアスを強化してしまってる”Pythonを英語で書かないといけないこと自体が英語社会優位のバイアスじゃね?
  • 導入が"Hello World!"ってクソつまんないな

    もっと色々なことがしたいと思ってプログラミングやろうと思ったんだけど 環境構築一生懸命やって、さあ始めようってとき「Hello World!」ってなんなんだよ なんか黒い画面に文字が出るのってあんまり感動しないんだよな だって入力したらでるんだぜ?キーボード叩けばいいだけなんだし、遠回りして入力しているって感じがして実にときめかなかった はてなはプログラムカキカキ職の人が多い傾向にあるけど、みんなHello World!でスゲー!ってなったの? 今だったらHello Worldじゃなくてこれ教えるなーっていうのあったりするの?

    導入が"Hello World!"ってクソつまんないな
    sirobu
    sirobu 2019/10/04
    この物語(セカイ)はラスト1秒でひっくり返る
  • ジャバの異常な愛情 またはSpringはいかにしてモダンであることを止めて時代遅れになったのか - Qiita

    Spring以前 RPC 業務で使うシステムはサーバー間で連携することが多い。2019年現在ではREST apiに対してjsonやprotocolbufferで呼び出す事が当たり前のように行われているが、まだjsonも発見されていない時代はもっと複雑な仕組みが取られていた1。異機種間でやりとりするためのCORBAや、機種に依存しないデータプロトコルのASN.1なども利用されていたが、仕様は複雑でそれぞれをハンドリングするライブラリは有償で売られ、ベンダーからサポートを受けながら使用するようなものだった。 RMI Javaの世界ではJava同士でやりとりするためのRMIが定義され、比較的に楽にRPCできるようになった2。とはいえhttpでrestをコールすることに比べたらアホみたいな複雑さである。 https://docs.oracle.com/javase/jp/1.3/guide/rmi

    ジャバの異常な愛情 またはSpringはいかにしてモダンであることを止めて時代遅れになったのか - Qiita
    sirobu
    sirobu 2019/10/04
    タグにもある通り昔話であって発展性がないのが残念。で、ここから先はなにを選べば?
  • Java EE 8フル互換の「Jakarta EE 8」がEclipse Foundationから正式リリース。これからはクラウドネイティブのためのフレームワークへと進化する

    Java EE 8フル互換の「Jakarta EE 8」がEclipse Foundationから正式リリース。これからはクラウドネイティブのためのフレームワークへと進化する エンタープライズ向けアプリケーションのためのJavaフレームワークとして知られている「Java Enterprise Edition」(Java EE)は、2017年9月にその策定主体をオラクルからEclipse Foundationに移管することが発表されました。 それまでJava EEは開発の遅延がコミュニティから指摘されており、Java EEの開発はコミュニティの手に委ねられたわけです。 ただし移管にあたり「Java EE」などのブランド名はオラクルが保有したままであったため、Eclipse FoundationではJava EEに代わる新しいブランド名として2018年3月に「Jakarta EE」を発表します

    Java EE 8フル互換の「Jakarta EE 8」がEclipse Foundationから正式リリース。これからはクラウドネイティブのためのフレームワークへと進化する
    sirobu
    sirobu 2019/09/13
    グッバイJava EE
  • 日商プログラミング検定 | 商工会議所の検定試験

    プログラミングスキルに特化した試験 プログラミングスキルの習得に関する事項を中心とした試験内容・試験範囲としています(IT全般の試験ではなく、学習・試験範囲をプログラミングに関するものに限定)。

    日商プログラミング検定 | 商工会議所の検定試験
    sirobu
    sirobu 2018/11/16
    日商がプログラミング検定って… しかもいきなりSAOコラボ
  • この処理Pythonでどう書く? - エムスリーテックブログ

    EF15形は高性能な電気機関車であったが、引き出し性能が蒸気機関車に劣ると誤解されていた。 誤った運転方法により来の性能を引き出せていなかったのである。 (spaceaero2 [CC BY 3.0], ウィキメディア・コモンズより) こんにちは、エムスリー・エンジニアリングG・基盤開発チーム小です。 WEBサイトは RailsやSpringなどの「体部分」だけでは完結しません。レポート作成・データ更新などの細かい処理も必要です。 過去にはこうした用途にはBashがよく使われました。しかし、Bashは落とし穴が多かったり、クラスなどの抽象化機能がなかったりして、規模が大きくなると辛くなります。 そこで、Bashの代替候補に挙がるのがPythonです。エムスリーでもかつてはBashを使っていましたが、現在は新規案件にはPythonを推奨しています。 しかし、実際にPythonで書き直そ

    この処理Pythonでどう書く? - エムスリーテックブログ
  • サクラエディタ GitHub 移行 - clock-up-blog

    概要 日製 OSS のテキストエディタである サクラエディタ はずいぶんと前から SourceForge.net 上で Subversion 管理されている。 ずいぶんと長い間サービスを継続していただいている SourceForge に感謝の念は尽きない。が、今の時流としては SourceForge による Subversion 管理を続けるよりも、機会があれば GitHub 側に移行したほうが機能追加や修正等のプルリクエストを受け付けやすくなり、品質の向上に繋がるのでは、というのが自分の所感。 今回はコミュニティに対しては事後承認的な形で、サクラエディタ V2(UNICODE版) 部分のリポジトリを GitHub に移行してみる。 コミュニティの承認が得られれば今回の GitHub 移行を正式なものとみなし、更なる整備を進めたい。 移行結果(コミュニティの承認待ち) 移行元: http

    サクラエディタ GitHub 移行 - clock-up-blog
    sirobu
    sirobu 2018/05/21
    id:overkitten SIer勤務だと触る案件なくて使ったことない人多いかと
  • 1行直すだけってそんなに大変なの?

    どこの会社でも「1行直すだけでしょ? そんなに大変なの?」ということを何度も聞かれる (もしくは言外にそのニュアンスを含められる) ので毎度説明するのだけれど、「いや、そう思うだろうけれど大変なんですよ」以外に答えられていなくて、自分でもあまりうまい答えではないなと感じるのでまじめに考えてみた。 まず大前提として1行を修正するのに当に言われるがままにその1行を直すのであればそれは作業者で世の中にエンジニアなんて職業はいらないわけで、ぼくらの付加価値は1行を直すときに1行の外にあるものを想起できるから価値があるわけです。 じゃあ、どんなことを考えているかというと、まずたいていそんなすぐに安請け合いできないシステムというのは1行を直すときに影響を受ける行数というのは10行や20行ではないことが多い。そこで影響範囲を考えます。途端にこれが1万行になったりする。すると、1万行へ影響が出るのにこれ

    1行直すだけってそんなに大変なの?
    sirobu
    sirobu 2018/01/11
    一行直すだけで他に影響も与えないのは自明なのに、呼び出されてる箇所が多くて無影響確認にエラい時間取られることもあってしんどい
  • SoftwareDesign2018年1月号「使えるシェルスクリプトの書き方」特集が面白かった件 | DevelopersIO

    AWSを日常的に触っていると、シェルスクリプトを書く機会が山のようにあります。あるんだけれど、どうにも考え方が特殊というか、他の一般的なプログラミング言語とは扱い方が違うというか、使いこなせて無い感を強く持ってました。 そんな折、SoftwareDesign2018年1月号でシェルスクリプト特集があったので、渡りに船とばかり購入して読んでみたところ、むっちゃええ感じの特集だったのでここに紹介いたします。 普段からシェルスクリプト書いているんだけれど、「これで良いんかなぁ」というモヤモヤ感をお持ちの方には有用なヒントが満載の特集だと思いますYO __ (祭) ∧ ∧ Y  ( ゚Д゚) Φ[_ソ__y_l〉     シェルスクリプトダワッショイ |_|_| し'´J 以下、コマンド例は、bashを前提としています。 第1章「使えるシェルスクリプトにするために」 最初の章では、「使えるシェ

    SoftwareDesign2018年1月号「使えるシェルスクリプトの書き方」特集が面白かった件 | DevelopersIO
    sirobu
    sirobu 2018/01/10
    これは気になる
  • 【更新あり】PC-9801のプログラム(ソースコード無し)をリバースエンジニアリングしてくれ!→変態技術の塊なことが判明しました

    まとめ 発注額の桁が違う?PC-9801用アプリケーションの解析業務が話題に 20年以上前の見積もりシステム(?)の解析と仕様を起こすお仕事です。 どうも単純に逆アセンブルしただけでは全体は見えてこなさそうな雰囲気です。 発注側は何とか「単純」な仕事にしたいようですが、個人的にはこういった仕事にありがちな、蓋を開けてみると全く簡単じゃなかった案件じゃないかとみております。 22832 pv 66 4 users 156

    【更新あり】PC-9801のプログラム(ソースコード無し)をリバースエンジニアリングしてくれ!→変態技術の塊なことが判明しました
    sirobu
    sirobu 2018/01/01
    話題になったおかげで知的興味を満たせた受注者と正しい発注額がわからなかった発注者のどちらもが得になった良い話…かなぁ?
  • 2017年一番人気のあるエディタは何だったのか?転職ドラフトのデータから読み解く、人気エディタ徹底分析!|転職ドラフトReport

    「いま、どのエディタが一番人気なのか」 宗教戦争※になぞらえるほどの議論を巻き起こすこの問題に、転職ドラフトチームはデータから答えを出してみたいと思います。 すでに登録済みの方はご承知のとおり、転職ドラフトの登録フォームには「好きなエディタ」を入力する項目が用意されています。そのデータを集計の上、審査を通過したユーザーのみを対象として、「昨対比」「年代比」「言語別」といった多視点から分析を行なってみました。 さて、あなたが愛用するエディタはいったいどこに位置しているでしょうか?(どんな結果になっていても怒らないでください…) 【集計対象】 転職ドラフトの審査を通過したユーザー1642人 【目次】 2017年度版 エディタ使用率を大公開! ヤングVSアダルト!年代別エディタ使用率比較 エディタ別 指名率&指名数比較 エディタ別 GitHub&Qiita入力率 プログラミング言語別 エディタ使

    2017年一番人気のあるエディタは何だったのか?転職ドラフトのデータから読み解く、人気エディタ徹底分析!|転職ドラフトReport
    sirobu
    sirobu 2017/12/29
    “エンジニアならほとんどの人が使っているであろうGitHubとQiita”はい?/Javaのコーディングするならなんだかんだ言ってEclipse使ってエディタは使わなくない?
  • よく使う正規表現はもうググりたくない! - Qiita

    タイトル通りによく使う正規表現を毎回ググるのが効率悪いのでまとめてみました。各言語で正規表現のサンプルを書いてみました。 正規表現式 Emailアドレス ^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$ ドメイン名 ^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]\.[a-zA-Z]{2,}$ インタネットURL ^(http|https)://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ユーザー名 (Twitter username) ^[a-zA-Z0-9_\-.]{3,15}$ 固定電話 ^0\d-\d{4}-\d{4}$ 携帯電話 ^(070|080|090)-\d{4}-\d{4}$ IP電話 ^050-\d{4}-\d{4}$ フリーダイヤル ^0120-\d{3}-\d{3}

    よく使う正規表現はもうググりたくない! - Qiita
    sirobu
    sirobu 2017/12/11
    コメント欄、ブコメでツッコミ多数。企業の名前使ってのAdvent calendarは中身がアレだと社のイメージまで下げかねないから難しいなぁ
  • 市場バグを引き起こした優秀なデータたち - ボドゲを愛するテスト屋さん

    ※この記事は「ソフトウェアテストの小ネタ Advent Calendar 2017 - Qiita」用の記事です。 ソフトウェアテストの小ネタ 2日目担当のオムそばです。 実はちゃんとした(?)記事を書くのはこれが初めてなので、生暖かい目で見ていただければ。 そんなわけで早速表題の件、市場バグを引き起こした優秀なデータたちをご紹介します。 今回は、よくある「半角記号」、「空白やスペース」などは割愛させていただきます。 (2017/12/26追記)"市場バグ"という言葉に違和感や疑問を持たれた方は、こちらの記事をどうぞ。文言について整理してみました。 ■日時に関するデータ ・1969/12/31、2038/1/20:UNIX系のシステムに有効なデータ。UNIXのシステム時刻は1970/1/1 開始なので、それ以前のデータを打ち込むと予期せぬエラーが発生する可能性がある。また、同様に2038/

    市場バグを引き起こした優秀なデータたち - ボドゲを愛するテスト屋さん
    sirobu
    sirobu 2017/12/03
    文字コード変換含んでる場合ははしご高わすれちゃダメだよね / ブコメでL'Arc〜en〜Cielがシングルクォートとウェーブダッシュ含んだ攻撃的文字列扱いされててワラタ。今度から使おう
  • 新人エンジニアとのジェネレーションギャップ - Qiita

    ふと自分がベテランエンジニア(おっさん)になってしまった、、、と感じたので書いてみる。 Javaとか普通に使われてると思うし、makeもC系だと普通だとおもうし、メッチャ偏見を入れて書いていることをご了承ください (笑) バージョン管理ツール 新人 Gitしかやったこと無い SVN聞いたことあります CVS?CSVじゃなくて? おっさん SVNやCVSって言うのがあってだな VSSって知ってるか? ファイルサーバで上書きされることとかあったよー サーバインスタンス 新人 ポチポチ (AWSGCP、さくらVPS) Herokuでいいっすか? GAEでいいっすか? おっさん 納品まで時間が掛かるから、早めにスペック確定して発注しないと サーバルーム行ってくる ソコのおいてあるのが開発用サーバだから電源消しちゃダメだよ プログラミング言語 新人 PythonScalaなら触ってました Swi

    新人エンジニアとのジェネレーションギャップ - Qiita
    sirobu
    sirobu 2017/11/14
    悲しいことにSIerでは「おっさん」が口にする技術どころかメインフレームにCOBOLが現役だったりするし、新人エンジニアはこんな知識を持ち合わせているどころかプログラム自体未経験なのであった
  • マイクロソフト、Visual Studio 2017正式リリース。コードを書きながら自動的にユニットテストを実行してくれるライブユニットテスティングなど

    Visual Studio 2017はさまざまなプログラミング言語やプラットフォームに対応。C#や.NET Frameworkを用いたWindowsアプリケーションだけでなく、C++Linux対応のアプリケーションを開発することも、TypeScriptでWebアプリケーションを開発することも、クラウドアプリケーションやモバイルアプリケーションの開発も可能です。 Visual Studio 2017ではインストールの時間を大幅に短縮。いままで2時間ほどかかっていたインストールを10分程度に短縮。 また必要な機能のみを必要なときに読み込む構造にすることで、起動時間も約半分になり、従来より軽快に動作すると説明されています。 開発者にとって注目すべき新機能のひとつは、C#かVisual Basicでコードを書いている場合、バックグラウンドで自動的にユニットテストを実行してくれる「ライブユニットテ

    マイクロソフト、Visual Studio 2017正式リリース。コードを書きながら自動的にユニットテストを実行してくれるライブユニットテスティングなど
    sirobu
    sirobu 2017/03/08
    "新機能のひとつは、C#かVisual Basicでコードを書いている場合、バックグラウンドで自動的にユニットテストを実行してくれる「ライブユニットテスティング」です。"コンパイルエラーの感覚でテストファーストが実現可能