Hierarchiczne podejście do rozwiązywania zadań
Każdy z nas ma czasem natłok zadań.
Prezentuje rozwiązanie z przykładowym projektem. Ustalam najlepsze rozwiązanie na podstawie pytań a następnie tworzę hierarchię zadań.
How to write a chrome plugin?
Praktyczny przykład tworzenia pierwszej wtyczki do przeglądarki Chrome
Przykład z życia programisty
Contents
Cel
Szybsze tworzenie nowych Task-ów w Gitlab-ie
Obecna sytuacja
Obecnie tworzę zadania i rozwiązania wykorzystując bezpośrednio aplikację webową GITLAB.
Przykład rozwiązania
Wtyczna chrome zintegrowana z API Gitlab.
Chciałbym aby wszystkie działania w kontekscie tworzenia lub rozwiązywania zadań odbywały się półautomatycznie za pomocą narzędzi zaimplementowanych w przeglądarce.
Aplikacja jest uruchamiana w przeglądarce, dlatego można określić w niej czy dane zadanie jest już wykonane poprawnie.
Myślę o pluginie do Przeglądarki Chrome, gdzie każdy tester mógłby oznaczyć określone zadanie jako wykonane, a każdy BUG od razu wprowadzić do programu GitLab klikając: wykonaj screenschoot i opisz problem.
Wówczas podczas odwiedzin strony, możliwe by było pokazanie na każdej stronie innych ticketów.
Przykład hierarchizacji![full day full day](https://images.unsplash.com/photo-1517408191923-f82a669f4ea1?ixlib=rb-0.3.5&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=1080&fit=max&ixid=eyJhcHBfaWQiOjMwODh9&s=5326cc6d542de772fd6b3a2334dd77a8)
W zależności od możliwości: czasu i wiedzy rozwiązanie problemu może być różnie zhierarchizowane.
W mojej sytuacji, nigdy wcześniej nie tworzyłem rozszerzenia dla przeglądarki Chrome.
Dlatego postanowiłem najpierw przyjrzeć się otwarto-źródłowym kodom wtyczek do przeglądarki Chrome, by w ogóle mieć pewność, że rozumiem to co tam jest napisane i będę wiedział czy to zajmie określony przeze mnie czas: 1 dzień.
Jak się robi wtyczki w przeglądarce Chrome?
- Znalazłem tutotrial do tworzenia wtyczek
- Spróbowałem wykonać prostą wtyczkę robiącą cokolwiek.
Jak się łączy z Gitlabem z wtyczki Chrome?
- Zapoznałem się z wtyczką do integracji z GitLab
- Zaimplementowałem integracja z API GitLAB w mojej wtyczce
- Połączenie się z API poprzez pobranie konfiguracji dla konta, klucz prywatny z gitlab
- Czytanie listy obecnych zadań
- Dodawanie zadań w oparciu o tytuł i opis
- Znalezienie sposobu na odczatenie linku otwartej wlasnie strony
- Dodawanie zadan do projektu powiazanego z otwarta strona
Jak wykonać zrzuty ekranu?
- Zapoznałem się z wtyczką do tworzenia zrzutów ekranu
- Tworzenie screenschoot
- Dodawanie zadań z załącznikami.
Jak opisać funkcjonalność wtyczki i stworzyć możliwość zgłaszania Bug-ów?
- Stworzenie strony internetowej projektu na githubie jako open source-owy projekt
- Stworzenie WIKI z opisem instalacji
Jak monetyzować projekt?
- Znalezienie form platnosci w tego typu projektach
- Powiazanie wtyczki z Donate dla paypal, etc
Podsumowanie hierarchizacji
Jak widać, zadania zostały kolejno zgrupowane poprzez zadanie pytania i następnie zdefiniowanie drogi do odnalezienia odpowiedzi.
Pytania są istotną częscią, gdyż pozwalają na dowolność, nie musimy z góry określać rozwiązania, najlepiej gdy ma się możliwość zadania tego pytania na zewnątrz a następnie zadecydowanie w oparciu o odpowiedzi włąsnego najprostszego dojścia do rozwiązania problemu.
Przy okazji hierarchizacji można wyciągnąć dodatkowe wnioski i wiedzę, oraz określić naszą kompetencję, ewentualnie delegować część zadania, która jest zbyt rozbudowana.
W przyszlosci bedzie dostepny portal:
Dla tych ktorzy szukaja wsparcia przy tworzeniu jednodniowych projektow, gdzie miedzy innymi bedzie mozliwosc wykorzystania roznych metod zarzadzania i tworzeniem zadan oraz monitorowaniem realizacji.
![Share on Facebook Facebook](https://tom.sapletta.com/wp-content/plugins/social-media-feather/synved-social/image/social/regular/96x96/facebook.png)
![Share on Twitter twitter](https://tom.sapletta.com/wp-content/plugins/social-media-feather/synved-social/image/social/regular/96x96/twitter.png)
![Share on Reddit reddit](https://tom.sapletta.com/wp-content/plugins/social-media-feather/synved-social/image/social/regular/96x96/reddit.png)
![Pin it with Pinterest pinterest](https://tom.sapletta.com/wp-content/plugins/social-media-feather/synved-social/image/social/regular/96x96/pinterest.png)
![Share on Linkedin linkedin](https://tom.sapletta.com/wp-content/plugins/social-media-feather/synved-social/image/social/regular/96x96/linkedin.png)
![Share by email mail](https://tom.sapletta.com/wp-content/plugins/social-media-feather/synved-social/image/social/regular/96x96/mail.png)