Krzysztof Andrzej Parjaszewski:
Marzę o świecie, w którym płaci się za dobrą złożoność algorytmu, wysoką jakość kodu i inwestuje się w szybki rozwój
Widać, że Googlizarka to nie tylko moc tysięcy serwerów, ale też starannie zrealizowany kod i dobrze przemyślany algorytm. ALe tu konkretów nie umiem podać.
Mam za to kilka własnych przykładów, że warto tworzyc dobre algorytmy.
Kiedyś kolega wygłosił referat o pewnym algorytmie optymalizacji, który mną tak wstrząsnął, że w kilka miesięcy później postanowiłem wypróbować swój nowy komputer na nim właśnie. Implementowałem z pamięci odtwarzając algorytm. Okazało się, że w tym czasie kolega przygotowywał artykuł o tym do czasopisma i przypadkowo zaczął mi się żalić, że nie może liczyć większych instacji problemu niż 100. A ja mu na to, że właśnie przed wyjściem z pracy mój komputer policzył dla tysiąca. Postanowiliśmy porównać wyniki i programy. Okazało się, że źle zapamiętałem algorytm kolegi i liczyłem od drugiego końca. To jednak spowodowało, że mój algorytm miał złożoność O(n^2) gdy jego typową dla algorytmów programowania dynamicznego O(n^3). Opublikowaliśmy więc obydwa algorytmy razem:
http://www.math.utah.edu/pub/tex/bib/infoproc1980.html...
Pytanie czy komuś na świecie przydają się nasze algorytmy?
Za to pod tym względem mogę być dumny z moich algorytmów naboru do szkół
http://cepis-upgrade.com/issues/2005/6/up6-6Upenet.pdf str 10-13. Horror naboru do liceów 2002 roku nie powtórzył się w Poznaniu w 2003, bo już we wrześniu biegałem z tym algorytmem zaprogramowanym na notebooku wśród urzędników. Potem firma PCSS udostępniła system kilkunastu innym miastom.
Tyle, że problem na tyle łatwy, pokrewny sortowaniu, że możnaby kandydatów z całej Polski przetworzyć na jednym serwerze w parę minut.
nowych gałęzi Computer Science, takich jak Distributed Data Mining, Sieci Neuronowe, Sztuczna Inteligencja, Idealny kompilator
Te akurat dziedziny od lat nie zmieniają statusu dobrze rokujących i bliższe są s-f.