• Возврат полумертвого жесткого диска по гарантии?

    2ord
    @2ord
    Нужные файлы спасти пока не поздно на другой носитель.
    Можно попробовать дать поработать диску на полную нагрузку: копировать/удалять большие файлы туда-сюда, скриптом. Делать дефрагментацию много раз.
    Если диск "накроется" до окончания срока, то повезло.
    Ответ написан
    Комментировать
  • Как зайти на удаленный ruby on rails сервер через браузер?

    2ord
    @2ord
    Всё из-за того, что сетевые порты свыше 1024 являются пользовательскими и закрыты наружу.
    1. Для проверки работоспособности на этапе разработки можно воспользоваться сервисом ngrok. Этот сервис устанавливает тоннель, открывая 80-й порт наружу, хотя сам сервер работает на порте 3000.
      Сначала запустить сервер
      rails s
      затем в другом окне терминала
      ngrok 3000
      Теперь можно открыть URL, указанный на экране. Он будет доступен для всего мира.
      Оставлять ngrok запущенным на долгое время опасно с точки зрения безопасности системы.

    2. Для production на сервере используют
      Phusion Passenger, Unicorn, Puma, Thin, ...
      Rails Server Throwdown: Passenger, Unicorn or Puma?

    Ответ написан
    2 комментария
  • Как снизить нагрузку на БД при большом количестве запросов?

    2ord
    @2ord
    Не факт что проблема именно из-за СУБД. Ведь задача СУБД - обслуживать запросы приложений.
    Вообще, нужно более детально произвести мониторинг процессов в СУБД, чтобы точно сказать где узкое место. Можно встроенными средствами, а также набором инструментов Percona.
    Советую проверить также скриптовую программу на наличие неоптимизированных запросов вставок в БД.
    Если идёт вставка большого количества записей, то можно оптимизировать одной вставкой, обернув в транзакцию.
    Ответ написан
    Комментировать
  • Стоит ли идти из радиотехники в IT?

    2ord
    @2ord
    Рекомендую всё же сконцентрироваться на ЦОС. Знание английского на техническом уровне очень сильно расширит область поиска и повысит уровень знаний. Вот примеры применения. Полагаю, что из этого ассортимента наверняка можно выбрать что-то интересное для себя.
    Вообще, ЦОС находит применение во многих отраслях. Особенно если есть тяга к алгоритмам и уж тем более, с багажом знаний в реализации алгоритмов на C++.
    Ответ написан
    Комментировать
  • Программирование Умных вещей. Как реализовать идею?

    2ord
    @2ord
    Задачу следует разделить на следующие части:
    1. Программирование встраиваемых систем. Для всяких smart watch это могут быть Tizen, watchOS/iOS. Нужно читать документацию по ним.
    2. Программирование предметной области: алгоритмы для отслеживания аномалий (цифровая обработка сигналов), логика оповещения и т.д.


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

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

    2ord
    @2ord
    Если файлы хранятся в облачном хранилище Amazon S3, то для него есть API с функцией создания pre-signed URL, которая позволяет создавать ссылку с временным доступом.
    Ответ написан
    Комментировать
  • Возможно ли восстановить винчестер в моем случае?

    2ord
    @2ord
    Диску наверно капут. На это указывает факт долгой загрузки livecd.
    Для проверки здоровья диска нужно прогнать тесты S.M.A.R.T..
    Скорее всего, результаты укажут на то, что диском пользоваться не рекомендуется. Но проверить таки стоит. Может случиться, что с ним всё в порядке, а повреждена какая-то информация, которую можно отформатировать.
    Ответ написан
    Комментировать
  • Полезно ли знание Pascal?

    2ord
    @2ord
    Давай определимся.
    В школах и ВУЗах учат не Паскаль, а его диалект, Borland/Турбо Паскаль или же Delphi.

    Что изучают на Паскале? Да базовые вещи: структуры данных, алгоритмы (вычисления, линейную алгебру, графы), работу с файлами. Их знать нужно? Риторический вопрос. Это ведь основа, без которой дальнейшее обучение программированию бесполезно.

    Что плохого в курсах обучения на Турбо Паскале (ТП)?
    Пожалуй, то, что ТП работает в ДОСе. И это накладывает различные ограничения на целевое применение программ, написанных в ТП. Можно запускать ДОС программы и в Windows, но, с другой стороны, во многих школах и ВУЗах стоит устаревшее оборудование. В сёлах, поди, кроме установленного ДОСа, порой, ничего и не может быть запущено. Ну, может, порой Windows 95/98. А как учить чему-то современному в таких условиях? Вот поэтому ТП и является хорошим решением. Вместо ТП можно было бы обучать на современном Free Pascal'е.

    Самое плохое в программах, написанных на ТП, это то, что в них смешаны логика и отображение.
    Что такое MVC многие преподаватели не знают. А студентам нужно просто пройти курс и забыть. Ибо большинство или лентяи или нет у них достойного преподавателя, чтобы сделать урок интересным. А это накладывает отпечаток на дальнейшее отношение к Паскалю, как таковому. Я полагаю, что язык Паскаль выступает в данном случае козлом отпущения, хотя вины языка здесь нет, так как сам язык и простой и, в то же время, эффективный. Особенно что касается простоты отладки.

    Вот некоторые цитаты про изучение Паскаля:
    Математику тоже незачем изучать, интегралы всякие. Кому они по жизни нужны?
    Лучше бухгалтерию. История, литература - фтопку. Надо менеджмент усваивать, руководить.
    Русский язык? Зачем? Раз человек умеет читать и писать.. и ладно. Накрайняк, если не умеет писать, но умеет подписываться, значить, годен быть начальником.

    Язык невозбранно привлекает возможностью писать почти как на обычном английском языке, а не ломать голову и пальцы о ++i + ++i, эзотерику истинности выражений (1/3 == 0) и (-1 > (unsigned int) 1) и прочих извращенных приёмов, принятых в C-подобных языках.


    У языка Паскаль есть потомки: Modula-2, Delphi, Component Pascal (ранее Oberon/L), Zonnon, Active Oberon.
    У последнего вообще, довольно интересные сегодня особенности, о которых стоит почитать в статьях
    Оберон умер, да здравствует Оберон! часть I
    часть II

    В итоге каждый решает для себя, нужны ли ему положительные качества Паскаля или же, порой, мнимая власть, предоставляемая другими языками. С некоторыми языками нужно бороться определёнными средствами.
    Например, в серии статей, одна из которых Проверка Wine: Год спустя
    Ответ написан
    3 комментария
  • В чём разница между динамическими вставками "%= %" и "% %" в Rails (html.erb)?

    2ord
    @2ord
    "<% %>" для вычисления выражений
    "<%= %>" также, только с выводом вычисленного выражения в шаблон, для отображения
    Ответ написан
    Комментировать
  • Appspot.com - что за сервис?

    2ord
    @2ord
    Это сайты, размещённые в Google App Engine (в облаке).
    Каждый поддомен - это отдельный идентификатор проекта.

    https://cloud.google.com/appengine/docs
    Ответ написан
  • Многопользовательская локальная БД?

    2ord
    @2ord
    Сначала тоже подумал о SQLite, но прочтя про
    Одновременное подключение порядка 5-10 пользователей.

    всё таки подходит MySQL/MariaDB, поскольку для SQLite только один пользователь имеет право на запись в БД в одно время.
    Configuring MySQL to use minimal memory

    А решения с файлами скорее всего будут велосипедами, так как нужно учитывать блокировки.
    На расшаренной папке СУБД нельзя ставить - данные могут быть повреждены/потеряны по причине тех же блокировок и потенциальных проблем с сетями.
    Итого, нужно иметь СУБД на выделенном ПК/сервере, если речь о настольных приложениях.
    Если с ресурсами совсем напряжёнка, то можно установить на один из ПК. Главное, чтобы этот ПК никогда не выключался и стоял с ИБП.
    Ответ написан
  • Как передать файл в 20 Гигов - прямой ссылкой через интернет?

    2ord
    @2ord
    WebDAV, FTP, HTTP
    Ответ написан
    Комментировать
  • Как в Ruby можно обрезать строку с запятыми?

    2ord
    @2ord
    Можно и без регулярок:
    str.
      split(',')[1..-1]. # вычленить элементы строки, разделённой разделителями ',' и убрать первый член
      map(&:strip). # отбросить крайние пробелы каждого члена массива
      join(', ') # и соединить обратно
    Ответ написан
    Комментировать
  • Как восстановить повреждённый файл Visio?

    2ord
    @2ord
    Попробовать просмотреть содержимое при помощи консольной Python-утилиты OLE Toy
    OLE Toy is a set of Python scripts to parse and view contents of various
    binary file formats. Originally OLE Toy was developed for
    reverse-engineering of Microsoft Publisher file format, but later support
    for more of them was added, partially written from scratch, partially
    moved from our earlier work.


    Полезной информацией будет в какой версии формата Visio сохранён файл.
    Ответ написан
  • По каком алгоритму надо изучать код браузера?

    2ord
    @2ord
    Нужно учесть, что это очень объёмная тема.
    Для введения есть хорошая статья Как работает браузер или что происходит за кулисам...

    Можно изучать работу браузеров на более простых примерах:
    Проект NetSurf
    NetSurf is a free, open source web browser. It is written in C and released under the GNU Public Licence version 2. NetSurf has its own layout and rendering engine entirely written from scratch. It is small and capable of handling many of the web standards in use today.

    • Hubbub HTML parser
    • LibDOM DOM
    • LibCSS CSS parser
    • JavaScript support
    • Framebuffer port
    Let's build a browser engine!

    Продвинутый этап
    Движок servo
    Servo is a prototype web browser engine written in the Rust language. It is currently developed on 64bit OS X, 64bit Linux, Android, and Gonk (Firefox OS).
    Ответ написан
    Комментировать
  • Си или Go для приложения по обработке сетевого трафика до 1.5М пакетов/с?

    2ord
    @2ord
    Выбор в пользу Go:
    1. разумный компромис между надёжностью и производительностью. Касательно доводов против из-за производительности по сравнению с Си: всё зависит от структур данных, алгоритмов и их оптимизации для железа.
    2. простота разработки и отладки
    3. хорошая поддержка, наличие большого количества проектов и документация
    4. есть сборка в исполняемые файлы и библиотеки: Go Execution Modes.
    5. с интеграцией проблем быть не должно - записать файл-бинарник не проблема
    6. в долгосрочном плане может быть выигрыш при поддержке кода


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

    Ответ написан
    4 комментария
  • Почему плохо работает интернет?

    2ord
    @2ord
    Нужно проверять локально пингуется ли DNS сервера.
    Возможно, причина тому Google dns не отвечает на dns-запросы, в чём может быть проблема?
    Если так, то лучше перейти на DNS от провайдера, ну или же от других сервисов, таких как OpenDNS.
    Ответ написан
  • В каком формате лучше всего размещать документы в сети - docx, rtf или odt?

    2ord
    @2ord
    Если для публикации, то однозначно лучше PDF.
    Если для нужд редактирования, то правильнее ODT, хотя, на практике, чаще имеет смысл DOCX.
    Ответ написан
    Комментировать
  • Как сделать сортировку в ruby?

    2ord
    @2ord
    Active Record Query Interface / Ordering
    Article.order(public_at: :desc).all
    И, по-хорошему, не забывать про ограничение выдачи количества записей.
    Ответ написан
    2 комментария