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

Все потоки

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Когда «сделать плохо» == «сделать лучше»

Microsoft SQL Server *SQL *ООП *Анализ и проектирование систем *

В мире IT есть много разных концепций и подходов, которые облегчают процесс разработки, расширения архитектуры и создания прочных продуктов. KISS, DRY, SOLID и прочие умные слова - это то, что должен знать программист для того, чтобы считаться как минимум неплохим. Но в данном посте будет затронута и без того известная тема - все эти подходы это рекомендации, а не безукоризненный закон.

Читать далее
Рейтинг 0
Просмотры 1
Комментарии 0

Новости

Почему работе с продуктом нельзя научиться на курсах? И как тогда быть студенту без опыта?

IT-компании Карьера в IT-индустрии Управление продуктом *Управление проектами *Учебный процесс в IT

Всем, привет! Меня зовут Денис, мне 20 и я год работаю в IT стартапе. Поступая в институт я уже примерно понимал, чем хочу заниматься. Работа с продуктом выглядела крайне заманчиво. Баллы егэ были не самые высокие, чтобы идти в вышку, а больше для учебы ничего интересного не было. Поэтому пошел в средний ВУЗ, но с четким планом учиться, не в теории, а на практике. Расскажу свой опыт, чтобы такие же студенты, как я смогли найти себе работу.

Читать далее
Рейтинг 0
Просмотры 1
Комментарии 0

Моделирование приемника GPS для наноспутников

Open source *Глобальные системы позиционирования *Геоинформационные сервисы *Производство и разработка электроники *DIY или Сделай сам

Сегодня мало можно найти интересующихся техникой людей, которые бы не знали про наноспутники. Вкратце, это модульные космические аппараты, построенные из элементов стандартного размера примерно 10х10 см, предназначенные для вывода на низкие орбиты. Они отличаются от других космических аппаратов в экономичности. Причем, цена запуска и стоимость компонентов постоянно снижаются из-за растущей на рынке конкуренции.

Читать далее
Рейтинг 0
Просмотры 7
Комментарии 0

Артемии. Кого завести, когда нет места?

Биология Научно-популярное Читальный зал

На неделе я зашла в магазин, возвращаясь с работы. И в отделе игрушек и товаров для детей нашла забавную коробочку под названием “Питомец Юрского периода”. Естественно, я подумала, что это очередная растущая игрушка, коих в данном магазине сотни. Однако, взяв в руки коробочку, я поняла, что ошиблась.

Читать далее
Всего голосов 8: ↑6 и ↓2 +4
Просмотры 370
Комментарии 0

Ontol про Kotlin: подборка 28 самых полезных бесплатных курсов и видео на Youtube

Блог компании Timeweb Kotlin *Разработка под Android *Учебный процесс в IT
image

На английском


freeCodeCamp — лучший и при этом бесплатный канал для самообучения программированию. Многие платные школы просто делают «рерайт» их программ и продают за 100К руб.



850 000 просмотров
2,5 часа
курс для начинающих 2019 года
Содержание
(0:00:50) Create Your First Kotlin Project
(0:04:23) Hello World
(0:06:33) Working With Variables
(0:11:04) Type System
(0:15:00) Basic Control Flow
(0:21:31) Basic Kotlin Functions
(0:27:12) Function Parameters
(0:32:52) Arrays
(0:35:28) Iterating with forEach
(0:41:17) Lists
(0:42:47) Maps
(0:45:05) Mutable vs Immutable Collections
(0:49:24) Vararg Parameters
(0:54:21) Named Arguments
(0:56:26) Default Parameter Values
(1:00:27) Create A Simple Class
(1:03:35) Adding Class Properties
(1:05:15) Class Init Block
(1:06:40) Accessing Class Properties
(1:07:32) Primary Constructor Properties
(1:08:17) Secondary Constructors
(1:09:50) Working With Multiple Init Blocks
(1:11:30) Default Property Values
(1:11:59) Properties With Custom Getters/Setters
(1:16:52) Class Methods
(1:20:12) Visibility Modifiers — Public/Private/Protected/Public
(1:22:30) Interfaces
(1:24:21) Abstract Classes
(1:26:13) Implementing An Interface
(1:26:35) Overriding Methods
(1:28:30) Default Interface Methods
(1:29:30) Interface Properties
(1:31:40) Implementing Multiple Interfaces
(1:32:57) Type Checking And Smart Casts
(1:36:18) Inheritance
(1:43:07) Object Expressions
(1:45:06) Companion Objects
(1:49:51) Object Declarations
(1:52:41) Enum Classes
(1:58:16) Sealed Classes
(2:00:07) Data Classes
(2:12:25) Extension Functions/Properties
(2:16:40) Higher-Order Functions
(2:29:07) Using The Kotlin Standard Library
(2:00:07) Data Classes

Читать дальше →
Рейтинг 0
Просмотры 81
Комментарии 0

Golang для Embedded Linux

C *C++ *Go *Java *Rust *
Из песочницы

При разработке очередной платформы перед командой АТОЛ встал вопрос выбора языка программирования/стека технологий/железа/фреймворка для создания решений. Железо было выбрано на базе относительно недорогой Linux-платформы STM32MP153/512MB DDR3/8GB eMMC. Эта платформа имеет на несколько порядков больше ресурсов, чем используемые в нашей основной массе решений LPC1768/LPC1778/LPC4078/STM32F207. 100% наработок кода компании для устройств были написаны на C/C++, однако прогресс не стоит на месте, и периодически необходимо актуализировать инструменты и технологии разработки, особенно с учетом новых аппаратных возможностей. Из статьи станет ясно, как мы дошли до жизни такой и почему выбрали Golang для создания очередного набора решений.

Выбор стека технологий важен для всех компаний, которые занимаются разработкой железа и перерастают крошечные embedded контроллеры на Cortex M0/M3/M4/M7. Обычно команды при переходе на новую платформу выбирают одно из двух решений: стараются сделать новую версию системы на новом железе/технологиях/архитектуре, превращая решение в нестабильный долгострой, или наоборот — вносят минимальное количество изменений, но иногда вместо совокупности положительных черт разных подходов получают совокупность отрицательных.

В статье исследованы особенности различных языков программирования/технологий (Java, Python, C/C++, Rust, Golang), их плюсы и минусы, сформулированы критерии выбора и представлен выбор команды АТОЛ.

Для анализа использован метод SWOT-анализа. В качестве источников данных — информация сайтов фреймворков. Помимо этого, косвенная информация о боли и страданиях разработчиков получена на Stackoverflow, и часть субъективных выводов сделана на основе моего экспертного мнения за более чем 30-летний опыт программирования.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 120
Комментарии 1

Архитектура PlayStation 3, часть 4: Борьба с пиратством

Информационная безопасность *Реверс-инжиниринг *Компьютерное железо Старое железо Игры и игровые консоли
Перевод

Из предыдущих частей вы уже знаете, на что способна консоль PlayStation 3. Ожидали ли вы, что хакеры будут довольствоваться ограниченными возможностями OtherOS? Думаю, что Sony тоже не ожидала. Компания изо всех сил старалась защитить некоторые области, оставляя другие полузакрытыми, чем позже и воспользовались хакеры.

Давайте посмотрим, как некоторые из "крепостей" консоли были взломаны независимыми хакерами по всему миру...

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 831
Комментарии 0

Опрос Oracle: 82 % респондентов считают, что роботы могут помочь в карьере лучше людей

Блог компании SkillFactory Исследования и прогнозы в IT Карьера в IT-индустрии Читальный зал Искусственный интеллект
Перевод

13 стран, иными словами 14 639 рядовых и руководящих сотрудников, руководителей отделов кадров и руководителей компаний приняли участие в ежегодном опросе Oracle и Workplace Intelligence о роли искусственного интеллекта на рабочем месте.

