public static void iterateOverADirectoryWithoutPreloadingItsContentIntoMemory() {
        // ConcurrentModificationException is not thrown
        // we should not rely on the behaviour when one or more files are created during the execution
        try (DirectoryStream<Path> ds = Files.newDirectoryStream(Paths.get("/home/xander/test"))) {
            for (Path file : ds) {
                System.out.println(file.getFileName());
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

    }