Das sind Leute, die vor allem arge Defizite im Bereich Biologie und Statistik haben, und darüber hinaus über zu viel Selbstvertrauen verfügen.

Aber solange die nicht bereit sind, sich wenigstens mit statistischen Grundlagen oder wenigstens Prozentrechnung auseinander zu setzen, kommt man an die in ihrer Echokammer überhaupt nicht ran.

In der Grundschule lernt jeder, was "größer als" und was "kleiner als" bedeutet. Aber diese Leute können nicht verstehen, dass z. B. bei Pocken heute 0 Tote weniger sind, als früher 30000 Tote pro Jahr, und zwar auch WENN das bedeutet, dass es verhältnismäßig wenige Impfnebenwirkungen gibt.

Apropos "Verhältnismäßig": Impfgegner wissen anscheinend auch nicht, was das bedeutet. Bei denen gibt es nur die Extreme von 0 oder 100, aber dazwischen gibts nichts.

Von den ganz Schlimmen, die erzählen, dass es keine Beweise für Masernviren gibt, und es sich um eine psychisch bedingte Hautkrankheit handelt, wollen wir gar nicht erst reden.

Mit Impfgegnern kann man eigentlich nur umgehen, wie mit Alkoholikern, Drogenabhängigen und Sektenmitgliedern: Helfen müssen sich die Betroffenen selbst. Von außen kann man die eigentlich nicht "retten".

...zur Antwort

Das geht (mit Einschränkungen) mit jedem guten Synthesizer, aber ein wirklich guter Synthesizer kostet auch entsprechend viel Geld.

Es ist aber schwierig bis unmöglich ein Instrument A mit einem Instrument B zu imitieren, und es wird dabei immer Leute geben, die etwas zum Meckern finden. :)

...zur Antwort

Das lustige ist, dass solche Ideen nur naive Laien, Scifi-Autoren oder Gauner mit Hintergedanken haben.

Aber jeder ITler, der wirklich in der Materie drin steckt, und ein paar Jahre Berufserfahrung hat, der weiß auch, dass die Informatik in einer ganz tiefen Krise aus Pfusch, Schlamperei, Buzzwords und Marketing-Geblubber steckt.

Guck dir doch bitte mal weltweit die Katastrophe mit den Wahlcomputern an, um beim Thema zu bleiben. Mehr muss man dazu eigentlich nicht sagen.

Allerdings solltest du hellhörig werden, wenn dir jemand irgendwas mit "Cyber-Irgendwas", "Blockchain", "Cloud", "Machine Learning", "Künstlicher Intelligenz", "Smart-Dingsbums", oder ähnlichem Müll erzählt.

Dazu sehr passend: https://xkcd.com/2030/

Merk dir also: Egal was lackierte BWLer dir in schicken Anzügen erzählen, die IT steckt in einem Teufelskreis. Wirklich fähige Software-Entwickler werden immer seltener und der größte Teil an heutzutage vorhandener Software ist ein riesen Haufen Müll.

Inzwischen traue ich mich gar nicht mehr zu erwähnen, dass ich Software-Entwickler bin ... echt peinlich was in der Branche abgeht.

Ich glaube, irgendwann schule ich mal auf Friedhofsgärtner um, und überlasse den Weltuntergang den jungen Startups mit ihrem zusammengeklickten JS-GUIs, die auf gefühlt hundert Layern API aufbauen, Millionen von Abhängigkeiten haben, saulangsam reagieren, aber heyyyyyy ... ist halt modern.

Tu mir bitte einen Gefallen, und erwähne nie wieder die Begriffe "Regierung" und "Computer" in einem Satz. So etwas macht man nicht. Das gehört sich einfach nicht. ;)

...zur Antwort

Wenn ich mich recht erinnere, hattest du zu dem selben Thema vor einer Weile hier schon mal fast die selbe Frage gestellt.

Damals hat man dir geantwortet, dass es technisch nicht möglich ist, weil der Anker-Teil gar nicht zum Server übertragen wird.

Und das, was vor ein paar Wochen galt, gilt heute immer noch: Es ist technisch immer noch nicht möglich, und vermutlich in den nächsten Jahren auch nicht, es sei denn der HTTP-Standard wird kurzfristig geändert oder erneuert, aber darauf kannste lange warten. :)

Ein Anker existiert NUR lokal in deinem Browser. Mit JS kannst du damit rumspielen, aber mehr auch nicht. Bevor ein Request an einen Server geschickt wird, schneidet der Browser den Anker-Teil sowieso ab.

Versteh das doch bitte endlich! ;)

Die einzige Möglichkeit wäre, dass du den Anker-Teil irgendwo anders noch zusätzlich in den Query-String einbaust, oder gleich per POST sendest. Anders geht es nicht!

...zur Antwort

Kommt drauf an, was genau du unter "Hacking" verstehst, und was du tun willst.

Aber gerade Python und ein Assembler-Dialekt gängiger Plattformen (vorzugsweise x86, x86-64 oder ARM) sind schon mal ein sehr guter Anfang.

Python kannste dafür nutzen, alles mögliche zu automatisieren und fast alle großen Debugger haben irgendeine Form von Python Schnittstelle, sodass du dir damit die mächtigst-möglichen Werkzeuge zusammen bauen kannst.

Assembler-Kenntnisse sind in dem Falle natürlich unbedingt nötig, da der Debugger ja ohne Debugging-Symbole in den von dir untersuchten Binaries nur auf CPU-Instruktionsebene arbeiten kann ... was aber völlig normal und alltäglich für einen Hacker ist, der sich auf diesem Gebiet beschäftigt.

Wenn du aber Webkram unter Hacking verstehst, dann bringt der Python und Assembler nicht viel, und du solltest dich viel mehr mit HTML, JS, CSS und evtl. serverseitiger Programmierung befassen.

Aber alles in allem ist "Hacking" so ein grober Begriff für so ein extrem umfangreiches Gebiet, dass man da jetzt erst mal nicht mehr zu sagen kann.

Aber ... programmieren können solltest du auf jeden Fall. Und zwar nicht nur in einer Programmiersprache.

Ach so, und völlig unabhängig von dem Hacking-Teilgebiet, für das du dich mal interessieren wirst, solltest du unbedingt den Umgang mit einer Shell lernen. Idealerweise irgendwas aus dem Unixumfeld. Bash wäre z. B. Standard. Dazu kommen dann noch die ganzen Werkzeuge, gerade wenn du Binaries analysieren willst: ldd, nm, readelf, strace, ltrace, file, iconv, strings, objdump, gdb, usw.

Und um deren Ausgaben sinnvoll auswerten zu können, brauchst du grep, sed, awk, less, etc.

Also mach unbedingt mit Python weiter! Damit kannst du sehr schnell sehr wertvolle Helferlein zusammenpfuschen. Darüber hinaus lerne, wie man mit einer Shell umgeht, wie man Shellskripte schreibt, und wie die Coreutils, Binutils oder generell Utilities funktionieren.

Hacking (von Skript-Kiddie-Gedöns mal völlig abgesehen) ist eine große Kunst und erfordert viel Lernbereitschaft und viel Lesevermögen, auch auf Englisch. Teilweise wird die Lernkurve sehr steil sein, aber da musst du dich durchkämpfen.

...zur Antwort

Du könntest deinen String in Kleinbuchstaben umwandeln (strtolower) den Text an allen Leer- und Trennzeichen aufspalten, und die Levenshtein-Distanz der einzelnen Teilstrings zu den Einträgen in deiner Schimpfwortliste berechnen.

Damit würdest du dann auch Dinge wie "s*x" o. ä. filtern können.

Beispiel:

<?php

define('WORDS', 'test lol sex');
define('TEXT', 'Das ist ein sexy T*st für Rechtsexperten und Linksextremisten.');

$words = explode(' ', WORDS);
$text = preg_split('/[\s.,!?]+/', strtolower(TEXT));

print_r($words);
print_r($text);

$found = array();
foreach ($text as $t) {
  if (empty($t)) {
    continue;
  }

  foreach ($words as $w) {
    $dist = levenshtein($t, $w);

    if ($dist <= intval(strlen($t) / 4)) {
      $found[] = $t;
    }

    echo $t . ' + ' . $w . ' = ' . $dist . "\n";
  }

  echo "\n";
}

echo "FOUND:\n";
foreach ($found as $f) {
  echo $f . "\n";
}

Das liefert am Ende folgende Ausgabe:

FOUND:
sexy
t*st

Wie du das jetzt letztendlich genau nutzen willst, bleibt dir überlassen. Ich würde z. B. noch die Prüfung des Werts von "strlen($t) / 4" anpassen. Ich hab mir das jetzt nur nach Gutdünken aus den Fingern gesogen ... aber da gibts bestimmt noch weit optimalere Werte. :)

Naja, egal, ist nur so eine Idee ... :)

...zur Antwort

Das hat nicht direkt etwas mit deiner Frage zu tun, aber wenn du nur den Typ einer Datei ausgeben willst, dann reicht das hier:

stat -c %F foo.txt
...zur Antwort

Bei VisualBasic wirst du davon nichts merken, da deine VB-Programme sowieso auf dicken fetten Rechnern laufen werden, die über genügend RAM verfügen.

Bei C und C++ hingegen sieht die Sache anders aus, aber auch dabei lohnt die Mühe nur, wenn du Mikrocontroller oder eingebettete Systeme programmierst.

Auf einem Desktop-System wirst du aber auch bei C / C++ keinen Vorteil haben, es sei denn, du programmierst etwas rekursives. Dann kann es tatsächlich sein, dass du mit beim Einsatz von uint8_t (aka 1 Byte) acht mal mehr Durchläufe hinbekommst, als mit size_t (aka 8 Byte), bevor dir dein Programm abschmiert. :)

Aber dabei auch nur dann, wenn du an den Compiler-Flags rumspielst, denn normalerweise haben Stackframes ein Alignment von 16 Byte v. a. wegen Gleitpunktoperationen.

...zur Antwort