Pull to refresh
3
0

Системотехник

Send message

Тестирование: простая дорожка в IT или серьезная затея?

Reading time11 min
Views13K
Порой даже в авторитетных источниках проскальзывает снисходительное отношение к тестированию программных продуктов и, соответственно, к людям, занятым в этом направлении. Там, дескать, и требования к работникам ниже, и сами кадры — так себе, и денег особо не заработаешь. О том, как на самом деле выглядит тестирование изнутри, мы поговорили с Никитой Макаровым, занимающимся в «Одноклассниках» одновременно и ручным, и автоматизированным тестированием.


Читать дальше →

VHD Native Boot снаружи и внутри

Reading time9 min
Views47K
Цель настоящей статьи — рассказать о моем опыте работы с весьма полезной и не слишком хорошо известной функцией Windows, которая называется VHD Native Boot, то есть способности загружаться с виртуального жесткого диска формата VHD/VHDx.

Начиная с 7-й версии, в Windows появилась возможность создавать виртуальные диски VHD/VHDx (далее просто VHD), а также подсоединять и отсоединять их через графический интерфейс «Управление дисками» и утилиту командной строки diskpart. Кроме этого, Windows научилась с таких дисков загружаться, и все бы ничего, но этот самый Native Boot был доступен только обладателям старших версий, то есть от Pro и выше. Очевидно, что это было лишь маркетинговое ограничение, потому что с появлением Windows 10, а я проверял Anniversary Update (1607) и Creators Update (1703), никаких ограничений больше нет. Это работает и в Windows 10 Home, причем она может выступать как в роли хоста, так и в роли гостя. О том, как это выглядит и как это можно использовать, вы узнаете ниже.
Читать дальше →

Отечественный дистрибутив Linux — «ОСь» для серверных и настольных систем: новый BolgenOS государственного масштаба?

Reading time2 min
Views36K

На днях компания «Национальный центр информатизации» (НЦИ), которая принадлежит государственной корпорации «Ростех», представила новый дистрибутив GNU/Linux для серверных и настольных систем. Этот дистрибутив получил название ОСь (OS-RT). Он доступен для загрузки уже сейчас. Кто систему опробовал, говорят, что там нескучные обои, с этим проблем нет. Что, помимо обоев, предлагает нам «ОСь»?
Читать дальше →

Легальный вывод средств с Upwork в РФ

Reading time8 min
Views66K
На Хабре уже написано достаточно много статьей по теме, в частности:


В ответ на повторяющиеся просьбы написать статью, в которой:

  • разбросанные по разным статьям крупицы будут собранны в единое целое
  • всевозможные противоречия будут устранены
  • все сведения будут иметь актуальный характер
  • будут учтены пожелания такие как «а можно с картинками? :)»

родилось следующее руководство.

Лекции Технотрека. Проектирование СУБД (осень 2016)

Reading time4 min
Views31K

image


Продолжаем публикацию наших образовательных материалов. Этот курс посвящен изучению основ языка SQL с учетом особенностей объектно-реляционной базы данных PostgreSQL. Программа предусматривает комплексный подход к изучению стандартизованного языка SQL на платформе PostgreSQL, включая некоторые минимальные возможности администрирования пользователей, ролей, схем, базовых таблиц и других объектов базы данных. Мы рассмотрим основы работы с базой данных PostgreSQL и некоторые особенности SQL применительно к ней. Более подробно — под катом.

Как начать пользоваться Swing GUI-визардом IntelliJ IDEA. Подробная инструкция

Reading time3 min
Views141K
Давно не писал настольных приложений на Java вообще и с использовании Swing в частности. Однако, возникла необходимость немного по GUIть. В качестве инструмента выбрал IntelliJ IDEA Community edition, 2016.1 версии.

Взялся ваять и, естественно, первое, на что налетел — хотя со времён Borland Java Builder 2006 воды утекло немало, экранные интерфейсы создавать проще не стало, скорее наоборот. А одной из причин выбора IDEA было как раз наличие Swing дизайнера «из коробки», однако как им пользоваться с ходу решительно непонятно — форма генерится, класс создаётся, создаются переменные контролов из дизайнера… но и только: при создании нашего класса форма на экране не появляется
Читать дальше →

Используем RxJava и Retrofit на Android, учитывая поворот экрана

Reading time11 min
Views55K

Решил я однажды таки попробовать дико популярный нынче Rx. А заодно и Retrofit. И посмотреть, как с их помощью реализовать стандартную задачу: получить с сервера набор данных, отобразить их и при этом ничего не терять при поворотах экрана и не делать лишних запросов. Первый вариант у меня получился сразу почти — просто взял и вызвал cache() на Observable, получаемый из синглтона, но он меня не устраивал — для принудительного обновления приходилось, по какой-то причине, пересоздавать экземпляры классов Retrofit и его же реализации моего интерфейса для API. Пересоздание же самого Observable эффекта не давало — всегда возвращались старые данные вместо запуска нового сетевого запроса и получения новых данных.


