LINUX.ORG.RU

Избранные сообщения ossa

C++ от новичка до профи

Форум — Development

попался в гугло-новостях такой список ресурсов по сабжу.

Есть всякие ссылки на амазоны codeademy, но м.б. если кто-то даже не представляет, как влезть в С++, но очень хочет, может пригодиться.

https://www.codelivly.com/resources-to-learn-cpp-from-complete-beginner-to-advanced-level/

 ,

seiken
()

Бинарные форматы хранения b+tree

Форум — Development

Добрый день! Я в качестве хобби пилю БД для расширения своего кругозора. Сделал b+tree структуру для индекса, но запутался в том как ее хранить и модифицировать на диске. Какие есть best practices разработки бинарных форматов, книги об этом? Я в этом новичок, сильно не смейтесь, на работе json-ы перекладываю да легаси бизнесовое фикшу.

 , ,

matroskin
()

Стали доступны видео докладов с C++ CoreHard Spring 2019

Форум — Development

На YouTube на канале corehard стали доступны видеозаписи следующих докладов с прошедшей весной конференции C++ CoreHard 2019:

 

eao197
()

Стали доступны видео докладов с C++Russia 2019

Форум — Development

На YouTube на канале C++ User Group стали доступны видеозаписи следующих докладов с прошедшей весной конференции C++Russia 2019:

 

eao197
()

Дешёвый VPS.

Форум — Talks

Здравствуйте. Выбираю недорого VPS(до 1 евро в месяц) вне СНГ, будет использоваться для VPN и всяких «опытов». Нужен хотя-бы один внешний IPv4 адрес(не за NAT). С ОС Debian 8 64bit/Ubuntu 16.04 64bit Остановился на:

1) virmach.com CPU: 1 x 1GHz RAM: 256MB Storage: 15GB Bandwidth 500GB $10.00 Annually

2) billing.time4vps.eu CPU: 1 x 2.40GHz RAM: 512 MB Storage: 20 GB Bandwidth: 500GB €11.88 Annually(за два года 15.84)

3) arubacloud.com CPU: 1 x 2.26GHz(насчёт частоты не уверен) RAM: 1024 MB Storage: 20 GB Bandwidth: 2000 GB €1*12

Хочу услышать людей, которые пользовались этими VPS(подводные камни, uptime, работа поддержки и т.д.).

 ,

antoshka117
()

Простой пример VPN client/server

Форум — Development

Доброго всем дня!

А что посоветуют благородные доны почитать по поводу написания простейшего клиента-сервера VPN? Как понимаю, нужно рыть в сторону /dev/tun. Нашел какие-то примерчики, но с теорией скупо. Кинулся, было, в сорцы OpenVPN, но там черт ногу сломит. Может какие совсем простые примеры есть?

PS: ссылка при постинге www.linux.org.ru/wiki/en/lor-faq ведет на 404

 ,

seryoga
()

Обработка массива из пробки.

Форум — Talks

Оклеил крышку ноутбука пробкой - нарезанными «кругалями» из-под винных бутылок. Теперь нужно как-то привести это дело в ровный зачищенный вид.

Первая мысль - мелкая шкурка. Но пока не пытался. Есть ли какие-нибудь соображения по этому поводу?

Перемещено leave из general

 ,

Deleted
()

ZeroNet стал намного лучше...

Форум — Talks

Я щупал ZeroNet около полугода назад, весной. Тогда это была скорее демка концепции, непрактичная и кривая. Было непонятно, нафига оно и что с ней делать.

Пару дней назад попробовал снова и обнаружил, что эта p2p-сеть стала НАМНОГО приятнее. Появился свой «твиттер» (ZeroMe), работает всё очень шустро, без глюков. Обновления происходят прямо на глазах, без лишних F5. Блоги удобно свои создаются и работают. Просто клонируешь понравившееся приложение стороннее и начинаешь наполнять своим контентом. Посмотрел структуру приложений — устроены просто (html+js+sqlite). Надо будет попробовать снаружи в них соваться для интеграции с Infonesy.

