• Каковы Возрастные ограничения в программировании?

    hronik87
    @hronik87
    Обитаю в 1С-Bitrix
    Раз в день стабильно появляется похожий вопрос. Мне 28, год назад ничего не знал ни о HTML, ни о CSS, ни о JavaScript, ни о PHP. Сегодня работаю в хорошей компании, верстка у меня на твердую 4, JavaScript на 3+(библиотека JQuery в основном, но могу и на чистом написать что-нибудь полезное), PHP начал осваивать месяц назад, но уже есть довольно неплохие результаты. Было ли мне сложно в самом начале? Да! Я не знал ничего об этой сфере. Спал по 4 часа в сутки прямо возле компьютера, шаблон разрывало и я начал уже вслух разговаривать с собой. У меня не стояло выбора поучить сегодня или нет. У меня стоял выбор пойти поссать и дальше учить или все же потерпеть, а потом уже сходить когда невмоготу будет. И я сейчас в той сфере которая мне нравится, я постоянно учусь и я не остановлюсь. Так что если ты уверен, что это твое, то любыми правдами и неправдами учи, старайся, вникай. И все получится)
    Ответ написан
    14 комментариев
  • Как вычислять сложность алгоритмов?

    @protven
    Предположим, что есть число N, которое равно 1 000 000.Во сколько раз алгоритм с показателем N log N будет быстрее алгоритма с показателем N^2?

    Ответ, в 50 000.
    Почему?

    Потому что 1000 000 ^2 / (1000000 * log 1000000) ~ 50000
    ВНЕЗАПНО!
    Ответ написан
    Комментировать
  • Какова сумму цифр в факториале числа 337?

    factorial = lambda n: (n == 0 and 1) or factorial(n - 1) * n
    sum(int(i) for i in str(factorial(337)))    # => 2817
    Ответ написан
    Комментировать
  • Второе высшее тех.образование, стоит ли?

    @Mintormo
    Только если ради диплома. Знаний не получите никаких. Разве что по математике и физике.
    Ответ написан
    Комментировать
  • Популярный сервис без/с плохой системы рекомендаций?

    leventov
    @leventov
    Едва ли вы переплюните систему рекомендаций любого популярного сервиса, даже самую отстающую. Все-таки там не дураки работают.

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

    Лет 7-8 назад Netflix проводил открытый конкурс по улучшению рекомендаций их фильмов, выкладывал данные для анализа. Гуглите.

    Еще есть такая штука: https://www.kaggle.com/competitions
    Ответ написан
    2 комментария
  • Реально ли получить полезные навыки для аналитика, работая в консалтинге?

    @hudozhnin
    Привет. Что-то все обходят стороной вопрос, словно консалтинг какой-нибудь там.
    Ладно, шутки в сторону.

    Консалтинг консалтингу - рознь. Есть такие, например, как Маккинзи, у них наберетесь опыта полезного вне зависимости от планов на будущее. Но, думаю, речь не о таком консалтинге.

    Ответить на Ваш вопрос поможет какая-нибудь известная "диаграмма" о том, кто такой этот самый data "scientist". Очевидно, если нет варианта напрямую пойти на младшие позиции, связанные с темой, нужно выбрать тему в консалтинге, которая поможет прокачивать один из базовых скиллов.
    На мой взгляд, в консалтинге среди таких хороший вариант - внедрение BI системы. Тут прокачивается и понимание баз данных, и SQL, и "аналитика", и Питон можно приплести при желании, и именно к большим данным прикоснуться можно будет, может быть.
    Риск - увлечетесь, повысят, соскакивать будет непросто. Нужно будет не просто работать, а параллельно прорабатывать свою "мечту", может поймете за одно, что не такая уж она и мечта была.

    А вот если речь идет о системной или бизнес-аналитике, что сегодня часто одно и то же (простите, если кого обидел), то бесконечные сборы и формализации требований, "моделирование" бизнес процессов во всевозможных нотациях, описание use-case и т.п. - все это Вас вряд ли приблизит к хорошим скиллам для анализа данных.

    Вообще, вопрос хорошо бы сразу формулировать точнее. В такой формулировке ответ простой - да. Ибо никакие усилия не бывают напрасными. Если Вам повезет, то где бы Вы ни работали, прежде всего Вы прокачаете скилл точной формулировки вопросов, когда не будет нуля ответов спустя дни, и когда сама формулировка не будет предполагать дальнейших уточнений или ненужной полемики.
    Во всяком случае - удачи!
    Ответ написан
    3 комментария
  • Стоит ли идти учиться в колледж на программиста?

    xoliwar
    @xoliwar
    Интересуюсь web
    Может тогда легче вообще не идти учиться и уделать самообразованию больше времени?
    Ответ написан
  • Можно ли быть программистом, поступив на прикладного математика?

    @onepavel
    Консультация и разработка мобильных приложений
    Математика круче!
    Ответ написан
    Комментировать
  • Как в Python корректно использовать алгоритм бинарного поиска?

    bobrovskyserg
    @bobrovskyserg
    Вижу несколько разных вопросов:
    Как произвести подсчет числа прописных букв в тексте просто?
    Как произвести подсчет числа прописных букв в тексте быстро?
    Что за хрень я написал и почему она не работает?

    #  просто и быстро
    STR_TEXT = "Требуется произвести подсчет числа прописных букв в тексте."
    AllCapitalLetters = set("АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ")
    CapitalInTEXT = [c for c in STR_TEXT if c in AllCapitalLetters]
    print(CapitalInTEXT)
    print(len(CapitalInTEXT))

    С латиницей прокатил бы такой вариант:
    STR_TEXT = "CapitalInTEXT = [c for c in STR_TEXT if 'A' <= c <= 'Z']"
    CapitalInTEXT = [c for c in STR_TEXT if 'A' <= c <= 'Z']

    С кириллицей так не выйдет: в юникоде, например
    In [1]: ''.join(chr(i) for i in range(1025, 1072))
    Out[1]: 'ЁЂЃЄЅІЇЈЉЊЋЌЍЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'
    в других кодировках по-другому.

    Чтож, попрактикуемся в бинарном поиске:
    AllCapitalLetters = 'ЁАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'
    # обрати внимание на порядок букв
    # на неотсортированном AllCapitalLetters алгоритм виснет
    CapitalInTEXT = []
    for c in STR_TEXT:
        i = 0
        j = len(AllCapitalLetters) - 1
        while i <= j:
            m = (i + j) // 2
            cm = AllCapitalLetters[m]
            if c > cm:
                i = m + 1
            elif c < cm:
                j = m - 1
            else:
                CapitalInTEXT.append(cm)
                break

    Вместо самописа можно воспользоваться стандартной библиотекой:
    from bisect import bisect_left
    
    AllCapitalLetters = 'ЁАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'
    CapitalInTEXT = []
    for c in STR_TEXT:
        idx = bisect_left(AllCapitalLetters, c)
        if idx < len(AllCapitalLetters) and c == AllCapitalLetters[idx]:
            CapitalInTEXT.append(c)


    По быстродействию простой вариант в 8 раз лучше варианта с bisect и 24 раза лучше самописного.
    На этой задаче бинарный поиск бесполезен. А полезен он, например, при поиске ближайших соседей испытуемой буквы, которой в AllCapitalLetters нет, напр. буквы "Ї".
    Ответ написан
    8 комментариев
  • Работа без высшего образования, это реально?

    @FoxInSox
    Почему вы все так спешите начать работать? Да еще и вместо обучения (каким бы оно ни было).

    - У вас еще впереди лет 30-40 работы, большую часть жизни вам придется работать. Вероятность того, что вы все эти 30 лет будете работать в удовольствие далеко не 100%.
    - Начиная работать на 2-3 года раньше вам не дает сильных преимуществ в перспективе. В практически любой работе гораздо более важна эффективность, а не просто сколько времени вы проработали на определенной должности. Т.е. проработав, например, 5 лет, всегда найдутся люди с меньшим опытом которую делают вашу работу эффективнее (быстрее, качественнее)
    - годы обучения в ВУЗе для очень многих людей являются самыми счастливыми, а во многих случаях даже формируют фундамент всей оставшейся жизни: друзья, хобби, знакомства, связи, какие-то ключевые события. Сидя 8 часов в офисе в день на работе или в квартире на фрилансе вы все это упустите скорей всего.
    - во время учебы у вас есть масса времени попробовать поработать в разных местах и сферах: backend, frontend, мобильная разработка, дизайн, попробовать заняться научной деятельностью, попробовать что либо вообще не связанное с IT. После нескольких лет работы вы только будете мечтать о таком, но времени и возможности сменить радикально сферу работы вы не сможете просто.

    ps ну нахрена вам деньги в 17 лет? Машину купить? Бабу свою свозить в Европу? iMac за 100 тысяч купить? Это все вещи которые не стоят вашего времени как минимум 17 лет точно.
    Ответ написан
    6 комментариев
  • Где найти олимпиадные задачи с теорией и разборами?

    @Dum_spiro_spero
    Олимпиадная задача она на то и олимпиадная... Догадаться надо.
    Не знаю как сейчас в программировании, а в математике решение олимпиадной задачи начинается обычно со слов: "...заметим, что...". А если это не заметить - и не иметь математического кругозора, чтобы понимать что замечать - то... упс.
    Ответ написан
    Комментировать
  • Как грамотно распределить время для учёбы, работы и иных дел?

    @NotLogo
    Не выгорать

    В свое время я с завистью слушал рассказы знакомого, который регулярно вставал в 6 утра и пять часов занимался учебой и потом переключался на работу. Попробовав этот метод и другие варианты «авральных» режимов, я понял, что регулярно совмещать 4-6 часов учебы и работу это путь в никуда, в выгорание и потере интереса к области которой занимаешься.

    Нынешнее расписание

    Утро
    Утром, после подъема и перед работой 40-60 минут на английский, грамматика, выполнение упражнений, сложные тексты. Со временем это становится привычкой и если пропускаешь утро, то начинается «ломка» не хватает умственной «разминки».

    Смартфон всегда под рукой
    По дороге в офис, использую Anki (карточная методика) для повторения материалов. В течении дня читаю сохраненные статьи, в перерывах или в дороге. Если длинная поездка, то одев наушники смотрю сохраненные доклады, делая заметки или конспект на том же телефоне.

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

    Дома, вечер
    Книги и простое правило — прочитать одну главу до конца или минимум 15 минут чтения, если втягиваешься то читать дальше. Если нет, то хватит и главы.

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

    P.S.
    Важно не перегружать себя, потеря интереса после перегрузки это ужасно. Описное выше — это программа минимум. Иногда когда «горят глаза» и интересно, то она превышается, иногда находится время и на личные проект, но превышения только, строго по желанию.
    Ответ написан
    Комментировать
  • С чего начать написание поисковика?

    targetjump
    @targetjump
    Разобраться с тем как именно Вы будете индексировать контент и подобрать для этого эффективные инструменты.
    Ответ написан
    Комментировать
  • Какой учебник по русскому языку порекомендуете?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Розенталь, например.
    712086_eto-ditmar-elyashevich-rozental.j
    Ответ написан
    Комментировать
  • Как проникнуться Hadoop'ом в домашних условиях?

    @realfreeman
    Привет.
    Если что-то из литературы на русском языке - то это исключительно Hadoop. Подробное руководство.
    Указанная вами книга с плохим переводом и кучей ошибок.
    Что касаемо дистрибутива - то на мой взгляд для первого знакомства проще всего посмотреть на дистрибутив от cloudera. Тем более там можно сразу потыкать в hbase, solr, hive и pig.
    Более того, они выкладывают преднастроенные виртуальные машины.
    Что касаемо задач - в книге, что я написал, есть кейсы и ссылки для скачивания данных "на поиграться". Да и найти наборы данных довольно просто.
    Более менее ощутить дыхание мощи технологии можно на кластере из 3-4 машин, на одной виртуалке оценить это проблемно.
    Ответ написан
    1 комментарий
  • Как и где в программировании используется математическая логика?

    Pjeroo
    @Pjeroo
    Веб-разработчик
    Математическая логика - повсеместно. Начиная от простых условий в if-else, заканчивая операциями с базами данных, потому что язык запросов SQL предполагает оперирование с множествами. Насчет дискретной математики, тут очень важная часть - теория графов, потому что практически все хорошие алгоритмы поиска (да и сортировки тоже) основаны на деревьях. Так же довольно таки неплохо иметь представление о теории автоматов, что тоже используется, например, в алгоритмах поиска.
    Ответ написан
    Комментировать
  • Что нужно знать в SQL?

    zo0m
    @zo0m
    full stack developer
    первое что в голову приходит:
    PK / FK
    JOIN
    HAVING
    UNION
    CASE
    всякие функции типа sum, count, nvl, coalesce
    индексы
    транзакции
    кост запроса
    хинты
    план запроса.
    -------------------------------------------------------

    Придумайте задачку, например: Создать базу данных с музыкальными инструментами, придумать несколько таблиц, связать их и покверять в них как можно извращенней ("сколько гитар с 12 струнами выпустили после 1986 года в Америке")
    Ответ написан
    2 комментария
  • Что нужно знать в SQL?

    svd71
    @svd71
    Самый частотребуемые практики в реальной работе: использование всех видов джоинов данных и скорость их обработки на конкретной реализации сервера.
    Ответ написан
    Комментировать