Вибір (правильно?) Технології та середовища


10

Ми є двома розробниками на початку розробки нових веб-продуктів.

Ми обидва шанувальники бережливого стартового підходу і хотіли б практикувати постійне розгортання.

Тут виникає дилема - ми обидва походить із фону C # / Windows, і нам потрібно вирішити:

Дотримуючись .NET і Windows, ми не будемо витрачати час на вивчення нових технологій і вкладемо всі зусилля в розробку.

Перейдіть на Ruby on Rails та Linux, які мають хорошу репутацію швидкого нарощування та широку підтримку з відкритим кодом. Негативна сторона полягає в тому, що нам потрібно буде докласти чимало зусиль для вивчення Ruby, Rails та Linux ...

Що б ти зробив? Які ще міркування слід взяти до уваги?


Коли ви плануєте готувати продукт?

Відповіді:


11

Ну найпоширенішим варіантом є використання .NET, оскільки зусилля, які ви витрачаєте на вивчення іншої платформи, (з точки зору бізнесу) витрачають зусилля на те, щоб не доносити продукт своїм клієнтам.


5

У стартапі грайте на свої сили. Я б запропонував дотримуватися технологій .NET і побачити, чи можете ви потрапити в програму Microsoft BizSpark . Це дозволить отримати доступні ліцензії на потрібне програмне забезпечення з мінімальним ризиком.


Я хотів би зазначити, що BizSpark закінчується через 3 роки, а це означає, що ви будете платити повну ціну за свій стек MS на 4 рік. Залежно від того, скільки програмного забезпечення та скільки серверів ви працюєте, це може значно перевершити будь-яку вартість від витрачаючи додаткові цикли на початку, вивчаючи альтернативу з відкритим кодом.
Йорданія

2

Вам потрібно врахувати наступні фактори:

1) вартість розгортання на обраній вами платформі (існують ліцензії на запуск для .NET / Windows, але вам доведеться платити в підсумку, плюс порівняльні витрати на хостинг / обладнання)

2) Час, необхідний для підвищення кваліфікації (нуль для .NET у цьому випадку)

3) Що ви будуєте та придатність платформи для цього у короткостроковій перспективі (прототип, низьке використання тощо) та довгостроковій перспективі (чи буде це масштаб і чи дійсно ви маєте намір масштабувати чи це, скажімо, B2B, в цьому випадку обсяги завжди можуть бути порівняно низькими)

Мій інстинкт дотримується того, що ви знаєте, оскільки у вас буде багато чого, без того, щоб навчитися чомусь іншому, але вам потрібно зважити інші фактори, виходячи зі специфіки вашої ідеї.


2

Stackoverflow виконується в .Net . Тож нічого поганого щодо технології C # .Net або Windows.

Перший мій запуск був у C # .net, оскільки: а) усі засновники знайомі з C #. б) візуальна студія була і досі дуже доброзичлива для розробників для налагодження тощо.

Запуск був масовим провалом з бізнес-технологій.

Яку б технологію ви не вибрали, вам слід врахувати, чи вмієте ви / досить добре використовувати цю технологію для запуску через X років.

Як бачите, критерії, які ми мали вище, були недостатньо жорсткими. Ми не мали уявлення, скільки часу нам потрібно, щоб будувати річ. Ми просто знайомі з C # .Net, це все.

Ніхто з нас не має досвіду будувати щось близьке до того, що ми хотіли побудувати.

Через деякий час серверні збори та інше змушують нас скинути C # і переписати все на php. Це вже інша історія та ще одна помилка, що стосується бізнесу.

Справа в цій технології, яку ви збираєтеся використовувати, вона НЕ повинна бути крутою, різкою. Ви хочете створити веб-сторінку. Тож виберіть той, який дає найкращі шанси . Що дає найкращі шанси?

Виберіть технологію, за якою особа (и), які виконують більшість програмувань, мають АКТУАЛЬНИЙ досвід побудови аналогічно складного додатку ПЕРЕД

Будь ласка, прочитайте вищезгадане 10 разів.

Якби я звернувся до свого молодшого себе з 3-4 років тому, і він сказав би: "Але я не маю досвіду робити щось складне, про що я маю на увазі в ЯКІЙ МОВІ. Отже, як мені вибрати?"

Відповідь у розмірі 50 000 доларів (так, я стільки витратив гроші, вчившись на своїх помилках):

Виберіть той, який найбільше прощає ваш розвиток навчання.

Як ми визначаємо прощення ?

Наприклад, .Net покладається на сервер Windows. І сервер Windows дорожчий, ніж сервери Linux. Це факт. Навіть якщо у вас є ліцензії Bizspark, краще переконайтеся, що вам потрібно ввести гроші, коли термін дії ваших ліцензій закінчиться.

НЕ вважайте, що ви зможете вивчити C # .net за 3 роки. Важко сказати. Для мене це просто не вийшло.

Я раніше спробував RoR. Одного разу я прочитав статтю про двох інвестиційних банкірів із досвідом програмування ZERO, який досяг успіху.

Вони використовують RoR.

Я маю досвід програмування. Але RoR просто не працював для мене.

Я купував книги у Amazon тощо. Я намагався. Серйозно дав це з усіх сил.

Нарешті я оселився на Cakephp. Для мене це досить добре, щоб мати найкращі шанси відновити ще один веб-сайт. Пробачив достатньо, щоб я вчився у власному темпі.

Також так само, як ти знайшов кращих подруг не тому, що вони кращі, а тому, що ти краща людина після більшого досвіду, можливо, я також став краще програмістом

