Jump to content
Forum Kopalni Wiedzy
KopalniaWiedzy.pl

Chcą, by Google płacił wielomiliardowe odszkodowanie za śledzenie w trybie incognito

Recommended Posts

Kajam się za uproszczenie, ale idea i realizacja to dwie zdecydowanie różne rzeczy. ;)

Share this post


Link to post
Share on other sites
59 minut temu, cyjanobakteria napisał:

to mnie nie dziwi, że wolisz COBOLa

A mnie i owszem, dziwi. Pisałem w COBOLu przez ponad 18 lat i w mojej opinii lubienie tego zakrawa na syndrom sztokholmski. Ale trzeba przyznać, że miał ładne struktury danych, choć przy niskich poziomach trzeba było uważać, bo kompilator lubił coś dosunąć do granicy słowa dorzucając w strukturę parę gap bajtów. 

Share this post


Link to post
Share on other sites
5 minut temu, Jajcenty napisał:

A mnie i owszem, dziwi. Pisałem w COBOLu przez ponad 18 lat i w mojej opinii lubienie tego zakrawa na syndrom sztokholmski.

Dlatego tylko FORTRAN! :D:P:D Na marginesie, po wielu różnych doświadczeniach został mi tylko C, czysty K&R C (co jest zwyczajnie piękne), choć i przyswoiłem ANSI C. ;)

Ed.: Całkiem na marginesie. Czy naprawdę w całej tej zabawie chodzi o czytelność, a nie o efekt? Zapomniana zapewne przez wielu zabawa (Jajcenty, zapewne kojarzysz :)) to takie perełki jak IOCCC. Prześmiewczo: gdyby ludziom płacić nie za wklepane działające bajty, a za jak najmniejszy stosunek wklepanych bajtów do oczekiwanego efektu, to Świat byłby piękniejszy. ;)

Myślę, że zamiast jednego klepacza płaconego za bajty można by zatrudnić trzech, a kasę bierze ten o najmniejszym wspomnianym współczynniku (komentarzy nie liczymy, a akceptujemy tylko kody, które rozumie - za pomocą komentarzy - nawet głupi CEO ;)).

Share this post


Link to post
Share on other sites

Wydaje mi się, że wyższe zarobki wynikają z firm, które zatrudniają takich COBOL'owych jednorożców. Podejrzewam, że to są na przykład banki albo duże firmy z branży finansowej. Na pewno nie są to startupy, które walczą o przetrwanie, a pracowników przyciągają trickami typu stół bilardowy w kantynie 2x3m czy elastyczne godziny pracy (od rana do późnego wieczora) ;) Tam królują na back-endzie języki jak Ruby on Rails, a po stronie klienta coś na React czy cokolwiek jest teraz modne.

Jeden z moich znajomych odszedł do pracy w banku, gdzie płacili mu znacznie więcej za klepanie kodu w miarę nowoczesnym frameworku JS jako senior full-stack developer, o ile mnie pamięć nie myli.

 

2 hours ago, Jajcenty said:

A mnie i owszem, dziwi. Pisałem w COBOLu przez ponad 18 lat i w mojej opinii lubienie tego zakrawa na syndrom sztokholmski. Ale trzeba przyznać, że miał ładne struktury danych, choć przy niskich poziomach trzeba było uważać, bo kompilator lubił coś dosunąć do granicy słowa dorzucając w strukturę parę gap bajtów.

Jakbym wiedział, to byłbym mniej wredny w stosunku do Ciebie na forum :lol:

Share this post


Link to post
Share on other sites
13 godzin temu, Astro napisał:

to takie perełki jak IOCCC.

mam wystarczająco dużo problemów, żeby zrozumieć swój własny kod :D Jak widzę zapis typu int *** to wiem, że popłynąłem. choć właściwie, tablica tablic - dlaczego nie?

11 godzin temu, cyjanobakteria napisał:

Jakbym wiedział, to byłbym mniej wredny w stosunku do Ciebie na forum

Chyba powinieneś być wredny w mniej zawoalowany sposób. Moja lista aktualnych wrogów jest pusta. Więc mówisz, że powinieneś na niej być? Strzelałeś mi ze stanika, a ja tego nie zauważyłem? Hm..

Share this post


Link to post
Share on other sites
2 godziny temu, Jajcenty napisał:

Jak widzę zapis typu int *** to wiem, że popłynąłem. choć właściwie, tablica tablic - dlaczego nie?

Mi jakoś te rzeczy "podchodziły", lubiłem książki Jana Bieleckiego (pamiętne **++p--->ref chociażby). Aczkolwiek teraz już nie jestem pewien, czy dobrze pamiętam różne niuanse. Btw trzy gwiazdki to raczej chyba nie pójdzie jako tablica tablic, tylko jedna gwiazdka była z grubsza równoważna tablicy, resztę trzeba było już "pobożnie" zapisywać jako [] z tego co pamiętam.

Czyli int *[] albo int []* (nie jestem pewien kolejności, ale chyba pierwsze). :)

Edited by darekp

Share this post


Link to post
Share on other sites
11 minut temu, darekp napisał:

esztę trzeba było już "pobożnie" zapisywać jako [] z tego co pamiętam.

Można, ale nie trzeba. :D Na tym polega piękno wskaźników i C w sczególności. Klasyczny przykład:

 

while (*s++ = *t++); //z wiki

Dlatego wskaźnik traktuję jak tablice :D

 

Share this post


Link to post
Share on other sites

Tak, ale tu operujesz na wskaźnikach "jednogwiazdkowych" a przy wyższej liczbie gwiazdek to chyba był jakiś problem.

P.S. Bo to są różne sytuacje, gdy inkrementujesz wskaźnik do wskaźnika lub wskaźnik do tablicy (różny sizeof na ogół). Ale nie wykluczam, że rzeczywiście kiedyś dawno temu tego nie zrozumiałem.

P.S.2 Sprawdziłem u mnie Visual Studio przy takim kodzie

int t[10][10];
int main()
{
    int **p = t;
    return 0;
}

wywala błedy:

Cytat

a value of type "int (*)[10]" cannot be used to initialize an entity of type "int **"

'initializing': cannot convert from 'int [10][10]' to 'int **'

 

Prawidłowy kod to:

int t[10][20];
int main()
{
    int (*p)[20] = t;
    return 0;
}

(i te nawiasy okrągłe otaczające p są tu niezbędne, bez nich kompilator zinterpretowałby "p" jako tablicę dziesięciu wskaźników).

Edited by darekp
  • Upvote (+1) 1

Share this post


Link to post
Share on other sites
Godzinę temu, darekp napisał:

zinterpretowałby "p" jako tablicę dziesięciu wskaźników

Sprostowanie, oczywiście miało być "tablicę dwudziestu wskaźników". Albo precyzyjniej 20-elementową tablicę wskaźników.

Edited by darekp

Share this post


Link to post
Share on other sites
5 godzin temu, darekp napisał:

Tak, ale tu operujesz na wskaźnikach "jednogwiazdkowych" a przy wyższej liczbie gwiazdek to chyba był jakiś problem.

P.S. Bo to są różne sytuacje, gdy inkrementujesz wskaźnik do wskaźnika lub wskaźnik do tablicy (różny sizeof na ogół). Ale nie wykluczam, że rzeczywiście kiedyś dawno temu tego nie zrozumiałem.

większość moich programów zaczynała się 

int main( int argc, char** argv) {...}

Na pewno da się znaleźć zastosowanie i dla trzeciej gwiazdki :D Nie pamiętam już tylko czy przy inkrementacji wskaźnika kompilator umiał uwzględnić rozmiar własnych typów (struct czy union) czy trzeba było dodawać sizeof(). Czuję się usprawiedliwiony pisałem w tym w latach 90 ubiegłego stulecia ;)

 

Share this post


Link to post
Share on other sites

Z tego, co pamiętam to gwiazdki należą do nazwy zmiennych. Przypomniałem sobie o tym niedawno, jak próbowałem być cwany i zadeklarować dwa wskaźniki na raz, co oczywiście skończyło się tym, że wskaźnikiem była tylko pierwsza zmienna ;)

# BAD
int* test, test2;

# GOOD ;)
int *test, *test2;

 

  • Upvote (+1) 1

Share this post


Link to post
Share on other sites
1 godzinę temu, Jajcenty napisał:

większość moich programów zaczynała się 

int main( int argc, char** argv) {...}

Tak, bo do main jest przekazywana tablica wskaźników, a nie tablica dwuwymiarowa. To są dwa różne typy dla kompilatora.

 

1 godzinę temu, Jajcenty napisał:

Na pewno da się znaleźć zastosowanie i dla trzeciej gwiazdki

Oczywiście, że się da. Jedna gwiazdka to wskaźnik, dwie gwiazdki to wskaźnik do wskaźnika, trzy to wskaźnik do wskaźnika do wskaźnika itd. Mam w pracy kolegę, który w żartach w zależności od liczby gwiazdek używa odpowiednich stopni wojskowych, cztery gwiazdki to zdaje się generał i on twierdzi (możliwe, że od kogoś to słyszał), że w praktyce w kodzie wskaźników powyżej generała się nie spotyka:)

 

P.S. Kompilujący się pod Visual Studio przykład (C++):

const char tablica2d[][20] = {"ala", "ola"};
const char *argv[] = { "ala", "ola" };

int main()
{
	const char *p1 = tablica2d[1];
	const char **p2 = argv;
	const char ***p3 = &p2;
	const char ****general = &p3;
	return 0;
}

Ale spróbuj dla któregoś z tych wskaźników zrobić przypisanie, w którym po prawej stronie jest tablica2d - nie da się.

2 godziny temu, Jajcenty napisał:

Nie pamiętam już tylko czy przy inkrementacji wskaźnika kompilator umiał uwzględnić rozmiar własnych typów (struct czy union) czy trzeba było dodawać sizeof()

Uwzględniał rozmiar. Bezdyskusyjnie.

 

Share this post


Link to post
Share on other sites

 

Godzinę temu, darekp napisał:

Tak, bo do main jest przekazywana tablica wskaźników, a nie tablica dwuwymiarowa. To są dwa różne typy dla kompilatora.

Tablica wskaźników do  tablic znaków. Jeśli miałbym wskazać istotną różnicę do powiedziałbym że tablice są ciągłe w pamięci, podczas gdy wskaźniki mogą i wskazywać obszary nieciągłe. Zatem tab[][] ciągłe, **tab nieciągłe.

Godzinę temu, darekp napisał:

cztery gwiazdki to zdaje się generał

Kapitan, 3 to porucznik, 2 podporucznik. Ale trochę zależy od ozdobników: z lamówką to zaledwie chorąży :D

 

Godzinę temu, darekp napisał:

Oczywiście, że się da. Jedna gwiazdka to wskaźnik, dwie gwiazdki to wskaźnik do wskaźnika, trzy to wskaźnik do wskaźnika do wskaźnika itd.

To była lekka ironia ;) . Od tego zaczęliśmy. Napisałem, że kiedy widzę napis *** to wiem że odpłynąłem. Kilka razy zdarzyło mi napisać coś tak straszliwie generycznego, ale niestety kod przepadł... i dobrze C to nie jest język do zastosowań biznesowych :D

 

Edited by Jajcenty

Share this post


Link to post
Share on other sites
2 godziny temu, Jajcenty napisał:

To była lekka ironia

Mea culpa, nie załapałem, ostatnio jestem trochę zabiegany i nieuważnie przeczytałem :D

Za to zaciekawiło mnie to, że w COBOLu są ładne struktury danych, spróbuję kiedyś doczytać, bo na razie COBOL to dla mnie abstrakcja, jestem z innego pokolenia,  w liceum uczyłem się BASICa na Spectrum, a na studiach był Pascal (a ja gdy tylko mogłem, wyłamywałem się i pisałem w C).

Edited by darekp

Share this post


Link to post
Share on other sites
W dniu 18.09.2020 o 16:40, cyjanobakteria napisał:

Skoro sam przestałeś klepać kod w 2002

Wtedy zacząłem pisać w Ruby, nie rozumiem tej implikacji. Przestałem pisać w 2017.

W dniu 18.09.2020 o 17:17, Astro napisał:

Dlatego ludkowie piszący drive'y do lodówek, odkurzaczy i pralek zarabiają nieźle, i wciąż są poszukiwani.

To już od dawna pisze się w C i wyżej. Chyba że ktoś oszczędza milicenty i korzysta z 6502 ;)
 

 

Share this post


Link to post
Share on other sites
15 godzin temu, peceed napisał:

To już od dawna pisze się w C i wyżej.

Chyba nie do końca. Nie siedzę w temacie, ale dwóch znajomych z tej branży znam, i za ich twierdzeniami: znajomość ogarniania "nóżek" wciąż jest w cenie. Niekoniecznie dziś 6502 wystarcza. :) (pamiętaj, że kompilator na nowe nóżki ktoś musi napisać trochę "niżej"; na poziomie projektowania głupiego chipu też jest to przydatne :P)

P.S. Swoją drogą, Jajceny, zszokowałeś mnie. ;)

23 godziny temu, darekp napisał:

Ale spróbuj dla któregoś z tych wskaźników zrobić przypisanie, w którym po prawej stronie jest tablica2d - nie da się.

Zależy jak, podaj przykład (zgodność typów w C jest piękną rzeczą :)).

(niezbędne jest również zadbanie o to, by wskaźnik na coś wskazywał :P)

22 godziny temu, Jajcenty napisał:

i dobrze C to nie jest język do zastosowań biznesowych

Smutne. Dlatego taniej zatrudnić pięciu niskoczólkowych od sprawnego klepania rzeczy, które zamiast w pięćdziesięciu da się zmieścić w dwóch pięknych i czytelnych linijkach. Jestem jednak dobrej myśli. Niedługo już nie będzie potrzeba programistów, bo wystarczą karmiciele sieci neuronowych. Do tego wystarczy chyba zresztą jakieś technikum, albo i szkoła zawodowa.

Edited by Astro

Share this post


Link to post
Share on other sites
2 godziny temu, Astro napisał:

Smutne. Dlatego taniej zatrudnić pięciu niskoczólkowych od sprawnego klepania rzeczy, które zamiast w pięćdziesięciu da się zmieścić w dwóch pięknych i czytelnych linijkach.

Kod w Javie jest około dwukrotnie krótszy od analogicznego kodu w C++, wyłącznie ze względu na brak konieczności ręcznej alokacji pamięci.
Spotkałem się z opiniami "wymiataczy", że c++ powstał po to, aby kiepski programista był w stanie napisać to samo co oni potrafią w c. To co nie dotarło do tych wysokich czułek to fakt, że wymiatacz w c++ jest w stanie napisać znacznie więcej funkcjonalności niż wymiatacz w c, do tego lepiej i często działającej znacznie (dzięki metaprogramowaniu) szybciej. Z Javą w stosunku  do C++ jest podobnie - są domeny gdzie tworzy się znacznie szybciej i lepiej.

3 godziny temu, Astro napisał:

Niedługo już nie będzie potrzeba programistów, bo wystarczą karmiciele sieci neuronowych. Do tego wystarczy chyba zresztą jakieś technikum, albo i szkoła zawodowa.

Z początku wysokiej klasy analitycy. Wyobrażam sobie to w ten sposób, że po ustaleniu kierunku sieć będzie się dopytywać pewnych szczegółów. Kluczowe dla nauki będą istniejące systemy informatyczne, i sieć będzie się uczyć w trójkącie   wymagania->funkcjonująca aplikacja-> kod.
Nie bardzo widzę zadania dla osób "po zawodówce" których nie jest w stanie przejąć AI, gdy już obecnie pracę tracą osoby po studiach. Chyba że karmiciele dokładnie w taki sam sposób, jak kot jest karmicielem algorytmów do rozpoznawania obrazów. Też nie trzeba, wszystko jest już na Youtube :P



 

  • Upvote (+1) 1

Share this post


Link to post
Share on other sites

Tu się zgodzę. Odświeżyłem niedawno C, jak już wspomniałem, i miałem szybki catchup z rzeczywistością. Prosty program, który obsługuje argument wejściowy i wykona na nim prostą operację typu porównanie albo jakieś sprawdzeniu czy istnieje i otwarcie pliku, to jest 20-30 linii kodu. Cała ferajna: sprawdzanie długości stringa, alokacja/dealokacja pamięci, porównanie, sprawdzanie wyjścia z funkcji pod kątem błędów, jeszcze rzut okiem czy na pewno nie ma buffer overflow, itd... To jest strasznie męczące na dłuższą metę. Dlatego szanuję i podziwiam deweloperów kernela Linuksa. Sam muszę przed śmiercią obowiązkowo podesłać kilka patchy ;) Może jakiś drobny sterownik z błędem naprawię.

Share this post


Link to post
Share on other sites
6 godzin temu, peceed napisał:

ręcznej alokacji pamięci

Oczywiście dealokacji.

5 godzin temu, cyjanobakteria napisał:

Sam muszę przed śmiercią obowiązkowo podesłać kilka patchy ;) Może jakiś drobny sterownik z błędem naprawię.

To by wiele tłumaczyło: banda podstarzałych sklerotyków pisała coś w C wieki temu i tuż przed śmiercią zabiera się za programowane systemowe ;)

Share this post


Link to post
Share on other sites
3 godziny temu, peceed napisał:

To by wiele tłumaczyło: banda podstarzałych sklerotyków pisała coś w C wieki temu i tuż przed śmiercią zabiera się za programowane systemowe

To ja się odetnę od tego co napisał @cyjanobakteria - mnie klimaty w rodzaju grzebania w kernelu Linuxa w ogóle nie kręcą :P

Gdy pisałem, że czasem mam chęć podłubać jeszcze coś coś w C, to m. in. dlatego, że czasem mam chęć sobie popróbować jakichś alternatywnych sposobów zarządzania pamięcią. Wiadomo, że niczego genialnego nie wymyślę, ale fajnie byłoby sobie wyrobić jakieś zdanie na temat alternatyw w stosunku do garbage collectora itp. mainstreamu, może fajnie byłoby znaleźć jakieś niszowe, hobbystyczne "coś", co może i wymaga pisania trochę dłuższego kodu, ale w zamian daje zalety których nie daje GC. Rust zdaje się poszedł tą drogą. Garbage collector też ma swoje wady, zwalnia pamięć nie wiadomo  kiedy, już poprawiałem błędy na produkcji wynikające z tego, że ktoś nie w C# zapomniał wsadzić jakiś zasób w using().

Druga sprawa to struktury danych. Nawet w C# i Java gdy zrobić bardziej skomplikowany algorytm, to trzeba rzeźbić za pomocą List<>, Dictionary<> i pokrewnych. Napisany kod jest taki, że trudno potem na pierwszy rzut oka zorientować się, o co w nim chodzi a to czasem bywa istotne (Linq pomaga, jeśli chodzi o odczyt z takich struktur danych, ale  ich wypełnianie/budowanie to na ogół mało czytelna sprawa). W bazach danych można utworzyć tabelę i jeśli okaże się, ze jest nieefektywność, to często wystarczy dołożyć indeks i po sprawie. W C#/Java nie da się zrobić niczego w rodzaju var employee = new Table<string FirstName, string LastName, pozostałe_pola>(). Składnia nie pozwala. Tak naprawdę brakuje jakichś fajnych, bardziej wysokopoziomowych struktur danych. To też jest taki obszar, że korci, żeby samemu pokombinować, wymyślić jakieś alternatywy do mainstreamu, może nawet wymagające jakichś zmian w składni języka programowania.

Share this post


Link to post
Share on other sites
59 minut temu, darekp napisał:

W C#/Java nie da się zrobić niczego w rodzaju var employee = new Table<string FirstName, string LastName, pozostałe_pola>(). Składnia nie pozwala.

c# Uzywając DataSet/DataTable powinno się dać emulować w miarę generycznie. Masz też entityframewrok i parę innych maperów, reflection, anonymous objects, no i wreszcie ViewBag! To powinno wystarczyć by zjepsuć każdy program. Przecież to samo zuo :D BTW a wiedziałeś że w Pythonie można do instancji dodać lub usunąć atrybut? Jakie pole do robienia psikusów kolegom.

 

Edited by Jajcenty

Share this post


Link to post
Share on other sites
1 godzinę temu, Jajcenty napisał:

BTW a wiedziałeś że w Pythonie można do instancji dodać lub usunąć atrybut? Jakie pole do robienia psikusów kolegom.

Nie wiedziałem, ale też mnie niezbyt dziwi:) Słyszałem, że w pierwszych wersjach Fortranu można było zrobić przypisanie 2 = 3 i potem też niech koledzy szukają błędu :D Zdaje się, że w jakimś w miarę nowoczesnym języku też coś podobnego daje się zrobić tylko nie pamiętam szczegółów (jeden z mniej popularnych języków). Oczywiście w C też się da: najpierw #undef TRUE, potem #define TRUE FALSE  :D

Share this post


Link to post
Share on other sites
3 hours ago, darekp said:

To ja się odetnę od tego co napisał @cyjanobakteria - mnie klimaty w rodzaju grzebania w kernelu Linuxa w ogóle nie kręcą :P

Kernel to ciekawy projekt swoją drogą. Jest to najszybciej rozwijane oprogramowanie na  świecie. Nawet MS nie jest w stanie nadążyć z rozwojem systemu Windows. Widziałem kiedyś prezentację Grega Kroah-Hartmana, gdzie wspominał, że mają 5-10 łat na godzinę, 24/7, 365 dni w roku. Wszystkie łatki są niewielkie, kilka-kilkanaście linijek wyjścia z diff'a, jeden ekran tekstu lub mniej.

 

50 minutes ago, darekp said:

Słyszałem, że w pierwszych wersjach Fortranu można było zrobić przypisanie 2 = 3 i potem też niech koledzy szukają błędu :D 

Widziałem w necie fragment kodu w JS, który powstał zadaje się jako dowcip. Nie znajdę tego teraz, ale to była zakamuflowana, niskopoziomowa zmiana w sposobie w jaki działają typy boolean. Porównanie (true === true) zwróciłoby false, losowo, mniej więcej 1 na kilkaset prób :lol:

Share this post


Link to post
Share on other sites
6 godzin temu, darekp napisał:

Napisany kod jest taki, że trudno potem na pierwszy rzut oka zorientować się, o co w nim chodzi a to czasem bywa istotne (Linq pomaga, jeśli chodzi o odczyt z takich struktur danych, ale  ich wypełnianie/budowanie to na ogół mało czytelna sprawa). W bazach danych można utworzyć tabelę i jeśli okaże się, ze jest nieefektywność, to często wystarczy dołożyć indeks i po sprawie. W C#/Java nie da się zrobić niczego w rodzaju var employee = new Table<string FirstName, string LastName, pozostałe_pola>(). Składnia nie pozwala.

Pozwala, pozwala. Tylko trzeba stworzyć funkcje pomocnicze, dla przykładu, stosując maksymalny skrótowiec: 
Table employee = D.table(firstName,lastName,pozostałePola());
Helpery ładnie rozwiązują też kwestie tworzenia bardziej skomplikowanych struktur. Można spokojnie tworzyć bardzo rozbudowane obiekty za pomocą hierarchii Builderów.
Tak że jedynym prawdziwym problemem jest reprezentacja grafów w postaci liniowej, nieintuicyjna dla mózgu, każdy tekstowy język programowania ma ten sam problem. Bez rysunków pomocniczych w dokumentacji się nie obędzie i wspomniane języki wspierają umieszczanie odnośników w komentarzach :P
W dzisiejszych czasach  to można zrobić zdjęcie odręcznych notatek i rysunków i wrzucić do repozytorium.

 

Edited by peceed

Share this post


Link to post
Share on other sites

Cyknąć zdjęcie i wrzucić do zamrażarki na wieczne przechowanie. Ktoś widział kiedyś aktualną dokumentację kodu w firmie? ;)

Z sieciami jest podobnie. Większość diagramów i dokumentacji z jakimi miałem do czynienia była nieaktualna. Hakerzy się włamują, bo znają atakowane sieci i wszystko to, co w nich siedzi, lepiej niż firmowi admini ;)

Edited by cyjanobakteria

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By KopalniaWiedzy.pl
      Google podsumowało jedną z najbardziej długotrwałych wojen, jaką stoczyło ze szkodliwym oprogramowaniem. W ciągu ostatnich trzech lat firma usunęła ponad 1700 aplikacji zarażonych różnymi odmianami szkodliwego kodu o nazwie Bread (Joker).
      Jego twórcy byli wyjątkowo uparci. Zwykle autorzy szkodliwego kodu przestają go wgrywać do Play Store gdy tylko zostanie on wykryty przez Google'a. Przestępcy stojący za Bread'em nie poddali się tak łatwo. Działali przez ponad trzy lata i co tydzień przygotowywali nową wersję szkodliwego kodu.
      Przez te trzy lata stosowali tę samą technikę – wprowadzali w kodzie serię niewielkich zmian, licząc na to, że uda się oszukać stosowane przez Google'a mechanizmy obronne. Zwykle się nie udawało, ale czasami przestępcy odnosili sukces. Na przykład we wrześniu ubiegłego roku ekspert ds. bezpieczeństwa, Aleksejs Kurpins znalazł w Play Store 24 różne aplikacje zarażone Jokerem. W październiku inny ekspert znalazł kolejną aplikację, a kilka dni później Trend Micro poinformował o odkryciu kolejnych 29 kolejnych zarażonych programów. Później znajdowano kolejne, w tym arkusze kalkulacyjne Google Docs.
      Jednak w większości wypadków mechanizmy Google'a działały dobrze i zablokowały ponad 1700 aplikacji, które miały zostać umieszczone w Play Store. Jak dowiadujemy się z wpisu na oficjalnym blogu, w pewnym momencie hakerzy użyli niemal każdej znanej techniki, by ukryć kod. Zwykle przestępcy posługiwali się jednorazowo 3–4 wariantami szkodliwego kodu. Jednak pewnego dnia próbowali wgrać aplikacja zarażone w sumie 23 odmianami kodu.
      Najbardziej skuteczną techniką zastosowaną przez twórców szkodliwego kodu było wgranie najpierw czystej aplikacji do Play Store, a następnie rozbudowywanie jej za pomocą aktualizacji zawierających już szkodliwy kod. Przestępcy nie ograniczali się jedynie do tego. Umieszczali na YouTube filmy z recenzjami, które miały zachęcić internautów do instalowania szkodliwych aplikacji.
      Jak informuje Google, twórcy Breada działali dla korzyści finansowych. Pierwsze wersje ich szkodliwego kodu miały za zadanie wysyłać SMS-y premium, z których przestępcy czerpali korzyści. Gdy Google zaostrzył reguły dotyczące korzystania przez androidowe aplikacje z SMS-ów, przestępcy przerzucili się na WAP fraud. Telefon ofiary łączył się za pomocą protokołu WAP i dokonywał opłat, którymi obciążany był rachunek telefoniczny. Ten typ ataku był popularny na na przełomie pierwszego i drugiego dziesięciolecia bieżącego wieku. Później praktycznie przestał być stosowany. Nagle, w roku 2017, wystąpił prawdziwy wysyp szkodliwego kodu, który znowu korzystał z tej techniki. Jak twierdzi Google, twórcy Breada byli najbardziej upartą i wytrwałą grupą przestępczą, która używała WAP fraud.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Francuski urząd ds. konkurencji nałożył na Google'a grzywnę w wysokości 150 milionów euro. Koncern został ukarany za zachowania antykonkurencyjne oraz niejasne zasady Google Ads.
      Google naruszył swoją dominującą pozycję na rynku reklamy w wyszukiwarkach poprzez niejasne i trudne do zrozumienia zasady korzystania z platformy Google Ads oraz zastosowanie ich w sposób nieuczciwy i przypadkowy, stwierdzili urzędnicy. Na amerykańską firmę nałożono obowiązek wyjaśnienia zasad działania Google Ads i właściwego uzyskania zgody użytkowników na prezentowanie im spersonalizowanych reklam. Firma ma również przedstawić jasne procedury zawieszania kont oraz opracować procedury informowania, zapobiegania, wykrywania i postępowania w razie wykrycia naruszenia regulaminu Google Ads.
      Przedstawiciele koncernu zapowiedzieli, że odwołają się od decyzji.
      Wiele europejskich krajów bacznie przygląda się działalności amerykańskich gigantów IT. Firmy takie jak Google, Facebook, Apple czy Amazon są wielokrotnie krytykowane za płacenie zbyt niskich podatków. Nie dalej jak we wrześniu bieżącego roku Google porozumiał się z władzami Francji i zgodził się zapłacić niemal miliard euro grzywny w ramach ugody w sprawie do oszustwa podatkowe. Z kolei w styczniu bieżącego roku francuski urząd odpowiedzialny za ochronę danych ukarał koncern grzywną w wysokości 50 milionów euro za naruszenie europejskich przepisów dotyczących prywatności.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Prokuratorzy generalni 48 amerykańskich stanów, Dystryktu Kolumbii oraz Puerto Rico dołączyli do śledztwa w sprawie możliwego naruszenia przepisów antymonopolowych przez Google'a, oświadczył lider grupy, Ken Paxton, prokurator generalny stanu Teksas. W śledztwie nie biorą udziału prokuratorzy Kalifornii i Alabamy.
      Gdy nie ma już wolnego rynku lub konkurencji, dochodzi do wzrostu cen, nawet jeśli coś jest reklamowane jako darmowe, a to szkodzi konsumentom, mówi prokurator generalna Florydy, Ashley Moody. Czy coś jest naprawdę bezpłatne, jeśli oddajemy za to coraz więcej informacji osobistych. Czy coś jest naprawdę wolne, jeśli ceny reklamy internetowej idą w górę, bo są pod kontrolą jednej firmy?.
      Śledztwo w sprawie postępowania Gooogle'a nie jest jedynym, jakie ostatnio rozpoczęło się w USA w sprawie gigantów rynku IT. Kilka dni wcześniej prokuratorzy generalni siedmiu stanów oraz Dystryktu Kolumbii rozpoczęli, pod przewodnictwem prokurator generalnej stanu Nowy Jork, Letitii James, śledztwo w sprawie działań Facebooka. Niewykluczone, że oba śledztwa będą koordynowane.
      Po ogłoszeniu decyzji prokuratorów akcje konglomeratu Alphabet, którego Google jest najważniejszą częścią, spadły o 0,9%. Rzecznik prasowy Google'a poinformował, że firma otrzymała z Departamentu Sprawiedliwości prośbę o informację na temat swoich praktyk biznesowych. Spodziewamy się, że podobne pytania będą zadawali prokuratorzy, przyznał rzecznik.
      Śledztwo rozpoczęte przez poszczególne stany to kolejny problem dla obu koncernów, które już borykają się ze śledztwami federalnymi.
      W lipcu Federalna Komisja Handlu (FTC) zatwierdziła ugodę z Facebookiem w ramach której gigant ma zapłacić rekordowe 5 miliardów dolarów grzywny oraz wypełnić szereg zaleceń nałożonych przez FTC. serwis społecznościowy zapłacił też 100 milionów dolarów grzywny w ramach ugody z Komisją Giełd (SEC).
      Z kolei Departament Sprawiedliwości prowadzi własne śledztwo przeciwko Google'owi. Prokuratorzy generalni oświadczyli zaś, że ich śledztwo będzie prowadzone niezależnie od śledztw federalnych organów władzy.
      Dotychczas akcje podejmowane przez władze federalne przeciwko Facebookowi czy Google'owi niczego nie zmieniały. Firmy płaciły spore grzywny, które jednak stanowiły niewielką część ich rocznych przychodów.
      Śledztwo antymonopolowe prowadzone przez prokuratorów stanowych ma inną wagę, niż śledztwa ws. prywatności, które dotychczas prowadziły władze federalne. Jeśli bowiem okaże się, że Facebook czy Google naruszyły przepisy antymonopolowe, można im nakazać zmiany algorytmów na bardziej przyjazne dla konkurencji czy nawet doprowadzić do podziału firmy.
      Doug Peterson, prokurator generalny Nebraski, mówi, że będzie współpracował zarówno z Departamentem Sprawiedliwości, jak i z władzami innych krajów. Bardzo znaczący jest fakt, że śledztwa w tej sprawie są też prowadzone w Unii Europejskiej, Wielkiej Brytanii, Francji i Australii, stwierdza.
      Nie można też wykluczyć, że śledztwa przeciwko Google'owi i Facebookowi zostaną rozszerzone na Apple'a i Amazona.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Już około 350 pracowników Google'a podpisało się pod listem otwartym, w którym domagają się, by ich firma zaprzestała prac nad Project Dragonfly. To ocenzurowana wersja wyszukiwarki, która może zostać wdrożona w Chinach.
      O istnieniu projektu media poinformowały w sierpniu. Wówczas dyrektor wykonawczy Google'a, Sundar Pichai, stwierdził, że jego firma w najbliższym czasie nie będzie uruchamiała wyszukiwarki w Chinach. Nie wykluczył jednak, że stanie się to w przyszłości.
      Warto przypomnieć, że w 2010 roku Google wycofało się z Chin właśnie ze względu na cenzurę.
      Wielu z nas podjęło się pracy w Google'u mając na względzie wartości tej firmy, w tym jej poprzednie stanowisko wobec chińskiej cenzury i śledzenia internautów. Rozumieliśmy, że Google to firma, która przedkłada wartości nad zyski, napisali protestujący pracownicy. W naszym proteście przeciwko Dragonfly nie chodzi o Chiny. Sprzeciwiamy się technologiom, które pomagają silniejszym w prześladowaniu słabszych, gdziekolwiek by się to nie działo, czytamy w liście. Rząd Chin otwarcie wdraża nowe technologie nadzoru i śledzenia, by kontrolować swoich obywateli, dodają protestujący.
      Przez ostatnich osiem lat Google nie chciało pomagać w cenzurze. Firma nawet zminimalizowała zatrudnienie w Chinach. Jednak od kiedy rządzi w niej Pichai wydaje się, że stanowisko Google'a się zmienia. W grudniu w Pekinie otwarto centrum rozwojowe, a na chiński rynek trafiła aplikacja do zarządzania plikami, która oryginalnie została przygotowana na rynek indyjski.
      Chcę, byśmy dostarczali nasze usługi w każdym zakątku świata. Google jest dla każdego. Chcę, byśmy byli obecni w Chinach i służyli chińskim użytkownikom, mówił Pichai przed dwoma laty.
      Pracownicy Google'a coraz częściej protestują przeciwko polityce firmy. Przed kilkoma miesiącami ponad 3000 pracowników podpisało protest przeciwko angażowaniu się Google'a w rozwój wojskowych dronów, kilkanaście osób zrezygnowało z pracy. Google uległo pracownikom. W styczniu tysiące pracowników firmy wzięły udział w proteście, gdy wyszło na jaw, że w ostatnich latach kilku wysokich rangą menedżerów, którzy odeszli w związku z oskarżeniami o napastowanie seksualne pracowników, otrzymało wysokie odprawy.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Dwadzieścia największych europejskich agencji informacyjnych we wspólnym oświadczeniu oskarżyło Google'a i Facebooka o „plądrowanie” zawartości należących doń mediów i domaga się, by obie firmy w większym stopniu dzieliły się swoimi przychodami z mediami. Apel podpisali m.in. szefowie Agence France-Presse, Press Association i Deutsche Presse-Agentur. Wezwali oni też Parlament Europejski do uchwalenia przepisów, które zakończą tę „groteskową nierównowagę”.
      Plądrowanie zawartości mediów i ich wpływów reklamowych, jakiego dopuszczają się giganci internetu, zagraża zarówno konsumentom jak i demokracji, czytamy w oświadczeniu. Jeszcze w bieżącym miesiącu Parlament Europejski ma debatować nad prawem autorskim, które zmusi internetowych gigantów do dzielenia się większą części wpływów ze źródłami, z których pochodzą treści umieszczane na witrynach.
      Pierwsza wersja nowego prawa została w lipcu odrzucona. Zwalczały ją zarówno wielkie koncerny z USA, jak i obrońcy wolności internetu, którzy obawiają się, że nowe prawo zwiększy koszty dostępu.
      Szefowie europejskich agencji informacyjnych twierdzą w wydanym oświadczeniu, że Google czy Facebook mogą pozwolić sobie na płacenie mediom za ich treści bez przerzucania kosztów na klientów. Zauważają, że w ubiegłym roku przychody Facebooka wyniosły 40 miliardów USD, a zyski to 16 miliardów. W przypadku Google'a było to – odpowiednio – 110 miliardów i 12,7 miliarda. Czy w takiej sytuacji ktoś może argumentować, że firmy te nie są w stanie uczciwie płacić za treści, na których zarabiają? Mówimy tutaj o wprowadzeniu uczciwej opłaty dla tych, którzy na tych treściach zarabiają. Ze względu na wolność prasy i wartości demokratyczne prawodawcy w UE powinni dokonać reformy prawa autorskiego, stwierdzają autorzy apelu.
      Walka toczy się o dwa zapisy w nowym prawie autorskim. Artykuł 13 przewiduje, że takie serwisy jak YouTube byłyby odpowiedzialne prawnie za chronione prawem autorskim materiały, które są umieszczane na ich stronach bez wnoszenia opłat na rzecz właścicieli autorskich praw majątkowych. Zaś Artykuł 11 przewiduje, że Google i inne serwisy musiałyby wnosić opłaty za umieszczanie odnośników do treści w gazetach czy witrynach informacyjnych. Bez tego internetowi giganci, jak Google czy Facebook, bezpłatnie wykorzystują olbrzymią liczbę treści, które są tworzone przez innych wielkim nakładem środków, czytamy w oświadczeniu.
      Krytycy takiego pomysłu argumentują, że uchwalenie nowych przepisów prowadziłoby do automatycznej autocenzury i ograniczenia kreatywności, szczególnie w takich serwisach jak YouTube. Ponadto szybko zniknęłyby memy, gdyż ich twórcy nie sprawdzają, kto ma prawa do wykorzystywanej przez nich grafiki.

      « powrót do artykułu
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...