BPStudy#178〜成長し続け、変更を楽に安全にできるソフトウェア設計とは 株式会社ビープラウドが主催するIT勉強会 2022年6月30日 設計を学ぶのは自分のため 「正しい」学び方があるわけではない 設計の学びに特定の到達点はない 何を学ぶのか 設計の学び方 上達する:練習して変化する 成長する:時間をかけて変化する ひらめき:突発的に変化する
記事の構成 アジャイルソフトウェア開発とは アジャイルマニフェストとは アジャイルマニフェストの問題 そこで、アジャイルの本質 by マーティンファウラー アジャイルソフトウェア開発とは? アジャイルソフトウェア開発とはなんでしょうか? 「アジャイルマニフェスト(後述)の4つの価値観、12の原則に従う開発方法の総称」 これが最もオリジナルな定義です。 なぜこんなややこしい言い回しをするのは後から説明します。 重要なことは、「アジャイル」という具体的な手法があるわけではないということです。 アジャイルはマインドセット(思想、考え方)です。そのため、 ✖️ do agile 「アジャイルをやる」はありません。 ⭕️ be agile 「アジャイルになる、アジャイルの思想に則る」はあります。 アジャイルの思想に則った開発手法として ・スクラム ・エクストリームプログラミング(XP) ・リーンスタ
まえせつ こんにちは、クラッソーネ CTOのマツモトです。好きなザクはMS06R-2です。 さて、弊社の開発チームには比較的キャリアの浅めなメンバもいます。 そんな彼/彼女たちに読んでおいてもらえると嬉しいなあと思っている書籍を挙げてみようと思います。 雑誌の4月号なんかでよくある新人特集みたいな感じですね。 選書基準としては、今この瞬間の How to ではなく、知見の寿命が長そうなものとしています。 これは余談なのですが、むかしよく勉強会とか読書会とかを主催していた時期があって、その時のコンセプトが「明日の仕事に役に立たない」でした。 ベースとしては「仕事でいま必要なことは今すぐちゃんと調べればいいだろ、仕事なんだし」と思うところがあって、「今すぐに役には立たないかもしれないが、N年後にはきっといい影響が出ているはずであろうこと」をテーマに選んだりしていました。(極論すれば「大学の講義
ゲームエンジンや3Dソフトウェアを利用して高度な表現ができるこの時代でも、プリミティブな描画や動き、アルゴリズムから学べることは多い。それらをJavaScriptで書くクリエイティブコーディングという形で学べる手引書が本書となる。
はじめに ソフトウェアプロジェクトには不思議な性質があります。現状のスケジュールに課題を感じて、短くするために人員を投下しても、なかなか思い通りに短くならない。それどころか悪化してしまうことがあります。場合によってはプロジェクト自体が破綻して失敗してしまうことすらあります。 今回は、このようなソフトウェアプロジェクトに潜む直感に反する性質を数理的なモデルを介して理解していく試みです。ある種の思考実験としてお楽しみください。 宣伝 Qiitaさんとコラボ企画でアドベントカレンダーをつくりました。 DXをめちゃくちゃ改善した話を募集しています。 https://qiita.com/advent-calendar/2021/dx-improvement 10人の妊婦がいても1ヶ月で一人の子供は生まれない これは誰かの技術力やプロジェクトマネジメント力に欠陥があるのではなく、「人月の神話」で有名な
根本の問題意識 ソフトウェアの設計スキルはどのように獲得する(させる)ことが効果的であるのか ソフトウェアアーキテクチャの目的 そもそもソフトウェアアーキテクチャはどのような欲望を満たすための方法か ソフトウェアアーキテクチャの目的は、求められるシステムを構築・保守するための必要な人材を最小限に抑えること である。 (CLEAN ARCHITECTURE) 「求められるシステムを構築・保守するための必要な人材を最小限に抑えたい」 => 構築容易性 と 保守容易性 を確保したい 構築容易性 「構築しやすさ」とは? ソフトウェアを構築するとはどういうことか ソフトウェアの2つの価値: 「振る舞い」と「構造」 振る舞い: 要件を満たすこと => いわゆる機能 構造: 振る舞いを簡単に変更できること => いわゆるアーキテクチャ 構築しやすさ=価値の生み出しやすさ 要件を満たしながら振る舞いを変更
Blender アセット Blender アドオン プラグイン&アドオン-Plugin&Addon THE MEGA FLEET - Blender向けの最大級の自動車モデルコレク... 2024-05-02 3D CGI StudioによるBlender向けの最大級の自動車モデルコレクションアドオン『THE MEGA FLEET』がリリースされました! 続きを読む Blender アドオン プラグイン&アドオン-Plugin&Addon Step Loop Select Ver1.4 - 1列飛ばしで連続面ループ選択... 2024-05-01 KKS氏(@kksabnormal)による1列飛ばしでループ選択を可能にするBlenderアドオン『Step Loop Select Ver1.4』が無料公開されています! 続きを読む
BtoBなソフトウェアの開発において業務知識なしにシステム設計をすることはほぼ不可能に近い。 これまで、業務支援系のシステム開発はSIer企業たちのお家芸であったが、近年ではWeb系のベンチャー企業やスタートアップであってもこれまでSIerが担っていたようなドメイン領域で戦うことが増えている。 「会計処理」「流通管理」「在庫管理」「人事管理」あたりのドメインにまつわるシステム設計は、BtoBをやっていればいつか必ず遭遇することになる。その際にドメインに関する知識を一切持たずにまともなシステム設計をすることはたいていの場合難しい。 Web系であれなんであれ、BtoBなソフトウェアエンジニアは自分たちが取り組むドメインに関する知識を持ってシステム設計に臨む必要がある。これはデザインパターンや設計手法"以前"の話だ。 ITエンジニアのための「業務知識」がわかる本 ITエンジニアのための【業務知識
僕は、1 日に少なくとも 3,000 行程度、多く書くときで 10,000 行以上のプログラムを書くことができる。その結果、多い月で 10 万行 / 月くらいである。なお、言語は書くソフトウェアの性質上、大半が C 言語である。 また、プログラミングにはバグが付き物だが、ここ 2、3 年の間は、発生するバグの数を極めて少なく保つことに成功している。 とても大きく複雑で、かつレイヤ的に OS に近い処理をたくさんやるプログラムを書く場合は、プログラミングをするときでも、事前の設計が極めて重要となる。設計をうまく行わないと、後になって全面的に書き直しをしないといけなくなったり、パフォーマンスが低下したりする原因となり、開発者の苦痛の原因となる。 当然のことながら、これまで書いたいくつかの大きく複雑といえるソフトウェアの大半の設計も、自分で行った。いかなる場合でも、設計は、最初の 1 回目で確定
はじめに @neet_seといいます。 普段はフリーランスエンジニアとして客先常駐の仕事をしています。 エンジニアとして働き始めて、現在5,6の客先を経験しました。 今回はその中でよく出てくるソフトウェアやツール類を紹介していきたいと思います。 1.Windows 10 説明不要、Windowsです。 Webの仕事ですとMacの比率が上がると思いますが、業務用システムの開発では殆どWindowsです。 Windowsのよく使うショートカットキーや機能は覚えておくのはマストでしょう。 ファンクションキーまで使いこなすと定型作業が楽になります。 1-1.ショートカットキー 1-1-1.必修 Ctrl+C:コピー Ctrl+V:ペースト Ctrl+X:切り取り Ctrl+Z:元に戻す Ctrl+Y:操作を戻す Ctrl+S:上書き保存 F5:ページの再度読み込み 1-1-2.最初から覚えてると一
会社のITヘルプデスクにソフトウェアのアクセス権やパスワードのリセットを依頼し、数時間から数日間待たされることほど無駄な時間はない。こうした問題を解決しようとしているのが、ベイエリアのスタートアップ「Moveworks」だ。 3年前に設立された同社は、このほどシリーズAでLightspeed Venture Partnersとベインキャピタルから総額3000万ドル(約33億円)を調達したと明らかにした。同社の製品は、アカウントのロック解除からメールリストの管理まで、様々なテックサポートを自動的に処理する。 単純作業の自動化をソフトウェアが行う「エンタープライズ・オートメーション」は、自然言語処理や機械学習をはじめとするAI技術の進化によって広く普及し始めている。Moveworksは、企業の業種や規模に関わらず、共通して発生するIT関連の雑務をエンタープライズ・オートメーションの技術を用いて
2017年度新卒研修がはじまりました! - ペパボテックブログ 上記エントリにあるように、今年の4月に入社してくれたフレッシュ・フレッシュ・フレーッシュな若者たち、社内では「新卒7期生」と呼ばれているみんなの研修の日々が続いています。毎日、彼ら彼女らががんばる姿を見ることができて、刺激的で楽しい最近を過ごしてきました。どうも @june29 です。 今は職種別の研修期間に突入していまして、エンジニア研修の座学もはじまりました。この座学は、ペパボの仲間たちがかわるがわる教壇に立ち、7期生に知っておいてほしい内容をおおいに語る時間になっています。下記は、座学講師を募集するインターネット掲示板の様子です。 ぼくも、ペパボに入社した2015年、その翌年の2016年と、こうした新卒生たちと交流する機会には積極的に関わってきました。自分とは違う世代の人たちと話していると気付くことが多いですからね。少し
先日、僕が大好きでリスペクトしてるソフトウェアエンジニアさんたちと意見交換会(呑み会)中にソフトウェアエンジニアの信用と信頼について話題になったのでメモ。 僕が「このソフトウェアエンジニアは信用できる」っていうのはどういう指標がありますか?って質問した時に出た意見としては コードに対して何らかの貢献をしている 新規プロダクトの開発など OSSのメンテナンスなど(パッチを送るなど) 自分の持つプロダクトに対する反応など が出てきた。 これらのような「良質なアウトプット」を定期的に行う頻度も大事だよねという感じ。 なるほど、確かにって思ったのだけど更にその中で良質なアウトプットとは何かという話題になった。 ソフトウェアエンジニアの属性 ソフトウェアエンジニアには得手不得手がある。 言語だったりレイヤーだったりで好き嫌いも含めて得手不得手がある。 更にもっと言えば「プロダクトの成長段階」でも得手
世間ではマストドンが流行っている。結論から言うとマストドンは思想的にも設計的にも失敗しているのでお祭りのように一時の話題になった後、急速に忘れ去られる運命にある。 マストドンを語るには、まずマストドンが実装しているプロトコルであるOStatusについて説明する必要がある。これはもともと、StatusNetというソフトウェアが提唱したプロトコルで、Twitterようなマイクロブログの更新通知のためのプロトコルだ。StatusNetは今は名前を変えてGNU Socialとして自由ソフトウェア財団の傘下になっている。 マストドンはいうなればGNU Socialの互換実装だ。その基本的な思想や設計はGNU Socialと同じだ。どちらも現在の大手ソーシャルネットワークサービスに共通の問題に対処しようとしている。 問題とは何か。権力の一極集中である。TwitterにしろFacebookにしろGoog
2017 - 03 - 16 ITでも機械でもない…マイナーな『食品メーカーエンジニア』のリアルを綴ってみる 食品とビジネス 食品とビジネス-就職・転職 スポンサーリンク シェアする Twitter Google+ Pocket 最近、WEBサービスやアプリケーションに触れる機会が多くなり 『エンジニア』 と呼ばれる人をよく目にします。 ブログを書いていると、本業で システムエンジニア や プログラマー 、 WEBデザイナー として働いている人とも関わるようになりましたね。 さて、僕は大学院を卒業してからずっと食品メーカーで働いています! 職種は 『技術系』 とでも言っておきましょうか。 複数の会社で 基礎研究 から 商品開発 、 製造ライン立ち上げ 、 生産管理 などを担当したので、どれが本職かと言われると怪しいところです…(器用貧乏?) そもそも食品メーカーの技術系は研究費がリッチな
2016年になってから色んなソフトウェアエンジニアの人と話してきて、その中で3人から聞いた例え話、格言、小噺が面白かったので、僕の中だけで留めておかずに開放しておく。 息継ぎをするには『まず息を吐く』という例え話 水泳で息継ぎをするなら『まず息を吐きなさい』と教わるらしい。これは息を吐かずにどこかで息を貯めてしまうと、ちゃんと息を吸えないという事を意味してる。息を吐くと苦しくなって顔は絶対に水面に出る。 これと同じことがソフトウェアの学習にも言える。 つまりまずアウトプットする、なんでも良い。作ったものをGitHubに公開するとか、発表するとか、ブログやQiitaに書くとか。ちゃんとアウトプットしたものはフィードバックがあり、そのフィードバックを受ける(PRやissue, 質問, マサカリ etc)、どんどん吐き出していくと吸わないとネタがなくなるので、吸い込むためにまたインプットする。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く