Рубрика «Alconost» - 3

Магнасанти — самый большой и самый ужасный город SimCity - 1

Похоже на набор разноцветных квадратиков без смысла и цели? На самом деле за этой картинкой — злой гений и множество формул.

Это вид на Магнасанти — мегаполис, создатель которого попытался достичь предела численности населения в игре SimCity.

Присмотримся поближе:

Магнасанти — самый большой и самый ужасный город SimCity - 2

Винсент Оскала (Vincent Oscala), 22-летний студент из Филиппин и будущий архитектор, многие годы пытался найти формулу успеха в игре Sim City 3000.
Безумная, казалось бы, затея… однако благодаря огромным усилиям, вложенным в «борьбу» с SimCity, оказались подняты интересные вопросы о городских ландшафтах, в которых мы живем, и о том, в какой ужас они могут превратиться.

Магнасанти — самый большой и самый ужасный город SimCity - 3

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

Магнасанти — самый большой и самый ужасный город SimCity - 4

Переведено в Alconost
Читать полностью »

Исследования показывают: люди, у которых «чересчур много интересов» имеют больше шансов на успех - 1

Самый исчерпывающий кейс, объясняющий, почему в современной «экономике знаний» почти каждый должен стать энциклопедистом.

«Мастер на все руки, а толком ничего не умеет».

Предостережение против универсализма сохранилось в многовековой истории десятков языков. «У него каких только ножей нет — и ни одного острого», — предупреждают китайцы. А в Эстонии есть поговорка «девять ремесел, и голод — десятое».

Однако, многие из наиболее неординарных личностей — как живших в прошлом, так и наших современников — были универсалами: таковы Илон Маск, Стив Джобс, Ричард Фейнман, Бенджамин Франклин, Томас Эдисон, Леонардо да Винчи и Мария Кюри — список далеко не полон.

В чем же здесь дело?

Если попытка универсализма — путь к посредственности, то почему наиболее исчерпывающее исследование о самых видных ученых в истории показало, что 15 из 20 были энциклопедистами? Ньютон. Галилей. Аристотель. Кеплер. Декарт. Гюйгенс. Лаплас. Фарадей. Пастер. Птолемей. Гук. Лейбниц. Эйлер. Дарвин. Максвелл — все энциклопедисты.

Если пытаться делать все сразу так неэффективно, то почему основатели пяти крупнейших компаний в мире – Билл Гейтс, Стив Джобс, Уоррен Баффетт, Ларри Пейдж и Джефф Безос – все энциклопедисты (а также придерживаются «правила пяти часов»)? Эти легендарные люди – просто гениальные исключения? Либо это люди, которым мы могли бы (и должны) подражать, чтобы достичь успеха в современной «экономике знаний»?

Если стремление к универсализму – неэффективная карьерная стратегия, то почему более 10 академических исследований выявили корреляцию между количеством интересов/компетенций, которые удалось развить человеку, и его творческим потенциалом?

Переведено в Alconost
Читать полностью »

Решение, которое нужно принять, чтобы не жалеть о жизни через 30 лет - 1

«Определение ада: «Тот человек, которым вы стали, в свой последний день на земле встретится с человеком, которым вы могли бы стать».
— Автор неизвестен

Читать полностью »

Как правильно чистить лук, или Почему разработка ПО выходит из-под контроля - 1

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

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

Как правильно чистить лук, или Почему разработка ПО выходит из-под контроля - 2

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

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

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

Это предположение — неверно.

Проект — это не лист бумаги, не двумерный объект — у него есть глубина.

Каждую функцию на поверхности можно раскрыть — и так слой за слоем. Будь у меня склонность к громким заголовкам, я бы сказал, что всякое приложение — это лук, и нужно уметь правильно его чистить. Не очень понятно? Тогда давайте я поясню, что имеется в виду, и расскажу, почему не получается раскрывать слои приложения без слёз.

Переведено в AlconostЧитать полностью »

История фреймворка React: как Фейсбук приобрел Инстаграм и почему это привело к открытию исходного кода React.js

Как Фейсбук приобрел Инстаграм и почему это привело к открытию исходного кода React.js - 1

Сегодня React — одна из самых популярных в мире библиотек JavaScript для пользовательского интерфейса: более 70 тыс. «звезд» на Гитхабе, не менее 1100 авторов и миллионы скачиваний каждый месяц — кроме того, этот фреймворк используется более чем в 4 тыс. компаний. Но когда Фейсбук впервые показал React миру, это мало кого обрадовало.

Мы решили погрузиться в историю рождения одной из самых популярных технологий в мире разработки ПО — React, и пригласили Пита Ханта (Pete Hunt), стоявшего у истоков этой библиотеки (сейчас он генеральный директор компании Smyte), чтобы он наконец-то рассказал о том, для чего создавали React, почему эта технология стала популярной в Фейсбуке после приобретения Инстаграма, и как она в итоге вышла в люди.

Основные моменты

От приложения Facebook Camera к приобретению Инстаграма


Марк (Цукерберг) собрал всех и говорит: «Мобильные устройства «выстрелят», поэтому срочно бросаем всё и переводим ресурсы на мобильные разработки». Мне казалось, это какая-то сумасшедшая идея: мы не могли поддерживать работу самого большого фотосайта в сети, имея горстку людей в команде. Совершенно бессмысленно переводить людей на разработку приложений для iOS и Android, которые составляют совсем небольшую долю нашего трафика. Но оказалось, что Марк был на 100% прав — поэтому я и не генеральный директор Фейсбука…

Мы разработали приложение Facebook Camera, и даже гордились тем, что получилось… Но пришел Инстаграм — и наш проект канул в Лету…

Ребятам из Инстаграма дали гараж на территории Фейсбука, где можно было сидеть и спокойно пилить свою идею. Они пользовались надежными системами безопасности Фейсбука, но кроме того продолжали использовать AWS, а еще — разрабатывали собственную стратегию продукта, насколько я могу судить… И я был первым сотрудником из Фейсбука, которого перевели в Инстаграм…

Переведено в AlconostЧитать полностью »

Каждый разработчик ПО умеет программировать, но не каждый программист может разрабатывать ПО

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

Возможно, кому-то больше нравится говорить не «разработчик», а инженер-программист, ведь инженер — это звучит гордо! Или нет? К счастью, эта статья не о терминах. Если мой термин вам не нравится — подставьте свой: «автор ПО», «мастер ПО»… и даже «творец приложений»!

Говоря «разработчик ПО», я имею в виду человека, для которого написание качественного ПО — профессия. Человека, который использует в своей работе научные подходы и статистику и считает свое занятие чем-то большим, чем просто зарабатывание денег.

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

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

Мне нравится такая аналогия: каждый может ради собственного развлечения петь в ду́ше, но вы же не ставите треки с записями этого пения на вечеринке — вы обращаетесь к произведениям профессиональных музыкантов.

Хотите еще аналогий? Пожалуйста:

  • В школе нас обучили математике и письму, но это не сделало нас математиками и писателями.
  • Большинство может легко научиться готовить, но когда нужно накормить большое число людей, мы нанимаем повара.
  • Никто не зовет соседа — мастера на все руки построить дом с нуля.

Главная задача этого текста — донести, что создание простых программ серьезно отличается от разработки ПО.

Переведено в AlconostЧитать полностью »

Почему SQL одерживает верх над NoSQL, и к чему это приведет в будущем - 1
SQL пробуждается и наносит ответный удар силам тьмы — NoSQL

С самого начала компьютерной эры человечество собирает экспоненциально растущие объемы данных, и вместе с этим растут требования к системам хранения, обработки и анализа данных. Из-за этого в последнее десятилетие разработчики ПО отказались от SQL как от устаревшей технологии, которая не могла масштабироваться вместе с растущими объемами данных — и в результате появились базы данных NoSQL: MapReduce и Bigtable, Cassandra, MongoDB и другие.

Однако сейчас SQL возрождается. Все основные поставщики облачных услуг предлагают популярные управляемые сервисы реляционных баз данных: Amazon RDS, Google Cloud SQL, база данных Azure для PostgreSQL (запущена буквально в этом году) и другие. Если верить компании Amazon, ее совместимая с PostgreSQL и MySQL база данных Aurora стала «самым быстрорастущим сервисом в истории AWS». Не теряют популярности и SQL-интерфейсы поверх платформ Hadoop и Spark. А в прошлом месяце поддержку SQL запустила и Kafka. Авторы статьи скромно признаются, что и сами разрабатывают новую базу данных временных рядов, которая полностью поддерживает SQL.

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

Переведено в Alconost

Часть 1. Новая надежда

Читать полностью »

Хотите внедрить или доработать функцию поиска? Вам сюда.

Что должен знать о поиске каждый разработчик - 1
Спросите разработчика: «Как бы вы реализовали функцию поиска в своем продукте?» или «Как создать поисковую систему?». Вероятно, в ответ вы услышите что-нибудь такое: «Ну, мы просто запустим кластер Elasticsearch: с поиском сегодня всё просто».

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

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

Цель статьи

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

Основываясь на опыте работы с универсальными решениями и узкоспециализированными проектами самого разного масштаба (в компаниях Google, Airbnb и нескольких стартапах), я расскажу о некоторых популярных подходах, алгоритмах, методах и инструментах.

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

Переведено в Alconost
Читать полностью »

Как это влияет на коллектив, менторство, качество кода, а также вопрос денег

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

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

Мы в Alconost перевели статью о том, насколько рискованно полагаться на команду молодых разработчиков и как такая ситуация влияет на опытных разработчиков, менторов и качество продукта.
Читать полностью »

Как сделать хороший ролик для App Store и Google Play - 1

Видео — это мощное средство для продвижения вашего приложения, и с выходом iOS 11 его роль становится ещё важнее. Мы в Alconost сформулировали рекомендации, которых следует придерживаться при создании видео для iOS App Store и Google Play Store. Между двумя указанными сторами есть важные отличия, о которых вам следует знать, чтобы увеличить отдачу от использования видео. Мы расскажем, как сделать ролик для страницы приложения в App Store с учётом всех новшеств iOS 11 и чем отличаются ролики для Google Play.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js