Dźwignia skutecznego działania
Z pewnością znasz zasadę działania dźwigni, ale czy wykorzystujesz ją na co dzień? Wyobraź sobie sytuację, w której wkładasz 10% swojej energii, osiągając 500%…
Z pewnością znasz zasadę działania dźwigni, ale czy wykorzystujesz ją na co dzień? Wyobraź sobie sytuację, w której wkładasz 10% swojej energii, osiągając 500% rezultatu. Niemożliwe? No cóż, tak działa dźwignia.
Jak przełożyć dźwignię na programowanie? Czy musimy być geniuszami czy może wystarczy tylko inna perspektywa. Spróbuję pokazać Ci teraz czym dźwignia jest dla mnie i jak wykorzystują ją w codziennej pracy na konkretnych przykładach. Wcześniej dodam tylko, że pracuję z projektami różnej skali, wyłączając projekty enterprise. Miej to proszę na uwadze, ponieważ to co teraz napiszę raczej nie będzie miało zastosowania
w warunkach korporacyjnych.
Praktycznie w każdym projekcie, z którym się spotkałem najważniejsza była skuteczność. Czasem wyrażona poprzez czas dostarczenia, czasem przez elastyczność do wprowadzania modyfikacji a czasem przez solidne, niezawodne oprogramowanie.
Obecnie realizuję nawet własne projekty, w których najważniejsze są dla mnie: wniesienie realnej wartości klientowi oraz możliwie wysoka jakość.
Jednocześnie pracuję albo w pojedynkę (jak wielu członków społeczności IndieHackers) lub w bardzo małym zespole. W takich sytuacjach ważne jest to aby maksymalnie wykorzystać swój czas i energię aby osiągnąć maksimum rezultatów.
Jednym z najważniejszych elementów takiego funkcjonowania jest umiejętność wybrania odpowiedniego narzędzia do problemu a nie próba wciskania na siłę narzędzi które lubię w każdy problem.
Pamiętam jak kiedyś wdrożyłem rozwiązanie przy którego oddaniu zaznaczałem, że „to zadziała ale jeżeli ktoś w przyszłości zapyta 'kto to robił?’, nie wskazujcie na mnie”. Dlaczego tak? Bo tego wymagał ten konkretny problem i kontekst, w którym się wówczas znajdowałem. Możesz sobie wyobrazić z jakim trudem odkładałem moje programistyczne ego na półkę. Efekt? Projekt przeszedł wstępną walidację i mógł być dalej rozwijany. Bez tamtej decyzji z dużą pewnością nie byłoby to możliwe.
Podsumowując tą część: wybieraj narzędzia do problemów, próbuj zrozumieć szerszy kontekst i pracuj ze swoim ego.
Teraz o konkretach. Pomimo tego że od dawna wiem czym jest API i do czego służy, dopiero niedawno zrozumiałem jakie możliwości to daje. Tzn. korzystając z usług, które udostępniają nam API, jesteśmy w stanie łączyć je ze sobą niemal w dowolny sposób. Oczywiście w ten sposób uzależniamy się od zewnętrznych dostawców i często są to płatne rozwiązania, ale zyskujemy przewagę w postaci czasu oraz często nawet zwykłej możliwości wykorzystania rozwiązania, które normalnie byłoby poza naszym zasięgiem. Do łączenia ze sobą API wykorzystuję narzędzia takie jak: Zapier, Integromat oraz n8n.
Poza tym chciałbym bardzo polecić Ci narzędzia, które identyfikowane są
z ruchem no-code/low-code i są to: Webflow, Typeform oraz Airtable. Ich połączenie z pomocą wyżej wymienionych usług sprawia, że jesteśmy nie tylko w stanie projektować wczesne wersje naszych produktów. Często projekty posiadające solidny codebase mają elementy takie jak panele administracyjne czy zwykły landing page z formularzem podłączonym do systemu CRM. Zamiast kodować to wszystko od zera, możemy w ciągu kilku godzin skonfigurować wszystko w Webflow / Integromacie / Airtable
i zrealizować konkretny cel.
Według mnie jako programiści nie powinniśmy skupiać swojej energii na rzeczach, które mogą być wykonane prosto. Nasza przewaga leży w tym, aby wykorzystywać nasze umiejętności w miejscach, w których takie narzędzia nie mogą być zastosowane bo to właśnie tam znajdują się wyróżniki konkurencyjne biznesu, który rozwijamy. Natomiast musimy pamiętać o tym aby sięgać po narzędzia, które dadzą nam ku temu odpowiednią przestrzeń.
Ostatnim przykładem jest wykorzystanie narzędzia Retool to budowy wewnętrznych paneli administracyjnych i podobnych interfejsów, których rozwój z pewnością nie kojarzy Ci się zbyt dobrze. Tutaj jesteśmy w stanie podłączyć dowolne źródło danych i w kilka minut „wyklikać” interfejs uwzględniający nawet wizualizacje informacji.
Podsumowując: wykorzystaj odpowiednie narzędzia aby stworzyć sobie przestrzeń do tego, by móc się skupić na rzeczach, które rzeczywiście potrzebują Twojej uwagi i umiejętności.
Mam nadzieję że taka perspektywa okaże się dla Ciebie przydatna. Jeżeli masz jakieś przemyślenia na ten temat i chciałbyś się nimi ze mną podzielić to śmiało!
Lista linków z Newslettera:
Najlepszy wizualny kreator stron www
Narzędzia no-code mogą być niesamowitą dźwignią dla programistów. Webflow jest jednym z nich – pozwala tworzyć nawet rozbudowane strony w ciągu kilku godzin. A swój potencjał odkrywa w chwili wykorzystania zewnętrznych integracji.
Nowy wymiar programowania przez wykorzystanie API
Jako programiści zwykle skupiamy się na programowaniu naszych aplikacji ale wykorzystując API jesteśmy w stanie przesyłać dane pomiędzy wieloma usługami, których nie musimy budować sami. Integromat ułatwia takie integracje.
Bazy danych to nie tylko PostgreSQL i mongoDB
Zwykle kojarzymy bazy danych z popularnymi silnikami, które wymagają od nas znajomości np. SQL. Natomiast co powiesz na wykorzystanie arkusza kalkulacyjnego z API, jako sprytna alternatywa do prostego przechowywania danych?
Panele administracyjne w kilka minut
Tworzenie narzędzi wewnętrznych zwykle jest czasochłonnym i dość nudnym zadaniem. Poza tym częste zmiany wymagają wysiłku, który można przekierować na rozwój produktu. Retool pozwala nam „wyklikać” takie narzędzia.
Wizualny edytor dla Tailwind i nie tylko
Shuffle to produkt, za którym stoi polski zespół. Jego celem jest przyspieszenie pracy nad tworzeniem interfejsów poprzez możliwość szybkiego dodawania i edytowania komponentów, które możemy wyeksportować do naszego projektu.