Как стать автором
Обновить
-4
0
Вадим @vadpost

программист

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

Сравнение технологий для написания оконных приложений

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров9K

Как-то раз в одном чате прозвучала идея сравнить разные технологии для написания оконных приложений. В частности, под Windows. Используя средства языка C#. То есть, конечно, можно это сделать и с помощью C++, Python, Rust, JS и других языков, но мы же шарписты, нам интереснее именно то, что мы можем сами использовать, не меняя язык программирования.

Итак, оконные приложения на C#.

Читать далее
Всего голосов 24: ↑24 и ↓0+32
Комментарии82

Решаем проблему блокировок (и YouTube) за 5 минут на роутере с OpenWRT

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров77K

Будем возвращать доступ к YouTube (а заодно и к другим заблокированным ресурсам) с помощью роутера на OpenWRT и Shadowsocks (Outline) и клиента bird2 (сервиса Antifilter.download)

Читать далее
Всего голосов 40: ↑35 и ↓5+35
Комментарии94

Незаконченная история перехода с Delphi на C#

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

Предисловие


Всем доброго времени суток. Начиная с 2003 года, и по сегодняшний день, я профессионально занимаюсь разработкой прикладного программного обеспечения в среде Delphi 7 — Delphi 2010. И надо сказать, что эта работа позволяет мне достаточно неплохо зарабатывать на хлеб и пользоваться уважением своих коллег в нескольких организациях, с которыми я работаю.
Но многие наверняка знают о трудностях компании Borland, и как следствие провальной судьбе нескольких, вышедших подряд, версиях Delphi. Все Delphi, начиная с версии 8 (~2003 год) по 2007-ю, были не просто непопулярны. Их IDE были крайне нестабильны. Фатальные сбои среды разработки, требующие перезапуска, становились неотъемлемой частью процесса программирования. Сам язык менялся настолько незначительно, что большинство разработчиков на вопрос: “Что изменилось в новой версии?” могли только невнятно пробубнить: “Ну,… кажется, были добавлены новые компоненты…”. И только в 2009 году отделившаяся от Borland компания CodeGear смогла вывести на рынок относительно стабильную RAD Studio 2009, включающую новую версию Delphi. Подведя итоги, получаем 6 с лишним лет застоя, на фоне бурно развивающихся информационных технологий.
Поэтому и по сей день, значительный процент профессиональных разработчиков Delphi работает в 7-й версии. Могу только посочувствовать их упорству и посоветовать (если они и далее желают работать с Delphi) как можно скорее осваивать Delphi 2010. В сравнении с Delphi 7, 2010-я версия — это качественный скачек вперед. Я не стану подробно останавливаться на сравнении, поскольку это расходиться с темой статьи, но совсем промолчать не могу. Таких людей нужно чаще мотивировать, поскольку привыкание может быть существенной помехой на пути профессионального развития. Перейдя на версию 2010, вы получите стабильно работающую IDE, значительно превосходящую по комфорту работы среду Delphi 7. Из языковых возможностей вы приобретете поддержку юникода, возможность работы с обобщенными типами и анонимные методы, которые также могут плодотворно сказаться на качестве кода и скорости работы.
Читать дальше →
Всего голосов 118: ↑82 и ↓36+46
Комментарии226

Создание аналога Google Photos на собственном сервере

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров27K

Создание собственного облачного хранилища с автоматическим менеджером фотографий.

Изучение опенсорс софта, нацеленного на автоматический менеджинг фотографий, сравнение софта между собой, установка на тестовый сервер, просмотр с разных устройств.

Читать далее
Всего голосов 21: ↑19 и ↓2+23
Комментарии78

Взламываем игры с помощью Python

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров21K

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

А на днях мне вдруг захотелось вспомнить молодость и поиграть в бумерский диаблойд под названием Titan Quest, выпущенный аж в 2006 году. Да вот только времени на беготню, прокачку, и вот это вот всё, у меня нет. И ArtMoney нет. Зато есть определенные знания программирования. Вот я и решил совместить приятное с полезным, написав аналог ArtMoney на Python, а заодно стать супербогатым, хотя бы в Titan Quest.

Читать далее
Всего голосов 34: ↑31 и ↓3+31
Комментарии37

FPC/Lazarus и Android

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров5.7K

Всем привет, кто не знает меня зовут Сергей! И в очередной статье я задену разработку на Object Pascal.

В настоящее время и Delphi и FPC/Lazarus (FPC - free pascal compiler, Lazarus - IDE) поддерживают сборку под разные платформы.

В данной статье ознакомлю вас с возможностями разработки Android-приложений средствами FPC/Lazarus, в том числе и игр. И так же немного добавлю информации по Delphi, чтоб проще было искать нужную вам информацию, если вы используете данную среду разработки, но по самой разработке в Delphi не смогу вам ни чего дать на данный момент.

интересно
Всего голосов 34: ↑32 и ↓2+37
Комментарии28

Используем Proxy в Selenium

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров936

Привет, Хабр. Вряд ли эта статья откроет Америку для прожженных разработчиков "парсеров" или тестировщиков, но должна помочь тем, кто работает с Selenium время от времени.

Если вы иногда занимаетесь автоматизированным сбором информации с веб-ресурсов (т.н. веб-скрапинг или парсинг), то однозначно сталкивались с проблемой, что некоторые ресурсы недоступны из некоторых регионов, по разным причинам. Сейчас этой проблемы стало даже чуточку больше. И для преодоления этого препятствия нам помогают прокси-серверы (промежуточные серверы). Однако, если в части библиотек для работы с запросами использование прокси является очевидным решением, идущим из коробки, то такой инструмент как Selenium очевидного встроенного решения или не имеет, или я не смог его обнаружить. Не смог его обнаружить я, в том числе, и на Хабре, поэтому решил это исправить.

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

Туннель IPv6 через IPv4 для обхода замедления Youtube на уровне роутера

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров133K

Туннели IPv6 через IPv4 помогают получить доступ к сайтам и сервисам, которые используют новый протокол IPv6, даже если у вас старый IP‑адрес версии 4 (IPv4). Чтобы его настроить, нужно зарегистрироваться на сайте провайдера, который предоставляет такую услугу (его еще называют туннельный брокер), и использует технологию 6in4. После регистрации вы получите все необходимые данные для подключения.

Одно из преимуществ данного способа заключается в том, что не потребуется настраивать что-то дополнительно на других устройствах в локальной сети, не сломается работа на AndroidTV итд.

Туннель работает только с белым IP‑адресом (некоторые провайдеры выдают его бесплатно, некоторые за определённую сумму в месяц).

Читать далее
Всего голосов 42: ↑41 и ↓1+47
Комментарии107

В сотый раз об эргономике рабочего места (на личном опыте)

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров45K

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

Читать далее
Всего голосов 52: ↑50 и ↓2+56
Комментарии109

Малоизвестные фичи XRay, о которых невозможно молчать

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров12K

В этом посте я кратко поведаю о разных интересных возможностях XRay (клиент и сервер для протоколов VMess, VLESS, Trojan и других, в том числе с XTLS-Reality и XTLS-Vision), о которых, кажется, мало кто знает, но которые могут оказаться очень полезными.

Оглавление:

- Фрагментирование запросов
- QUIC-транспорт
- Мониторинг и автоматический выбор outbound'а
- Сбор статистики
- Browser dialer

Читать далее
Всего голосов 46: ↑46 и ↓0+55
Комментарии12

Ищем альтернативу Ngrok в России

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров5.4K

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

Читать далее
Всего голосов 9: ↑6 и ↓3+8
Комментарии21

Как настроить Android и RAD Studio XE7 (Delphi, C++ Builder)

Время на прочтение3 мин
Количество просмотров65K
Поговорим о том, как «подружить» или настроить Android и RAD Studio XE7 (или Delphi, или C++Builder, или AppMethod).
На самом деле вопрос не очень сложный, но часто поступающие на эту тему вопросы побудили меня написать этот пост.

План действий:
— настройка RAD Studio XE7 (SDK + NDK);
— настройка Android-устройства;
— запуск своего приложения на Android-устройстве.
Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии22

Вы нас просили и мы сделали. VPN на собственном сервере с XRay Reality за 5 минут с помощью Amnezia

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

Всем привет! Это команда Amnezia. 

Мы читаем комментарии под нашими постами и знаем, что один из самых частых вопросов – когда будет XRay? Так вот, мы добавили XRay в приложение AmneziaVPN, а точнее протокол Reality от XRay для всех платформ -  IOS, Android, Windows, Linux и MacOS. Если у вас еще нет последнего релиза, скорее скачивайте и создавайте VPN на собственном сервере в пару кликов с одним из самых защищенных и быстрых протоколов в мире, ниже мы немного о нем расскажем, а в конце статьи будет пошаговая  инструкция как это сделать.

Почему XRay Reality так популярен ?

Все дело в том, что Reality подходит для стран с самым высоким уровнем интернет-цензуры, сейчас его используют в Китае и Иране, он защищен от детектирования методами active probing. 

Распознать цензоров REALITY может еще на этапе TLS-хендшейка. Если REALITY видит, что к нему приходит его клиент, то сервер запускает для него VPN туннель, а если приходит любой другой запрос на 443 порт, то TLS-подключение передается на какой-нибудь другой реальный сайт, например, google.com, где цензор получит настоящий TLS-сертификат от google.com и вообще все настоящие данные с этого сайта.

Со стороны систем анализа трафика это выглядит как подключение к настоящему сайту, сервер отдает настоящий TLS-сертификат этого сайта, и вообще все (включая TLS fingerprint сервера) выглядит очень по-настоящему и не вызывает подозрений. 

Особенно приятно, что при этом производительность REALITY и скорость подключения у протокола действительно хороши, в сравнении, например, со связкой OpenVPN over Cloak.

Читать далее
Всего голосов 146: ↑142 и ↓4+161
Комментарии126

Чиним замедление YouTube на уровне роутера

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров502K

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

Что случилось?

Хорошо описано произошедшее здесь, на Хабре. Если совсем кратко, своими словами - во время установки SSL соединения в открытом виде домен передается к которому мы подключаемся(так называемое SNI). И если это googlevideo.com то начинают твориться "интересные вещи". Можно проверить это локально коммандами из статьи.

$ curl https://speedtest.selectel.ru/100MB -o/dev/null

Читать далее
Всего голосов 343: ↑341 и ↓2+395
Комментарии886

Эмиттерный повторитель — ключ к пониманию работы транзисторных каскадов

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров32K


Привет, эту публикацию я хочу посвятить людям, кто, как и я, любил в детстве читать журнал «Радио» и книги по электронике, но не смог сам разобраться в принципах работы усилителей на биполярных транзисторах. Тема полупроводников непроста и требует понимания многих чуждых для нашей повседневной интуиции физических процессов. Я помню момент озарения, когда я понял принцип схемотехнического решения эмиттерного повторителя, и именно с него пошло постепенное понимание, как функционируют и другие типы транзисторных каскадов. И я предполагаю, что эта тема может стать точкой входа в аналоговую электронику не только для меня.
Читать и смотреть схемы
Всего голосов 146: ↑144 и ↓2+184
Комментарии113

Windows — причина медленного интернета. Низкая скорость «загрузки», при нормальной скорости «скачивания»

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров35K

Если Вы являетесь клиентом провайдера МТС «домашний интернет» и у вас проблемы со скоростью «загрузки» — это статья для Вас.

И если Вы проверили всё, что могло быть причиной медленной скорости загрузки: интернет-кабели, роутер, патч-корды, а в вашей Windows проблема осталась, не спешите паниковать, проблема не у Вас, а у вашего провайдера.

Читать далее
Всего голосов 97: ↑93 и ↓4+106
Комментарии58

Как приручить нейросеть: практический опыт

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

Итак, в прошлой статье я уже немного рассказывал о том, что с LLM можно работать и даже построить определенный RAG. Как и обещал, перейдем к практике! :)

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

Читать далее
Всего голосов 26: ↑26 и ↓0+26
Комментарии16

Эволюция форматирования строк в Python

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров13K

Часто при написании кода на Python нам требуется представить объект определенным образом или включить значения каких-либо выражений внутрь строки. Для этого мы можем использовать форматирование строк. При этом в Python существуют сразу три способа форматирования строк:

оператор %  

строковый метод format()  

f-строки

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

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

Читать далее
Всего голосов 73: ↑71 и ↓2+76
Комментарии28

«Меня увольняют» или манипуляции HR и менеджеров, чтобы вынудить вас уволиться одним днём. На примере Рольфа

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров36K

Вкратце, для тех, кто ещё не слышал о новом скандале на IT рынке: Крупнейший автомобильный дилер «‎Рольф» увольняет айтишников без компенсаций.

В профсоюз обратились несколько сотрудников из компании и описали происходящее: +- 50 человек решили уволить потому что для них нет работы. Сотрудников по одному вызывали в кабинет где сидели 4 коллеги и рассказывали им о жизни, понятиях и отношениях: «ну мы же как семья». Всё ради того, чтобы получить подпись в соглашении о расторжения трудового договора одним днём. Без каких либо выплат. Спойлер — почти все сотрудники повелись на манипуляции и их уже уволили.

И что там дальше?
Всего голосов 171: ↑166 и ↓5+196
Комментарии198

Строим свой WYSIWYG с помощью LexicalJs

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

На хабре переодически появляются статьи про библиотеки для построение своего WYSIWYG редактора. Такая потребность появилась и в моей команде - «билайн дом», для создания новостей. В этой статье взглянем на них более общим взглядом и дополнительно разберем библиотеку LexicalJs

Читать далее
Всего голосов 11: ↑8 и ↓3+12
Комментарии10
1
23 ...

Информация

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