Pull to refresh
53
0

Разработчик под Android, перешедший на Rust

Send message

Си должен умереть

Reading time21 min
Views112K

Язык Си - один из наиболее влиятельных языков программирования за всю историю. Он стал незаменимым инструментом разработки операционных систем, сместив с этого пьедестала языки ассемблера. Изучение Си обязательно для любого уважающего себя программиста. Этот язык любим за свою внешнюю простоту и ненавидим за беспощадность к ошибкам. Благодаря нему у нас есть ядро Linux и тысячи уязвимостей в нём же в придачу.

Попробуем понять, что же такое этот противоречивый язык Си - благословение или проклятие?

Читать далее

Сообществам разработчиков лучше общаться на форумах, чем в чатах

Reading time7 min
Views4.2K
После примерно года попыток сформировать сообщество разработчиков выражаю свое провокационное мнение: если вы хотите объединить разработчиков с какой-то платформы в сообщество и у вас встает проблема выбора, то лучше использовать для этой цели форумы, а не чаты с синхронным общением.

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

Дефицит есть, а денег не дают. Почему?

Reading time27 min
Views301K

Мы уже выяснили, что у нас есть дефицит рабочих рук во всех отраслях. На примере СССР увидели, что дефицит легко закрывается деньгами и плюшками, что сейчас и происходит в IT. Однако при дефиците рабочих рук в остальных отраслях зарплаты остаются на уровне Румынии и никак не подтягиваются. Почему?

Читать далее

Ontol: 58 бесплатных онлайн-курсов по кибербезопасности, криптографии и blockchain от лучших университетов мира

Reading time4 min
Views34K
image

Реклама платных курсов лезет из всех щелей, но мало кто знает, что есть тонны бесплатных онлайн-курсов и, порой, более качественных, чем платные.

Предлагаю вашему вниманию 58 бесплатных онлайн-курсов от ведущих университетов мира. (Если есть чем дополнить — пишите в личку или комментарии)
Читать дальше →

Новые мини-ПК, на которые стоит обратить внимание: от ASUS c Intel Jasper Lake до EliteMini HM90 с Ryzen 9 4900H

Reading time4 min
Views24K

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

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

Проект Copland. История крупнейшего провала Apple

Reading time12 min
Views18K


В первой половине 90-х годов наметился очевидный рывок в эволюции операционных систем для персональных компьютеров. Microsoft уже ведет разработку новейшей Windows 95 на замену устаревшей Windows 3.11, IBM продвигает OS/2 Warp 3, отличавшуюся высокой надежностью и достаточно большим ассортиментом прикладных программ. На этом фоне Mac OS 7, ведущая отсчет версий с 1991 года, выглядела уже несколько архаичной. В Apple решили переписать операционную систему с нуля, создав на замену System 7 современную, гибкую и мощную платформу, способную конкурировать с новейшими разработками Microsoft на равных. Проект получил наименование Copland.
Читать дальше →

В десктопном Linux всё ещё больно

Reading time7 min
Views92K

25 августа 1991-го Линус Торвальдс впервые сообщил миру, что работает над новой ОС. Если отсчитывать от этого, то позавчера Linux исполнилось 30 лет, так что можно подвести какие-то итоги: например, скоро ли настанет «год линукса на десктопе»?

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

Я уже почти десять лет не использовал Linux в качестве основной системы, поэтому подумал: может, действительно напраслину возвожу, а всё уже изменилось и с форумами больше никогда не сталкиваешься? Наконец можно рекомендовать линукс родственникам? Вот-вот к нему придёт массовая популярность?

Захотелось хотя бы бегло глянуть. Тут ещё и повод подвернулся: помогал другому человеку выбрать ноутбук, и он был не против установки линукса. В общем, глянул. И быстро испытал столько ярких ощущений, что написал этот пост.

Читать далее

7 причин почему вам не стоит переходить на Mac, или как справиться с этой демонической машиной

Level of difficultyEasy
Reading time12 min
Views223K

Mac наступает со своим чипом M1. Новичков в этой экосистеме должно заметно прибавиться. Сам я многие годы с уважением смотрел на эти интерфейсы. Слушая какой же Mac удобный, плавный и интуитивный. Какой там великолепный Trackpad, что даже мышь не нужна и бла бла бла. И вот, после 15 лет работы CAD разработчиком, я решил поменять профиль и стать программистом. А чтобы не терять мотивацию в процессе обучения, выбрал для себя наиболее наглядное направление, как мне показалось — iOS разработка. Сказано — сделано. MacBook Pro 16” уже год мой основной компьютер.

Так что же с ним не так?

Radxa ROCK 3A: конкурент Raspberry Pi со слотом M.2 для NVMe SSD

Reading time3 min
Views15K

На днях полку одноплатников прибыло: китайская компания выпустила модель Radxa ROCK 3A размером с кредитку. Основа одноплатника — четырехъядерный Rockchip RK3568 ARM Cortex-A55 c частотой работы ядра 2 ГГц. Графика здесь — Mali-G52. Кроме того, есть слот для накопителей M.2 для NVMe SSD.

По словам разработчиков, девайс может на равных конкурировать с последними версиями Raspberry Pi. Подробности о нем — под катом.
Читать дальше →

sqlite-gui: еще один редактор SQLite для Windows

Reading time7 min
Views19K
Всё начиналось как простое средство для выполнения запросов к SQLite базе с сохраняемой историей запросов и кода в редакторе, написанное по старинке на WinAPI. Потихоньку оно обросло функционалом, и, если бы я с самого начала знал во что это выльется, то не взялся бы.
Читать дальше →

Откручивание SSL пиннинга в Android приложениях

Reading time7 min
Views30K

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

В наше время для взаимодействия компонентов веб-приложений используется протокол HTTPS, в основе которого лежат протоколы HTTP и TLS. Просто так перехватить трафик приложения не выйдет, т.к. он зашифрован. Можно, конечно, использовать прокси сервер, который с помощью своего сертификата сможет расшифровать трафик приложения и увидеть все запросы. Однако и средства защиты приложений не стоят на месте. Многие мобильные приложения используют SSL Pinning.

SSL Pinning – это внедрение SSL сертификата, который используется на сервере в код мобильного приложения. Таким образом, приложение не использует хранилище сертификатов устройства и не будет работать с сертификатом, который мы ему подсунули.

Читать далее

«Почему Kotlin хуже, чем Java?»

Reading time6 min
Views77K

Такой провокационный вопрос задал реддитор nenemen в сабреддите Java:

«Я думаю о том, чтобы свой следующий проект сделать на Kotlin + Spring Boot, но мощь всенародной любви к Kotlin и одновременно ненависти к Java заставляют всё это походить на какой-то культ. Поэтому хотел бы услышать аргументы «против».

Мы в FunCorp в своё время сделали именно такой выбор в пользу Kotlin. И сегодня соотношение Java/Kotlin у нас составляет примерно 20 на 80, продолжая уменьшаться при каждом удобном случае. Поэтому ответы на этот вопрос меня заинтересовали, и я стал листать секцию комментариев. Там наткнулся на реплику реддитора rzwitserloot, которая мне показалась настолько взвешенной, многосторонней и рациональной, что я захотел поделиться ей с нашей командой, а заодно и читателями Хабра.

Далее перевод его аргументов.

Читать далее

Почему большинство юнит тестов — пустая трата времени? (перевод статьи)

Reading time27 min
Views12K

Перевод статьи "Why most unit testing is waste?"

Автор: James O Coplien, Перевод: Епишев Александр  

1.1 Наши дни

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

Читать далее

Пришло время и тебе встать на защиту Sci-hub

Reading time4 min
Views59K
image


  • Быстрый старт спасения Sci-Hub: загрузите 1 случайный торрент (100 ГБ) из коллекции scimag и скачайте его. Оставайтесь на раздаче навсегда.
  • Трекер успеха миссии, спасибо phillm
  • Участвуйте в проектах Sci-Hub с открытым исходным кодом: freereadorg/awesome-libgen
  • Присоединяйтесь к /r/scihub, чтобы оставаться в курсе


Спасательная миссия для Sci-Hub и Open Science


Elsevier и USDOJ объявили войну Sci-Hub и Open Science. Эпоха Sci-Hub и Александры, сражающихся в одиночку, должна закончиться. Мы должны встать на её сторону.

7 мая Александра Элбакян из Sci-Hub сообщила, что ФБР прослушивает ее аккаунты более двух лет. Эта новость появилась после того, как Twitter заставил замолчать официальный аккаунт Sci_Hub в Твиттере, потому что индийские ученые организовались против своего министерства и иска Elsevier.

Сам Sci-Hub в настоящее время заморожен и не загружал никаких новых статей с декабря 2020 года. Эта спасательная миссия сосредоточена на поддержке раздач (seeding) коллекции статей, чтобы подготовиться к потенциальному закрытию Sci-Hub.

Александра Элбакян из Sci-Hub, книжный воитель Library Genesis, Аарон Шварц и бесчисленное множество других неназванных боролись за то, чтобы освободить науку от хватки коммерческих издателей. Сегодня они делают это скрытно, в одиночку, без ведома, опасаясь тюремного заключения, и даже сейчас их прослушивает ФБР. Они жертвуют всем ради одного видения: Open Science.
Читать дальше →

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

Reading time4 min
Views45K

Сколько людей в стране не любят свою работу и вообще ненавидят свою жизнь? Три года назад мне в руки попало одно очень занятное исследование Google: Barriers, motives & triggers of entrepreneurship. Три тысячи респондентов, очищенная выборка, больше ста российских городов, интервью дольше 20 минут. Там были несколько чисел, которые меня, мягко говоря, ошеломили.

Читать далее

Полезные консольные Linux утилиты

Reading time13 min
Views128K

В этой подборке представлены полезные малоизвестные консольные Linux утилиты. В списке не представлены Pentest утилиты, так как у них есть своя подборка.


Осторожно много скриншотов. Добавил до ката утилиту binenv.


binenv — cамая интересная утилита для установки новых популярных программ в linux, но которых нет в пакетном менеджере.

Читать дальше →

Изобретайте колесо

Reading time5 min
Views4.7K

Совет “не изобретать колесо” (в смысле “не искать собственных решений вместо использования имеющихся”) плох уже потому, что переизобрести буквальное физическое колесо — довольно неплохая идея. Колеса независимо придумывались бессчётное количество раз. Менялся дизайн и пропорции; используемые материалы эволюционировали от камня и дерева до металлических сплавов, а затем и композитов. Примерно круглый плоский камень с дыркой посередине - это совсем не то же самое, что идеально круглое тонкое колесо с десятками металлических спиц.

Читать далее

Я купил 300 казахских доменных имён с эмодзи и создал свой почтовый сервис

Reading time6 min
Views45K
Если вкратце: я скупил 300 казахских доменных имён, состоящих из эмодзи, и сделал сервис, который регистрирует адреса почтовых ящиков с эмодзи. По ходу дела я завирусился на TikTok, заработал тысячу долларов за неделю, нанял японского актёра для озвучки ролика и многое узнал об удивительном мире доменов с именами-эмодзи.

Не так давно мне вдруг пришла в голову сногсшибательная идея зарегистрировать домен netflix.soy. Вы можете возразить, что есть и более практичные способы потратить семнадцать фунтов, но зато в процессе я усвоил массу новой информации о доменных именах, в том числе и тот факт, что существуют домены такого вида: .ws.

В наше время и дня не проживёшь, чтобы не столкнуться в Интернете с каким-нибудь эмодзи, но вот домены подобного рода мне до сих пор не попадались. И мне стало интересно: а можно ли зарегистрировать такой домен?
Читать дальше →

Частые ошибки в настройках Nginx, из-за которых веб-сервер становится уязвимым

Reading time8 min
Views66K

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

Nginx — один из наиболее часто используемых веб-серверов в Интернете, поскольку он модульный, отзывчивый под нагрузкой и может масштабироваться на минимальном железе. Компания Detectify регулярно сканирует Nginx на предмет неправильных настроек и уязвимостей, из-за которых могут пострадать пользователи. Найденные уязвимости потом внедряются в качестве теста безопасности в сканер веб-приложений.

Мы проанализировали почти 50 000 уникальных файлов конфигурации Nginx, загруженных с GitHub с помощью Google BigQuery. С помощью собранных данных нам удалось выяснить,  какие ошибки в конфигурациях встречаются чаще всего.

Читать далее

Забудьте про div, семантика спасёт интернет

Reading time6 min
Views123K

Давным-давно (лет пятнадцать назад) почти все делали сайты и не переживали о том, что под капотом. Верстали таблицами, использовали всё, что попадётся под руку (а попадались в основном <div> и <span>) и не особо заморачивались о доступности. А потом случился HTML5 и понеслось.

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

Дисклеймер: статья может обидеть тех, кто прикипел к вёрстке дивами. Но <div> — не приговор, и мы не призываем от него целиком отказываться. Ну и всегда можно договориться.

Читать далее

Information

Rating
9,350-th
Location
Bratislava, Bratislava, Словакия
Date of birth
Registered
Activity