После долгих мучений с новой для себя технологией выяснил, что во всём был виновен cache() (точнее, наверное, моё неправильное оного понимание). В итоге сделал так: фрагмент запускает метод, подписывающий Subscriber синглтона на Observable retrofit-a, коий запускает onNext и onError BehaviorSubject-a, на который подписывается уже Subscriber фрагмента. Код на GitHub тут, подробности — под катом.

Читать без регистрации и СМС

Интервью с Андреем Светловым о языке Python и не только

Reading time3 min
Views16K
В преддверии PyCon Russia мы решили поговорить с докладчиками конференции о Python, их работе и увлечениях. Первое короткое интервью мы взяли у одного из разработчиков языка Python Андрея Светлова.

Андрей Светлов — Python Core Developer, автор и активный участник многих питоновских библиотек, среди которых asyncio, aiohttp, aiopg, aiozmq, автор популярного блога, посвященного языку программирования Python, программный директор и ежегодный спикер конференции PyCon Russia.


Андрей Светлов — спикер многих python-конференций. Например, вот его выступление на PyCon-2015

Читать дальше →

Push уведомления в Android с помощью Firebase Cloud Messaging для начинающих

Reading time2 min
Views144K
Не так давно Google купили Firebase и теперь на странице с описанием GCM нас встречает радостная новость о том, что пора бы мигрировать на Firebase.
...GCM users are strongly recommended to upgrade to FCM, in order to benefit from new FCM features today and in the future.

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

Нам понадобится:

  • Android Studio
  • Код демо-проекта с github
  • 20 минут свободного времени
Читать дальше →

Программист ли я, или просто хорошо гуглю?

Reading time4 min
Views67K

Письмо Скотту Хансельману


«Иногда в моей голове звучит вопрос — действительно ли я разработчик или просто хорошо гуглю. Я не знаю правильного ответа — я гуглер или разработчик. Скотт, пожалуйста, помоги мне выяснить»

От переводчика


Всем привет, с вами Максим Иванов, и сегодня мы поговорим об одном из постов Скотта Хансельмана (Scott Hanselman), который он написал по причине довольно серьезного и хорошо сформулированного письма к нему. В общем-то, меня вдохновила одна из статей на нашем ресурсе под названием Google-oriented programming. Больше всего мне понравилось то, что в программистах порой может появиться синдром самозванца. Конечно, труды Хансельмана не единственны в этом мире с точки зрения психологии, но он дает четко нам понять, что это нормально. Как он пишет: «Но вот в чем дело. Мы все иногда чувствуем себя обманщиками. Мы все обманщики. Это часть роста. Мы попадаем в ситуации, которые немного сложнее того, с чем мы можем справиться. Но мы справляемся с ними, мы не обманщики, и мы двигаемся к следующему испытанию.» Так давайте же разберемся, какие решения и выводы Скотт предлагает нам в своем посте. Приступим.
Читать дальше →

Управляем компьютером с Android устройства

Reading time10 min
Views57K

Начало


А началось все с того, что вызывает меня генеральный к себе, и говорит: «Вот видишь телефон? Хочу чтобы там была кнопка, я на нее нажимаю, и у меня в ноутбуке кино включается. Нажимаю другую – музыка играет.» И еще чего-то много наговорил, уж не помню. «Задача понятна? Выполняй!» Вот уж не знаю, с чего такая потребность у него возникла. То ли звезды не под тем углом встали, то ли сон какой приснился. Короче, не поймешь этих богатых… Ну да ладно.

Поначалу полез рыться в Гугл в поисках подходящей программы, а потом подумал – а какого черта? Напишу сам. Тем более, что задача не показалась сложной, да и “зов кода” уже давал о себе знать (этакая профессиональная it-ломка). Вот и решил соединить Windows и Android собственными силами.
Читать дальше →

Easy Hack: Java application

Reading time3 min
Views16K
Время от времени пентестерам приходится сталкиваться с Java-приложениями. Это могут быть различные серверы, клиенты или просто десктопные программы. И иногда возникает необходимость «пропатчить» такое приложение. Зачем это нужно? Каждый случай возникновения такой необходимости уникален. К примеру:

  • Сложный протокол общения между сервером и клиентом. Чтобы отправлять произвольные запросы – патчим;
  • Захардкожены настройки. Чтобы поменять – патчим;
  • Для демонстрации последствий проблем типа «race condition» – патчим.

Конечно, в каждом случае можно решить проблему, не прибегая к модификации приложения. Но зачастую это самый простой и быстрый способ добиться необходимого результата. В этой статье мы расскажем, как легко и быстро изменить функционал в приложении на Java.
Читать дальше →

Как отправить электронное письмо с помощью Python: руководство для «чайников»

Reading time6 min
Views172K


