CakePHP 3 – jak stworzyć bloga. Część 1.

Na początku zaznaczę, że niniejszy opis dotyczy frameworka CakePHP w wersji 3 i wyższej, ponieważ na temat wersji 1 czy 2 wersji powstało wiele tutoriali. Wersja 3 wydaje się być zbyt uboga w przykłady. Niniejszy opis dotyczy stworzenia prostego bloga. W tej części zajmiemy się prostym szkieletem aplikacji. Dodatkowo zostanie opisana struktura projektu oraz najważniejsze pliki. W dalszych częściach zajmiemy się szablonem głównym, logowaniem oraz tworzeniem dynamicznego menu. Continue reading

Delphi czy Visual Studio – co wybrać do nauki?

Środowisko Delphi zrewolucjonizowało programowanie okienkowe. Oprócz szybkości wytwarzania aplikacji, spowodowało drastyczne zmniejszenie ilości czasu niezbędnego do zbudowania prototypu programu i to jednocześnie przy zmniejszonej ilości błędów. Pierwsza wersja środowiska została opublikowana w roku 1995, zaś potem nastąpił jego prawdziwy rozkwit. Dla mnie prawdziwą rewolucją była wersja 6, którą zachwycały się rzesz programistów, zaś wersja 7, zwana w kręgach programistów „ostatnią dobrą wersją Delphi”, w rzeczywistości nie przyniosła (na szczęście) wiele zmian w stosunku do poprzednika[1]. Całą historię ewolucji środowiska Delphi można prześledzić tutaj. Niestety wraz z nowymi wersjami, kolejne firmy rozwijające środowisko Delphi (Borland, CodeGear oraz Embarcadero), wprowadzały coraz bardziej drastyczną politykę licencyjną oraz drastyczny wzrost cen, a przez to Delphi stale traciło na popularności. Gwoździem, być może jeszcze nie do przysłowiowej trumny, lecz do kolejnego odchodzenia programistów od Delphi było opracowanie nowego języka programowania C# oraz udostępnienie znakomitego, a przy tym – darmowego środowiska Visual Studio przez firmę Microsoft. Jednocześnie nie owijam w bawełnę – ten wpis ma na celu zniechęcić początkujących programistów do Delphi – jeśli nie jest jeszcze za późno, czyli gdy jeszcze nie zaczęli nauki. Continue reading

Windows Forms w stylu Metro

Windows Forms to popularny interfejs programowania aplikacji w bibliotece Microsoft .NET Framework, który umożliwia natywny dostęp do elementów interfejsu graficznego Microsoft Windows[1]. Interfejs ten ma wiele wad, jednak wciąż cieszy się dużą popularnością – także ze względu na przyzwyczajenia programistów. Windows Forms jest powolne, brzydkie i nie wspiera MVC, jednak cechuje się łatwością tworzenia interfejsów użytkownika dzięki edytorom wizualnym. O ile na większość wad nie mamy wpływu, to w przypadku „brzydoty”, pod którą rozumiem archaiczną grafikę kontrolek, można w prosty sposób sobie poradzić. Tematem niniejszego wpisu będzie wykorzystanie biblioteki MetroFrameworkUI. Continue reading

Longtion Application Builder – programowanie bez programowania

Czy truizmem jest stwierdzenie, że programowanie wymaga znajomości języka programowania? W pewnym sensie tak, bowiem pisanie programu wymaga znajomości co najmniej jednego z dostępnych języków. Niestety nie sposób w prosty sposób odpowiedzieć, który z języków jest najlepszy, ponieważ uważam, że nie ma uniwersalnych języków, stąd prowadzenie tego typu rankingów nie ma większego sensu. Każdy z języków programowania ma swoje silne i słabe strony. Nie bez znaczenia jest też jakość środowiska programowania, które oferuje wsparcie dla programisty. Okazuje się, że istnieje wiele środowisk programowania, które operuje wyłącznie na logice, nie skupiając się w najmniejszym stopniu na konkretnym języku. Jednym z takich środowisk jest Longtion Database Application Builder, który pozwala na pisanie programów bazodanowych bez znajomości języka programowania. Continue reading

Delphi 10.1 Berlin Starter Edition za darmo

dx_logo_76x76pxŚrodowisko programistyczne Delphi znane jest przede wszystkim starszym programistom z czasów, gdy nie istniały jeszcze rozbudowane generatory kodu typu RAD[1], jak np. dzisiejsze Visual Studio. Warto pamiętać, że pierwszym środowiskiem typu RAD dla systemów okienkowych był Visual Basic firmy Microsoft z 1991 roku, który zyskał ogromną popularność i na zawsze zmienił sposób programowania. Continue reading

Linux firewall UFW

firewall_logoMacierzystym pakietem wykorzystywanym jako firewall w systemie Linux jest iptables, będący następcą ipchains.  Jest to program sterujący filtrem pakietów, używanym głównie w celu realizowania zadania zapory sieciowej lub NAT. Iptables kontroluje połączenia wchodzące i wychodzące do sieci lub komputera. Niniejszy opis dotyczy jednak pakietu UFW (Uncomplicated Firewall), będącego swego rodzaju nakładką iptables, dzięki której zarządzanie zaporą w systemie Linux jest o wiele łatwiejsze.  Continue reading

Instalacja i zabezpieczanie phpMyAdmin

phpmyadmin_logophpMyAdmin to narzędzie służące do zarządzania bazami danych MySQL na serwerze. Oprogramowanie umożliwia między innymi tworzenie i usuwanie baz danych, zarządzanie tablami oraz relacjami w trybie graficznym. Oprogramowanie instalowane jest na serwerze wyposażonym w serwer WWW oraz MySQL. Niniejszy opis dotyczy instalacji i zabezpieczenia aplikacji w systemie Linux. Continue reading

Tworzenie „chmury” OwnCloud na serwerach fizycznych oraz wirtualnych (Hyper-V)

owncloud_logoW przedsiębiorstwach, które stosują wdrożoną politykę bezpieczeństwa informacji, istotnym problemem okazuje się zabezpieczanie urządzeń przenośnych służących do przenoszenia danych pomiędzy przedsiębiorstwem a komputerami przenośnymi lub domowymi. W zależności od zapisów w polityce bezpieczeństwa, w której muszą zostać zapisane zasady odnoszące się do praw i obowiązków wynikających z wynoszenia danych poza organizację, muszą zostać wypracowane metody ich zabezpieczania podczas przenoszenia. Jeśli w sieci przedsiębiorstwa poziom bezpieczeństwa danych jest akceptowalny, to przedsiębiorstwo może utracić nad nimi kontrolę podczas przenoszenia danych pomiędzy komputerami. Generuje to istotne luki w bezpieczeństwie – w szczególności wówczas, gdy przenoszone dokumenty są szczególnie ważne dla organizacji. Praktyka wykazuje jednak, że istnieją stanowiska pracy, które wymagają pracy zdalnej lub też wymagające przetwarzania danych poza organizacją. Wiąże się to z koniecznością użycia pamięci przenośnych, takich jak: pendrive’y, dyski zewnętrzne USB, czy karty pamięci. Continue reading