タグ

関連タグで絞り込む (814)

タグの絞り込みを解除

Programmingとprogrammingに関するluccafortのブックマーク (415)

  • ソフトウェア開発技術者が知っておくべき5つの法則 - スタジオ・アルカナ技術ブログ

    はいどうも~。 日はhidetarouの番ですが休業中のため代打でしゃしゃり出たエンジニア吉田です。 「○○○な●●つの○○○」なんて感じのタイトルを付けると、 なんだか興味が惹かれるというのを目にしたので活用してみました。 ※個人的にはそうでもない気がしている。 というわけで、今回はソフトウェアに関係しそうな「法則」を5つほど紹介し、 それをソフトウェア開発業務にどう生かしていくかを考えてみます。 日ご紹介する法則は以下の5つです。 ブルックスの法則コンウェイの法則パーキンソンの法則マーフィーの法則ハインリッヒの法則 でわでわ、早速。 ブルックスの法則 「遅れているソフトウェアプロジェクトへの要員追加はさらに遅らせるだけだ」 これは、IBMのOS/360(メインフレームOS)の開発者であるフレデリック・ブルックスが 名著「人月の神話」で提唱したプロジェクトマネジメントに関する法則です

    luccafort
    luccafort 2018/03/05
    エンジニアが就職時に知っておくべきことってこういうことかなーと思い出してた。就職時にコンウェイの法則知ってると臭う会社を回避するのに役立ちそう。しかしこの記事7年前なのに人類の進化とは…って気持ちだ。
  • プライベートでコードを毎日書き続けて2年以上が過ぎた

    いつの間にか2年間継続してコードを書いていたので、その振り返りです。上のインコは日々僕を応援してくれる二羽のインコのうちの一羽です。この後をボロボロに噛みちぎっていきました。 1年目との違い去年こんなポストを書きました。 このとき、自分はコードを1年継続して書いたわけですが、その後また1年継続してコードを書いていました。 1年目とは「書きたい」と思うものも変わりました。また、習慣を維持する労力も小さくなり、コードを書くことそのもの以外の、登壇などの時間を取れるようになりました。 この1年で新たにやったことツール作成markdownをMediumポストにするCLIツールAWS SSMで管理されたパラメーターを環境変数にInjectするツールGoogle Cloud Platform API向けに使える、goonと同様のDatastoreクライアント基盤作成AWS上にTerraform+An

    プライベートでコードを毎日書き続けて2年以上が過ぎた
    luccafort
    luccafort 2018/02/27
    "あくまで平日の平均の時間ですが2~3時間くらいでしょうか。あんまり取れてないかなと思います。"え、平日のプライベート時間で2、3時間取れるってかなり取れているほうだと思ってたが少ないのかという衝撃…。
  • “Web Componentsだけ” で新サービスを実装して見えたこと - Qiita

    Double O というサービスを作りました。 フロントエンドはピュアな Web Components を採用していて、バックエンドは Lambda と DynamoDB のみで構成しました。 (厳密には CloudFront とか API Gateway とかもあるけどそこは省いていいよね?) REST API 以外の Util 系の Lambda 関数はすべて AWS Cloud9 で管理することで環境構築も不要な Lambda ができて楽でした。 TL;DR サーバーレスについてはごく普通のことしかしていないので、詳しくは触れないでおきます。 ピュアな Web Components だけでサービスを成立させることができた。 HTMLElement クラスを継承するだけなのでメジャーライブラリは不要になった。 Web Components の Custom Elements は標準仕様

    “Web Componentsだけ” で新サービスを実装して見えたこと - Qiita
    luccafort
    luccafort 2018/02/14
    サービスもいいけど採用してる技術の内容もよくて良さを感じる。
  • ソフトウェアエンジニアが当たり前にやるべき事 - そーだいなるらくがき帳

    manabusakai さんの下記の記事を読んだ感想。 blog.manabusakai.com Twitterにも書いたけど僕は信頼されるエンジニアをずっと目指してきたし、そのために僕に必要なことがここには詰まっていた。 ほんとみんなに読んでほしい。 このエントリーの中の信頼を得ているエンジニアの姿を引用する。 有言実行である 仕事の納期をきっちり守る どんな仕事でもムラがない 困ったときに快く相談に乗ってくれる 皆がやりたがらないタスクを拾ってくれる チームの雰囲気を良い方向に導いてくれる etc... まさに。 ではソフトウェアエンジニアとしてこの他に当たり前にやるべき事って何があるだろう? ソフトウェアエンジニアとしてやるべき事 僕らは技術で問題を解決することで価値を高めたり、対価を頂いている。 例えば使っているOSSにバグがあったらどうだろう? これは自戒をかなり含むが不満をSN

    ソフトウェアエンジニアが当たり前にやるべき事 - そーだいなるらくがき帳
    luccafort
    luccafort 2018/02/12
    Qiitaに書いてしまったことでTechな当たり前の話しがされると期待して開いたところあの記事だった&タイトルが若干あおり気味だったので書いた人の意図しない方向で炎上してしまったもったいないエントリではある。
  • なぜプロダクトに Vue.js を採用したのか? 運用してみてどうっだった? という話 | Nagisaのすゝめ

    2018年2月6日 なぜプロダクトに Vue.js を採用したのか? 運用してみてどうっだった? という話 余り知られていませんが Nagisa ではアプリだけでなく Web のプロダクトやサービスもあります。マンガZERO や UPTOON! や 月刊コミックジヘン 辺りがそうです。 何れも Vue.js で作られている SPA で、社内・外両方から “なんで Vue.js なの?” とかよく聞かれます。そこで、今回はどうして Vue.js を選択したのか、Vue.js の何がいいのか、Vue.js で運用してみてどうだったかの話をしたいと思います。 はじめに Vue.js を導入する前のマンガ ZERO Web は 2.0系の Riot で作られていました。今ある SPA のような形ではなくサーバサイド (Go) にてメタタグを生成、空のマウントポイント <div id="app"><

    なぜプロダクトに Vue.js を採用したのか? 運用してみてどうっだった? という話 | Nagisaのすゝめ
    luccafort
    luccafort 2018/02/11
    TypeScriptとの相性はまだ発展途上なのか。ネイティブアプリに関してはVueJSとは別の所の議論な気がするなあ。あとロゴがダサいというのあまりよくわからない、Reactもカッコいいと思ってないからだろうか?
  • エンジニアの次のステップへの勉強法 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 言われたものはだいたい作れるし、どんなプログラミング言語が来ても大抵書けそうかなってなったエンジニアがそこで成長が止まってしまう人を見かけることがあります。 技術が好きで、作ることが好きで、なのに環境に求められず成長が止まってしまっているんだろうと思います。 ここで成長が止まってしまう環境とは、 新しい技術の情報を仕入れて語り合うエンジニアが居ない 業務用件に高い技術が求められない 改善サイクルが遅い 開発プロセスなどをまとめる人がいない などです。 簡単に言うと、今はうまく仕事があるけれど、停滞している仕事場ですね。 下手にビジネス的

    エンジニアの次のステップへの勉強法 - Qiita
    luccafort
    luccafort 2018/02/07
    ざっとみたところ期待したものではなかったがデザインパターンとアルゴリズムは再入門し直そうと思っていた。OSSのマージログ読むだけでも勉強になるなって最近感じてる。
  • そろそろコードレビューそのものの必要性について考えるときがきているのかもしれない - タオルケット体操

    技術ブログの方に書くか迷ったのですが、かなりポエムの類な文章になりそうなのでこちらに書きます。 ちょっと前にバズったこちらの記事 medium.com に触発されました。 ちなみにコードレビューに関する話としてはまだ僕が色々と手探りだった3年前にもこんなことを書いていたようです。3年前の自分の考えに触れられるブログって面白いなという気持ちとこいつどんだけ軽率な文章書いてんだよという気持ちが合わさり甘酸っぱい気持ちが生み出されました。 hachibeechan.hateblo.jp 当時と今では日全体の技術的トレンドも変わっていますし、そもそも僕の所属している会社も違います。今の会社ではGitHubを使っており、コードレビューが当然のフローとして組み込まれています。 そしていま改めて当時のブログを読み返したのですが、びっくりするほどコードレビューに対する僕の考えが変わっていないので、改めて

    そろそろコードレビューそのものの必要性について考えるときがきているのかもしれない - タオルケット体操
    luccafort
    luccafort 2018/02/01
    実装設計に関してA/Bテストして何故その実装を採用したのか?という経緯ログが残るのが一番のメリットかなーと思ってる。こう実装したけどベターな実装でないみたいなの実装中は気づきにくい。
  • ブログに技術書の内容を丸写しする問題点と、オリジナルなコンテンツを書くためのアイデア - give IT a try

    はじめに 「プロを目指す人のためのRuby入門」を出版して以来、で学んだ内容をブログに載せてくれている方をよく見かけます。 それ自体は著者として大変嬉しいのですが、たまに「ん?これはちょっと・・・」と思うようなブログ記事を見かけるときがあります。 具体的にいうと、の内容を丸写ししているだけのブログ記事です。 このエントリではの丸写しがなぜいけないのか、かわりにどういうブログを書けばいいのか、ということについて書いていきます。 の内容を丸写ししているブログの例 の内容を丸写しをしているブログというのは文字通り「丸写し」しているブログです。 具体的なイメージを共有するために「こんな感じ」という例を載せておきます(特定の誰かのブログを意図しているわけではありません)。 タイトル「第2章 2.2.3 文の区切り」 「プロを目指す人のためのRuby入門」を読んでいるので、勉強した内容をメモ

    ブログに技術書の内容を丸写しする問題点と、オリジナルなコンテンツを書くためのアイデア - give IT a try
    luccafort
    luccafort 2018/01/24
    ブログは感想とか書けるんだけどgithubとかにサンプルコード上げた場合はどうなるんだろうなーと思うときは確かにある。書籍によっては「githubはOKだけど可能なら書籍の引用してね!」とか書いてある。
  • Post by @sunaot

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

    Post by @sunaot
    luccafort
    luccafort 2018/01/12
    "それをきっかけに会社にとって一番よい形を技術という自分の強みを活かして考えるのが仕事です。"めっちゃわかる。1行のコードの裏に多くのコードがあるケースと本当に1行のケースがあるのが難しい。
  • コードレビューにおけるレビュアー側のアンチパターン

    tl;drコードレビューが上手く回って無くてチームが疲弊して辛かったよレビュアーの言い方を変えるだけで大体解決するよ立場とかで例外を許さず、みんながレビューしてレビューされると良いよはじめにあるプロジェクトGitHubのPRベースでのコードレビューを導入をしました。いかんせんチーム開発が初めてレベルの新人さんが多く、何かと苦労しました。特にレビュイーに対して不効率な指摘はそのまま指示の不明確さに繋がり、チーム全体の開発生産性を下げるので、レビュアーはレビュイー以上に気を使う必要があると感じました。下手をすると、レビュイーのメンタルが弱って闇堕ちするので、チームメンバーの最も大人な人がメンタルケアしたりします。大人な人は大体がリーダー格なので、その人の時間が奪われると何かと開発現場が疲弊しちゃいますね。コードレビューってそんなに難しいものだっけと思ったりもしますが、反省の意味も込めて実際に

    コードレビューにおけるレビュアー側のアンチパターン
  • イマドキのJavaScriptの書き方2018

    PySpa統合思念体です。これからJavaScriptを覚えるなら、「この書き方はもう覚えなくていい」(よりよい代替がある)というものを集めてみました。 ES6以降の難しさは、旧来の書き方にプラスが増えただけではなく、大量の「旧来の書き方は間違いを誘発しやすいから非推奨」というものを作り出した点にあります。5年前、10年前のやウェブがあまり役に立たちません。なお、書き方が複数あるものは、好き嫌いは当然あると思いますが、あえて過激に1つに絞っているところもあります。なお、これはこれから新規に学ぶ人が、過去のドキュメントやコードを見た時に古い情報を選別するためのまとめです。残念ながら、今時の書き方のみで構成された書籍などが存在しないからです。 たぶん明示的に書いていても読み飛ばす人はいると思いますが、すでに書いている人向けではありません。これから書くコードをこのスタイルにしていくのは別にいい

    イマドキのJavaScriptの書き方2018
    luccafort
    luccafort 2017/12/27
    ちょうどJSの勉強を再入門しているところなので非常にわかりやすくてよかった。
  • よく使う正規表現はもうググりたくない! - 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
    luccafort
    luccafort 2017/12/27
    コメントが本文。ただ間違いをみつけたときにコメントで間違いを指摘するのよくない文化だと思うのでPR送るほうがいいのではないだろうか?
  • W3C、「HTML 5.2」勧告。同時にHTML 5.3のファーストドラフトを公開

    Web技術の標準化団体であるW3Cは、HTML 5のマイナーバージョンアップである「HTML 5.2」の策定を完了し、勧告としました。 HTML 5.2ではいくつかの機能追加、削除、バグフィクスなどが行われています。 機能追加の例では、ダイアログボックスを表示する<dialog>要素が追加されました。下記は<dialog>要素を用いたサンプルです。 ... <body> <div> <!-- body content --> </div> <dialog> <h1>Add to Wallet</h1> <label for="num">How many gold coins do you want to add to your wallet?</label> <div><input name=amt id="num" type=number min=0 step=0.01 value=10

    W3C、「HTML 5.2」勧告。同時にHTML 5.3のファーストドラフトを公開
    luccafort
    luccafort 2017/12/15
    dialog導入されたのはいいんだけどそろそろUTF8以外の文字列を殺すissueをマージしてクレメンス。
  • ソフトウェア開発で学んだが使わなかったもの

    開発手法など、一通り学んだが実際に使っていないものは多少なりあると思う。それらについて掘り起こしてみたい。 スクラム開発認定スクラムマスター研修には研修会場ホストという立場で数回立ち会った。認定外の研修も幾つか受講した記憶がある。書籍もそれなりに読み、Scrum Gathering Tokyoなどのコミュニティにも顔を出し、まあそれなりに色々考えて捉えてきた。でも、自分のチームでは使っていない。スクラム開発というアイデアに矛盾があるからだ。 そもそもスクラム開発ではチームの自律的な行動を良しとしており、それに対する”フレームワーク”を提供しているということになっている。イテレーション、バックログ、ふりかえり、デイリーミーティング(いまだに「朝会」って言ってる人いないよね?)、そしてそれらのお作法。誰が言ったかわからないが、それぞれの作者の意図を察するためには「守」が大事らしい。守破離の「守

    ソフトウェア開発で学んだが使わなかったもの
    luccafort
    luccafort 2017/12/01
    同意は出来ないけどチームに馴染まないと感じたのなら無理に導入する価値はないし学んだうえでやらないと判断したのならそれは正しいと思う。ただトップダウンのくだりは主張したいことが理解できなかった。
  • コードをどまんなかに

    2017-11-25 DevLOVE関西2017 commitment 〜"何"にコミットするのか?〜 https://devlove-kansai.doorkeeper.jp/events/63438

    コードをどまんなかに
    luccafort
    luccafort 2017/11/27
    "(コードを書くのが遅いのは)書かなくていいこと(書くべきでないこと)を書いてる"なるほど…これ自体はわかるんだけどじゃあここで述べられてる「えらぶ」って 具体的になんだろうか???
  • https://frasco.io/why-you-should-stop-using-git-rebase-535fa30d7e25

    https://frasco.io/why-you-should-stop-using-git-rebase-535fa30d7e25
    luccafort
    luccafort 2017/11/25
    まず大前提としてgit rebaseして歴史を直線的に保つことの意義がぼくには理解できない。歴史を改ざんするのはよくないとぼくらはSFとドラえもんから学んだはずなんだ。
  • 意外と忘れがちな優秀なプログラマーになるための10のコツ - jfluteの日記

    月並みなものは、ここでは話題にしません。よく「忘れがち」なものにフォーカスします。 コツ1. 土日という概念を捨てる 土日は、土日ではなく、たまたま仕事に拘束されない平日です。自分を高めるトレーニングに時間を使えます。 とはいえ、普段の生活もありますから、土日を全部使うのはさすがに厳しいかもですね。なので「半分だけ」とかが現実的でしょう。 半分なので24時間。土曜12時間、日曜12時間。もしくは、土曜16時間、日曜8時間。これなら日曜日はけっこう生活に時間を費やせます。 常にパソコンの前じゃなくても良いでしょう。出かけながらプログラミングしたっていいです。トレーニングになっていればいいので、書くプログラミングだけとは限りません(コツ6を参照)。 ... 「そっか、あのプライベートの用事を削れば、あの機能その日にうちに実装できるかも、よし!」 常に "削れるプライベートを探す" 習慣を。 コ

    意外と忘れがちな優秀なプログラマーになるための10のコツ - jfluteの日記
    luccafort
    luccafort 2017/09/27
    時間かければOK!みたいなのはぼくの想像する優秀さとは相容れないので向かう方向性が違うんだろうとは思うがそんなものになりたいのか?という疑問が頭をもたげる。
  • 「現場で役立つシステム設計の原則」批判 (1) ~何のために、「データとロジックを一体に」するのか?~

    増田亨氏の「現場で役立つシステム設計の原則]」の評判が高いようです。 このが、オブジェクト指向の初級者に受け入れられ易いことはわかります。オブジェクト指向的なプログラミングが出来ていない現場で、明日からでも出来そうなことが平易に書かれているからです。オブジェクト指向の入り口を指し示しているように見える。 一方で、私としては、このが指し示す入り口は、入りやすいかもしれないけれど、結局はどこにも通じていないのではないかと疑っています。 稿では、そのように私が考える理由について、3つの切り口からご説明したいと考えています: 何のために、「データとロジックを一体に」するのか?ポリモーフィズムは何のために?「ドメインモデル」とは何か?長くなるので、今回は、一番目の「何のために、『データとロジックを一体に』するのか?」について。 批判 (1) 何のために、「データとロジックを一体に」するのか?

    「現場で役立つシステム設計の原則」批判 (1) ~何のために、「データとロジックを一体に」するのか?~
    luccafort
    luccafort 2017/08/31
    タイトルで批判と書いているけどぼくにはレビューという印象が強く残った。この本、書店で手にとってパラパラと読んでみたけどいまいち自分にはマッチしなかったのだけどその理由の一端がわかった気がする。
  • Ayo.js について - from scratch

    Ayo.js とは 「Node.js の fork です。」と言ってもまだできたばかりで正直このタイミングで記事にしてもまだ語ることはそんなに多くないです。 ただし、JavaScript界隈が騒ぎになりかけていることは確かです。日でも発言が増えてきたので自分なりにまとめて今時点での話をしようと思います。 ちなみに読み方は好きに読んでくれ、と言われてます。 「アイ・オー」でもいいし、「エイ・ヨー」でも良いとのことです。ネーミング的には昔あった io.js fork騒動を想起させるネーミングになってます。もしも io.js についてご存じない方もいるのであれば、こちらをご参照ください。 yosuke-furukawa.hatenablog.com Ayo.js の目的 https://github.com/ayojs/ayo/blob/zkat/values/VALUES.md ここを見ると

    Ayo.js について - from scratch
    luccafort
    luccafort 2017/08/28
    LibraOfficeとOpenOffice紛争みたいな話かー。今回は技術的な争点ではなく政治的な争点だから合流するには相当厳しい道程を歩むしかないんじゃないかなーとは思う。
  • 絶対にやってはいけない「Apple IDをテストで13歳未満にすること・・」

    概要 AppleIDの生年月日を13歳未満にすると、 そのアカウントが成長!?して13歳になるまで修正できないというお話(;;) Apple IDとは -> iPhoneとかMacとか使うというに使うアレ 公式サイト説明:https://support.apple.com/ja-jp/apple-id Apple ID とは? Apple ID とは、App Store、Apple MusiciCloud、iMessage、FaceTime などの Apple のサービスを利用する時に使うアカウントのことです。たった一つの Apple ID とパスワードで Apple のすべてのサービスにサインインできます。 詳細 今回やりたかったこと →ファミリー共有のテストをしたい(未成年のアカウントで) 子供のアカウントでアプリで課金したりするときは、親のアカウントに承認リクエストが飛びます。 →

    絶対にやってはいけない「Apple IDをテストで13歳未満にすること・・」
    luccafort
    luccafort 2017/08/10
    Developmentオプションみたいので設定を可変にしてほしいが多分そういう想定になっていないので変えれない、変えさせないのだろうなー。会社端末で設定しろとそういうことじゃないかな。