ZeroMe, ИМХО, очень хорошая альтернатива микроблогам. Надо как-то коммьюнити только собирать :) Хотя стартовать и сейчас просто — есть лента всех сообщений всех пользователей ZeroMe, так что написанное тобой кто-то обязательно прочитает.

Хорошо работает не только на локалхосте, но и через гейты. Например, мой ZeroMe («твиттер»): https://www.zerogate.tk/Me.ZeroNetwork.bit/?Profile/1BLueGvui1GdbtsjcKqCf4F67...

А вот — тестовый блог: https://www.zerogate.tk/1MaQ4W5D6G52TpBfPACU9k9QcB1DxvHZ5v

В общем, приглашаю пощупать. Устанавливать просто: https://zeronet.readthedocs.io/en/latest/using_zeronet/installing/

sudo apt-get install msgpack-python python-gevent
wget https://github.com/HelloZeroNet/ZeroNet/archive/master.tar.gz
tar xvpfz master.tar.gz
cd ZeroNet-master
./zeronet.py

 , zerome, ,

KRoN73
()

пересылка сообщения по графу узлов в сети

Форум — Development

Вот есть, допустим, такой граф узлов в сети, которые имеют возможность пересылать сообщения друг другу напрямую:

 A------C
 ║      |
 B------D
Связность узлов задает некий мастер-узел. В данном случае выставил вручную.

Узлы А и В находится в одной группе (потому что, например, находятся географически рядом), С и D для этой группы узлы удаленные. Узлы C и D единственные в своих группах.

Далее отправляется сообщение из узла В на все остальные узлы. Для этого сначала из В посылаем сообщение в А, как в близкий узел. Потом из В в D как в связанный с В «дальний» узел. В это время А получает сообщение от В с пометкой, что оно «широковещательное» и отсылает его в свой «дальний» узел, т.е. в С.

Теперь сообщение есть во всех узлах, но С и D этого не знают. Поэтому они отсылают сообщение дальше (C в D и А, D в В и С), получают ответ, что такое сообщение в этих узлах уже есть и прекращают пересылку. На этом все.

Такая схема как будто лучше, чем просто из узла В переслать сообщение сразу во все имеющиеся узлы. Особенно, если таких узлов, например, не 4, а тысяча. Но есть явная избыточность пересылки с проверкой, что такое сообщение уже принято в узле.

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

 ,

jcdr
()

Присоветуйте, чем бы рисовать графики в режиме реального времени.

Форум — Development

Собственное задачка проста, как 5 копеек. Нужно отрисовать простенький график, на котором будут отображены частоты возникновения различных событий. Тут подошел бы и GNU Plot. Но надо через каждую дельта Т «освежать» график. С GNU Plot это будет выглядеть не очень хорошо. Какие еще есть альтернативы?

 ,

zloy_starper
()

радиолюбитель starter kit

Форум — Talks

Раздел физики «электричество» знаю чуть более, чем никак.

Опыт пайки - оторванные провода в фонариках припаивать.

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

Посоветуйте, пожалуйста, с чего начать, какой литературой и материалами запастись, что надо иметь. Как поле для экспериментов имею C.H.I.P..

 , , ,

Deleted
()

Выпущен смартфон Intex Aqua Fish с Sailfish 2.0 и стоимостью менее 90$

Форум — Talks

Ранее сообщалось, что данный смартфон будет стоить порядка 150$, однако на днях он появился на индийском ebay за ~82$

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

  • CPU: Snapdragon 212 (4 ядра Cortex A7, 1.3 GHz);
  • GPU: Adreno 304;
  • Память: 2GB RAM + 16GB встроенной + возможность установки microSD карты;
  • Экран: 5" IPS 1280x720;
  • Аккумулятор: 2500 мАч;
  • Поддержка 2-х SIM-карт;
  • Тыловая 8 мегапиксельная и фронтальная 2 мегапиксельная камера;
  • Поддержка Bluetooth 4.0, GPS, 3G, 4G LTE.

Подробности

Перемещено Falcon-peregrinus из pda

 ,

leg0las
()

VPN-провайдер ушел из России

Форум — Talks

Компания Private Internet Access, предоставляющая услуги защиты интернет-трафика с помощью технологии VPN, объявила накануне о прекращении деятельности на территории России. VPN-провайдер объяснил решение тем, что ряд серверов “вероятно”, захвачены властями.

В Private Internet Access не уточняют, были ли серверы физически захвачены, либо компания утратила над ними контроль по другому сценарию. При этом сказано, что пользовательская информация на “захваченных” серверах не была скомпрометирована, так как компания принципиально не хранит логи. “Узнав о случившемся,мы немедленно отключили наши российские шлюзы и больше не будем вести бизнес в регионе”, — говорится в сообщении.

http://hitech.vesti.ru/news/view/id/9698

https://geektimes.ru/post/278362/

Deleted
()

Посоветуйте игр для встроенной видеокарты Intel HD 4600 / Intel HD 4400/ Intel HD 530

Форум — Talks

Главное, чтобы хорошо шли в GNU/Linux.

Wine не надо — я его удалил, когда мне WoW:BC 2.4.3 надоел =)

 ,

int13h
()

Нормальный телефон взлетит?

Форум — Talks

- Четыре сантиметра толщина
- Эта толщина потрачена на мощную съемную батарею и нормальное стекло
- Набор батарей для быстрой замены
- Монохромный экран (скорей всего LCD, но с натяжкой можно eink)
- Свежий Android
- Крепление на пояс, бицепс, металлическая цепь для крепления на шею
- Опционально: нормальный динамик и микрофон - места хватит

- Работает дофига, всё время сколько есть

Взлетит?

Где правильно покупать компоненты для сборки этого чуда? Хочу зделать!

 идеи для стартапа

stevejobs
()

Сделать из vim C++ IDE, подскажите, пожалуйста, список дополнений

Форум — Development

Предъистория: несколько раз пытался пользоваться vim и каждый раз бросал. Всякий раз он мне казался неудобным. В этот раз плюнул на стандартные настройки, перенастроил его по-нормальному и да, теперь им сходу стало можно пользоваться как редактором текста. В частности: перенёс перемещение курсора с hjkl на esdf и esc на shift+space. Также, курсор при движении влево-вправо теперь не останавливается на конце строки.

Вимом стало возможно нормально пользоваться! Теперь, я хочу затюнить его под С++ кодинг.

Для этого мне минимально необходим следующий функционал:

  • переключение между заголовочником и исходником,

  • переход к определению функции под курсором,

  • переход к объявлению функции под курсором,

  • переход к предыдущей позиции курсора (не используя закладки),

  • плагин для содержащания файлов проектах,

  • переход к файлу, указанному директивой include под курсором,

  • аналог вкладок в других редакторах и переключение между ними,

  • подсветка синтаксиса,

  • подсветка всех слов аналогичных тому, что под курсором (по клавише),

  • инкрементальный поиск,

  • поиск во всех файлах проекта с подсветкой найденного,

  • переименование метода класса в исходнике с автоматическим изменением сигнатуры в заголовочнике,

  • astyle (ну это просто),

  • автодополнение (уже подсказали в другой теме, не пишите про него),

  • дебаггер (с вычислением символа под курсором и переходом из одной точки дебага в другую),

  • листинг ошибок компиляции со списком для удобного перехода на строку с ошибкой (такая штука, которая внизу экрана любой обыяной IDE).

  • Ну и, конечно, сохранение/открытие проекта, быстрый запуск компилятора и скомпилированного файла.

Ну вот и всё. Вроде ничего не забыл.

 ,

next_time
()

Qt for Android, но не для людей?

Форум — Development

Имеем: android ndk & sdk, Qt 5.6 for Android, QtCreator.

Создаю QtQuick хэлоуворлд для андроида. Всё компилируется на десктопе и кросскомпилируется для андроида. Дальше начинается:

  • При попытке запустить на эмуляторе android 5.1 - отваливается при деплойменте.
    20:22:32: The process "/media/igor/data/devel/Qt5.6.0/5.6/android_x86/bin/androiddeployqt" exited normally.
    Error while building/deploying project qmldroid (kit: Android for x86 (GCC 4.9, Qt 5.6.0))
    When executing step "Deploy to Android device"
    Приложение на эмулятооре не появляется. Прочитал тут, что может Qt 5.4 не очень хорошо деплоится с 5.1. Ок, думаю, наверное для Qt 5.6 еще не починили...
  • Пробую собирать и задеплоить на 4.4... Компилируется, вроде даже деплоится, но видимо как-то не полностью. В итоге приложение вылетает.
    20:07:38: Packaging error: Command "/media/igor/data/devel/android_sdk/android-sdk-linux/platform-tools/adb -s emulator-5554 pull /system/bin/app_process32 /home/igor/projects/qml/build-qmldroid-Android_for_x86_GCC_4_9_Qt_5_6_0-Release/app_process" failed.Exit code: 1
    и
    F/libc    ( 1961): Fatal signal 8 (SIGFPE) at 0xb77c9ac8 (code=1), thread 1985 (xample.qmldroid)
    

Что я делаю не так?... Есть те, у кого оно работает? :)

upd: Ради прикола попробовал под ведной поставить чистое окружение - заработало. Теперь вот думаю... что ж я поломал под онтопиком.

upd1: Всё, разобрался. Проблема была очоевидно о в том, что Qt не правильно установился. Когда ставил первый раз, то использовал offline installer. Сейчас переставил с помощью online-instaler'а и таки всё заработало.

 ,

invy
()

С чего начать разработку для ПЛИС

Форум — Development

Всем доброго дня.

Решил в отпуске попробовать пописать что-нибудь для ПЛИС.

Хочу советов от знающих-умеющих с чего проще всего было бы начать.

Конкретно прошу посоветовать:
1. Устройство. Крайне желательно, чтобы его можно было приобрести в СПб, т.к. отпуск начинается уже в понедельник и ждать посылку из китая времени нет совсем.
2. Средства разработки. Желательно со свободным исходным кодом и непременно поддерживающие работу под GNU/Linux.

Все спасибо за советы.

 ,

trex6
()

Уникальный ID для класса.

Форум — Development

Приветствую.

Вот какая фигня. Есть интерфейс, например

struct A {
    virtual ~A() { }
    virtual void somecall( ) = 0;
};
и есть несколько его релизаций, которые хранятся в мапе. в коде получение определенного объекта выглядит как-то так
class B: public A {} 
.....

mumap.getinst<B>( ).somecall( );

вызов getinst находит в мапе объект, приводит его к требуемому классу (static_cast) и возвращает ссылку нужного типа. колючем в мапе сейчас обертка над std::type_info, что не очень хорошо, поскольку можно сделать -fno-rtti и typeid будет недоступен.

Вопрос в том, как бы так сгенерить для каждого такого класса-наследника от A уникальный id и пользовать его в качестве ключа.

рассматриваю пока варианты:

- некое имя, которое прописывать к каждому классу (плохо)
- хеш от имени файла (макрос __FILE__). Да, каждый наследник реализован в отдельном. Не переносимо (?)
- случайное число, сгенеряченое при старте и лежащее в статическом члене + проверка на то, что такое уже, возможно попадалось и перегенерячивание заново при заполнении мапы. (хм, даже не знаю).

какие есть еще варианты?

 

seryoga
()

Есть ли такая структура данных?

Форум — Development

Мне нужна такая структура данных, которая бы позволяла делать эффективно следующие две вещи. Эффективно в смысле, как минимум, со сложностью O(log n) относительно количества данных.

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

Второе. Эта структура должна позволять эффективно удалять заданный элемент по значению. Для определенности допустим, что существует отношение упорядоченности и для значений элементов, т.е. можно строить двоичные деревья со сравнением.

Сейчас есть хип (императивный или чистый функциональный - без разницы). На основе его легко строится эффективная очередь с приоритетами. Но вот, если вводить удаление полным перебором, то там сразу возникает сложность O(n), что совсем не комильфо.

Может быть, есть более эффективный способ? Что-то ничего умного в голову не лезет.

 ,

dave
()