LINUX.ORG.RU

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

Достаточно ли одного C++?

Форум — Development

Доброго здоровьица всем!

Был сегодня на собеседовании на C++ джун-девелопера. В чём суть : вроде как более менее я прошёл собеседование, но меня отправили на доучивание. Состоялся приятный разговор с тех. директором, и он мне так сказал, что мол твой C++ это хорошо и прекрасно, но давай-ка ты подучишь современные штуки, и потом к нам приходи. Из ЯП он мне порекомендовал подучить питончик и Го.

Так вот, неужели C++ разрабов так ущемляют? Я просто отказываюсь верить, что плюсовики уже невостребованы и все хотят питонистов\джавистов. Почему именно эти ЯП?

 , ,

zamazan4ik
()

Сочетание различных библиотек C++

Форум — Development

Здравствуйте, ЛОРчане.

Из того, с чем я работаю и учусь работать, в повседневной жизни я часто сталкиваюсь с 3 библиотеками : STL, Qt, Boost. Так получается, что функциональность у них в некоторых вопросах пересекается, взять хотя бы те же потоки(boost.pthread, std::thread, QThread).

Так вот, чему отдавать предпочтение? То есть допустим, что так получается, что в проекте нужно использовать эти 3 либы(пусть предположим, что от буста возьмём Graph, от культи интерфейсы как мимнимум, да и много чего там вкусного есть, ну от STL я так думаю можно тоже чего-нибудь взять).

В своём проекте я часто сталкиваюсь с ситуацией, что надо что-то выбирать из STL или из Qt : std::string vs QString, std::vector vs QVector. Но я не могу выработать правильную стратегию, когда и что стоит применять? Стоит ли, если используешь Qt, стараться по максимуму её юзать? Или стоит писать на смеси STL и Qt? Это касается естественно не только этих либ, но и других.

Как правильно поступают в таких ситуациях?

 , ,

zamazan4ik
()

Посоветуйте книгу по С++11-17

Форум — Talks

По С++ 03 есть отличная книга Брюса Эккеля. Но она выпущена давно и там рассматриваются только старые плюсы. Хочется что-то такого же уровня, но по новым стандартам.

 ,

next_time
()

Что бы почитать написанного на C++11 и свежее?

Форум — Talks

Что бы почитать на C++11 и свежее из того, что более-менее прилично написано на ваш взгляд?

 , ,

peregrine
()

c++ вызов функций по строковым именам

Форум — Development

Дано:

if("FUNCTION1")
  FUNCTION1();
else if("FUNCTION2")
  FUNCTION2();
...
else if("FUNCTION100")
  FUNCTION100();

Собственно быдлокод же. Дерево сравнений не выровнено, одно и тоже пишется по сто раз...

А как красиво и без около хаковских штучек рантайма?

 ,

fornlr
()

Почему C++ сосет (редакция 2016 года)

Форум — Development

Интересное чтиво: http://dorinlazar.ro/why-c-sucks-2016-02-edition/

 ,

Oxdeadbeef
()

xterm vs. urxvt

Форум — General

Чем отличаются xterm и urxvt, as of 2012? За и против?

 ,

discordia
()

Palemoon 26.0

Новости — Open Source
Группа Open Source

Представлен новый выпуск браузера Palemoon, базирующегося на кодовой базе Firefox, но нацеленным на сохранение классического интерфейса, без инновационных (DRM, WebRTC, PDF.js, Australias и пр.) нововведений и с улучшенной поддержкой процессорных инструкций. Большинство дополнений Firefox работают под Palemoon, но существует собственный каталог с проверенными дополнениями.

В новой версии:

( читать дальше... )

>>> Подробности

 , ,

Deleted
()

Всё о зоопарке треев

Форум — Talks

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

  • XEmbed-трей (legacy трей):
    Самый первый стандарт трея в UNIX-системах, основан на технологии встраивания в X11. Великая суть: приложение создаёт окно-значок и встраивает в нужную область, просто и сердито.

    Недостатки:
    • Контролировать значок может только само приложение;
    • Не учитывается, что областей трея может быть несколько (на нескольких мониторах);
    • Привязано к X Window System.
    Достоинства:
    • Поддерживается почти везде (кроме Unity и WingPanel (Pantheon));
    • Поддерживают почти все приложения.
    Не самый плохой стандарт, вполне можно считать чем-то вроде UNIX-way, но сейчас как-то отжило своё (не UNIX-way, а XEmbed-трей).

  • SNI-трей (org.freedesktop.StatusNotifierItem):
    Стандарт, впервые представленный в KDE SC 4.4 для решения проблем с XEmbed-треем.
    Взаимодействие приложения с областью трея происходит через dbus, при этом сам значок рисуется областью трея, и при желании область может значок заменять на другой и т.д. Например, в KDE сейчас стандартные приложения типа KMix в трее имеют белые значки, которые делаются на уровне Plasma, а не на уровне самих приложений.
    Хоть StatusNotifierItem и был представлен проектом KDE, наибольшую известность получил в Ubuntu, ибо… в KDE особо не видно разницы :-).
    В свою очередь, в Ubuntu 10.04 были продемонстрированы библиотека libappindicator и ayatana-индикатор indicator-application, которые и реализуют SNI-трей. Собственно, в Ubuntu стал известен не столько StatusNotifierItem/appindicator, сколько сами по себе ayatana-индикаторы, но разработчики приложений таки опираются именно на appindicator.
    Также в Ubuntu есть плагин к трею Qt4 sni-qt, который все Qt4-приложения переводит на SNI-трей, но главная проблема — нужен патч kubuntu_14_systemtrayicon.diff, который так и не попал в upstream Qt4 (в Qt5 таки попал, но сам sni-qt ещё не адаптирован для него).

    Недостатки:
    • Меньшая поддержка, нежели у XEmbed-трея;
    • Меньшая поддержка среди приложений, что, впрочем, сильно улучшается со временем из-за того, что Unity не поддерживает XEmbed-трей.
    Достоинства:
    • Стандарт freedesktop.org;
    • Поддерживается Unity, MATE, Xfce (через indicator-application);
    • Поддерживается WingPanel, Cairo-Dock;
    • Поддерживается GNOME Shell (через расширение, если оно не отвалилось, опять);
    • Не привязано к какому-либо графическому серверу (да и что может помешать приложению из XWayland по dbus слать значок к области трея в Wayland :3?);
    • Гибкость и масштабируемость (отдельно учитывать в стандарте многомониторные конфигурации даже не нужно, всё отлично работает само по себе);
    • Поведение значка определяется самой областью трея.
    Можно сказать, это и есть идеальный трей, стандарт, на который и следует опираться, если не хочется оказаться за бортом (хотя бы вместе с X.Org'ом). Тем более, libappindicator вполне умеет рисовать и XEmbed-значки, если нет области SNI-трея.

  • Ayatana-индикаторы:
    Одновременно с indicator-application в Ubuntu 10.04 были представлены и сами индикаторы в рамках проекта Ayatana.
    Сказать — зачем, как-то особо не получается, все индикаторы (indicator-sound, indicator-bluetooth и т.д., да даже indicator-appmenu) вполне можно было оформить и в виде StatusNotifierItem.
    Большинство компиляций индикаторов, кстати говоря, даже содержат в большей степени appindicator'ы, нежели ayatana-индикаторы, ведь создаватели компиляций всё равно разницы не видят.

    Недостатки:
    • Не так и много дистрибутивов внесли индикаторы в свои репозитории (в openSUSE их нет, в Debian они есть);
    • Больше похожи на прослойку между Unity, MATE, Xfce и appindicator; в общем, не нужны;
    • Индикаторы зависят от Gtk3 или Gtk2 (причём, не все индикаторы имеют поддержку Gtk2; например, indicator-appmenu не имеет);
    Достоинства:
    • Поддерживаются Unity, MATE (через официальный mate-indicator-applet), Xfce (через xfce4-indicator-plugin);
    • Само собой, гибкость на уровне SNI-трея;
    • Привязки к графическому серверу также нет (ayatana-индикаторы, скоро на всех Mir'ах страны!).
    Малонужная штука, но из-за того, что indicator-applet (который и был форкнут в mate-indicator-applet) и xfce4-indicator-plugin были написаны в рамках Ubuntu… в общем, если хочется SNI/appindicator на MATE и Xfce (а кто его не хочет :3?), то и ayatana-индикаторы тоже нужны.

 , , ,

Darth_Revan
()

Основатель Debian Ян Мёрдок совершил самоубийство

Форум — Talks

Некоторое время назад пользователи Reddit обратили внимание на блог и твиттер Яна, где появилась серия агрессивных постов и выразили беспокойство о его психическом здоровье. К сожалению, ничего cделать уже нельзя - Ян покинул нас в ночь на понедельник.

Памятная статья о Яне в блоге проекта Docker.

Rest In Peace.

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

 ,

Deleted
()

Latex: вопросы по созданию таблиц

Форум — Desktop

Как известно в латехе самое сложное это таблицы. И в последние два дня они заставили меня поволноваться; в целом получается, но ещё далеко не всё, чего хотелось бы. И сейчас у меня три вопроса, по которым прошу помощи:

  1. Как менять ширину ячейки независимо от ячеек в других строках, над и под ней, не портя при этом центрирование текста? Это вообще возможно?
  2. Как лучше всего выравнивать текст по вертикали? Я за два дня просмотрел много руководств, начинаю от замечательного самоучителя Львовского и заканчивая заметками в бложиках, и пробовал разные способы, включая пакет array и колонки типа m{}, \parbox и не помню что ещё, но у меня всё это почему-то не сработало (может, руки кривые?) А нужен простой, удобный и понятный способ вертикально выравнять текст в ячейке по линейке.
  3. Ну и последнее на сегодня. Можно ли убрать из заголовка таблицы слово “таблица”?

 , ,

Dmitry_Sokolowsky
()

Почти быстрый редизайн BunsenLabs — Debian

Галерея — Скриншоты

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

  • тема браузера и gtk — Zukitre
  • тема openbox — Zukitre (с изменением кнопок закрытия, на Arc)
  • оформление редактора — Soda
  • conky — Harmattan
  • оформление Tint2 — Numix tint2
  • оформление lor — LOR Light

Скрины:
Раз
Два
Три
Четыре
Пять
Еще и Еще Разок.

Обои все из гугла.

>>> Просмотр (1366x768, 620 Kb)

 , , , ,

stupid
()

Пользователям KDE Plasma 5 доступен прокси из системного трея XEmbed в SNI

Новости — KDE
Группа KDE

David Edmundson, один из разработчиков KDE, начал проект «xembed-sni-proxy». Эта программа позволяет пользователям KDE Plasma 5 использовать приложения, поддерживающие только старый протокол системного трея (XEmbed), так же просто как и приложения, использующие новую спецификацию StatusNotifierItem.

( читать дальше... )

>>> Подробности

 ,

Tehnick
()

История о том, как я за $350 собрал мощный и практичный ноутбук

Форум — Linux-hardware

Вот фотография моего ноутбука: http://i.imgur.com/UTvyDF7.jpg

Я купил Thinkpad T420 за $220, состояние официально refurbished на заводе, чем он отличается от нового — я так не понял, потому что абсолютно все было новым: корпус, батарея, клавиатура, матрица, внутренности, ни тачпадом, ни даже винчестером не пользовались никогда (7 циклов вкл.выкл).

Конфигурация на момент покупки была такова:

  • i5-2520M (2 ядра, 4 потока)
  • 8GB RAM (2х4GB)
  • 320 GB HDD (7200 rpm)
  • 1366x768 14" матовая

Я продал: процессор i5-2520M ($30), матрицу с кабелем шлейфом ($30), а также память ($35), благодаря чему выручил: $95.

Я купил: 4х-ядерный i7-2720QM ($95), качественную Samsung HD+ 1600x900 матрицу с кабелем-шлейфом ($53) и 16GB памяти ($77), в сумме затраты: $225

Итак, за $350 я получил:

  • i7-2720QM (4 ядра, 8 потоков)
  • 16GB RAM
  • 320 GB HDD (7200 rpm)
  • 1600x900 14" матовая

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

Смог бы я купить такую спеку за $350? Сомневаюсь.

Разумеется, я вставил вместо сидирома hdd-caddy, куда поставил ssd, как и в hdd-слот, а также в mini-pcie слот поставил бывший у меня mini-pcie 64 гиговый ssd. Осталось заменить стоковый wifi, на карточку с a/b/g/n, а то стоковый работает только в b/g/n.

// а да, на этой спеке изкоробочно работает как свежайший OS X 10.11.1 El Capitan, так и гента, причем работает абсолютно все.

 ,

kep
()

apulse

Форум — Development

Everyone! Listen up! Today... today...

$ apulse <program-name> [program parameters]

https://github.com/i-rinat/apulse — эмуляция PulseAudio. Когда приложение пытается загрузить libpulse.so, ему подсовывают её версию от apulse, в которой реализована часть функций, достаточная, чтобы запустить Skype и некоторый другой софт.

 ,

i-rinat
()

Открытое образование — образовательный проект, где представлены бесплатные курсы ведущих вузов России

Новости — Документация
Группа Документация

Открыт образовательный проект, где представлены бесплатные курсы ведущих вузов России для каждого без ограничений.

Направления подготовки:

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

Всего 46 курсов.

Лекции читают преподаватели из ВУЗов России: МГУ, МФТИ, НИТУ «МИСиС», НИУ ВШЭ, Политех, СПбГУ, Университет ИТМО, УрФУ.

Твое расписание: Обучение может проходить в любое время и в любом месте.

Открытые курсы: Курсы бесплатны и доступны каждому без ограничений по ЕГЭ и базовому образованию.

Оценку — в зачетку! Возможность признания результатов обучения в любом университете РФ.

Регистрируйтесь. Надеюсь, будет интересно.

Подробности на сайтах http://npoed.ru и https://openedu.ru

>>> Регистрируйтесь

 

alkash
()

C++/D младший разработчик/стажер (СПб)

Форум — Job

Для разработки компонента системы средней сложности требуется помощник. Система на С/С++, прототип компонента, тесты и инструменты на D. С точки зрения computer science система простая, сложность лежит в предметной области. Чтобы сотрудник мог сосредоточится на предметной области и нужен помощник. Обязанности:

  • развитие внутреннего инструмента для визуальной отладки (modern opengl, простая профессиональная графика без освещения и прочей красоты);
  • развитие тестов (функциональные тесты развиваются вместе с компонентом и сейчас их нужно выделить в отдельную сущность плюс на носу интеграционные; разрабатывать тесты не требуется, достаточно их реализации);

Требования:

  • знание linux cli, git, C++, D
  • желание развиваться (данная позиция не более чем промежуточный этап в карьере программиста, если вы готовы сидеть на такой позиции вам не к нам)
  • чтение документации на английском языке

опыт и образование менее значимы чем реальные знания

Желательно:

  • cmake
  • jenkins
  • github/gitlab
  • modern opengl
  • immediate gui
  • метапрограммирование (D)
  • твер и матстатистика будут заметным плюсом (ну а вдруг?)) )

Во всех требованиях достаточно базового уровня. Главное, чтобы понятия о «базовости» у нас совпадали. Код тоже простой.

График работы: вилка 30-40 килорублей, поэтому график очень гибкий, трудоустройство официальное, полное или частичное (как желаете), в принципе возможна удаленная работа, но должна быть возможность приехать в офис, работа стабильная

Контакты: Помощника ищу сам для себя, так как опасаюсь что найдут мне кого попало на эти 30-40 денег, поэтому почта - личная drug2004[at]bk[dot]ru

 , ,

yetanother
()

По команде apt-get source linux скачиваются исходники из jessie-backports

Форум — General

Хочу скачать исходники Debian-овского ядра, выполняю apt-get source linux, и скачиваются исходники версии 4.1.6 из jessie-backports, хотя в jessie версия 3.16.

apt-cache policy:

http://pastebin.com/5ybhBZxC

Не подскажете, почему так?

 

Norong
()

Опубликованы C++ Core Guidelines

Форум — Development

Бьерн Страуструп и Герб Саттер опубликовали в открытом доступе объемный документ, содержащий основные принципы разработки на современном С++. Авторы надеются, что следование данным принципам позволит разработчикам эффективно использовать язык и писать безопасный и поддерживаемый код.

C++ Core Guidelines: https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md/

 ,

nonimous
()

Поиск инструмента визуализации зависимостей между классами с++

Форум — Development

Не первый раз пытаюсь найти, но ничего не выходит, последняя надежда на вас :)

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

Я хочу навести там порядок. Для начала хочу просто изучить зависимости между классами. Для этого мне нужна программа, которая на вход принимает папку, рекурсивно внутри нее изучает все существующие сущности и в качестве выхлопа выдает в идеале UML.

Можно конечно и самому реализовать данную программу, задача выглядит на первый взгляд не столь сложной, однако с визуализацией придется попотеть и ей заниматься крайне не хочется

Кто какие средства знает на эту тему??

 

Burns
()