Задать вопрос
  • Возможно ли "соединить" два файла, не перемещая данные?

    @tex0
    Задумайся над смыслом понятия "дефрагментация диска".
    И как сказал выше Hydro - в ЮзверьМоде ты такого не сделаешь. Нужно делать в KernelMode. Кури в сторону организации хранения данных (файловые системы).
    Ответ написан
    Комментировать
  • Через перенаправление почты в gmail получаю чужие письма и нотификации. Что делать?

    saboteur_kiev
    @saboteur_kiev Автор вопроса
    software engineer
    Разобрались.

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

    Кроме того, гугл игнорирует точки в емайле. Таким образом name.familyname1@gmail.com и namefamilyname1@gmail.com - для гугла один адрес, а зарегистрировать он позволяет оба.
    Ответ написан
    2 комментария
  • Как развить программистское мышление?

    Neuroware
    @Neuroware
    Программист в свободное от работы время
    Соглашусь с Spetros, умение гуглить жизненоважный навык в программировании) 99% любых задач в том или ином виде уже решались до вас, по 70% уже есть хорошо расжованное описание, 50% есть еще и инструкции, поэтому если у вас не удается найти решение это либо плохо искали, либо неправильно поставлена задача.
    По части второго в программировании нужно уметь разбивать задачу на части (подзадачи). То есть скажем задача найти подстроку во всех файлах папки, сходу не ясно как можно искать сразу во всех файлах, очевидно нужно искать в каждом по очереди, если файлы мелкие то все нормально, можно считать их целиком и потом спокойно делать в них поиск, но если они весом под 24Гб, в таком случае нужно читать файлы построчно и делать поиск подстроки в каждой отдельной строке и т.д.
    Если "в голове" не получается построить полное решение конкретной подзадачи, нужно разбить ее на функциональные части и каждую из них решать как отдельную подзадачу. Вцелом любой, даже неимоверно сложный продукт с миллионом строк кода это лишь совокупность маленьких фрагментов, каждый из которых можно понять.
    Ответ написан
    1 комментарий
  • Как хранить большое количество элементов в массиве?

    @endemic
    Если я не ошибаюсь, в качестве индекса массива используется size_t, который соответствует максимальному размеру памяти для процессора с даннйо битностью. То есть описанная вами ситуация не может произойти в принуципе.

    ru.cppreference.com/w/cpp/types/size_t
    Ответ написан
    Комментировать
  • Как определить возвращает ли экземпляр Delegate значение?

    Mrrl
    @Mrrl
    Заводчик кардиганов
    Попробуйте так:
    static bool IsAction(Delegate x){
        return x.Method.ReturnType==typeof(void);
      }

    Правда, я не все возможные делегаты проверял.
    Ответ написан
    Комментировать
  • Как в триггерах ссылаться на таблицы и поля этих таблиц?

    @Sumor
    Для SQLServer это таблицы inserted и deleted Использование таблиц inserted и deleted.
    Подумайте об использовании транзакций вместо триггеров. Особенно если предполагается отмена действия в триггере по какому-либо условию.
    Триггер отделён от логики добавления данных о платеже и изучающему ваш код будет неочевидно почему изменилась таблица Долг.
    Триггеры можно случайно/специально/для отладки отключить и вы получите кучу проблем.
    Ответ написан
    Комментировать
  • Передача объекта в конструктор по ссылке. Не компилируется. Почему?

    @MiiNiPaa
    Ссылки нужно инициализировать. Нельзя написать просто
    int& x;
    x = 10;
    Нужно указать на что будет ссылаться x. В вашем случае нужно использовать member initializer list (вообще это хорошая идея инициализировать всё там чтобы избежать оверхэда):
    Person::Person(string name, Address& address) :
        _name(std::move(name)), //Поддерживаем move-семантику
        _address(address)
    {}
    Ответ написан
    Комментировать
  • В чем преимущества СУБД Oracle перед MySQL, PosgreSQL?

    sim3x
    @sim3x
    MySQL это для школьников и блокнотиков
    а еще для танчиков WoT, где варгейминг хранит 400Гб данных пользователей
    // правда не в мускуле, а марииДБ

    А яндекс уходит от Оракла на постгрес, тк оракл не дает своих исходников, а им очень хочется посмотреть почему у них все тормозит

    Тот кто дорос да уровня
    профи
    вообще очень осторожно относится к понятию
    только Х
    Ответ написан
    Комментировать
  • Почему так популярен .NET/C#/ASP MVC?

    @PokimonFromGamedev
    Ведущий разработчик Kotlin
    Почему так много вакансий с .NET/C#/ASP MVC?

    Хорошая платформа, ничем не уступающая остальным.

    IIS как application server неплохо справляется.
    Windows как сервер работает не хуже Linux.

    Микрософт активно развивает платформу и сервисы. Значит в будущем будет еще больше вакансий и проектов!

    Ну и C# как язык сейчас наверное топ1.
    Тут тебе и LINQ и деревья выражений и асинхронное программирование и динамическая типизация. А сейчас еще компилятор перепишут и вообще будет хорошо.
    Ответ написан
    Комментировать
  • Восприятие материала - есть ли правильный и не правильный путь?

    IonDen
    @IonDen Куратор тега IT-образование
    JavaScript developer. IonDen.com
    Это нормально. Просто читать книгу по программированию - бесполезно на 99%. Книжки нужны в двух ситуациях:

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

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

    Так что не парьтесь, учитесь так как вам удобно. Главное больше практики, как можно больше. Любые знания должны быть тут же закреплены. Любая новая концепция и вы должны написать с её помощью пару тройку реальных сложных задач, чтобы усвоить. Смотреть видяшечки и читать книжечки просто так - бесполезно.
    Ответ написан
    2 комментария
  • Хочется хорошо и качественно разрабатывать, но как?

    zenden2k
    @zenden2k
    PHP & C++ programmer
    >Я - самый обыкновенный мальчик-самоучка,
    Мальчик - это сколько лет? Просто я тоже считаю себя мальчиком, правда мне 26 лет и за плечами множество сделанных проектов.

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

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

    >Да, я прочел не одну книгу по программированию,
    Я программирую уже 13 лет и за это время дай бог чтобы хотябы 1-2 книги полностью прочитал. До какого-то момента вообще любил программировать "методом тыка", но потом неожиданно для себя обнаружил, что со знанием матчасти это получается быстрее.

    >Мне очень стыдно, но ни что такое системы контроля версий, ни фреймворки, ни какие-либо тонкости я, по сути, не знаю.

    Стыдиться тут нечему

    >что годы идут, а прогресс все менее заметен.
    Могу сказать по опыту, что спешить некуда! Вам это еще успеет надоесть. Успеете еще посидеть над кодом в офисе по 8 часов в день.
    Ответ написан
    Комментировать
  • Как правильно перевести всю инфраструктуру на виртуализацию?

    athacker
    @athacker
    1) Поддерживаю ораторов, которые говорят о разворачивании машин с нуля в виртуалке, без попыток конвертации P2V. При конвертации могут разные артефакты всплывать, ну нафиг. Грамотно спланированный перенос не потребует даже даунтайма сервисов.

    2) СХД отдать только под виртуализацию, никаких бэкапов там. В вашем случае -- это примерно как из пушки по воробьям. Под бэкапы -- вытащить все винты из ваших пролиантов и сложить их на один какой-то сервак, и на его основе сделать бэкапохранилку. ESX может грузиться и по iSCSI, и с флэшки. У пролиантов есть отсек для SD-карточки, можете туда флэшку с ESX воткнуть. Иными словами -- для хостов виртуализации жёсткие диски не нужны.

    3) Kerio -- фу-фу-фу! :-) Карточки вам не нужны, аппаратный роутер, в принципе, тоже. Каждого провайдера в отдельный VLAN, оба VLAN -- в виртуалку, на виртуальный сервер с FreeBSD, например. И всё, маршрутизируйте как угодно.

    4) QNAP в качестве СХД -- фу-фу-фу! Уж лучше самосбор какой-нибудь (сервак с большой дисковой корзиной, или отдельно пара серверов+корзинка DAS), с FreeBSD и ZFS внутри, да даже с виндой. Оно и дешевле обойдётся, и обслуживать проще. У NAS-ов из дешёвого сегмента артефакты бывают очень разнообразные и зело причудливые. Отваливаются LUNы, слетают права, вообще из сети пропадает. Короче, нахлебались, было дело.

    5) Подумайте в сторону винды. Учтите, что Windows 2012 R2 Standard в качестве хоста виртуализации (Hyper-V) даёт возможность внутри себя виртуализовать 2 виндовых сервера по этой же лицензии. Иными словами, если у вас 3 лицензионных Win2012 R2 стоят на хостах, то с их помощью вы можете виртуализовать 6 серверов с виндой, не покупая никаких доп. лицензий.

    Hyper-V умеет запускать виртуалки прямо на файловых шарах SMB 3.0. То есть, не нужно iSCSI, FC и прочих модных технологий из области NAS/SAN. Достаточно Win2012 R2 и открытой файловой шарой на нём. Винда умеет технологию Storage Spaces. Которая (технология) умеет даже автоматически tiering, причём из коробки. QNAP, который это умеет, будет стоить тысяч под 300 рублей. Это без дисков.

    Исходя из набора сервисов, который у вас есть в сети, вам, в принципе, СХД и не нужна. Не те скорости, не те объёмы. У вас же нет 10-гигабитных линков, правильно я понимаю? Посмотрите вместо СХД на какие-нибудь сервера с большими корзинками. Ну, допустим, от 8 до 24 дисков. 8 есть практически у всех, у Dell есть 10 и 20 дисков, у STSS есть сервера с корзиной на 24 диска (вот так оно выглядит). Либо на DAS (direct attached storage). Нужен сервер (практически любой), в сервер SAS-HBA адаптер с парой внешних портов, и корзинка DAS, которая SAS-кабелями подключается к этому адаптеру.

    Примите во внимание также, что брендовые СХД (даже QNAP) -- это вещь в себе, и диагностику там провести достаточно сложно. Поэтому обычно покупается поддержка у вендора. А она стоит тоже порядком денег. А без поддержки самому лазить в потроха СХД -- чревато граблями вооооооот такого размера. Самосбор же проще диагностировать и проще чинить (менять компоненты), если вдруг что.
    Ответ написан
    19 комментариев
  • Что означает фраза " учите не язык, учите технологию "?

    @bromzh
    Drugs-driven development
    Просто язык без экосистемы ничего не стоит. Поэтому несмотря на то. что Lisp, OCaml, Haskell, например, имеют кучу крутых фич, все пишут на "примитивной" яве, потому что количество библиотек, фреймворков и технологий для неё огромно. Не было бы JavaEE со Spring, то её популярность была бы в разы меньше. Ruby стал популярным из-за RoR (на тот момент это было действительно что-то новое).
    Технологии более универсальны, языки вторичны, это всего лишь инструмент.
    Ответ написан
    1 комментарий
  • Можно ли мигрировать с win xp sp3 x32 на x64 сохранив установленные программы?

    @LiguidCool
    1) Забудте про ХР 64 - это мертворожденное дитя.
    2) Переносимость программы зависит в первую очередь от самой программы.
    3) Обновлять ОС с 32 на 64 по моему нельзя, т .е. вам придется поставить ось снуля и тащить софт ручками. Офис например так не перенесешь.
    Зачем мне ХР не спрашивайте.

    Да и так все понятно. Реанимация какой-нить рухляди с мегаважной программой для подсчета числа конца света, купленной еще в 95 году. Ни ключей, ни дистриба нету. Угадал? ;) Ну или по аналогичному подходу железка типа аппарата МРТ за пяток лямов.
    Тут есть золотое админское правило: РАБОТАЕТ - НЕ ТРОГАЙ!
    Ответ написан
    Комментировать
  • Как правильно писать cover letter на upwork?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Просто конкуренция очень высокая, нужно щелкать усерднее. Просто представьте что на каждый ваш клик, по этой же кнопочке кликает 1000 индусов.
    Ответ написан
    2 комментария
  • Чем заменить оператор goto?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    после выполнения какой либо функции программа возвращалась на начало.


    Обычно для этого в main гоняют бесконечный цикл, в котором уже запускают нужные функции. Тогда когда функция отработала, она просто заканчивает работу и управление возвращается обратно циклу. А там уже в зависимости от пользовательского ввода или сигналов можно убивать цикл и выходить из программы.
    Ответ написан
    Комментировать
  • Как сделать обратный отчёт?

    @IceJOKER
    Web/Android developer
    Сохраняете в базе данных текущую дату + 7 дней, ну и все.
    Если vip_date > current_date значит статус VIP все еще актуален.
    Есть несколько разных вариантов реализаций
    Ответ написан
    2 комментария
  • Как отсортировать массив в привычном для человека порядке (natsort не помогает)?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    usort() - сортируйте по своим правилам!
    Ответ написан
    Комментировать
  • Возможно ли запустить в Linux приложение написанное(и скомпилированное) в MS Visual Studio .net?

    opium
    @opium
    Просто люблю качественно работать
    запускайте через моно
    Ответ написан
    Комментировать