• С чего начать учить Kotlin?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно рассмотреть 2 Котлина. Или два варианта использования.

    Первое - это разработка под Adroid. Тут как бы понятно. Если Google его поддерживает то его стоит
    изучать и использовать. Но это означает - связать свою жизнь с клепанием формочек в мобилах.

    Второе это Spring/Kotlin/Java/Groovy e.t.c. Стек современного ентерпрайза. Тут - я бы не был так уверен.
    Дело в том что Java технологии - в силу генезиса опирается на достаточно старый и консервативный стек.
    И почти все стектрейсы ошибок будут неизбежно содержать сущности мира Java (JDK). От этого не уйти.
    Это как С++ разработчик вынужден знасть ассемблер когда дело касается анализа крашей приложения
    и вопросов ABI. Короче "не отпускает мать-земля"! Сколько ни придумывай абстракций а как жахнет
    черный или синий экран - сиди и вспоминай назначения регистров и что в них функция положила.
    Из позитивных моментов. Kotlin очень часто хвалят за лаконичный синтаксис и null-safety. Но последние
    несколько лет java community взяло бешеный темп развития (иначе я это назвать не могу) и начинает
    вносить изменения в спеку языка. Records, Pattern matching все эти штуки сильно приближают
    Java к Scala и Kotlin и возможно через лет 5 матрица фич этих языков будет одинаковой по всем
    позициям. Просто будут по разному называться. Вместо какого-нибудь "оператора Элвиса" будет
    оператор "Джона Леннона". Вобщем стоит ли рваться в Котлин "любой ценой" - я не знаю.
    Ответ написан
    Комментировать
  • Как исправить ошибку SLF4J: Failed to load class?

    @zelan
    Кратко обо мне не получится.
    SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder":
    если slf4j не нужен, то эта ошибка не влияет на работу приложения по сути.

    Эксепшн вылетает по другой причине. Покажи конфиг hibernate'a.

    Caused by: org.hibernate.MappingException: Unable to load class [ entity.Article] declared in Hibernate configuration <mapping/> entry
    Caused by: java.lang.ClassNotFoundException: entity.Article

    Судя по стектейсу в конфиге гибернейта в секции mapping объявлен класс entity.Article, которого нет (по крайней мере ты его не приложил)

    по ошибке SLF4J:

    тут в принципе все понятно.
    смотри, удали из pom.xml

    <dependency>
            <groupId> org.apache.cassandra</groupId>
            <artifactId>cassandra-all</artifactId>
            <version>0.8.1</version>
    
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>log4j</groupId>
                    <artifactId>log4j</artifactId>
                </exclusion>
            </exclusions>
    
        </dependency>


    Я так понял ты вставил этот код скопировав с сайта slf4j, если да, то он тут не нужен.

    библиотека hibernate-core - использует slf4j для того чтобы можно было подрубить любой логгер (log4j, logback и другие) и тогда гибернейт писал бы в него свои сообщения.
    то что выскакивает это сообщение - это впринципе не ошибка. Просто для данного примера не установлен логгер. Если бы он был установлен то все было бы норм.

    Однако на сайте slf4j написано что добавления в pom.xml зависимости будет достаточно чтобы этой ошибки не было.


    <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-nop</artifactId>
            <version>1.7.13</version>
        </dependency>


    Если это не поможет, то надо просто подключить logback или log4j и сконфигурировать его. Как это сделать легко находится в нете.
    Ответ написан
  • Какие есть курсы по Python для знающих другие языки?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Если просто синтаксис узнать, то хватит https://learnxinyminutes.com/docs/ru-ru/python-ru/
    Ответ написан
    1 комментарий
  • Актуальна ли еще модель акторов ( AKKA, Vert.X) или можно обойтись средствами Spring 5/Spring Boot 2 + Kafka?

    Sputterspark
    @Sputterspark
    Каждый раз, когда читаю твои вопросы, сразу вспоминается поговорка "Слышал звон, да не знает, где он." Каждый раз в кучу оказываются смешаны несвязанные или слабосвязанные понятия и всё это обильно приправлено огульными сравнениями мягкого с тёплым.

    Конечно читал про реактивное программирование, как я понимаю, это когда клиент посылает request, его принимают, клиент продолжает заниматься другими своими делами, через некоторое время клиенту приходит response.

    Ты даже близко не понял сути.

    Реактивное программирование - это парадигма программирования, ориентированная на потоки данных и распространение изменений.
    Модель акторов - это парадигма программирования, хорошо подходящая для разработки конкурентных и распределённых систем.

    Они между собой даже не связаны. Можно разработать реактивную программу не использующую акторы. Можно разработать не реактивную программу на акторах. И конечно же можно разработать реактивную программу на акторах.

    актуальна ли еще AKKA

    Да, актуальна.

    Vert.X ( я так понимаю что это конкурент AKKA который вдобавок хорошо интегрирован с Hazelcast) ?

    Vert.X - не конкурент Akka. Они вообще разного поля ягоды. Vert.X - это очередной асинхронный фреймворк. Если сравнивать, то самый близкий аналог - Spring WebFlux.

    То есть когда мне вот прямо необходимо ее использовать и скажем реактивные средства Spring 5/Spring Boot 2, Kafka или RabbitMQ вообще не вариант?

    Вот как начнёшь различать разработку web-приложений и распределённых систем, так можно будет и подумать об Akka.
    Ответ написан
    8 комментариев
  • Что такое замыкание?

    iCoderXXI
    @iCoderXXI
    React.JS/FrontEnd engineer
    В целом ты все верно понял. Почитал я тут ответы, термины, термины, термины...

    Я люблю простые объяснения, буквально на пальцах.

    Вот ты вызвал функцию, в ней создаются переменные локальной области видимости, т.е. доступные только самой функции. Под эти переменные движок JavaScript выделяет память.

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

    В случае с замыканием, ты возвращаешь функцию обратно, т.е. ссылки остаются, поэтому движок не может освободить память, и переменные остаются доступными функции, и более никому. Поэтому эта штука и называется замыкание, т.к. переменные замкнуты на саму функцию.

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

    Один из основных паттернов, для которых применяются замыкания - ограничение доступа к данным, их изоляция (ограничение их области видимости).

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

    В ответах есть пример со счетчиком, который наглядно демонстрирует этот принцип.
    Ответ написан
    2 комментария
  • Как определиться с "веткой развития" в программировании?

    alexgp13
    @alexgp13
    Руководитель ИТ-проектов
    Программирование это инструмент. Изучать надо начинать с основ и, желательно, с реальной задачи.
    Почитайте книги про алгоритмы, придумайте себе задачу (можно поискать списки задач по программированию) и начните ее реализовывать, например,на Java - с этого языка потом легче переучиться на другие. А там уже самому легче будет ответить на вопрос в какую сторону развиваться.
    Ответ написан
    Комментировать
  • Где брать задачи при обучении JavaScript?

    @mkone112
    Начинающий питонист.
    Я знаю что множество людей со мной не согласится. Но, я пробовал читать learnjs в 12 году, и тогда я решил что это не учебник, а полная хе*ня. Вернулся к нему уже будучи питонистом, после Лутца, и снова убедился что лучше не стало. А вот Фленаган - вещь. По аналогии с Лутцом - при наличии мозга - достаточно только учебника.
    Ответ написан
    9 комментариев
  • Java или Node.js - что выбрать для новой работы?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Открываешь hh.ru сравниваешь количество вакансий и зарплаты.
    Ответ написан
    4 комментария
  • С чего начать обучение ребенка 10 лет спортивному программированию?

    оставь ребенка в покое, нефиг собственные комплексы реализовывать.
    Ответ написан
    Комментировать
  • В каком возрасте лучше начинать втягивать своего ребёнка в IT-индустрию/программирование?

    @keeprocking
    п.с. пока ты думаешь как научить ребенка программированию пораньше, реально умные пацаны наоборот ограждают своих детей от технологии - https://www.entrepreneur.com/article/303657. Подумай об этом.

    И отдай ребенка на спорт! И не губи его здоровье компьютером. Оно еще в школе будет нагибаться ой как.

    Хочешь подготовить ребенка к программированию? Учи с ним английский язык с детства. Языки детки хорошо воспринимают как раз пока маленькие.
    Ответ написан
    6 комментариев
  • Какой путь изучения математики оптимальный для взрослого человека?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Для взрослого - не подскажу.
    Для всех остальных:
    Изначально математика мне нужна для изучения программирования
    нужно изучать основы логики.
    Ответ написан
    Комментировать
  • Почему не работает ${pageContext.request.contextPath}?

    @P_Alexander Автор вопроса
    First head
    Вот я дал....))) Забыл в web.xml шапку добавить)))
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
             version="3.1">
    Ответ написан
    Комментировать
  • Закончить ВУЗ по направлению "Разработка программного обеспечения" в 27 лет - это поздно?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Всем на Вас плевать: ваша жизнь - это только ваша.
    Если что-то возможно и Вы этого хотите, то делайте и ни на кого не смотрите и не слушайте.

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

    Надеюсь, понятно объяснил...
    Ответ написан
    Комментировать
  • На что сменить информационную нагрузку?

    sarapinit
    @sarapinit
    Точу водой камень
    Если вы считаете, что у вас избыток информации, то нужно искать отдых в деятельности с дефицитом информации.
    Спорт на самом деле неплохо помогает отключить мозг. Медитация помогает. Социальные танцы. Общение с людьми. Любая деятельность которая позволит перейти из сфокусированного режима работы мозга в рассеянный.5dd54dc9a9f62686811446.jpeg5dd54dd36b22f327386494.jpeg
    Ответ написан
    Комментировать
  • Кто то читает журнал Хакер?

    Zoominger
    @Zoominger Куратор тега IT-образование
    System Integrator
    Читал ещё на бумаге.
    Журнал для кидди-скриптеров, абсолютно не рекомендую для углублений. Какие-то невнятные воспоминания о будущем, громкие названия над унылыми статьями, всё такое хаккирско-стереотипное в оформлении, короче, чисто над одноклассниками возвыситься.
    Ответ написан
    1 комментарий
  • Как изучить php и 1с Битрикс?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Тема из серии: работаю уборщиком, у нас поликлиника. У нас постоянные проблемы с больными, по этому компания предложила проспонсировать мое обучение...
    Это потеря времени.
    Ответ написан
    5 комментариев
  • Как не одичать фрилансеру?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    5d5e72a9c08cd316037825.jpeg
    Ответ написан
    Комментировать
  • Смена профессии IT Service Manager > ???

    alexyarik
    @alexyarik
    Битрикс разработчик
    1. Мне 30 лет
    - вполне нормальный возраст, при наличии мотивирующей идеи можно достичь результатов. Но следует учитывать, что срок выхода на более менее уровень специалиста 1.5-2 года.
    2. Работаю ИТ сервис-менеджером в нефтехимическом Холдинге.
    - Не дергайтесь работайте пока не подтянете навыки и не пройдёте собеседование.
    3. Желаю сменить род деятельности.
    - Я не увидел в вашем вопросе, а что собственно вы сделали для подготовки к смене деятельности?
    В последнее время проявляю интерес к программированию
    - что побудило?
    Данное направление интересно для меня
    - там направлений вагон, какие вакансии вы рассматривали на рынке, под какие требования готовитесь?
    Но что касается смены профессии, то не совсем понятно, как это осуществить
    - а какую специальность вы выбрали? Вам нужно проанализировать рынок и выбрать специализацию, которая нравится. Начать готовиться, походить на собеседования.
    это будут небольшие деньги
    - так и будет ближайших года два после смены деятельности.
    нереально прокормить семью (а еще и ипотека) - я бы с ипотекой не стал стартовать сейчас. У вас должна быть хорошая финансовая подушка безопасности на период смены деятельности.
    Мои советы:
    1) Выбрать специализацию, собрать среднестатистические требования в вакансиях этой специализации - учиться и готовиться
    2) Походить на собеседования - с учётом собеседований скорректировать свою подготовку.
    3) Получить сертификаты при возможности
    4) Пройти онлайн курсы, начать можно с бесплатных
    5) Пройти онлайн тестирование
    6) Для себя выполнять для обучения проекты и задачи с заявок на фриланс биржах
    7) Если с подушкой безопасности туго, начать дополнительно работать на фрилансе в вечернее время и на выходных.
    Ответ написан
    Комментировать