- AutoIt Jest darmowy, prosty i bardzo wydajny w automatyzacji Windows i tworzyć interfejsy graficzne.
- Naucz się podstaw korzystając z oficjalnej pomocy i utrwalaj je dzięki narzędziom Koda, SciTE, Au3Info i Au3Record.
- Ćwicz z zestawem ćwiczeń, plikami głównymi, pętlami i funkcjami.
- Polegaj na społeczności: najpierw szukaj, dziel się kodem i zadawaj jasne pytania.

Jeśli dopiero trafiłeś na AutoIt i nie wiesz, od czego zacząć, trafiłeś we właściwe miejsce. AutoIt to darmowy i lekki język do automatyzacji systemu Windows., twórz małe aplikacje okienkowe i buduj makra, które klikają, piszą, przenoszą pliki lub wypełniają formularze za Ciebie. Choć ma już swoje lata, wciąż jest bardzo przydatnym narzędziem, gdy chcesz szybko zautomatyzować zadania w systemie Windows, nie komplikując sobie życia.
W tym przewodniku zebraliśmy, uporządkowaliśmy i przetłumaczyliśmy na zrozumiały język wszystko, co niezbędne do rozpoczęcia pracy: od podstawowych informacji z oficjalnej pomocy po ścieżkę ćwiczeń z przykładami oraz kompletną sekcję poświęconą plikom i katalogom. Chodzi o to, że w ciągu kilku godzin będziesz w stanie zainstalować program, zrozumieć podstawy języka i zacząć pisać prawdziwe skrypty. które oszczędzają Twój czas.
Czym jest AutoIt i co można dzięki niemu zrobić?
AutoIt to zorientowany na system Windows język skryptowy, który umożliwia łatwe tworzenie skryptów i aplikacji GUI (okienkowych). Umożliwia automatyzację praktycznie każdej interakcji z oknami, klawiaturą i myszą, a także zarządzać plikami, procesami i usługami. Aplikacje utworzone za pomocą AutoIt wyglądają jak natywne okna systemu Windows, podobnie jak Kalkulator czy Notatnik.
Jedną z jego największych zalet jest łatwość obsługi: Nie jest trudno się tego nauczyć, jeśli podążasz za logiczną progresją, a sam pakiet pomocy zawiera krótkie przykłady dla każdej funkcji, idealne do nauki poprzez obserwację i zabawę. Jest darmowy, co ułatwia eksperymentowanie bez ograniczeń i licencji.
Oprócz aplikacji interfejsowych AutoIt wyróżnia się makrami. Makro to scenariusz który wykonuje operacje automatycznie:Otwiera programy, czeka na pojawienie się okien, klika w miejscach, w których naciskasz, wpisuje tekst, co jakiś czas wykonuje zrzut ekranu itd. Idealnie nadaje się do zadań powtarzalnych lub testowych.
Czy nauka sprawi ci przyjemność? Prawdopodobnie tak, jeśli oczekujesz praktycznych rezultatów od pierwszego dnia. AutoIt nagradza szybko: wystarczy kilka linii, aby wszystko stało się widoczne i to uzależnia. Jeśli będziesz tego przestrzegać przewodnik krok po kroku, zyskasz solidne podstawy do realizacji bardziej ambitnych projektów.

Instalacja i narzędzia ułatwiające życie
Możesz zainstalować AutoIt w klasyczny sposób lub używać go w trybie przenośnym, zależnie od preferencji. Zalecana kombinacja na początek to AutoIt + SciTE4AutoIt3, edytor zorientowany na ten język, który oferuje podświetlanie składni, uruchamianie jednym kliknięciem, szablony, fragmenty kodu i bezpośredni dostęp do pomocy.
Aby zaprojektować okna bez konieczności zmagania się ze współrzędnymi, możesz skorzystać z Kody (projektanta GUI). Koda umożliwia przeciąganie i upuszczanie elementów sterujących, takich jak przyciski, pola tekstowe, listy lub suwaki i generuje szkielet kodu, dzięki czemu możesz skupić się na logice. Idealnie nadaje się do ćwiczeń takich jak obliczanie powierzchni, rzutowanie składowych wektorów czy tworzenie małych gier.
W dziedzinie automatyzacji dwa narzędzia znacznie przyspieszą pracę: Au3Info i Au3Record. Au3Info pokazuje tytuły okien, elementy sterujące i współrzędne ekranu aby precyzyjnie kierować kliknięciami i naciśnięciami klawiszy, podczas gdy Au3Record może rejestrować działania myszy i klawiatury jako podstawę makra.
Jeśli chcesz rozpowszechniać swoje skrypty, możesz łatwo utworzyć samodzielne pliki wykonywalne. AutoIt kompiluje plik .au3 do pliku .exe z wbudowanymi zależnościami, dzięki czemu możesz je udostępniać każdemu, kto nie ma zainstalowanego AutoIt. To szybki sposób na spakowanie wewnętrznych narzędzi lub projektów klasowych jako „samoczynnie wykonującego się Pitagorasa”.

