Тестировщики закончились? Или экономия
Всё хуже и хуже каждый раз работает всё. Начиная от веб сайтов и заканчивая телефонной связью.
Раньше если находился какой-то баг, то его исправляли моментально, сейчас же, такое ощущение, что его не видят.
Например, позавчера (1 января) жена показала на своём яблоке, как у неё отображается сайт погоды на яндексе, краткий прогноз на неделю, 1-е число это был Понедельник. И так был такой баг
(Сегодня 1 января, Понедельник 2 января, Среда 3 января, Четверг 4 января, Пятница 5 января, Суббота 6 января)
Я открыл эту же страницу на андрюхе и у меня отображается всё корректно. Да я конечно понимаю, яблочники тот ещё гемор создают, помню когда делал свой сайт в давно-лохматом году, тоже со стилями намучился подгоняя, всё под ИЕ и яблочный браузер, но тут то, Яндекс, он же Дзен. Я думал там работают люди, которые имеют сильный опыт в верстке, да и тестировщики по факту должны их прикрывать. Но тут....
И это только один пример из многих. И ВКонтакте глюк на глюке и глюком погоняет. Может в приложении работает всё гуд, но обычный браузер... Да, ВКонтакте особо никогда не отличались хорошей работой и периодически глюки всплывали, но тут, что-то всплывать они стали чаще.
Но как я говорил, это коснулось не только веб, но и качество связи. Мобильная связь от билайна, стала что-то с чем-то, как и предоставление других услуг, таких как интернет и тв.
Ну с нашей областью всё ясно, она никогда не славилась качеством услуг. Так вот хочется узнать, а в вашей области тоже стало всё "лучше"?
Мастхэв для разработчиков
Вы – разработчик, постоянно ищущий способы улучшить работу с кодом? Bito (https://bito.ai/) – это то, что изменит ваш код. Это не просто обычное расширение для автозаполнения. Это мощный инструмент, который выводит ваш путь в программировании на новый уровень.
Мощный набор инструментов построен на основе ChatGPT. Позволяет быстро генерировать потрясающий код и создавать модульные тесты. Умеет объяснять код, генерировать комментарии и проверять работоспособность.
Сервис даже может проверить код на наличие уязвимостей в системе безопасности и сделать его до 10 раз быстрее. Удобный интерфейс позволяет легко установить продукт в IDE Jetbrains, Visual Studio Code и даже из расширения Chrome.
Вы даже можете установить его как консольную утилиту. С помощью Bito вы сможете повысить производительность кодирования и создавать код лучшего качества за меньшее время.
Источник: https://t.me/TechLiveHack/107
Как подготовить машину к долгой поездке
Взять с собой побольше вкусняшек, запасное колесо и знак аварийной остановки. А что сделать еще — посмотрите в нашем чек-листе. Бонусом — маршруты для отдыха, которые можно проехать даже в плохую погоду.
Возможны баяны!
Как разблокировать деактевированный аккаунт Instagram? 2022 г
История такая:
Написал я как то трижды один и тот же комментарий.
А потом в личное сообщение тоже самое 1 раз.
В итоге получил перм бан с подписью: "узнайте как разблокировать деактевированный аккаунт".
(Казалось бы столь суровое наказание для такого)
После чего я сразу же начал заполнять известные три формы и отправлять селфи с А4.
(что и делаю до сих пор)
Но ответ был либо отрицателен, либо вообще не был.
Также связывался с поддержкой бизнес аккаунта Facebook, где мне отвечали все делать так же как и делал (результата не было).
Обращался даже к человеку который должен был помочь платно.
Вот ответ: "Здравствуйте, на данный момент последние несколько дней мы в ожидании, наши запросы не принимаются, в связи с обстановкой в мире"
А ведь когда то не был инстаграм под Facebook.
И разблокировать его было проще простого.
Может и сейчас есть какие то способы, которые 100% помогут. Вдруг тут есть люди которые сталкивались с такой проблемой и её решили. Очень был бы вам благодарен, если напишите рабочий способ разблокировки аккаунта.
*Просьба не рекламировать тут платные услуги или сервисы, которые занимаются разбанами, к ним всеравно доверия нету.*
Как изучать С++ , 10 вопросов Senior Software Developer
Всем доброго времени суток. Публикую опыт моего хорошего товарища, что с математическим образованием успешно работает с С++ более 15 лет.
Оформил всё в формате текстового интервью, читаться и восприниматься будет легко, стартуем)
1. Расскажите о вашем образовании?
Мое образование — это весьма интересная штука. В школе я углубленно изучал математику, полюбил ее и с тех пор моя жизнь так или иначе связана с ней. После школы я поступил на два факультета - экономический и механико-математический. Выбрал экономическую теорию просто потому, что там была более крутая математика на вступительных экзаменах. Экономическая теория является весьма специфическим предметом, это какая-то смесь математики и философии с примерно такой же практической пользой. На самом деле ряд предметов, изученных в университете, мне очень пригодились позднее - особенно линейная алгебра, статистика, теория вероятностей и математическое программирование (раздел математики, посвященный оптимизационным задачам, ничего общего с компьютерами). Был любопытный предмет, называемый эконометрикой, по факту это статистический анализ больших данных, позволяющий найти взаимосвязи данных, прямо-таки столь популярное сейчас машинное обучение. После получения высшего образования я несколько лет проучился в Вычислительном центре РАН, тема моей так и не законченной диссертации была "Параллельные методы решения задач дискретной оптимизации транспортного типа", простыми словами я решал задачу коммивояжера. Привет математическое программирование из университета.
2. Почему вы выбрали именно C++? Чем импонирует вам данный язык программирования?
Я его не выбирал, это он меня выбрал, я честно предпринял несколько попыток уйти из него, но он всякий раз меня догонял. Последняя попытка была в Microsoft, там я писал на C#, и думал, что я такой умный и сумел уйти от C++, но как говорил один мой друг "C++ умеет ждать", и в Microsoft я опять переключился на C++. По своей воле, очень уж интересная была задача.
3. Начать профессиональную деятельность на С++ получилось благодаря самообразованию или же благодаря профильному образованию? Расскажите о своём пути в С++
Я решал задачу коммивояжера и ее варианты на C++, так уж получилось, что это был самый подходящий язык для такой задачи. Затем я начал работать в Яндексе, в отделе качества поиска над MapReduce (помните тему диссертации - "Параллельные методы..."), там тоже был C++, и он так и не отпускал меня с тех пор.
4. Есть ли книги по С++, что вы можете посоветовать?
Самыми полезными для меня были, пожалуй, серия небольших книг Скота Майерса "Эффективное использование С++" с набором рецептов, понять STL мне помогла книга Николая Джосьютиса по STL "С++. Стандартная библиотека". Но самое главное, конечно же, практика. Как язык C++ меня никогда особо не интересовал, я рассматривал его лишь как средство для решения интересных задач.
5. Расскажите о вашей компании, где вы работаете. Что входит в ваши рабочие обязанности на данный момент и чем занимается ваша компания? Какой продукт?
Я работаю Senior Software Engineer в MongoDB, компании, которая разрабатывает собственную СУБД (система управления базами данных). Моя команда занимается оптимизацией запросов (Query Optimization). MongoDB привлекла меня тем, что сумела успешно бросить вызов на рынке СУБД, казалось бы, надежно поделенного между такими гигантами как Microsoft SQL Server, Oracle и IBM DB2.
Так получилось, что с 70-х годов и исследовательского проекта реляционных баз данных IBM System R, от которого произошли современные базы данных, очень многое изменилось. Благодаря интернет-компаниям, таким как Google, стало набирать популярность горизонтальное масштабирование. Другой тип масштабирования, вертикальное, характеризуется тем, что по мере роста требований к вычислительным мощностям, старые сервера заменяют на более мощные, происходит вертикальный рост. Но такой рост всегда ограничен мощностями одного сервера. Горизонтальный рост характеризуется не заменой сервера на более мощный, а добавлением новых серверов. Это оказывается дешевле и позволяет почти неограниченно расти, но и требование к программному обеспечению гораздо выше, новый софт должен быть "распределенным", то есть работать на множестве серверов. Одна из первых попыток распределения работы на множество серверов была система MapReduce, над одной из реализаций которой я работал в Яндексе.
Классические СУБД оказались не готовы к такому повороту событий по ряду причин: изначально они были спроектированы для работы на одном сервере, и реляционная модель данных предполагает высокую нормализацию данных, грубо говоря никаких дублирующих данных, вместо сохранения адреса для каждого заказа, адрес сохраняется в отдельной таблице и каждый заказ содержит уникальный идентификатор адреса, а значит большое число джойнов (join), т. е. теперь, чтобы получить, адрес для заказа надо найти его по идентификатору в другой таблице.
MongoDB реализовала совершенно новый подход, называемый документным, все связанные данные должны хранится вместе. Это позволяет сократить число джойнов, а то и полностью избавиться от них, это опять же упрощает создание по-настоящему распределенной базы данных. Новый подход оказался коммерчески успешным, MongoDB как СУБД активно развивается, и старый query engine (движок запросов) перестал отвечать требованиям новой MongoDB. Я сейчас работаю над оптимизацией запросов в новом движке, это задача дискретной оптимизации и ее методы во многом пересекаются с моей работой над задачей коммивояжера. Также используются метод ветвей и границ (Cascades, реализованный в Microsoft SQL Server) и динамическое программирование (Oracle и IBM DB2).
6. Расскажите о проектах, в которых вы приняли участие? О проектах и их функциональных возможностях.
Я был техническом лидером проекта поиска по графу знаний, в проект входила реализация графа знаний в поисковом индексе и поддержка соответствующей грамматики поиска к примеру «файлы Йена программиста из Лондона». Мы разбивали эту фразу и обрабатывали запрос следующим образом в индексе контактов находили человека с именем Йен, должностью программист/разработчик или другой синоним из Лондона. Затем переходили по графу знаний и находили файлы, которые этот человек правил или создавал. Вы можете видеть, как работает подобный поиск в Microsoft Office 365. Если вы знаете английский язык вы можете увидеть демонстрацию вначале этого промо видео: https://youtu.be/zbqlAd6aMoE
7. Исходя из вашего опыта, на какие личные качества/навыки/компетенции в первую очередь обращают внимания работодатели в вашей сфере?
На интервью обычно проверяются три навыка:
навык решения задач и насколько эффективно человек может сформулировать и донести свои мысли о разных подходах к решению задачи, обсудить эти подходы и выбрать правильный
насколько эффективно человек умеет работать в команде, здесь оценивается множество навыков, к примеру, умение признавать свои ошибки, умение конструктивно критиковать и принимать критику, эмпатия и т.п.
проектирование систем: как реализовать тот иной сервис или функциональность в программе, начиная с выбора системы хранения данных, продолжая методами обмена данными и так далее, оценивается, в частности, то как умеет ли человек собирать требования о будущей система и как он умеет использовать требования для выбора подходящих технологий.
8. По вашему мнению, каков спрос на рынке труда и какие перспективы у данной профессии в ближайшие полгода – год, исходя из нынешней экономической ситуации?
Да все как обычно, не вижу никаких причин, чтобы что-то изменилось в ближайший год.
9. Есть ли спрос в данный момент на новичков (Junior-специалистов) в С++ ?
В MongoDB, Microsoft и т. п. активно практикуется приглашение на практику студентов ВУЗов (internship), после окончания ВУЗа студенты могут вернуться в компанию, обычно это практически единственный способ попасть новичку на работу в ведущие компании.
10. Подводя итоги. Что можете посоветовать людям, что самостоятельно изучить С++ и в дальнейшем работать в данной сфере?
Я бы порекомендовал для начала осознать, что язык программирования не так и важен, важны фундаментальные знания – линейная алгебра, статистика, алгоритмы и структуры данных. Умение применять эти знания на практике. Я не говорю, что я никогда не читал книг по языкам программирования, это не так. По одному C++ я прочитал с десяток книг, а еще я читал книги и в целом изучал такие языки как Java, C#, Python, JavaScript, Haskell, F#, OCaml, Ruby. Но это никогда не было в моих приоритетах, я понимал, что эти знания мимолетны и быстро устаревают. Что не устаревает так это общие принципы программирования (они, кстати, часто описаны в книгах по языкам программирования в том числе), алгоритмы, принципы построения систем.
К примеру, самый продвинутый Query Optimizer сегодня реализован в Microsoft SQL Server, его принципы были разработаны в 90-е годы Goetz Graefe. Этот оптимизатор используется метод ветвей и границ, разработанный в 60-е годы Литтлом для решения задачи коммивояжера. Серьезные современные передовые системы базируются на принципах, разработанных десятилетия назад.
Может показаться, что моя дорога была прямолинейной и я знал к чему иду, это неправда. У меня было много метаний и поисков, одно лишь было постоянным - я всегда любил математику и алгоритмы и стремился ими заниматься, а также я любил программирование потому, что оно даёт мне свободу выражать свои идеи во что-то работающее. Именно этот акт творчества во время программирования когда-то привёл меня в восторг, и этот восторг не отпускает меня до сих пор.
Успешного самообразование, коллеги)
Если вам интересна IT-сфера и интервью с программистами
публикую также свои статьи и интервью на канале t.me/it_begin
Подписывайтесь :)
Спасибо!
Перспективы отечественного ПО
В сегодняшнем материале попытаемся разобраться с перспективами отечественного ПО и железа в нынешних реалиях и о отечественных аналогах, материал подготовлен при помощи подписчиков нашего канала IT-старт t.me/it_begin
Рынок IT находится в дикой турбулентности
Согласно прогнозам IDC, опубликованным в апреле, объём IT-рынка в 2022 году вынужденно сократится на 39.2%
Но не будем забывать то, в какое время мы сейчас живем. На фоне ухода западных компаний из РФ интерес к отечественным разработкам за последние месяцы вырос более чем на 300%.
Импортозамещение
Попытки импортозамещения начались не вчера. Сам этот процесс в IT-сфере идет с появления первых санкций 2014 г.
Акцент на импортозамещение также сделан посредством национальной программы "Цифровая экономика", используя которую госкорпорации еще в 2021 году должны были заменить иностранное ПО российским софтом, но , к концу 2021 года из 13% госкомпаний смогли это реализовать.
На данный момент максимальной популярностью пользуются отечественные аналоги офисных программ и несомненно технические решения в сфере информационной безопасности.
Microsoft Office планируется заменить российским "Р7-Офис" или "МойОфис,
но, чем заменить те же SAP и Oracle, что используют тысячи предприятий в РФ и что на данный момент не имеют полноценных российских аналогов? Тут уже сложнее. Даже при наличии разработки подобного программного обеспечения, переход на него потребует больших финансовых и временных затрат, ведь необходимо будет адаптировать и перестроить все бизнес-процессы, подстраивая их под новые системы. Так или иначе, лишь спустя время мы сможем увидеть, как наш крупный бизнес справится с этой задачей.
Российское железо
На данный момент, самый конкурентный процессор - это "Байкал-S", что по характеристикам сопоставим с Intel и AMD 2019 года. По вычислительным возможностям он схож с Intel Xeon 6148 Gold.
Также, в данный момент ведется работа над созданием процессоров следующего поколения - "Эльбрус-2С3" и "Эльбрус-16С" и созданием одноименной операционной системы "Эльбрус" - что используется организациями и предприятиями для развертывания рабочих станций и серверов.
Российское программное обеспечение
Если говорить о "Astra Linux", то она входит в реестр Минкомсвязи и сертифицирована для использования. В первую очередь, данная ОС предназначена для обработки данных в режиме повышенной защиты обрабатываемой информации.
Говоря о "Alt Linux", необходимо в первую очередь отметить, что данная ОС считается самой удобной в использовании для массового пользователя. В комплекте с ней идёт полный комплект программ. ОС проста в установке и распространяется бесплатно.
Также стоит отметить операционную систему "Ось", что также на базе Linux. ОС представляет решения для комплексной автоматизации рабочих мест и информационной структуры предприятий, в том числе в серверах, дата-центра и рабочих станциях.
Отечественные аналоги Google Play и AppStore
SberStore - магазин приложений от компании "Сбер" для массового потребителя на базе корпоративных приложений для специалистов
Яндекс.Store - так или иначе, сейчас время возможностей и Яндекс не может их упустить. Вследствие этого Яндекс рассматривает вопрос о перезапуске закрытого пару лет назад Яндекс.Store.
VK - в данной коммерческой гонке планирует принять участие и команда VK, проектное название данного приложения "HashStore".
Подводим итог
Подводя итоги, мы можем наблюдать, как меняется окружающая нас IT-реальность. То что было доступно ранее, возможно скоро станет недоступно в использовании.
Так или иначе, в плане офисных программ решения замены уже имеются. В плане операционных систем все решения сводятся к отечественным ОС, что базируются на Linux, что не для всех является удобным в использовании.
К сожалению вопрос замены достойными и полноценными аналогами ПО от SAP и Oracle является сложным и над этой задачей ещё придётся потрудиться.
Если же говорить о том, смогут ли Сбер, Яндекс и VK заменить в РФ таких гигантов IT-индустрии, как Google Play и AppStore - покажет лишь время.
Если вас интересует IT его перспективы в РФ ,
публикую также свои статьи и интервью c программистами на канале t.me/it_begin
Подписывайтесь, если будет интересно ;)
Спасибо!
Как правильно изучать Java
Всем доброго времени суток! В сегодняшней статье постараемся разобраться с тем, как подойти к вопросу самостоятельного изучения языка программирования Java. Советы универсальны и их концепция подойдёт к любому языку программирования.
Определитесь с конечной целью изучения Java
Для начала вам необходимо определиться со своими целями и выбрать тот язык программирования, что вам максимально подходит. Это является самой важной рекомендацией для тех людей, кто ранее не программировал, но имеет желание присоединиться к IT-сообществу.
Как понять, подходит ли вам Java
Было бы намного легче, имей мы среди языков программирования явного лидера рынка, что способен по функционалу и своим возможностям заменить все остальные языки на рынке, тогда бы и вопроса первого языка программирования не стояло бы вовсе. Но в нынешних реалиях этого не происходит.
Если время позволяет, советую понять конечные задачи, решать которые вы хотите посредством программирования, далее разобраться какие именно языки программирования могут эти задачи выполнять, составить список из таких языков и уделить по одной неделе на изучение каждого языка. За месяц вы сможете сложить хоть и крайне отдаленное, но частичное понимание того, как вам дается тот или иной язык, вследствие чего всё вышеперечисленное может помочь вам с решением какому языку программирования вы хотите отдать предпочтение.
Вы должны понимать, что языки программирования являются в первую очередь "инструментами" для решение поставленных задач. Одним из языков, что способен на решение большого количества разного плана задач, является Java.
Java - это..
Java - это крайне структурированный, объективно-ориентированный язык. Также Java является мультиплатформенным языком. Написав приложение на Java, вы запустите его на любом устройстве. Также Java и его сводный брат язык программирования Kotlin являются отличными инструментами для создания мобильных приложений.
Основные ошибки новичков в Java, которые вам необходимо избежать
1. Попытка изучить всё и сразу. Ни в коем случае не пытайтесь хвататься за всё и сразу. Вы выгорите. Человеку всегда нужно время на то, чтобы информация усвоилась в голове, поэтому идеальным будет составить себе план-изучения, идя последовательно по которому вы будете ориентироваться в том, что вы прошли и что вам предстоит пройти. Последовательность будет давать вам то чувство стабильности, что необходимо новичку.
2.Обучение без конкретики и поставки конечной цели. Чтобы ваше обучение шло успешно, вы должны ответить - зачем вам это надо? Если ваши намерения серьезные и вы готовы к тому, что в течении года вы будете уделять по 3-4 часа самостоятельному изучению языка, то обучение не будет для вас в тягость. Если же целей конкретных у вас нет - еще раз задайте себе вопрос, надо ли вам это всё.
3.Изучать Java закрывшись от сообщества Jav'истов. У нас у всех был и есть синдром самозванца. Это не моё, надо мною будут смеяться и я неспособен и тому подобное. Из за этого начинающие программисты постигают всё в одиночку, столкнувшись с чередой трудностей при изучении и при неимении возможности задать вопрос более опытным коллегам по цеху, выгорают и бросают дело. Вы должны понимать, что программисты привыкли работать в команде и все были такими же новичками, как и вы. Не стесняйтесь и задавайте вопросы на тематических форумах, чатах. Главное перед этим не один десяток раз попробуйте сами решить свою проблему. Только после этого уже обращайтесь. Команда - командой, но самостоятельность никто не отменял.
Пример учебного плана по изучению Java
- Установка JDK (Java Development Kit) с веб-сайта Oracle и Установка среды выполнения Java (IntelliJ IDEA, Eclipse или NetBeans);
- Изучение синтаксиса Java;
- Изучение Java Core;
- Изучение коллекций Java;
- Изучение популярных библиотек и фреймворков;
- Изучение часто используемых API (например, сервлетов, JSP, JDBC, JUnit);
- Освоение Git;
Вашей задачей является сохранение баланса между практикой и теорией. Запомните, программирование - это в первую очередь навык, который требует своего применения каждый день.
Источники для изучения Java
YouTube
Не забывайте о такой прекрасной платформе, как YouTube. Это ваш прекрасный помощник в изучении любой интересующей вас тематики, в том числе и Java.
CodeGym
Онлайн-курсы по изучению Java с геймификацией. Подходит далеко не всем. Но у кого-то же наоборот успешно обучение проходит на первых порах именно на таких платформах, через форму игры. В любом случае, попробовать стоит. Подписки какие-либо покупать на первых порах не стоит. Не реагируйте никак на скидки, представленные на сайте, поработайте в бесплатном режиме с сайтом, если поймете что это ваше, то тогда можете уже задуматься об инвестиции в своё самообразование на подобных платформах.
CodeWars
Платформа с громадным количеством практики. Она подходит больше для тех, у кого уже есть минимальным опыт программирования, поэтому как только почувствуете , что Java для вас уже не страшный зверь, а инструмент, работу которого вы уже частично представляете, добро пожаловать
Подводя итог - определитесь с тем , для чего вам Java и Учите английский язык
Как итог к данной статье хочу также дать универсальный совет для тех, кто видит себя в будущем программистом. Учите английский язык. Громадные объемы рабочей документации на английском, описания новых технологий языка также на английском. Тонны информации на английском. Поэтому, не забывайте про англ.яз. и уделяйте ему время, независимо от того, какой язык программирования вы выбрали.
Успехов вам в самообразовании, коллеги!
Если вас интересует IT его перспективы в РФ ,
публикую также свои статьи и интервью на канале t.me/it_begin
Подписывайтесь, если будет интересно ;)
Спасибо!