Свой опрос Oracle смело сравнивает с опросом мирового масштаба, а его результаты поражают, качественно отличаясь от результатов 2020 года. На обложке вы видите количество людей в процентах по странам, которые хотят, чтобы технологии помогали им определять будущее. Под кат приглашаем за подробностями, пока у нас начинается флагманский курс Data Science.

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Просмотры 77
Комментарии 0

Worker Services в .NET

.NET *C# *
Из песочницы
Tutorial

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 302
Комментарии 2

DIY зарядка для Tesla. Как устроен J1772? Делаем свой wallconnector с куртизанками

Разработка под Arduino *DIY или Сделай сам Автомобильные гаджеты Электроника для начинающих
Tutorial

Может ли автомобиль загореться от плохого зарядного устройства? Зарядное устройство переменного тока для электромобилей с протоколом J1772 по сути своей не зарядное устройство. Я решил сделать свой Wallconnector с бюджетом до 10.000 руб. и разобраться как все работает. Опыты с электричеством опасны! Не повторяйте это дома, или повторяйте....решать Вам!

Сделай свою зарядку сам, тыжпрограммист

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 776
Комментарии 5

Введение в отладку на примере Firefox DevTools, часть 2 из 4

Firefox Разработка веб-сайтов *JavaScript *Отладка *Браузеры
Перевод

Продолжаем погружаться в отладку с Firefox DevTools. Во второй части разбираем, что такое точки останова в отладчике, как ими пользоваться и почему они — замена console.log.

Читать про точки останова
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 228
Комментарии 0

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

IT-эмиграция Карьера в IT-индустрии Статистика в IT Удалённая работа
Из песочницы

Русские айтишники часто хотят жить в Европе, но не всегда хорошо представляют, с чем столкнутся. Чтобы разобраться, как всё на самом деле, мы расспросили несколько человек, которые переехали в Германию на ПМЖ. Три героя — из Берлина, пригорода Мюнхена и поселка Бад Бергцаберн — рассказывают, как живут, на что тратят деньги и почему не всё так гладко, как может показаться.

Читать сейчас (потом = никогда) →
Всего голосов 4: ↑1 и ↓3 -2
Просмотры 851
Комментарии 4

Экономика как целое: холистический подход vs частная перспектива

Блог компании RUVDS.com Управление разработкой *Управление персоналом *Научно-популярное Финансы в IT
Неоклассическая, она же неолиберальная, экономическая парадигма, отличается индивидоцентричностью. Экономика в неоклассическом понимании рассматривается как совокупность индивидуальных действий. В ней отсутствует общая рамка, по которой можно было бы оценивать индивидуальные экономические исходы как желательные и нежелательные. Все экономические исходы — такие, как бедность или сверхнакопление, воспринимаются как «естественные». При этом та же современная мейнстрим-экономика регулярно рапортует о растущем неравенстве и его негативных эффектах. Чего неоклассическая экономика не может — это 1) объяснить причины растущего неравенства и 2) определить рамки, когда неравенство из стимулирующего превращается в саботирующий экономический фактор — потому что в ней нет единого понятия нормы. Это — слепое пятно современной мейнстрим-экономики.

Единственное объяснение, которая такой подход может дать — тоже индивидуалистичный. Бедные бедны в потому что недостаточно постарались, чтобы зарабатывать. А богатые — достаточно. Миллионер работал в тысячу раз лучше человека с обычной зарплатой, миллиардер — поработал как тысяча миллионеров, а мультимиллиардеры в одиночку потрудились за десятки тысяч миллионеров (или сотни тысяч обычных людей).

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


100% создаваемого в экономике богатства — это сумма труда 100% работающих в экономике людей.
Читать дальше →
Всего голосов 11: ↑9 и ↓2 +7
Просмотры 321
Комментарии 7

Первое правило машинного обучения: начните без машинного обучения

Блог компании билайн бизнес Программирование *Машинное обучение *Kubernetes *
Перевод

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

Что? Начинать без машинного обучения?


Об этом говорю не только я.

Догадайтесь, какое правило является первым в 43 правилах машинного обучения Google?

Правило №1: не бойтесь запускать продукт без машинного обучения.

Машинное обучение — это здорово, но для него требуются данные. Теоретически, можно взять данные из другой задачи и подстроить модель под новый продукт, но она, скорее всего, не справится с базовыми эвристиками. Если вы предполагаете, что машинное обучение придаст вам рост на 100%, то эвристика даст вам 50%.
Читать дальше →
Всего голосов 15: ↑13 и ↓2 +11
Просмотры 1K
Комментарии 5

Почему Golang – лучшее решение для оптимизации рабочих процессов?

Блог компании Southbridge Системное администрирование *Программирование *IT-инфраструктура *DevOps *

28 октября у Слёрма прошел вебинар «Golang против скриптов», на котором Всеволод Севостьянов (Tech Lead берлинского vene.io) подробно описал основные преимущества использования Go при написании скриптов для автоматизации повседневных задач. В этом материале мы собрали для вас ключевые тезисы вебинара, расписали главные проблемы Python, Bash и Perl и разобрались, как именно Golang облегчает жизнь разработчикам. 

Читать далее
Всего голосов 20: ↑3 и ↓17 -14
Просмотры 1.7K
Комментарии 6

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

Блог компании ua-hosting.company Алгоритмы *Математика *Научно-популярное Биология


К паукам можно относиться как угодно: их можно бояться, недолюбливать или держать в качестве питомцев. Но любой, от арахнофоба до арахнолога, согласится с тем, что они мастера по строительству своих сетей. Научное сообщество уже очень давно и с большим интересом наблюдает за членистоногими прядильщиками, но полностью раскрыть все их секреты пока еще не удалось. И вот ученые из университета Джонса Хопкинса (США) решили детально рассмотреть и описать процесс строительства паутины, используя при этом искусственный интеллект и приборы ночного видения. Выяснилось, что разные виды пауков подчиняются общим правилам в ходе создания своих сетей. Следовательно, наблюдение за движениями лапок может предсказать, что именно будет строить паук. На какие стадии можно разделить строительство паутины, как пауки ведут себя во время каждой из них, и как эти данные могут помочь в понимании нас самих? Ответы на эти вопросы мы найдем в докладе ученых. Поехали.
Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Просмотры 1.1K
Комментарии 2

Oracle Call Interface: как написать клиентское приложение на Си

Oracle *C *Разработка под Linux *Разработка под Windows *
Из песочницы

В этой статье я расскажу, как написать клиентское приложение для БД Oracle, используя библиотеку OCI и язык Си.

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 443
Комментарии 6

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

Программирование *Алгоритмы *Облачные вычисления *Математика *Облачные сервисы
Tutorial

Привет жителям Хабра! Меня зовут Андрей, я разработчик облачного сервиса по планированию маршрутов Муравьиная логистика. В этой статье я хочу поделиться опытом использования алгоритма, который может пригодиться любой компании, выполняющей анализ данных доставки.

Отмечу, что первоначальное и основное предназначение Муравьиной логистики – это формирование маршрутов по заданным пользователем параметрам. За 9 лет работы сервиса появилось множество дополнительных возможностей, в том числе построение фактического маршрута движения автомобиля на основании данных GPS-трекера. Но нашим клиентам было недостаточно просто видеть на карте траекторию движения автомобиля. Сервис должен предоставить в удобном формате уже проанализированные данные - каждой плановой точке маршрута автомобиля необходимо присвоить соответствующую фактическую стоянку.

Читать далее
Рейтинг 0
Просмотры 561
Комментарии 0

Как обмануть HR по-американски

Управление персоналом *Карьера в IT-индустрии Социальные сети и сообщества Удалённая работа

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

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

Читать далее
Всего голосов 45: ↑36 и ↓9 +27
Просмотры 7.7K
Комментарии 36