Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

«Нет разделения на онлайн и офлайн — мы сами его себе придумали»

Время на прочтение11 мин
Количество просмотров3.8K

«Мы — это поколение, которое помнит офлайн без онлайна. Мы себе придумали, что есть отдельный мир со своими законами. А вообще законы одни и те же. Я купил булку. Какая разница, купил я ее в магазине или заказал через приложение? Результат от этого не меняется. Так же в образовании»

Поговорили с Александром Ларьяновским, совладельцем Skyeng, о мифах современного образования и массовом спросе на IT-специальности. А еще о том, как поживает проект Skypro и почему людям не нужно опасаться искусственного интеллекта.

Читать далее
Всего голосов 17: ↑6 и ↓11-5
Комментарии8

Собеседую программистов на Java. Единый набор вопросов для любого уровня

Время на прочтение4 мин
Количество просмотров27K
В своей карьере мне приходилось быть и разработчиком, и менеджером, и даже один раз «CTO» в небольшом стартапе. И, разумеется, приходилось проводить большое количество собеседований кадидатов. Поэтому для себя я выработал такие правила проведения технических собеседований:

  • всем кандидатам задавать одинаковые вопросы,
  • вопросы должны быть такие, чтобы на них ответил и junior, и senior, но по разному,
  • после трёх вопросов должен быть понятен уровень кандидата.

И вот такие три вопроса для Java-разработчиков у меня получились.
Читать дальше →
Всего голосов 41: ↑25 и ↓16+9
Комментарии55

Резюме с фотографией летит в урну. Особенности поиска работы в США

Время на прочтение5 мин
Количество просмотров23K
Привет Хабр! Меня зовут Марина Могилко. Я уже четыре года живу в США и развиваю LinguaTrip.com — онлайн-платформу по бронированию языковых курсов. В основном мы помогаем с учёбой — выучить английский или поступить в зарубежный вуз, но периодически просят помочь и с работой за границей. Мы не занимаемся трудоустройством, но знаем, как попасть в хорошую компанию в США. В целом секрет прост — прокачайте профиль в LinkedIn, продайте себя через резюме и произведите хорошее впечатление на собеседовании. Как это сделать, рассказываем под катом.

image
Всего голосов 59: ↑20 и ↓39-19
Комментарии44

24-ядерный CPU, а я не могу набрать электронное письмо

Время на прочтение9 мин
Количество просмотров100K
Я не искал неприятностей. Не запускал процесс сборки Chrome тысячу раз за выходные, а только занимался самыми обычными задачами 21-го века — просто писал электронное письмо в 10:30 утра. И вдруг Gmail подвис. Я продолжал печатать несколько секунд, но на экране не появлялось никаких символов. Затем внезапно Gmail отвис — и я вернулся к своему очень важному письму. Но впоследствии всё повторилось, только на этот раз Gmail ещё дольше не отвечал запросы. Это странно

Трудно устоять перед возможностью провести хорошее расследование, но в данном случае вызов особенно силён. Ведь я в Google работаю над улучшением производительности Chrome для Windows. Обнаружить причину зависания — моя работа. И после множества фальстартов и тяжёлых усилий мне всё-таки удалось выяснить, как Chrome, Gmail, Windows и наш IT-отдел вместе помешали мне набрать электронное письмо. По ходу дела нашёлся способ сэкономить значительное количество памяти для некоторых веб-страниц в Chrome.

В расследовании оказалось так много нюансов, что я оставлю некоторые для другой статьи, а сейчас полностью объясню причины подвисаний.
Читать дальше →
Всего голосов 137: ↑129 и ↓8+121
Комментарии161

Превращаем шлюз умного дома Xiaomi в колонку

Время на прочтение3 мин
Количество просмотров35K
Привет, хабра гиктаймс-читатель! Сегодня я научу тебя как из бесполезного функционала получить полезный. Получать будем на примере умного дома от небезызвестной компании Xiaomi и её продукта в виде ZigBee-шлюза.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии9

Катаем «смоляной шарик» или создание собственных правил сборки с помощью Qbs

Время на прочтение14 мин
Количество просмотров8.4K
Qbs (Qt Build System) — система сборки, позволяющая описывать процесс сборки проектов на простом языке QML (javascript-подобный декларативный язык), ускоряющий процесс сборки продуктов за счет построения подробного графа зависимостей. Хоть эта система и создана разработчиками Qt, но она жестко не привязана к Qt и позволяет собирать любые продукты, для любых языков программирования и даже использоваться не для программирования, а например для администрирования. Как заявлено в официальной документации:
A product is the target of a build process, typically an application, library or maybe a tar ball