Тож мова не йде про те, що є кращим рамкою / мовою. Або що Cakephp - найкраще, що я використав. Можливо, я, нарешті, став достатньо хорошим програмістом для створення веб-сайту, який я мав на увазі.

Йдеться про те, що найкраще підходить для запуску.

О, ось халява.

Через 6 місяців, коли ви дебютуєте з альфа-чи приватною бета-версією, ви отримуєте відгуки клієнтів, і вам здається, що ви переписуєте всю річ новою мовою, чи не так?

Відповідь:

НІКОЛИ. НІКОЛИ. НІКОЛИ.

Існує стаття JoelOnSoftware про перезапис програмного забезпечення проти програмного забезпечення для рефакторингу. Я лінивий, щоб це знайти.

Він пропонує те саме.

Візьміть це у когось, хто обрав неправильну технологію, а потім переписав все це на php (без фреймворку), а потім скиньте запуск в кінці. І витратили на цей процес 50 000 доларів.

Це як шлюб. Виберіть технологію і до смерті зробіть запуск та технологічну частину.

Гаразд, я перебільшую, але тільки тому, що думати, що всі ваші ситуації з програмуванням можна вирішити іншою мовою / рамкою, занадто просто. Так само, як думати, ви б мали кращий шлюб, змінивши іншу людину. Набагато краще, хоча більше працювати над собою чи своїми практиками програмування .

Удачі. І продовжуйте вчитися. Будь ласка, заради вашого розуму, зніміть функції до абсолютного мінімуму. Перейдіть на google для отримання мінімально життєздатного продукту (MVP).

Це важливіше ніж обрану технологію.

Тому витрачайте належний час на планування / проектування цього МВП.

Планування важливе. Планів немає. Можливо, вам доведеться скинути свої плани, витративши 4 місяці на планування цього МВП, оскільки вам потрібно реагувати на мінливі обставини чи конкуренцію.

Це нормально. Планування на 4 місяці не пішло на сміття.

Тепер у вас буде більше знань про домен, ніж у вас до 4 місяців.

Тож навіть якщо на цьому етапі його спішно складений план, він повинен бути помітно кращим, ніж ваш перший проект 4 місяці тому.

Удачі!


1

Я збираюся йти проти зерна всіх інших тут і кажу, що вам краще послужити, щоб піти по маршруту з відкритим кодом.

Я працюю в .NET близько 8 років, і я використовую майже всі загальновідомі веб-мови та рамки з відкритим вихідним кодом, а також загалом за однаковими часовими рамками.

Якщо ви дійсно хочете піти з обмеженим підходом, ви, швидше за все, побачите, що простота інтеграції, вартість серверів та програмного забезпечення та продуктивність з часом будуть більш обґрунтованими у фінансовому плані та залежно від рівня вашого вміння та часу, який потрібно вкласти. цей бізнес може окупитися в короткий термін.

BizSpark - небезпечна дорога, яку можна спустити. Ви зрештою заплатите повну ціну за цей здоровенний стек програмного забезпечення, тоді як відкритий код завжди дешевий або безкоштовний.

У мене встановлені сервери на налаштуваннях хмарного сервера Rackspace. Ви можете отримати власний блискучий новий Linux-сервер із накопичувачем CDN за 11 доларів на місяць + незначні пропускну здатність та витрати на зберігання. Це гроші на каву.

Навчання Linux та середовище з відкритим кодом може зайняти деяке звикання, але це не якийсь багаторічний проект. Існує незліченна кількість форумів, покрокових інструкцій та людей, які можуть та бажають допомогти вам покращитись.


1
Якщо ви розвиваєтесь професійно (тобто це забезпечить ваш особистий дохід), якщо вартість ліцензій на програмне забезпечення є важливим фактором, ви дійсно недоотримуєте себе. Навіть MSDN-Universal (отримати VL, не має сенсу бути дурним) - це частка вартості людей.
Річард

@Richard: але навіщо платити людям + ліцензії на програмне забезпечення, якщо ви можете просто платити людям? І я справді маю на увазі витрати на ліцензування сервера, а не гроші IDE для розробника, що, як ви вже згадували, порівняно дешево. Якщо я тільки не бачив, що це робиться неправильно, коли ви починаєте намагатися масштабувати апаратне забезпечення сервера, вам доведеться платити за досить багато ліцензій на сервер та ліцензійні ліцензії. Це вбивця. Звичайно, він не збирається кусати вас, коли ви працюєте з налагодженнями локальних хостів, але, знову ж таки, якщо ви справді намагаєтесь вести мізерний бізнес, навіщо платити навіть додаткові 1000 доларів, якщо у вас є інші життєздатні варіанти?
Йордан

0

Якби я опинився у вашій ситуації, я б застосував технологію, в якій я найкращий. У моїй компанії була схожа ситуація, коли клієнт просив Java, а ми всі розробники .net.

На початку все було просто чудово, але згодом деякі дрібниці створили нам такі проблеми, і в один момент часові рамки стали SciFi.

На мій досвід, легко вивчити нову мову програмування та нові технології, але, щоб справді знати, потрібно довго.


-2

Просто зробіть це в c # і крапка в мережі .

  • Ви вже добрі
  • це краще, ніж рубін на рейках

2
які дані ви використовуєте для підтвердження вашої заяви про те, що C # кращий? А які твої критерії?
Вальтер

1
багато дуже важливих і статистично значущих даних
NimChimpsky
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.