実家で見つかった3枚の紙切れ プログラムはあるのに… 例えるなら「イチゴの香り」 プログラミングをやってみたいと夢見ていた小学校5年生が、手書きでノートに書いていたコードが、35年の時を経て、生成AIによって動き出したーー。そんな夢のある投稿が話題になっています。投稿者に話を聞きました。 《5年生の時にパソコン購入を反対され、それでもプログラミングがしたくてこっそり買ったBASIC言語の入門書を見ながらノートにコードを書いてました。奇跡的にそれが残っていたので写真に撮りClaude3でJavascriptにして実行。35年の時を経て生成AIによって動きが知れたことに感動しています。》 投稿には、少し黄ばんだ方眼紙に描かれた手書きのコードと、AIによって生成されたコードの画像が添付されています。 そして動画では、懐かしい昔のコンピューターのビープ音とともに、四角形が色とりどりに変化しながら移
オブジェクト指向プログラミングと関数型プログラミングの違い:手法、コード例、ユースケースごとに解説 関数型プログラミングモデルの採用を考える開発者は多い。だが、採用するなら、関数型プログラミングモデルとオブジェクト指向のアプローチがどのように異なるかを正確に理解することが重要だ。 プログラミングのパラダイムを決めることは、どのようなアプリケーション開発作業にとっても重要なステップの1つだ。関数型プログラミングとオブジェクト指向プログラミングのどちらを選ぶかは、この2つしか選択肢がないわけではないとしても、今日の多くの開発者が直面する課題の1つになっている。 本稿では、関数型プログラミングとオブジェクト指向プログラミングの主な違いを復習し、両コーディングパラダイムが機能する仕組みを幾つか示し、いずれかを選択する際に最も重要な考慮点を確認する。 オブジェクト指向プログラミングと関数型プログラミ
新教材のうち「Laravel編」は、PHP(Laravel)に関する基礎固めを目的とした教材で、全19問で構成されている。 「React.js基礎4」は、全4問を用意する。 「Railway」は、Webフロントエンド・バックエンド、iOS、Androidといった、各技術分野ごとに必要な素養を路線マップのように俯瞰しつつ、着実に開発を進められる実践型開発ドリル。 書いたコードを提出するだけでシステムが自動で合否判定し、合格の場合は次の問題に進むことができ、不合格の場合はエラー箇所を明示する。 中級編以降の問題は、メンターが30分の面談で合否判定を行い、50社100名を超える各社のCTO、テックリードクラスのメンターからのコードレビューを通じて、実務的なアドバイスをもらえる。 ユーザーのスキルレベルを5段階で可視化し、それぞれのスキルレベルにあったネクストアクションの提供を行い、スキルアップし
Original article:https://dev.to/dotnetsafer/rip-copy-and-paste-from-stackoverflow-trojan-source-solution-4p8f その昔コピペできない文章というものがありました。 実際は単にフォントを変えているだけというものですが、人間の目に見える文字と実際の文字が異なることを利用した攻撃の一種と見ることもできます。 さて、最近になって似たような攻撃に関する論文が公開されました。 人間には見えない文字を織り交ぜることによって、一見問題ないコードが実は脆弱になってしまうというものです。 ただ論文は堅苦しいうえに長くて読むのがつらいので、具体的に何がどうなのかよくわかりません。 平易に解説している記事があったので紹介してみます。 以下はDotnetsafer( Twitter / GitHub / Web
本サイトでは、プログラムによってネットサーフィン(Webブラウジング)したり、 Webページから必要な情報を抽出したりする方法について解説しています。 例えば以下の事プログラムに行わせる事ができます。 サイトへのログインを自動で行う 毎日自動で大量サイトのクリックを行う 証券会社へ自動ログインして自動発注する ショッピングサイトから商品の一覧を取得する オリジナルブラウザを作成する Webサービス用のテストツールを作成する ウェブスクレピング(自動でWebの情報を取得する)を行うアプリケーション作成する etc 本サイトのコンテンツは画面左のメニューから選択してください。 初めての方はまずWebブラウジングの方法を見てください。
ブログやってます。更新などはこちら。地方エンジニアの学習日記 七行プログラミングとは プログラミングの言語を問わず、 「7行 × 79文字 」という文字数制限のもとにコードを書くといったこと ショートコーディングと呼ばれるらしいです。 1kbに満たないソースでテトリスが出来るのには感動しました(当時中学生ぐらい) Unix哲学の「スモール イズ ビューティフル」もびっくりです()。 ちなみにスーパーマリオブラザーズは40kb程っていうのも驚き ショートコーダー(Short Coder)とは、プログラムのソースコードを極限まで短縮する技術を持ったプログラマのことである。「ソースコードの短縮」は、一見無意味に感じられるかもしれない。しかし最短コードを達成するには、省メモリ・高速プログラム・処理系の知識に加えて、並外れた集中力と熱いショートコーディング魂が必要なのである。 以下に見つけたソースを
某所から再演依頼をいただいて単独シークレットライブ(re: 反復開発の再演の豪華なやつ)をやりました。とても楽しかったです。 その時に昔よく話してたフレーズを思い出しました。 「テストの合間にプログラミングする」 2009年にも言ってたみたい。というかずっと言ってたけど記録が残ってるのは珍しい。 kakutani.com 朝会以後から帰るまでの間、絶えず誰かが製品をテストする。プログラマは全員、毎日決まった時刻に1時間テストをする。さらに一日中テストするテスターがいて、プロの無職もほとんどの時間テストしてる。*1 テストすると問題(本当に問題かどうかはわからない。なにかがおかしい、疑問に感じること)に出会う。そうするとすぐにそばにいるプログラマやテスターやプロの無職がてきとうに集まってきて、なにが起きているのか理解して調査、修正のアクションが決まる。 プログラマの立場で見ると、毎日1時間は
pthread_系の関数は mutex か cond しか待てないが、select/poll/epoll はファイルディスクリプタしか待てないので、両方待ちたいときに困る。 解決方法はいろいろあると思いますが、私の思いつく範囲では以下の4つ。 selectで待ち、シグナルで割り込む ファイルディスクリプタはselectで待つ。他のイベントはいったんキューに入れておき、シグナルを発生させてselectを中断させる。たしかlighttpdはこの方式だったはず。ただlighttpdはシングルスレッドなのでキューは使っていなかったような(うろ覚え) selectで待ち、パイプで割り込む selectで待つのだが、その中にpipe(2)で作ったパイプを1つ食わせておく。ファイルディスクリプタ以外のイベントはいったんキューに入れておき、パイプに1バイト書き込んでselectを中断させる。 select
Haskellらしさって?「型」と「関数」の基本を解説!【第二言語としてのHaskell】 第二言語としてHaskellを学ぶ道案内。開発環境の準備から、Haskellらしいプログラミングの考え方まで、Haskell-jpのigrepさんが丁寧に解説します。 こんにちは。Haskell-jpの山本悠滋です。 この記事では、すでにプログラミング経験のある方向けに、第二言語としてHaskellを学ぶ道案内をしていきます。 環境の準備や、自明なサンプルプログラムの紹介にとどまらず、Haskellらしいプログラミングの考え方も伝えていく予定です。 Haskellについて Haskellというと、「関数型」というキーワードが思い浮かぶ方も多いと思います。 確かにHaskellは、すべての関数がカリー化されており、それらを組み合わせてプログラムを書いていく関数プログラミングがしやすい言語です。 しかし
各種プログラミング言語についての情報です.LinuxやCygwinなどのコマンドライン環境を前提としているものが多いです.プログラミングの全体的な解説というよりも,なにかプログラムを組む際にプラスαになるものを目指しています.
Misoca開発チームの黒曜(@kokuyouwind)です。 先日大須演芸場で開催された名古屋Ruby会議03ではTwitterでひたすら実況していました。大喜利が思った以上に大喜利で面白かったです。 お題「みなさんRubocopになってもらって『直しました』といってください。『何を直したんですか?』と聞くので、直したところを答えてください」 須藤さん「直しました」「何を直したんですか?」「RSpecをTestUnitにしました」 #nagoyark03— 黒曜@技術書典2 か-13 (@kokuyouwind) 2017年2月11日 流しの技術フェローに教わったペアプロのコツ 先日、弊社技術フェローのkakutaniさん(@kakutani)からペアプログラミング(以下ペアプロ)のコツを教わり、社内でのペアプロ機運が高まっています。 今回はkakutaniさんから教わった内容のまとめと
ref: http://ascii.jp/elem/000/001/230/1230449/ 「Ruby で Ruby を作りながら Ruby を学ぼう!」という ascii.jp の連載、おかげさまでほぼ予定通りに無事に終わりました。執筆の経緯を書いておきます。 昨年の 6 月ごろ、「抽象によるソフトウェア設計」や「型システム入門」のときにおせわになった編集者の鹿野さんに声をかけて頂きました。「ふつうの Ruby 入門はもうたくさんあるので、ちょっと変わった Ruby 入門を書けないか」という話でした。 それを聞いた瞬間、「Ruby インタプリタの開発を通して Ruby を学ぶ」という構想が湧きました。Ruby は主に Web やテキスト処理を対象としているので、言語処理系や記号処理を題材にした入門は目新しそうだし、なによりそういうのに興味を持つ Ruby ユーザがもっと増えてほしい。
新しい言語やフレームワークを学ぶことは、時には苦闘になることがあります。従来のアプローチは、概念を説明し簡単な例を提供するドキュメントを読むことです。それで十分な場合もありますが、ドキュメントに高度な例や実際のプロジェクトでの使い方が書かれていない場合も多々あります。 ドキュメントに記載されていない問題に出くわすと、大抵の人はStack Overflowで解決策を探します(またはソースコードを丹念に調べます)。しかし、「使っているフレームワークが登場してから十分に期間が経っておらず、思い浮かぶ質問全てにStack Overflowが答えてくれない」ということもありえます。 今まで問題にはまって、こう考えたことはありませんか? 「誰かが既にこの問題を解決しているはずだ!では、なぜこの問題に対する答えがStack Overflowにないのだろうか?」 そのとおりです。恐らく誰かは既にそれを解決
一般的にプログラミングというのは総合開発環境(IDE)を使って開発するものです。JavaだったらEclipseとかNetBeans、C#だったらVisual Studio、AndroidだったらEclipseかAndroid Studioと、だいたい決まっています。 でも僕はどれも使いません。 何を使っているかというと、IDEじゃなくテキストエディタのみ。コンパイルはコマンドプロンプト上でコマンドを打つという原始的な方法をとっています(実際はバッチファイルを作ってそれを走らせる)。この話をするとたいてい不思議がられますね。何でそんな無駄なことするんだ、みたいな。 [ad#top-1] IDEを使うとプログラミングを覚えない まず第一の欠点はこれ。当然ながらIDEはプログラミングの補助をしてくれるので、自動で必要なコードを生成してくれる頭のいい奴です。でも、これって便利な一方で、プログラミン
フォントの書体 フォントの書体は、日本語フォントは「明朝体」と「ゴシック体」、欧文フォントは「セリフ体」と「サンセリフ体」に分けられます。 「明朝体」は「ウロコ」と呼ばれる三角形の飾りがついているフォントで、「ゴシック体」は「ウロコ」が(ほとんど)ついていないフォントです。 「Serif(セリフ)」は文字の端にある「小さな飾り」のことで、「セリフ体」は「明朝体」でいう「ウロコ」がついているフォントを指します。 「Sans(サン)」はフランス語で「〜のない」という意味で、「サンセリフ体」は「ウロコ」がついていないフォントです。 「ゴシック体」や「セリフ体」は「ウロコ」がついていないため、プログラマはプログラミング用のフォントとして選ぶ際に、見分けにくい文字がないかチェックしておく必要があります。 プログラミング/コーディングに最適なフォント ここからはプログラミングに適しているフォントを紹介
以下の記事を読んで。 530000micro.hatenablog.com 僕が勤めている会社では、原則、プログラムにコメントを書かないのがルールです。 人生で初めてプログラムに触れてからこのかた、プログラムには必ずコメントを書けと指導されて来ましたし、自分自身も、後輩たちにちゃんとコメント書けよと言い聞かせてきました。そんなわけで、最初に全然コメントのないソースコードの山を見たときは、正直「ゲッ、なんじゃこりゃ……」と面食らったのは確かです。 ところが、「なぜうちのプログラムにはコメントがないのか?」と同僚に尋ねてみると、実に納得の行く回答が返ってきたのでした。 なぜコメントが必要なプログラムを書くのか? 同僚いわく、「コメントが無くても読めるようなプログラムを書け」という思想が根底にあるのだそう。 適切に関数や変数が命名され、スコープがきちんと管理され、ロジックの流れが整理されているコ
はじめに はじめまして。お盆明けからMisocaでインターンをしているhmryuです。Misocaにジョインする前は、個人でサービスを作ったり、研究でプログラムを書いたりしていました。 一方で、チームで開発する経験はあまりなく、Misocaにジョインした始めの頃は慣れないことばかりでした。中でも、他人の書いたソースコードを読んで理解することが、一番大変だったかもしれません。 そこで今回は、機能追加・変更を加えるためにソースコード*1を読む上で、僕が大切だと感じた3つのステップについて書きたいと思います。 1. 機能とソースコードの対応を調べる まず、自分が変更を加える機能がどんなもので、どこに実装されているのか理解する必要があります。実際にサービスを動かして、どんな機能なのかを確認します。その後、その機能がソースコードのどの部分に対応するのかを調べます。 例えば、メール送信について調べる場
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く