Вы спросите меня - а как же избежать возможного проникновения внутрь вашего Bubble приложения?
Давайте рассмотрим шаги, которые позволят обезопасить вас:
1. Для начала, отключим отображение спецификации. Для этого нужно зайти в Settings - API и убрать галочку с Hide Swagger API documentation access. Теперь, если добавить api/1.1/meta/swagger.json к URL, то вы получите JSON с ошибкой 404. Однако, это не закрывает доступ к открытым workflows и таблицам БД.
2. Чтобы перейти к разбору workflows нам нужно понять основные слои Bubble API:
- При подключении по API сначала происходит аутентификация - Bubble проверяет подлинность предоставленной вами информации.
Вы можете предоставить:
— bearer token админа, который создается в Settings - API и предоставляет неограниченные права администратора.
— токен пользователя, который можно получить использовав связку логин/пароль и action Log the user in в API workflows.
- Далее, в случае аутентификации под пользователем, система идентифицирует вас по предоставленному токену и определяет какой именно из пользователей вы.
- И в конце авторизирует - определяет какие права вы имеете согласно вашим параметрам. В этом случае права будут ограничены согласно созданным Privacy Rules в БД. Мы рассмотрим это подробнее в следующем посте про Data API и Privacy rules. Я лично не использовал такой метод, но он может быть полезен при разработке SaaS решений.
4. Перейдем к API workflows (один из видов backend workflows). По дефолту они создаются с включенным параметром Expose as public API workflow. Это значит, что они будут видны снаружи, но доступ к ним будет закрыт. Дернуть такие workflows можно изнутри Bubble или снаружи при помощи API токена. Если параметр выключен, вы не сможете дергать этот workflow даже с токеном админа и workflow перестанет быть виден (будет выдавать ошибку 404).
5. Чтобы открыть доступ для всех к публичному API workflow, вам нужно поставить галочку This workflow can be run without authentication. В данном случае любой человек в интернете сможет дернуть этот workflow и потратить capacity вашего приложения (да-да, вы можете скриптом на питоне положить пресловутый Betterlegal в течении часа). Насколько я это понял, данный параметр имеет смысл только при включенном Expose as public API workflow.
6. В случае, если вы авторизовались как пользователь (не админ), то ваши действия будут ограничены Privacy Rules из БД. Если для какого-то кейса вам потребуется игнорировать эти ограничения вы можете использовать параметр Ignore privacy rules when running the workflow.
Ставьте лайк и подписывайтесь - в следующий раз мы разберем Data API и Privacy Rules, от которых перейдем к созданию ролей.
Давайте рассмотрим шаги, которые позволят обезопасить вас:
1. Для начала, отключим отображение спецификации. Для этого нужно зайти в Settings - API и убрать галочку с Hide Swagger API documentation access. Теперь, если добавить api/1.1/meta/swagger.json к URL, то вы получите JSON с ошибкой 404. Однако, это не закрывает доступ к открытым workflows и таблицам БД.
2. Чтобы перейти к разбору workflows нам нужно понять основные слои Bubble API:
- При подключении по API сначала происходит аутентификация - Bubble проверяет подлинность предоставленной вами информации.
Вы можете предоставить:
— bearer token админа, который создается в Settings - API и предоставляет неограниченные права администратора.
— токен пользователя, который можно получить использовав связку логин/пароль и action Log the user in в API workflows.
- Далее, в случае аутентификации под пользователем, система идентифицирует вас по предоставленному токену и определяет какой именно из пользователей вы.
- И в конце авторизирует - определяет какие права вы имеете согласно вашим параметрам. В этом случае права будут ограничены согласно созданным Privacy Rules в БД. Мы рассмотрим это подробнее в следующем посте про Data API и Privacy rules. Я лично не использовал такой метод, но он может быть полезен при разработке SaaS решений.
4. Перейдем к API workflows (один из видов backend workflows). По дефолту они создаются с включенным параметром Expose as public API workflow. Это значит, что они будут видны снаружи, но доступ к ним будет закрыт. Дернуть такие workflows можно изнутри Bubble или снаружи при помощи API токена. Если параметр выключен, вы не сможете дергать этот workflow даже с токеном админа и workflow перестанет быть виден (будет выдавать ошибку 404).
5. Чтобы открыть доступ для всех к публичному API workflow, вам нужно поставить галочку This workflow can be run without authentication. В данном случае любой человек в интернете сможет дернуть этот workflow и потратить capacity вашего приложения (да-да, вы можете скриптом на питоне положить пресловутый Betterlegal в течении часа). Насколько я это понял, данный параметр имеет смысл только при включенном Expose as public API workflow.
6. В случае, если вы авторизовались как пользователь (не админ), то ваши действия будут ограничены Privacy Rules из БД. Если для какого-то кейса вам потребуется игнорировать эти ограничения вы можете использовать параметр Ignore privacy rules when running the workflow.
Ставьте лайк и подписывайтесь - в следующий раз мы разберем Data API и Privacy Rules, от которых перейдем к созданию ролей.
Всем привет!
Налетело много проектов и нет времени дописать посты, но на днях они появятся.
А пока делюсь вакансиями, которые мне прилетают в Linkedin (если вы еще не начали раскачивать свой профиль, скорее подключайте Waalaxy)
1. Netguru ищут Flutterflow разработчика с зп до 6.7k EUR
2. Split Lease ищут Bubble разработчика. Скидывать резюме на английском на почту - robert@leasesplit.com.
Налетело много проектов и нет времени дописать посты, но на днях они появятся.
А пока делюсь вакансиями, которые мне прилетают в Linkedin (если вы еще не начали раскачивать свой профиль, скорее подключайте Waalaxy)
1. Netguru ищут Flutterflow разработчика с зп до 6.7k EUR
2. Split Lease ищут Bubble разработчика. Скидывать резюме на английском на почту - robert@leasesplit.com.
Вы устали от смены вкладок по тысяче раз на дню? Хотите вставить волшебную кнопку в интерфейс, которая решит все ваши проблемы?
Я тоже! Каждый день мне нужно отвечать на десяток офферов на Upwork и для каждого инструмента я использую уникальное сообщение. Именно поэтому я сделал плагин с помощью ChatGPT, который добавляет кнопки на все случаи жизни.
Как это работает?
1. Я открываю офер и вижу 4 кнопки - Universal, Make, Bubble, Airtable.
2. Жму одну из них и подготовленный ответ вставляется в инпут.
3. Готово
Круто, но! Чтобы создать такой плагин, вам нужно собрать в папку несколько файлов с кодом и залить это себе в браузер, а при желании сменить 2 слова в тексте вам нужно будет сделать все это заново. Я уже не говорю о том, что кнопки отображаются через раз, ответ исчезает из поля, если снять с него фокус, а при ковырянии в сайте через панель разработчика Upwork может ограничить вам доступ к сайту на некоторое время.
Звучит муторно и грустно😴 …
А есть ли альтернатива? Arc Boosts!
Boosts - одна из фичей браузера Arc, которая позволяет делать свой мини-плагин для любого сайта. При помощи Boosts вы можете навсегда спрятать shorts в ютубе или покрасить твиттер в желтый цвет. С помощью этой фичи я перенес плагин в два счета и теперь могу менять текст и дебажить его без особых проблем. Попробуйте сами - ссылка на мой JS скрипт (работает 50% на 50%).
Кроме того, лично для меня этот браузер лидирует в удобстве организации вкладок и пространств.
(Если вы устали от переключения между аккаунтами разных клиентов - посмотрите Sidekick, в платной версии можно создавать изолированные workspaces)
___
Вау! Теперь я смогу кастомизировать интернет под себя. Но как же мои клиенты? Могу ли я кастомизировать браузер для них?
А хотят ли ваши клиенты запускать целые цепочки действий по кнопке прямо в интерфейсе Gmail/Linkedin/Google Sheets с захватом данных со страницы?
Хотят ли они получать уведомления о всех событиях прямо в браузере?
Хотят ли они создать бесшовный рабочий процесс, который сохранит им десятки часов?
Если ответ да, то вам нужен Ply.io
Кроме вышеперечисленного вы можете вызвать командную строку, через которую запускаются кастомные сценарии (как в Make).
В сценарии можно использовать множество различных утилит, AI функции и кастомные формы для сбора данных.
Именно тут я и остановился, сделав себе несколько сценариев для копирования текстов под различные офферы.
____
Фуф!🤯
Кажется, мы уже достаточно набили вашу голову новыми идеями и полезной информацией, но это еще не все…
Дело в том, что изначально плагин был совсем другим - он умел забирать текст офера и прогонять его через ChatGPT, у плагина был интерфейс на Bubble и каждый пользователь мог сам настраивать промпт под себя, но что-то пошло не так…
Ставьте лайк и подписывайтесь, в следующий раз мы узнаем что пошло не так и как собрать свой сложный плагин с ИИ
Я тоже! Каждый день мне нужно отвечать на десяток офферов на Upwork и для каждого инструмента я использую уникальное сообщение. Именно поэтому я сделал плагин с помощью ChatGPT, который добавляет кнопки на все случаи жизни.
Как это работает?
1. Я открываю офер и вижу 4 кнопки - Universal, Make, Bubble, Airtable.
2. Жму одну из них и подготовленный ответ вставляется в инпут.
3. Готово
Круто, но! Чтобы создать такой плагин, вам нужно собрать в папку несколько файлов с кодом и залить это себе в браузер, а при желании сменить 2 слова в тексте вам нужно будет сделать все это заново. Я уже не говорю о том, что кнопки отображаются через раз, ответ исчезает из поля, если снять с него фокус, а при ковырянии в сайте через панель разработчика Upwork может ограничить вам доступ к сайту на некоторое время.
Звучит муторно и грустно
А есть ли альтернатива? Arc Boosts!
Boosts - одна из фичей браузера Arc, которая позволяет делать свой мини-плагин для любого сайта. При помощи Boosts вы можете навсегда спрятать shorts в ютубе или покрасить твиттер в желтый цвет. С помощью этой фичи я перенес плагин в два счета и теперь могу менять текст и дебажить его без особых проблем. Попробуйте сами - ссылка на мой JS скрипт (работает 50% на 50%).
Кроме того, лично для меня этот браузер лидирует в удобстве организации вкладок и пространств.
___
Вау! Теперь я смогу кастомизировать интернет под себя. Но как же мои клиенты? Могу ли я кастомизировать браузер для них?
А хотят ли ваши клиенты запускать целые цепочки действий по кнопке прямо в интерфейсе Gmail/Linkedin/Google Sheets с захватом данных со страницы?
Хотят ли они получать уведомления о всех событиях прямо в браузере?
Хотят ли они создать бесшовный рабочий процесс, который сохранит им десятки часов?
Если ответ да, то вам нужен Ply.io
Кроме вышеперечисленного вы можете вызвать командную строку, через которую запускаются кастомные сценарии (как в Make).
В сценарии можно использовать множество различных утилит, AI функции и кастомные формы для сбора данных.
Именно тут я и остановился, сделав себе несколько сценариев для копирования текстов под различные офферы.
____
Фуф!
Кажется, мы уже достаточно набили вашу голову новыми идеями и полезной информацией, но это еще не все…
Дело в том, что изначально плагин был совсем другим - он умел забирать текст офера и прогонять его через ChatGPT, у плагина был интерфейс на Bubble и каждый пользователь мог сам настраивать промпт под себя, но что-то пошло не так…
Ставьте лайк и подписывайтесь, в следующий раз мы узнаем что пошло не так и как собрать свой сложный плагин с ИИ
Please open Telegram to view this post
VIEW IN TELEGRAM
Есть ощущение, что контент слишком технический и сухой, поэтому возник вопрос - интересен ли вам контент другого типа?
Я могу рассказать о путешествиях и жизни в Аргентине, поделиться находками из сферы AI или придумать что-то новенькое.
Я могу рассказать о путешествиях и жизни в Аргентине, поделиться находками из сферы AI или придумать что-то новенькое.
Anonymous Poll
11%
Lifestyle
28%
Интересные находки
57%
Экспертный контент
48%
Что-то новенькое (например прожарка чужих проектов)
Грязный ноукодер
Получение данных с сайта без API через Integromat Ко мне обратился co-founder логистического сервиса из США. Ему требовалось обогощать новых лидов информацией из сервиса Seamless.ai Однако, у данного сервиса нет публичного API, поэтому пришлось искать обходные…
Как я научился научился получать доступ к данным сервисов, у которых нет публичного API?
В седьмом классе все играли в “Тюрягу” Вконтакте. Я очень хотел быть круче остальных и часами сидел на форумах по взлому. В итоге я нашел два способа подняться:
1. Фишинговый JS скрипт, который я уговорил ввести в браузерную строку более десятка человек и за счет которого все их "нычки” отправились ко мне.
2. Волшебная программа Charles, которая позволяет перехватить и изменить пакеты, отправляемые вашим браузером на сервер. Таким образом я смог обманывать игру и делать тату на закрытых частях тела.
Да-да, кто бы мог подумать, что именно это поможет мне спустя десять лет настроить скрытую интеграцию с сервисом, чтобы ежемесячно рассылать сотни тысяч долларов инвесторам фонда.
Если вы хотите научиться делать также - посмотрите мою статью двухлетней давности.
Актуальная ссылка.
Ставьте лайк и подписывайтесь, завтра расскажу 8 способов, как я использую ChatGPT в работе.
В седьмом классе все играли в “Тюрягу” Вконтакте. Я очень хотел быть круче остальных и часами сидел на форумах по взлому. В итоге я нашел два способа подняться:
1. Фишинговый JS скрипт, который я уговорил ввести в браузерную строку более десятка человек и за счет которого все их "нычки” отправились ко мне.
2. Волшебная программа Charles, которая позволяет перехватить и изменить пакеты, отправляемые вашим браузером на сервер. Таким образом я смог обманывать игру и делать тату на закрытых частях тела.
Да-да, кто бы мог подумать, что именно это поможет мне спустя десять лет настроить скрытую интеграцию с сервисом, чтобы ежемесячно рассылать сотни тысяч долларов инвесторам фонда.
Если вы хотите научиться делать также - посмотрите мою статью двухлетней давности.
Актуальная ссылка.
Ставьте лайк и подписывайтесь, завтра расскажу 8 способов, как я использую ChatGPT в работе.
Итак, 8 способов, как я использовал ChatGPT за последний месяц:
1. Вытащил структуру PostgreSQL базы и на ее основе прошу создавать SQL запросы, используя описание нужных метрик из ТЗ. Есть другие варианты - если у вас база на Supabase, если не боитесь подключить базу к стороннему сервису.
2. Научил ChatGPT создавать документацию для Make сценария на основе JSON из blueprint. Code interpretator помогает открыть большие JSON файлы.
3. Получал новые знания через саммари книг, которые давно хотел почитать. (Читать все же интереснее)
4. Построил ER диаграмму для базы данных с помощью плагина D2. Если у вас Supabase, то пользуйтесь этим.
5. Создал JS скрипт для выгрузки всех данных из БД незащищенного приложения на Bubble и попросил проанализировать эти данные. Придется попотеть, чтобы длинные текста не ломали структуру CSV.
6. Использовал чужие промпты и провел маркетинговый анализ для агентства. В целом ничего нового, нужно больше времени тратить на сами активности.
7. Создал тест-кейсы для приложения. В целом под каждый проект я завожу отдельный диалог и веду все там, чтобы при надобности создавать нужные артефакты.
8. Говорил с документацией Botpress, чтобы быстрее в ней разобраться.
Ставьте лайк, подписывайтесь и рассказывайте в комментариях, как вы используете ИИ для своих проектов.
1. Вытащил структуру PostgreSQL базы и на ее основе прошу создавать SQL запросы, используя описание нужных метрик из ТЗ. Есть другие варианты - если у вас база на Supabase, если не боитесь подключить базу к стороннему сервису.
2. Научил ChatGPT создавать документацию для Make сценария на основе JSON из blueprint. Code interpretator помогает открыть большие JSON файлы.
3. Получал новые знания через саммари книг, которые давно хотел почитать. (Читать все же интереснее)
4. Построил ER диаграмму для базы данных с помощью плагина D2. Если у вас Supabase, то пользуйтесь этим.
5. Создал JS скрипт для выгрузки всех данных из БД незащищенного приложения на Bubble и попросил проанализировать эти данные. Придется попотеть, чтобы длинные текста не ломали структуру CSV.
6. Использовал чужие промпты и провел маркетинговый анализ для агентства. В целом ничего нового, нужно больше времени тратить на сами активности.
7. Создал тест-кейсы для приложения. В целом под каждый проект я завожу отдельный диалог и веду все там, чтобы при надобности создавать нужные артефакты.
8. Говорил с документацией Botpress, чтобы быстрее в ней разобраться.
Ставьте лайк, подписывайтесь и рассказывайте в комментариях, как вы используете ИИ для своих проектов.
Время пришло…
Что если по краткому описанию вашего бизнеса/процесса сервис накидает схему БД и создаст ее вам прямо в вашем Airtable?
Именно такое приложение я сделал за день, пока болел😏 Увидим и опробуем его совсем скоро, а пока опрос - кто вы?
Что если по краткому описанию вашего бизнеса/процесса сервис накидает схему БД и создаст ее вам прямо в вашем Airtable?
Именно такое приложение я сделал за день, пока болел😏 Увидим и опробуем его совсем скоро, а пока опрос - кто вы?
Anonymous Poll
33%
Я фрилансер/агентство и создаю базы в АТ
17%
Я владелец бизнеса/предприниматель и хочу создать/создал базу в АТ
44%
Не знаю что такое АТ, но интересно
6%
Не интересно
Зачем я разнес готовый проект и усложнил себе жизнь? Чтобы упростить ее себе в будущем!
Мексиканский сервис по сдачи авто в аренду попросил меня организовать небольшую форму для сбора документов. В данный момент их CRM является Notion (🤨 ), а файлы хранятся в Google Drive.
Я, конечно же, наотрез отказался использовать Notion для хранения какой-либо информации и развернул форму на связке Bubble+Airtable.
Клиенту очень понравился результат и скорость (1 неделя разработки с полной документацией) и он решил продолжить работу со мной, а именно построить полноценный сервис с проверкой данных пользователя в государственных/банковских сервисах и идентификацией личности.
Данный сервис потребует хранения большого количества данных и хорошую скорость обработки, поэтому перед началом следующего этапа мною было принято решение перевести БД из Airtable в Supabase.
Какие есть варианты?
1. Перенести все ручками - пока база небольшая, это займет не так уж много времени.
2. Использовать плагин в Airtable, который опишет структуру всей БД в отдельной таблице, и на основе этих данных попросить GPT создать нужные SQL запросы.
3. Использовать сервис от UIbakery для переноса данных.
Так как первые два пути понятны, я решилнабить шишек опробовать третий вариант.
Результаты переноса:
1. Сервис создает базы со всеми колонками и переносит данные.
2. Rollup поля и формулы переносит как текст.
3. Linked records переносит как массив текстов.
4. Первичным ключом ставит Record Id из Airtable.
Боли:
1. Названия колонок переносятся как в Airtable, а по хорошему в БД они должны быть в нижнем регистре без пробелов, поэтому приходится их переделывать. Однако при попытке изменить название первичного ключе вылазит ошибка.
2. Также ошибка вылазит при попытке создать foreign key на другую таблицу на основе перенесенных Linked records.
Все это делает невозможным оперирование перенесенными таблицами.
В итоге все таблицы я пересоздал заново, чтобы сделать нормальные имена и ключи.
Ставьте лайки и подписывайтесь, совсем скоро я представлю свой сервис, который позволит с помощью AI разворачивать базы в Airtable в пару кликов на основе вашего запроса.
Мексиканский сервис по сдачи авто в аренду попросил меня организовать небольшую форму для сбора документов. В данный момент их CRM является Notion (
Я, конечно же, наотрез отказался использовать Notion для хранения какой-либо информации и развернул форму на связке Bubble+Airtable.
Клиенту очень понравился результат и скорость (1 неделя разработки с полной документацией) и он решил продолжить работу со мной, а именно построить полноценный сервис с проверкой данных пользователя в государственных/банковских сервисах и идентификацией личности.
Данный сервис потребует хранения большого количества данных и хорошую скорость обработки, поэтому перед началом следующего этапа мною было принято решение перевести БД из Airtable в Supabase.
Какие есть варианты?
1. Перенести все ручками - пока база небольшая, это займет не так уж много времени.
2. Использовать плагин в Airtable, который опишет структуру всей БД в отдельной таблице, и на основе этих данных попросить GPT создать нужные SQL запросы.
3. Использовать сервис от UIbakery для переноса данных.
Так как первые два пути понятны, я решил
Результаты переноса:
1. Сервис создает базы со всеми колонками и переносит данные.
2. Rollup поля и формулы переносит как текст.
3. Linked records переносит как массив текстов.
4. Первичным ключом ставит Record Id из Airtable.
Боли:
1. Названия колонок переносятся как в Airtable, а по хорошему в БД они должны быть в нижнем регистре без пробелов, поэтому приходится их переделывать. Однако при попытке изменить название первичного ключе вылазит ошибка.
2. Также ошибка вылазит при попытке создать foreign key на другую таблицу на основе перенесенных Linked records.
Все это делает невозможным оперирование перенесенными таблицами.
В итоге все таблицы я пересоздал заново, чтобы сделать нормальные имена и ключи.
Ставьте лайки и подписывайтесь, совсем скоро я представлю свой сервис, который позволит с помощью AI разворачивать базы в Airtable в пару кликов на основе вашего запроса.
Please open Telegram to view this post
VIEW IN TELEGRAM
4 способа, как я использовал ChatGPT на этой неделе.
1. Изучил работу Supabase и best practices по безопасности и хранения файлов в нем. Методы более серьезные и многоступенчатые, нежели в Bubble/Airtable, но и тем интересные.
2. Писал много JS кода. Я переношу разработанный сервис для генерации баз Airtable из Retool (где можно писать JS код) в Bubble. Оказалось😳 , что в Bubble все очень туго с оперированием временными данными, поэтому пришлось немного переписать созданные функции и развернуть в Napkin.
3. Разбирался с приложениями для Telegram. Я думал это будет сложнее, но для подключения webapp нужно просто указать ссылку в botfather. Я подключил простое приложение на Bubble, но так и не смог заставить передать событие в Telegram, чтобы отобразилась кнопка ‘Назад’. Если у кого-то есть опыт, поделитесь пожалуйста в комментариях, интересно узнать, как обмениваться данными с tg и получать информацию о пользователе.
4. Пытался расковырять API китайского маркетплейса Poizon. У них есть только мобильное приложение и ссылки, которые можно открыть. Удалось через них подцепить пару запросов, но там используется хэширование и я не стал копаться дальше, а просто нашел на гитхабе контакты людей, которые продают свою API прослойку.
Также я сделал чат-бота на Botpress для юридической фирмы - он выдает ответ из базы знаний, а в случае его отсутствия собирает ответ из опубликованных на сайте законов, отправляет его на утверждение юристу и после этого пересылает ответ клиенту.
Если у вас есть интересный бизнес-кейс для ИИ чат-бота, то пишите мне, я готов помочь бесплатно для портфолио.
Ставьте лайк и подписывайтесь, завтра будет кое-что интересное
1. Изучил работу Supabase и best practices по безопасности и хранения файлов в нем. Методы более серьезные и многоступенчатые, нежели в Bubble/Airtable, но и тем интересные.
2. Писал много JS кода. Я переношу разработанный сервис для генерации баз Airtable из Retool (где можно писать JS код) в Bubble. Оказалось
3. Разбирался с приложениями для Telegram. Я думал это будет сложнее, но для подключения webapp нужно просто указать ссылку в botfather. Я подключил простое приложение на Bubble, но так и не смог заставить передать событие в Telegram, чтобы отобразилась кнопка ‘Назад’. Если у кого-то есть опыт, поделитесь пожалуйста в комментариях, интересно узнать, как обмениваться данными с tg и получать информацию о пользователе.
4. Пытался расковырять API китайского маркетплейса Poizon. У них есть только мобильное приложение и ссылки, которые можно открыть. Удалось через них подцепить пару запросов, но там используется хэширование и я не стал копаться дальше, а просто нашел на гитхабе контакты людей, которые продают свою API прослойку.
Также я сделал чат-бота на Botpress для юридической фирмы - он выдает ответ из базы знаний, а в случае его отсутствия собирает ответ из опубликованных на сайте законов, отправляет его на утверждение юристу и после этого пересылает ответ клиенту.
Если у вас есть интересный бизнес-кейс для ИИ чат-бота, то пишите мне, я готов помочь бесплатно для портфолио.
Ставьте лайк и подписывайтесь, завтра будет кое-что интересное
Please open Telegram to view this post
VIEW IN TELEGRAM
За последние 3 года no-code вырос очень сильно - множество людей стали переходить сюда из различных сфер и бизнес стал понимать его плюсы. Однако, когда я начинал, российское сообщество было совсем маленьким, и многих ключевых игроков ты знал лично, делал с ними проекты и делился находками.
Теперь, эти ребята обросли опытом, открыли свои агентства и успели сделать большое количество сложных и интересных проектов. Пришло время делиться опытом и вкладываться в сообщество, которое когда-то дало нам столько возможностей.
Поэтому мы с ребятами объединились и собрали в одну папку все каналы мастодонтов российского no-code комьюнити.
Добавляйте папку к себе и развивайтесь вместе с нами: https://t.me/addlist/HoU9tzTepaY4NmJi
________________________
Для новых подписчиков
Меня зовут Марк и последние 8 месяцев я живу в Буенос-Айресе. Я занимаюсь low/no-code разработкой около 3х лет и успел поработать внутри Make.com, побывать одним из первых low-code разработчиков в JTI и даже поработать с Miro.
В этом канале я делюсь различными советами для ноукодеров и личным опытом работы над проектами.
Я открыт для вопросов и помощи, а также новых проектов - @low_code
Что почитать прямо сейчас
Использование ИИ в работе no-code разработчика
Где искать работу в no-code
Как “взломать” Bubble приложение
Теперь, эти ребята обросли опытом, открыли свои агентства и успели сделать большое количество сложных и интересных проектов. Пришло время делиться опытом и вкладываться в сообщество, которое когда-то дало нам столько возможностей.
Поэтому мы с ребятами объединились и собрали в одну папку все каналы мастодонтов российского no-code комьюнити.
Добавляйте папку к себе и развивайтесь вместе с нами: https://t.me/addlist/HoU9tzTepaY4NmJi
________________________
Для новых подписчиков
Меня зовут Марк и последние 8 месяцев я живу в Буенос-Айресе. Я занимаюсь low/no-code разработкой около 3х лет и успел поработать внутри Make.com, побывать одним из первых low-code разработчиков в JTI и даже поработать с Miro.
В этом канале я делюсь различными советами для ноукодеров и личным опытом работы над проектами.
Я открыт для вопросов и помощи, а также новых проектов - @low_code
Что почитать прямо сейчас
Использование ИИ в работе no-code разработчика
Где искать работу в no-code
Как “взломать” Bubble приложение
Telegram
No-code
Mark invites you to add the folder “No-code”, which includes 9 chats.
Грязный ноукодер pinned «За последние 3 года no-code вырос очень сильно - множество людей стали переходить сюда из различных сфер и бизнес стал понимать его плюсы. Однако, когда я начинал, российское сообщество было совсем маленьким, и многих ключевых игроков ты знал лично, делал…»
Как жить, когда проектов много
На моей практике все активности происходят волнами. Неизвестно связанно ли это с какими-то биологическими и физическими процессами, но после каждого затишья начинается буря. В этой буре я часто оказываюсь погребенным под волной проектов из-за своего желания помочь всем и каждому.
Сначала, из-за отсутствия проектов, начинается паника и голод, тогда начинаешь соглашаться на все возможные подработки и проекты. Далее идет активная фаза откликов на все что только движется. И вот, когда уже начинает казаться, что удача от тебя отвернулась и придется идти на завод, тебя накрывает огромная волна откликов и предложений.
Данный круговорот событий случался со мной не раз и не два, но я все еще плохо справляюсь с такими ситуациями. Правильной тактикой будет повышение цены на свои услуги и выбор наиболее интересных и перспективных проектов. Но предсказать будущее достаточно сложно, ведь еще вчера клиенту все понравилось и он готовил описание новой задачи, а уже сегодня он бесследно исчез (и возможно появится снова в самый не подходящий момент).
А посему, я тону в пучине задач и звонков снова и снова…
На моей практике все активности происходят волнами. Неизвестно связанно ли это с какими-то биологическими и физическими процессами, но после каждого затишья начинается буря. В этой буре я часто оказываюсь погребенным под волной проектов из-за своего желания помочь всем и каждому.
Сначала, из-за отсутствия проектов, начинается паника и голод, тогда начинаешь соглашаться на все возможные подработки и проекты. Далее идет активная фаза откликов на все что только движется. И вот, когда уже начинает казаться, что удача от тебя отвернулась и придется идти на завод, тебя накрывает огромная волна откликов и предложений.
Данный круговорот событий случался со мной не раз и не два, но я все еще плохо справляюсь с такими ситуациями. Правильной тактикой будет повышение цены на свои услуги и выбор наиболее интересных и перспективных проектов. Но предсказать будущее достаточно сложно, ведь еще вчера клиенту все понравилось и он готовил описание новой задачи, а уже сегодня он бесследно исчез (и возможно появится снова в самый не подходящий момент).
А посему, я тону в пучине задач и звонков снова и снова…
4 способа, как я использовал ChatGPT на этой неделе.
1. Очищал спарсенные с Linkedin данные. ChatGPT не идеален и сломался на небольшой задаче в конце, поэтому пришлось доделывать ручками, но все же были сэкономлены часы времени.
2. Делал демо за час до звонка с клиентом. 3 из 3 лидов, где я показал демо на первом звонке, тут же подписали контракты. Чат помогает быстро понять, что нужно клиенту, прикинуть небольшое демо и даже симулировать API запросы - вместо сервиса я обращаюсь к OpenAI API, что рассчитать время полета между двумя городами.
3. Провел ретро по коммуникации с клиентами - скормил ИИ переписки, разобрал сделанные ошибки и сделал выводы на будущее. Любое ретро будет полезным - по проектам, по привычкам, по проведенному свободному времени и тд.
4. Приготовил базу для генерации контента - определил персоны, типы контента и хуки для постов, накидал десяток различных тем на будущее. Однако, времени на его генерацию совсем нет, нужно стараться готовить контент на неделю в выходные.
Ставьте лайк и подписывайтесь, данная рубрика публикуется еженедельно.
1. Очищал спарсенные с Linkedin данные. ChatGPT не идеален и сломался на небольшой задаче в конце, поэтому пришлось доделывать ручками, но все же были сэкономлены часы времени.
2. Делал демо за час до звонка с клиентом. 3 из 3 лидов, где я показал демо на первом звонке, тут же подписали контракты. Чат помогает быстро понять, что нужно клиенту, прикинуть небольшое демо и даже симулировать API запросы - вместо сервиса я обращаюсь к OpenAI API, что рассчитать время полета между двумя городами.
3. Провел ретро по коммуникации с клиентами - скормил ИИ переписки, разобрал сделанные ошибки и сделал выводы на будущее. Любое ретро будет полезным - по проектам, по привычкам, по проведенному свободному времени и тд.
4. Приготовил базу для генерации контента - определил персоны, типы контента и хуки для постов, накидал десяток различных тем на будущее. Однако, времени на его генерацию совсем нет, нужно стараться готовить контент на неделю в выходные.
Ставьте лайк и подписывайтесь, данная рубрика публикуется еженедельно.
Мини-гайд - Как сделать динамический progress bar для сервиса доставки
1. Создаем option list Statuses со статусами (у нас 7 статусов) и дополнительным атрибутом Order, где будет храниться порядковый номер статуса
2. Создаем state на главной странице для хранения статуса index status. При получении текстового статуса из источника мы будем сравнивать его с Statuses Display и сохранять в state. (Get Option - Statuses: All options - filtered by Display = нас текстовый статус)
3. Создаем repeating group со списком наших статусов отсортированных по порядку (Get Option - Statuses: All options - sorted by Order)
4. Создаем группу с align to parent layout, чтобы наложить визуальные элементы друг на друга - черную полосу (max width = 150px), белый кружок и черный кружок побольше (невидимый по дефолту). Все центрируем.
5. Обрезаем углы по бокам у полоски - для этого делаем 2 условия, где Statuses’s Order = 1/7 (у нас 7 статусов). Устанавливаем ряд изменений - max width 75 px (половина от изначальной), border roundness left/right top/bottom и alignment center left/right. Таким образом для первых и последних статусов будет отображаться лишь половина полосы справа или слева.
6. Чтобы показать текущий этап, устанавливаем условие видимости для большого кружка - parent group Statuses’s Order is index’s status’s order.
7. Чтобы отметить прошедшие этапы, устанавливаем условия смены цвета белого кружка на красный - parent group Statuses’s Order <= index’s status’s order.
8. (опционально) Допустим, нам нужно отметить прошедшие этапы на полосе, закрасив ее зеленой. Так как точка у нас располагается посередине отрезка, нам нужно закрашивать его наполовину, для этого добавим дополнительную половинку зеленой полосы. Добавляем черной полосе условие смены цвета parent group Statuses’s Order < index’s status’s order и добавляем спрятанную зеленую полоску с alignment center left и max width 75 px, показываем ее по условию Statuses’s Order != 1 (у нас 7 статусов). Таким образом мы будем закрашивать левую половину у полосы до точки посередине.
Лучше делать полосу вертикальной, чтобы решение было адаптивным для мобильных экранов. (на последнем скрине решение у Fedex)
А как бы это сделали вы?
Ставьте лайк и подписывайтесь, я выстраиваю систему генерации контента, поэтому скоро его станет еще больше (позже расскажу и о системе)
1. Создаем option list Statuses со статусами (у нас 7 статусов) и дополнительным атрибутом Order, где будет храниться порядковый номер статуса
2. Создаем state на главной странице для хранения статуса index status. При получении текстового статуса из источника мы будем сравнивать его с Statuses Display и сохранять в state. (Get Option - Statuses: All options - filtered by Display = нас текстовый статус)
3. Создаем repeating group со списком наших статусов отсортированных по порядку (Get Option - Statuses: All options - sorted by Order)
4. Создаем группу с align to parent layout, чтобы наложить визуальные элементы друг на друга - черную полосу (max width = 150px), белый кружок и черный кружок побольше (невидимый по дефолту). Все центрируем.
5. Обрезаем углы по бокам у полоски - для этого делаем 2 условия, где Statuses’s Order = 1/7 (у нас 7 статусов). Устанавливаем ряд изменений - max width 75 px (половина от изначальной), border roundness left/right top/bottom и alignment center left/right. Таким образом для первых и последних статусов будет отображаться лишь половина полосы справа или слева.
6. Чтобы показать текущий этап, устанавливаем условие видимости для большого кружка - parent group Statuses’s Order is index’s status’s order.
7. Чтобы отметить прошедшие этапы, устанавливаем условия смены цвета белого кружка на красный - parent group Statuses’s Order <= index’s status’s order.
8. (опционально) Допустим, нам нужно отметить прошедшие этапы на полосе, закрасив ее зеленой. Так как точка у нас располагается посередине отрезка, нам нужно закрашивать его наполовину, для этого добавим дополнительную половинку зеленой полосы. Добавляем черной полосе условие смены цвета parent group Statuses’s Order < index’s status’s order и добавляем спрятанную зеленую полоску с alignment center left и max width 75 px, показываем ее по условию Statuses’s Order != 1 (у нас 7 статусов). Таким образом мы будем закрашивать левую половину у полосы до точки посередине.
Лучше делать полосу вертикальной, чтобы решение было адаптивным для мобильных экранов. (на последнем скрине решение у Fedex)
А как бы это сделали вы?
Ставьте лайк и подписывайтесь, я выстраиваю систему генерации контента, поэтому скоро его станет еще больше (позже расскажу и о системе)
Как закрыть 5 из 5 лидов?
Все просто - нужно сделать демо.
Я по жизни руководствуюсь принципом - “чтобы что-то получить, нужно что-то дать”.
Разработка демо и погружение в проект клиента может занять от 30 до 60 минут вашего времени - здесь вы отдаете время.
Клиент, видя частично работающий продукт на основе его запроса, скорее согласиться работать с вами, нежели с абстрактными откликами - тут вы получаете расположение.
Создавать за такой короткий срок работающее демо сможет не каждый, но если придерживаться некоторых принципов, то со временем вы сможете приблизиться к таким результатам.
Вот мои основные принципы:
1. Готовая рабочая среда - у меня есть готовое приложение Bubble, интегрированное с базой Airtable, и я использую Make для внутренней автоматизации с готовыми интеграциями OpenAI и Gmail.
2. Библиотека элементов - готовые страницы аутентификации, списки с карточками/формами и другие элементы, которые помогут вам быстро собрать дизайн (для дизайна я использую Untitled UI Kit).
3. Генерация данных - использование ChatGPT для создания фиктивных данных, адаптированных к конкретному кейсу.
4. Симуляция действия и интеграция - использование ChatGPT или заготовленных JSON для имитации ответов от сервисов или действий.
5. Автоматизация процесса - я создал приложение, которое автоматически генерирует базы Airtable с таблицами на основе промпта. Я уже упоминал о нем, но теперь нет времени его доделать и опубликовать.
Часть этих принципов относится не только к прототипированию, но и к работе с проектами в целом.
Ставьте лайк и подписывайтесь, если хотите узнать, как я управляю этими 5-ю проектами одновременно
Все просто - нужно сделать демо.
Я по жизни руководствуюсь принципом - “чтобы что-то получить, нужно что-то дать”.
Разработка демо и погружение в проект клиента может занять от 30 до 60 минут вашего времени - здесь вы отдаете время.
Клиент, видя частично работающий продукт на основе его запроса, скорее согласиться работать с вами, нежели с абстрактными откликами - тут вы получаете расположение.
Создавать за такой короткий срок работающее демо сможет не каждый, но если придерживаться некоторых принципов, то со временем вы сможете приблизиться к таким результатам.
Вот мои основные принципы:
1. Готовая рабочая среда - у меня есть готовое приложение Bubble, интегрированное с базой Airtable, и я использую Make для внутренней автоматизации с готовыми интеграциями OpenAI и Gmail.
2. Библиотека элементов - готовые страницы аутентификации, списки с карточками/формами и другие элементы, которые помогут вам быстро собрать дизайн (для дизайна я использую Untitled UI Kit).
3. Генерация данных - использование ChatGPT для создания фиктивных данных, адаптированных к конкретному кейсу.
4. Симуляция действия и интеграция - использование ChatGPT или заготовленных JSON для имитации ответов от сервисов или действий.
5. Автоматизация процесса - я создал приложение, которое автоматически генерирует базы Airtable с таблицами на основе промпта. Я уже упоминал о нем, но теперь нет времени его доделать и опубликовать.
Часть этих принципов относится не только к прототипированию, но и к работе с проектами в целом.
Ставьте лайк и подписывайтесь, если хотите узнать, как я управляю этими 5-ю проектами одновременно