Как стать автором
Обновить
15
0
 Владислав Федотов @INlHELL

Java Software Developer

Отправить сообщение
О интересно, вы о таких говорите?
Что будет напечатано в консоль? (jre-1.8.0_181)?
long count = IntStream
                .range(1, 5)
                .peek(System.out::print)
                .count();
        System.out.print(count);


Что будет напечатано в консоль? (jre-10.0.2)
public class Main {
    public static void main(String[] args) {
        long count = IntStream
                .range(1, 5)
                .peek(System.out::print)
                .map(it -> it - 1)
                .count();
        System.out.print(count);
    }
}
К моему удивлению, но та же доставка СДЭК или PickPoint стоит в несколько раз дешевле, про удобство получения отправлений таким образом и говорить не стоит.
Очень круто, что издательство «ДМК Пресс» переводит такие книги, особенно отрадно, что это происходит быстро и качественно. Данную книгу заказал в первый же день после ее анонса на сайте издательства, я хоть и читал оригинал на английском, с удовольствием перечитаю на родном языке.

P.S. Для «ДМК Пресс», сделайте доставку чем-то кроме «Почты России», стоимость доставки в половину стоимости книги — это перебор, плюс доставка, иногда происходит в течении двух-трех недель (это в Петербург). Пару раз упаковка отправлений была порвана и книги внутри размокли.
Точно! Спасибо, всё время забываю, никак я их не ассоциирую, как одну компанию.
Евгений, прошу меня извинить, за излишнюю резкость моего комментария, ваши доклады на джокерах всегда были одними из самых интересных, тот же «Спринг Потрошитель» и «Spring Data? Да, та!» я пересматривал по многу раз, настолько данные доклады насыщены интересной информацией. Вы обладаете редким умением, просто, емко и доступно доносить до слушателей сложную информацию. Я лишь хотел сказать, что в этот раз тренинг не был таким: «Вау круто, сколько всего я узнал всего лишь за два дня!», как это было с тренингом по Spring, Groovy или Паттернам.

Про время, не хочу быть занудствовать, но прошлые тренинги были с 10 до 19, т.е. ровно восемь часов, пожалуйста поправьте меня если я заблуждаюсь.

Про практику, практика крайне важна и это ещё одна причина, по которой я всем рекомендовал и буду рекомендовать вас, как тренера, но в этот раз, особенно во второй день была какая то «просадка» в материале, так как я, да и многие люди меня окружающие, от безысходности гуглили решение той или иной задачи. Тут ещё стоит вспомнить о «красноречивости» документации кода в Spark'е (хотя я может не туда смотрел). Также замечу, что сами по себе задачи были простые (примерно всё тоже я делал при помощи Hadoop и MapReduce), но то ли информации на слайдах не хватало, то ли примеров.

Про отзыв и комментарий лично, я не хотел, чтобы мой комментарий выглядел этаким пасквилем, я лишь одним отзывом хотел изложить, как лично для меня прошла конференция и тренинг, который также был к ней приурочен. Понимание того, что тренинг прошел с шероховатостями пришло ко мне после, когда мы, сразу после него, начали обсуждать его с участниками (вы к сожалению уехали очень внезапно). Да наверное стоило написать вам на почту или в linkedin, а не выносить своё мнение на публику.
Спасибо, за ответ, целью моего комментария было, указать на некоторые проблемы и недочеты, так как в целом, повторюсь конференция оставила очень хорошее впечатление.

Про место проведения, я так и подумал, такая уйма людей не поместилась бы в гостинице ParkInn, кстати, есть ли информация о количестве участников?

Пользуясь случаем, хотел спросить, хотя возможно вопрос не совсем по адресу, почему не представлены такие компании, как Mail.ru и Yandex, вроде и у той и у другой есть много направлений Java разработки?

Что случилось с тренингом по Scala, по прежнему хочу в нем поучаствовать, как и некоторые мои коллеги?

И ещё вспомнил интересный момент касательно конференции, в некоторых залах, было очень странное освещение, спикера конечно было хорошо видно, но боковое освещение софитов выжигало сетчатку глаза первым рядам.
В первую очередь, хочется поблагодарить организаторов (в особенности 23derevo) за их самоотверженность и практическое бескорыстное стремление собрать Java сообщество на крутой конференции. Не представляю скольких усилий это стоит и сколько времени это занимает. Это был уже четвертый Джокер на котором я побывал (плюс один JPoint и бессчетное количество JUG'ов).

Теперь хочу рассказать о плюсах и минус проведения конфы в этом году, начну немного из далека, а именно с тренинга по Spark'у от Евгения Борисова. Четвертый раз был на тренинге, в этот раз почему тренинг длился по пять часов каждый день, вместо восьми (если память мне не изменяет), в первый день Евгений начал очень бодро, иллюстрировал всё презентацией, которую показывал на субботнике в Яндексе. Очень быстро презентация закончилась и тут я думал начнется самое интересное — практика. Практика, это за что я любил тренинги Евгения, огромное количество задач, от написания своего BeanPostProcessor'а до Spring'а в миниатюре, но в этот раз был за два дня тренинга было всего четыре (4) практических задания, при чем практически без объяснения и примеров, вида: нужно собрать вот это и это из файла, вперёд, из за этого приходилось много времени тратить на изучение развесистого API Spark'а (кто видел functions тот меня поймет). По этой причине впечатление о тренинге у многих участников и у меня в том числе сложилось резко негативное. Жаль отменился доклад по Scala.

Про саму конференцию, очень огорчил выбор места проведения (кто был в Питере, это примерно ещё 15-20 минут от аэропорта на юг от города), наверное для гостей, даже удобнее, но мне из центра города добираться до ЭкспоФорума пришлось примерно полтора часа, поэтому я сказал «пока» кейнотам и решил ехать хотя бы к 11 часам. Первый день открывал, Андрей Паньгин с крутецким докладом про «тормозящую» Java, потом должен был быть доклад Антона Архипова, который сорвался по тех. причинам. Дальше жег напалмом Тагир Валеев (номинация «открытие года»), очень интересный доклад, всем советую. После чего был обед, ну что сказать, при всем уважении… но кушать хочется всегда, огромные очереди, отсутствие какого либо выбора в еде, в итоге после 20 минут в очереди ем пересоленную костлявую рыбу заедая майонезным салатом и всё это стоя (хотя программистам наверное полезно), из колонки орал «Разбор Полетов», которые что там обсуждали… Последний доклад в этот день был от Ильи Сергеева, ну что сказать… надеюсь кому то понравилось. После чего пришлось отбыть домой, так как опять же дорога полтора часа..., а завтра ещё один день конференции.

Второй день, в глазах рябило от стендов компаний (издательство Питер продолжало дурить народ продавая книги по ценам от издательства...), в этот раз было много интересных и крутых стенов и много «новых» компаний, особенно понравилось общение с Zalando, Фабрикой Лояльности и СберТехом плюсы вам в карму! У Дойче Банка, взять задание не получилось не было проги для считывания QR кода ))). Потом был фееричный доклад Шипилева, ну в целом, как всегда, самый крутой спикер по прежнему в «желтой майке» (точнее красной толстовки) лидера, доклад уже пересмотрел ещё раз, очень познавательный и интересный! После Шипилева я решил расслабить извилины мозга и пошел на доклад про Bytecode от Антона Архипова, очень хороший и стройный доклад, особенно полезен для начинающих знакомство с кишочками. Далее был доклад про Vert.x, кошмар кошмарный, ушел с него через 15 минут, попал на доклад «Java libraries you can't afford to miss», оказалось интересно, узнал про пару новых библиотек, которые можно увязать с Spring Data REST и RxJava. Последним был доклад «Введение в распределенные системы для очень занятого джависта», пошел на него, чтобы посмотреть на ведущего подкаста «Разбор Полетов», доклад был очень сбивчивый и уровня так второго курса тех. специальности, молодежи и подросткам нравилось.

В целом конференция оставила сугубо приятное впечатление, встретил много знакомых, пообщался с большим количеством умных и интересных людей, но раздражающих недостатков в этом году было больше (особенно хочется отметить дизайнера карты залов, использовать одинаковые оттенки для обозначения залов, это «отличная» идея).
Продолжу, немного в шизофренической манере, также, в выше указанном примере, в последней строчке кода может быть брошен NullPointerException. То есть, если даже в цикле while мы «увидим», что ссылка на instance не null, JMM не гарантирует нам, что уже в следующей строке мы не прочитаем null. Эти два чтения независимы, а ссылка была опубликована в другом потоке, подробнее можно прочитать, про такой случай по ссылке (спасибо Шипилёву, который пишет такие замечательные статьи) или краткая цитата для ленивых:
JMM says we can, because the execution producing this outcome does not violate the memory model requirements. Informally, we can say that a decision on what a particular read can observe is made for each read in isolation. Since both reads are racy
Перечитывал топик и нашел ошибку в одном из примеров про описание семантики ключевого слова final, в примере указанном ниже, программа гарантированно напечатает — "[1, 2]" (если остановится), это связанно с тем, что ссылка на объект опубликована безопасно (Safe Pulication) и JLS говорит нам следующее:
Объект считается полностью инициализированным, когда завершается его конструктор. Поток, который может видеть ссылку на объект только после его инициализации, гарантированно видит корректно инициализированные значения final-полей этого объекта.
То есть, «выход» из конструктора приводит к «замораживанию» (freeze action) нашего массива и другой поток всегда будет «видеть» правильно инициализированное final поле. Вот если добавить в конструктор
instance = this;
тогда пример «заиграет» новыми красками, так как ссылка на конструируемый объект «утечёт» (leak), в таком случае другой поток сможет «увидеть» любое промежуточное состояние массива: null или [1, 0].

public class App {
    final int[] data;
    public App() {
        this.data = new int[]{1, 0};
        this.data[1] = 2;
    }

    static App instance;
    public static void main(String[] args) {
        new Thread(new Runnable() {
            public void run() {
                instance = new App();
            }
        }).start();

        while (instance == null) {/*NOP*/}
        System.out.println(Arrays.toString(instance.data));
    }
}
Пост интересный, были как раз интересны use-cases использования всей этой техники. На этих выходных решил приобрести напольные весы (которые 740S) и сразу разочарование, около часа пытался подключиться со своего Nexus (Nexus 5, Android 6.0) к данному чудо изделью, в итоге все мои попытки не увенчались успехом. С горем пополам подключился с iPad'а, весы стали передавать данные, но почему то сами весы на дисплее стали показывать вес в фунтах. Также было бы интересно почитать, каким таким, волшебным образом определяются измеряемые показатели, такие как — количество воды и жировой ткани?

Ещё очень интересно, как продукты будут лежать в мультиварке по несколько часов и не портиться в ожидании пока я вечером не запущу удалённо процесс готовки.
Замечательно, что весь материал по этому курсу появился в свободном доступе (несмотря на то, что год назад я заплатил за него 375$). Темы в курсе рассмотрены очень «горячие», огорчает лишь качество аудио потока, иногда, с большим трудом удаётся разобрать слова.
Будут ли выложены исходники примеров, которые были рассмотрены на лекциях?
Согласен, особенно объём материала хорошо виден по книгам по подготовке к сертификации OCAJ, там и базы данных и потоки, регулярные выражения, взаимодействия с сетью и т.д. и т.п.
Не так давно наткнулся вот на эти курсы academy.javacodegeeks.com/courses/all/ от создателей javacodegeeks, вполне себе интересные, по крайне мере лучше чем на udemy и hexlet.
Два дня назад получил эту книгу, изложение материала и перервод достаточно хороши, для начального знакомства с Java EE подойдет, если имеете представление, что такое application server и слышали про многоуровневые приложения, а также про ORM, DI и т.п. (слишком большое колличество смежных технологий и фреймворков, одной книги не хватило бы для описания каждой из них в отдельности).

Это вторая книжка на русском языке по данной тематике, рекомендую также прочесть вот эту книгу.

В целом — рекомендую.
Лекция была просто замечательная, хотелось узнать подробнее о различных протоколах работы кэшей.
Особенно радуют домашние задания, которые не терпится начать.
В целом, это самое лучшее что я видел по многопоточности и параллелизме на русском языке.
На hexlet смотрел второй уровень (посмотрел первые четыре лекции), лектор постоянно путается, перескакивает с одной темы на другую, в течении лекции, переодически ошибается, падает IDE и т.п. Смотреть крайне тяжело, но надо отдать должное, лекции бесплатные, имеется также форум, из которого можно узнать больше, чем из самой лекции.
Полностью поддерживаю, предыдущего комментатора, подача информации очень хороша, но не хватает того, что есть у Hexlet University (Проект Рахима Давлеткалиева), то есть хорошей упорядоченности материала и структурированности. За указанную сумму хотелось бы иметь:
— лекции в хорошем качестве (то есть хорошее качество звука, нормальное освещение, трансляция экрана во время демонстрации исходного кода);
— деление лекций на более короткие логические блоки (так как это сделано в курсах на coursera.org);
— форум для обсуждения лекций, домашних заданий и т.п.
— какое-либо описание лекции с основными рассматриваемыми темами.

Так как материал курса довольно сложен, то и обучение должно проходить по определенное цепочке:
посмотрел лекцию -> задал вопросы лектору -> обсудил с другими слушателями -> сделал домашнюю работу -> получил фидбек (промежуточные тесты для проверки изученного материала, также приветствуется). Итоговый крупный проект думаю, также поможет закрепить материал.

Система поощрений и мотивации: бейджи, ачивки, балловая система, скидки на будущие курсы, сертификаты с публикацией на linkedin.

После прохождения курса, необходима возможность просматривать лекции и доступ к сделанным проектам с комментариями лектора.
Конечно думал, вообще я готов переехать куда угодно.

Первое на что я обращаю внимание, это каким образом выдаются визы в конкретной стране: Украина, Белоруссия, Россия — визы не нужны; некоторые европейские страны: Германия, Голландия — можно получить голубую карту, вместе с ней разрешение на работу; все остальные страны — США, Канада, Австралия и т.д.: рабочую постоянную визу получить довольно проблематично.

Второе, это семья. После переезда в Германию, я женился на девушке из России и моя жена, также хочет работать и заниматься своей карьерой (все-таки 12 лет художественного образования + несколько лет работы). По профессии она графический дизайнер и ей в отличии от меня, даже имея разрешение на работу, сложно найти нормальную компания, которая согласилась взять ее на работу (все три с лишним года она перебивается временными работами и проектами на фрилансе).

По поводу языка, небольшая ремарка, проблемы в общении у меня нету, но на днях произошел вот такой казус, который поможет вам понять, с какого рода проблема я сталкиваюсь:

по приезду в Берлин в 2009 году я решил купить себе телефон, мне посоветовали сразу купить его у оператора с контрактом, 40 евро в месяц на два года, при первом платеже в 50 евро. Обещали безлимитный интернет со скоростью до 10 Мбит/с (оказалось только 200 МБ при скорости около 512 Кбит/с после чего скорость падала до 64 Кбит/с), 2 часа включенного времени в месяц (мне было невдомек, что звонить мне будет особо некому) и 200 смс (послал за все три с лишним года штук 10), все это в месяц. По прошествия года я обнаружил, что платить я начал 50 евро в месяц, тариф был изменен оператором. Через два года и два месяца, я обнаружил (телефон к тому времени лежал дома я им не пользовался), что деньги с меня продолжают списывать. Оказалось, чтобы расторгнуть договор нужно прислать уведомление о расторжении за три месяца, иначе договор продляется автоматически. Составил письмо, отправил, представьте мое удивление, когда я обнаружил, что и на третий год, деньги с меня продолжают списываться, найти в службе поддержки англоговорящего служащего я так и не смог, так и плачу не понимая за что и как переломить данную ситуация. В итоге за 3 с половиной года, я потратил около 2000 евро, при стоимости телефона на момент заключения договора 400 евро и продолжаю платить по 2000 т.р. каждый месяц.

Подобная ситуация была у меня также, с фитнес центром и интернетом, к слову сказать, договор на телефон, напечатан на 24 листах мелким шрифтом. Представьте на каком уровне должно быть знание языка, чтобы понять весь договор, объяснить службе поддержки вашу проблему и добиться ее решения.
Да, пожалуй, хотя есть те же био продукты, которые на вкус такие же безвкусные. Но в России с этим было как то проще, есть фермерскии рынки, которые продают каждый день свежую продукцию, в Герамнии я таких не видел.

И все таки, я хочу переехать, не только из за продуктов, это довольно комплексный вопрос. Количество проблем и неудобств связанных с работой, жизнью и общением с другими людьми, привысило количество бенефитов получаемых от жизни в другой стране.
Пробовал, приносил овощной суп из дома, коллеги через два месяца принесли мне коллектвную петицию, с просьбой питаться на улице, так как запах супа (хотя как может пахнуть овощной суп, я полагаю вы представляете) им не нравится, по этой же причине ранее убрали микроволновую печь. Такие дела.

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность