Magisterka - Testowanie & stuff

Hej!

Kończę właśnie pisanie pracy magisterskiej. Temat to “Testowo Zorientowane Metodyki Wytwarzania Oprogramowania”, oczywiście na przykładzie Ruby & Rails. Trochę to o wszystkim, trochę (mam nadzieję, że trochę) o niczym.

Jeśli ktoś ma ochotę zerknąć, pokrytykować, alboco, to jest ona “pół oficjalnie ;)” dostępna tutaj: https://github.com/marcinb/thesis/blob/master/docs/balinski/thesis/thesis.pdf

Aha - uprzedzam, że praca jest mocno teoretyczna i żadnych pr0 h4xów tam raczej nie znajdziecie.

BTW: Mam w planach dojść do porozumienia z władzami uczelni, tak, żeby można było moje dzieło oficjalnie, publicznie, za free udostępnić (kwestia licencji do przemyślenia). Czy ktoś z was próbował z pozytywnym skutkiem czegoś takiego?

Przecież Twoja magisterka jest Twoją własnością, nie przekazujesz uczelni ani majątkowych, ani tym razem osobistych praw autorskich.

To nie takie proste :

[cite]
Co do zasady, prawa autorskie do utworu, zarówno osobiste, jak i majątkowe przysługują twórcy, czyli w odniesieniu do pracy dyplomowej studentowi. Pewien wyjątek przewiduje art. 15a PrAutU. Wg niego uczelni przysługuje pierwszeństwo w opublikowaniu pracy dyplomowej studenta. Warto podkreślić, iż na mocy tego przepisu na uczelnię przechodzi tylko to jedno konkretne uprawnienie, natomiast pozostałe uprawnienia pozostają przy twórcy – studencie. Oznacza to, iż uczelnia ma obowiązek poszanować prawa studenta jak np. prawo do oznaczania utworu swoim nazwiskiem. Wyjątek ten jest ograniczony czasowo – jeżeli w ciągu 6 miesięcy od obrony pracy uczelnia nie skorzysta ze swego uprawnienia, prawo do opublikowania wraca z powrotem do studenta.
[/cite]

dokładnie tak jak napisał gotar - na Polibudzie w Poznaniu też tak jest :confused: mieliśmy nawet specjalny przedmiot temu poświęcony :rolleyes:

na polibudzie warszawskiej uczelnia moze czerpać zyski z oprogramowania studenta:P

zaczynacie poruszać na tym forum drażiwe tematy (praca magisterska). Da się jakoś ten wątek przyblokować? :wink:

Najprostsze rozwiązanie: dołączasz do projektu bardzo prostą i małą bibliotekę na licencji (A)GPL. Udostępniając Twoją pracę magisterską (a w niej częściowy bądź pełen kod źródłowy) w uczelnianej bibliotece, uniwersytet staje się dystrybutorem oprogramowania i musi postąpić zgodnie z zasadami zawartymi w licencji biblioteki na (A)GPL.

GPL działa jak wirus, ale w tym wypadku może być przydatny :slight_smile:

1 Like

Oj, taki manewr na granicy sabotażu licencyjnego to dopiero jest wątpliwy prawnie.

Mój opiekun pracy inżynierskiej (AGH) sam wymógł na nas wydanie projektu na licencji GPL, ale on jest miłośnikiem otwartego oprogramowania ;]

Widzę, że co uczelnia to obyczaj :wink:

Gdybyś chciał dodać kolorowanie składni kodu Rubiego, to używamy w prezentacjach SRUGa, pythonowego pygmentize.

Możesz zerknąć do kodu źródłowego (presentation.tex i Rakefile): https://github.com/SRUG/chef-introduction-presentation
Znajomy dopisał nawet nawet kolorowanie dla ogóra: https://github.com/biern/pygmentHighliters

ogólnie to tak… Żeby nie było plagiatu to kod aplikacji musi się różnić w iluśtam % … No to wystarczy przepisanie i ‘wyczyszczenie’ kodu ze śmieci i voila - masz zupełnie nową app’kę :smiley:
@hubertlepicki, dlaczego ten temat jest drażliwy na tym forum?

Kiepska linia obrony w razie ewentualnego procesu.

Idź pan w cholerę.

Tak na marginesie przydało by się to porządnie złożyć. Polecam klasę wimgr do prac magisterskich, a jeszcze lepiej odwieżoną wesję przepisaną na xelatex (utf-8)

Jak już latex to można wykorzystać to i uczynić ją piękną. Jak by co mogę pomóc złożyłem w życiu wiele prac ;]

Polecam też: ,Nie za krótkie wprowadzenie do latex’’ jest pdf w sieci za darmo, bo masz np źle używaną ,-’’ jest różnica kiedy używamy ,-’’ a kiedy ,–’’, a kiedy ,—’’ i inne takie szczeegóły. Nie wiem czy na uczelni u was patrzą na prawidłowy skład, czy tylko oby bylo w Tex

Jeśli nie chcesz czekać aż uczelnia nie opublikuje twojej pracy to wystarczy napisać do dziekana wniosek z prośbą by uczelnia zrzekła się przysługującego jej prawa do pierwszeństwa publikacji.

Drobna sugestia ode mnie: daj tę pracę komuś do sprawdzenia. Wiem, że na politechnikach nie kładą zbyt dużego nacisku na język polski, ale potencjalnym czytelnikom na pewno byłoby trochę łatwiej ;-).

Dzięki za sugestię, obczaję w wolnej chwili.

Kurde, a myślałem, że już jest piękna… odezwę się do Ciebie w tej kwestii :wink:

Wrzuciłem ją tutaj właśnie w nadziei, że wychwycicie chłopaki jakieś braki :slight_smile:

Pygments jest mocne ale CodeRay jest w Ruby :slight_smile:

ruby -rrubygems -e 'require "coderay"; puts CodeRay.scan("puts :abc", :ruby).div'

Szybkie przemyślenia po naprawde ekspresowym przeczytaniu kodu.

Brakuje mi wad (jako równowagi do zalet) podejścia TDD i BDD. Z mojego doświadczenia wypadało by wymienić:

  • Zwiększony czas dostarczenia pierwszej wersji oprogramowania / prototypu.
  • Konieczność inwestycji zasobów(czasu, pieniędzy) w testy. (Których aplikacja może nie potrzebować bo jest trywialna, lub nie ma znaczenia biznesowego)
  • Konieczność adaptacji programistów (o ile nie zatrudnia się dedykowanych testerów), bycie dobrym programistą nie czyni automatycznie kogoś dobrym testerem i vice-versa. Te umiejętności nei są wymienne o czym wiele osób implementujących TDD/BDD wydaje się nie pamiętać.

Jak doczytam dalej zgłoszę resztę.