Как попасть в Microsoft, Amazon или Twitter без диплома престижного колледжа

Автор: admin от 13-04-2018, 18:05, посмотрело: 174

Эта статья для тех, кто готовится искать работу и, возможно, тревожится о том, что в топовые компании без диплома Стэнфордского университета по информатике не пробьешься. Вам наверняка говорили, что вас никто не возьмет в Facebook или Microsoft. Но я хочу вам сказать, что это вполне возможно. Вот моя история о том, как мне удалось получить работу своей мечты в Twitter.



Как попасть в Microsoft, Amazon или Twitter без диплома престижного колледжа


Что вы найдете в этой статье:




  • Кое-что из моей биографии

  • Рассказ о том, как меня пригласили на собеседования топовые IT компании мира: Facebook Google, Amazon, LinkedIn, Microsoft, Twitter, Pinterest, Snapchat и другие

  • Рассказ о том, как я получил несколько предложений о работе на должности программиста

  • Уроки, которые я вынес из этого опыта

Категория: Операционные системы » Android

 

Почему игровые серверы и чат должны существовать раздельно

Автор: admin от 13-04-2018, 18:05, посмотрело: 116

Привет, Хабр! Представляю вашем вниманию перевод статьи "Why you should run your game servers independently from your chat" Joe Hanson.



Почему игровые серверы и чат должны существовать раздельно

Разработчики многопользовательских игр часто сталкиваются с дилеммой:




  • Использовать уже существующие игровые серверы (на которых, непосредственно, работает игра) для обеспечения функциональности чата

  • Использовать отдельные сервера для реализации функциональности чата



В конце – концов, это ведь просто чат, так? Маленькие сообщения передаются от пользователя к пользователю/небольшой группе пользователей, вот и всё. Так почему бы просто не добавить немного функционала на уже работающие серверы? Что может пойти не так?



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

Категория: Операционные системы » Android

 

IntelliJ IDEA 2018.1 — улучшенный анализ кода, поддержка частичных коммитов Git, Android Studio 3.0 и многое другое

Автор: admin от 13-04-2018, 18:05, посмотрело: 178

Привет, Хабр! Недавно мы запустили IntelliJ IDEA 2018.1 – первое большое обновление в этом году. В нем вас ждет множество важных улучшений: поддержка частичных коммитов Git, отображение внешних аннотаций в коде, функциональность, добавленная из Android Studio 3.0, и многое другое. Ниже мы расскажем об этом подробнее, а попробовать новую версию можно здесь.



IntelliJ IDEA 2018.1 — улучшенный анализ кода, поддержка частичных коммитов Git, Android Studio 3.0 и многое другое

Категория: Операционные системы » Android

 

Linux-контейнеры: изоляция как технологический прорыв

Автор: admin от 12-04-2018, 22:05, посмотрело: 159

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



Linux-контейнеры: изоляция как технологический прорыв



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

Категория: Операционные системы » Linux

 

Нумерация двоичных деревьев

Автор: admin от 12-04-2018, 20:35, посмотрело: 174

Как пронумеровать все двоичные деревья? Как на КДПВ: “дерево” из одного листа будет первым, дерево из двух листов вторым, второе дерево с ещё одной веткой, исходящей из корня – третьим. А как найти номер произвольного дерева в такой схеме?



Нумерация двоичных деревьев

Категория: Операционные системы » Linux

 

«Holey beep»: найдена критическая уязвимость в «бипере» Linux

Автор: admin от 12-04-2018, 20:35, посмотрело: 151

В модуле beep операционной системы Linux обнаружена уязвимость, позволяющая запускать побочные эффекты файлов и просматривать их типы, не имея на то соответствующих прав. Расскажем, в чем суть проблемы и как варианты её решения предложило ИТ-сообщество.



«Holey beep»: найдена критическая уязвимость в «бипере» Linux

Категория: Операционные системы » Linux

 

Визуализация связей процессов в Linux

Автор: admin от 11-04-2018, 21:35, посмотрело: 200

Визуализация связей процессов в Linux
Приходилось ли вам отслеживать зависимости системных процессов, «кто чей папка», найти императора и убить его, чтобы рабы не респаунились? Можно ps'ать и grep'ать, можно lsof погонять, ведь это так увлекательно ;) Но любые связи, как мне кажется, всегда проще анализировать в визуальной форме, консольные утилиты рисуют хорошие таблички, но из них не всегда можно быстро понять, что с чем связано и в какой последовательности, а для диагностики это очень важно.

Категория: Операционные системы » Linux

 

Почему "=" означает присваивание?

Автор: admin от 11-04-2018, 18:55, посмотрело: 170

Давайте посмотрим на следующий код:



a = 1
a = a + 1
print(a)


В среде ФП часто критикуют данный момент императивного программирования: «Как так может быть, что a = a + 1? Это всё равно что сказать „1 = 2“. В мутабельном присваивании нет смысла».



Здесь мы наблюдаем несовпадение обозначения: «равно» должно обозначать «равенство», когда на практике оно обозначает «присвоить». Я согласен с этой критикой и считаю, что это неудачная нотация. Но также мне известно, что в некоторых языках вместо a = a + 1 пишут выражение a := a + 1. Почему же эта запись не является нормой?



На этот вопрос обычно отвечают «потому что так сделано в C». Но это похоже на перекладывание ответственности на кого-то другого: кто из нас знает, почему так сделано в C? Давайте разбираться вместе!



Большая четвёрка



В начале 1960-ых существовало четыре доминирующих высокоуровневых языка: COBOL, FORTRAN II, ALGOL-60, и LISP. В то время, программисты разбивали присваивание на два класса: инициализацию (initialization) — когда вы впервые определяете переменную, и переприсвоение (reassignment) — когда вы вы изменяется значение существующей переменной.

Категория: Операционные системы » Windows

 

Полезные советы IT-администратору: развертывание различных ОС с помощью Windows Deployment Services

Автор: admin от 11-04-2018, 18:55, посмотрело: 167

Мой коллега Гэри Уильямс – системный администратор с большим опытом работы – поделился советами о том, как можно использовать Windows Deployment Services для развертывания не только ОС Windows. И сегодня я предлагаю его рекомендации вашему вниманию.



Windows Deployment Services (WDS) – полезное дополнение к платформе Windows. Для развертывания виртуальных машин с гостевой ОС Windows этот инструмент можно использовать прямо «из коробки». А после нескольких ловких движений руками он вполне в состоянии справиться с задачей развертывания серверов Linux и VMware при помощи загрузочного меню Preboot eXecution Environment (PXE).



В числе этих манипуляций – парочка команд, запускаемых из командной строки. Нужно всего-навсего переключить загрузчик PXE, используемый Windows, на загрузчик для Linux. В результате создастся пункт меню, позволяющий переключать загрузку с Linux PXE на таковую для Windows в случае необходимости, а IIS будет использоваться для работы веб-интерфейса для скачивания конфигурации Linux.



Я использую настроенный WDS для развертывания Windows, CentOS и ESXi, про что и расскажу в этом посте. Думаю, что пользователи других платформ найдут здесь идеи и для их развертывания.



Полезные советы IT-администратору: развертывание различных ОС с помощью Windows Deployment Services

Категория: Операционные системы » Windows

 

TDD ошибочно?

Автор: admin от 11-04-2018, 18:55, посмотрело: 112

DISCLAIMER: вы попались на clickbait. Очевидно, что TDD нельзя назвать ошибочным, но… Всегда есть какое-то но.

Содержание





  • Bступление

  • Tесты и есть проблема!

    • Hемного истории

    • Hебольшая викторина


  • Oбзор TDD

    • Tесты — это формализованные требования

    • TDD поощряет хорошую архитектуру

    • TDD экономит время

    • Tесты — это лучшая документация

    • Hемного выводов


  • B чём же решение?

    • Hесколько примеров

    • Hемного про планы


Категория: Операционные системы » iOS