Skocz do zawartości

Leaderboard

Popular Content

Showing content with the highest reputation since 08.10.2015 in all areas

  1. Tak może dodam coś na temat Rust, bo wydaje mi się, że jest to jeden z bardziej interesujących języków opracowywanych w ostatnich kilku latach. Killer feature i "materiał eksportowy" w Rust to jest "borrow checker", czyli automatyczny sprawdzacz czasu życia obiektów. Czas życia jest ściśle monitorowany na podstawie tego, kto aktualnie posiada dany obiekt. W jednej chwili tylko jedna rzecz może być właścicielem jakiegoś obiektu, więc nie można sobie np. przekazać tablicy jako argumentu jakiejś funkcji. Trzeba tą tablicę albo "pożyczyć" ("borrow" - wtedy dostęp do niej jest read-only, przez tego co ją pożyczył, i tego, który jest właścicielem, do czasu gdy pożyczenie się zakończy), albo całkowicie "oddać", przy czym wtedy oryginalny właściciel traci dostęp do zasobu i już nie może go używać. To wszystko dzieje się już na etapie kompilacji, a nie działania programu -- jeśli kompilator Rust skompiluje kod, będzie to znaczyło, że przynajmniej istnieje gwarancja na brak ryzyka wystąpienia błędu odczytu pamięci po jej zwolnieniu. Oczywiście temat borrow checkera jest dość obszerny, a powyższy akapit przedstawił jedynie jego prosty zarys, ale może to zachęci kogoś do głębszego zapoznania się z tematem.
    4 points
  2. Chciałbym pokazać Wam mojego bloga: https://anonimowyprogramista.wordpress.com/ Dotyczy on IT, a głównie programowania. Jest to początek jego istnienia. Mam nadzieję, że Wam się spodoba.
    2 points
  3. Polecam zapoznać się z lekturą poradnika początkującego programisty na blogu Gynvaela. W skrócie, wybór nie ma to większego znaczenia. Python i Ruby są tak bardzo do siebie zbliżone, że większość pracodawców nie będzie sprawiać problemów jeżeli kandydat na stanowisko programisty Pythona będzie znał Ruby lub odwrotnie. Jeżeli myślisz o rynku pracy, to wybierz jeden dowolny z nich i zacznij pracować nad swoim portfolio. Pomóż w rozwoju jakiegoś projektu Open Source, napisz kilka swoich bibliotek itd. Znacznie lepiej wypadniesz na rozmowach prezentując trochę kodu, który sam napisałeś niż wykuwając na blachę sam język.
    2 points
  4. Używanie kodu Rust z projektu C++ mam już sprawdzone ;), polega na wykorzystaniu FFI w celu zapewnienia bezpieczeństwa typów. Po stronie Rust, kod źródłowy obiektu dzielonego (DLL), z niego wyjdzie np. libdylib.so: #![crate_type = "dylib"] extern crate libc; use std::ffi::CStr; #[no_mangle] pub fn hello_world(name: *const libc::c_char) { let buf_name = unsafe { CStr::from_ptr(name).to_bytes() }; let str_name = String::from_utf8(buf_name.to_vec()).unwrap(); println!("Hello, {}!", str_name); } Poprzez wykorzystanie specyfikatora "no_mangle", symbol dla funkcji hello_world będzie wyglądał tak, jak np. przy użyciu extern "C" w C++, czyli będzie miał wycięte informacje o typach, etc - "_hello_world". Taką DLL'kę lub obiekt dzielony można załadować standardowo, jak każdy inny obiekt. Po stronie C++: #include <iostream> #include <dlfcn.h> int main() { void* lib = dlopen("./target/release/libdylib.so", RTLD_LAZY); if(!lib) { std::cout << "can't open libdylib.so\n"; return 1; } void* func = dlsym(lib, "hello_world"); if(!func) { std::cout << "can't locate function hello_world()\n"; dlclose(lib); return 1; } typedef void (*hello_world_fun)(const char* somestr); hello_world_fun hello_world = (hello_world_fun) func; hello_world("C++"); dlclose(lib); return 0; } (dlopen to jest to samo co LoadLibrary, a dlsym to jest to samo co GetProcAddress). Wyjście programu: $ ./test Hello, C++! Na Linuxie można też zlinkować wygenerowany obiekt dzielony do exeka pisanego w C++, więc możliwe jest stworzenie takiego programu, wołającego funkcję z Rust'a bezpośrednio, bez potrzeby ładowania dynamicznego: #include <iostream> #include <dlfcn.h> extern "C" void hello_world(const char* ptr); int main() { hello_world("C++"); return 0; }
    2 points
  5. Cześć, Dzięki uprzejmości adminów mamy swój dział na Forum DevStart. Świetna sprawa! Będziemy tu informować Was o tym co słychać w redakcji, jakie artykuły planujemy w nadchodzących wydaniach, jakie materiały są w aktualnych numerach itp. Chętnie też poznamy Wasze opinie o magazynie i z miłą chęcią przyjmiemy sugestie na tematy artykułów. Jeśli nie zetknęliście się jeszcze miesięcznikiem "Programista", to zapraszamy do zapoznania się z nim. Udostępniliśmy bezpłatne wydania do pobrania: http://programistamag.pl/wydanie_probne/ Obecnie, tj. do 20 października w Empikach jest dostępne wydanie nr 39, a w nim np. : przedpremierowe, obszerne fragmenty książki Gynvaela Goldwinda "Zrozumieć programowanie". Książka będzie wydrukowana w ostatnich dniach tego miesiąca, a już teraz możecie się przekonać czy jest warta zakupu. Zamieściliśmy rozdziały: Synchronizacja, Muteksy i sekcje krytyczne, Typy stałoprzecinkowe, Przekierowania... Poza tym w aktualnym numerze znajdziecie artykuł o algorytmach rozpoznawania dźwięków pt." Symfonia problemów", "Kod Schrödingera, czyli maszyna abstrakcyjna języka", "Zaawansowane funkcje systemu Windows 10: śledzenie twarzy" i kilka innych... Spis treści aktualnego wydania: http://programistamag.pl/programista-8-2015-39/
    2 points
  6. 1. Jeśli program ma wypisywać wszystkie dni aktualnego miesiąca to działa dobrze, tylko wpisz poprawnie nazwę metody i talbicy.. String[] weekdayNames = new DateFormatSymbols().getShortWeekdays(); do { System.out.printf("%4s", weekdayNames[weekday]); 2. Korzystaj z systemu popowiedzi (zazwyczaj ctrl + space) to wtedy nie będzie takich błędów
    2 points
  7. Miałem pomysł, a teraz mam problem... Spodobało mi się rozwiązywanie zagadek programistycznych ala Advent of Code do tego stopnia, że postanowiłem sprawdzić czy dałbym radę stworzyć sam jakiś fajny event programistyczny, który pozwalałby łączyć przyjemne z pożytecznym czyli programowanie, rozwiązywanie zagadek i rozwój. Posiedziałem po godzinach przez prawie rok i... oto jest: Everybody Codes Mój problem polega na tym, że Event został podłapany niespodziewanie mocno w Indiach i Turcji a w Polsce jakoś tak nie bardzo, a szkoda, bo mamy specjalistów światowej klasy! Jednym z rankingów w tym evencie jest ranking krajów (programiści punktujący w leaderboardach, punktują również dla swojego kraju) i marzy mi się żeby przynajmniej w pierwszym wydarzeniu Everybody Codes zwyciężyła jednak Polska, skoro pomysł narodził się w Polsce i polskimi ręcami polskiego programisty został stworzony... żeby nie być gołosłownym: Pomożecie? Strona: https://everybody.codes Wydarzenie LinkedIn: https://www.linkedin.com/events/7241738676685164544 Wydarzenie Facebook: https://www.facebook.com/events/489350657247536 Twitter X Post: https://x.com/EverybCodes/status/1836134311424090117 pozdrawiam serdecznie wszystkich! Emil Kaczyński Twórca Everybody Codes
    1 point
  8. Produkt jest czarny i też mało wyraźny ma kontur na ciemnoniebieskim tle.
    1 point
  9. Podaj jakiego API, to jest zrzut JSONa. Mając taki zrzut musisz przekonwertować sobie to tak, żebyś mógł z tego korzystać z poziomu Pythona # importuj modul jsona import json # otworz plik z danymi jsona with open('data.json') as json_file: data = json.load(json_file) print("\nbulki:", data['bulki'])
    1 point
  10. A linkujesz do 4programmers :D, u nich nawet do nich linkujesz Moim zdaniem kluczową sprawą w tego typu portalu jest wsparcie prawnicze, im szybciej sobie to załatwisz i będziesz miał zaufaną kancelarię prawną od wszystkiego - tym lepiej. Razi mnie, że używasz skryptów analitycznych Google dając im wgląd w swój portal. Dziwi stosowanie jQuery z 2013 roku (1.9.3). Nie wiem czy to robisz ale polecam blokować rejestrację z tzw. tymczasowych adresów email do tworzenia fejk kont. Np. https://temp-mail.org/en/ Ogólnie taki portal i utrzymanie to ogrom pracy. Nie wiem na ile znasz się i wykorzystujesz skalowalność, ale jeśli liczysz na sukces będziesz musiał szybko się tego nauczyć. No i jak już osiągniesz sukces to życzę Ci żebyś nie powielał błędów Facebooka i nie sprzedawał danych użytkowników na lewo i prawo.
    1 point
  11. Witam, chciałbym podzielić się z poradnikiem mojego autorstwa: https://f4wst53dd.gitbooks.io/abc/content/ Jest oparty na moich doświadczeniach, oraz przemyśleniach. Być może komuś się on może przydać, żeby mieć sugestię na jakich elementach, technologiach warto skupić się w pierwszej kolejności. Niektóre rozdziały mogą być przydatne także dla nie-web developerów. Zawiera on m.in.: - listę przydatnych/wymaganych umiejętności technicznych i nietechnicznych - co powinien zawierać projekt na rekrutację - jak pisać cv, jak wygląda proces rekrutacji - jak wygląda praca w metodyce SCRUM - na jakim sprzęcie pracować - gdzie szukać wiedzy/newsów z branży IT - słowniczek najważniejszych pojęć z programowania/web devlopmentu Poradnik był pisany jako poradnik stosunkowo uniwersalny, nie zawiązany z konkretnym językiem/frameworkiem. Nie jest on jeszcze ukończony, zatem poproszę o opinie, uwagi itp.
    1 point
  12. Cześć, jestem Patryk. Od jakiegoś czasu tworzę materiały edukacyjne dotyczące rozwijania i wytwarzania produktów cyfrowych. Już od prawie dekady tworzyłem różnego rodzaju oprogramowanie jako programista i postanowiłem zacząć dzielić się swoją wiedzą na YouTube. Ostatni stworzyłem materiał, w którym opowiadam o tym co można zrobić, żeby stworzyć produkt typu SaaS, który będzie wyróżniał się na tle innych rozwiązań tego typu. Jeśli potencjalnie temat wydaje wam się ciekawy to zapraszam do odwiedzania, oraz dzielenia się swoimi opiniami w tej tematyce. Materiał jest dostępny w kilku formatach - video, podcast oraz blog, także dla każdego się coś znajdzie YouTube: Spotify: https://open.spotify.com/epis[...]vsGvEE0dw?si=15b5388f4b134533 Blog: https://www.letsmaketechnolog[...]j-saas-wyprzedzi-swoje-czasy/
    1 point
  13. Zakres obowiązków: - rozwijanie aplikacji mobilnej dla jednego z wiodących klientów sieci telekomunikacyjnej; - dbanie o jakość i bezpieczeństwo; - współpraca z całym zespołem. Oczekiwania: - minimum dwuletnie doświadczenie w programowaniu w Javie + front realizowany w Angular; - Znajomość Java w wersji 7 lub wyższej i Java EE w wersji 6 lub wyższej; - Znajomość frameworków Spring, Spring Boot – wymagany poziom średni; - Doświadczenie w pracy z JIRA; Mile widziane: - doświadczenie w integracji z usługami REST, SOAP; - znajomość technologii Hibernate lub JPA; - doświadczenie w korzystaniu z baz SQL i NoSQL; - doświadczenie w pracy z Java Server Face; - doświadczenie w pracy z Sonarqube; - doświadczenie w pracy z Primefaces; Oferujemy: - elastyczny czas pracy z możliwością pracy zdalnej; - pracę w zgranym zespole w świetnej atmosferze; - możliwość rozwoju poprzez udział w innowacyjnych międzynarodowych projektach; Zapraszam do aplikowania: natalia.niklas@pentacomp.pl
    1 point
  14. Hej! Właśnie opublikowaliśmy 2. część serii artykułów JavaScript od podstaw - Wartości. Nauczycie się z niego czym są wartości w JavaScript, jak działają teksty, liczby, wartości logiczne oraz czym są... stringi 🙃 ➡️ https://kt.academy/pl/article/js-wartosci Powodzenia!
    1 point
  15. Zajrzyj sobie do inspektora zmiennych i zobacz czy te twoje i to faktycznie jest dobry indeks, czy ta tablica istnieje i w debugerze wylistuj sobie elementy tak dla pewności, czasami oczywiste rzeczy okazują się błędami.
    1 point
  16. Wartosc : yScrollAxis masz zainicjalizowaną tylko raz, nie powinieneś jej aktualizować przy każdym evencie czasem?
    1 point
  17. Ponieważ używasz PeekMessage() co powoduje jedynie "zajrzenie" do kolejki komunikatów windows obadanie czy nic tam nie leży i oddanie sterowania do programu, a że masz to pięknie zrobione w pętli while(true) no to wykonuje to tak szybko jak tylko potrafi, polecam użycia while(GetMessage(&message, NULL, 0, 0) ) { TranslateMessage(&message); DispatchMessage(&message); } (no chyba że tam jeszcze będziesz chciał coś dodać co spowolni działanie programu) pozdrawiam
    1 point
  18. Witam, zapraszam w Pełni na mojego bloga przeznaczonego dla webdeveloperów z zakresu Front-endu, aby pogłębili swoją wiedzę, poczytali o czymś ciekawym, robili pewne czynności szybciej oraz wszystkich, którzy chcieliby zacząć tworzyć strony WWW, kodować, pisać skrypty lecz nie bardzo wiedzą jak to ugryźć. Artykuły pisane rzetelnie i na wesoło, nic nie jest tworzone na siłę, a całość nie przypomina nudnego wykładu na studiach. Zapraszam tutaj: http://furuart.pl
    1 point
  19. musisz dodać import klasy na górze pliku import java.math.BigDecimal;
    1 point
  20. Jest to związane z wewnątrzą reprezentacją liczb zmienno-przecinkowych. Możesz sobie przeczytać tu https://en.wikipedia.org/wiki/Floating_point#Accuracy_problems z czego wynika ten problem. Jeśli chcesz uzyskać precyzyjny wynik użyj klasy BigDecimal. Masz tu kawałek kodu, z którego szybko załapiesz o co chodzi: public static void main(String[] args) { final double stala = 3.00; final double stala1 = 3.14; System.out.println("double: " + stala); System.out.println("double1: " + stala1); System.out.println("double sum: " + (stala1 + stala)); BigDecimal bigDecimalPi = BigDecimal.valueOf(3.14); BigDecimal doublePi = new BigDecimal(3.14); System.out.println(bigDecimalPi.setScale(100)); System.out.println(doublePi.setScale(100)); System.out.println(bigDecimalPi.setScale(100)); System.out.println(BigDecimal.valueOf(stala).setScale(100)); System.out.println(bigDecimalPi.add(BigDecimal.valueOf(stala)).setScale(100)); } Zwróć uwagę na tworzenie bigDecimalPi oraz doublePi.
    1 point
  21. Java na początek jest fajna, uniwersalna. Zobacz może w Codete, zdarzało im się przynajmniej kiedyś przyjmowac mniej doświadczonych, których douczali. Zresztą tam się wszyscy cały czas uczą łącznie z seniorami kórych nie brakuje, fajne to jest tam.
    1 point
  22. Do samego Ruby polecam: https://www.codecademy.com/learn/ruby
    1 point
  23. Witam, Zapraszam na szkolenia z SQL Server również w weekendy oraz godzinach popołudniowych dla osób, które nie mają możliwości wziąć działu w godzinach standardowych. Szkolenia z każdego obszaru MSSQL. Szkolenia prowadzone są przez autoryzowanego trenera Microsoft z dużym doświadczeniem praktycznym. Miejsce szkolenia: z reguły Warszawa Cena: Zależna od tematyki szkolenia, proponuje 50% cen autoryzowanych. Z reguły około 2000 zł Plan szkolenia: Dowolny z SQL Server, Sharepoint i Windows Część szkoleń jest opisana http://www.strona.radkomp.pl/szkolenia.html Najważniejsze jest zadowolonenie uczestnika, dlatego też plan szkolenia jest opracowywany indywidualnie a jeśli grupa jest większa to wspólnie. Miejsce szkolenia też jest zależne od ilości osób i z której części Polski pochodzi większa część osób. Jestem mobilny Jeśli chodzi o ceny to jestem otwarty na neocjajcje Zachęcam również do konsultacji i wykonania audytu Państwa środowiska bazodanowego. Zweryfikujemy bezpieczeństwo Państwa danych, ustawienia serwera nie tylko SQL Server, ale również wskażemy potencjalne problemy. Zapraszamy do kontaktu: biuro@radkomp.pl tel: 504194439
    1 point
  24. Protokół HTTPS jest dzisiaj powszechny na wszystkich stronach z wrażliwymi informacjami. Banki są klasycznym przykładem. HTTPS “gwarantuje”, że dane są przesyłane w szyfrowanej formie, a klient wie, że łączy się z oryginalną stroną. Certyfikat publikowany przez stronę jest gwarantem, że korzystamy właśnie z tej aplikacji, z której zamierzaliśmy. W najprostszej postaci wygląda to zatem następująco: Tego przynajmniej spodziewamy się… Problem w tym, że czasami użytkownicy wpisują adres http://… W takich sytuacjach, programiści przekierowują użytkownika na HTTPS, tzn. sekwencja wygląda następująco: Użytkownik wpisuje adres http://www.domain.com Serwer zwraca kod 302 – przekierowanie na https://www.domain.com Przeglądarka od teraz korzysta z bezpiecznej wersji czyli https://www.domain.com Wygląda więc to następująco: Niestety jest to bardzo niebezpieczna architektura. Bardzo dużo stron, włączając w to banki, korzysta z przekierowania na HTTPS. Wiele banków korzysta z HTTP na stronie głównej, a do HTTPS jest użytkownik przełączony dopiero w momencie chęci zalogowania do strony. Oznacza to, że strona główna banku jest niebezpieczna. Wszystko co na niej znajduje się może zostać podrobione (brak certyfikatu). Jeśli ktoś podmieni stronę główną i wstawi np. link do logowania do kompletnie innej strony, możliwe, że staniemy się ofiarą phishing. Wyobraźmy sobie, że korzystamy z Internetu w miejscu publicznym, np. używając WIFI. Możliwe, że ktoś wstawi proxy między nami, a docelowymi stronami. Co jeśli staniemy się ofiarą ataku man in the middle? Taki serwer proxy będzie w stanie przekierowywać wszystkie nasze żądania. Wtedy powyższa sekwencja może wyglądać już tak: Użytkownik wpisuje http://www.domain.com Man in the middle przechwytuje żądanie i zwraca jakąkolwiek treść.. Użytkownik nie zauważa nic podejrzanego. Strona wygląda identycznie – jesteśmy ofiarami phishing. Czujny użytkownik zauważy, że po kliknięciu loguj na stronie głównej banku nie został przekierowany do https i wciąż korzysta z nieszyfrowanego protokołu. Niestety jest to rzadkość. Problem jest jeszcze większy, ponieważ MITM (man in the middle), może rzeczywiście logować się do banku. Użytkownik poda hasło poprzez HTTP do MITM, a potem MITM nawiąże połączenie szyfrowane HTTPS z prawdziwą stroną banku. Możliwe jest zatem, że użytkownik będzie widział prawdziwe dane (balans konta itp), ale wszystko serwowane będzie przez MITM, który łączy się poprzez HTTPS z prawdziwym bankiem, a potem przekierowuje wszystko w postaci HTTP do użytkownika. Rozwiązanie składa się z dwóch etapów. Przede wszystkim każdy bank powinien w pełni implementować HTTPS – na każdej podstronie. Druga kwestia jest trudniejsza. Użytkownicy wciąż domyślnie będą wpisywać www.domain.com, a nie https://www.domain.com. Jak już wiemy, przekierowanie jest niebezpieczne bo nie wiadomo, czy ktoś po drodze nie przechwyci zapytania i nie będzie “karmił” nas dowolnymi danymi. Z tego względu, wymyślono protokół HSTS (HTTP Strict Transport Security). Jest to protokół implementowany bezpośrednio przez przeglądarki. Jeśli serwer ustawi odpowiedni nagłówek, wtedy przeglądarka jest zobowiązana łączyć się zawsze przez HTTPS, a nie HTTP. Dzięki temu, MITM jest nie możliwy, ponieważ nigdy nie dojdzie do połączenia HTTP, a jak wiemy, dane przesyłane przez HTTPS nie mogą być zmodyfikowane. Aby przeglądarka łączyła się zawsze przez https, serwer strony musi zwrócić następujący nagłówek w odpowiedzi: Strict-Transport-Security:max-age=631138520; includeSubDomains; preload Parametr max-age oznacza, jak długo przeglądarka ma łączyć się zawsze przez https. Powyższy nagłówek zawsze należy zwracać przez HTTPS, a nie przez HTTP. Wynika to z prostego faktu, że przeglądarka nie może ufać niczemu, co pochodzi z HTTP. Łatwo wyobrazić sobie, że przez HTTP, MITM modyfikuje np. max-age do 1. Sekwencja może zatem teraz wyglądać następująco: 1. Użytkownik wpisuje http://www.domain.com 2. Serwer zwraca 302 oraz https://www.domain.com 3. Przeglądarka łączy się z https://www.domain.com 4. Serwer zwraca nagłówek Strict-transport-security. 5. Użytkownik wpisuje http://www.domain.com 6. Przeglądarka automatycznie przekierowuje na https://www.domain.com (kod 307, internal redirect). Od teraz MITM nie jest w stanie nam zaszkodzić, ponieważ nie wychodzi żadne połączenie HTTP. Powyższe rozwiązanie ma jednak wciąż pewną lukę.Pierwsze połączenie HTTP wciąż jest niebezpieczne. Co prawda minimalizuje to groźbę ataku MITM ponieważ wystarczy, że użytkownik chociaż raz wcześniej korzystał ze strony (tak, że HSTS został ustawiony). Niestety w skrajnej sytuacji, wciąż mamy ten sam problem (MITM i pierwsze zapytanie z danej przeglądarki). Z tego względu mamy tzw. pre-loaded lists. Przeglądarki korzystają z tych list i wtedy każda strona, która na niej znajduje się, będzie ładowana automatycznie wyłącznie przez HTTPS. Możemy naszą stronę dodać tutaj. Po dodaniu do listy, przeglądarki będą łączyć się automatycznie przez HTTPS, nawet za pierwszym razem. Możemy również zobaczyć adresy aktualnie dodanych stron do tych list. W następnym wpisie, pokażę jak zaimplementować HSTS w ASP.NET MVC. W międzyczasie zachęcam zapoznać się z kompatybilnością różnych przeglądarek z HSTS . Wyświetl pełny artykuł
    1 point
  25. To pytanie czy co? Dev C++ to przeżytek, nie warto w tym pisać czegokolwiek.
    1 point
  26. Tak mnie naszło na zrobienie listy programów, których używam praktycznie codziennie, a nawet tego nie zauważam :). Jestem ciekaw waszych typów. 1. HIEW Czy lato czy zima, nie wyobrażam sobie pracy na komputerze, zwłaszcza przy reversingu bez HIEW. Na komputerach bez HIEW czuję się jak bez ręki. Ten znakomity hex edytor i deasembler / assembler mimo wyglądu rodem z DOSa, jest niezastąpionym narzędziem pracy i jego screenshoty można znaleźć w wielu publikacjach dotykających inżynierii wstecznej i analizy malware. 2. KiTTY Klient telnet / SSH, fork popularnego Putty. To jeden z tych programów, którego istnienia nie zauważam, jednak jest praktycznie codziennie używany w pracy z moim serwerem. 3. Total Commander Świat ewoluował, a stary poczciwy Total Commander jest jednym z moich podstawowych narzędzi pracy. Doskonale sprawdza się przy wyszukiwaniu plików (na wyszukiwarkę z Windows patrzeć nie mogę) oraz jako klient FTP. Niektóre programy są po prostu niezastąpione. 4. ProcessHacker Jeden z tych “niewidzialnych”, których używam instynktownie, bez których nie wyobrażam sobie pracy w Windows. 5. PhpStorm Odkąd odkryłem środowisko PhpStorm, z genialną analizą kodu w trakcie pisania i masą przydatnych funkcji jak np. system nawigacji po kodzie, code deployment, pisanie nawet prostych skryptów w innych edytorach i ręczne wrzucanie zaktualizowanych skryptów na serwer FTP wydaje się jak czynność z innej epoki. 6. EditPlus Znakomity edytor tekstu, który od lat stanowi prawdziwą klasę i podąża za wszystkimi nowinkami technicznymi, bardzo często aktualizowany. Spędziłem w nim tysiące godzin pracy nad kodem assemblera i ciężko by mi było z niego obecnie zrezygnować (no chyba, że JetBrains by wydali IDE dla assemblera). 7. RSSOwl Agregator newsów RSS / ATOM etc. z blogów, którego używam do śledzenia ponad 150 blogów, żaden inny agregator nie sprawdzał się tak dobrze w tej roli. Ciekawostką jest to, że RSSOwl zbudowany jest na bazie popularnego IDE Eclipse. 8. Opera Mimo, że przeglądarka Opera została niejako pozbawiona swojego głównego motoru napędowego w postaci silnika Presto, to jej nowe wcielenie w barwach silnika Chromium sprawia, że nadal jest moim faworytem pomiędzy trochę zapuszczonym Firefoxem, a troszkę biednym w opcje bez masy dodatkowych i czasami płatnych rozszerzeń Chrome. Lubię ekran startowy Opery i gesty, których nie była w stanie zastąpić żadna wtyczka do Chrome. 9. TheBat Nie wiem jak wy, ale ja nie potrafię się przyzwyczaić do obsługi poczty w klientach online i TheBat jest ze mną odkąd założyłem pierwsze konto pocztowe. Jeden z tych programów, których nie wyobrażam sobie zamienić na nic innego. 10. Miranda Mimo, że FB i jego komunikator wyparł z rynku większość komunikatorów i ich systemy, nadal korzystam z kilku sieci do utrzymywania kontaktu ze znajomymi i klientami. Niezastąpiony jest dla mnie w tym temacie komunikator Miranda i nawet sam się sobie dziwię, że praktycznie codziennie z niego korzystam. Wyświetl pełny artykuł
    1 point
  27. Będę śledził, życzę wytrwałości :)
    1 point
  28. Fajnie, właśnie zaczynam ogarniać androida w pakiecie z libGDX więc pewnie się przyda ;)
    1 point
  29. Wizualna uwaga - fonty użyte w headerach nie mają polskich znaków. Brak polskich elementów np. domyślnie wyświetla się "Continue reading ->"
    1 point
  30. By stwierdzić, jaki język jest dla ciebie to je lepiej wypróbuj: Ruby online: http://tryruby.org/levels/1/challenges/0 Python online: http://www.tutorialspoint.com/ipython_terminal_online.php http://www.stavros.io/tutorials/python/ Po tym stwierdzisz co jest lepsze dla Ciebie. Ja używam Rubiego, bo jest takim następca Perla i ma dużo elementów, które ułatwiają pracę.
    1 point
  31. Silnik Doom przepisany na Rusta https://github.com/cristicbz/rust-doom
    1 point
  32. http://www.tedunangst.com/flak/ - developer OpenBSD, rzadko pisze ale b. dobre posty http://undeadly.org/cgi - newsy ze świata BSD http://gynvael.coldwind.pl/ - był już polecany, jego blog wymiata http://lcamtuf.blogspot.com/ - lcamtuf, autor ciszy w sieci i twórca AFL Plus standardowo reddit.com (r/programming, r/openbsd, r/linux, r/coding), lobste.rs i new.ycombinator.com
    1 point
  33. Dzisiaj powracamy do zagadnień związanych z bezpieczeństwem aplikacji webowych. Przez kilka następnych postów będę pisał o XSS. Oprócz SQL Injection, XSS jest jednym z “popularniejszych” ataków przeprowadzanych na aplikacje webowe. O ile zasada działania może wydawać się prymitywna, to wiele stron, nawet tych z czołówki (np. Amazon), były podatne na XSS. Co więcej, tak jak […]Wyświetl pełny artykuł
    1 point
  34. Zaczęłam od Ruby, a skończyłam na Pythonie. Dlaczego? Mogłam liczyć na większą pomoc niż w Ruby i Python nie sprawiał tyle problemów z odpaleniem go na Windowsie
    1 point
  35. Skoro już dogrzebałam się do tego wątku dzięki Bartoszowi to powiem tak: kobiet programujących zawodowo, w firmie lub na zleceniu - nie znam. Ale też nie jestem z branży deweloperskiej więc trudno żebym znała Sama zajęłam się Pythonem nie tak dawno i robię to raczej hobbystycznie - sprawia mi to frajdę. Pewnie liczba kobiet programujących zawodowo się zwiększy - takie czasy i słusznie: każdy ma prawo robić to co lubi i chce robić.
    1 point
  36. Sorry, dopiero teraz zauważyłem post. Ostatnia linijka, chyba wypadła Ci nazwa zmiennej z lewej strony operatora ".&.", tzn.: in Data.Char.chr ( rhsfn13 Data.Bits..&. 0xFFFF )U mnie działa $ ghc prog2.hs [1 of 1] Compiling Main ( prog2.hs, prog2.o ) Linking prog2 ... $ ./prog2 abc!
    1 point
  37. oj chyba nie, tamtej już nie ma warto dodać że co 24h jest inna książka do zgarnięcia - obecnie do pobrania jest "Python Geospatial Development"
    1 point
  38. Zachęcam do zakupu w przedsprzedaży książki Gynvaela Coldwinda - Zrozumieć Programowanie http://gynvael.coldwind.pl/?id=569
    1 point
  39. Darmowy ebook od firmy RedGate z 52 tipsami jak przyśpieszyć działanie aplikacji .NET http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/entrypage/52-net-performance-tips
    1 point
  40. Rails jest prosty do nauki, przez co prosto go się nauczyć - jednak na początku najlepiej poznać samego Rubiego, bo posiada wiele fajnych udogodnień dla programistów (trochę przypomina Perla). Największy problem z wydajnością miał Rails, teraz to poprawili. Ruby ogólnie jest dość wydajny: http://benchmarksgame.alioth.debian.org/u64q/ruby.html Odwieczne porównanie z Pythonem Dodatkowo można też czynnikiem ma framework na wydajność: http://www.madebymarket.com/blog/dev/ruby-web-benchmark-report.html
    1 point
  41. Jemu chyba bardziej chodziło o rozwiązania takie jak mysqli dla PHP http://sequel.jeremyevans.net/
    1 point
  42. Nie wiem dokładnie o co chodzi w tym pytaniu, ale systemy zarządzania bazamu danych to: https://pl.wikipedia.org/wiki/MySQL https://pl.wikipedia.org/wiki/PostgreSQL https://pl.wikipedia.org/wiki/SQLite Jeżeli chcesz mieć możliwość podglądu graficznego do konkretnego systemu bazodanowego, to: MySQL: https://www.mysql.com/products/workbench/ PostgreSQL: http://www.pgadmin.org/ SQLite: http://sqlitestudio.pl/
    1 point
  43. Brzmi jak odkrywanie fog of war w grach, ja bym poszedł tą drogą i poszukał algorytmów z gier np. http://www.redblobgames.com/articles/visibility/
    1 point
  44. Myślę, że to dobry pomysł. Generalnie dobrze zarządzane forum internetowe żyje, ma swoją społecznosć. Tutaj konkurujesz trochę ze StackOverflow i w sumie jesteś z góry na straconej pozycji. Ktoś powie, że for internetowych też jest sporo i czy jest sens zakładać kolejne. Ja uważam, ze jest sens ale pod jednym warunkiem - że będzie to naprawdę solidnie przemyślane forum, skirowane do różnych grup użytkowników, a nie jednej. Co mam na myśli? Otóż wystaczy wejść na pierwsze lepsze forum dla "webdeveloperów": co na takich formach się rzuca w oczy? Że są zrobione głównie pod programistów PHP. A gdzie inne języki, ja sie pytam? Przezcież aplikacje WWW dzisiaj się robi coraz częściej w nodeJS, Pythonie, Rubym, Javie, Scali, Groovim, C#, a nawet w GO. Nie wiem dla kogo przeznaczone są takie fora, ale pomijają sporą grupę programistów, którzy miejsc tam dla siebie nie znajdą. Przejdźmy dalej. Pierwsze lepsze forum dla programistów, jakie ma kategorie: Java, C\C++, Inne języki. Zaraz, zaraz. Dlaczego inne języki są wpakowane do jednego wora? Ktoś powie, że Java i C++ są najpopularniejsze. Ja się zgadzam, ale uważam, że takie upakowanie do jednego wora takich języków jak Python czy Ruby razem z jakimiś językami skamilinami typu Ada czy Fortran, to trochę strzał w stopę - ten zabieg również odrzuca całą rzesze programistów od takiego forum. Jak dobrze przemyślisz strukturę forum, jego kateorie, wymyśliz ciekawe działy, które będa rozkręcać to forum: np. programistyczne konkursy weekendowe, w stylu np. "Napisz grę ping pong", "Napisz jakiś algorytm", "Napisz skrypt wyciągający najpopularniejsze obrazki z redditta" itp. - chętni będą wrzucać swoje prace, a pozostali będa mogli głosować na najlepiej dopracowany produkt. Oczywiście to są moje luźne propozycje ;)
    1 point
  45. Jeśli zależy Ci na konkretnym języku, to wyżej już odpowiedzieli, jeśli zaś chodzi o poprawne kodzenie i dobrą znajomość algorytmów to: Wprowadzenie do algorytmów T. H. Cormen - na początek, Sztuka programowania D. Knuth - jak już się otrzaskasz z jakimś językiem. Jeśli jesteś kompletnie zielony to na start możesz poszukać udostępnionych wykładów różnych profesorów np. Wykłady ze wstępu do informatyki powinny być dla początkującego pomocne. Osobiście polecam kolejność: oswojenie się z jakimś językiem na tyle żeby być w stanie napisać w nim cokolwiek i wiedzieć "z czym to się je",opanowane struktur danych, żeby wiedzieć np. czego szukać w Google, albo, że do kolejek są inne struktury niż np. tablice dynamiczne :)potem możesz już sam zdecydować w jakim kierunku iść - opanowywanie jakiegoś konkretnego języka (warto jakiś jeden dobrze znać, byleby nie był jedyny, bo trendy się zmieniają), czy bardzo dobra znajomość algorytmów (przydaje się gdybyś chciał np. pisać super wydajny kod. Nawet assembler Ci nie pomoże jak klepniesz algorytm NP, a często można tego uniknąć).
    1 point
  46. Tak. Spotkałem. Nawet znam osobiście. Ich brak w IT wynika z samospełniającej się przepowiedni. "Jestem dziewczynką więc jestem słaba z matmy", potem z informatyki - w każdym razie wszyscy dają mi to do zrozumienia. A potem nawet jak skończy jakiś kierunek IT - "dajmy ją do wdrożenia, kobiety mają lepszy kontakt z klientem". Mam małą córkę wiec wiem co mówię, a dzieci lubią być akceptowane więc się starają dostosować.
    1 point
  47. Aż dziwne, że nikt nie polecił jeszcze: Wprowadzenie do algorytmów T. H. Cormen to chyba najważniejsza pozycja. Ja oprócz z w/w księgi korzystałem jeszcze z tych: Java: Core Java 2 Podstawy Core Java 2 Techniki zaawansowane PHP: PHP i MySQL Tworzenie stron www C: Język C - K. N. King
    1 point
  48. Zdecydowanie mogę polecić Sublime Text, który wraz z kilkoma pluginami staje się potężnym narzędziem. Działa błyskawicznie, w pamięci zajmuje raptem 15~20 MB więc idealnie nadaje się do słabszych komputerów, w przeciwieństwie do kombajnów pokroju NetBeans'a czy też Eclips'a. Generalnie edytor jest płatny, ale można go z powodzeniem używać za darmo - po prostu bez wykupienia licencji, co dwudzieste zapisanie pliku wyskakuje okienko zachęcające do jej zakupienia. Kilka dodatków, które warto od razu zainstalować: Package ControlBrackt HighlighterEmmetJsFormatSublimeCodeIntelTagWarto zapoznać się z funkcjonalnością programu: http://net.tutsplus.com/tutorials/tools-and-tips/sublime-text-2-tips-and-tricks/ i obejrzeć kilka tutoriali: http://www.youtube.com/playlist?list=PLLnpHn493BHEYF4EX3sAhVG2rTqCvLnsP Po opanowaniu około 6 skrótów klawiszowych, kod html/css/js można pisac kilkukrotnie szybciej niż każda inna osoba pracująca w wielkich programistycznych kombajnach, gdzie każdą pierdółę trzeba 5 razy wyklikać w menu :)
    1 point
×
×
  • Utwórz nowe...