タグ付けされた質問 「development-environment」

ソフトウェア開発が行われる環境に関する質問。これには、使用されるハードウェア、ソフトウェア、プロセス、および方法論が含まれます。質問はソフトウェア開発に固有であることが期待され、ソフトウェア開発の分野で教育または経験を持つ人々の専門知識が必要です。

10
この世界の誰もが彼以外は間違っていると思う上司に取り組む方法は?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 6年前に閉鎖されました。 私は真剣に、私たちの変数名を変更しても(合理的ではあるが)、4回のようにコードを(レビュー後に)送り返す人にどのように取り組むのですか?私は確かに私がそれほど悪い開発者ではないことを知っています! 彼は何度も理想を実行しますが、それは業界のベストプラクティスではありません!私は彼が私の主張を証明しようとしてインターネット上で見つけられるどんなリンクでも指摘するが、結局彼は私たちを締め出すために彼の権威を使っている。 病気と疲れ。欲求不満。仕事を辞める以外に方法はありますか?

4
プロのプログラマーではない、または決してプロではない人が、より読みやすく使いやすいコードを書くのを支援する[クローズ]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 4年前に閉鎖されました。 私はエルビスであり、アインシュタインになることを一生懸命学ぼうとしています。私はモートで働いています。 このクレイジーなバカは何を言っているんだ!?!?(最初の数段落だけを読む必要があります) あなたがそのリンクを読む気にならないなら、基本的に、私はプロのプログラマーであり、私のボスはそうです(これは恐ろしく正確です): コンピューターサイエンスの学位はないが、OfficeとVBAに精通しており、通常は同僚の間で共有される生産性アプリケーションを記述するプロの基幹業務プログラマー とは言うものの、私の仕事の大部分は、彼の丸石で結ばれたコードを取得し、生産準備を整えることです。しかし、非常に貧弱なスタイルとカーゴカルティズムがこれを難しくしています。これは、彼がプログラミングの本を読むことを嫌がり、コードをリファクタリングするのを手伝ってくれるという事実によってさらに悪化します。 プロのプログラマーではない人を助けるための戦略は他にもありますか?プロのプログラマーが私にとって使いやすく解釈しやすいコードを今後書くことはありませんか?

5
コーダーと競争するのが好きな上司/マネージャーに取り組む方法[非公開]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 4年前に閉鎖されました。 私たちの会社で最近の再編が行われた後、新しいラインマネージャーを迎えました。彼は一般に大丈夫であり、前のものほど卑劣ではありません。「卑劣」というのは、彼が邪悪なマネージャーであったという意味ではありません-私はこの用語で、ほとんどの情報を自分自身に保持し、他のチームメンバーと共有せず、人」-あなたはアイデアを得る。 しかし、それにもかかわらず、私は前のマネージャーと非常に良い関係を維持することができました-そして、私は非常に生産的でした。 私の新しい上司はよりオープンであり、良いことですが、問題をできるだけ早く解決するために別の開発者に同じタスクを与えることで、彼の品質の1つが嫌いです。すでに理解しているかもしれませんが、私たちのような環境では情報は自由に流れません。だから、私のマネージャーが10分前に話していた人は、私が今取り組んでいるのと同じ問題に取り組み始めているかもしれません。それは数回起こり、同じ問題に取り組んでいる人がいると耳にするたびに-私は行って、問題を所有しているマネージャーに尋ねましたが、彼は通常彼の答えを非常に避けていました。 だから私の質問は-私のマネージャーがそれをするのを止める方法は?半ダースの開発者からなる小さなチームでは、私は最も上級の開発者であり、通常はレースから免れていますが、それが私を襲ったとき、それは本当に私の神経を引きます。 そしてもう一つ:私はマネージャーが悪い/悪のボスであることをほのめかしていません。世界が公平であるか、そうあるべきだとも信じていません。ただ、彼にレースをやめさせる方法を見つけたいです。一度に一つのことを。

7
マネージャーは、開発と本番の複合環境を望んでいます
私は大規模な組織をサポートする小さなプログラミングチームで働いています。今年、マネージャーは、Oracle Apexテクノロジーを使用して会社データの大部分を処理することを決定しました。 Apexサーバーが1つしかないことを除いて、これは問題ありません。マネージャーは、すべてがその1つのインスタンスで発生することを決定しました。私たちのチームはアプリを開発していますが、マネージャーはそれらをデモし、社内のクライアントはそれらを使用します。 Apexへの投資が増え、アプリがより複雑になり、ユーザーの数が増えるにつれて、これが悪化すると予想されます。ベストプラクティスは、開発環境、テスト環境、および運用環境を別々にすることだと聞きましたが、なぜそうなのですか? 質問:開発環境、テスト環境、および運用環境を個別に用意する必要があるのはなぜですか?

5
作業中の開発環境で過去のプロジェクトを維持する効果的な方法は?
過去のプロジェクトを実行したいときはいつでも、それを見つけることができるようになり、実行できるようにすべてをセットアップするまでに時間がかかることがわかりました。 たとえば、Linuxで作成したpythonプロジェクトがあり、Linuxに簡単にインストールできるソフトウェアパッケージに依存していますが、使用しているLinux VMはもうありません。私の他のプロジェクトのいくつかは、Webサーバー構成、PATH変数、sdk、IDE、OSバージョン、デバイスなどの他の変数に依存しています。 誰かがこの問題を処理する効果的な方法を持っていますか?今のところ、ソースコードのバックアップを維持することだけに関心がありますが、動作中の開発環境を再構築することは難しく、動作中の開発環境を維持することも困難です。

10
どの時点で、Windows開発者にWindowsの最新リリースにアップグレードさせる必要がありますか?
開発者のマシンを後のWindowsリリースにアップグレードするには、どの時点から始めるべきですか? 経験から、Microsoftは通常、他のすべてのOSについて壮大な失敗を抱えています(これについて議論を始めようとはしていません、それは私の認識です)つまり、2000は安定した有用なOSでしたが、私はうまくいきませんでした、xpは多くの企業がまだ使用している優れたOSでしたが、Vistaはうまくいきませんでした(この1つがうまくいかなかった理由はMicrosoftのせいではなく、Vistaと7は同じメジャーリビジョンであることがわかります) 7はしばらくの間使用される優れたOSのようです。XPのようなものが今ではあります。 とにかく、これは開発マシンをWindows 8にアップグレードすることに消極的です。 a。OSを1〜2年しか使用しないために、私たちのビジネスに多額の費用をかけたくありません。 b。また、Linuxのデュアルブートが必要であり、Windows 8とgrubがうまく連携しないことを読みました。 開発者に最新の環境で開発し、開発しているあらゆる技術の最先端を持っていることを望みます。テクノロジーカーブよりも先を走り続けるか、少なくともそれを維持したいのですが、ビジネスに意味を持たせたいです。 したがって、特に、この時点でマシンをアップグレードする必要がありますか?一般的に、この種のことを決定するためにどのような計算を使用すべきですか? 編集する ASP.NETアプリケーションだけでなくデスクトップUIアプリケーションも作成します。また、常にVisual Studioの最新リリースを使用していることを確認します。

3
ソフトウェア開発における環境命名基準?
私のプロジェクトは現在、環境の命名の問題に悩まされています。異なる環境では、どの環境に名前を付けるべきか、名前が何を指定するかについて異なる仮定を持っているため、それらを議論するときに混乱を引き起こしています。私は少し研究をしましたが、そこに標準は見つかりませんでした。 用語には、「ローカル」、「サンド」、「開発」、「テスト」、「ユーザー」、「QA」、「ステージング」、および「製品」が含まれます(さらに、さまざまな人々が尋ねたものもあります) 意見だけを探しているわけではありませんが、「誰もが」持っているものがあれば、それを受け入れます-非公式であっても、何らかの権限によって高度な定義を見つけようとしています。 現在使用している環境は次のとおりです。 開発者のPCの環境 開発者が自己テストにコードを直接アップロードする共有環境 QA担当者が標準と機能をテストする共有環境 完成したQAチェック済みコードがプロジェクトリクエスターによって承認される共有環境 最終チェックとして、および展開の準備として最終環境をミラーリングする環境 コードが使用されている最終環境 私はそれらを何と呼ぶか知っていますが、これには何らかの標準がありますか?前もって感謝します。

11
ローカル開発に適した軽量のソースリポジトリとは何ですか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 6年前に閉鎖されました。 私はローカルでいくつかのプロトタイピングを行っていますが、ソース管理を維持したいのですが(バックアップと復元の目的で)、必ずしもオープンソースとして公開したり、他の人が閲覧できるようにオンラインで公開したりする必要はありません。 ローカル開発にはどのソース管理システムを推奨しますか?私のシナリオのセットアップやウォークスルーは大歓迎です。 を探しています: 簡単なセットアップと管理。これは私のローカルマシンなので、Windows OSに制約されており、環境設定の変更と必要な学習曲線の量を最小限に抑えたいと思っています。ユーザーは1人だけなので、アクセス権などを設定したくありません。 リソースのオーバーヘッドが低いため、開発者のマシンでローカルにホストしたいので、CPUを使い果たしたくありません。大量のデータを保存する予定もありません。 おなじみ。以前にSVNクライアントを使用したことがあります。Visual Studioの統合は便利です。 ポータブル。外部ドライブまたは別のマシンに移動する必要がある場合。 自由。はい、私はそれがすべて欲しいのですが、お金を払う必要はありません。

10
遅いコンパイル環境でコーディングするための最善の方法は何ですか
私はC#でTDDスタイルのコーディングを使用していました。小さなコードの塊を作成/変更し、ソリューション全体を10秒で再コンパイルし、テストを再実行します。簡単... その開発方法論は、私が数年間、C ++コーディングに戻らなければならなかった昨年まで非常にうまく機能し、それ以来、私の生産性は劇的に低下したと感じています。言語としてのC ++は問題ではありません-私はC ++開発の経験がかなりありました...しかし、過去には。 私の生産性は小さなプロジェクトでも大丈夫ですが、プロジェクトのサイズが大きくなり、コンパイル時間が10分以上になると悪化します。そして、エラーを見つけた場合は、コンパイルを再開する必要があります。それは純粋にイライラさせられます。 したがって、私は小さなチャンク(以前のように)は受け入れられないと結論付けました-コードを手動でレビューするときに(高速C#コンパイラに依存せずに)1時間ほどコーディングの古い習慣にどのように身を置くことができますか? 、数時間に1回だけユニットテストを再コンパイル/再実行します。 C#とTDDでは、進化的な方法でコードを書くのは非常に簡単でした-数十回の繰り返しの後、私が始めたがらくたは良いコードになりましたが、それはもううまくいきません(遅いコンパイルで)環境)。

16
生産的なプログラミング環境に最も役立つものは何ですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 2年前に閉店。 ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 私たちの多くは、長年にわたって複数の環境で働いており、一部の人は他の人よりも生産的であることがわかっています。多くの場合、開発者の能力に直接関係するのではなく、環境に関係します。私自身もこれを経験しており、より速く、より良く発達したと思われる場所にいます。そしてまだ他の場所では、時間を引きずっていて、あまり考えずに開発しているようです。 生産的な開発環境をどのように作成すると思いますか?

3
各環境にあるコードのバージョンをどのように追跡できますか?
私のチームは現在、次のような非常に単純な分岐/展開プロセスを使用しています。 ┌────────┐ ┌────┐ ┌──────┐ Environments: │ DEV │ │ QA │ │ PROD │ └────────┘ └────┘ └──────┘ ▲ ▲ ▲ │ │ │ ┌────────┐ ┌────┐ ┌──────┐ Builds: │ DEV │ │ QA │ │ PROD │ └────────┘ └────┘ └──────┘ ▲ ▲ ▲ │ │ │ ┌────────┐ ┌────┐ ┌──────┐ Branches: │ …

9
現在のプログラミング環境を新しいラップトップに移行する最も簡単な方法は何ですか?
今日の標準では、かなり基本的なハードウェア構成のWinXPベースのラップトップがあります。より優れたハードウェアを備えたWinXPベースのラップトップにアップグレードする予定です。 問題:現在のラップトップには、cygwin、perl、rubyなどのソフトウェアが大量にあります。各ソフトウェアを手動でインストールするのはかなり面倒です。パッケージのカスタマイズは言うまでもありません。 現在のプログラミング環境を最小限の手間で移行できるソフトウェア(フリーウェアまたは商用、両方とも問題ありません)はありますか?

5
Windowsで開発し、Linuxでテストして実行する方法は?
私は、社内のいくつかの内部ソフトウェア(Pythonで作成)の2人の開発者のうちの1人です。ソフトウェアは、専用のLinuxボックスで実行するように設計されたサーバーアプリケーションです。現在、SVNリポジトリを保持するボックスが1つあり、このボックスはテストにも使用されます。問題は、Windows上のEclipseを使用してワークステーションで開発しているため、このアプリをWindowsで実行できないことです。 このような環境を適切に整理して、プロジェクトとコードの転送に貴重な時間を無駄にしないようにして、テストできるようにする方法は? 現在、私はsvnチェックアウトを行っており、いくつかのコードを変更してから、テスト用に開発サーバーにアップロードしています(svn経由ではありません)。サーバー上でテストし、何かを変更し、再度テストします。すべてがコミットされます。この絶え間ないアップロードとテストは、私を夢中にさせます。プロジェクトをサーバー上に保持しようとしました(ホームディレクトリにチェックアウトします)が、これによりEclipseで多くの問題が発生します。 明らかに私はこれについて多くの経験を持っていないので、この種の問題に関するベストプラクティスは何ですか?

4
エンタープライズネットワークの仮想化開発環境
エンタープライズ組織内の4人の開発者から成る小さなチーム向けに、仮想化を使用した開発環境の実装を試みています。これにより、開発環境、テスト環境、ステージング環境を個別に設定できるようになります。また、評価対象のシステムやツールの要件である新しいオペレーティングシステムへのアクセスが可能になります。既存のワークステーションクラスのマシンを再利用し、24GBのRAMとRAID-10を投入し、マシンをドメインに追加しようとするまで問題なく動作していました。 今、私たちは、時間の初めからすべてのエンタープライズ開発者が戦わなければならない戦争、つまり開発およびテスト環境のローカル制御のための戦いを始めています。ネットワークおよびIT管理者は、「ESXサーバーはエンタープライズ標準です」から「サーバーはクライアントVLANで許可されていません」から「[空欄に記入]は現在ローカルにあるスキルセットではありません」またはエンタープライズIT組織」。 必要に応じて、実稼働クラスのハードウェアと正式なITサポートを正当化することもできますが、時間がかかり、頭痛の種になります。その場合でも、これを実稼働システムとして扱うことでITリソースを正式に割り当てるには数か月かかる場合があります。そうしても、必要なローカル制御を失う可能性があります。 多くの皆さんが、非実稼働環境、特に仮想化の開発者による制御をめぐる同様の苦労を経験していると思います。そのため、私の質問は次のとおりです。 インフラストラクチャ(ITおよびネットワーク)の人々を勝ち取り、これらのタイプのサイロを、一般に(そして当然のことながら)このタイプの非(集中管理)インフラストラクチャ? これは技術的な正当化の問題であると感じましたか?それとも、コントロールと所有権をめぐる政治的闘争の多くですか? IT管​​理の開発環境になった場合、日々の開発とテストにどれほどの障害がありましたか? これらのネットワークアクセスの問題を回避するために、開発環境を切断されたVLANまたは完全に独立したネットワークに移動することになった人はいますか? また、これはHyper-V対ESXの聖戦ではありません(どちらでも構いません-ただし、Hyper-Vはこれらの目的のためにMSDNで「無料」であるため選択されました[はい、VMWareにも無料ツールがあります-一般的に、優れた管理ツールはそうではなく、 "Microsoftショップ"のローカル開発者が管理しやすいでしょう)-どちらに対する賛否両論はこの質問の範囲外です。 これは、仮想化と物理ハードウェアの比較でもありません。仮想化コンポーネントを使用しなくても、同じ質問をすることができます。 また、開発チームがパッチ管理とウイルス対策を管理するか、既存のエンタープライズシステムをサポートする場合は既存のエンタープライズシステムと統合することを既に保証していると仮定します。このシナリオは、さまざまな質問とともに、SFにも投稿されており、うまくいけば反対の視点を引き出すことができます。

2
開発から製品への構成の変更を効果的に追跡
この質問では、例としてSpring Bootサービスを取り上げていますが、これはどのようなテクノロジーでもかまいません。 次のように仮定します。 環境(dev / QA / prod)は異なるチームによって所有されています。これは、開発者が製品構成にアクセスできないようにする必要があることを意味します。 構成(application.propertiesとしましょう)は外部化されています。つまり、バイナリの一部ではありません。 同じバイナリ/パッケージ(service.jarとしましょう)が各環境にデプロイされ、自動デプロイメントによって制御されます バイナリアーティファクト(service.jar)への変更は自動的に各環境に伝達されますが、構成への変更には依然として手動による介入が必要であり、必然的に各環境で非同期化されます。 たとえば、開発チームが環境内のapplication.propertiesにいくつかのキーと値のペアを追加するとします。これらの新しいキーを記録する最良の方法は何ですか?それで、運用チームで展開が行われるときに、追加するキーが正確にわかっているため、新しいサービスを開始し、キーが見つからないために失敗することを確認するリスクが最小限に抑えられますか? 手動の手順が含まれることはわかっていますが、人々がこれをどのように処理し、最も効果的な方法を見つけるか知りたいです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.