Pull to refresh
8
0
Send message

Гарвардский курс CS50 на русском: двадцатая лекция

Reading time3 min
Views20K


Мы продолжаем публиковать лекции легендарного Гарвардского курса CS50, которые мы переводим и озвучиваем специально для JavaRush. И рады вам представить уже 20-ю серию (напомним, что в курсе их 24).

В этой серии цикла рассматривается тема компьютерной безопасности: излагаются основы личной безопасности в Интернете, принципы работы с паролями, объясняется специфика вредоносного программного обеспечения. Также в лекции затрагиваются проблемы неприкосновенности личных данных в современную цифровую эпоху, в том числе в общественно-политическом контексте.

Список переведённых на сегодняшний день лекций под катом.

Что вы узнаете, прослушав этот курс:

  • Основы компьютерных наук и программирования;
  • Концепции алгоритмов и алгоритмичности мышления. Какие задачи можно решать с помощью программирования и каким образом;
  • Концепции абстракции, структуры данных, инкапсуляции, управления памятью. Основы компьютерной безопасности. Процесс разработки ПО и веб-разработка;
  • Основы языка программирования C и Scratch;
  • Основы баз данных и SQL;
  • Веб-разработка: основы CSS, HTML, JavaScript и PHP;
  • Основы подготовки презентации проектов по программированию.
Total votes 15: ↑15 and ↓0+15
Comments3

Малиновый Прог против Интернета Кирпичей, или Raspberry Pi с графикой на read-only microSD

Reading time16 min
Views86K
Запуск Raspberry Pi с полной поддержкой графики на microSD, навсегда остающейся в режиме read-only после установки системы. Отсутствие какой-либо записи данных на флэш-память повышает надёжность устройства, приближая его к промышленному классу изделий. Пошаговая инструкция. Небольшой театр инженерного абсурда для развлечения аудитории.


Мне понадобилось сетевое устройство с открытым кодом и выходом HDMI, и я решил попробовать Малиновый Прог. Да, я именно так предлагаю переводить Pi: Прог. Понятное дело, даже одноплатнику нужна операционка. И вот, захожу я на официальный сайт, ожидая встретить там подробное руководство по созданию суровой, неломаемой Вещи à la turnkey box. Но народ, как ни в чём не бывало, устанавливает Ubuntu (т.е. Raspbian Jessie) прямо на microSD, размещая и swap там же. Как обычный десктоп, face palm.

Но то цветочки. Малиновые ягодки — это проекты фоторамок из МалинПрога, требующие обязательного выключения кнопкой. Иначе фоторамка после сбоя питания может не заработать, вместо картинок предлагая воспользоваться fsck. Но и это не предел, под катом читателя ждёт настоящий шедевр инженерного абсурда, найденный автором на просторах сети.

Итак, по стандартной инструкции нормальный одноплатник превращается в раздутый десктоп со средним временем жизни год-полтора, пока изношенная флэшка не сдохнет, превратив в общем-то хороший девайс в кирпич. И большинство людей, похоже, это вполне устраивает. Меня — нет.
Читать дальше →
Total votes 65: ↑60 and ↓5+55
Comments205

Установка OTRS 5 на сервер с Nginx

Reading time8 min
Views14K

Устанавливая Helpdesk OTRS я столкнулся с тем, что работа официально поддерживается только с Apache HTTP Server, а мне нужен был Nginx. Как оказалось, подробного руководства по установке OTRS на WEB-сервер под управлением Nginx в интернете нет, попробуем это исправить. В этой статье будет описана только установка OTRS версии 5.0.13, а его настройка это отдельная тема. В качестве ОС, на которой будет развернут сервер, выступит CentOS 7.
Читать дальше →
Total votes 15: ↑11 and ↓4+7
Comments12

Основы компьютерных сетей. Тема №1. Основные сетевые термины и сетевые модели

Reading time14 min
Views1.3M
Всем привет. На днях возникла идея написать статьи про основы компьютерных сетей, разобрать работу самых важных протоколов и как строятся сети простым языком. Заинтересовавшихся приглашаю под кат.


Читать дальше →
Total votes 35: ↑30 and ↓5+25
Comments61

Основы компьютерных сетей. Тема №2. Протоколы верхнего уровня

Reading time29 min
Views554K
И снова всем привет! Сегодня речь пойдет о протоколах верхнего уровня. Разберем, как они работают, из чего состоят и где применяются теоретически и на практике.


Приятного чтения
Total votes 44: ↑43 and ↓1+42
Comments27

Основы компьютерных сетей. Тема №3. Протоколы нижних уровней (транспортного, сетевого и канального)

Reading time26 min
Views338K

Приветствую всех читателей. Пришло наконец время поговорить о протоколах, находящихся на нижних уровнях. В этой статье будут разобраны протоколы канального, сетевого и транспортного уровней. Присаживайтесь поудобнее и читайте на здоровье.
Читать дальше →
Total votes 46: ↑42 and ↓4+38
Comments10

Структуры данных для самых маленьких

Reading time22 min
Views337K
James Kyle как-то раз взял и написал пост про структуры данных, добавив их реализацию на JavaScript. А я взял и перевёл.

Дисклеймер: в посте много ascii-графики. Не стоит его читать с мобильного устройства — вас разочарует форматирование текста.


Читать дальше →
Total votes 91: ↑87 and ↓4+83
Comments51

XCOM 2 – разбираем механики и смотрим на «вот в точно такую же, только меньше и другую»

Reading time13 min
Views50K


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

Конечно же, парни решали сразу две задачи:
  • Сделать «как было» — с сектоидами, защитой базы, деревом наук.
  • И при этом не сделать повтор прошлой игры, где всё это уже было.

Если посмотреть на первую UFO – это, фактически, история войны во Вьетнаме с точки зрения вьетнамцев. Прибегает вдруг агрессор на две головы технологически выше. Надо использовать все возможные методы от изготовления боеприпаса из консервных банок до бросания кусков вражеского мыла в дупла с пчёлами. И если повезёт – удастся захватить целый танк, из которого получается станция радиоперехвата, много разного металла, куча взрывчатки для мин из боезапаса и ещё шлёпанцы из резины.

Так что суть ко второй «новой» игре осталась той же – только теперь мы играем за, как в песне, «желтолицых». И «Фантом» свой мы уже сбили. Ведь главная часть интереса к серии XCOM – это то, что ты не знаешь, что там дальше в войне с захватчиками. Если же всё дерево наук известно, все шаги гадов записаны, то дальше это просто работа, а не врыв в неизвестность.

Вот почему новая игра должна была быть точно такой же, но совсем другой.
Читать дальше →
Total votes 57: ↑51 and ↓6+45
Comments61

Гарвардский курс CS50 на русском: появились 3 и 4 лекции

Reading time3 min
Views26K
cs50 на русском

400 тыс. просмотров и письмо из Гарварда

На прошлой неделе мы закончили работу над переводом 3 и 4 лекции Гарвардского курса по Основам Программирования CS50, выложили их в сеть и сразу же нарвались на хорошие новости: нашему партнеру по переводу, студии Vert Dider, пришло письмо из Гарварда!
Читать дальше →
Total votes 27: ↑26 and ↓1+25
Comments29

Используем пакеты на основе OpenWRT в рутерах ZyXel Keenetic

Reading time3 min
Views89K
image

Не так давно компания ZyXel с помощью модуля открытых пакетов поддержала OPKG — пакеты из популярной ОС OpenWRT, предназначенной для домашних маршрутизаторов. Это значит, что часть из них теперь можно ставить на ZyXel Keenetic. В этой статье я опишу процесс включения пакета, настройки репозитория Entware с тысячами пакетов, а также настройки рутера как OpenVPN клиента.

Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments5

Короткая шпаргалка по блокировкам при чтении и изменении данных в зависимости от уровня изоляции транзакции в MSSQL

Reading time3 min
Views37K
Read Uncommitted

  • если в одной транзакции поменять данные — селект этих данных (в другой транзакции или без транзакции) не будут ждать окончания первой транзакции и вернут записанные данные незакомиченных транзакций
  • если в одной транзакции считать данные — апдейты этих данных в другой транзакции не будут ждать окончания первой транзакции
  • шаред локи не используются. Что аналогично установке NOLOCK хинта во все селекты в Read Commited
  • эксклюзивные локировки устанавливаются в процессе выполнения стейтмента и снимаются по окончанию транзакции


Read Committed + read_committed_snapshot off

(alter database xxx set read_committed_snapshot off)

  • если в одной транзакции поменять данные — селект этих данных (в другой транзакции или без транзакции) будут ждать окончания первой транзакции. Селект с NOLOCK хинтом вернёт изменённые, но не закомиченные данные.
  • если в одной транзакции считать данные — апдейты этих данных в другой транзакции не будут ждать окончания первой транзакции
  • шаред локировки устанавливаются в процессе работы стейтмента и снимаются по окончанию стейтмента
  • эксклюзивные локировки устанавливаются в процессе выполнения стейтмента и снимаются по окончанию транзакции


Дальше
Total votes 19: ↑19 and ↓0+19
Comments26

Советы и секреты № 1

Reading time4 min
Views34K

Удаление своего досье в Google; прямые ссылки в поиске; новый user.js для Firefox; просмотр программ, которые обращаются к конкретному файлу под Windows; запись анимированного GIF с экрана


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

Как отредактировать/удалить историю своих действий в Сети, которые собирает Google?
Неделю назад Google представила новый инструмент MyActivity («Мои действия»). Здесь представлена разнообразная информация, в том числе:

  • история поиска в Google, Google Play, на картах Google Maps и прочих сайтах Google;
  • список просмотренных видео на YouTube;
  • список действий в браузере Chrome, в том числе список поисковых запросов в других поисковых системах через омнибар;
  • информация с мобильного телефона Android (Google сохраняет ваши контакты, календари, информацию о приложениях, музыке, сведения об устройстве).
Читать дальше →
Total votes 25: ↑16 and ↓9+7
Comments36

Delayed Durability или история о том как получилось ускорить выполнение автотестов с 11 до 2,5 минут

Reading time10 min
Views13K


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

Стек технологий был изначально выбран мелкомягкий, а в качестве хранилища данных использовался SQL Server 2014 Express. Одним из первых тасков, которые мне поручили — это поисследовать возможность ускорения автотестов.
Подробнее
Total votes 16: ↑16 and ↓0+16
Comments10

Как мы тестировали российский speedtest

Reading time6 min
Views32K
Тестирование сервиса wiTest.ru

Все хотя бы раз в жизни пользовались сервисом speedtest.net для измерения скорости доступа в Интернет дома или на работе. Точность не высокая, но зато бесплатно. Аналогичных сервисов мне лично известно более 20 как российских, так и зарубежных.

Возникла мысль оценить, насколько эти сервисы показывают «правду» относительно реальной картинки. Для этого был собран стенд, который имитирует «последнюю милю» абонентского подключения по технологиям: FTTx, GPON и xDSL. Логическая схема собранного стенда представлена на рисунке ниже.

Стенд тестирования wiTest

В качестве подопытного сервиса мы взяли сервис, который опубликован на сайте Банки.ру.
Читать дальше →
Total votes 17: ↑12 and ↓5+7
Comments46

Первые 10 минут на сервере

Reading time8 min
Views59K

Азбука безопасности Ubuntu


«Мои первые 5 минут на сервере» Брайана Кеннеди — отличное введение, как быстро обезопасить сервер от большинства атак. У нас есть несколько исправлений для этой инструкции, чтобы дополнить ею наше полное руководство. Также хочется подробнее объяснить некоторые вещи для более юных инженеров.

Каждое утро я проверяю почтовые уведомления logwatch и получаю основательное удовольствие, наблюдая несколько сотен (иногда тысяч) безуспешных попыток получить доступ. (Многие довольно прозаичны — попытки авторизоваться как root с паролем 1234 снова и снова). Приведённая здесь общая методика подходит для серверов Debian/Ubuntu, которые лично мы предпочитаем всем остальным. Они обычно служат только хостами для контейнеров Docker, но принципы те же.

На больших масштабах лучше использовать полностью автоматические установки с инструментами вроде Ansible или Shipyard, но иногда вы просто поднимаете единственный сервер или подбираете задачи для Ansible — для таких ситуаций предназначена инструкция.

Примечание: Эта справка создана как базовая азбука. Её следует расширить и дополнить в соответствие с вашими потребностями.
Читать дальше →
Total votes 54: ↑40 and ↓14+26
Comments55

«Прозрачный» Squid с фильтрацией HTTPS ресурсов без подмены сертификатов (x86)

Reading time9 min
Views255K
Не секрет, что в больших конторах тема фильтрации Интернета довольно актуальная. С этой задачей справляется немало программных и аппаратных решений. Но в настоящее время все те сайты, которые мы резали ранее, работают по протоколу HTTPS, т.е. порт 443. Как известно, данный протокол проследить, прослушать и т. п., невозможно. А любой кеширующий фильтрующий прокси-сервер, редиректор и т. п. фильтрует только HTTP, т.е. порт 80. Как же резать Вконтакте, Одноклассники, iphide.info и многие другие подобные сайты? Как блокировать доступ к личной почте в организации, если использование оной запрещено порядками в организации? Да, можно фильтровать по IP адресам, но они частенько меняются, да и на многих ресурсах несколько IP адресов. Блокировать их на уровне файрвола как-то совсем не православное решение, и не совсем удобное.

И вот, совсем недавно, мне один товарищ рассказал, что он поднимает у себя в конторе кеширующий прокси с фильтрацией HTTPS, меня это заинтересовало.
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments140

Лазерный резак своими руками. Часть номер ноль. Силовая

Reading time5 min
Views98K
image
В свое время я очень сильно хотел заиметь ЧПУ лазер, не то чтобы он был очень нужен для работы или хобби, но тем не менее вещь полезная в подсобной мастерской, да и круто же!
Читать дальше →
Total votes 75: ↑73 and ↓2+71
Comments154

Mikrotik. Failover. Load Balancing

Reading time12 min
Views284K
Когда у меня встала необходимость разобраться, как сделать failover или load balancing, имея два и более каналов в мир, я нашел множество статей и инструкций, в которых описывались рабочие конфигурации. Но почти нигде не нашел разъяснения, как все работает, и описания отличий разных вариантов. Хочу исправить эту несправедливость и собрать простейшие варианты построения failover и load balancing конфигураций в одной статье.

Итак, у нас есть роутер, который соединяет нашу локальную сеть и два канала в интернет (основной ISP1 и резервный ISP2).

Давайте рассмотрим что же мы можем сделать:

Сразу предупрежу: несмотря на то, что в этой статье буду все описывать для mikrotik, не буду касаться темы скриптов
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments45

ECS LIVA: мини-ПК с Intel Bay Trail за 180 долларов США

Reading time1 min
Views58K


Различные производители создают все более интересные мини-десктопы, и на днях появился еще один представитель этого семейства, ECS LIVA. Производительной систему назвать вряд ли можно, система основана на Intel Bay Trail процессоре, плюс 2 ГБ ОЗУ, плюс 32 ГБ внутренней памяти (eMMC).

Но система очень небольшая по размеру, 4.6″ x 2.8″ x 2.2″, плюс производитель просит за свой мини-ПК всего 180 долларов. Предустановленной ОС нет.

Читать дальше →
Total votes 33: ↑31 and ↓2+29
Comments63

Crucial MX100: 256ГБ SSD за 110 долларов

Reading time1 min
Views98K
crucial mx100

Твердотельные накопители гораздо производительнее жестких дисков, а также менее прожорливы в плане потребления энергии. У SSD, в общем-то, куча достоинств, но есть и недостатки. Первым можно назвать более низкую надежность, чем у жестких дисков, и вторым — цену. Цена среднестатистического SSD выше, чем у винчестера того же объема.

Конечно, цены падают с течением времени, и сейчас SSD уже доступны практически всем. Но все же SSD еще достаточно дороги.

Но вот хорошая новость: Crucial выпустили SSD объемом в 256 ГБ, цена которого — всего 110 долларов США. Это — всего 43 цента за гигабайт.

Читать дальше →
Total votes 50: ↑44 and ↓6+38
Comments59
1
23 ...

Information

Rating
Does not participate
Registered
Activity