Opanuj podstawy dzięki oficjalnej pomocy
Pomoc AutoIt jest Twoim najlepszym sprzymierzeńcem. Zajrzyj do „Samouczków”, aby zapoznać się z tematem, a temat wyrażeń regularnych zostaw na później. Jeśli chcesz zbudować solidny fundament, odwiedź „Language Reference”, w którym wyjaśniono, jak obsługiwać typy danych, zmienne, makra, operatory, struktury sterujące, funkcje i komentarze.
Zacznijmy od tego, w jaki sposób informacje są reprezentowane i przechowywane: Typy danych, zmienne i makraMakra systemowe (np. @DesktopDir, @HomeDrive lub @HomePath) oszczędzają Ci pracę, odwołując się do folderów i ścieżek należących do bieżącego użytkownika.
Kontynuuj podstawowe operacje w Operatorzy i co bardzo ważne, z kontrolą przepływu: pętle if/else, select/case i while/forStanowią szkielet każdego algorytmu, który chcesz zbudować.
Funkcje te zasługują na osobny rozdział. W sekcji „Funkcje” zobaczysz, jak hermetyzować logikę wielokrotnego użytku a w sekcji „Komentarze” dowiesz się, jak dokumentować swoje działania, aby w ciągu kilku miesięcy Ty lub osoba, która Ci pomoże, była w stanie zrozumieć kod.
Informacje na temat interfejsów można znaleźć w dokumencie „GUI Reference”. Oto jak tworzyć okna i dodawać kontrolki.Jeśli wolisz zacząć od przewodnika krok po kroku, w społeczności hiszpańskojęzycznej dostępny jest podstawowy samouczek „Mój pierwszy interfejs graficzny”, który jest bardzo pouczający. Dodatkowo dostępny jest indeks słów kluczowych/poleceń, przydatny w przypadku konkretnych zapytań, gdy już wiesz, czego szukasz.
Jak uczyć się we wspólnocie, nie umierając w trakcie próby
Społeczność AutoIt to świetne miejsce, w którym znajdziesz odpowiedzi na wszelkie pytania, jakie mogą Ci się nasunąć na początku. Aby uzyskać przydatne i szybkie odpowiedzi, postępuj zgodnie z kilkoma podstawowymi zasadami- Najpierw sprawdź, czy na Twoje pytanie nie udzielono już odpowiedzi, podaj fragment kodu, w którym występuje problem (najlepiej skrócony do minimum) i użyj opisowego tytułu podsumowującego problem.
Unikaj pisania „w kodzie SMS”. Przejrzysty i pozbawiony błędów tekst sprawi, że innym łatwiej będzie zrozumieć Twoje pytanie., a to przekłada się na lepsze odpowiedzi. Pamiętaj: nie proś o cały program; pokaż, że próbowałeś i potrzebujesz konkretnej pomocy.
Kolejna wskazówka: W pomocy dla każdej funkcji znajdziesz krótki przykład programu.Uruchom go, zmodyfikuj, rozbij i poskładaj z powrotem. Nauczysz się wiele. Jeśli chcesz zgłębić temat, w internecie znajdziesz blog na ten temat. PDF bardzo obszerny podręcznik AutoIt (kilkaset stron), w którym zebrano koncepcje i praktyki.
Mapa drogowa najlepszych praktyk: od „Hello World” do projektów z interfejsem graficznym, automatyzacją, Bluetooth i Internetem
Aby pomóc Ci robić postępy w dobrym tempie, przygotowaliśmy praktyczną trasę zainspirowaną kompleksowym indeksem ćwiczeń. Jest on podzielony na bloki tematyczne i obejmuje wszystko, od podstawowych operacji po integracje z AndroidMożesz wykonać je po kolei lub przejść do bloku, który najbardziej Cię motywuje.
- Pierwsze kroki i podstawowe ćwiczenia: 1) instalacja przenośna i ćwiczenie matematyczne typu Pitagorasa z plikiem wykonywalnym; 2) czytanie „przeczytaj mnie”, Tricks i podstawowe pojęcia składniowe; 3) konwerter stopni Celsjusza/Fahrenheita za pomocą jednocześnie; 5) konwersja km/h ⇄ mi/h z opcjami; 6) konwersja m/s ⇄ km/h z opcjami i pętlą; 8) działania systemowe (wyłączanie, hibernacja), uruchomienie mobilne i webowe, użyj MsgBox i InputBox.
- Projektowanie GUI z Kodą: 9) wstawianie kontrolek i obliczanie pola prostokąta; 10) rozkładanie wektora na składowe poziome i pionowe; 11) gra „zgadnij numer” z losowością; 12) rosyjska ruletka (losowa); 13) kółko i krzyżyk z obrazkami; 15) selektor z polem wyboru i radiem; 17) listy rozwijane: kraje i stolice; 19) kalendarz; 20) sygnalizacja świetlna; 21) suwak do ujęcia parabolicznego; 22) suwak do mieszania kolorów RGB; 23) suwak do dodawania liczb i importowania kodu Koda; 24) pliki: tworzenie, usuwanie, modyfikowanie i zapisywanie; 25) zamiana ciągów w plikach; 26) Select Case i If/ElseIf; 27) pętle For/Next i While/Wend; 28) fazy księżyca; 29) zamiana tekstu na mowę; 30) rozpoznawanie głosu; 31) menu i podmenu; 33) Timer za pomocą TimerInit/TimerDiff; 34) Wyświetl listę plików i folderów; 35) Użyj 7-Zip do rozpakowania.
- Makra i zaawansowana automatyzacja: : 40) Instalacja na komputerze za pomocą SciTE4AutoIt i pierwsze makra w Au3Record; 42) Tworzenie makra w Notatniku i używanie Au3Info; 44) Automatyczne ruchy myszy i dodawanie w Kalkulatorze; 46) Zrzut ekranu, HotKeySet i ToolTip; 47) Wykrywanie naciśniętych klawiszy za pomocą _IsPressed i wyświetlanie ich w konsoli.
- Funkcje i wykresy: : 50) Automatyczne wysyłanie klawiszy za pomocą klawiszy Send, Control, Hibernate i Capture ze skrótami; 52) Wyświetlanie listy funkcji zdefiniowanych przez użytkownika; 53) Wywołania bibliotek DLL; 54) Rysowanie kwadratów i okręgów za pomocą GUICreateCtrlGraphic/GUICtrlSetGraphic; 55) Więcej rysowania na ekranie; 56) Przykład obsługi HotKeySet, MouseClick, ToolTip i haseł; 57) Znajdowanie pikseli według koloru za pomocą PixelSearch i ImageSearch; 58) Śledzenie myszy i odczytywanie współrzędnych/kolorów za pomocą PixelGetColor.
- Bluetooth i Arduino: : 60) Bazy Bluetooth; 62) Przesyłanie danych z komputera do Arduino przez Bluetooth; 64) Przesyłanie danych z Arduino do komputera; 66) Uproszczenie przepływu danych Arduino → PC; 67) Przyciski i diody LED; 68) Czujnik DHT11 z wykresem; 68B) Zapytanie o wilgotność i temperaturę za pomocą DHT11; 69) Wymiana danych z systemem Android za pomocą App Inventor; 69B) Wymiana danych Android ↔ komputer przez Bluetooth; 69C) Rozmowa Android ↔ komputer przez Bluetooth z App Inventor; 69D) Przesyłanie obrazu z systemu Android do komputera przez Bluetooth.
- Internet i usługi: 70) tworzenie, przesyłanie, pobieranie i modyfikowanie pliku tekstowego na serwerze; 71) ćwiczenie zarezerwowane do dalszego rozwoju; 72) wybieranie pliku lokalnego i przesyłanie go; 73) pobieranie pliku z Internetu i wyświetlanie go, jeśli jest to obraz; 74) wysyłanie wiadomości e-mail; 75) CRUD w MySQL (przesyłanie, pobieranie, usuwanie, przeglądanie danych); 78) rejestracja i uwierzytelnianie za pomocą MySQL i poczty e-mail; 79) wysyłanie danych do Firebase i odczytywanie ich, również ze strony internetowej.
- Ciekawe skrypty systemowe: 100) Hibernacja i automatyczne wybudzanie; 102) Włączanie/wyłączanie monitora; 103) Wyłącz przyciski Notatnika; 105) Zarządzanie zasobnikiem systemowym; 108) Ukrywanie/pokazywanie paska zadań i okien; 110) Przechwytywanie ekranu i wysyłanie przez FTP; 114) Keylogger (z zachowaniem wszelkich środków ostrożności prawnych); 116) Blokowanie myszy i klawiatury; 117) Blokowanie innego komputera; 118) Tworzenie plików w folderze startowym systemu Windows; 119) Rozmawianie przez Wi-Fi; 119B) Wyłącz komputer przez Wi-Fi, uruchom Notatnik i prześlij pliki na komputer za pomocą App Inventor; 120) Uruchom polecenia ADB na Androidzie przez USB.
- Ciekawe skrypty: 200) zbiór przykładów znalezionych w internecie, które mogą Cię zainspirować i pomóc w nauce technik.
Po ukończeniu tej wycieczki poznasz znaczną część ekosystemu AutoIt: interfejs graficzny, automatyzację interfejsu, pliki, sieć, Bazy danych y sprzęt komputerowy światło. Kluczem jest ćwiczenie, modyfikowanie i ponowne wykonywanie. aż kawałki do siebie dopasują się.
Praca z plikami i katalogami w programie AutoIt: podstawowy przewodnik z przykładami
Jednym z najbardziej praktycznych obszarów codziennego życia jest zarządzanie plikami i folderami. Poniżej znajdziesz zbiór przykładów krok po kroku dotyczących tworzenia, przenoszenia, czytania, zapisywania i usuwania.oraz funkcjami wyboru plików z okien dialogowych.
1) Utwórz katalogi
Aby utworzyć foldery, możesz użyć ścieżek bezwzględnych lub zmiennych makr systemowych, takich jak @DesktopDir. Te makra udostępniają ścieżki użytkownika bez konieczności zapisywania nazw na stałe.Przykład:
; Crea una carpeta en C y otra en el Escritorio del usuario
DirCreate("C:/Carpeta de AutoIt/")
DirCreate(@DesktopDir & "/La carpeta de AutoIt/")
Jeśli chcesz wiedzieć, gdzie znajduje się folder profilu użytkownika, przydatne będą @HomeDrive i @HomePath. Połącz za pomocą &, aby połączyć ciągi znaków a jeśli chcesz debugować, możesz wyświetlić dane wyjściowe za pomocą MsgBox.
2) Usuwanie i przenoszenie katalogów
Aby usunąć katalog wraz z całą zawartością, ustaw drugi parametr na 1; jeśli ustawisz go na 0, katalog zostanie usunięty tylko wtedy, gdy będzie pusty. Za pomocą DirMove możesz przenieść całe drzewo:
; Borrar con contenido
DirRemove("C:/Carpeta de AutoIt/", 1)
DirRemove(@DesktopDir & "/La carpeta de AutoIt/", 1)
; Mover un directorio completo
DirMove("C:/Origen/", "C:/Destino/Aqui/", 1)
3) Utwórz pusty plik (i tryby otwierania)
Otwierając plik za pomocą FileOpen definiujesz tryb: 0 odczyt, 1 zapis i dołączanie na końcu, 2 zapis zastępujący zawartość. Tryby 1 i 2 tworzą plik, jeśli nie istnieje:
$carpeta = "C:/Carpeta de AutoIt/"
DirCreate($carpeta)
$archivo = FileOpen($carpeta & "prueba.txt", 1) ; escritura y añadir
FileClose($archivo)
Uważaj na ścieżki. W systemie Windows powszechnie stosuje się znak \, ale w wielu kontekstach działa też znak /. Czyszczenie przy zamykaniu za pomocą FileClose zapobiega awariom plików.
4) Zapisz tekst do pliku
Możesz pisać wiersze za pomocą FileWrite lub FileWriteLine. @CRLF wstawia podział wiersza. Jeśli otwierasz w trybie 1, nowe linie gromadzą się na końcu:
$carpeta = "C:/Carpeta de AutoIt/"
DirCreate($carpeta)
$archivo = FileOpen($carpeta & "prueba.txt", 1)
FileWrite($archivo, "Esta es la línea 1" & @CRLF)
FileWrite($archivo, "Esta es la línea 2" & @CRLF)
FileWrite($archivo, "Esta es la línea 3" & @CRLF)
FileWriteLine($archivo, "Otra línea 4")
FileWriteLine($archivo, "Otra línea 5")
FileWriteLine($archivo, "Otra línea 6")
FileClose($archivo)
Jeśli przy każdym uruchomieniu zachodzi potrzeba zastąpienia poprzedniej zawartości, należy otworzyć ją w trybie 2. W ten sposób unikniesz niepotrzebnego wzrostu rozmiaru pliku..
5) Odczytaj część pliku
W przypadku odczytu częściowego otwórz w trybie 0 i podaj liczbę znaków, których chcesz użyć. FileRead akceptuje drugi parametr z długością do odczytu:
$carpeta = "C:/Carpeta de AutoIt/"
$archivo = FileOpen($carpeta & "prueba.txt", 0)
$texto = FileRead($archivo, 12) ; lee 12 caracteres
MsgBox(0, "Lectura", $texto)
FileClose($archivo)
6) Odczyt całego pliku: trzy techniki
AutoIt umożliwia odczytanie całego pliku znak po znaku, wiersz po wierszu lub całości naraz. W pierwszych dwóch przypadkach @error = -1 oznacza koniec pliku.
A) Znak po znaku za pomocą FileRead w pętli:
$carpeta = "C:/Carpeta de AutoIt/"
$archivo = FileOpen($carpeta & "prueba.txt", 0)
$completo = ""
While 1
$letra = FileRead($archivo, 1)
$completo &= $letra
If @error = -1 Then ExitLoop
WEnd
MsgBox(0, "Archivo completo (FileRead)", $completo)
FileClose($archivo)
B) Wiersz po wierszu za pomocą FileReadLine i dodając @CRLF, aby odtworzyć tekst. Wygodnie jest przetwarzać rekordy według wiersza:
$carpeta = "C:/Carpeta de AutoIt/"
$archivo = FileOpen($carpeta & "prueba.txt", 0)
$completo = ""
While 1
$linea = FileReadLine($archivo)
$completo &= $linea & @CRLF
If @error = -1 Then ExitLoop
WEnd
MsgBox(0, "Archivo completo (FileReadLine)", $completo)
FileClose($archivo)
C) Wszystko na raz za pomocą FileRead bez pętli. Najbardziej bezpośredni sposób, gdy potrzebujesz tylko całej zawartości:
$carpeta = "C:/Carpeta de AutoIt/"
$archivo = FileOpen($carpeta & "prueba.txt", 0)
$completo = FileRead($archivo)
MsgBox(0, "Archivo completo", $completo)
FileClose($archivo)
7) Usuń pliki (i użyj Kosza)
Aby usunąć plik bezpośrednio, użyj FileDelete. Jeśli wolisz przenieść go do Kosza, użyj FileRecycle, a aby go opróżnić, użyj FileRecycleEmpty. Zaleca się poddawanie testom recyklingowi w celu uniknięcia przypadkowych strat.:
$carpeta = "C:/Carpeta de AutoIt/"
FileDelete($carpeta & "prueba.txt")
; A la Papelera
autoit
FileRecycle($carpeta & "prueba.txt")
FileRecycleEmpty()
8) Sprawdź, czy plik istnieje i czy można go otworzyć
Szybkim sposobem sprawdzenia istnienia i uprawnień jest próba otwarcia i zatwierdzenia uchwytu. Jeżeli FileOpen zwróci -1, oznacza to, że nie można go otworzyć lub plik nie istnieje.:
$carpeta = "C:/Carpeta de AutoIt/"
$h = FileOpen($carpeta & "prueba.txt", 1)
If $h = -1 Then
MsgBox(0, "Error", "El archivo no existe o no se pudo abrir.")
Exit
EndIf
FileClose($h)
9) Kopiowanie i przenoszenie plików
Aby skopiować, określ źródło i miejsce docelowe. Możesz utworzyć ścieżki użytkownika za pomocą @DesktopDir, aby skopiować na pulpit. Aby przenieść, użyj FileMove:
$carpeta = "C:/Carpeta de AutoIt/"
FileCopy($carpeta & "prueba.txt", @DesktopDir & "/La carpeta de AutoIt/prueba.txt")
; Mover genérico
; FileMove("origen", "destino")
10) Wybierz pliki i foldery za pomocą okien dialogowych
AutoIt udostępnia funkcje otwierania standardowych okien dialogowych wyboru: FileOpenDialog, FileSaveDialog i FileSelectFolder. Są bardzo przydatne w przypadku narzędzi interaktywnych:
$msg = "Pulsa Ctrl o Shift para seleccionar más de uno"
$sel = FileOpenDialog($msg, "C:/Windows/", "Imágenes (*.jpg;*.bmp)", 1 + 4)
If @error Then
MsgBox(4096, "", "No hay archivos seleccionados")
Else
$sel = StringReplace($sel, "|", @CRLF)
MsgBox(4096, "", "Seleccionado:" & @CRLF & $sel)
EndIf
$doc = "::{450D8FBA-AD25-11D0-98A8-0800361B1103}"
$save = FileSaveDialog("Elige un nombre", $doc, "Scripts (*.aut;*.au3)", 3)
If @error Then
MsgBox(4096, "", "Guardado cancelado")
Else
MsgBox(4096, "", "Guardado en: " & $save)
EndIf
$carp = FileSelectFolder("Selecciona una carpeta", "", 0)
11) Używaj symboli wieloznacznych
Symbole wieloznaczne pozwalają na wykonywanie operacji na wielu plikach jednocześnie. Wzorzec *.* powoduje ponowne wykorzystanie wszystkich plików w określonym folderze:
$carpeta = "C:/Carpeta de AutoIt/"
FileRecycle($carpeta & "*.*")
Dzięki tej kolekcji możesz teraz wykonać większość zadań związanych z zarządzaniem plikami. Dodaj walidacje, dzienniki i okien dialogowych, aby przekształcić je w narzędzie z których możesz korzystać codziennie.
Ostatnie wskazówki, jak iść naprzód
Zaplanuj swoją naukę, łącząc czytanie z praktyką: przeglądaj pomoce, kopiuj przykłady, modyfikuj parametry i testuj w różnych środowiskach. Jeśli interesują Cię interfejsy, skup się na Kodzie i dokumencie GUI Reference.; jeśli interesuje Cię automatyzacja, poćwicz z Au3Info i HotKeySet.
Kiedy twoje ciało domaga się więcej, wypróbuj bloki takie jak Bluetooth + Arduino, bazy danych MySQL lub Firebase i ciekawe skrypty. Wszystko składa się na to, że dzięki AutoIt staniesz się osobą zaradną w ramach Twojego zespołu lub na potrzeby Twoich osobistych projektów.
A jeśli potrzebujesz małego zastrzyku motywacji, przytaczamy cytat przypisywany Mafaldzie (Quino): „Czyż nie jest tak, że na świecie jest coraz więcej ludzi, a coraz mniej?” Społeczność buduje się poprzez pomaganie i dzielenie się; kiedy się czegoś nauczysz, wróć i zostaw swoją wypowiedź dla następnej osoby, która przyjdzie.
W tym przewodniku omówiono najważniejsze kwestie dotyczące rozpoczęcia pracy z programem AutoIt, połączono podstawy z ćwiczeniami praktycznymi i zamieszczono gotowe do użycia przykłady. Dzięki AutoIt zyskasz szybkość rozwiązywania zadań w systemie WindowsNiezależnie od tego, czy korzystasz z makr, małych aplikacji GUI, czy też narzędzi do zarządzania plikami i usługami, dzięki wytrwałości i ciekawości będziesz w stanie przejść od prostego do potężnego narzędzia, nawet nie zdając sobie z tego sprawy.
Pisarz z pasją zajmujący się światem bajtów i technologii w ogóle. Uwielbiam dzielić się swoją wiedzą poprzez pisanie i właśnie to będę robić na tym blogu, pokazywać Ci wszystkie najciekawsze rzeczy o gadżetach, oprogramowaniu, sprzęcie, trendach technologicznych i nie tylko. Moim celem jest pomóc Ci poruszać się po cyfrowym świecie w prosty i zabawny sposób.