Size: a a a

Дизайнер учит код

2021 September 20
Дизайнер учит код
Про мечты

В данный момент я мечтаю о двух вещах.

Во-первых, хочется построить модель ракеты и запустить её. Просто, чтобы во время полёта собрать данные об окружающей среде на разной высоте и GPS координаты. Что-то похожее было у «Амперки» год назад. Тогда они потеряли свою ракету после запуска.

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

Конечно, смысла во всём этом особого нет. Да и скорее всего так и останется мечтами, потому, что у меня нет нужных технических навыков. Это уже rocket science какой-то и одного программирования явно будет мало.
источник
2021 September 28
Дизайнер учит код
Ищу дизайнера в команду

«ПИК-комфорт» — крупнейшая управляющая компания в России. Основная задача нашей команды — сделать удобным и понятным процесс взаимодействия с управляющей компанией.

Я ищу дизайнера уровня middle plus или senior. Работать нужно над всем: мобильные приложения и web.

Ожидания
•‎ Умение разбираться в сложных вещах;
•‎ Умение работать с аналитикой;
•‎ Самостоятельность;
•‎ Хорошие коммуникативные навыки;
•‎ Хороший UI.

Будет плюсом
• Опыт работы над дизайн-системами;
•‎ Опыт создания анимаций или микро-взаимодействий.

Предлагаем
•‎ Заработная плата по результатам (платим хорошо);
•‎ Частичное возмещение ДМС после испытательного срока;
•‎ Обучение английскому со скидкой в Skyeng;
•‎ Полностью удалённая работа с возможностью посещать офис в Москве или Екатеринбурге.

Куда писать
Небольшой рассказ о себе и портфолио можно прислать мне напрямую (@boboshko).

#Работа
источник
2021 October 01
Дизайнер учит код
Swift
В общем, я начал изучать Swift.

Зачем
С недавних пор я увлекаюсь разными ККИ. Хочу написать приложение, которое бы помогало мне следить за моими коллекциями. Подобные приложения уже существуют, но они мне не нравятся. Я хочу сделать лучше.

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

В таком же формате я планирую писать конспекты по Swift. Но не знаю, как часто это будет у меня получаться. Я также продолжу писать про код (в целом), дизайн, технологии и собственные проекты.

Как буду действовать
Попробую собрать MVP, как только более-менее освою Swift. Затем, начну развивать функционал приложения. Скорее всего, это будет трудно и займёт немало времени.
источник
2021 October 05
Дизайнер учит код
Факты о Swift

Я ещё толком не добрался до синтаксиса Swift, но уже узнал некоторые факты о нём:

•‎ Swift — строго типизированный язык;
•‎ На Swift можно писать back-end;
•‎ Swift может работать не только на macOS, но и на некоторых других UNIX-системах;
•‎ Помимо Xcode, для разработки на Swift есть ещё одна IDE — AppCode;
•‎ В Xcode можно включить использования Markdown для комментариев в коде.
источник
2021 October 08
Дизайнер учит код
Преобразование типов данных

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

Например, 9 — это целочисленное значение, а 12.29 — число с плавающей точкой. И в парадигме Swift, это два разных типов данных.

Что делать, если нужно умножить 9 на 12.29? Преобразовать одно из чисел к типу данных другого. Делается это довольно просто:

let integerValue = 9
let floatingPoint = 12.29
let result = Int(floatingPoint) * integerValue
print(result) // 108

Стоит обратить внимание, что функция Int() отбрасывает дробную часть и получается 12. В противном случае, результат умножения был бы 110,61 — что является числом с плавающей точкой.

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

Если вы нашли неточности или ошибки, можете написать об этом в комментариях. 👋

#Swift
источник
2021 October 11
Дизайнер учит код
Сочи, 2020

В прошлом году я побывал в Сочи и наконец-то посетил Олимпийский парк. Небольшой фотоотчёт опубликовал у себя на сайте. Фотографировал на Kodak ColorPlus 200.

А сам сайт, кстати, я немного переверстал. Следующим шагом планирую добавлять работы из портфолио. Приглашаю вас в комментарии, если нашли какие-нибудь косяки в вёрстке.

https://boboshko.me/photos/russia/sochi/2020/
источник
2021 October 15
Дизайнер учит код
Работа с числами

Интересно, что Swift позволяет хранить числа в различных системах счислений: двоичной, восьмиричной, шестнадцатиричной, и само собой, десятичной.

let binaryNumber = 0b11101 // 29 в двоичной системе
let octalNumber = 0o35 // 29 в восьмеричной системе
let hexadecimalNumber = 0x1D // 29 в шестнадцатеричной
print(octalNumber, octalNumber, octalNumber) // 29 29 29

Сложно представить, зачем это нужно на практике, но такая возможность существует.

Помимо этого, числа можно записывать с помощью знака подчёркивания. Такой способ помогает упростить визуальное считывание значения.

let number = 122900000
print(number) // 122900000

let underlinedNumber = 122_900_000
print(underlinedNumber) // 122900000

Возможно, вы знаете про разного рода приколы в JavaScript, где 0.1 * 3 будет 0.30000000000000004. Подобное в Swift тоже присутствует.

var number = 0.2
number += 0.1
print(number) // 0.30000000000000004

Решается всё с помощью специального типа данных Decimal. Он работает медленнее, чем схожие типы с плавающей точкой, такие как Float или Double. А также, потребляет больше памяти для вычислений.

Но при этом, вычисления происходят точнее. Чтобы пользоваться  Decimal, нужно импортировать библиотеку Foundation.

import Foundation
var number: Decimal = 0.2
number += 0.1 print(number) // 0.3

Если вы нашли неточности или ошибки, можете написать об этом в комментариях. 👋

#Swift
источник
2021 October 19
Дизайнер учит код
Работа с текстом

В целом, работа с текстом в Swift мне показалась довольно знакомой.

Для объединения строк можно использовать интерполяцию.

let cats = "котиков"
let whoIlove = "Я люблю \(cats)"
print(whoIlove) // Я люблю котиков


Или можно использовать конкатенацию.

let dogs = "Пёсики"
let whoIlove = dogs + " тоже ничего. Ауф!"
print(whoIlove) // Пёсики тоже ничего. Ауф!


Помимо этого, можно число привести к строке.

let number = 12.29
let text = String(number)
print(text) // 12.29


Это всё довольно стандартно. Но в Swift есть пара вещей, которые меня удивили.

Во-первых, Unicode-скаляры — это текст, записанный с помощью порядковых номеров символов в Unicode.

let phrase = "\u{0410}\u{0443}\u{0444}\u{0021}\u{0020}\u{0411}\u{0435}\u{0437}\u{0443}\u{043c}\u{043d}\u{043e}\u{0020}\u{043c}\u{043e}\u{0436}\u{043d}\u{043e}\u{0020}\u{0431}\u{044b}\u{0442}\u{044c}\u{0020}\u{0441}\u{0020}\u{043a}\u{043e}\u{0442}\u{0435}\u{0439}\u{0021}"
print(phrase) // Ауф! Безумно можно быть с котей!


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

let letter: Character = "x"
print(letter) // x


На его фоне, даже Unicode-скаляры уже не кажутся такими бесполезными.

Если вы нашли неточности или ошибки, можете написать об этом в комментариях. 👋

#Swift
источник
2021 October 21
Дизайнер учит код
Напоминаю, что я всё ищу хорошего дизайнера. Пишите мне напрямую (@boboshko).
источник
2021 October 22
Дизайнер учит код
Работа с булевыми значения

В Swift, как и в любом другом языке, есть логический тип данных. Называется он Bool, возвращает true или false. И у него есть свои операторы.

Это фундаментальный тип данных (как строковые или числовые значения) и рассказывать тут особо нечего. Хочу только отметить две вещи, с которыми лично я не сталкивался ранее.

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

let const = false
print(!const) // true


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

Последовательное выполнение вычислений.

let constOne = false
let constTwo = false
let constThree = true
let result = constOne && constTwo || constThree
print(result) // true


Вычисления с указанием их порядка.

let constOne = false
let constTwo = false
let constThree = true
let result = constOne && (constTwo || constThree)
print(result) // false


Если вы нашли неточности или ошибки, можете написать об этом в комментариях. 👋

#Swift
источник
2021 October 26
Дизайнер учит код
ККИ, Swift, и целеполагание

На фотографии самая дорогая на данный момент карточка из моей коллекции. Её стоимость начинается от $51.

В общем, из-за карточек я начал учить Swift. Сейчас их в моей коллекции уже около 1 000 и число постоянно растёт. В основном, это карточки по вселенной Pokémon, но есть немного и по Magic: The Gathering.

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

Так уж совпало, что недавно я пересёкся с Серёжей Москвиным в нашем Екатеринбургском офисе. Именно он «продал» мне Swift как инструмент и посоветовал литературу для старта.

Забавно, что когда я начинал изучать JavaScript, мне хотелось научиться собирать интерактивные прототипы. Теперь же, я учу Swift, чтобы с комфортом собирать карточки.

В этом моменте, я конечно, сам с себя смеюсь. Но современные проблемы требуют современных решений.
источник
2021 November 29
Дизайнер учит код
Кажется, скоро не только дизайнеры будут учиться писать код.

Что думаете на счёт GitHub Copilot?
источник
2021 November 30
Дизайнер учит код
Мой любимый дизайнер Вова Шрейдер сделал шуточную концепцию логотипа для «Яндекса».

https://vc.ru/u/5774-vladimir-schrader/326753-osnovatel-glitche-predlozhil-svoy-variant-logotipa-yandeksa
источник
2021 December 15
Дизайнер учит код
Удалённое UX-тестирование

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

Как вы организовываете процесс? Какой софт или сервисы для этого используете? Как занимаетесь рекрутингом пользователей?

Интересует в первую очередь техническая сторона вопроса. Можно написать мне лично (@boboshko) или в комментарии.

Буду рад, если среди моих читателей найдутся знающие люди.
источник
2021 December 29
Дизайнер учит код
Классический Prince of Persia в браузере

В самый первый Prince of Persia я играл на Dendy, когда мне было лет 5. Тогда, я не понимал цель игры, но меня удивляла её сложность. Она буквально не прощала ошибок. Я не знаю никого, кто бы прошёл её полностью.

Спустя, примерно, 25 лет, в тот самый Prince of Persia можно бесплатно поиграть в браузере.

https://princejs.com

Это порт оригинальной игры. А цель, как оказалось в том, чтобы за 60 минут реального времени спасти принцессу.

Обратите внимание на URL, если вы тоже считаете игру слишком сложной.

Написано на HTML5 и JavaScript.

#JavaScriptShowcase
источник
2022 January 19
Дизайнер учит код
Возьмут ли меня работать IT-архитектором, если я буду всё время говорить «зависит от контекста»?
Анонимный опрос
23%
Да
4%
Нет
73%
Зависит от контекста
Проголосовало: 81
источник
2022 January 21
Дизайнер учит код
Дизайнер учит код программы,
И программист рисует схемы.
Стихосложенье - это драма,
Но в нём рождаются поэмы.

Очередной ИИ, который пишет стихи.
источник
2022 January 31
Дизайнер учит код
источник