-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Andrzej Jarzabek <a...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: Dlaczego w branży rozrywkowej najsłabiej płacą?
Date: Mon, 10 Oct 2011 04:57:05 +0100
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 63
Message-ID: <j6tqei$hr2$1@inews.gazeta.pl>
References: <5...@n...onet.pl> <j3ktcd$2o7$1@news.onet.pl>
<j3m5f0$du5$1@inews.gazeta.pl> <j3nii2$l4$1@inews.gazeta.pl>
<1...@a...googlegroups.com>
<j3o64b$ak$1@inews.gazeta.pl> <j3oon0$pnk$1@inews.gazeta.pl>
<j3qff0$8df$1@inews.gazeta.pl>
<4...@c...googlegroups.com>
<j4286s$jg9$1@inews.gazeta.pl> <j532hg$sr8$1@inews.gazeta.pl>
<j59mgi$9rv$1@inews.gazeta.pl> <j5g378$ooq$1@inews.gazeta.pl>
<j5s9mu$c1e$1@inews.gazeta.pl> <j60dl2$or5$1@inews.gazeta.pl>
<j6f0tl$f35$1@inews.gazeta.pl>
<f...@j...googlegroups.com>
<j6hra9$6qj$1@inews.gazeta.pl>
<4...@t...googlegroups.com>
<j6l5sd$5u$1@inews.gazeta.pl> <j6m0pc$pp6$1@inews.gazeta.pl>
<j6sqj7$skh$1@inews.gazeta.pl>
NNTP-Posting-Host: 5ac53c1f.bb.sky.com
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1318219027 18274 90.197.60.31 (10 Oct 2011 03:57:07 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Mon, 10 Oct 2011 03:57:07 +0000 (UTC)
X-User: septi
In-Reply-To: <j6sqj7$skh$1@inews.gazeta.pl>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20110929
Thunderbird/7.0.1
Xref: news-archive.icm.edu.pl pl.comp.programming:192687
[ ukryj nagłówki ]On 09/10/2011 19:52, Wojciech Jaczewski wrote:
> Andrzej Jarzabek wrote:
>
>> Nie omówić. Wypytać. Oczywiście będzie to obarczone jakimś tam błędem,
>> ale raczej niewielkim.
>
> Zaintrygowała mnie ta odpowiedź.
>
> Uważam, że mi od jakiegoś czasu udaje się tworzyć nie-wywalające się
> programy - oczywiście przy pierwszych uruchomieniach czasem się i wywalą,
> ale po poprawieniu działają już dobrze. Dużo trudniej jest doprowadzić do
> tego, aby każdy szczegół działał zgodnie z wymaganiami, niż do tego aby
> program się nie wywalał.
Zgodzę się, że to jest trudniejszy problem, ale to nie jest tylko
kwestia umiejętności programisty. Zresztą samo "wywalanie się" to był
skrót myślowy, możemy sobie rozszerzyć czy dodefionować pojęcie na
nieprawidłowe działanie programu wynikające z błędu programistycznego, w
przeciwieństwie do błędnego czy niedostatecznego sformułowania lub nie
do końca zrozumienia wymagań.
> Jednak jedyne co mógłbym powiedzieć o "technice", jak to robię jest: robić
> najprościej jak się da i realizować wyłącznie tę funkcjonalność, która jest
> wymagana. Taka odpowiedź miałaby jednak taką wadę, że do takiej odpowiedzi
> każdy, niezależnie od doświadczenia i umiejętności, mógłby przygotować się w
> minutę, a jednocześnie: to co jeden uważa za program prosty, dla drugiego
> może być programem bałaganiarskim.
No ale jeśli kandydat powie coś takiego na rozmowie, to oczywistym jest
kolejne pytanie, co konkretnie robi, żeby jego kod był prosty. Zeby
podał jakieś konkretne przykłady ze swojej praktyki na przykład, albo
odpowiedział na pytanie - jeśli funkcja ma realizować skomplikowaną
działalność, jak ją napisać, żeby była prosta. Dwie do pięciu minut na
odpowiedź dużo ci powie.
> Jeśli możesz, to przedstaw, jakie wg Ciebie techniki się wykorzystuje
> podczas robienia nie-wywalających się programów (wystarczy mi odnośnik do
> jakiegoś tekstu). Powinny spełniać następujące kryteria:
> - pomagać w osiągnięciu celu
> - być czasochłonne w nauczeniu się (bo gdyby dało się jej nauczyć w dzień-
> dwa, to nie byłoby sensu selekcjonować kandydatów wg kryterium znajomości
> tej techniki).
> - ma być trudno o nich opowiadać, jeśli samemu nie umie się ich wykorzystać.
Jest sporo takich technik, i o ile jest kilka w miarę uniwersalnych
(abstrakcja, czytelność, w tym ograniczenie długości funkcji, code
reuse, unit testing), to sporo jest zależnych od technologii (MT, OO,
exception safety, konkretny język programowania). Co do tekstu, no to
jest sporo książek traktujących o tych tematach, od ogólnych typu "Code
Complete" Steve'a McConnella, "Refactoring" Martina Fowlera et al. Jeśli
chodzi o C++ to np. "Effective C++" Scotta Meyersa itd.
W ogóle to można jeszcze zwrócić uwagę na istotny aspekt całej sprawy: w
pisaniu programów, które się nie wywalają, samo to, że napiszesz program
i on się nie wywala to jest tylko wierzchołek góry lodowej. Bardzo
istotne jest również to, żeby program napisany przez ciebie nie wywalił
się jak inny programista zacznie wprowadzać w nim zmiany, być może długo
po tym i być może nie mając do ciebie dostępu i nie mogąc cię spytać
dlaczego jest tak a nie inaczej. Oczywiście nie da się napisać programu
tak, żeby inny programista nie mógł wprowadzić do niego błędów, ale też
prawdopodobieństwo wprowadzenia później błędów jest mocno uzależnione od
jakości pierwotnego kodu. Niby jest to oczywiste, ale myślę, że niejeden
profesor kenobi by się przejechał na tym punkcie jak nic.
Następne wpisy z tego wątku
- 10.10.11 05:58
- 10.10.11 08:43 Andrzej Jarzabek
- 10.10.11 09:28
- 10.10.11 09:55 Andrzej Jarzabek
- 10.10.11 10:40
- 10.10.11 14:25 Andrzej Jarzabek
- 10.10.11 16:16
- 10.10.11 18:03 Edek
- 10.10.11 18:08 Edek
- 10.10.11 19:59 Waldek M.
- 10.10.11 20:42 Edek
- 10.10.11 20:52 Edek
- 11.10.11 03:13 Andrzej Jarzabek
- 11.10.11 03:31 Andrzej Jarzabek
- 11.10.11 11:44 Wojciech Jaczewski
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-12 Warszawa => PC Hardware Expert / Specjalista PC <=
- 2025-07-12 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2025-07-12 Warszawa => Administrator IT <=
- 2025-07-12 Warszawa => IT Administrator <=
- 2025-07-12 Warszawa => Asystent/tka ds. Administracji <=
- 2025-07-12 Warszawa => Specjalista/stka ds. Organizacji <=
- 2025-07-12 Warszawa => MENA New Business Manager <=
- 2025-07-12 Gdynia => Controlling systems Consultant <=
- 2025-07-12 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-07-12 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-07-12 Warszawa => Dyrektor IT <=
- 2025-07-12 Warszawa => IT Director <=
- 2025-07-12 Czy wypowiedź Kaczyńskiego o Braunie jest skarżalna? ["działa z OBCEJ inspiracji"]
- 2025-07-11 Rejestrator temperatur - termopara, siec
- 2025-07-11 DPD, przeniesienie numerów z a2mobile i z Orange