• Шуточная шпаргалка по срокам выполнения проектов

    sefus
    @sefus
    Ответ написан
    Комментировать
  • Как настроить новую мак ос Monterey, чтобы использовать punto switcher?

    @Edinica
    Настройка переехала в другой раздел:
    Настройки/Защита и Безопасност/Универсальный доступ622308ec6d5f0851490631.png
    Ответ написан
    1 комментарий
  • Откуда неадекватный размер ext4.vhdx?

    @sl0 Автор вопроса
    Разобрался. Пишу тут для тех, кто столкнется с той же проблемой.

    Решение для очистки в Docker Desktop.
    1. Устанавливаем libguestfs-tools в wsl.
    2. sudo mkdir -p /mnt/wsl
    3. sudo guestmount -o allow_other --add mnt/c/Users/username/путь_к_/ext4.vhdx -i /mnt/wsl
    4. Чистим лишнее в /mnt/wsl
    5. После этого из винды уже запустить
    wsl --shutdown
    optimize-vhd -Path путь_к_\ext4.vhdx -Mode full
    Ответ написан
    Комментировать
  • Обязан ли я уведомлять в ФНС об открытии счёта Payoneer?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    оставлю ссылку ради подписавшихся
    https://pravoved.ru/question/3033804/

    но развивать тему не буду
    Ответ написан
    Комментировать
  • Какие книги по SOLID принципам стоит прочитать?

    @ilitaexperta
    Никакие. SOLID это мусор. Встречал много людей, любящих рассуждать об архитектуре. Их всех объединяет одна вещь - они не могут спроектиоровать и написать с нуля систему.

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

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

    Вообще лучше не думайте об архитектуре, просто делайте проекты. Первые несколько раз получится дерьмо, зато потом заткнете за пояс любого знатока значения буковок из SOLID
    Ответ написан
    Комментировать
  • Куда двигаться дальше senior разработчику? Новый язык, технологии, opensource, стартап?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Как вы это делаете?! За 17 лет работы в ИТ у меня ни разу не возникало вопроса "Куда двигаться?", только "Где взять времени на освоение всего этого бесконечного изобилия технологий, углублённого изучения уже знакомого и реализацию множества идей?"
    Ответ написан
    4 комментария
  • Как настроить NGINX для переадресации на моб версию?

    romy4
    @romy4
    Exception handler
    моя скромность не позволяет такому гению давать подсказки
    Ответ написан
    2 комментария
  • Какие задачи нужно уметь выполнять на JS начинающему?

    copist
    @copist
    Empower people to give
    Какие задачи нужно уметь решать на чистом JS, перед тем как переходить к изучению библиотек и фреймворков?


    Кроме синтаксических конструкций, математических и логических выражений, нужно знать:
    • Область видимости переменных
    • Замыкания
    • Объектно-ориентированное программирование, в частности наследование через прототипы
    • Шаблон проектирования "модуль"
    • Операции над DOM
    • Понимание принципов событийно-ориентированного программирования
    Важно - нужно знать, откуда копипастить.
    Тебе нужно быть очень хорошо знакомым с одной-двумя-тремя популярными библиотеками на JavaScript. В идеале ты должен иметь представление о том, что определённый класс задач может быть решен с помощью определённых библиотек, хотя бы одной, но такие знания приходят с практикой. Вообще ты должен быть знаком с ними так близко, чтобы помнить, в какой части мануала по библиотеке можно найти описание форматов входных данных нужной тебе функции и какой будет результат, чтобы скопировать и вставить в свой код, а потом поправить, чтобы работало.

    Важно - инструменты программиста JavaScript
    У тебя должен быть удобный инструмент для разработки (IDE, Integrated Development Environment), чтобы он тебе подсвечивал код (syntax highlight) и подсказывал о синтаксических ошибках (syntax check), о формальных параметрах функций (type hinting), о стиле кодирования (code style), помогал писать код (live templates).
    Ты должен знать, как отлаживать скрипты в популярных браузерах (Firebug, Chrome Developer Tools и другое). Что такое точки останова, как управлять исполнением во время останова, как посмотреть и поменять содержимое переменных, как настроить останов по условию.

    Хотелось бы узнать что это за задачи(упомянутые вами 80%)


    Реальные задачи джунов:
    1. Возьми из сборника задач по javascript любой скрипт случайно и вслух расскажи, что он делает.
      Важно - читать и понимать чужой код намного важнее, чем писать свой. И на работе тебе это приддётся делать чаще, чем ты думаешь. Чтобы подключить к своему проекту чужую JS либу, нужно понимать что она делает, как она конфигурируется, как управлять её поведением. Скажу точно, что написать свой скрипт, который строит графики, намного сложнее, чем понять, как настраивается highcharts.

    2. Напиши скрипт на JS, который в заданном тексте удалит один или два символа, выбранных случайно
      1. Усложнение: удалять можно только буквы в словах, а знаки пунктуации и цифры удалять нельзя
      2. Усложнение: принять, что этот текст является программной на Javascript, удалить одну-две команды JS, но только если они не в строковых литерах (break как команду удалить можно, а в строке "break my heart" нельзя)
      3. Усложнение: воспользуйся этим скриптом и "попорти" код какого-нибудь другого скрипта на Javascript, а потом отладь, найди ошибку и восстанови работоспособность
      Важно - этим обычно все и занимаются - ищут баги. Только в реальной жизни они и без этого скрипта появляются. И не по одному, а прям пачками.

    3. На страницу HTML нужно встроить график курса доллара по отношению к рублю. Формат входного массива значений курса определи сам, исходя из своего скрипта для построения графиков.
      1. Усложнение: на одном графике должны быть два курса, по разным шкалам. Наприме, курс доллара к евро и курс юаня к рублю
      2. Усложнение: первоначально график вывести в детализации по месяцам, но чтобы можно было "приблизить" (drilldown) детализацию до дней
      3. Усложнение: первоначально график вывести текущем месяце, но чтобы можно было загрузить данные для предыдущего месяца без перезагрузки страницы (AJAX)

    4. При клике по картинкам, вставленным в текст HTML, показывать всплывающее окно для просмотра увеличенной картинки.
      1. Усложнение: в всплывающем окне сделать навигацию по картинкам, вперёд/назад и к нужной картинке
      2. Усложнение: в всплывающем окне вместо картинки показать видео-ролик с Youtube
      3. Усложнение: в всплывающем окне показать текст HTML

    5. По клику на кнопку "Click me" показать всплывающую форму.
      1. Усложнение: реализовать проверку данных на корректность перед отправкой формы (непустое значение, минимальное количество символов, максимальное количество символов, минимальное числовое значение, максимальное числовое значение)
      2. Усложнение: если в значении текстового поля встретилась гиперссылка, то считать её за 22 символа при любой длине этой ссылки (как в твитере)
      3. Усложнение: реализовать отправку формы на сервер через AJAX, без перезагрузки страницы
      4. Усложнение: саму форму в виде HTML загрузить с сервера через AJAX, в момент клика по кнопке "Click me", правила проверок данных должны как-нибудь "извлечься" из самой загруженной формы, например из аттрибутов полей ввода

    6. К форме ввода данных на поле ввода даты "навешать" всплывающий календарь для выбора даты.
      1. Усложнение: сделать форму календаря мультиязычной. Хотя бы через настройки на том же JavaScript
      2. Усложнение: сделать так, чтобы с помощью календаря можно было выбрать диапазон дат, чтобы она была привязана к двум полям формы "дата начала" и "дата окончания", и чтобы значение в поле "дата начала" обязательно была меньше чем в поле "дата окончания"
      3. Усложнение: сделать так, чтобы с помощью в календаре можно было видно визуально этот диапазон
      4. Усложнение: диапазон может быть открытым, но не пустым, то есть пользователь должен задать хотя бы дату начала или дату окончания.

    7. Сделать пред-просмотр веб-страницы HTML с разными темами. Тему страницы выбирать через селектор на javascript, а показывать в фрейме.
      1. Усложнение: сделать селектор "тип устройства", чтобы менять размер фрейма (например, "iPhone 5c 1136x640") и "чекбокс" для смены ориентации страницы "горизонтальная" или "вертикальная" (соответственно 1136x640 или 640x1136)
      2. Усложнение: в селекторе тем предусмотреть поиск тем по подстроке, и аналогично поиск устройств по части названия (авто-дополнение, auto-complete)
      3. Усложнение: тема страницы должна меняться без перезагрузки фрейма



    Задачи повышенной сложности, исходя из личного интереса
    1. Реализовать форму для многошагового мастера: форма должна состоять из нескольких страниц (шагов), пользователь может переключать страницы через какие-нибудь элементы управления "вперёд/назад" или "перейти на страницу".
      1. Усложнение: реализовать функциональную связь значений, когда некоторые данные зависят друг от друга (ввёл число в поле "количество" и в поле "сумма" значение пересчиталось)
      2. Усложение: доступность некоторых полей ввода должна зависеть от данных (например, если указал "есть личный самолёт", то значит можно ввести "марка самолёта")
      3. Усложение: видимость некоторых страниц должна зависеть от данных из предыдущих страниц (например, если указал "есть личный самолёт", значит появилась страница "ТТХ самолёта"; иначе страница должна скрыться)

    2. Реализовать однопользовательскую браузерную игру "змейка", "тетрис", "найди пару"
    3. Реализовать многопользовательскую браузерную игру "крестики-нолики", "морской бой" на два игрока в режиме "hot seat"
      1. Усложнение: два игрока на разных компьютерах, ходы передаются по websocket
      2. Усложнение: ограничение на ожидания окончания хода 15 секунд, по окончании ожидания автоматически делается случайный ход

    4. Реализовать todo-list. Пользователь вводит список, затем он превращается в строки с "чек-боксами". Когда "чекбокс" включен, строка зачёркивается.
      1. Усложнение: пользователь может переименовывать, удалять, добавлять строки
      2. Усложнение: список хранить в localStorage браузера, чтобы при перезагрузке страницы он восстанавливался
      3. Усложнение: пользователь может иметь несколько независимых списков todo

    5. Реализовать простой графический редактор. Пусть рисуется точка в месте, где пользователь кликнул.
      1. Усложнение: добавить переключатель режимов "точка"/"линия", в режиме "линия" рисуются линии между двумя последовательно кликнутыми точками
      2. Усложнение: можно менять толщину, цвет линий, размер точек
      3. Усложнение: последовательность кликов можно воспроизвести ещё раз с самого начала, равномерно или с реальной задержкой между кликами, с обычной скоростью или ускоренно
      4. Усложнение: можно выгрузить получившийся рисунок в формате PNG или SVG, причём SVG c анимацией воспроизведения



    Можно использовать любую существующую библиотеку.
    Например,
    для построения графиков www.highcharts.com
    для загрузки и передачи данных через AJAX: jquery.com + что-нибудь на сервере
    для всплывающих диалогов с картиками, видео и формами: fancyapps.com/fancybox и https://jqueryui.com/dialog/
    для валидации форм rickharrison.github.io/validate.js
    для календаря https://jqueryui.com/datepicker/
    для автодополнения https://jqueryui.com/autocomplete/
    для передачи данных между несколькими пользователями socket.io или обычный AJAX
    Ответ написан
    16 комментариев
  • Удаленный работадатель требует сделать ИП, зачем это нужно?

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

    Для вас:
    "плюсы" - меньше налоги на доход (6% + 20000р. в фонды (которые вычитаются из налогов на самом деле) в год вместо 13% + то что работодатель платит за вас в фонды), соответственно всегда можно договориться, что эти недоплаченные взносы каким-то образом платить вам. Некая свобода выбора на кого работать + можно работать на несколько работодателей вполне официально.

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

    Советую почитать на эти темы:
    www.iloveip.ru - у них хороший был блог на хабре, где все популярно объяснялось.

    ps.siliconrus.com/problem/8136
    siliconrus.com/2015/05/ip-ooo

    ну и да, еще вот это: siliconrus.com/2015/06/no-more-ip
    Ответ написан
    1 комментарий
  • Отмена банковской тайны: открывать ИП или нет? И каковы особенности работы в белую с зарубежными клиентами?

    sintez
    @sintez
    Плачу 6% налога, все взносы в фонды вычитаются из суммы налога в конце года, так что по сути, только 6% и выходит. По вашим вопросам:
    а) нужно открыть ИП, затем расчетный счет и транзитный валютный счет в банке.
    В банке нужно открывать рублевый и валютный расчетные счета. Транзитный счет банк открывает автоматически, когда ты открываешь валютный расчетный. Нельзя открыть только расчетный рублевый и транзитный валютный. Соответственно, вы будете платить банку за обслуживание двух счетов.

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

    Еще есть важный момент, это паспорт сделки. Это такая специальная бумажка, основное назначение которой заключается в том, что за ее оформление, и в дальнейшем за все платежи банк будет драть с тебя дополнительную комиссию. Паспорт сделки оформляется в случае, если сумма обязательств по вашему контракту за срок его действия превысит эквивалент 50тыс долларов США. В принципе, его можно сразу и не оформлять, а получать свои платежи, постепенно приближаясь к пороговой сумме. Главное не превысить ее. Дальше можно поступить двумя путями - либо оформить эту бумажку и начать платить дополнительные комиссии, либо просто заключить новый контракт, таким образом начав цикл с начала.
    Если вы не планируете сразу оформлять паспорт сделки, в банке вас попросят при первом получении средств помимо договора и инвойса приложить еще гарантийное письмо, что сумма вашего контракта не превысит 50к и вы не будете оформлять паспорт сделки. Точную формулировку вам скажут в валютном контроле банка.

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

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

    coocheenin
    @coocheenin
    The Passionate Web Developer & Coder, DIY Electron
    Дополнительные выплаты (к 6%) существуют, это взносы в пенсионный и обязательного медицинского страхования фонды. Однако вы можете вычесть их из налога в полном объёме и при достижении определенной суммы дохода вы их не почувствуете.
    Правила расчета и "тарифы" меняются чуть-ли не каждый год, поэтому рекомендую отслеживать актуальные ставки на очень удобной страничке народной бухгалтерской энциклопедии

    Информация про 50% уже устарела.

    Статья 346.21. Порядок исчисления и уплаты налога
    3.1. Налогоплательщики, выбравшие в качестве объекта налогообложения доходы, уменьшают сумму налога (авансовых платежей по налогу), исчисленную за налоговый (отчетный) период, на сумму:
    1) страховых взносов на обязательное пенсионное страхование, обязательное социальное страхование на случай временной нетрудоспособности и в связи с материнством, обязательное медицинское страхование, обязательное социальное страхование от несчастных случаев на производстве и профессиональных заболеваний, уплаченных (в пределах исчисленных сумм) в данном налоговом (отчетном) периоде в соответствии с законодательством Российской Федерации;

    Индивидуальные предприниматели, выбравшие в качестве объекта налогообложения доходы и не производящие выплаты и иные вознаграждения физическим лицам, уменьшают сумму налога (авансовых платежей по налогу) на уплаченные страховые взносы в Пенсионный фонд Российской Федерации и Федеральный фонд обязательного медицинского страхования в фиксированном размере.
    Ответ написан
    Комментировать
  • Учет домашних финансов

    kaverdo
    @kaverdo
    Пользуюсь своим велосипедом kudaskolko.ru — ввод транзакций через одно поле (как в тетрадку) и автоматическое попадание записей в нужные категории (после единоразового перемещения одноименной записи или при определенных совпадениях). Планирования пока нет.

    Ответ написан
    Комментировать
  • Управляющая компания публикует персональные данные

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

    P.S. Да, я осознаю что такие объявления мало повлияют на должников. Но вдруг… да и соседи должны знать за кого они платят.
    Ответ написан
    3 комментария
  • Как правильно заказать iRobot Roomba (да и любую технику с аккумуляторами) с EBAY?

    dude_sam
    @dude_sam
    BI Developer
    Добавлю к ответу mmatros: если же продавец не отправляет напрямую в Россию или ставит неадекватную стоимость отправки (к примеру $150 через USPS Priority), то есть как минимум три вариант (лично мной опробованных) и несколько не опробованных. Напишу по своему опыту:
    • shipito отправляете через airmail express
    • shopfans отправляете через priority bww
    • polar express отправляете, собственно, через сам polar air

    Всё с отслеживанием и страховкой, но в случае, если товар заведомо неисправен, то вы 100% проиграете диспут на eBay, т.к. уже выйдет 40-дневный срок, но на мелочевке (ms arc mouse), полученной таким образом, удавалось у продавца отбить деньги. Поэтому дорогие товары предпочитаю покупать таки в магазине (Amazon), т.к. потом можно будет отправить товар на ремонт (возврат часто ограничен 30-дневным сроком) и даже один раз мне даже заменили на новый (зеркалка pentax), но оплачивать транспортные расходы придется самостоятельно.

    Что-то много получилось… :)
    Ответ написан
    1 комментарий
  • Почему µTorrent под windows 7 ограничивает соединение по каждму из пиров?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Может, винчестер не успевает писать? У меня было такое с USB винчестером, когда скачивание было на полных 100 Мбит/с
    Ответ написан
    1 комментарий
  • Стоит ли открыть исходный код ORM для PHP?

    silentnuke
    @silentnuke
    Пишите, лишним точно не будет.
    Ответ написан
    Комментировать
  • Android: отключить свойство persistent для некоторых установленных приложений?

    Попробуйте с Autostarts поиграться. Обычно такие приложения автоматически запускаются после определенных событий системы — включения устройства, подключения к сети и т.п.
    Ответ написан
    2 комментария
  • Fallback, если у браузеры выключены изображения

    denver
    @denver
    Попробуйте покопать в сторону <object>, это то ради чего данный тег и был придуман:

    <a href="http://google.com">
        <object data='http://www.google.com/images/srpr/logo3w.png' type="image/png">
            Turn on images!
        </object>
    </a>
    

    Я проверил: в FF при отключении картинок показывает текст, но не в Хроме (хотя если картинка возвращает 404 то текст покажет), в других не тестировал. Возможно это бага хрома, потому что согласно спецификации:
    If the user agent is not able to render the object for whatever reason (configured not to, lack of resources, wrong architecture, etc.), it must try to render its contents.
    Ответ написан
    2 комментария
  • OCZ Vertex 4 vs Crucial M4?

    Yizahi
    @Yizahi
    Я пару недель назад выбирал точно такой же формат. Перечитал усё что нашел и чуть не бросил покупать (негативные отзывы я нашел на ВСЕ модели). Дальше идут нубские размышления о прочитаном:

    Ситуация такая — ссд на втором сандфорсе быстрее на сжимаемых данных (почти всегда в домашних условиях), на марвелах быстрее на несжимаемых. Разница между скоростями пренебрежимо мала для домашнего использования. ОЦЗ на контроллере Индилинкс немножко медленнее всех, емкие и не обладают известными багами (но вероятно обладают своими, новыми). Сасунги на собственном контроллере говорят неплохие, но смущает то что их только одна компания делает.
    Сандфорсы раньше падали в БСОД, со временем почти все или все это починили новыми прошивками. Марвелы раньше фризились (лаги по 10-15 секунд в работе), потом это починили. Интелы, 320 кажется, умирали, но потом это починили.
    Потом есть момент с памятью — она бывает синхронной, асинхронной и переключаемой (могу путать), перелючаемая лучше других. Память делают по различным техпроцессам, последние поколения на 32-34нм, либо более новые на 25нм. Вопреки логике 32-34нм лучше для нас т.к. там немного выше надежность. 25нм просто дешевле производить.

    Короче говоря я вначале выбрал контроллер — последний Марвел, а потом на его базе ссд. Есть популярные крушиал С4, новые Интелы, чуть менее популярный Плекстор (M2S кажется) но он самый быстрый из Марвелов, и относительно новый Корсар Performance Pro 3, последний я и купил, понадеявшись на то что из-за задержки в выпуске большинство багов там вычистили.

    Подождать М5 тоже вариант, он будет летом. Но он будет с новым контроллером и еще неизвестно какими багами.

    Еще надо обратить внимание на переходник для 3.5" порта, у Корсара он коротковат и в корпусе с салазками для винчестеров его не закрепить. Я оставил висеть на проводах (одной стороной на дне корпуса), сдд очень легкий — 80 грамм примерно, меньше чем телефон.
    Ответ написан
    2 комментария