You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Functional programming in TypeScript 📢 Important Announcement: fp-ts is Joining the Effect-TS Ecosystem! We are excited to announce that the fp-ts project is officially merging with the Effect-TS ecosystem. This is a significant step forward in the functional programming landscape, bringing together two powerful libraries under one roof. Giulio Canti, the author of fp-ts, is being welcomed into t
Red Hatの佐藤匡剛です。昨日、Red Hat Forum / Tech Nightにお越しいただいた方、ありがとうございました。 昨日のRed Hat Tech Night冒頭のトークセッションで、id:nekopこと木村さんから面白い発言があり、Twitterでも話題になっていたようなので、ちょっとフォローアップの記事を書きたいと思います。 「これは仕様ですか?」 と聞かれても、たまたま開発者がそうしただけというケースもあり、答えにくいことが多々ある #rhtn2018— 転職しても肉の妖精だった件 (@nanodayo) November 8, 2018 仕様が先かコード書いた人の気持ちが先か #rhtn2018— えいご (@enagok) November 8, 2018 実装がたまたまそうなっているw とても分かる。#rhtn2018— 水無月 忠司 (@longyoru)
ISO/IEC 646は7ビットの文字コードを規定する国際標準化機構 (ISO) 標準であり、これを元に各国語版の文字コードが規定される。 アメリカの規格であるASCIIを国際化した体裁となっている。ラテンアルファベット(ISO基本ラテンアルファベット)と数字を中心とした共通部分と、ASCIIでは記号となっている各国規格で自由に割り当てられる部分に分かれており、ヨーロッパ各国ではこの部分にダイアクリティカルマークつき文字を割り当てることにより自国語の文章を符号化できるようになっている。 現在ではヨーロッパでは8ビットコードであるISO/IEC 8859が主流となっており、この規格はあまり使われていない。なお、UnicodeのISO規格であるISO/IEC 10646の規格番号は、この規格の番号にちょうど10000を加えた値となっている。 1962年、ISOの技術委員会97(電子計算機と情報
デザインの「悪い方がよい」原則 The Rise of "Worse is Better" rpg@lucid.com 日本語訳: daiti-m@is.aist-nara.ac.jp 私や Common Lisp と CLOS のデザイナーのほとんどは、MIT/Stanford 方式の設計に親しんでいる。 この方式の核心は、「正しい」やり方をせよ、という ことにつきる。デザイナーにとっては、以下の点をすべて正しく満たすことが 重要である。 簡潔性 デザインは実装と使用法の両面において単純でなければならない。 このとき、使用法が単純な方が、実装が単純なことより重要である。 正当性 デザインはすべての点において正しいものでなければならない。 誤りは許されない。 一貫性 デザインは一貫性を欠いたものであってはならない。一貫性を保つ ためには完全性は少しだけ犠牲にしてもよい。一貫性は 正当性と同
エグゼクティブサマリ 秀スクリプトという小さな言語処理系を開発した。秀スクリプトは、TypeScriptを大幅に縮小した文法を持ち、コンパイラによって秀丸マクロに変換され、秀丸上で実行される。秀スクリプトコンパイラは秀スクリプト自身により記述される。 秀スクリプトの主な特徴は下記のとおり。 TypeScriptに似た文法を持ち、コンパイラも秀スクリプトで記述されている 秀丸マクロを生成し、秀丸上で実行される TypeScript同様、変数に型がある 数値(整数)型と文字列型、これらの配列をサポート if、while、do … whileの制御構造 関数のサポート はじめに Windows上で使用するエディタとして長年秀丸を愛用しています。最近はVisual Studio Codeなども人気で、僕もインストールして使ってみたりはするのですが、長年手に馴染んだツールというのは、中々乗り換えが難
あるひとりの人がシステムを作ったが故にそのシステムに精通している場合に、最も生産的な開発が行われる。しかしこれは、ひとりの人がシステムの面倒を見ることを超えてシステムが成長する時には矛盾してしまう。 ある状況下において、特定の開発者たちが他の人の10倍生産性が高くなることがあるのはなぜかについて議論してみましょう。 ヒント : 開発者の話ではなく、状況が大きなカギ。 生産性が非常に高いことにウキウキした気分になるのはいつでしょうか。新しい機能が指先からあふれ出てくる時?それは、私たちが関わるツールのことを知り尽くしている時、あるいはもっと決定的に言うと、自分がシステムを変更しつつある時に起こるのです。自分のバックパック、それも自分で詰め込み、そしてひとつひとつの小袋の中まで何年にもわたる旅行を経て調整してきたバックパックの中身を知っているように、システムを知ることです。それぞれのモジュール
先週、動画変換ファイルアプリ HandBrake のMac版によってマルウェアに感染との報道がありました。(日本語記事参考: 動画変換ソフト「HandBrake」Mac版にマルウェア感染の危険性 | CNET Japan)2つの配信サーバのうちの片方で、感染したHandBrakeアプリが3日間公開された状態になっており、ダウンロードして起動するとそのコンピュータは攻撃者による遠隔操作が可能な状態になる、というものです。 運が悪く、さらにコンピュータ運にも恵まれず、公開されていた3日の間に感染したHandBrakeをダウンロード、起動したためにプログラマのMacが感染してしまいました。 その結果、どこかの、誰かに、私たちのアプリのソースコードが盗まれました。 続けて、以下の大切な3つについてお知らせします: ・今回の攻撃者がユーザ情報にアクセスした兆候はまったくありませんでした。 ・さらに、
この問いに対して、自分なりの答えを言語化できたのでまとめます。 目次 目次 疑問 実践する機会 自分なりの答え 「コードを書く瞬間の思考」にアドバイスを貰える 他の方法で代替できない ペアプロの欠点 まとめ 疑問 きっかけは、下記の方々のやり取りをTwitterで見かけたからです。 「それをできる人とペアプロする」以上に短期間で新しい技術を身につける方法を知らない。— Jxck (@Jxck_) 2017年2月3日 ペアプロが最速だろうなあ https://t.co/SdbZZ2EypI— Takuto Wada (@t_wada) 2017年2月3日 サッと調べると「最速なのは同意」という意見が大半でした。自分もこれには同意するのですが、「なぜペアプロが最速なのか?」という疑問を持ったのです。 ペアプロ、最速だと思うんだけど、なぜ最速なのかがハッキリわからない。「わからないことがすぐに聞
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 画像: N高等学校課外授業(N予備校)での生放送授業のブラウザ上での見た目、コメントが書ける 目次 はじめに 教えることになったきっかけ Web企業にエンジニアとして就職できるようになる、というミッション 既存のWeb教材に感じた問題意識 「各自進められるゲームブック形式の教材」と「徹底的にフォローする生放送授業」 コンセプトをもとに構成されたコースと内容 ゼロからプログラミングができるようになった人が生まれた日 永劫、プログラミングは一部の天才たちのためのものか? プログラミング学習のモチベーションの課題と対応 まじめなオタクたちが社
ここで論じているのは、オーディオアプリの開発者が陥りがちな 4つの間違い 、 より良く開発する方法 、 問題個所の発見方法 です。主に開発者向けの内容ですが、開発者以外の方にも知っておいてもらいたいと思います。ここでは、開発者向けの診断ツールである Realtime Watchdog を紹介し、 人気のあるオーディオライブラリの調査結果 を提示します。 オーディオアプリの開発はとてつもなく楽しいです。やりがいを感じるし、創造力を発揮できる範囲が大きく広がり、ひとたび開発が終われば、 誰かがクリエイティブなツールとして使ってくれるのです! こんな分野は多くないし、この領域で働けるなんて非常に幸運だと自分でも思っています。 しかし、仕事でオーディオアプリを扱う時には深く考えなければならない部分もあります。オーディオアプリの開発者としてユーザに対する責任があるのです。大前提として、ユーザを公共の
私はアメリカの大学で「インタラクティブメディアとゲーム開発」を専攻しましたが、その時受けたSoftware Engineeringという授業が色んな意味で素晴らしかったのでその授業がどう素晴らしかったのかを紹介していきます。 リアリティーがすごい まずこの授業、生徒数が80人ほどいます。ここから教授がみんなを約15人ずつの5つの会社に分けていきます。そうです、我々生徒は実は会社員なのです。 そして初日に出された課題は「自分たちの会社のミッションステートメントを考えてくること」です。 それだけでなく、プロジェクトマネージャー・プロセスエンジニア・リリースエンジニア・ドキュメンテーションマネージャー・クオリティーマネージャーの役割を会社のどの社員が取るのかを決めてこないといけないというのです。私たちは言われるがままにミッションステートメントを用意し、次の授業に備えました。 プロセスがすごい S
社内でレビューおじさん業してて書いた内容ですけど守秘する必要ない情報なんでちょっと内容書き換えてオープンアンドシェアーします。 本文 見た目とかUIというのはソフトウェアの中でめちゃめちゃ柔らかい部品(些細な変更されることが多い部品)なので、「同じような部品だから共通化しちゃおう」ってやると失敗することが多いです。 特に気をつけるべきなのは、たとえばコンテンツをランキング形式でテーブルで表示する画面と、新着から順にテーブルで表示する画面があって、このふたつのテーブル部分は一緒だからパーシャルにしちゃおう、みたいなやつです。 見た目とかUIというのはソフトウェアの中でめちゃめちゃ柔らかい部品、というのがここで効いてきて、「新着とランキングは基本的に同じ表示なんですけど、ランキングのほうではランクがアップしたかダウンしたかのアイコンを表示してほしいんですよね〜」とか言われたり、「今見てるページ
2007/12/21追記 「内部設計 見本」「外部設計 見本」などで検索に来た皆さん、残念でした。ここには見本はありません。でも、この書き込みに来たのも何かの縁。一度、外部設計とか内部設計とか、本当に必要なのか考えなおしてみませんか? 詳しくは、下記本文で。 以下、本文 BMUF (Big Modeling Up Front)=上流設計のインチキを斬るでは、敢えて「Modeling≒設計」みたいな感じで訳しちゃった。その後いろいろ考えたけど、BMUFは「先行設計」と訳すべきだったかもしれない。 辞書でmodel(動詞)を引くと、「見本を作る」というのがひっかかる。そして、おそらくソフトウェアにおけるModelingとは「見本を作る」ことであろう。 モデリング BMUF (Big Modeling Up Front)=上流設計のインチキを斬る元記事で紹介されていたSketches of Fr
特異なバグ (英: unusual software bugs) とは、ソフトウェアバグの中でも特に修正が難しいものを言う。いくつかの種類があるが、直感的に理解しがたいような理論を発表した科学者に由来して名前が付いているものが多い。 ハイゼンバグは、それを調査しようとすると変貌したり消えたりするバグである。 ハイゼンバグの例: リリース版では発生するがデバッグ版(-DDEBUGコンパイルオプション等)では発生しない。 普通に実行すれば発生するがデバッガなどの環境では発生しない。 ユーザーの環境では発生するが開発者の環境では発生しない。 結合テストでは発生するが同じチェックをしているはずの単体テストでは発生しない。 何が起きているのか調べようと出力命令を入れると(いわゆる「printfデバッグ」)発生しなくなる。 競合状態によって発生している。 この名前は不確定性原理を提唱したハイゼンベルク
はじめに 以下のエントリがHOTになっています。公開4日後の現在で949はてブです。 技術的負債という(非エンジニアにとっての)隠しパラメータが生産性100倍を起こす - mizchi's blog 私は企業で Software Engineer in Test としてソフトウェアの保守性に責任を持つポジションに就いている身ですのでこのテーマに関心があるのはよいことだとは思います。技術的負債そのものについてのエントリは過去にも沢山あるようですが、mizchi さんのエントリは誤解を恐れないシンプルで断定的な書き方ですので多くの人に刺さったのでしょう。 ただ、技術的負債(technical debt)というメタファーが万人に誤解無く伝わるのかは疑問です。時間を借りているのかはピンと来ませんし、財務的負債と異なり返済の義務はありません。また、エンドユーザーに提供する価値よりも負債にフォーカスし
Google では、オンライン ユーザーの利便性向上のために、さまざまな取り組みを行っています。近年、パソコン ユーザーの権利がますます軽視される傾向にあることに、深い懸念を感じています。スパイウェア、ポップアップ広告、アクセスしたサイトから異なるサイトへの強制誘導などを行うアプリケーションなどに関する問題が日々報告されています。 このような傾向は衰える気配を見せません。それどころか、悪化の一途をたどっています。インターネットのユーザー、広告主様、サイト運営者様にサービスと収益実現を提供する企業として、Google はこの問題に率先して取り組む責任を感じています。Google は、業界全体で取り入れるべきと考える一連の原則を掲げています。Google 自身も、配布するアプリケーションの開発にあたってはこのガイドラインに従うよう努めています。Google は、この原則が業界と世界中のユーザー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く