В нашем блоге мы много пишем о создании email-рассылок и работе с электронной почтой. В современном мире люди получают множество писем, а у некоторых даже есть несколько почтовых ящиков. Все это усложняет процесс их администрирования, что вынуждает искать пути решения проблемы. Не так давно мы рассказывали о том, как инженер из США упорядочивал свои письма с помощью нейронной сети (1, 2), а сегодня речь пойдет об автоматизации отправки писем для разных почтовых ящиков.

Редактор издания Motherboard Майкл Берн (Michael Byrne) написал материал о том, как отправлять электронные письма для различных почтовых ящиков с помощью Python. Мы представляем вашему вниманию адаптированный перевод этой заметки.
Читать дальше →

Асинхронные операции и пересоздание Activity в Android

Reading time11 min
Views17K
В одной статье на хабре (274635) было продемонстрировано любопытное решение для передачи объекта из onSaveInstanceState в onRestoreInstanceState без сериализации. Там используется метод writeStrongBinder(IBInder) класса android.os.Parcel.

Такое решение корректно функционирует до тех пор, пока Android не выгрузит ваше приложение. А он вправе это сделать.
…system may safely kill its process to reclaim memory for other foreground or visible processes…
(http://developer.android.com/intl/ru/reference/android/app/Activity.html)

Читать дальше →

Плагины в кармане или перочинный ножик в программе

Reading time5 min
Views16K

В этой статье речь пойдет о плагинах — программных модулях, которые можно легко установить в основное приложение для расширения его функционала. Точнее, не о самих плагинах, а о том, как реализовать в своей программе систему взаимодействия "Приложение — Плагин".


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

Читать дальше →

Разбираемся с многопоточностью в RxJava

Reading time10 min
Views59K

Когда описывают преимущества RxJava, всегда упоминают об удобстве организации работы многопоточного приложения средствами RxJava. То, как использовать операторы subscribeOn и observeOn, можно прочитать практически в каждой статье, посвященной основам RxJava. Например, здесь хорошо описаны случаи, когда использовать методы subscribeOn и когда observeOn. Однако, на практике часто приходится сталкиваться с проблемами, для которых нужно более глубокое понимание того, что именно делают методы subscribeOn и observeOn. В этой статье я хотел бы рассмотреть ряд вопросов, которые иногда возникают при использовании этих операторов.
Читать дальше →

Программирование на Python — курс для желающих узнать о нём больше или изучить ещё один язык программирования

Reading time3 min
Views126K
"The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code — not in reams of trivial code that bores the reader to death."
Guido van Rossum

Python — язык программирования, на котором приятно писать и который приятно читать. Мы предлагаем тринадцать лекций осеннего курса CS центра, чтобы посмотреть вглубь языка и попробовать понять, как пользоваться всеми его возможностями. Лекции читает Сергей Лебедев, разработчик в компании JetBrains и преподаватель в Computer Science Center.

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

Фотография сделана осенью 2014 года в Страсбурге, за две недели до начала первого прочтения этого курса.
Открыть лекции курса

Переезд из Windows в Linux Ubuntu 14.04 LTS вместе с Jetbrains IntelliJ Idea 14.1.5

Reading time3 min
Views12K
Некоторое время назад появилось желание переехать со всем программным обеспечением необходимым для написания Java кода под Linux. В качестве системы назначения был выбран дистрибутив Ubuntu 14.04.3 LTS. Пост не откроет никаких тайн супертонкой настройки операционной системы — все уже давно известно и на тематических форумах все обсуждено. Я лишь опишу проблемы или, возможно, особенности, которые возникли при работе с Jetbrains IntelliJ Idea 14.1.5. Возможно, читатель и не знает, что у него есть проблемы, а значит для него данные решения станут «improve» фишками.
Читать дальше →

Вступление в Реактивное Программирование, которое вы пропустили

Reading time5 min
Views91K
Ну что ж, вы решили выучить новую вещь, которая называется Реактивное программирование (Reactive Programming), а в частности — его имплементацию в виде Rx, Bacon.js, RAC или чего-то другого.
Читать дальше →

Видео со встречи JUG.ru с разработчиками языка Kotlin Андреем Бреславом и Дмитрием Жемеровым

Reading time1 min
Views15K


Неделю назад в Питере прошла встреча JUG.ru с разработчиками языка Kotlin Андреем Бреславом и Дмитрием Жемеровым. Как вы все наверняка знаете, Kotlin зарелизился пару недель назад, и теперь, спустя почти шесть лет разработки, пришла пора поговорить о том, что в итоге получилось.

В пятничный вечер 26 февраля народу в питерский офис Oracle набилось дофига, что очень обрадовало и нас и спикеров.



Встреча состояла из четырех частей:
  • Введение. Что такое Kotlin?
  • Kotlin: к релизу и далее
  • Kotlin: самое сложное — совместимость
  • Сессия вопросов и ответов про Kotlin

Читать дальше →

Information

Rating
4,958-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity