-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!news.unit0.net!feeder1.cambriumusenet.nl!feeder2.cambriumu
senet.nl!feed.tweaknews.nl!209.85.216.88.MISMATCH!l8no53202577qao.0!news-out.go
ogle.com!r17ni34184845qap.0!nntp.google.com!l8no53202570qao.0!postnews.google.c
om!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Mon, 15 Oct 2012 16:51:44 -0700 (PDT)
In-Reply-To: <a...@n...chmurka.net>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=89.229.34.123;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 89.229.34.123
References: <k59gbj$be7$1@node2.news.atman.pl>
<6...@g...com>
<k59jgh$mb7$1@mx1.internetia.pl> <k59jvr$360$1@node1.news.atman.pl>
<k59q5n$np3$1@mx1.internetia.pl> <k5bc6k$4ea$1@mx1.internetia.pl>
<k5bkvg$jtk$1@mx1.internetia.pl> <k5bnr3$n79$1@mx1.internetia.pl>
<k5bpdr$755$1@node1.news.atman.pl> <k5bqo8$n79$4@mx1.internetia.pl>
<k5bqv6$8oq$1@node1.news.atman.pl> <k5bsuf$n79$5@mx1.internetia.pl>
<k5bsva$aoq$1@node1.news.atman.pl> <k5bvic$n79$6@mx1.internetia.pl>
<k5cqnf$gac$1@node2.news.atman.pl> <k5hnqe$86f$1@adenine.netfront.net>
<3...@g...com>
<a...@n...chmurka.net>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a...@g...com>
Subject: Re: sortowanie
From: "M.M." <m...@g...com>
Injection-Date: Mon, 15 Oct 2012 23:51:44 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Lines: 101
Xref: news-archive.icm.edu.pl pl.comp.programming:199950
[ ukryj nagłówki ]W dniu poniedziałek, 15 października 2012 23:59:13 UTC+2 użytkownik Andrzej Jarzabek
napisał:
> Tylko że opłacalność tego potrafi też działać w drugą stronę - firma
> sprzedała program w jakiejś tam wersji, klienci chcą następnej wersji i
> nawet są skłonni zapłacić dużą kasę, ale z powodu niedobrych praktyk
> rozwijanie kolejnych wersji staje się coraz droższe, a co za tym idzie
> coraz mniej opłacalne.
Można się tylko zgodzić.
> Albo jeszcze gorzej: program którego zrobienie kosztowało dwa miliony
> został sprzedany za cztery, tylko że się okazuje, że w programie jest
> sporo bugów, które producent musi zapatchować za darmo, i patchowanie w
> końcu kosztuje kolejne trzy miliony.
Najwyraźniej my to wiemy.
> Poważnie jednak - to jest absolutnie normalne, że funkcjonalność
> programu jest rozbudowywana w ten sposób. Tak się robi, na tym się
> zarabia, i porządnie zrobione jest to obopólnie korzystne dla
> zamawiającego, jak i dla producenta. Chodzi jednak o to, że porządne
> zrobienie tego nie oznacza dopuszczenia do sieczki, a nawet jak już się
> sieczka gdzieniegdzie zrobi, to da się ją posprzątać. Powiesz, że
> klienta nie interesuje, czy jest sieczka, czy nie. Ale czy nie
> interesuje go również, czy zaimplementowanie kolejnego wymagania zajmie
> dwa tygodnie, czy - z powodu sieczki - dziesięć? Czy nie interesuje go
> ile razy na miesiąć system będzie padał i jaki będzie miał downtime?
Raczej powiem że w praktyce nie potrafię albo przepchnąć takiej argumentacji,
pomimo że moim zdaniem też jest oczywista, albo w praktyce zrobienie dobrego
projektu jest w ogóle trudne do osiągnięcia. Chodzi mi o taką praktykę...
jakby to zgrabnie określić, może... całą praktykę biznesową, nie tylko
programistyczną.
Nie potrafię przepchnąć takiej argumentacji w najróżniejszych okolicznościach. A to w
rozmowie z kolegą z zespołu ciężko, bo zaraz rozmowa przyjmie taki ton, że
uważam iż on zrobił sieczkę a nie porządny kod. Gdy poczuje zagrożenie z mojej
strony, to strach się bać co mi za plecami odwinie. Z managementem ciężko, bo
łatwo górę bierze chciwość i zaoszczędzenie odrobiny czasu. Z klientem to już w
ogóle najtrudniej, bo klient nie dysponuje odpowiednią wiedzą, a często chce
narzucać pewne rzeczy. Kolejna sprawa to wypada operować konkretami. Trzeba
podać jakie rozbudowy, o ile przyspieszą późniejszy czas wykonania, itd. Nie
da się przecież tak zaprojektować programu, żeby zupełnie każda modyfikacja była w
przyszłości łatwa. Z kolei żeby operować konkretami to trzeba dobrze znać dziedzinę,
ale
nawet jak się zna dziedzinę to jest trudno oszacować czas i próg opłacalności.
W mojej praktyce nigdy większego projektu nie robiłem dla dziedziny o której
na starcie miałem pojęcie. Zawsze musiałem douczyć się na szybko. Właściwie to
nie wiedziałem nawet co w ogóle może być użyteczne w systemie i jakie rozbudowy
zaproponować. W takich warunkach musiałem oszacować czas, cenę i, co tu dużo mówić,
odgadnąć jaki projekt będzie najlepszy. Nie można bez dobrej znajomości dziedziny
zrobić
dobrego projektu, można go co najwyżej odgadnąć. Kolejny problem jest taki, że krótko
po
rozpoczęciu chcą zobaczyć jakiś prototyp, tak jakby dla pewności że prace w
ogóle trwają. Prototyp wprost z definicji da się wykonać na skróty. Chociażby
można go zrobić bez uprzedniego przemyślenia jak będzie testowany, ale jest
więcej pułapek. Potem przy przechodzeniu z prototypu do pełnej wersji może nagle
się okazać, że program będzie bardzo trudny w testowaniu.
We wszystko powyższe czasami wplata się problem wydajnościowy, a kod
po zoptymalizowaniu to już masakra w utrzymaniu.
Aktualnie borykam się z właśnie z tego typu problemem - projekt który był dobry na
potrzeby prototypu, okazał się kiepski dla pełnej wersji.
Pozdrawiam
P.S.
Czy widac polskie znaki?
Następne wpisy z tego wątku
- 16.10.12 04:12 Baranosiu
- 16.10.12 07:25 kenobi
- 16.10.12 08:48 kenobi
- 16.10.12 09:09 kenobi
- 16.10.12 09:39 Edek Pienkowski
- 16.10.12 10:15 Edek Pienkowski
- 16.10.12 10:47 Michoo
- 16.10.12 11:28 kenobi
- 16.10.12 11:39 slawek
- 16.10.12 11:45 slawek
- 16.10.12 12:10 Michoo
- 16.10.12 12:40 slawek
- 16.10.12 12:51 Baranosiu
- 16.10.12 13:07 slawek
- 16.10.12 13:52 Michoo
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO