Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Исследуйте яркий мир с бесконечными головоломками и разнообразными средами в каждой главе. Расширьте свои возможности с помощью захватывающих испытаний на время со специальными типами шариков, которые помогут вам в пути.

Квест Зумба

Казуальные, Три в ряд, Головоломки

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • Animalrescueed Animalrescueed 36 постов
  • Oskanov Oskanov 7 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
AlexeyPerfilev
AlexeyPerfilev
10 месяцев назад
Серия Очумительные истории

Как баг спас NASA миллионы долларов⁠⁠

Привет, Пикабу! Сегодня я хочу рассказать вам удивительную историю из мира IT, которая доказывает, что иногда ошибки могут привести к неожиданным открытиям.

В 1997 году NASA запустило космический аппарат Cassini-Huygens для исследования Сатурна и его спутников. Миссия была рассчитана на 4 года, но продлилась целых 20 лет! И знаете, что самое интересное? Этому поспособствовала программная ошибка!

Инженеры NASA обнаружили, что из-за бага в программном обеспечении двигатели Cassini работали не так эффективно, как планировалось. Обычно это было бы катастрофой, но в данном случае...

🚀 Ошибка привела к тому, что аппарат расходовал топливо гораздо экономнее!

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

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

А у вас были случаи, когда баг неожиданно оказывался полезным? Поделитесь своими историями в комментариях!

IT NASA Космос Программирование Астрофизика Разработка Программа Запуск ракеты Текст
3
Shawurma
Shawurma
2 года назад
Инкогнито

Программисты NASA такие...⁠⁠

Взято из телеграмма - Инкогнито

Программисты NASA такие... IT юмор, IT, Программист, Программирование, Юмор, NASA, Космос, Voyager 2, Картинка с текстом, Мемы, Новости
Показать полностью 1
IT юмор IT Программист Программирование Юмор NASA Космос Voyager 2 Картинка с текстом Мемы Новости
6
Shawurma
Shawurma
2 года назад
Инкогнито
Серия ITшник

Программирование в космонавтике⁠⁠

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

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

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

Всех с днем космонавтики телега

Программирование в космонавтике Технологии, NASA, Инновации, IT, Программирование, Разработка, Роскосмос
Технологии NASA Инновации IT Программирование Разработка Роскосмос
12
1
sisy
sisy
2 года назад
Программирование на python

Он идиот или...?⁠⁠

Питоноводы есть тут? Он людей за идиотов держит, говоря, что можно подключиться к марсоходу или это реально? Мне кажется, это бред полнейший

P.S. в схильбокс скидки не настоящие, это подтверждают даже работники бывшие, почитайте отзывы сотрудников о конторе

Илья Варламов Питон Программирование Марсоход NASA Онлайн-курсы Видео
39
46
DELETED
3 года назад
Исследователи космоса

Телескоп «Джеймс Уэбб» использует в  системе управления  код JavaScript с движком 20-летней давности⁠⁠

NASA называет интегрированный научный приборный модуль (Integrated Science Instrument Module, ISIM) сердцем телескопа. Это «сердце» управляется, естественно, при помощи ПО — обработчика сценариев, который запускает команды, написанные на JavaScript. По сути, ISIM — это набор инструментов телескопа, с помощью которых он делает снимки, в скрипты контролируют этот процесс.


JavaScript вряд ли можно назвать первым приходящим в голову языком для команд суперсовременного телескопа ценой 10 миллиардов долларов, но дело даже не в этом, а в том, что для написания команд используют SDK Nombas ScriptEase 5.00e от 2003 года! То есть многие люди еще не родились, когда появилось ПО, управляющее «Джеймсом Уэббом». А сама Nombas обанкротилась еще в 2000-х годах.


Впрочем, есть объяснение, почему так случилось. Дело в том, что несмотря на запуск в 2021 году и статус передового космического телескопа, на самом деле разработка его началась давно – в 2004 году. На тот момент ScriptEase 5 было всего два года, так что на тот момент применение этого SDK кажется вполне естественным, но сейчас это, естественно, вызывает удивление. Впрочем, сам обработчик сценариев написан на C++.


https://www.ixbt.com/news/2022/08/21/10-javascript-20.html


Источники:

https://mybroadband.co.za/news/science/457177-james-webb-spa...


https://www.theverge.com/2022/8/18/23206110/james-webb-space...


Обработчик сценариев — это то, что действительно выполняет задачи, но он получает инструкции о том, что делать, от JavaScript. Диаграмма: НАСА

Телескоп «Джеймс Уэбб» использует в  системе управления  код JavaScript с движком 20-летней давности Телескоп Джеймс Уэбб, Javascript, C++, Sdk, Программирование, NASA, Астрономия
Показать полностью 1
Телескоп Джеймс Уэбб Javascript C++ Sdk Программирование NASA Астрономия
15
37
YouZ63
3 года назад
Исследователи космоса

Исторические данные от NASA⁠⁠

Я ранее писал статью А вы знали что у NASA есть API?


В ней я описал как реализовал автоматическое наполнение телеграм канала https://t.me/daily_nasa "астрономической картинкой дня от NASA" с описанием на русском а также со ссылкой на загрузку картинки в HD, позже я реализовал добавление в этот канал статей на тему астрономии из http://hubblesite.org/ и тоже на русском, все круто но меня парило то, что каналу моему меньше года, а NASA публикует данные уже очень много лет, по этому я решил взяться в реализацию отображения исторических данных за выбранный период в телеграм, как? смотрите ниже.


Идея была такой, есть телеграм бот, после нажатия старт в нем отображается красивый календарь, где можно выбрать год, месяц, и день, после выбора мы получаем за этот день картинку / видео и описание (APOD в общем)


Сейчас это выглядит так:

Поклацать можете тут - https://t.me/DailyNasaCalendarbot


Реализовал все опять же таки на Python, так вот:


Те кто читал мои статьи ранее знают, что я не такой уж и фанат "изобретать велосипеды" (разве что иногда) по этому я подумал что писать красивый календарь самому будет долговато, выход? я решил поискать его на GitHub, и я нашел - https://github.com/artembakhanov/python-telegram-bot-calenda...


Отличная библиотека, которая ставится одной командой:

python3 -m pip install python-telegram-bot-calendar

Вопрос, как прикрутить это к NASA API ?


1 - Заходим в примеры (examples) и смотрим скрипт simple_pytelegrambotapi.py

Исторические данные от NASA Космос, Apod, NASA, Астрономия, Телескоп Хаббл, Наука, Python, API, Telegram, Разработка, Программирование, IT, Научпоп, Планета, Telegram бот, Видео, Без звука, Вертикальное видео, Длиннопост

Тут есть блок:

Исторические данные от NASA Космос, Apod, NASA, Астрономия, Телескоп Хаббл, Наука, Python, API, Telegram, Разработка, Программирование, IT, Научпоп, Планета, Telegram бот, Видео, Без звука, Вертикальное видео, Длиннопост

В result в конечном счете приходит год, месяц и день который вы выбрали на календаре, в примерно таком формате 2022-03-04


и это отлично, ибо все что нам остается, это записать этот result в запрос к NASA API, а именно:

Исторические данные от NASA Космос, Apod, NASA, Астрономия, Телескоп Хаббл, Наука, Python, API, Telegram, Разработка, Программирование, IT, Научпоп, Планета, Telegram бот, Видео, Без звука, Вертикальное видео, Длиннопост

В итоге остается только распарсить data, сформировать сообщение и отправить в телеграм, чуть более подробней про это тут:

А вы знали что у NASA есть API?

Продолжение поста «А вы знали что у NASA есть API?»

Особенности API от NASA


Ссылка на бот - https://t.me/DailyNasaCalendarbot

Ссылка на канал - https://t.me/daily_nasa

UPD:


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

Показать полностью 3
[моё] Космос Apod NASA Астрономия Телескоп Хаббл Наука Python API Telegram Разработка Программирование IT Научпоп Планета Telegram бот Видео Без звука Вертикальное видео Длиннопост
1
31
Terentyeff
Terentyeff
3 года назад
Исследователи космоса

Ответ на пост «А вы знали что у NASA есть API?»⁠⁠2

Прочтя этот пост, решил реализовать нечто подобное для ВК.

Приложение раз в час/два и т.д. (настраивается) постит в Вашу группу в ВК рандомную картинку и описание к ней, используя NASA API.


Дисклеймер: Я не супер программист(но очень хотелось бы), поэтому будет полно говнокода, поэтому, прошу сильно не пинать =).


Для начала, необходимо создать standalone-приложение в VK.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Оно нам понадобится для авторизации в соц.сети и получения Access Token, который позволит работать с VK API.


Мы же с вами программисты, а не (вставить любое слово), поэтому, будем писать всё вручную, а не эти ваши десигнеры использовать.


Данные(VKToken, NASAToken, ID Группы, данные об авторизации, ID группы, пользователя и настройки таймера) будем хранить в ini файле.

Для отображения таймера будем использовать QLCDNumber.


Наш хеадер главного окна получился таким:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

И наш cpp файл. Если файл с настройками не найден, то программа создаст новый и поставит таймер стандартно на час.

В QLCDNumber ставим отображение до 8ми цифр.

И все наши виджеты загоняем в QGridLayout и выводим её.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Получилась вот такая штука:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Ничего сложного, правда?)


Интерфейс для настроек делаем по подобию, но, если что, ссылку на git оставлю в конц статьи.

Теперь, перейдём к самому интересному. API NASA и VK API.

У NASA есть много разного API, но мы будем работать с APOD(Astronomy Picture of the Day).

Для получения данных, необходимо отправить GET запрос на https://api.nasa.gov/planetary/apod?api_key=NASA_TOKEN


Пример: https://api.nasa.gov/planetary/apod?api_key=NASAToken&co...

В ответ мы получим json файл с таким содержимым:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Нам интересны значения: date, explanation, hdurl и copyright(Если фотография не в свободном доступе, то нужно ставить копирайт и NASA нас об этом предупреждает.)

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

А вот и полный список всех параметров, но нам будет интересен только "count"

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Наша ссылка будет выглядеть так:

https://api.nasa.gov/planetary/apod?api_key=NASAToken&co...

NASAToken - Токен, который мы получили от NASA.


Авторизация в ВК и получение токена.

Пример авторизации в официальной документации:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Где client_id - id нашего приложения, scope - необходимые параметры доступа. В нашем случае нужно будет использовать offline, wall, groups. offline нужен для бессрочного token.


Так как ответ приходит немного кривой, требуется сделать немного косметических правок:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Затем, вытаскиваем из ссылки access_token и айди пользователя, сохраняем и переключаем авторизацию в True, затем, закрываем окно.

Пришла пора обработки JSON от NASA и загрузки данных на стену группы.


Сперва, давайте обработаем данные от НАСА.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Теперь, перейдем к загрузке полученных данных в группу. Нам понадобится метод wall.post и параметры owner_id, message, attachments, access_token.

Обратите внимание, идентификатор сообщества в параметре owner_id необходимо указывать со знаком "-" — например, owner_id=-1 соответствует идентификатору сообщества ВКонтакте API (club1)


Итоговая ссылка у нас получается:

https://api.vk.com/method/wall.post?owner_id=-" + GroupID + "&message=" + strk + "&attachments=" + attach + "&access_token=" + VKToken + "&v=5.131

Где GroupID - ай ди группы, который мы сохранили в настройках, strk - строка с копирайтом, датой, описанием, attach - ссылка на фото/видео, VKToken - наш access_token, который мы получили после авторизации.


В общем-то, всё. Мы написали программу, которая будет раз в n-часов постить в нашу группу ВК данные от NASA =).


Ссылка на Github с полным кодом: https://github.com/ac973k/NASAImageVKPost

Ссылка на VK API: https://vk.com/dev/methods

Ссылка на группу: https://vk.com/public200170365


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

Показать полностью 9
[моё] IT NASA API Разработка Программирование Космос Наука Бот Научпоп ВКонтакте C++ Qt Vkapi Ответ на пост Длиннопост
3
90
YouZ63
3 года назад
Исследователи космоса

Особенности API от NASA⁠⁠

Ранее я писал статью А вы знали что у NASA есть API?, где я рассказал как создал канал, куда ежедневно и автоматически публикуются картина дня от NASA с описанием на русском. На мое удивление подписалось около 300 человек чему я рад,  все работало как нужно, но cегодня я проснулся и публикации не увидел, подумал "что не так?"


Оказалось, что Json который NASA возвращает динамический, и мой скрипт из-за отсутствия определенного поля навернулся😁 пофиксить не проблема, но мне стало интересно, а что NASA мне послал? а оказалось что вернулось красивое видео на несколько секунд:

Дак еще и с описанием😁 я не мог такое игнорировать, и решил что подписчики должны тоже видеть эту красоту, но я столкнулся с несколькими проблемами:


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


2 - Если я буду добавлять описание + ссылку на Youtube будет выглядеть не так красиво (нуу не так как я задумал то есть😁) что мне тоже не очень понравилось


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


По этому что? я решил сделать чуть более туго, но безотказно (но это не точно)


Получаем Json , понимаем что там ссылка на видео в Youtube, в итоге просто скачиваем его, формируем пост с описанием, потом отправляем в телегу этот видос, щас расскажу как:


1 - Как скачать видео с Youtube (я по прежнему использую Python):

Есть классная библиотека - pytube, в итогу нам от NASA  API в поле url приходитссылка на ютуб видео, и мы его просто подставляем куда нужно:

Особенности API от NASA Telegram, IT, Интернет, Программирование, Программист, NASA, Космос, Наука, Астрономия, Космонавтика, Планета, Телескоп Хаббл, Научпоп, Видео, Без звука, Длиннопост

первая строка это импорт библиотеки


url - думаю вы поняли, сюда ссылка на видео
dest - путь к директории куда будет сохранено видео
в четвертой строке, мы скармливаем библиотеке ссылку на видео, в streams.get_highest_resolution() мы выбираем самое лучшее качество, а download скачивает нам видео в нужную нам директорию

Потом я захотел чтобы я мог эти видео отдельно скачивать, тут мне помог nginx, по факту благодаря конфигурации примерно такого вида:

Особенности API от NASA Telegram, IT, Интернет, Программирование, Программист, NASA, Космос, Наука, Астрономия, Космонавтика, Планета, Телескоп Хаббл, Научпоп, Видео, Без звука, Длиннопост

Можно обратится к серверу по доменному имени + имени видео, и будет возможность его скачать с так сказать собственного хранилища (нуу, такая у меня хотелка была)


Усе? нет, нужно же видео загружать в телеграм еще, и тут мне помогла моя хотелка )


на Python используя библиотеку requests пишем такую тему:


requests.post(f'https://api.telegram.org/bot<Токен вашего бота>/sendVideo?chat_id=<Ид канала>&caption=<Сообщение для видео>&video=<А ТУТ ПРОСТО ССЫЛКА НА ВИДЕО ИЗ ВАШЕГО "ХРАНИЛИЩА">&parse_mode=HTML')

что тут происходит можете читануть в предыдущей статье (там в начале ссылка) из нового тут вместо sendPhoto sendVideo, ну и добавлен параметр video, куда мы просто передаем ссылку на видео с нашего хранилища (если что, ссылку на ютуб туда передать нельзя, телеграм вас пошлет куда подальше) 


и вуаля, в итоге что у нас есть:

1 - Если получили ссылку на видео в ютуб, cкачиваем видео наше хранилище.


2 - Отправляем в телеграм это видео, указывая ему ссылку на наше видео с нашего хранилища + описание.


Done😁


Подводные камни что приходят сразу на ум:

1 - Если NASA API вернет видео больше 50МБ, API телеги нас пошлет

2 - Когда сохраняете видео, лучше дополнительным параметром в методе download(dest) измените имя загружаемого файла на какое-то свое даже рандомное, ибо кто знает как там они его назовут, вдруг это навернет вам сервер или поломает скрипт 😂.


Ну и шаг с хранилищем можете опустить, это больше мне для себя любимого.


Мой канал: https://t.me/daily_nasa

если что не пугайтесь, там теперь льются еще данные из hubblesite.org

Показать полностью 2
Telegram IT Интернет Программирование Программист NASA Космос Наука Астрономия Космонавтика Планета Телескоп Хаббл Научпоп Видео Без звука Длиннопост
19
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии