Pull to refresh
0
0

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

Send message

И так сойдёт… или как данные 14 миллионов россиян оказались у меня в руках

Reading time6 min
Views139K
Одиноким вечером, глядя на свою пустую зачётку и осознавая, что конец близок, я снова задумался о том, как бы мне сейчас собрать сумку, или даже просто рюкзак, положить туда рубашку, шорты и свалить в тёплую страну. Было бы хорошо, да вот с дипломом живётся намного лучше. Во всяком случае, мне всегда так говорят.

Также часто слышал много историй про людей, которые приходили на собеседования с красными дипломами МГУ, но при этом абсолютно не разбирались в своей специальности, а потом на корпоративах признавались, что диплом у них купленный.

Но времена сейчас другие, сейчас 21 век, век больших возможностей, любой работодатель, который умеет пользоваться мышкой и знает, как выглядит браузер на рабочем столе, может проверить данные диплома. Каждый диплом, который выдаётся учебным заведением, теперь регистрируется в едином реестре, доступ к которому есть у каждого через сайт Федеральной службы по надзору в сфере образования и науки.

image

Внимание: не пытайтесь повторять действия, описанные в публикации и им подобные. Помните о ст. 272 УК РФ «Неправомерный доступ к компьютерной информации».

Читать дальше →
Total votes 360: ↑346 and ↓14+332
Comments812

Анимации в Android по полочкам (Часть 1. Базовые анимации)

Reading time11 min
Views94K
Всем привет!

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

Сегодня мы поговорим об инструментах для создания анимации. К сожалению, так получилось, что в Android достаточно много способов что либо анимировать, и по началу в них очень легко запутаться. Я постараюсь привести максимально общую классификацию и оставлю ссылки исключительно на документацию, т.к. туториалов можно найти предостаточно. Надеюсь эта статья поможет уложить в голове всё по полочками и, при необходимости создать анимацию, выбрать наиболее подходящий способ.
Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments20

Разработка мобильных игр — тернистый путь падавана

Reading time9 min
Views53K
image
Картинка здесь эта потому лишь, что «Звездных воин» фанат я, и телефон тут есть еще

Доброго времени суток. Меня зовут Александр, я фронтенд-разработчик в небольшой компании, но речь в статье пойдет о моем хобби, если его можно так назвать – разработка мобильных игр. Хочу поведать историю моего знакомства и дальнейшего погружения в эту область и поделиться опытом с теми, кто хочет себя попробовать в качестве инди-разработчика, но сомневается. Также интересно узнать мнение опытных разработчиков по поводу тех идей, которые я пытался реализовать. Начну, пожалуй, издалека.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments11

6 вещей, который я хотел бы знать перед разработкой своего первого Android-приложения

Reading time5 min
Views28K
От переводчика: перевод делался сходу, за один присест, так что в некоторых местах может быть немного топорным. В любом случае, вы знаете, куда писать об ошибках.
В комментариях к оригинальной статье есть несколько здравых мыслей, как, например, не использовать библиотеки с мира «большой» джавы, так как они слишком объемные, или использовать всякие Glide-ы вместо Picasso (с чем я, впрочем, согласен). Можете посмотреть, если интересно.
И еще, я не придумал, как заставить отображаться сниппеты с гитхаба, так что я просто скопировал код.


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

Далее следует список вещей, которые надо понимать во время разработки вашего первого приложения под Android. Эти уроки были извлечены из реальных ошибок, которые я делал в исходном коде моей первой программы, — ошибкок, которые я буду приводить ниже. Понимание этих вещей поможет вам написать приложение, которым вы будете гордиться чуть больше.

Конечно, если вы пишете что-то по ходу изучения Android-разработки, скорее всего, позже вы все равно возненавидите свое творение. Как сказал @codestandards:

If the code you wrote a year ago doesn't seem bad to you, you're probably not learning enough.— Code Standards ( @codestandards) 21 мая 2015

(Если код, который вы написали год назад, не кажется вам плохим, вы, наверное, недостаточно учились)
Читать дальше →
Total votes 29: ↑20 and ↓9+11
Comments5

Android Tips and Tricks

Reading time13 min
Views47K
В данном материале можно будет увидеть различные инструменты и подсказки, которые здорово облегчают жизнь Android разработчикам. Большая часть собрана напрямую от знакомых разработчиков и содержит вещи, которые должен знать каждый. Дополнения и расширения приветствуются, и если вы знаете о каком-то крутом механизме, который не был упомянут в статье, не поленитесь перейти в оригинал и открыть pull request.
Читать дальше →
Total votes 49: ↑49 and ↓0+49
Comments18

Raspberry Pi — что можно сделать на основе «малинки»?

Reading time3 min
Views353K


Мини-ПК Raspberry Pi смог быстро стать популярной платформой для разного рода проектов — как коммерческих, так и не очень. Тому есть несколько причин, среди которых — низкая цена компьютера, его относительная универсальность и открытость.

Как результат — интересные проекты стали появляться с завидной регулярностью, и часть таких проектов представлены в этой подборке. Здесь есть и вполне серьезные системы, и проекты, которые можно назвать развлекательными, из серии «а почему бы и нет?».

Читать дальше →
Total votes 44: ↑38 and ↓6+32
Comments38

Рисуем анимированные gif-ки с помощью libgd.

Reading time2 min
Views19K
Смысл данной статьи — дать представление о использовании библиотеки GD в связке с С.

Скачать libgd или почитать более подробно о ее использовании можно здесь: http://www.libgd.org/(eng.)

После установки GD cписок функций и типы принимаемых/возвращаемых данных можно посмотреть в файлике /usr/local/include/gd.h (в моем случае, иначе sudo updatedb && locate gd.h) понять назначение функций довольно просто по их названию.

Код небольшой программки с моим описанием, которая рисует вотэто:

Image and video hosting by TinyPic

Смотрим под катом
Total votes 43: ↑34 and ↓9+25
Comments43

Эх, не люблю писать бойлерплейты, ведь есть IntelliJ IDEA и Apache Velocity

Reading time5 min
Views18K
Добрый день, Хабр!

Речь в этой статье пойдет о том, как частично сократить объем кода, который зачастую приходится набирать вручную или откуда-то копипастить (боже упаси), средствами IntelliJ IDEA, а конкретнее — шаблонами файлов и кода. Если вы не достаточно знакомы с расширенным использованием возможностей этой IDE, то добро пожаловать под кат.

Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments8

«Гибкая разработка»: кратко о методологиях Agile

Reading time6 min
Views47K
Разработка программного обеспечения — это труд, который требует своевременного принятия правильных решений. CTO, архитекторы, тимлиды и сами разработчики регулярно делают выбор в пользу тех или иных инструментов, платформ и фреймворков.

Но все принимаемые решения нужно как-то «синхронизировать». Один из резидентов Hacker News отметил, что ему приходилось наблюдать за тем, как пяти сотням разработчиков в одной крупной компании разрешили самостоятельно принимать некоторые решения в «отрыве» от команды. По его словам, это был хаос. И хотя команда начала работать быстрее, она двигалась в никуда, потому что позднее возникали проблемы на этапах поддержки ПО.

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

Поэтому мы решили начать серию постов о «гибких» методологиях, чтобы еще раз рассмотреть их особенности, сравнить варианты и помочь вашим компаниям оптимизировать процессы. Сегодня мы говорим о Scrum, канбан и экстремальном программировании.

Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments9

«65К методов хватит всем» или как бороться с лимитом DEX методов в Android

Reading time6 min
Views34K
Это произошло внезапно. Только что вы писали код для своего приложения под андроид, вам это нравилось, и вы наслаждались процессом. Вы добавили крутую библиотеку чтобы получить дополнительные возможности и писать более простой код. Но вместо работающего приложения на выходе вы получаете ужасающую надпись:

Unable to execute dex: method ID not in [0, 0xffff]: 65536
Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536

И вы в ступоре, вы неспособны создать DEX файл для APK. Вы не имеете ни малейшего представления о том, что это и как это исправить. И что бы вы не делали, оно будет приводить вас к самому логичному состоянию: ПАНИКА.
Что же произошло?
Total votes 59: ↑55 and ↓4+51
Comments7

Что нужно Junior'у, чтобы успешно устроиться

