Jak tworzyć dobre oprogramowanie nie znajÄ…c siÄ™ na tym – cz.VI

Czerwiec 23rd, 2010

Jeśli wchodzisz w tego typu biznesowe układy z kimś kto jest dla ciebie zupełnie obcy, to rozważ czy warto wydać jakąś dodatkową kwotę na prawnika, który pomoże ci napisać stosowną umowę (kontrakt). W wielkim skrócie, jakie elementy powinna zawierać taka umowa znajdziesz poniżej:

klauzula poufności – musi być jasno powiedziane, że jeśli programista zdradzi komukolwiek sam pomysł twojego projektu należy się tobie odpowiednie odszkodowanie. Informacja dotycząca tego projektu pozostaje tylko między tobą i programistą.

sprawa płatności – w przypadku odpłatnego wykonania pracy, należy zadbać w umowie o to aby wszelkie wydatki związane z realizacją tego projektu znalazły odzwierciedlenie w zapisach, kosztorysach itp. Chodzi o to, że jeśli programista otrzymał za swoją pracę stosowne wynagrodzenie to wszelkie prawa do tego produktu masz tylko i wyłącznie ty. W ten sposób programista po zakończonej pracy nie będzie miał podstaw do żądania od ciebie przykładowo 50% udziału w zyskach za sprzedaż tego produktu.

Jak tworzyć dobre oprogramowanie nie znajÄ…c siÄ™ na tym – cz.V

Czerwiec 23rd, 2010

Jeśli udało ci się znaleźć jakiegoś programistę, który wyraził wolę współpracy i nie znasz jej umiejętności i wiedzy programistycznej zadaj takiej osobie poniższe pytania:

czy pisałeś już kiedykolwiek taki program lub podobny?

jakie masz doświadczenie? Jak długo jesteś programistą?

czy masz już teraz jakiś pomysł jak ulepszyć lub co zmienić, aby ten program był doskonalszy?

jak długo będzie trwało napisanie takiego programu?

Po uzyskaniu odpowiedzi na powyższe pytania będziesz na pewno więcej wiedział o twoim przyszłym współpracowniku i będziesz mógł podjąć lepszą decyzję czy podejmujesz z nim współpracę czy nie. Kolejnym krokiem będzie spisanie z taką osoby umowy. Niezależnie od tego czy poszukasz programisty na własną rękę czy skorzystasz z pośrednictwa specjalizowanych serwisów jak wspomniane wcześniej ScriptLance lub GetAFreelancer dobrą praktyką jest spisanie legalnej umowy. Nie ma nic gorszego jak sytuacja, kiedy takiemu programiście ujawniasz swój pomysł, wszystkie szczegóły (być może jest to najlepszy program na świecie) bez podpisanej umowy, a następnie patrzysz bezradnie jak nagle jakiś programista wprowadza twój pomysł w życie, a ciebie w tym biznesie już nie ma.

Jak tworzyć dobre oprogramowanie nie znajÄ…c siÄ™ na tym – cz.IV

Czerwiec 23rd, 2010

Jeśli byśmy mieli szukać programisty gdzie indziej, to nie lepszego miejsca niż internet. Są nawet specjalizowane portale, gdzie ogłaszają się programiści i chwalą się co do tej pory zrobili. Takim przykładowym portalem może być Elance lub GetFreelancer. Ogłasza się tam cała masa programistów i to wysokiej klasy, nierzadko z dużym dorobkiem i doświadczeniem. Jest też szansa, że jeśli twój pomysł jest naprawdę interesujący, niespotykany i nowatorski to uda ci się namówić takiego programistę do współpracy na zasadzie joint venture. Znacznie lepszym miejscem może się okazać ScriptLance. Ten serwis jest dedykowanym serwisem dla programistów. Oczywiście nie masz 100% gwarancji, że znajdziesz kogoś chętnego do współpracy na zasadach joint venture opisanych przeze mnie powyżej, ale możesz próbować. Kiedy zdecydujesz się na taką ścieżkę poszukiwania programisty, to wiedz, że musisz do tego wyboru podchodzić starannie i ostrożnie. Nie ma nic gorszego niż nieodpowiednia osoba do takiej roboty. Stracisz tylko czas, nerwy i być może pieniądze, a efekt będzie mizerny. Kluczem do sukcesu z pewnością będzie to, że taki programista zostanie zauroczony twoim pomysłem. Jeśli uwierzy w twoją ideę i będzie do niej przekonany równie mocno jak ty, jest szansa, że poświęci on tej sprawie dużo więcej uwagi i staranności niż na czystych zasadach komercyjnych. W jaki sposób sprawdzić umiejętności takiego programisty dowiesz się w następnym artykule z tej serii.

Jak tworzyć dobre oprogramowanie nie znajÄ…c siÄ™ na tym – cz.III

Czerwiec 23rd, 2010

Kolejnym krokiem będzie znalezienie odpowiedniego programisty, który zrobi dla ciebie tzw. czarną robotę. Jedno jest pewne, że nie musisz próbować kodować tego twojego wytworu wyobraźni samodzielnie. Jest co najmniej kilka sposobów na to aby znaleźć odpowiedniego programistę do wykonania twojego zadania w niedługim czasie, a dodatkowo jak będziesz miał farta, to możesz mieć to zrobione całkiem za darmo lub w najgorszym układzie za niewielkie pieniądze. Jednym z lepszych rozwiązań jest znalezienie programisty i zaproponowanie mu współpracy, czyli coś na kształt joint venture. Ty dajesz pomysł i ideę na program oraz zabezpieczasz marketing i sprzedaż, a on daje swoje umiejętności programistyczne oraz serwis techniczny produktu. Idealny układ. Jeśli jeszcze się dogadacie, że ewentualnymi zyskami dzielicie się pół na pół, to nie ma lepszego rozwiązania, choć możesz zaproponować takiemu programiście zupełnie inny podział. Wszystko jest kwestią umowy. W polskich realiach bardzo dobrym rozwiązaniem jest szukanie odpowiedniego programisty wśród studentów informatyki. Z taką osobą będzie też najłatwiej dogadać się na współpracę. Korzyść jest obustronna, a nawet powiedziałbym, że w pewnym stopniu to jest to większa korzyść dla takiego studenta niż dla ciebie. Znaleziony w ten sposób programista ma możliwość zrobienia czegoś czym będzie mógł się pochwalić w niedalekiej przyszłości starając się w jakiejś firmie o pracę. Jeśli jeszcze twój pomysł, wizja programu okaże się dla niego interesująca, masz prawie 100% pewność, że dojdzie między wami do takiej współpracy.

Jak tworzyć dobre oprogramowanie nie znajÄ…c siÄ™ na tym – cz.II

Czerwiec 23rd, 2010

Musisz bezwzględnie liczyć koszty i ustalać cenę końcową produktu w taki sposób, aby w określonym czasie pokryć poniesione koszty i zacząć na twoim produkcie zarabiać. Jak to wyliczyć? Jest to dosyć stosunkowo proste. Znając początkowe koszty oprogramowania, koszty ulepszeń i poprawek oraz koszt pakietu sumujesz je wszystkie. W następnym kroku dzielisz to przez zysk z jednej sprzedaży i jako wynik dostajesz ilość sztuk programów jaką musisz sprzedać, aby pokryć wszystkie koszty związane z jego produkcją. Każda sztuka programu sprzedana ponad wyliczone minimum jest dla ciebie już czystym zyskiem. Ideałem byłaby sytuacja kiedy po sprzedaży 25 lub 30 sztuk twojego produktu, programu zaczniesz zarabiać. Będzie to oznaczało, że bardzo dobrze skalkulowałeś jego cenę. Jednak mimo tak dobrze skalkulowanej ceny sytuacja ta nie zwalnia ciebie z obowiązku monitorowania cen konkurencji, chyba że twój program jest dużo lepszy od konkurencji lub na tyle unikalny, że cena nie jest tutaj decydującym czynnikiem jego zakupu bądź nie. Jeśli z jakiś względów okaże się, że miałeś dość spore koszty na etapie tworzenia tego produktu i cena jednostkowa jest znacząco wyższa niż u konkurencji to możesz zrobić przykładowo kilka wersji twojego programu. Możesz rozważyć możliwość wypuszczenia wersji edukacyjnej, domowej oraz profesjonalnej programu. Przy takim podejściu masz większe pole manewru jeśli chodzi o ustalenie ceny, możesz też skuteczniej walczyć z konkurencją i dopasowywać się do zmieniającej się sytuacji rynkowej. Oczywiście stworzenie kilku wersji twojego programu musi wiązać się ze zróżnicowaniem funkcjonalności tych wersji, a więc aby móc taką operację przeprowadzić sensownie musisz mieć pomysł o jakie funkcje możesz twój program wzbogacić lub zubożyć, aby nie odstawać od konkurencji in minus. Raczej przy tego typu rozwiązaniach powinieneś być tak samo dobry jak konkurencja lub nieco lepszy. Wtedy masz większą szansę na sukces rynkowy.

Jak tworzyć dobre oprogramowanie nie znajÄ…c siÄ™ na tym – cz.I

Czerwiec 23rd, 2010

Poświęcając czas na zaznajamianie się z ofertą konkurencji ma jeszcze jedną dodatkową zaletę. Oprócz tego, że dowiedziałeś się, czego nie robią lub czego brakuje programom konkurencji, to dodatkowo dość dobrze orientujesz się jaki jest poziom cenowy, jaka jest cena rynkowa programów podobnych do twojego. Z taką wiedzą możesz bez większego problemu ustalić cenę twojego programu na takim poziomie, aby był on produktem konkurencyjnym. Masz do wyboru albo nieco niższą cenę, albo taką samą jak u konkurencji. Ostateczny poziom ceny zależy od twojej strategii marketingowej oraz od tego na ile dobry lub lepszy jest twój produkt. Jednak tak czy tak zastanowił bym się dość mocno nad ceną. Raczej bym nie ryzykował na początku ustalenia ceny wyższej niż konkurencja. Jest kilka powodów, a jednym z ważniejszych jest fakt, że twój produkt jest nowy, nieznany, więc aby przyciągnąć klientów musisz coś w tym kierunku zrobić. Musisz mieć jakiś wabik, który spowoduje, że zaczniesz mieć klientów, użytkowników. Oczywiście warunek konieczny, że twój produkt jest co najmniej tak dobry jak konkurencji lub lepszy. Zupełnie z inną sytuacją mamy do czynienia wtedy, kiedy wiesz, że twój program znacznie odbiega funkcjonalnością in plus od tego co oferuje konkurencja. Wówczas masz możliwość wystartować z wyższą ceną twojego produktu już na samym początku. Innym zagadnieniem, o którym nie możesz zapomnieć są koszty jakie poniesiesz lub poniosłeś na zrobienie twojego programu.