• Пять интересных способов использования Array.reduce() (и один скучный путь)
    0
    Красиво, но не очень интуитивно понятно, особенно для сторонних разработчиков. А в ряде случаев вообще больше похоже на «смотри как я еще могу». Поэтому я большинстве случаев я бы выбрал более классические методы. По себе я помню лишь несколько случаев когда reduce() действительно органично вписался в задачу.
  • 5 символов 1920-х, которые спустя 100 лет поднялись в облака
    –2
    Последние лет я 5 наблюдал отсутствие интернета только в самолетах. На счет закидывания файлов на телефон я вспоминаю эти навыки только перед посадкой в самолет.
    Бывает в метро кратковременно пропадает интернет, нажал ссылку, а страница не отрывается, приходится ждать минуту пока связь восстановится. В крупных городах России и Европы вроде покрытие полное. Вот еще был как то в глухой деревне за 100 км от всех городов, там если зайти в лес тоже бывает связь не стабильная.
  • Is Delphi Dying — False
    0
    Все правильно говорите на счет изучения, вакансий, перспектив…
    Но абстрагируясь от этого хочется сказать, человечество почти утратило умение быстро и просто создавать целый пласт ПО используя визуальные IDE. Раздувается сложность, производительность разработчиков падает.
  • Is Delphi Dying — False
    0
    Наверное… Но сейчас почему то так делать не принято, не востребовано, мало распространено и вообще, могут засмеять и закидать помидорами.
  • Is Delphi Dying — False
    +8
    Мне часто кажется что в некоторых областях разработка реально деградирует и бессмысленно усложняется. И Delphi хороший тому пример.
    На Delphi (сюда же C++ Builder, Visual Basic и т.п.) можно было очень быстро написать типичные корпоративные приложения, разработка которых всегда была очень востребована. В данном случае я имею ввиду приложения вида: база данных, таблички, формочки, отчеты… В Delphi такое приложение зачастую можно было на 80% сделать визуально (формошлепство), а потом быстро дописать недостающую логику.
    Зачастую, приложение типа корпоративной базы данных или какую нибудь несложную CRM, на десяток таблиц, сотню полей и десяток красивых отчетов, писались студентами на 1-2 дня и за коробку Сникерсов. Приложения отлично работали и исправно служили лет по 10.
    А как сейчас? Сейчас так не получится. Сейчас практически нет визуального программирования. Корпоративное приложение это сложный комплекс из специально настроенного под него сервера, база данных, сервер приложения, веб сервер, какой нибудь фреймворк типа Laravel или Symfony, на котором вручную программируется куча CRUD операций, вручную сверстанный фронтент, который тоже в свою очередь тянет целый стек. Над созданием приложения трудится куча народу и тратят на это человеко-месяцы! И все вручную!
    А в чем плюс таких приложений по сравнению с древним приложением на Delphi? Часто лишь в модном красивом дизайне, как говориться «свистелки-#ерделки», плюс работа через браузер без установки софта. А по мне это может быть и минус, потому как каждый разработчик делает интерфейс в своем уникальном стиле, а несчастные пользователи вынуждены разбираться с каждым новым приложением.
    Сам я последний раз писал на Delphi 20 лет назад. Сейчас разрабатываю фулстек веб-приложения в соответствии с современными традициями. И постоянно ловлю себя на мысли что сейчас все сложно, дорого и запутанно, а раньше было быстро и просто. Если бы разработка в стиле Delphi развивалась последние 20 лет, насколько бы прекрасной она могла стать? Но увы. Да и понятно почему так случилось, история развития отрасли прошла перед глазами.
    Все что я говорю, я говорю о приложениях типа корпоративных баз данных, CRM-ERP средней сложности, других подобных приложениях, главная задача которых это CRUD и удобный вывод информации для пользователей. Но это я бы сказал 75% от всех софтверных работ.
    CRUD, построение GUI, редактируемых таблиц, деревьев, формочек, графиков, отчетов, вывод информации — требуется повсеместно. Программировать это руками — крайне скучная и рутиная задача. Современные фрейворки лишь немного упрощают эти задачи. На мой взгляд такие вещи вообще должны быть максимально упрощены и быть преимещественно визуальными, чтобы позволить разработкам сосредоточится на действительно сложных задачах, не ручном программировании GUI и CRUD операций. Кажется за 20 лет это область не то что развилась, а просто ушла в историю. Сейчас конечно есть какие то инструменты, но они или мало распространены или бессистемны.
    Все, я нанылся, теперь возвращаюсь к пилению своего текущего веб приложения на Laravel-Vue. Надо еще десяток CRUD операций написать ручками и десяток форм сверстать на HTML-CSS-JS, все ручками, никакого визуального программирования… Долго, скучно и печально
  • Гикпорн наручных кварцевых часов «Луч» — и немного оверклокинга
    +1
    Вроде как разломали и уничтожили раритетное изделие. Но сделано это с уважением. Теперь это не просто железяка валяющаяся у кого то на полке. Это достояние общественности, и каждый увлеченный данной тематикой, может изучить изделие во всех подробностях, а не просто оценить внешний вид.
  • Как превратить федеральный проект в сайт-визитку? Почти подробная инструкция
    +3
    С некоторыми заказчиками гибкие методологии вам не помогут. Например с гос заказом вы по закону обязаны работать только по waterfall с четкими этапами и никак иначе. Внутрениие процессы организуйте как вам угодно, но с заказчиком извольте только через waterfall.
    Ну и если заказчик крупный и не гибкий, то он будет навязывать свой подход мотивируя это «мы так не работаем», «у нас так не делается», «так нам не согласуют сверху»… Некоторые корпорации еще менее гибкие чем гос структуры.
  • Как превратить федеральный проект в сайт-визитку? Почти подробная инструкция
    +1
    По моему опыту, в таких проектах надо сначала внимательно выслушать и опросить представителей стороны заказачика, провести с ними несколько встреч. Но потом уже писать ТЗ самому, никого больше не слушая, давить авторитетом, и говорить что ты лучше знаешь как реализовать такой проект. Конечно, по ходу написания ТЗ нужно задавать заказчику появляющиеся вопросы, но ни в коем случае не давать ему влезать в составление проекта. Включайте режим «Мы вас выслушали, мы профессионалы, теперь мы объясняем что и как надо делать.»
    В противном случае проект практически гарантированно утонет в обсуждениях, новых «гениальных» идеях, и бесконечном потоке псевдоэкспертов со стороны заказчика.
  • 6 типовых сюжетов мировой литературы
    0
    Утверждают что почти все популярные истории, мифы, сказки, легенды, фильмы, книги вообще сводятся в одной и той же сюжетной линии если снять с нее внешнюю оболочку. Причем это не зависит от страны, времени и культуры. Подробнее в Википедии по слову «Мономиф»
  • Хранение большого количества файлов
    0
    Благодарю! Я сам планировал провести эти эксперименты, написать тестовые скрипты. А вы все сделали за меня. Огромное спасибо!
    Сейчас соберу сервер и погоняю ваши тесты на реальном железе, а потом и на реальном legacy-софте с реальными данными. Но думаю теперь уже вполне понятно чего можно ожидать.
  • Хранение большого количества файлов
    0
    1000 файлов в каталоге это беда для fat32. Файловые системы из linux этим не страдают
    У меня как раз сейчас стоит задача положить около миллиона файлов в один каталог. (Зачем? Ответ — иначе придется сильно перепиливать legacy-код, а этого делать не хочется.)
    Каталог планируется разместить на отдельном 10 терабайтном HDD на ext4, который через симлинк будет подключен к основной файловой системе.
    Формально пишут, что число файлов в одном каталоге ext4 не ограничено. Утверждают что поиск файла в директории в ext4 идет по B-tree, т.е. вроде должен быть быстрым на большом количестве записей. Но все равно опасаюсь «подводных камней».
    Подскажите, пожалуйста, на какие проблемы я могу нарваться?
  • PHP, YII2 и формирование больших excel-файлов
    0
    В принципе получилось не так уж и специализированно. Там было и форматирование и формулы. Но было одно важное требование — листы и ряды можно было создавать только последовательно. Собственно за счет этого и удалось добиться огромной скорости и экономии ресурсов.
  • PHP, YII2 и формирование больших excel-файлов
    0
    Сталкивался с подобной задачей. Формирование больших экселей на PhpExcel приводило к кошмарному расходу RAM и занимало часы времени. Я изучил известные на то время альтернативы, и в итоге был вынужден создать свой велосипед.
    Для этого был изучен формат .xlsx. Оказалось что это обычный архив с кучей xml файлов (данные, стили, настройки...), картинок и прочих вспомогательных файлов. Используя эти файлы как примеры, был создан собственный велосипед с набором необходимых функций, которые работал в сотни (!) раз быстрее и практически не расходовал память. Объем потребляемой памяти не зависил от объема данных.
    Правильным выбором оказалось формирование xml файлов без всяких библиотек и готовых решений, а просто путем дозаписи строчек в файл. Именно это позволило не расходовать RAM как большинство других решений и не хранить сложные структуры данных в памяти. После формирования всех xml файлов и добавления вспомогательных статических файлов и изображений, они архивировались и получался готовый .xlsx файл.
  • Delphi и C++Builder Community Edition
    0
    А если хочется делать под Linux и мобильные устройства, то что выбрать?
  • Delphi и C++Builder Community Edition
    0
    Спасибо. Если C#/WinForms действительно легко освоить на базовом уровне, я пожалуй уделю им неделю-другую своей жизни. Потребность в быстром написании всяких простых БД и утилит есть, а использовать для этого мой родной web-стек часто крайне не эффективно и избыточно.
  • Delphi и C++Builder Community Edition
    0
    Я последний раз занимался созданием Desctop приложений в начале 2000-ых. Delphi и С++ Builder тогда были очень удобными инструментами для создания несложных приложений типа:
    — Корпоративных баз данных с множеством табличек и формочек (зачастую 90% делалось drag-and-drop)
    — Программы для работы с железом
    — Всякие не сильно навороченные утилиты
    Из плюсов был:
    — Очень низкий порог вхождения
    — Толковые IT-шники осваивали платформу на базовом уровне буквально за неделю, после чего уже могли писать несложный, но вполне рабочий софт
    — Большое количество специалистов любого уровня квалификации на рынке.

    А какие сейчас платформы пришли на смену? Чтобы было также просто, но функционально и с простым освоением?

  • Вы все на одно лицо: 1 из 50 человек не узнаёт окружающих (и может не знать об этом)
    0
    А ведь есть какие то стандартные методики описания лиц человека, которые используют например, органы правопорядка. Может попытаться использовать для себя эти методики, если у вас прозопагнозия. Типа не можешь это делать на уровне инстинкта, сделай это научным способом.
  • Вы все на одно лицо: 1 из 50 человек не узнаёт окружающих (и может не знать об этом)
    0
    Мне кажется запоминать имена в массовом порядке не сильно проще чем запоминать номера телефонов. Особенно если это распространенные имена, то они не более запоминабельные чем цифры.
  • Вы все на одно лицо: 1 из 50 человек не узнаёт окружающих (и может не знать об этом)
    0
    Та же проблема еще с раннего детства. Вот несколько лет назад узнал что это называется «Прозопагнозия», но видимо легкая ее форма.
    Если я общаюсь с человеком часто и много, то я его узнаю без проблем. А вот если лишь изредка, то очень плохо запоминаю. Встретив его случайно на улице я могу не узнать совсем, а иногда могу подумать что он похож на знакомого, но уверенности у меня не будет.
    Я уже давно научился выкручиваться. Если я прихожу на встречу где могут быть знакомые люди, я смотрю им в глаза и слежу за реакцией. По реакции легко понять, знакомы мы или нет. Ну и есть масса других приемов.
    Оказывается, что у моего отца такая же проблема, но он тоже к этому прекрасно приспособился.
    Кстати, у меня еще похоже и легкая форма дисграфии, которая в современном мире компенсируется спеллчекарами и компиляторами. Возможно это связанные вещи.
  • Объясняем современный JavaScript динозавру
    0
    Мне бы было интересно узнать как правильно организовать работу с webpack-ом в реальных сложных проектах где совместно ведется работа и над фронтэедом и над бэкэндом (в моем случае PHP). Хочется понять как лучше все это лучше разложить по папкам. Что и как делать доступным через веб-сервера, а что закрывать. Как сделать так, чтобы на продакшен не попадали лишние файлы из пакетов, такие как документация, примеры, вспомогательные скрипты, но попадали необходимые ресурсы типа картинок.

  • ПК Поиск-2. Второй день рождения
    0
    Не знал про цены. Интересно, а почему МК-88 в 4 раза дороже? Вроде примерно одинаковая элементная база должна быть.
  • ПК Поиск-2. Второй день рождения
    +1
    О да. У меня был видимо один из первых Поисков. (Про «Поиск 2» я не слышал до настоящего момента.) Мой поиск был — омерзительным аппаратом. Работал в разы медленнее чем XT, с дисководом работал тоже в несколько раз медленнее. Отвратительная реализация CGA, которая работала нормально только в графическом режиме, но в текстовом практически не поддерживала работу с цветом (цвет символов мог быть только белый или зеленый, фон символов — всегда черный). Половина программ на этом чуде вообще не запускалась.
    Кстати его отдавали каким то умельцам, они что то там перепаивали, навешивали и перепрошивали, после чего компьютер начал работать быстрее, изменилась раскладка клавиатуры, и в разы ускорилась работа с дисководом. А главное больше программ на нем стало запускаться.
    Да, основы программирования я освоил на этом компьютере, но ностальгии никакой нет, только в вспоминаю глюки и мучения.
    А вот у одноклассника был похожий компьютер МК-88. Вот это была моя мечта! Тоже аналог XT, но практически полностью совместимый с ним и не тормозящий. Полноценный CGA видеоконтроллер. Все что запускалось на XT работало и на МК-88.
  • Как устроено автоматизированное тоннажное производство гелей
    +1
    Меня всегда завораживала работа производственных линий. Сотни механизмов движутся в едином танце, а на выходе получается готовый товар. Интересно, как такие линии проектируют и создают. Ведь я так понимаю они уникальные и делаются под каждое производство индивидуально. Готовую линию вряд ли купишь в магазине. Или это какие то стандартные, совместимые между собой агрегаты, которые выстраивают в ряд чтобы получилась линия?
  • Orchid CMS — ещё одна CMS на Laravel
    –5
    Что то похожее и у меня. Только мне приходится разрабатывать не сайты, а скорее веб-приложения.
    Много раз пытался перейти на популярные фреймворки и добавлять к ним кучу разных плагинов, библиотек. Весило это все очень много, а использовалась лишь малая часть их функционала. И самое обидное, что во всем этом зоопарке регулярно не хватало фишек которые мне удобны и приходилось все это допиливать.
    В итоге плюнул и написал собственный PHP-фремворк который делает то что мне требуется в большинстве приложений. С ним же сразу в комплекте идут JavaScript/CSS компоненты типа CKEditor, Bootstap итп, Фреймоворк занимается роутингом, авторизацией, имеет компактную обертку над SQL базами данных… и кучу мелочей с которыми мне приходится постоянно сталкиваться. Там же функционал для быстрого построения CRUD редакторов баз данных, который путем описания позволяет строить древовидные и табличные редакторы.
    Менюшки, навигацию, авторизацию тоже делает движок, хотя при необходимости стандартное поведение можно переопределить.
    Подключается к проектам через симлик. Я постоянно чуть чуть дорабатываю фремворк работая над своими приложениями и доработки фреймворка автоматически распространяются на остальные проекты. Так получается оперативнее чем постоянно использовать отдельный git для фреймворка.
    В общем, для создания нового приложения, ставятся симлинки на фреймворк, настраивается конфигурационный файл, после чего начинаем писать контроллеры, представления и модели в отдельной директории приложения.
    Как ни печально, но у меня этот подход оказывается более эффективным чем классический.
  • ZX Spectrum: 35-летний юбилей
    0
    Мне рассказывали как фотки и картинки «сканировали» в спектрум. Брали фотку, клали на нее оргстекло расчерченное в клеточку, одна клеточка — одно знакоместо 8х8 пикселей, и по пикселям с клавиатуры вводили пиксели в графический редактор, попутно подгоняя цвета знакомест.
    И ведь очень неплохо иногда получалось.
  • ZX Spectrum: 35-летний юбилей
    +2
    А потом наверное купили его, освоили программирование, стали программистом, и теперь зарабатываете много денег. В общем ваше потраченное на работу лето многократно окупилось ))
  • ZX Spectrum: 35-летний юбилей
    0
    Нежели прямо на машинных кодах реально программировать? Я об этом слышал, но не верил. Все таки Z80 это не древний программируемый калькулятор, где действительно программу вводили вводя коды. Инструкций много, разные модификации, операнды. Опять же, как быть с переходами, ведь добавив инструкцию, другие адреса смещаются. Я думал что термин «программирование в кодах» на самом деле подразумевает программирование на ассемблере.
  • ZX Spectrum: 35-летний юбилей
    0
    А мне было бы интересно посмотреть не на сами игры, а на процесс их создания и какие инструменты для этого использовались. Как рисовали графику, какие языки использовались, как отлаживали.
  • Можно ли заменить Adobe Premiere и Sony Vegas бесплатными видеоредакторами?
    0
    Недавно мне нужно было сделать систему, которая бы решала следующие задачи:
    — Монтирование роликов в автоматическом режиме по определенным алгоритмам
    — Должно работать на Linux в режиме командной строки без графического интерфейса
    — Должна быть возможность легко доработать получившийся ролик вручную в видеоредакторе

    После разных попыток я остановился на видеоредакторе Shotcut. Он построен на базе фреймворка MLT и создан тем же автором. Так что моя программа генерировала XML файл, который можно скормить и консольной утилите melt из комплекта MLT и графическому видеоредакторе Shotcut.
    Другие видеоредакторы отказывались нормально делать импорт и экспорт melt файлов, а для Shotcut он родной. Хотя пришлось немного помучатся разбираясь с тем, почему иногда Shotcut оказывался кушать сгенерированные мной XML файлы.
  • Скрипт для тех, кому лень разбираться в Linux
    +1
    Было бы хорошо, если бы этот скрипт помимо выполнений действий, опционально показывал какие команды или изменения он сейчас будет выполнять и давал текстовые пояснения своим действиям. А то просто верить и наедятся что он все сделает как надо — это не очень хорошая практика.
  • Скрипт для тех, кому лень разбираться в Linux
    –2
    Меня печалит и удивляет что подобные утилиты не встроены в популярные дистрибутивы. Пока для себя я этот вопрос решил написанием большой шапаргалки на Google Documents с кучей команд, кусков конфигов и т.п.
  • Починка солнца вручную, или фильм “Пекло” 2007г
    +3
    Я посмотрев этот фильм понял, что при отправке самых ответственных миссий, команду набирают исключительно из неуравновешенных психопатов. И главное, чтобы в команде все были незаменимыми и никто не мог дублировать чужие обязанности.
  • Починка солнца вручную, или фильм “Пекло” 2007г
    +2
    Консультация видимо выглядела так. «Где нибудь в кабаке — дядя Кип, нарисуй нам червоточину.» И он на салфетке намазюкал ее. В итого заявляют что фильм создан исключительно на научных фактах.
  • Audi летит на Луну: началась предполетная подготовка лунохода
    0
    Луноход это просто радиоуправляемая машинка, рассчитанная на работу в вакууме, и имеющая систему терморегуляции. На мой непосвященный взгляд это пустяковая инженерная задачка, по сравнения с задачей доставки на Луну этой машинки. Почему тогда столько внимания уделяется луноходам, а средства доставки и посадки считаются чем то самим собой разумеющимся?
  • Почем нынче «Яндекс»? История одной продажи
    –1
    Надо раскрутиться, клиентов набрать, бизнес отладить. А пока это сделаешь, алгоритм уже измениться.
  • Почем нынче «Яндекс»? История одной продажи
    +1
    На 25 тысяч долларов нормальную новую жизнь в США на начнешь.
  • Adobe прощается с Flash
    +1
    Эх… А ведь изначально это была супер прорывная технология и долгие годы оставалась таковой. Как они умудрились довести ее до такого состояния и утопить? ((
    В ведь до сих пор многие задачи на Flash решаются на порядок удобнее и проще чем на HTML5.
  • Начался сбор подписей против блокировки RuTracker.org
    +2
    Что бы там ни говорили, а РуТрекер все равно самый большой в России источник ворованного контента. Формально, они пытаются что то удалять, но то ли плохо стараются, то ли реально не хватает на это сил и ресурсов. Я думаю, что все таки первое.
    Ну а для читателей Хабры, да и для большинства компьютерно-грамотных пользователей, я думаю все равно ни составит большого труда обойти блокировки.
  • Как секвенируют ДНК
    +1
    А меня очень поразило, когда я узнал что длинна человеческой ДНК всего 3,1 млрд пар оснований, причем часть ДНК-кода вообще не рабочая (обломки вирусов и прочий мусор). Получается что объем кода некоторых операционных систем больше чем объем кода человека.
  • Adminer — веб-интерфейс для баз данных размером в один .php файл
    +2
    Вот она великая сила привычки и традиций. Есть монстр PMA, есть прекрасный Adminer, который лучше его практически по всем параметрам. Но 98% людей по прежнему пользуются PMA ибо так заведено испокон веков.
    Тоже самое касается очень многих других продуктов.