Вот с тех пор как начал писать что-то с использованием реакта (да и вообще фронтенд SPA на JS) столкнулся с тем что нет библиотек для функционального тестирования. Вот это первое что нравится (но далеко не идеальное). В идеале хочется capybara на js.
Не скажу за другие технологии, но sandbox в Mac OS используется именно для десктопа. Более того, насколько знаю, приложения в AppStore обязаны использовать sandbox.
Ну и если уж зашла речь, обычные приложения в маке (которым не нужна глубокая системная интеграция) можно запускать с любого носителя без установки.
Для относительно простых форм которые повторяют модель redux-form только помогает и упрощает.
Основная проблема состоит в том что начальные значения нужно передавать при создании формы и они передаются самой форме и должны повторять структуру формы. У нас было так что в стэйте (и в базе) данные хранятся в одной структуре, а форме они должны отображаться в другой структуре. Соответственно при инциализации, при сабмите форме, при отображении ошибок, нужно данные из одной структуры перегонять в другую. Если бы я мог указать начально значение непосредственно для поля, то такой проблемы не было бы, я просто извлекал из стейта значение для поля. То же самое с отображением ошибок.
В другом проекте, я столкнулся с тем что redux-form заточен под работу с Promise при сабмите. А там особенность была в том что promise в action нельзя было передать. Пытался сделать полностью через action'ы, но в этом случае некоторые моменты работали не корректно.
formik смотрел. Судя по тому что увидел в README это тот же redux-form только без redux'а. API очень похоже. final-form (после очень бегло взгляда) вроде как тоже. Ну т.е. проблемы будут те же самые что и при использовании redux-form. Как минимум в моем случае.
Тут буквально вчера наткнулся на form-for. Вот это более интересный вариант с другим подходом. Наверное в следующем react проекте буду его пробовать.
Вот насчет redux-form полностью соглашусь. Имею один react проект и главная проблема (самый запутанный код) там именно в redux-form. К сожалению каких-то альтернатив (кроме как реализовать форму полностью самому) не вижу. И да, в маленьких, простых формах redux-form работает прекрасно.
Цитата из книжки "Случайная прогулка по Wall st.", речь идет о "пузыре" 50-60гг:
Этот период получил название “бума троники“, потому что названия новых фирм часто содержали всевозможные вариации и сокращения от слова “электроника“, даже если не имели никакого отношения к электронной промышленности
…
Так, например, компания “American Music Guild”, которая в основном занималась мелкооптовой продажей грампластинок и проигрывателей, при акционировании сменила имя и стала называться “Space Tone”. Акции практически сразу удвоились в цене, а в отдельные дни продавались даже в 14 раз дороже номинала
После выполнения перевода между своими счетами, суммы на счетах автоматом не обновились. Привычное движение: потянуть вниз для обновления не работает. Пришлось перезагружать приложение.
Насчет кнопки "Войти" тоже не понял нафига. В самом первом обновление этой кнопки вроде не было.
Чтоб посмотреть карты надо вытягивать их снизу. Наверное было бы удобно, если бы у меня не оказался iPhone X где это движение уже используется для переключения между приложениями. В первой версии было вообще не реально использовать, во второй версии сделали плашку для вытягивания побольше и вытягивать карты стало удобнее, но теперь переключение между приложениями не всегда удается.
Что понравилось:
Перевод денег стал удобнее и нагляднее. Хотя при переводе какой-то информации не хватило, сейчас уже не вспомню чего.
Наконец-то (!!!) пропало ограничение на одну операцию в две минуты.
Просто с новыми стандартами (У Apple M2 chip какой-то, у Android A2DP, поддержка которого в вашем sony скорее всего есть) все с качество звука по bluetooth стало намного лучше. Могу по своим наушникам судить у которых есть A2DP. Когда подключаю эти наушники к iPhone (у iPhone нет поддержки A2DP), то качество звука заметно хуже чем когда подключаю эти же наушники к MacBook (у которого есть поддержка A2DP). И опять таки когда к iPhone подключены то какие-то постоянные прерывания, иногда дисконнект бывает, а с ноутом никаких проблем. И я ни разу не аудиофил, первые хорошие наушники у меня, до этого EarPods'ами пользовался, но разницу в качестве замечаю.
Мне кажется, на первом же споре про архитектуру нужно было ответить что-то типа: "Если не нравится архитектура, то делай форк и делай архитектуру которая нравится. Общественность нас рассудит выбрав то что ей нравится." Думаю на этом конфликт был бы исчерпан.
Ну давайте уж полностью приведем цитату что я просил:
А вы вот сами попробуйте написать. Ну и скринкаст запишите в качестве подтверждения. Я посмотрю за сколько вы напишите. С нуля. Ничего заранее не продумывая. На месте вспоминая как это пишется. Включая отладку, рефакторинг и оптимизацию. Сильно сомневаюсь что быстрее уложитесь.
Тем не менее ваш коментарий был на 2 часа позже моего. Поэтому я не знаю сколько вы реально затратили времени. И вы уверены что ваш алгоритм оптимален? (я не утверждаю что не оптимален, но и не уверен что оптимален). А как оптимален по времени или по используемой памяти? И на каком языке? Вроде бы СИ. А если надо, скажем на питоне? Я вот, например, питон не знаю. Мне уже как циклы делать надо будет гуглить.
Но в целом вы почему то не соглашаетесь со мной, хотя говорите о том же что и я только другими словами. Поэтому считаю что спор бесполезен.
Я с самого начала и сказал: мы разное понимаем под понятием «сеньор».
Да, действительное разное. Я под сениором понимаю программиста который умеет, в первую очередь, сложные задачи решать, над архитектурой думать, умеет понимать место проекта в бизнесе клиента и т.д. А не то где и как он работает.
Вы прям в каком то идеальном мире живете. Себя я не буду брать (я, можно сказать, фрилансом занимаюсь, и при желании могу хоть сколько часов на OS выделять, но в ущерб деньгам), но доводилось сталкиваться с хорошими программистами которые работают на ставке мидла и тянут весь проект и просто не знают насколько они хороши и что в другом месте они могли бы получать больше и иметь лучшие условия. От чего они по факту не перестают быть сениорами.
Зря вы так думаете. Знаю не мало хороших программистов (про себя скромно умолчу) у кого очень мало open source. И уж тем более репутация на SO (это я бы вообще не рассматривал, т.к. чтоб заработать там репутацию надо не столько знания, сколько время). Далеко не у всех есть время чтоб занимать open source'ом. Хорошо если начальство/клиент позволит выложить в open source то что было в рабочее время написано. А если нет, то где взять время даже не представляю.
Но не представляю как можно брать человека на работу не видя того что он может сделать. Ну да, open source всякий можно использовать, но большое количество проектов (кода) далеко не у всех хороших программистов есть в open source (сам тому пример, буквально пара небольших открытых проектов есть). Всякие статьи/конференции тем более не показатель.
Но это все уже немного другой вопрос, как мне кажется
Вы меня не понимаете и говорите совсем о других вещах о которых я писал. Приводите примеры не подходящий тому что я описывал. Не вижу смысла продолжать дальше спор. Какой-то спор глухого со слепым.
Вот с тех пор как начал писать что-то с использованием реакта (да и вообще фронтенд SPA на JS) столкнулся с тем что нет библиотек для функционального тестирования. Вот это первое что нравится (но далеко не идеальное). В идеале хочется capybara на js.
Ну и если уж зашла речь, обычные приложения в маке (которым не нужна глубокая системная интеграция) можно запускать с любого носителя без установки.
Для относительно простых форм которые повторяют модель redux-form только помогает и упрощает.
Основная проблема состоит в том что начальные значения нужно передавать при создании формы и они передаются самой форме и должны повторять структуру формы. У нас было так что в стэйте (и в базе) данные хранятся в одной структуре, а форме они должны отображаться в другой структуре. Соответственно при инциализации, при сабмите форме, при отображении ошибок, нужно данные из одной структуры перегонять в другую. Если бы я мог указать начально значение непосредственно для поля, то такой проблемы не было бы, я просто извлекал из стейта значение для поля. То же самое с отображением ошибок.
В другом проекте, я столкнулся с тем что redux-form заточен под работу с Promise при сабмите. А там особенность была в том что promise в action нельзя было передать. Пытался сделать полностью через action'ы, но в этом случае некоторые моменты работали не корректно.
formikсмотрел. Судя по тому что увидел в README это тот же redux-form только без redux'а. API очень похоже.final-form(после очень бегло взгляда) вроде как тоже. Ну т.е. проблемы будут те же самые что и при использовании redux-form. Как минимум в моем случае.Тут буквально вчера наткнулся на
form-for. Вот это более интересный вариант с другим подходом. Наверное в следующем react проекте буду его пробовать.Вот насчет redux-form полностью соглашусь. Имею один react проект и главная проблема (самый запутанный код) там именно в redux-form. К сожалению каких-то альтернатив (кроме как реализовать форму полностью самому) не вижу. И да, в маленьких, простых формах redux-form работает прекрасно.
Цитата из книжки "Случайная прогулка по Wall st.", речь идет о "пузыре" 50-60гг:
У них стало слишком много пользователей, сервера не справляются и они ищут способы уменьшить количество пользователей.
Что не понравилось:
Что понравилось:
смс менее защищенные чем email (например к ним имеют доступ те же гос. спец. службы). Так что если делать привязку через телефон то какой-нить Authy.
Мне кажется, на первом же споре про архитектуру нужно было ответить что-то типа: "Если не нравится архитектура, то делай форк и делай архитектуру которая нравится. Общественность нас рассудит выбрав то что ей нравится." Думаю на этом конфликт был бы исчерпан.
Подведем итог спора:
Осталось запилить новый пост на хабре с опросом и выяснить кого больше :)
Ну давайте уж полностью приведем цитату что я просил:
Тем не менее ваш коментарий был на 2 часа позже моего. Поэтому я не знаю сколько вы реально затратили времени. И вы уверены что ваш алгоритм оптимален? (я не утверждаю что не оптимален, но и не уверен что оптимален). А как оптимален по времени или по используемой памяти? И на каком языке? Вроде бы СИ. А если надо, скажем на питоне? Я вот, например, питон не знаю. Мне уже как циклы делать надо будет гуглить.
Но в целом вы почему то не соглашаетесь со мной, хотя говорите о том же что и я только другими словами. Поэтому считаю что спор бесполезен.
Да, действительное разное. Я под сениором понимаю программиста который умеет, в первую очередь, сложные задачи решать, над архитектурой думать, умеет понимать место проекта в бизнесе клиента и т.д. А не то где и как он работает.
Вы прям в каком то идеальном мире живете. Себя я не буду брать (я, можно сказать, фрилансом занимаюсь, и при желании могу хоть сколько часов на OS выделять, но в ущерб деньгам), но доводилось сталкиваться с хорошими программистами которые работают на ставке мидла и тянут весь проект и просто не знают насколько они хороши и что в другом месте они могли бы получать больше и иметь лучшие условия. От чего они по факту не перестают быть сениорами.
Зря вы так думаете. Знаю не мало хороших программистов (про себя скромно умолчу) у кого очень мало open source. И уж тем более репутация на SO (это я бы вообще не рассматривал, т.к. чтоб заработать там репутацию надо не столько знания, сколько время). Далеко не у всех есть время чтоб занимать open source'ом. Хорошо если начальство/клиент позволит выложить в open source то что было в рабочее время написано. А если нет, то где взять время даже не представляю.
Наверное поэтому нам и тяжело найти сениора :).
Но не представляю как можно брать человека на работу не видя того что он может сделать. Ну да, open source всякий можно использовать, но большое количество проектов (кода) далеко не у всех хороших программистов есть в open source (сам тому пример, буквально пара небольших открытых проектов есть). Всякие статьи/конференции тем более не показатель.
Но это все уже немного другой вопрос, как мне кажется
Вы меня не понимаете и говорите совсем о других вещах о которых я писал. Приводите примеры не подходящий тому что я описывал. Не вижу смысла продолжать дальше спор. Какой-то спор глухого со слепым.