Сегодня и рассмотрим процесс создания своих продуктов. Поехали…
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии54

40 необычных вопросов, задаваемых на собеседовании в Apple

Время на прочтение4 мин
Количество просмотров68K
Apple одна из самых престижных компаний в мире, очевидно, что получить работу в ней очень непросто. Среди вопросов, которые задают кандидатам на собеседовании, встречаются как технические, так и ошеломляющие головоломки.



А когда речь заходит о работе в магазинах Apple, соискателям задают много вопросов, которые в большинстве случаев связанны с сглаживанием конфликтов. Некоторые вопросы требуют решения хитрых математических задач, в то время как другие на первый взгляд кажутся простыми, но на деле это не так.
Читать дальше →
Всего голосов 31: ↑17 и ↓14+3
Комментарии188

NooLite + Raspberry Pi + Telegram = умный дом

Время на прочтение14 мин
Количество просмотров47K

2 года назад передо мной встала задача реализовать удаленное управление обогревательными приборами в своем загородном доме. В данной статье я хочу поделиться моим вариантом автоматизации и удаленного управления, к которому я в итоге пришел. Постараюсь охватить весь процесс и подробности создания этого хобби-проекта и поделиться всеми сложностями, с которыми пришлось столкнуться. В процессе реализации, как видно из названия статьи, я использовал Noolite (о нем расскажу в статье), Telegram и совсем немного Python.


image
Читать дальше →
Всего голосов 43: ↑38 и ↓5+33
Комментарии47

LLVM для исследователей

Время на прочтение14 мин
Количество просмотров50K
В этой статье рассказывается о проведении исследований на базе инфраструктуры компилятора LLVM. Нашего рассказа должно хватить для того, чтобы исследователи, которым компиляторы прежде были по большей части безразличны, пришли в восторг от LLVM и сделали с его помощью что-нибудь интересное.

Что такое LLVM?


LLVM — это по-настоящему удобный для разборки и сборки «ранний» компилятор для таких традиционных языков программирования, как C и C++.

LLVM настолько хорош, что считается «больше, чем просто компилятором» (это динамический компилятор, он работает с языками, не относящимися к семейству C, он представляет собой новый формат доставки для App Store и т. д. и т. п.). Все перечисленное верно, но для нашей статьи важно лишь приведенное выше определение.

LLVM имеет несколько ключевых отличий от других компиляторов:

  • Главное новшество — промежуточное представление (ПП). LLVM работает с ПП, которое действительно можно прочитать (если вы умеете читать ассемблерный код). Возможно, кому-то это не покажется столь уж большим откровением, однако это свойство очень важно. ПП других компиляторов обычно имеют настолько сложную структуру, что их невозможно записать вручную, трудно понять и использовать.
Читать дальше →
Всего голосов 72: ↑68 и ↓4+64
Комментарии6

Каково это — быть разработчиком, когда тебе сорок

Время на прочтение18 мин
Количество просмотров229K
Примечание от переводчика:

Этот пост был написан и опубликован на Medium разработчиком приложений Адрианом Космачевским из Швейцарии. Кроме подготовки перевода его публикации, я также пригласил и самого автора, Адриана ( akosma ), на Хабр, для того, чтобы он смог лично ответить на любые вопросы участников сообщества, если таковые возникнут. Думаю, для общего удобства при общении в комментариях с ним стоит использовать английский (и, при желании, дублировать на русском).



Привет всем, я — сорокадвухлетний программист-самоучка, а это моя история.

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

image

Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 10 часов утра 6 октября 1997 года, в городе Оливос, к северу от Буэнос-Айреса, в Аргентине. Был понедельник. Не так давно я праздновал свой 24-й день рождения.

Мир в 1997 году


Тогда он был немного другим. На веб-сайтах не было предупреждений об использовании cookie. Новаторскими в сети были сайты вида Excite.com, а моим любимым поисковиком был AltaVista.

Мой электронный ящик имел вид kosmacze@sc2a.unige.ch и был расположен на личном веб-сайте, который размещался по адресу http://sc2a.unige.ch/~kosmacze. Тогда мы еще оплакивали принцессу Диану, а Стив Джобс только-только вернулся на роль CEO и убедил Microsoft «вбросить» в Apple Computer 150 миллионов долларов. Digital Equipment Corporation подала в суд на Dell, останки Че Гевары вернули на Кубу, только начался четвертый (!) сезон «Друзей». Был убит Джанни Версаче, скончались Мать Тереза, Рой Лихтенштейн и Жанна Кальман. Люди зависали за Final Fantasy 7 на PlayStation, будто бы были наркоманами, Би-Би-2 начал вещание телепузиков, а Кэмерон только собирался показать миру свой «Титаник».
Читать дальше →
Всего голосов 200: ↑194 и ↓6+188
Комментарии321

GitFlow и Semantic Versioning на каждый день

Время на прочтение6 мин
Количество просмотров30K
image

Cколько времени я использую GitFlow и Semantic Versioning, меня все не покидает чувство, что чего-то в них не хватает. Обе концепции хороши, но так как они предлагают решения для проблем из разных областей, их совместное использование выглядит сложнее, чем должно быть.

Возможно причина в том, что я выбрал не самый оптимальный путь, и это может стать хорошей темой для будущего поста. В этом же я хочу описать простой подход к управлению релизами приложений и библиотек.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии3

Проект Qt меняет лицензию и открывает код некоторых модулей

Время на прочтение3 мин
Количество просмотров32K
На прошлой неделе компания Qt Company (подразделение Digia) обновила текст соглашения с организацией KDE Free Qt Foundation и объявила о новой политике лицензирования Qt.

Организация KDE Free Qt Foundation была основана в 1998 г. с целью защиты Qt как свободного ПО. Между организацией и компанией Trolltech был заключен договор, позволяющий в случае прекращения разработки свободной версии Qt, выпустить Qt под лицензией типа BSD (или любой другой свободной). Договор обновлялся, по мере того, как права на Qt переходили к Nokia, а затем к Digia.

Подробности новой лицензионной политики Qt под катом.


Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии19

Как правильно писать RFP на разработку ПО

Время на прочтение16 мин
Количество просмотров38K

Данная статья предназначена вам, дорогие заказчики, будущие и настоящие, наши и не наши. Говорят, что правильно заданный вопрос — половина ответа. Правильно написаное задание заказчиком — залог хорошего и точного предложения от нас, разработчиков, а в итоге — хорошо сделанного проекта, в срок, в рамках бюджета и с высоким качеством. Такую первичную постановку задачи, предназначенную для отправки разработчику, называют запросом на предложение, или RFP (request for proposal).

Уже много лет приходится работать на проектах по разработке ПО. За 15 лет через меня прошли сотни запросов на предложения самого разного качества. Во многих из них я наблюдаю общие проблемы. Попробую — обобщить основные узкие места и дать рекомендации по тому, как избежать их в будущем.

Итак, перед вами поставлена задача — найти достойного подрядчика на разработку ПО. Чтобы найти самого лучшего, вы решаете подготовить и разослать по списку достойных компаний запрос на предложение, провести тендер, и в итоге сделать выбор. Вы открыли чистый лист в ворде и… С чего начать?

Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии9

Tibero. Первый блин

Время на прочтение6 мин
Количество просмотров20K
Недавно в моей жизни закончился период поиска новой работы. На одном из собеседований этого периода я узнал, что в мире появилась новая СУБД, разработчики которой обещают вот-вот затмить собой Oracle всемогущий. Заманчивое обещание тут же породило у меня желание попробовать это чудо заморской техники. Речь шла о корейской СУБД Tibero.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии5

Да, я пишу десктопные приложения под Windows

Время на прочтение5 мин
Количество просмотров119K


Здравствуйте, меня зовут Владимир и я анонимный разработчик десктопных приложений под Windows. В этом месте все должны сказать «Здравствуй, Владимир!», а кто-то может быть добавит «Молодец, что осознал!». А потом все похлопают. Нет, правда, иногда от чтения Хабра у меня возникают именно такое ощущение, что нормально, нет, даже не «нормально», а допустимо и одобряемо сегодня писать только микросервисы для каких-то стартапов, которые будут по какому-то REST API отдавать данные какому-нибудь фронтенду на Ангуляре, который и будет, наконец, показывать пользователю что-то невероятно полезное, вроде таблицы с аггрегированными отзывами о стрижках пуделей с возможностью посмотреть на гуглокартах где бы в вашем городе можно было сделать именно такую стрижку вашему пуделю (несуществующему). А никаких других программ писать уже нет-нет, никак нельзя! Что за чушь?!

Да, многое сегодня происходит в вебе и на мобильных устройствах, но, знаете ли, далеко не всё. Значительная часть приложений по-прежнему является десктопным софтом. И даже (о, ужас!) не под Mac Os или Linux, а под тот самый богомерзкий Windows. И, знаете ли, софт этот живёт, развивается, поддерживается и является ежедневным рабочим инструментом миллионов людей. И никуда он мигрировать не собирается, потому что есть причины, по которым иногда именно десктопное приложение является лучшим вариантом.
Читать дальше →
Всего голосов 272: ↑231 и ↓41+190
Комментарии565

Мобильная связь в Европах

Время на прочтение7 мин
Количество просмотров38K
Я как-то писал о своём выборе роуминговых опций наших сотовых операторов. Тогда я остановился на «Ноль без границ» от МТС для входящих и на тарифе «Вокруг света» от Мегафона для исходящих и интернета. Но уже прошло три года, многое изменилось. Решил задокументировать нынешнее состояние дел.

Для начала — почему только Европа. Тут всё просто — я обычно езжу в отпуск в Европу. Не так часто, как некоторые ездят, но сильно чаще, чем сам езжу в другие части света.
Почему вообще возник такой вопрос, почему не купить местную симкарту в стране пребывания? Во-первых, туристу это не всегда возможно. Во-вторых, туристу это не всегда выгодно, особенно если приехал на пару дней. Но если я в стране на неделю и больше, то местную симкарту стараюсь приобрести.
DontPanicCartoon580_39474a
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии41

Делаем обычную микроволновку умнее с IFTTT и OpenHAB

Время на прочтение4 мин
Количество просмотров21K

«Умные дома» и «умные офисы» сегодня тренд. А как сделать самое обычное бытовое устройство чуть «умнее»? А что если при этом вы не умеете или не хотите ничего паять? Я например отношусь к тем, кто паять не умеет, а пользу от умных устройств получать хочет.

Под катом я расскажу, как легко и без паяльника можно быстро превратить абсолютно любую микроволновку в самую настоящую smart-микроволновку, которая будет оповещать вас о готовности еды и своем текущем статусе самыми разнообразными способами.
Читать дальше →
Всего голосов 15: ↑11 и ↓4+7
Комментарии19

Эффективная работа с SQLite на примере ICQ

Время на прочтение9 мин
Количество просмотров29K
Как и во многих других приложениях, нам в мобильном ICQ приходится хранить достаточно много информации: сообщения, контакты и тому подобное. Когда количество запросов к этим данным достигает какого-то критического значения, приложение начинает тормозить. Долгий запуск, медленное открытие чата, медленная отправка сообщений, постоянные спиннеры — все это жутко напрягает. Чаще всего причиной тормозов является неудачная работа с данными. В статье я хочу поделиться нашим опытом рефакторинга структуры данных, оптимизации запросов и некоторыми удобными приемами для миграции.

Несколько слов об исходной задаче. Основная сущность у нас — профиль ICQ, у которого есть список контактов, а у тех есть сообщения. Наше приложение существует уже много лет, разрабатывалось разными людьми с разными подходами, номер версии основной БД уверенно приближался к 30. Кроме того, количество фич в продукте невозможно предсказать заранее, это тоже повлияло на архитектуру. В общем, модель данных изначально была примерно такой:

Читать дальше →
Всего голосов 50: ↑46 и ↓4+42
Комментарии8

Интернет Вещей (IoT) и водопровод

Время на прочтение4 мин
Количество просмотров55K
После публикации про интернет вещей, нам пришло письмо с идеей применения модуля ESP-8266:

«Есть у компании Мастер-Кит очень интересная вещь – моторизированный шаровый кран. Данная модификация питается от напряжения от 3 до 6 вольт и замечательно открывает и закрывает подачу воды в бытовых трубопроводах.



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

Внимание привлек модуль ESP-8266,
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии49

Твой код никого не интересует

Время на прочтение4 мин
Количество просмотров79K
Мой код никого не интересует. Я был повержен в шок, когда осознал это в процессе работы программистом. Я тратил много времени на оттачивание своего кода, пока не понял, что он никого не интересует, ведь в зачет идет не сам код, а продукт. Принятие программистом этого факта приведет к повышению продуктивности и ценности его работы.
Читать дальше →
Всего голосов 122: ↑87 и ↓35+52
Комментарии200

Информация

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