13 grudnia 2012

Pytań o prace inżynierską końca nie widać

To już nie pierwszy raz, kiedy odpowiadam na pytanie w stylu "Mam pytanie odnośnie tematu pracy inżynierskiej, może Pan pomógłby nakierować na wybrany temat z jakieś dziedziny Javy bądź czegoś nowego. Aplikacja biznesowa, rozbudowana, połączona z jakimś API bądź coś zupełnie innego. Liczę na odpowiedź."

I co ja mam takiemu biedakowi odpowiedzieć?! Za mało jestem wyrazisty w swojej znajomości Javy i samemu daleko mi do określenia swoich zainteresowań poznawczych.

Z jednej strony języki programowania, przede wszystkim funkcyjne, w których miejsce znajdują Clojure, Scala i F#, ale nie stronię od artykułów i ciekawych wskazówek ze strony Dart, JRuby, Jython i JavaScript. Nie bez echa pozostają wydarzenia wokół Java 8. Choćby w samych językach programowania sporo tego.

Do tego należałoby dorzucić Java EE, serwery aplikacyjne (Apache TomEE i WebSphere Liberty Profile), specyfikacje OSGi, Enterprise OSGi i SCA.

Później jeszcze produkty typu IBM Worklight czy IBM BPM, aby nie zapomnieć o wciąż nękającym mnie o więcej czasu platformie Android.

Jak można przeczytać, ja powinienem być ostatnią osobą, z którą należałoby się wiązać, albo przynajmniej pytać o sugestie, bo sam jestem w kropce, za co się zabrać (!) Robię tym samym wszystko i nic!

Skończyło się na takiej odpowiedzi, bo właśnie wczoraj zgłosiłem ten temat do programu w ramach IBM:

Proponuję Enterprise OSGi jako temat baaardzo ciekawy a wciąż niedoceniany. Zacząłbym od przejrzenia/przeczytania specyfikacji 4.2 [1] i zabrania się za dłubanie przykładowych aplikacji, które będą uruchamiane na WebSphere 8.5.5 Alpha Liberty Profile [2], które z kolei trafią do githuba [3]. Tego jak widzę nigdy za wiele, a ludziska wykazują zainteresowanie.

Sam nad tym obecnie siedzę, aby przygotować zestaw materiałów "reklamujących", więc moglibyśmy połączyć siły.

[1] http://www.osgi.org/Download/Release4V42
[2] https://www.ibm.com/developerworks/mydeveloperworks/blogs/wasdev/entry/download_wlp_v85next_alpha?lang=en
[3] https://github.com/

Powodzenia życzę wszystkim borykającym się z samookreśleniem i wyborem tematu prac. Nic bardziej mylnego myśląc, że różnorodność pomaga. Poszedłbym nawet dalej z moimi tezami. Zaczynam twierdzić, że wiedza wcale nie uskrzydla, a wręcz odwrotnie - ogranicza w myśleniu, kierując je na już przetarte szlaki. Tego zazdroszczę mojemu najmłodszemu synowi - otwartości umysłu, braku ograniczeń i pasji odkrywania. Straciłem to drugie, a zaczyna się koniec pierwszego. Życzę innych doznań w 2013!

Jako pomysł jakiejkolwiek pracy sugeruję wyłączyć wszystko wokół i zastanowić się, czego samemu chciałoby się użyć. Niechby to już istniało i niechby to był Facebook, nie ważne. Właśnie za to zabrałbym się w pierwszym rzucie i zaczął swoje poczynania rozwojowe. Po drodze pojawi się wiele ciekawych tematów-odprysków.

7 komentarzy:

  1. Z tym "IBM Worklight czy IBM BPM" to nie na powaznie? Gdybym ja teraz mial pisac prace to pogrzebal bym raczej w arduino w polaczeniu z androidem - np monitorowanie terrarium (temperatura, wilgotnosc, natezenie swiatla) i notyfikacje w smartphonie (ewentualnie sterowanie, jak starczyloby czasu). Java EE i wszystkie enterprisowe kloce to nuda, a i tak przyjdzie na nie czas. Zycie jest za krotkie, zeby rozprawiac o CRUDach w czyms, co powinno byc choc troche kreatywne.

    OdpowiedzUsuń
    Odpowiedzi
    1. Doskonały pomysł! Tylko potwierdza, że za słabym, aby doradzać lub wykrzesać z siebie coś kreatywnego.

      Usuń
    2. Tu sie nie zgodze, po prostu za czesto myslimy w jednym kontekscie - grzebiemy duzo w EE, OSGi, [wstaw swoja ulubiona obecnie technologie] i ciezko nam pomyslec "outside the box" :)

      Usuń
    3. A to nie potwierdza mojej tezy o zawężaniu myślenia przez ciągłe doskonalenie (żeby nie napisać specjalizację)? Ja taki jestem i ciężko ode mnie wydobyć pomysł, który wpadałby w kategorię "outside the box". Zaślepionym za bardzo złudną różnorodnością aktualnych zabawek.

      Usuń
    4. Jacek. Pytanie co mamy na myśli mówiąc doskonalenie? W Twoich ustach to brzmi właśnie jak wąska specjalizacja - zagłębianie się w ograniczony obszar zagadnień. Tymczasem doskonalenie powinno mieć kształt litery T, gdzie poza wąską specjalizacją powinniśmy szukać wiedzy w szerokim horyzoncie zagadnień, choć na znacznie płytszym poziomie.
      Co zaś się tyczy głównego tematu. Podstawowym problemem nie jest technologia a zagadnienie biznesowe, z którym dany student ma sobie poradzić. Uczelnie doskonale uczą języków, algorytmów,..., ale gorzej z ich wykorzystaniem w realnym świecie. Pamiętasz jak pisałeś aplikacje dla dzieci do nauki - studenci właśnie takich zagadnień szukają. I jestem przekonany, że Twoja głowa jest jeszcze pełna takich pomysłów :)

      Usuń
  2. @Jacek
    "I co ja mam takiemu biedakowi odpowiedzieć?" - każ napisać "interaktywny kurs programowania w Javie",haha; temat obecny w magisterkach chyba od zawsze :D

    OdpowiedzUsuń
  3. Największą motywację i satysfakcję z tworzonej magisterki/inżynierki daje rzeczywisty, biznesowy problem do rozwiązania, lub świadomość, że ktoś gdzieś kiedyś może z tego skorzystać. Samo udostępnianie pracy w opensource jest motywujące, ale nie wystarczające. Jeżeli ciężko Wam znaleść jakiś biznezowy problem, to można zawsze poszukać czegoś, czego brakuje nam - programistom (np. jakiś plugin do Eclipse/Idei generujący boilerplate, lub wsparcie dla noworozwijających się języków programowania).
    Ponadto uważam, że korzystanie z bloga, twittera i innych mediów do raportowania postępów pracy, tak jak to robił Jacek kilka lat temu ze swoimi studentami, jest również bardzo motywujące i urozmaica pracę nad magisterką.

    OdpowiedzUsuń