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

Пикабомбер

Аркады, Пиксельная, 2D

Играть

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

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

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

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

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

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

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

Шишки начинающего предпринимателя⁠⁠

Привет, Пикабу! Сегодня я расскажу тебе историю о больших ошибках маленького бизнеса. Слово «больших», наверное, стоит взять в кавычки – если смотреть на последствия сейчас, то они не кажутся значительными и серьезными. Однако, если заглянуть вперёд (пост о конструировании машины времени – будет позже), последствия оказываются не маленькими. Вещи, описанные в этой истории, просты и банальны – у меня нет цели удивить кого-то. Но есть цель обобщить свой опыт в надежде на то, что у кого-то получится срезать эти острые углы.


Не кратко о себе: Меня зовут Александр, мне 27 лет и больше половины жизни я профессионально работаю в сфере IT. Последние десять лет (с небольшими перерывами и если округлить) я проработал в провинциальном интернет-провайдере, занимался кабельным и IP-телевидением. Строил с нуля антенные посты, организовывал приём, взаимодействовал с телеканалами… Можно сказать, был целым отделом в одном лице. Плюс писал ПО, ремонтировал компьютеры, год трудился на должности руководителя отдела IT. Росла зарплата, росли нагрузки, росло и силилось ощущение потолка. Росло разочарование в своей работе. Если раньше работа была схожа с хобби, то под конец казалась каторгой. И наступил момент, когда я спонтанно принял решение об увольнении, написал заявление и через две недели оказался безработным. Услышав о том, что государство субсидирует самозанятость в размере 58 800 рублей я направился в местный Центр Занятости Населения и с этого момента начался мой путь в предприниматели. История взаимодействия с Центром Занятости длинная, но, как ни странно, очень положительная. Если глубокоуважаемой аудитории будет интересно – расскажу об этом в следующих постах. Ведь немало читаемых авторов начинали именно так, с середины :)


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


Шишка первая или не связывайтесь с муниципальными организациями.


В силу нового законодательства это сделать не так просто, но всё равно есть некоторые схемы. Так вот, не связывайтесь с детскими садами, школами, управлениями и прочими муниципалами. У них всех действительно полно проблем и задач, которые им нужно решить. Мы общались по теме информационных технологий, я предлагал услуги по обслуживанию компьютерной техники, видеонаблюдению и разработку\поддержку сайтов. Чаще всего встреча с лицом, принимающим решения, организуется очень просто, тебя внимательно слушают, задают вопросы, подтверждают наличие проблем и присутствие свободного бюджета на их решение. Однако дальше разговоров дело не заходит. Не могу сказать, с чем это связано. Мне хочется думать, что это связано с тем, что информационные технологии не имеют должного приоритета в головах руководства таких компаний – у них есть более насущные проблемы, решение которых более важно. С другой стороны, нельзя исключать и банальную коррупцию – возможно, заявляя о наличии задач и бюджета подается сигнал, мол деньги есть, давай попилим. Каков итог? Очень простой – вы можете потратить десятки часов впустую. Вы будете готовить коммерческие предложения, организовывать и проводить встречи. Всё это время можно было бы потратить с большей пользой, предлагая свои услуги частным лицам и частному бизнесу.


Шишка вторая или будьте осторожны в выборе специализации.


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


1) Продвигать свои услуги по нескольким направлениям – намного сложнее, дороже и дольше, чем по какому-то одному. Продвигая одну услугу, ты тратишь один рекламный бюджет и тратишь его более эффективно. Можно позволить себе больший тираж полиграфии и это будет выгоднее, ведь напечатать тысячу одинаковых листовок намного дешевле, чем напечатать десять разных по 100 экземпляров.


2) Тебе требуется больше оборудования, материалов и инструментов. Если ты занимаешься созданием сайтов – тебе нужен компьютер, стол, стул и какой-никакой доступ в Интернет. Если ты занимаешься монтажом СКС – добавляй лестницу, перфоратор, специфический инструмент, сумку для переноски и еще тысячу мелочей. А это затраты на приобретение и хранение.


3) Ты не рвёшься из контекста в контекст и быстрее нарабатываешь опыт. Нет накладных расходов на переключение мозга из одного режима в другой. Если ты тянешь кабели – то ты тянешь кабели. Если делаешь сайты – делаешь сайты. Если ты тянешь кабели и делаешь сайты одновременно – твой КПД очень сильно падает. Появляются дополнительные затраты на логистику, когда ты после монтажа летишь в офис выгружаешь инструмент, спешишь переодеться, потому, что уже через час у тебя встреча по совсем другому роду деятельности. Нервничаешь, суетишься, не можешь полностью погрузится в процесс.


И так далее, и так далее. В итоге ты не успеваешь ни там, ни там. Клиенты ждут, нервничают, ищут других исполнителей. Если бы я сразу выбрал какую-то одну специализацию – моя чистая прибыль была бы намного больше. Правда, не исключен и другой вариант – допустив ошибку я бы пошел на дно. Поэтому, мне кажется разумным иметь 2-3 специализации, но не более того. Всё, что сверх того – придётся отложить до лучших времен.


Шишка третья или, как бы банально это не звучало, время – это деньги.


Не ждите никого, сверх разумного минимума. Частично это перекликается с шишкой за номером один, но требуется расширенное объяснение. Я называю это «зависимое ожидание». Состояние, когда ты ждешь какого-то определенного человека \ его решение и твоя дальнейшая деятельность зависит от этого. У меня такое состояние было, буквально, в начале этой недели. Полтора месяца назад я начал реализовывать один проект, для которого требовалось помещение. Подходящее, на первый взгляд, помещение нашлось недалеко от моего дома. Я позвонил, сходил, посмотрел, пообщался с владельцем. Хорошее помещение, подходящий (пусть и с натяжкой) ценник… И куча хлама внутри него. Собственник помещения обещал быстро провести ремонт, организовать санузел, вывезти хлам и сдать это помещение мне. Полтора месяца пролетели как один день – за это время мы неоднократно разговаривали по телефону, встречались в этом помещении, но процесс шел крайне медленно. В конце концов я нашел другое помещение, на гораздо лучших условиях. Если бы я не ждал полтора месяца, а продолжал бы поиски – скорее всего, мое предприятие уже бы распахнуло двери для клиентов.


К сожалению, это лишь верхушка айсберга под названием «предпринимательство». Будем продолжать в следующих постах.

Показать полностью
Предпринимательство Бизнес Старт Ошибки молодости Нытье Длиннопост Текст
23
14
Bivayugrub
Bivayugrub
8 лет назад

Как же я не ошибался..⁠⁠

Богатый мужик из фильма, признаваясь в любви сказал: "Я всю жизнь добивался того ,что мне на самом деле было не нужно, как же я ошибался! Теперь, я понял что мне нужна была лишь ты".

А я подумал: повезло мне, я еще в 21 год нашел себе любимую и не "наворотил  на свою голову миллионов". Люблю тебя дорогая.

[моё] Ошибки молодости Не стал богатым Простое человеческое счастье Текст
8
6
UnicornSoftware
8 лет назад

Истории о новогодних багах⁠⁠

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


Перед вами рассказ о Злобном Баге. О том, как он неоднократно пытался испортить новогодние праздники. Часто ему удавалось воплотить свои коварные замыслы, но, к счастью, в каждой Сказке "злу" противостоит настоящее "добро".

Истории о новогодних багах Программирование, Баг, Новый Год, Рождество, Код, iOS, Amazon, Ошибки молодости, Длиннопост

Елочка-вирус

17 декабря 1987 года студент немецкого университета Клаустал-Зеллерфилд, будучи еще совсем молодым программистом, решил оригинально поздравить своих друзей. Он отправил всем близким и дорогим рождественскую ель! Конечно, он не срубил ее в лесу и даже не купил в магазине. Не забывайте, наш герой - программист, поэтому он написал программу на языке REXX для VM/CMS, которая после запуска выводила на экран милую елочку и теплые поздравления.

Истории о новогодних багах Программирование, Баг, Новый Год, Рождество, Код, iOS, Amazon, Ошибки молодости, Длиннопост

С благими намерениями и искренним желанием сделать добро писал код наш герой. Но Злобный Баг вклинился в процесс, произошла перегрузка сети и самовоспроизводящаяся программа Christmas на два дня парализовала работу частной почты IBM Vnet (цепочка: университетская сеть - EARN - BitNet - IBM-Vnet) по всему миру. Возникли сомнения: а не является ли герой - антигероем, а трогательное поздравление - вирусом? Доказать злой умысел автора программы Christmas Tree не удалось. Но без влияния Злобного Бага здесь точно не обошлось.


Аттракцион невиданной щедрости

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


Amazon - один из первых интернет-сервисов, на котором ежедневно продаются и покупаются десятки тысяч разнообразных товаров. Идеальное место для выбора подарков! Именно этим и занимались пользователи 12 декабря 2014 года. Особый ажиотаж вызвала потрясающая цена на тысячи товаров - всего 1 пенни (источник). Благодаря сервис за великолепный рождественский подарок, люди с особым энтузиазмом занялись покупками. А Злобный Баг ухмылялся в сторонке, ожидая реакции продавцов, еще не знающих о том, что они понесли огромные убытки.


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


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


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

День, когда произошла данная ошибка, продавцы Amazon запомнят надолго. Они потеряли тысячи долларов, многие оказались на грани банкротства (источник). Если бы не оперативные меры Amazon, сумевшего аннулировать большую часть заказов, то репутация крупнейшего интернет-магазина была бы совершенно испорчена.


Разработчики RepricerExpress извинились за сбой ПО, опубликовав заявление в своем официальном блоге.


Apple против Нового года

Помните фильм "Гринч - похититель Рождества"? Видимо, Злобный баг вдохновился его сюжетом, решив нанести удар "яблочным" девайсам. В феврале 2016 года владельцы техники Apple обнаружили занятный баг. В социальных сетях зародилась легенда о том, что если установить дату 1 января 1970 года, а затем выполнить перезагрузку устройства, то произойдет полный крах системы, а вместо смартфона или планшета у вас в руках окажется кирпич с эмблемой "яблочко". При этом возможности откатить действие нет. Были сведения о присутствии данной ошибки на устройствах с 64-битным процессором: Apple A7, A8, A8X, A9 и A9X: iPhone 5S и последующие, iPad Air и iPad Mini 2 и новее, а также 6-е поколение iPod Touch. Версия операционной системы значения не имела.

Истории о новогодних багах Программирование, Баг, Новый Год, Рождество, Код, iOS, Amazon, Ошибки молодости, Длиннопост

Нашлись ли желающие опытным путем проверить наличие бага? Несомненно! По всему миру прокатилась волна убийств гаджетов Apple. К счастью, умельцы нашли способ вернуть работоспособность "кирпичам". В Apple официальную причину ошибки не озвучили, но заявили о возможности такого бага, при ручной установке на iOS-устройстве дату в мае 1970 года или ранее.


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


Вариант 1. По причине того, что время представлено в UNIX-формате, начало отсчета ведется с 1 января 1970 года, т.е. является нулем. При изменении часового пояса, переменная может принять значение меньше нуля.


Вариант 2. Баг характерен для 64-х битных устройств, поэтому возможно, в первую очередь вычисляется 32-х битная метка времени, затем происходит смещение по часовому поясу, метка конвертируется в размер указателя, по этой причине старшие биты заполняются неверно и... Добро пожаловать в XXII век!


Сон от IPhone

Продолжительный сон, не прерываемый звуком будильника, - разве это не мечта большинства из нас? iPhone - не Газпром, но исполняет мечты своих пользователей! Все те, кто хотел бодро начать новый 2013 год и поставил будильник на 1 января, благополучно проспали. Злобный баг явно замыслил ввести огромное количество пользователей в режим "спящей царевны", т.к. вплоть до 3 января будильник на iPhone не работал.

Истории о новогодних багах Программирование, Баг, Новый Год, Рождество, Код, iOS, Amazon, Ошибки молодости, Длиннопост

Apple снова решил отмолчаться. Но версия о причинах возникновения ошибки все равно распространилась. Для отображения года используется стандарт ISO week date, он широко применяется в финансовых организациях для удобства формирования отчетного (финансового) года. Его особенность состоит в том, что новый год считается новым только с той недели, которая содержит первый четверг года. Календарь в стандарте ISO week date содержит 52 или 53 недели (364 или 371 день). Таким образом, iPhone жил по старому году, а новый 2013 наступил только 7 января - с новой полной недели года.


Была и альтернативная версия, в которой в качестве Злобного бага выступал сам Стив Джобс. Якобы, основатель Apple любил спать, вот и придумал такую фичу. Конечно, это шутка. А вот последствия у такого, казалось бы, несерьезного бага оказались более чем неприятными: люди проспали работу, потеряли деньги, опоздали на важные встречи.

Полет отменяется

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


12 декабря 2014 года в британском центре УВД Национальной службы воздушного движения Великобритании (NATS) произошел программный сбой. Работа части аэропортов, в том числе таких загруженных гигантов, как Хитроу, Гатвик, Станстед, Бирмингем, Кардифф и Глазго была остановлена. Усугубило проблему и время, которое Злобный баг выбрал для атаки - пятница, вторая половина дня, преддверие рождественских праздников.


Сбой длился чуть более получаса - 36 минут, но его последствия свидетельствуют о крайне высокой цене ошибки. Злобный баг постарался на славу:


92 рейса отменено


170 рейсов задержано


10 воздушных суден были вынуждены уйти на запасные аэродромы


125000 пассажирам были причинены неудобства


623 млн фунтов стерлингов потеряла британская казна


Подобная ситуация не могла остаться без внимания. Было проведено расследование. Управление гражданской авиации (CAA) и NATS в заключительном отчете описывают баг в программном обеспечении System Flight Server (SFS). Этот сервер отвечает за то, чтобы в систему управления NATS в режиме реального времени поступали данные на контроллер рабочих станций. В системе существует два одинаковых SFS - работающий и запасной. Оба вычисляют одни и те же данные. При отключении основного SFS, в работу вступает запасной. Система работала при аппаратных сбоях, но по каким-то причинам ни на одном из серверов не была предусмотрена защита от программных исключений.


Максимальное количество одновременно функционирующих рабочих станций (мест управления полетами и наблюдения за ними) - 193. Теоретически. Фактически же в коде SFS прописано совершенно другое значение - 151. Поэтому, когда произошла попытка одновременного подключения 153 рабочих станций, началась перезагрузка и последующее "падение" системы. Позже выяснилось, что "скрытая неисправность программного обеспечения" была допущена еще в 1990 году. Удивительно, что она не проявилась раньше.

Проблема 2000 и 2038

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


Чем же аргументировался страх перед Терминаторами? Логикой! Первые компьютеры были медлительны, поэтому, чтобы не тратить столь ценную производительность на пустяки, разработчики приняли решение использовать два знака представления кода в датах. Например, 23 марта 1991 года выглядело как 23.03.91. Визуально такое обозначение не "режет глаз", данный вариант записи даты кажется абсолютно привычным. Но с точки зрения компьютера все не так просто: 2000 год и 1900 получают одинаковое обозначение: 00. Таким образом, при наступлении 2000 года внутренние часы компьютера переведутся на 1900 год.


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


Но совсем скоро наступит уже 2017 год, а значит, Конец света не произошел.


Впрочем, некоторые сбои при смене тысячелетия все же произошли:


-Пострадали компьютерные сети British Telecom. Их работала была парализована, а для восстановления потребовалось проанализировать около миллиона строк кода. Обошлось это British Telecom недешево - около $0.5 млрд.


-В Испании были зафиксированы происшествия на 9 ядерных реакторах. К счастью, обошлось без последствий.


-В Монголии "Проблема 2000" затронула систему начала движения поездок и билетные кассы.


Некоторые баги были весьма забавны:


-Сроки заключения в одной из испанских тюрем выросли/сократились на 100 лет


-В некоторых магазинах Греции люди при покупке получили чек, датированный 1900 годом


-В южнокорейском госпитале компьютерная программа "Контроль за пациентами" объявила годовалого ребенка 99-летним стариком


-А жители небольшого города в США получили просроченные на 100 лет счета за пользование электроэнергией


Проблема 2000 - это яркий пример того, как СМИ способны воздействовать на человечество. Следующей волны паники по аналогичному поводу стоит ожидать в 2038 году. 19 января 2038 года в 03:14:07 по Гринвичу компьютеры и другие устройства с 32-битной системой не смогут больше верно отсчитывать время. Многие вычислительные устройства отсчитывают системное время с 1 января 1970 года в секундах, используя 32-битное значение, а секунда хранятся в виде signed int (32-битного целого со знаком). В 2038 году наступит 2 147 483 648-я секунда, которую просто не будет возможности записать системой, и тогда счётчик примет отрицательное значение.


Как предотвратить системную ошибку? Заменить все 32-битные процессоры на 64-битные.


Уважаемые программисты, желаем вам удачи в Новом году и пусть ваши истории о Злобных багах всегда заканчиваются победой Добра!


Больше текста и картинок тут.

Истории о новогодних багах Программирование, Баг, Новый Год, Рождество, Код, iOS, Amazon, Ошибки молодости, Длиннопост

Еще больше девушек в костюмах единорога здесь.

Показать полностью 5
Программирование Баг Новый Год Рождество Код iOS Amazon Ошибки молодости Длиннопост
0
0
Dnestr5
Dnestr5
8 лет назад

НЗ (неприкосновенный запас).⁠⁠

Сейчас в различных соц.сетях популярны фотки с кучей мандаринов,ананасов и овер 9000 бутылок алкоголя с бодрящей надписью :" К Новому году готов".  Вспомнился один из таких эпизодов своей биографии. Я с друганами своими (лет нам по 20 - 24) готовимся к Н.году. Дам к сей процедуре не подключаем , чем выражаем наше Госконское происхождение,а происходило это в самом начале 1990х годов и кто знает - деньги были малой составляющей праздника,как сейчас. Надо еще было умудриться эти деньги обменять на что то достойное для  праздничного стола. Путем одной многоходовки вышли на барыг - армян,которые банчили коньяком армянским (сейчас думаю разлитым ими самими),денег они не захотели и был проведен бартер с их стороны заветный напиток, с нашей 40 литров подсолнечного масла в двух 20ти литровых канистрах пластиковых. Была конечно снята проба перед совершенной сделкой - стороны остались довольны.  Приперли мы это всё ко мне домой,и что бы убедиться в качестве новогоднего напитка оприходовали еще 2 пузыря. После чего решили - напиток надо сохранить путем наматывания скотча на крышку - что бы не выдохся. Затем решили залить горлышки бутылок парафином. Проделав эту операцию с одной бутылкой мы решили,что это вредно - пары парафина не несут ничего хорошего. Утром купили ВОСК у торговцев медом и запечатали бутылки воском,затем долго спорили при какой температуре их хранить...  Стоит ли говорить о том,что все эти запасы были выпиты до Нового года?  С тех пор тот алкоголь,который идет на новогодний стол я покупаю в 12 -14 часов последнего дня уходящего года. Традиция.

[моё] Новый Год Коньяк Алкоголь Наивность Ошибки молодости Надежда Текст
5
12
UnicornSoftware
8 лет назад

Первый баг на Марсе⁠⁠

В 1971 году СССР доставили на Марс первые в мире планетоходы "на лыжах", которые должны были щупом (динамический пенетрометр и гамма-лучевой плотномер) ткнуть поверхность, и сказать — Марс твердый или жидкий пыльный. Первый аппарат разбился 27 ноября, второй совершил мягкую посадку 2 декабря, но марсоходик не смог выбраться из "скорлупы" посадочного модуля, поэтому попытку не засчитали.


Прошло 25 лет.

4 июля 1997 года на Марс прилетел американский аппарат и привез "пришельца" с первым багом.

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

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


Соджорнер (Sojourner)

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

Стоимость программы была относительно невысокой — 265 млн $.

Марсоход проработал в течение 83 сол.

Название марсохода, Соджорнер, дословно означает "временный житель" или "проезжий", оно было дано победителем голосования — 12-летним мальчиком из штата Коннектикут, США. Марсоход назван в честь женщины-борца с негритянским рабством — Соджорнер Трут.

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

Результаты миссии:

-2.3 миллиарда бит информации

-16500 изображений с посадочного модуля

-550 изображений с марсоходика

-15 химических анализов камней и пыли

-много климатических данных

-пища для размышления тестировщикам


Priority inversion

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

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

Компьютер на посадочном модуле — радиозащищенный IBM Risc 6000 Single Chip (Rad6000 SC) 20 MIPS CPU с 128 MB RAM и 6 MB EEPROM. Операционка — VxWorks.

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

На ровере был 0.1 MIPS Intel 80C85 CPU с 512 KB of RAM и 176 KB твердотельной флэш-памяти.

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

На 1553 шине висят 3 таска с различными приоритетами.

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

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход
Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

Оставалось только подправить пару флагов для семафора.


Как исправляли баг

No, we did not use the vxWorks shell to change the software (although the shell is usable on the spacecraft). The process of "patching" the software on the spacecraft is a specialized process. It involves sending the differences between what you have onboard and what you want (and have on Earth) to the spacecraft. Custom software on the spacecraft (with a whole bunch of validation) modifies the onboard copy. If you want more info you can send me email.Процесс "исправления" ПО на космическом корабле является специализированным процессом. Он включает в себя отправку различий между тем, что вы имеете на борту и тем, что вы хотите (и имеете на Земле) космическому кораблю. Софт на космическом корабле изменяет встроенную копию. Если кто хочет подробностей, автор софта предлагает написать ему на почту glenn.e.reeves@jpl.nasa.gov.— Глен Ривз, тимлид разработчиков софта для Mars Pathfinder


How the patch was uploaded?VxWorks contained a C language interpreter to execute statements on the fly during debugging. The JPL engineers decided to launch the spacecraft with this feature still enabled. A short C program was uploaded to the spacecraft, which when interpreted, changed the values of the mutex flag for priority inheritance from false to true. No more system reset occurred!

Первый баг на Марсе Наркотики, Космос, Марс, Баг, Ошибки молодости, Программирование, Длиннопост, Марсоход

Глен Ривз на фоне дубликата Mars Pathfinder, инженер, который нашел и исправил баг

Баг был обнаружен при тестах на Земле еще до запуска, но ему присвоили низкий приоритет.

Глен Ривз благодарит разработчиков операционки из фирмы Wind River, за то что они разработали систему, позволяющую дебажить даже в таких аварийных ситуациях. Интересно отметить, что баг был обнаружен на Земле, но "дедлайны" и "приоритеты" заставляют запускать в космос аппараты, заведомо зная, что есть "слабые места".

Оригинал статьи здесь

Показать полностью 9
Наркотики Космос Марс Баг Ошибки молодости Программирование Длиннопост Марсоход
3
9
sadafa11
8 лет назад
Лига Разработчиков Видеоигр

Океан граблей⁠⁠

Сразу извиняюсь за плохое повествование, ошибки в тексте и т.д. Первый раз пишу что-то такого плана. Жду критики и советов. И да, я знаю что игры не очень.

В общем, начинаете еще с 2011 года я хотел стать разработчиком игр, мне было 15 лет. Это была такая красивая мечта, где небо вечно голубое и всё просто. Захотел я научится программировать, для чего и поступил в "Компьютерную академию ШАГ", украинцы знают, очень разрекламированное и дорогое место(семестр, или пол года, стоил 650 долларов тогда, и с каждым курсом всё больше). Ходил я туда на шесть часов вечера после школы, с понедельника по четверг. Было 2 пары до десяти часов. Кто-то скажет лафа, но вот каникулы были 2 раза в году: в Августе 3 недели и 2 недели на Новый год, и там по праздникам.


Первые пол года прошли просто, мы изучали основы, т.е. язык Cи. Было лучшим в группе, всегда приходил вовремя. Но уже тогда в голове стали появляться сомнения насчет того "А нужно оно мне, я же пришел учить Java, а мне впаривают что-то другое", но продолжал учится.(На фото здание в котором мы учились, извиняюсь за качество и ракурс)

Океан граблей Грабли, Разработка игр, Gamedev, Мечта, Ошибки молодости, Истории из жизни, Длиннопост

Во втором семестре у нас сменился препод, который мне напомнил Весельчака У из мультика Тайна третьей планеты(не в обиду). Мужик веселый, очень умный, много знает. И за последующие 2 семестра(год) мы прошли около C++, Winapi, C#, PHP, XML и еще кое-что.

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


К марту 2013 года я ушел от туда, мне стало тупо скучно, подходило время сдачи ЗНО(типа ЕГЭ) и частично из-за испорченных отношений с преподом, но это скорее для отдельной истории.


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

Океан граблей Грабли, Разработка игр, Gamedev, Мечта, Ошибки молодости, Истории из жизни, Длиннопост

В марте 2016 года желание стать "ГеймДевелопером" снова появилось, но вот лезть в программирование не хотелось. И я увидел его, Construct 2(далее C2), я понял что это мой шанс.

Перечитавши десятки статей с опытом разработки и продвижения игр на Android, я захотел попробовать. Взяв из заначки 130 долларов на лицензию C2 и 25 долларов на лицензию разработчика Android, начал творить свою первую игру, сразу взявшись модификацию стандартного исходника С2. Сразу же взял название "Разработчика" - SGD(не хочу раскрывать что это значит)

https://play.google.com/store/apps/developer?id=SGDeveloper - кто хочет попробовать.


Разработка длилась месяц, из которого я наверное и 20 часов не потратил.

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


Первый блин вышел...., ну вы поняли. Но мне и этого не хватило, я решил про рекламировать это "...." с помощью AdWords.

Итоги: Вложения на рекламу составили 20 долларов, скачали приложение 37 человек, и те же 37 человек через пару дней и удалили приложение.


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

В сентябре я начал серьезно работать над Top-down shooter с постройками и зомби.


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


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


Честно сказать, я ожидал плохих комментариев, но желчь текла рекой. Особенно у иностранцев бомбило "Почему столько русского говна в последнее время ?". Но были конечно хорошие советы. Кто хочет почитать: http://steamcommunity.com/sharedfiles/filedetails/?id=781006...

(На фото: один из скриншотов и статистика за первый день и статистика сейчас)

Океан граблей Грабли, Разработка игр, Gamedev, Мечта, Ошибки молодости, Истории из жизни, Длиннопост
Океан граблей Грабли, Разработка игр, Gamedev, Мечта, Ошибки молодости, Истории из жизни, Длиннопост
Океан граблей Грабли, Разработка игр, Gamedev, Мечта, Ошибки молодости, Истории из жизни, Длиннопост

Итог: 100 долларов на Greenlight Fee

10 долларов на материалы.

Два дергающихся глаза от переутомления, недосыпа и нервов.

Чувство радости из-за достижения поставленной цели.


Это было 16 октября.

Подумал что нужно отдохнуть, и это заняло целый месяц, но теперь я полон сил и мотивации.

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

Но проблема остается, я не знаю как такие приложения рекламировать, как о них рассказать людям, может кто помочь советом ? Буду очень благодарен.

Показать полностью 5
[моё] Грабли Разработка игр Gamedev Мечта Ошибки молодости Истории из жизни Длиннопост
16
14
UnicornSoftware
8 лет назад

Р-17 против "Patriot " или о проблеме округления чисел⁠⁠

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

Р-17 против "Patriot " или о проблеме округления чисел Программирование, Ошибки молодости, Военные, Длиннопост

11 февраля 1991 года Patriot Project Office получил израильские данные о дефекте в ракетной системе Patriot. Они нашли, что, если система работает 8 часов, она начинает мазать на 20%. Они прикинули, что после 20 часов работы система начинает промахиваться настолько, что перестанет быть способной захватывать, отслеживать и поражать баллистические ракеты. Американские военные не приняли во внимание всю важность открытия, заявив, что система предназначена для портативных и краткосрочных защитных операций и что никто никогда не будет использовать систему больше 8 часов.


16 февраля был выпущен Bug Fix, но, чтобы его внедрить во все единицы боевой техники, требовалось время, ибо война.


21 февраля военные выпускают указание, что система не должна работать "долго". Военные не уточнили сколько длится "долго".


25 февраля в Дахране (Саудовская Аравия) в казарму в гости к американцам прилетела баллистичекая ракета "керосинка" (она же Р-17, она же Scud). 28 убито 96 ранено, потому что ЗРК "Патриот" промахнулся из-за программной ошибки.


26 февраля Bug Fix был доставлен в Дахран.

Р-17 против "Patriot " или о проблеме округления чисел Программирование, Ошибки молодости, Военные, Длиннопост

Р-17 (по классификации МО США и НАТО — SS-1c Scud B, экспортное обозначение R-300, неофициально — "керосинка") — советская жидкостная одноступенчатая баллистическая ракета на долгохранимых компонентах топлива.

MIM-104 "Патриот" (англ. MIM-104 Patriot, перевод с английского — Патриот) — американский зенитный ракетный комплекс (ЗРК), используемый армией США и их союзниками.

Р-17 против "Patriot " или о проблеме округления чисел Программирование, Ошибки молодости, Военные, Длиннопост
Р-17 против "Patriot " или о проблеме округления чисел Программирование, Ошибки молодости, Военные, Длиннопост

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


Системное время хранилось как integer в 24-битном регистре с точностью до одной десятой секунды. Поэтому на каждом такте по 0.1 сек "терялась" часть времени. При рассчете данные переводились в real numbers [источник].


Число 1/10 равно 1/24+1/25+1/28+1/29+1/212+1/213+... Другими словами, бинарное разложение 1/10 = 0.0001100110011001100110011001100... Поэтому 24 bit регистр в системе Patriot хранил вместо этого 0.00011001100110011001100 внося ошибку равную 0.0000000000000000000000011001100... в двоичном исчислении, или примерно 0.000000095 в десятичном. За сто часов работы набегает 0.000000095×100×60×60×10=0.34 секунды


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


Софт был написан на ассемблере 15-20 лет назад и с тех пор несколько раз модифицировался различными командами программистов.


Несколько слайдов из отчета, где выявляется проблемы с системой Patriot:

Р-17 против "Patriot " или о проблеме округления чисел Программирование, Ошибки молодости, Военные, Длиннопост
Р-17 против "Patriot " или о проблеме округления чисел Программирование, Ошибки молодости, Военные, Длиннопост
Р-17 против "Patriot " или о проблеме округления чисел Программирование, Ошибки молодости, Военные, Длиннопост

Золотые правила:

-Правильно подбирайте размер. Всегда тщательно перепроверяйте, сколько бит вам требуется для хранения каждой переменной выбрать (long, int, double, float, и пр) в конкретном языке и конкретной операционной системе.

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

-Никогда не используйте float в качестве счетчика цикла.

-Избегайте смешанных типов (signed, unsigned; integer, floating point; single precision, double precision). Тщательно производите конвертацию.

-Проверяйте возможные ситуации переполнения. Проверяйте деление на ноль.

Заключение

Мы хотим привлечь внимание людей к проблемам надежности программного обеспечения. Программы — это давно не только странные непонятные расчёты ученых на Fortran или компьютерные игры. Это то, что давно и повсеместно нас окружает.

Раньше серьезные баги наносили вред в узких специфичных областях — ракетостроение мирное (Ariane 5) и военное. Сейчас же с ошибкой в программе вы можете столкнуться, не только сидя за компьютером, но и сидя в автомобиле (Toyota) или посещая больницу (Therac-25). Мы одни из тех, кто сражается на стороне программистов против багов.

Оригинал статьи лежит вот здесь

Показать полностью 6
Программирование Ошибки молодости Военные Длиннопост
4
theonlymine
theonlymine
8 лет назад

Тойота⁠⁠

Люди: — Эй, Тойота, мы тут посчитали, у вас из-за корявой электроники и софта 89 человек погибло с 2000 по 2010.

Тойота: — Да они сами виноваты, путают педали.

Люди: — Хьюстон, у нас проблемы.

NASA: — Ща разберемся, нам надо 10 месяцев и 3 миллиона долларов.

Люди: — На.

Тойота: — 3 миллиона мало, вот вам еще сверху кэшем.

(прошло 10 месяцев)

NASA: — Эй, Тойота, мы у вас пару ошибок в коде нашли, а точнее 7134 нарушения стандартов MISRA, рекурсию, функцию на 740 строк и 9000 глобальных переменных.

Тойота: — А у нас свои стандарты. А вы ваще на Луну летали?

NASA (публично): — Тойота ни в чем не виновата.

(Акции Тойота подскочили на 4,6%)

Люди: — Ну ё-моё.

(спустя 3 года)

Два американских тестировщика (у которых дедушки погибли в Перл-Харбор): — Нет багов? А если найдем?


https://habrahabr.ru/company/pvs-studio/blog/310862/

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