#programowanie

238
1752
Wyniki dorocznej ankiety języka Rust

Polacy są w pierwszej dziesiątce użytkowników tego języka!

#technologia #programowanie #rustlang #rust
ef7ce715-2ee8-4cfe-9c26-cdf5206515b3
HolenderskiWafel

Bardziej mni dziwi że Niemcy drudzy, a nie jacyś Chińczycy czy Hindusi

Zaloguj się aby komentować

Zostań Patronem Hejto i odblokuj dodatkowe korzyści tylko dla Patronów

  • Włączona możliwość zarabiania na swoich treściach
  • Całkowity brak reklam na każdym urządzeniu
  • Oznaczenie w postaci rogala , który świadczy o Twoim wsparciu
  • Wcześniejszy dostęp, do wybranych funkcji na Hejto
Zostań Patronem
Ostatnio wrzuciłem wpis z linkiem do platformera z dwoma poziomami.
Kilka osób zagrało, nawet przeszło więc stwierdziłem że zrobię kolejną, trochę bardziej dopracowaną grę którą będę robić trochę dłużej niż 2-3 dni.

Idea jest taka:
Wcielasz się w postać latającej dupy, Twoim celem jest się wysra... yyy, zasiąść na tronie. Strzelasz bąkami z dupy: kwiatki więdną, ludki rzygają, itp. Jak dobrze wyjdzie to będzie kilkanaście poziomów i walka z bossami.

Myślę że niedługo będę mieć gotowe demko. Gierka będzie dostępna za free na itch.io.
Dajcie pioruna dla zasięgu.

Poprzedni link: https://vuaaas.itch.io/worst-platformer-ever

#diy #tworczoscwlasna #gamedev #gry #programowanie
716f70f3-dfe0-4160-a5bf-a42cef9f1f57
Zielczan

@Vuaaas to jest ewidentnie słowik, a nie różowa dupa

VonTrupka

@Vuaaas wołaj do nowego


w worst platformerze faktycznie worst motoryka ever (☞ ゚ ∀ ゚)☞

Catharsis

@Vuaaas Zagrałem w to pierwsze demko i daje identyczny feeling grania jak gry które robiłem ja i masa innych osób w The Games Factory kiedy byłem gówniakiem xD. Ten program miał różne nazwy ale chyba ostatecznie zatrzymało się na Multimedia Fusion. Tera pewnie gdybym chciał coś podobnego zrobić to pewnie też wybrałbym Unity albo jeżeli 2d to chyba bardziej Godota bo Unity ostatnio miało gorszy okres że tak powiem xd.

Zaloguj się aby komentować

Będąc użytkownikiem Rusta, widzę niekiedy wiadomości, jak to nowy projekt zaczyna używać tego języka czy nowy driver w kernelu jest na niego przepisywany.

Pod każdym znajduje się spora ilość komentarzy pozytywnych/neutralnych jak i pewna część negatywnych głównie pochodzących od użytkowników innych niskopoziomowych języków tj. C czy C++.

Oto niektóre powody szkalowania(często słusznego) języka:

  • Toksyczna społeczność - głównie chodzi o RIR(Rewrite in Rust) - pisane często pod postami o programach nie napisanych w tym języku - głównie przez osoby nie programujące w Rust, tylko myślące że jest to złoty środek na wszystkie bolączki i błędy występujące w programach.

  • Niebezpieczny system pakietów - chodzi głównie o to że można próbować ataku polegającego na podszyciu się pod crates.io i zmienić paczki na ich złośliwe wersje. Według mnie taki atak prawie niemożliwy do wykonania, bo np. Cargo.lock posiada w środku hashe paczek, co uniemożliwia użycie podrobionej wersji paczki.

  • Używanie do wszystkiego obcych zależności - parser cli czy implementacja tls, według niektórych użytkowników powinno to być napisane ręcznie albo przez zrobione przez kopiuj/wklej bezpośrednio do repozytorium. Według mnie to właśnie jest niebezpieczne, bo kopiowanie coś takiego komplikuje proces budowania, wydłuża proces tworzenia aplikacji jak i zwiększa ryzyko błędów/wymusza ciągłą synchronizację(można to łatwo zrobić przy pomocy git submodule, którego jednak niezbyt lubię). Obce pakiety, używane przez setki innych projektów mają zwykle o wiele lepszą jakość, więcej funkcji i mniej błędów niż te ręcznie napisane.

  • Problemy statycznego linkowania - jeśli jakaś zależność np. openssl, będzie miała błąd który będzie naprawiony w nowej wersji, to gdy jest ona dynamicznie linkowana trzeba tylko ją przekompilować a w przypadku rusta całą aplikację - głównie jest to podnoszone przez ludzi zarządzających dystrybucjami, bo wiąże się to ze zwiększonym wysiłkiem.

  • Problemy z pamięcią to tzw. skill issue i dobrzy programiści nie robią ich prawie wcale/mnie się one nie zdarzają choć już kilka lat programuję w C/C++ - setki tysięcy programistów używają C/C++ i naturą ludzką jest popełnianie błędów a te języki pozwalają odstrzelić sobie stopę w najbardziej wymyślny sposób w zupełnie losowym momencie(problemy z pamięcią często objawiają się z opóźnieniem). Wymagają od użytkowników trzymania dużej ilości informacji o kodzie w swojej głowie, co oczywiście nie jest idealne i problemy ze zrozumieniem kodu/jego poprawną zmianą pojawiają się przy zmiany osoby używającej program czy po dłuższej przerwie od danego kawałka kodu. W przeciwieństwie do C i podobnych niskopoziomowych języków, kompilator Rust traktuje użytkowników z dystansem(można powiedzieć że jako debili - ale w pozytywnym tego słowa znaczeniu(jeśli oczywiście takie jest)) i wymusza określony styl i praktyki, no chyba że zmienimy to przez unsafe. Pozwala to zwykłym użytkownikom tworzyć szybko działające programy, bez bania się o wszędzie czychające problemy z pamięcią, jak i przychylniejszym okiem patrzyć na pull requesty, bo szansa na zepsucie kodu jest o wiele mniejsza. Z tego co zauważyłem to programiści C, często uważają się za pewną elitę, bo przecież nie każdy potrafi robić to co oni. Wystarczy zobaczyć https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=memory, by zauważyć że zbyt wiele programów rozwijanych przez bardzo wykwalifikowanych programistów ma problemy z pamięcią i że to raczej nie problem ich zbyt małych umiejętności. No a jeśli to problem zbyt małych umiejętności, to większość programistów powinna unikać jak ognia C skoro jest on przystosowany jedynie dla najbardziej zaawansowanych.

  • Długa kompilacja i biorąca dużo zasobów systemowych - Rust z racji ilości koniecznej weryfikacji wszystkich parametrów, typów, lifetimów etc. bierze o wiele więcej zasobów systemowych i czasu niż c czy np. go, więc do kompilacji lepiej zaopatrzyć się w mocniejszy komputer

  • Brak dostępności na wszystkich platformach gdzie C jest dostępny - C jest chyba najbardziej przenośnym językiem na świecie(w ilości kompilatorów na różne platformy sprzętowe), wiec trudno by z nim konkurować. Rust wspiera najbardziej popularne systemy bazujące na ARM, x86-64 i wielu innych architekturach wspieranych przez llvm, ale obecnie nie ma oficjalnego wsparcia dla alpha, hppa, ia64, m68k czy s390. Problemem dużym to nie jest bo dotyczy zapewne grubo mniej niż 1% wszystkich użytkowników i to tych, którzy pracują na antycznym/mniej popularnym sprzęcie.

  • Jest o wiele trudniejszy niż C/C++ - składniowo na pewno na pierwszy rzut oka nie wygląda zachęcająco, jednak z doświadczenia muszę powiedzieć że programuje się w nim o wiele szybciej niż w powyższych językach, bo nie muszę polegać w wielu przypadkach na sobie, tylko na kompilatorze. C jest dość prosty pod względem składni, ale bardzo trudnym gdy chce się go poprawnie używać, głównie przez to że bezpośrednio operuje się na pamięci. C++ z wersji na wersji próbuje stać się językiem bezpiecznym, jednak ciągnie się za nim szereg funkcji ze starszych wersji i problemów, które po prostu nie mogą zostać naprawione bez gruntownej modyfikacji języka.

  • Rust rozwiązuje tylko problemy z pamięcią a ich nie robię - cóż, jeśli nawet to prawda(w co szczerze wątpie, jeśli używasz C/C++) to przynosi on szereg przydatnych funkcji, tj. ograniczenie wyścigów o dane, ujednolicenie formatowanie kodu(rustfmt), oficjalny system budowania(cargo), wymuszanie obsługi wszystkich sytuacji w match (switch w C/C++), przyjazne komunikaty błędów - bardzo często z kodem który można zrobić kopiuj/wklej i naprawić problem.

Jak widać Rust nie jest złotym środkiem na wszystko ale wprowadza kilka niezłych usprawnień w stosunku do C/C++, jednak jak widać części ludzi nie jest tym przekonana. C/C++ jak widać po np. statystykach na githubie nigdzie się nie wybiera i ciągle miliony linii kodu będą w tych językach pisane, jednak z roku na rok, coraz większe grono języków zaczyna je podgryzać.

#programowanie
#rustlang
#rust
178866a4-d06a-4a8f-b49c-195e1697a9ce
5348b615-36e1-4a23-b735-7a34e7c5cb0c
faf9ce9d-a1b6-48e6-8ba4-97bb88e975b0
adb6cd90-ab8a-4da2-a53b-9147ed684de3
def

Po czym poznasz progrmiaste rusta? Sam ci to powie

Catharsis

@qarmin Ostatnio zacząłem się uczyć Rusta i jako osoba która wcześniej pisała dosłownie wszystko w JS to było ciężko. Na pewno bardzo mi się podoba Cargo i Crates.io bo to dosłownie jest odpowiednik npm i działa niemal identycznie znacząco upraszczając pisanie czegokolwiek.


Kiedy chodziłem do technikum to byłem chyba ostatnim rocznikiem który uczył się na programowaniu C++ (teraz jest python) i o ile uważam, że Rusta uczy mi się dużo lepiej to jednak na pewno nie polecałbym go jako pierwszy język programowania bo znacząco się różni od innych popularnych języków i potem uczenie kolejnych może być utrudnione.


A co do społeczności Rusta to nie wiem może przeglądamy jakieś inne subreddity ale dosłownie jeszcze nie widziałem nigdzie w necie na niego hejtu lol. Na Reddicie wszyscy zawsze pomocni, masę rzeczy się dowiedziałem z odpowiedzi pod postami. Tak samo na różnych forach i stackach. Nawet na r/linux czytałem posty zachwalajace dodawanie kodu Rusta do kernela , nie wiem może przypadek że ominęło mnie to totalnie xD.


A co do wydajności to jako typ przychodzący z JS to xD, dwa światy. Czasem sobie testowo/dla nauki przepisuje jakiś stary kod z JS na Rusta i jaram jak wykonuje się z 50 razy szybciej jednocześnie zużywając ułamek ramu który zużył JS. To chyba moja największa motywacja w nauce Rusta.

piotrb

@qarmin Ja bym dodał jeszcze tych co rzucają: „a i tak trzeba wszędzie zrobić unsafe”.

Zaloguj się aby komentować

As ⟨ÿ⟩ rarely appears as the first letter in a name, and all-caps text typically omitted all accents, initially there was assumed to be no need for an uppercase ⟨Ÿ⟩ when computer character sets such as CP437 and ISO 8859-1 were designed. However much software assumes that conversion from lower-case to upper-case and then back again is lossless, so ⟨Ÿ⟩ was added to many character sets such as CP1252, ISO 8859-15, and Unicode. This also happened to a more prominent character, the German ß.

W ogóle co do ß to ciekawostka, text-transform zmienia je na SS, bo jakaś reforma była czy coś jest w niemieckim, że capsie ten znak zawsze jest SS a nie "normalnie" pisany.

#programowanie #webdev #frontend #css
8e39b901-9307-4a53-9ec0-b5762104a184
GtotheG

@Deykun ogolnie jezyk niemiecki raczej dazy do usuniecia scharfes S calkowicie, byly jakies reformy gdzie juz to nastepowalo w niektorych wyrazach.

Zaloguj się aby komentować

Pracuję od jakiegoś czasu w projekcie, w którym kiedyś podjęto decyzję, aby tworzyć interfejsy dla serwisów.
Przykład: mamy interfejs HejtoService i dla niego jest implementacja HejtoServiceImpl - i generalnie wszystkie publiczne metody implementacji muszą pokrywać się z tym co jest w interfejsie.
I tak 99% klas ma i zawsze będzie miało tylko jedną implementację - bo zawsze jak zmieniają się wymagania, to modyfikuje się implementację, a nie dopisuje kolejną.

No i później wchodzę do jakiegoś pakietu i mam tam np. 10 plików (5 implementacji i 5 interfejsów) - ciężej cokolwiek znaleźć, ciężej nawigować po drzewku projektu - bo zwyczajnie jest 2x więcej plików.
Dodatkowo chcąc przejść do implementacji danej metody (z miejsca, z którego została użyta), zawsze muszę przejść przez interfejs.
Przykład:
ServiceAImpl -> ServiceB -> ServiceBImpl -> ServiceC -> ServiceCImpl
vs
ServiceA -> ServiceB -> ServiceC
Debugując jest identycznie.

Żebyście mnie nie zrozumieli źle, ja lubię używać interfejsów, tam gdzie faktycznie widzę ich zastosowanie. Np. kiedyś kodowałem jakieś generowanie raportów, wykresów, czy czytanie z pliku - gdzie mamy różny format plików, albo przedział czasowy - i tam interfejsy pasują mi idealnie i widzę ich zastosowanie.

No i mam pytanie, po co tworzyć takie interfejsy? Pytam całkiem poważnie i proszę o proste wyjaśnienie, bo dla mnie nie wprowadzają niczego pozytywnego.

#java #programowanie #kiciochpyta
HmmJakiWybracNick userbar
e87ff900-41a6-4eaa-9dcd-7d4ba416b29f
Ryba_z_mordom_jenota

Wszystko co mądre już zostało powiedziane. Od siebie dodam że warto używać skrótów klawiszowych. Wtedy nawigacja ogranicza się tylko do klawiatury i można szybko trafić do implementacji lub się cofnąć

mpower

@HmmJakiWybracNick przez większą część mojej kariery uważałem, że interfejsy są niezbędne i to faktycznie jest ten słynny Clean Code. Na starość zrozumiałem jednak, że nie ma jednego, uniwersalnego podejścia do tego czym jest Clean Code. Polecam mocno obejrzeć prezentację Jakuba Pilimona https://www.youtube.com/watch?v=W8gcGmVgWQM. Dość dobrze otwiera oczy na ten temat i ja się obecnie zgadzam w pełni z jego podejściem do tematu.

TryingMyBest

W c++ jest coś takiego jak idiom pimpl. https://en.cppreference.com/w/cpp/language/pimpl Pozwala to uniknąć rekompilacji dużych porcji kodu i pozwala na modyfikacje implementacji w libce która używa pimpl bez utraty kompatybilności binarnej (ABI). Może w Javie jest podobny mechanizm? Albo ktoś kto wymyślił takie podejście pisał w cpp i zostało przyzwyczajenie.

Zaloguj się aby komentować

()
#datascience #programowanie #heheszki
c9e40e0e-1d8e-403b-b601-6e955c5d6241
koszotorobur

@GrindFaterAnona - to jest czyste zło - na szczęście w miarę łatwe do wychwycenia jak ma się jakikolwiek linter...

jestem_na_dworzu

@GrindFaterAnona ty zły człowieku xD zaraz jakiś junior zejdzie na zawał

the_good_the_bad_the_ugly

@GrindFaterAnona That’s evilest thing I could ever imagine. xD

Zaloguj się aby komentować

Z czego korzystacie do testowania rest api(głównie chodzi o fuzzer lub coś w tym stylu i to lokalnie, bo chcę to automatyzować bez dostępu do świata)?

Używam serwisów napisanych w pythonie (pydantic + fastapi) i rust (actix + utoipa)

Obecnie korzystam z:

  • https://github.com/matusf/openapi-fuzzer - działa tylko dla rustowego openapi, bo fastapi bazuje na jakimś starym dokumencie gdzie niektóre wartości mają inne typy niż walidatory oczekują i przez to się wysypuje. Problematyczne jest to że więcej logiki do weryfikacji mam właśnie od strony pythona i to właśnie chciałbym bardziej testować
  • https://github.com/Endava/cats - ciekawy projekt, który ignoruje część błędów w schemacie openapi i pozwala na testowanie nawet niepoprawnego schematu. Działa na początku całkiem dobrze, bo znajduje najbardziej podstawowe błędy, jednak z czasem widać że celuje on bardziej w implementację testowania takich programów jak uvicorn/fastapi a nie samego programu użytkownika(np. jest masa fuzzerów które wysyłają śmieci w nagłówkach, dane z niepoprawnym kodowaniem etc.), a mnie interesują tylko dane które w miarę poprawne mogą zwrócić nieoczekiwany wynik

Poszukuję czegoś "myślącego" albo dającego takie pozory, by znaleźć błędy które powyższe programy pomijają i muszę ręcznie błedy te wyszukiwać, np. sytuację w której dodaję użytkownika i za pomocą zwróconego uuid kontynuowany jest proces testowania api

jakieś inne programy też testowałem, ale odbijałem się od nich bardzo szybko, bo trudno było je używać albo i nawet zainstalować

#programowanie
#naukaprogramowania
wombatDaiquiri

@qarmin 

a mnie interesują tylko dane które w miarę poprawne mogą zwrócić nieoczekiwany wynik


To się nazywa "domena biznesowa" i za to Ci płacą mordo ( ͡° ͜ʖ ͡°)

Zaloguj się aby komentować

Naszym zadaniem jest tworzenie technologii obliczeniowych, tak aby nikt nie musiał już programować, a językiem programowania był człowiek: każdy na świecie jest teraz programistą – to jest cud.
- Jensen Huang, CEO firmy NVIDIA

Źródło: https://blogs.nvidia.com/blog/world-governments-summit/

#wiadomosciswiat #programowanie #programista15k #artificialintelligence #sztucznainteligencja #nvidia
koszotorobur

@rastabaddon - no się wie - tylko dlaczego Ty tak uważasz?

rastabaddon

@koszotorobur Jezeli kiedykolwiek robiles wieksze projekty to wiesz o czym mowie. Juz widze jak AI (pseudo ai) programuje zawile projekty. Powodzenia. Aktualnie to nawet nie dokonca nadaje sie jako pomoc, ilosc bledow jest tak olbrzymia ze sie w pale nie miesci. To moze byc co najwyzej watpliwej jakosci support.

Zaloguj się aby komentować

Niedziela popołudnie a ja w pracy... bo debile ddosują "nasz produkt".

1.2mln requestów na 5 minut, czyli ponad 3k requestów na sekundę... I tak od 8 godzin.

A ja jem se chipsy i batony, bo mamy WAF, więc nam to lotto Ale obserwować trzeba.

Ale nie powiem, na początku dobrze nas zddosowali, poprzez serwery amazona, google, azure, digital ocean i alibaba cloud (alibaba ma serwery w US równiez 0_o )

#programowanie #siecikomputerowe #gownowpis
3352b1a1-9719-4d8a-9adf-cac0fea17842
kaszalot

Monitoring macie w elastic cloud, czy własny klaster? Używacie elastica też do biznesowych funkcjonalności?

Klopsztanga

@kaszalot hmm AWS metrics głównie.

Dzemik_Skrytozerca

Rzuć coś wiecej na temat DDOSu:

- z jakich przyczyn: ideowy, strategiczny, bandycki

- macie jakieś usługi, których to dotyczyło, czy po prostu atak na adres?

- ruski?


Każdy szczegół będzie miły.


PS. U nas też coś takiego było ostatnio, ale niestety za daleko siedzę by coś wiedzieć.

Klopsztanga

@Dzemik_Skrytozerca 


- z jakich przyczyn: ideowy, strategiczny, bandycki

hmm pewnie chcą kasę od nas wyciągnąć. Ot szantaż chyba, ale nie dostalismy od nich maila że mamy wysłać okup


- macie jakieś usługi, których to dotyczyło, czy po prostu atak na adres?

hmm nasz główny "sklep", gdzie sprzedajemy nasze produkty.


- ruski?

wszyscy, po adresach IP. Kanada, USA, Brazylia, Chiny, Argentyna, Niemcy itp. Ale gównie DDOS z USA pochodził - ale w sumie na rynku USA działamy głównie.


Ogólnie mówiąc na początku był DDOS za pomocą innych hostingów... Później leciał z botnetu i też z otwartych list proxy.

Dzemik_Skrytozerca

@Klopsztanga 


Dzięki za informacje. Z tego co śledzę zdarzenia tego typu, to brzmi jak Korea lub Chiny


Rekietierzy pochodzą najczęściej stamtąd ostatnio.


Zgaduje, że chcą wprowadzić płatna protekcję od DDOS

Klopsztanga

Poddali się. Dzisiaj zablokowane zostało ponad 500mln requestów przez WAF. A było 6mln requestów na 5minut, więc około 1.3mln na minutę, 16-20k na sekundę. Więc wincyj niż napisałem początkowo. Bo standardowo AWS aggreguje dane co 5 minut, a wyjątkowo na grafie było pokazane to co 1 minute


Czy dużo? Na początku roku w 1 dzień zrobili 3mld requestów.

Zaloguj się aby komentować

Potrzebuję stworzyć prosty system logowania do serwera i dostępu do jego zasobów, który oczywiście powinien być bezpieczny, ale w miarę łatwo implementowalny.

Jako że nigdy się w aplikacjach warstwą sieciową nie zajmowałem, to mam problem ze znalezieniem odpowiedniej metody.

Na internecie jest masa poradników jak to zrobić, ale oczywiście dotyczą różnych frameworków jak i różnych metod(tokeny, sesje), więc akurat nie wszystko kojarzę.

Z tego co wnioskuję logika powinna wyglądać w ten sposób:

  • W bazie użytkownika zostaje dodane login + posolone hasło
  • Użytkownik próbuje zalogować się do serwera, więc w zapytaniu przesyła w body login + hasło
  • Serwer weryfikuje czy w bazie dane się znajdują, jeśli tak, to generuje token przy pomocy sekretnego klucza, w którym wewnątrz jest zapisany login użytkownika i czas wygaśnięcia i zwraca go użytkownikowi
  • Użytkownik otrzymuje klucz i następnie do każdego zapytania api dodaje go do nagłówka Authentication
  • Serwer po otrzymaniu zapytania, sprawdza nagłówek i odpakowywuje login i czas wygaśnięcia tokena, jeśli token jest ciągle ważny, to wykonuje daną operację, jeśli nie to zwraca błąd
  • Serwer dla każdego zapytania wymaga tego tokena(oczywiście oprócz resta do logowania)

Czy moje rozumowanie jest poprawne?

#programowanie
#naukaprogramowania
Meverth

@qarmin brzmi jak JWT. Domyślnie podpis JWT nie jest sprawdzany, więc twoja w tym głowa by to wymusić. Jak wspomniano wyżej; co złego jest w zwykłej sesji? Będzie najprościej

qarmin

@Meverth Pewnie wychodzę w rozważaniach zbyt daleko, ale czy ciasteczka w przypadku wielu serwerów nie są problematyczne? Skoro jeden serwer otworzył sesję, to drugi raczej o niej nic nie wie i trzeba się bawić w przesyłanie danych o niej pomiędzy nimi(oczywiście jeśli dobrze rozumiem jak to działa).


W przypadku jwt każdy serwer może obsłużyć to zapytanie, bo nic się na nim związanego z tym konkretnym tokenem nie zapisuje

Meverth

@qarmin zależy co rozumiesz pod pojęciem 'wielu serwerów'. Możesz użyć wspólnego, rozproszonego cache do trzymania sesji. JWT ma też swoje problemy. Np. konto zostanie hacknięte i chciałbyś je dezaktywować, a token jest dalej ważny.

DexterFromLab

@qarmin najprostszy i najbezpieczniejszy dostęp do serwera to klient SSH, z zablokowanym dostępem innym niż przez klucz. Ale ty piszesz o aplikacji webowej. Jeśli chcesz zapewnić dostęp do serwera za pomoacą aplikacji webowej, to zasoby które udostępni serwer będą ograniczone tylko do tego co wystawia aplikacja za pomocą interfejsu. Musisz się zastanowić co chcesz udostępnić, a potem pomyśleć o sposobie realizacji bo aplikacja to jeden ze sposobów. Poza tym jest wiele różnych darmowych aplikacji serwerowych do różnego typu zasobów. Filmy, pliki, Smart Home i różnego rodzaju czujniki, konsolowe sesje dostępowe. W zasadzie to co potrzeba?

qarmin

@DexterFromLab Jako serwer, chodziło mi o serwer dla aplikacji(mobilnej/webowej), udostępniający zasoby do niej i logowanie użytkowników poprzez resty - czyli bardziej o aplikacja do obsługi takich zapytań a nie sprzet/system.

DexterFromLab

@qarmin no to masz w springu np. moduł security i jak masz "serwer side rendering" to załatwia całą autoryzację, tokeny, klucze, szyfrowanie. Jeśli nie preferujesz żadnej konkretnej technologii to java jest spoko. Ale myślę z każdy wiodący framework webowy będzie kompleksowo obsługiwał sesje logowania. Django w pythonie na przykład, a w PHP to w sumie nie wiem co się teraz używa. Kiedyś używałem codeigniter.

szczekoscisk

A czy komunikacja jest szyfrowana (HTTPS, nie http)? Bez tego logowanie i autoryzacja nie ma sensu.

qarmin

@szczekoscisk Jeszcze nie, do testów nie jest to potrzebne, zwłaszcza że większość rzeczy robię lokalnie, ale z tego co widzę, to dodanie https, to będzie jedynie kilkanaście nowych linii - https://actix.rs/docs/server/#tls--https

Zaloguj się aby komentować

Ostatnio miałem małą przygodę ze Swiftem i chcę to powtórzyć, wspaniały język programowania, polecam każdemu
#programowanie
def userbar
psalek

A tak w dwóch zdaniach: co konkretnie Ci się spodobało?

def

@psalek to taki rust na sterydach:


  • brak garbage collectora

  • kod jest bezpieczny (ma podobny do rusta sposób zarządzania pamięcią)

  • składnia się podoba dla mnie

  • ma duże możliwości, ale też prosty kod wciąż pozostaje prosty

  • wynikowy kod jest bardzo szybki

  • pisanie kodu sprawia mi przyjemność

koszotorobur

@def - no to pisz apki na urządzenia Appla

Meverth

@def składnia podobna do kotlina

Zaloguj się aby komentować

Czy do istniejącego oprogramowania można dopisać kawałek jako jakiś plugin? Czy jakiemuś specowi chciałoby się zainstalować program 3D 123D design i obejrzeć co ma jak zrobione? Ciekawy jestem czy dałoby się dopisać funkcję / plugin który rozwijałby na płasko powierzchnie rozwijalne. To prosty program ale skuteczny do wielu rzeczy. A funkcja unroll/unfold byłaby świetna.
W programie #fusion360 darmowej wersji nie da się robić unroll z powierzchni stożkowej albo ja czegoś nie ogarniam.
#programowanie
f57c50f6-fbc7-41ea-a9eb-e88372c43e3a
bimberman

w blender 3d możesz prawie wszystko

bimberman

oznaczasz figure gdzie są krawędzie i wrzuci wszystko zgodnie z rozcięciem na 2d aby umożliwić nałożenie obrazków / zmapowania

Fox

@bimberman będę musiał spróbować ale o co innego pytałem.

wombatDaiquiri

@Fox 


W programie #fusion360 darmowej wersji nie da się robić unroll z powierzchni stożkowej albo ja czegoś nie ogarniam


Czyli jest program który to robi który ktoś napisał i chce za to hajs, a Ty liczysz że ktoś poświęci czas żeby napisać taki plugin za darmo?

Fox

@wombatDaiquiri niekoniecznie, raczej chciałbym się dowiedzieć czy wgl jest taka możliwość dorobienia go do tego 123D.

pszemek

@Fox poszukaj modułów do konstrukcji blachowych, nie wiem czy Inventor nie ma takiej opcji

Zaloguj się aby komentować