Reading time4 min
Views228K
Не так давно я отвечал на Хабровопрос по поводу того, что нужно знать, чтобы устроиться после ВУЗа программистом, после чего мне был задан вопрос в личку, а также Вконтакте, а что же собственно нужно в подробностях.
В данной статье я постараюсь рассказать, что должен знать молодой специалист, который ищет работу. Я немного разбираюсь в данном вопросе, т.к. год назад, после 3 курса, задался проблемой трудоустройства и успешно нашел свое место, которое смог совмещать с учебой. И я все еще помню о чем разговаривал на собеседованиях (которых было мало, но они были успешными).
Сразу стоит отметить, что данная статья не подходит тем, чья цель работать исключительно в так называемых Major Players (Google, Yandex, Microsoft и т.п.).
Кому интересно — добро пожаловать под кат (под катом вакансии для Москвы и Казани из комментариев, а также предложение о стажировки для Питера).
Читать дальше →
Total votes 87: ↑55 and ↓32+23
Comments68

Почему Kotlin отстой

Reading time12 min
Views74K

Эта статья родилась по мотивам вот этой статьи в виде полу-шутки. В той статье большая часть "проблем" является либо синтетическими и крайне редко используемыми, либо притянутыми за уши из-за ожидания соответствия языка теоретической парадигме которой, по мнению автора, язык должен соответствовать. С другой стороны не упомянуты вещи, которые мне лично действительно усложняют жизнь.

Читать дальше →
Total votes 103: ↑77 and ↓26+51
Comments154

Выжимки из «Психбольницы в руках пациентов»

Reading time4 min
Views86K
Недавно я прочитал книгу Алана Купера «Психбольница в руках пациентов». Из нее мне удалось почерпнуть ряд идей на тему «как улучшить разработку». Ниже ряд рекомендаций из книги, которые я беру на вооружение.
Вдохновил меня Milfgard вот этим постом. Попробую прочитать все интересные для меня книги из этого списка.


Читать дальше →
Total votes 33: ↑27 and ↓6+21
Comments10

Редактор с подсветкой кода. Проблемы и решения

Reading time7 min
Views33K
image
Большая часть аудитории Хабра регулярно пишет код. В текстовом редакторе или IDE. И сколько бы не было в нем окошек и менюшек, а сердце любого редактора — это компонент (widget), который редактирует и подсвечивает код.

Больше года назад на Хабре был цикл статей от namespace про компонент QScintilla (1, 2, 3), и моя статья с его критикой. Получилась некоторая недосказанность. Ясно, что все плохо, но не понятно, что делать.

Сейчас я написал свой велосипед компонент под названием Qutepart, и у цикла есть продолжение.
Эта статья расскажет о том, как устроена подсветка синтаксиса в моем проекте: какие проблемы возникали, и как они решались. Она про подходы, а не про специфику конкретного GUI-инструментария. Если интересно заглянуть «под капот» текстового редактора, добро пожаловать под кат.
Читать дальше →
Total votes 70: ↑69 and ↓1+68
Comments19

Attify OS — дистрибутив для тестирования на проникновения IoT

Reading time3 min
Views11K

 
Мало кто знает, что буква S в аббревиатуре IoT означает Security.

В этой статье я расскажу о дистрибутиве Attify OS, предназначенном для тестирования IoT- устройств.
Читать дальше →
Total votes 27: ↑26 and ↓1+25
Comments1

Клиент-сервер шаг — за — шагом, от однопоточного до многопоточного (Client-Server step by step)

Reading time11 min
Views260K

Цель публикации показать начинающим Java программистам все этапы создания многопоточного сервера. Для полного понимания данной темы основная информация содержится в комментариях моего кода и в выводимых в консоли сообщениях для лучшего понимания что именно происходит и в какой именно последовательности.


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

Читать дальше →
Total votes 18: ↑11 and ↓7+4
Comments23

Создание красивого образа .dmg для программы в [Mac] OS X

Reading time6 min
Views28K
Приветствую достопочтенных жителей Хабра!

Сегодня я расскажу вам о том, как красиво преподнести пользователю инсталлятор своей программы. Наверняка каждый, кто пользуется не только программами из AppStore, сталкивался с красивыми образами диска .dmg, как вот у Адиума, к примеру. Такой образ представляет из себя, так сказать, интерактивный инсталлятор, в котором дана чёткая подсказка: перетащи значок вот сюда. Всё предельно понятно и просто.

Конечно, для бывалого маковода и zip-архив сгодится, но ведь все любят, чтоб было красиво и удобно. Так что мы с вами, дорогие читатели, озаботимся сегодня созданием такого вот красивого образа диска для своей (ну или чужой) программы.

Можно, конечно, проделать это всё вручную, но это не_наш_метод™, так что мы будем писать shell-скрипт для автоматизации сего процесса. Автоматизация нам так же пригодится в случае ввода в эксплуатацию билд-сервера, тогда этот сервер будет не только собирать программу из исходников, но и делать образ диска для дистрибьюции.

Если Вам не нужно знать как работает такой скрипт, а нужен лишь инструмент — в конце имеется ссылка на весьма универсальный скрипт, готовый к применению.
Приступим
Total votes 70: ↑64 and ↓6+58
Comments18

Многопоточность в Java

Reading time14 min
Views1.1M
Здравствуйте! В этой статье я вкратце расскажу вам о процессах, потоках, и об основах многопоточного программирования на языке Java.
Наиболее очевидная область применения многопоточности – это программирование интерфейсов. Многопоточность незаменима тогда, когда необходимо, чтобы графический интерфейс продолжал отзываться на действия пользователя во время выполнения некоторой обработки информации. Например, поток, отвечающий за интерфейс, может ждать завершения другого потока, загружающего файл из интернета, и в это время выводить некоторую анимацию или обновлять прогресс-бар. Кроме того он может остановить поток загружающий файл, если была нажата кнопка «отмена».

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

Давайте начнем. Сначала о процессах.
Читать дальше →
Total votes 75: ↑59 and ↓16+43
Comments97

Qt. Создание виджета-консоли для графического приложения

Reading time5 min
Views24K
Привет добрым людям.
При прочтении этого заголовка читатели могут подумать: зачем смешивать консольные и графические приложения – консоль в GUI-приложении не нужна. А вот и нет, смею заметить. Иногда совмещение функциональной консоли с полным набором команд и графического отображения для удобной навигации и просмотра данных может дать в итоге мощный инструмент.
И у меня есть пример.
Начав использовать быстрое key-value хранилище данных Redis для своих проектов, я обнаружил, что на данный момент нет ни одного вменяемого desktop-приложения для просмотра, редактирования и администрирования баз данных Redis. Есть только консоль от разработчиков, веб-интерфейс Redis Admin UI, который для своей работы требует .NET (что само по себе уже отпугивает) и пару Ruby-приложений, сделанных, похоже, на скорую руку, на коленке.
Хотелось бы иметь что-то удобное и быстрое, как сама база данных Redis. Поэтому я решил восполнить этот пробел и написать такой инструмент. Так как нужен быстрый – то C++, так как нужен кроссплатформенный – то Qt.

RedisConsole

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

Читать дальше →
Total votes 42: ↑40 and ↓2+38
Comments21

Питон, смещение тона и Пианопьютер

Reading time4 min
Views18K
От переводчика:

Статья, которую я предлагаю вам почитать, не нова — она опубликована аж 29 марта. Но на Реддите ее запостили всего несколько дней назад, да и актуальности своей она точно не потеряла. Интересность ее в том, что автор на простом и коротком примере демонстрирует практическое применение трех больших и популярных библиотек: numpy, scipy и pygame. Про первые две многие слышали, но все больше в контексте научных работ, так что интересно посмотреть на их применение в «обычной» жизни. В конце статьи прекрасная видео-демонстрация результата, хотя бы ее точно стоит посмотреть.

Авторский код сохранен без изменений, несмотря на то, что он оформлен не по PEP-8 и за его валидность я не ручаюсь. Настоящий рабочий код так или иначе есть на ГитХабе, ссылку вы найдете в конце статьи.

Запишите звук, измените тон 50 раз и сопоставьте каждому новому звуку клавишу на клавиатуре компьютера. Получится Пианопьютер!

Читать дальше →
Total votes 55: ↑43 and ↓12+31
Comments17

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity