Pull to refresh
51
0
Владислав Фролов@frol

Пользователь

Send message
Они этого и не отрицают:
The language borrows heavily from (in order of impact): Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon.
Отличный перевод! Спасибо за проделанную работу!

Мне вот интересно, кто-нибудь уже успел опробовать Nim в реальных задачах? Я, несмотря на свой начальный интерес к языку, так и не нашёл времени и подходящей задачи, так как проект достаточно молод и не хотелось бы совсем всё писать с самого начала.
Просто оставлю это здесь: есть удобный сайт со статусом готовности Rust к Web — arewewebyet.com:
You can use Rust for web stuff, but the ecosystem isn’t mature yet.
Просто достаточно специфичная тема. Не так много людей уходит с Python в C++. Я вот пришёл из-за того, что Boost для Python 3 std::string стал преобразовывать в str тип Python 3, который unicode, и наш проект развалился.

Спасибо за статьи!
Интересненько! Спасибо за статью!

Проверил несколько вариантов с Linux хоста через:
  1. прямое соединение — всё правильно
  2. ssh-туннель — говорит, что я без прокси (ну, исходя из предложения в статье, которое используется для детектирования прокси, не мудрено, так как хост и прокси оба на Linux)
  3. OpenVPN — таки определило меня
  4. OpenVPN + Squid на том конце — не поймало, тоже по понятным причинам

Итого — 1 из 3 (ну, или 2 из 4), но на Windows хосте, наверно всё-таки 3 из 3 было бы.
Прошло много лет, вы бы не могли сказать к чему вы дошли сейчас? Покушаюсь на Waf пока с целью замены bash-скриптов. Специфика проекта такова, что С++ код уже собирается CMake, а вот Python пакеты, которые мы пакуем Nuitka и кладём собранные С++ библиотеки рядом, собираются bash-скриптами. bash-скрипты справляются на отлично (они хорошо написаны и достаточно небольшие и читабельные) до тех пор, пока наш зоопарк не уезжает на Mac OS и Windows, где поддержка кросплатформенности утилит вроде grep/sed начинает угнетать буквально с первых минут.
Вы просто не разобрались на что смотрите… Эта информация о батарее собирается с момента загрузки устройства и данные о потреблении приложениями там только аккумулируются (!), они не показывают текущее потребление батареи процессами.
Вы, видимо, решили не читать комментарии вовсе, иначе бы заметили, что создание «своего криптоалгоритма» без опыта — это одна большая ошибка, а в конкретном опусе вообще нет ничего правильного — одна сплошная дыра, видимость защиты. Так как вы не читали комментарии, позволю себе повторить лично для вас ссылку: habrahabr.ru/post/181372

На счёт «наличие разных алгоритмов даёт возможность выбора» — алгоритмов с математически доказанными свойствами стойкости масса, среди них на специальных конкурсах, где проверяют математическую базу и все доказательства годами (!), например, AES и SHA, выбираются лучшие из лучших. Поверьте, не нужны человечествую такие «альтернативы», которую автор предложил. Изобретение криптографических примитивов — это не развлечение на выходные.
Хмм, из вашего последнего предложения следует, что пауза была поставлена сразу после получения случайного числа, что достаточно наивно. Если бы пауза была поставлена уже после проверки на «нестреляность», то не должно было быть всё так печально. Пара минут — 120 секунд с задержками по 0.5 секунды — это всего лишь 240 «холостых выстрелов».
Вложенный tmux — один запущен на локальной машине (в этом конкретном Dropdown Terminal Extension нет табов вообще), а второй — на удалённой. Я нормально их отличаю.

Пробовал я как-то YouCompleteMe, но я пишу на Python и оно как-то не очень то и помогало, да и я и так неплохо справляюсь, но это опять-таки благодаря Python. Пожалуй, для С/С++ я бы тоже использовал YouCompleteMe.

P.S. Вот как-то этот сине-зелёный фон не могу воспринимать, но вижу, что используется часто.
Да, меня тоже удивило, мой редактор: Dropdown Terminal + tmux (а чаще, как на картинке, ещё + mosh + tmux) + vim (подсветка синтаксиса xoria256)

Добавлю свои пять копеек про Украину. (Во все мыслимые и немыслимые учебные программы я не вникал, так как на бумаге много чего пишут, а на деле… ну вы знаете, поэтому предоставляю просто сухие факты.)

Закончил я Харьковский Национальный Университет Радиоэлектроники (ХНУРЭ), кафедра Безопасность Информационных Технологий (БИТ), специальность Безопасность Информационных и Коммуникационных Систем (БИКС) два года назад (включая магистратуру).

Так сложилось, что программированием я увлёкся ещё в 5 классе, а в школе у меня был отличный учитель информатики и местное «сообщество» таких же школьников-маньяков-программистов. Не вдаваясь в подробности всех олимпиад, скажу сразу, в 11 классе я чётко понимал, что учить программирование в ВУЗе — бесперспективняк, более вероятным сценарием было то, что я сам буду обучать и сокурсников, и «преподавателя» (ой, снимите с меня корону). Нет, конечно, я не бог программирования и код у меня сам не пишется, но если читают метериал для уровня «среднего по больнице», то мне это никак не подходило. Поэтому я решил идти на прикладные специальности, так я и выбрал Безопасность, где я действительно узнал много полезного по ОС, сетям, криптографии и связанными с ней вещам, конечно.

В целом, моя рекомендация тем, кто на момент 11 класса уже умеет неплохо программировать, — не идите не «чисто программистскую» специальность, вы скорее всего сможете выучить интересующие вас технологии и языки сами за выходные и не будете вынуждеты учить те, что вам не нравятся (PHP, Java, MS Access,… — это мой список, не обессудьте).

Кстати о магистратуре — вот это на самом деле был самый малопродуктивный год в моём обучении. Да, я написал диплом и даже таки честно им занимался весь год, но вот учёбы этот год практически не было, а значит я варился в собственном соку (не считая общения с буквально парой-тройкой людей, которые были в теме моего диплома).
How quickly it can take down unprotected nginx with default settings?

In a few minutes with default config options.

Which versions of nginx are vulnerable?

All up to 1.5.9 if unprotected as described below (i.e. with default config).
Это ещё раз подтверждает, что не стоит делать свой велосипед, если даже специально заточенный проект борется с этими атаками годами. Ну и, как видно, в Nginx 1.6, который вышел больше года назад, уже приняты меры, но даже без обновления до 1.6 можно было залатать уязвимость при помощи конфигурирования.

Если вы хотите велосипед — мне вас не остановить. Не доверяете граблям, на которые наступили другие, — наступите на них сами.
Атак на web-серверы превеликое множество, я бы не рисковал выставлять Go в интернет. Несмотря на то, что он скорее всего будет справляться с определённой нагрузкой, его вероятнее всего не составит труда свадить банальной slowloris. Это не говоря о том, что реализовывать HTTPS самостоятельно — ещё более плохая идея. Подводя итог, использовать Go как самостоятельный веб-сервер хоть и можно, но не рекомендуется уж точно.
Предпочитаете верить написанной глупости (неточности/устаревшей информации) вместо своих собственных глаз?
Убедитесь сами и поправьте статью дабы не вводить людей в заблуждение, пожалуйста.
Если уметь его готовить — это очень мощный инструмент, а если образ всегда начинается с FROM ubuntu, то это уже личные проблемы каждого, такие люди и curl ... | bash и sudo make install делают. Инструмент не виноват в глупости того, кто пользуется инструментом. Молотком можно людей калечить, а можно гвозди забивать.
Это неправда. Я даже провёл только что эксперимент:

$ du -sh .
413M    .

$ cat Dockerfile
FROM alpine

COPY serial.txt /tmp/serial.txt

$ cat .dockerignore
cat: .dockerignore: No such file or directory

$ ls -lah serial.txt
-rw-r--r-- 1 frol frol 30 May 25 15:43 serial.txt

$ docker build -t qq .
Sending build context to Docker daemon 432.5 MB
Sending build context to Docker daemon
Step 0 : FROM alpine
 ---> 8697b6cc1f48
Step 1 : COPY serial.txt /tmp/serial.txt
 ---> 2209f356a4ea
Removing intermediate container 9d055644cb5b
Successfully built 2209f356a4ea

$ docker images | grep qq
qq                        latest              2209f356a4ea        5 seconds ago       5.238 MB


У меня в папке файлов на 413МБ, никакого .dockerignore нет, docker build запаковал в tar все файлы и получил 435МБ, которые «отправил на сборку» (так работает build) и в образ я добавил только файл serial.txt, весящий 30 байт, но финальный образ весит 5.2МБ!

Таким образом .dockerignore может сократить этап архивирования для build, но файлы из текущего каталога не попадут в образ если вы их туда не скопируете командами COPY или ADD, что видно из моего эксперимента.
Я так и не понял как вы связали .dockerignore с уменьшением веса финального образа. Этот файл влияет только на процесс сборки, то есть что будет доступно для копирования в Dockerfile. Однако, если не копировать, то образ и не будет увеличиваться. Так что на вес образа влияла команда вида COPY * /tmp (или ADD).

Вот тут можно наглядно сравнить два образа: ImageLayers.

В остальном, спасибо, что несёте добро в массы, а то неоправданно огромные образы буквально завалили DockerHub.
Из того, что я нашёл, я пытался выбрать между Loopback и SailsJS, но поглядываю на Restify просто из-за того, что он очевидным образом самый гибкий (но в этом же и его слабость — слишком много нужно писать самому). Express для API мне кажется перебором, как Django для этих целей использовать — можно, но зачем?

Спасибо за ответ, буду ковыряться, я дотошный)))

Information

Rating
Does not participate
Location
Харьков, Харьковская обл., Украина
Date of birth
Registered
Activity