• Как создать скрытое мобильное приложение только для сотрудников?

    zagayevskiy
    @zagayevskiy Куратор тега Android
    Android developer at Yandex
    На iOS - TestFlight или b2b, на Android - Google Play Beta.
    Ответ написан
    Комментировать
  • Как осуществить сервис одноразовой почты?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Что бы понять как что-то сделать - нужно владеть инструментами, с помощью которых это можно сделать.
    Поднимите локально postfix/dovecot, много вопросов отпадут сами.
    Ответ написан
    Комментировать
  • Private метод в интерфейсе (typescript) возможно ли?

    StivinKing
    @StivinKing
    Интерфейсы определяют "Общедоступные" свойства и методы и не имеют смысла от модификатора доступа типа protected или privat

    Можете сделать что-то вроде:
    interface IModuleMenuItem {
         getName(): string;
    }
    
    class ModuleMenuItem implements IModuleMenuItem {
        private name;
    
        public getName() {
            return name;    
        }
    
        protected setName(newName : string) {
            name = newName;
        }
    }

    Взято отсюда
    Ответ написан
    1 комментарий
  • Можно ли найти календарь с диапазоном дат и кнопками?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    www.daterangepicker.com
    longbill.github.io/jquery-date-range-picker
    demos.krajee.com/date-range

    Ну и классика

    Немного не понятно это:
    DataPicker - НЕ подходит


    По сути Вы говорите "помогите выбрать автомобиль, но автомобиль не предлагать". DataPicker - это не имя собственное, это тип плагинов их множество, в том числе есть тип dateRangePicker - это как раз выбор диапазона дат.
    Ответ написан
    7 комментариев
  • Что больше добавит производительности SSD или 8 гб памяти?

    Ommonick
    @Ommonick
    qa+dev (scala, golang, ts/js, api, grpc)
    Сначала память, потом ссд
    теперь поясню. Хоть я и ярый сторонник ссд взамен хдд и рассматриваю хдд только как неторопливые хранилища данных (кино, архивы, бэкапы), практика показывает что малое количество памяти вызывает излишние обращения к файлу подкачки, что по сути порождает лишние операции, сказывающиеся на производительности. Когда достаточно памяти - система не дергает хдд для подкачки и общее впечаление от работы хорошее. Не сомневаюсь что можно поставить ссд и файл подкачки на нем будет работать быстрее, но я считаю, что если есть возможность не выполнять какую то работу, то лучше ее не выполянть, чем искать варианты как ее выполнить быстрее\менее затратно.
    В общем ставьте память, а потом ради комфорта докупаете ссд, как будет возможность
    Ответ написан
    6 комментариев
  • Как написать следующее приложение?

    devspec
    @devspec
    Помогло? Отметь решением
    Да нигде не ошиблись вроде. Всё это можно связать в одно и работать будет. Если нужна сетевая БД - можете использовать MySQL или Postgresql.
    Вместо WPF можно использовать WinForms. А можно и WPF - как больше нравится.
    Не забудьте про ORM - Entity Framework, например.
    Ответ написан
    Комментировать
  • Какие вопросы задаёте при знакомстве с новым отделом?

    astec
    @astec
    Разработчик https://debtstracker.io/
    - Где столовка и туалет?
    - Что я должен знать?
    Ответ написан
    Комментировать
  • Как совмещать основную работу и фриланс, и с чего лучше всего начать?

    opium
    @opium
    Просто люблю качественно работать
    А зачем совмещать?
    Какие могут быть причины брать фриланс если есть основная работа
    тупо мало денег?
    увольтесь и найдите новую работу, ну или увольтесь и полностью фрилансите денег будет в разы больше
    Ответ написан
    33 комментария
  • Как agile выглядит на практике?

    @merzlyakovme
    1. Ну вы же самите пишете: "Development Teams are cross-functional, with all of the skills as a team necessary to create a Product Increment."
    Development Team, as a team и т.д.
    Это значит то, что команду нужно грамотно подбирать под проект. Команда должна быть кросс-функциональной, а не каждый в ней. Если вы набрали 5 матерых бэкендщиков, то не нужно их потом винить, что они с фронтендом облажались.
    2. Во-первых, если разработчики будут спорить 2 часа, или один другого "унижать", то у вас хватает проблем кроме скрам процессов.
    3. Та же ситуация, что и с рефакторингом. Как вы объясните, что часть проекта надо переписать? Т.е. вы все время какое-то гуано ваяли, а теперь осознали? Если уж работаете по скраму, то и product owner должен хорошо в этом разбираться. В разработке всегда хватает задач, которые не дают видимого функционала, которого так хотят видеть на демо, но такие задачи необходимо включать в спринты. + если у вас подразумеваются высокие нагрузки, то необходимо заранее на планировании обсуждать это и вносить эту работу либо в стори, либо создавать новую в бэклоге на будущее.
    4. На практике это скорее мозговой штурм. Вы просто садтесь с коллегой и думаете/пишете.
    5. По факту отвечает вся команда. Если срыв из-за того, что неправильную эстимацию выставили, так все вместе играли в Planning poker или его альтернативу. Если кто-то пилил задачу весь спринт, а потом сказал перед демо, что не успел, то виноват он и скрам мастер, который не проследил , возможно, повесил слишком большой таск. Если заказчик попросил слишком большую задачу в спринт, а ему никто на это не возразил - ссзб, снова виноваты.
    6. Проджет/деливери менеджер.
    Ответ написан
    3 комментария
  • Как организовать хранение файлов на сервере?

    @marazmiki
    Укротитель питонов
    Правильно ли я понимаю что для хранение файлов их нужно разбивать по папкам,

    Неправильно.
    Для того, чтобы файлы загружались и благополучно отдавались, сегментировать (разбивать по папкам) их совсем не обязательно.

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

    А на боевых серверах использование хранилища в локальной файловой системе и вовсе нонсенс. Там эта проблема не стоит в принципе.

    Сегментацию можно сделать для, скажем так, красоты. Или чтобы было понятно, кому принадлежит тот или иной файл. Но практическая польза от неё сомнительна. Вреда, впрочем, тоже нет :)

    допустим на сервер пользователь с Ником username заливает файл file.mp4, и я сохраняю этот файл по пути u/us/use/user/usern/file.mp4 и такой путь формируется для каждого пользователя

    Опять неправильно.

    Во-первых, никогда, НИКОГДА не доверяйте данным, пришедшим от пользователя. Сохраняете загруженный файл – сгенерируйте имя сами. А оригинальное имя не возбраняется сохранить и в другом месте. Если понадобится дать возможность пользователю сохранить файл под оригинальным именем, это делается в несколько строк.

    Во-вторых, Ваша сегментация слишком агрессивная. Если представить, что юзернейм может состоять только из строчных латинских букв и цифр (итого алфавит 26+10=36 символов), то такое хранилище сможет вместить 36 ^ (1 + 2 + 3 + 4 + 5) = 36^15 = 2.21 * 10^23 файлов без повторений. А что если юзернейм короче 5 символов? А что если он переименуется?

    Помните "во-первых"? Так как нам нужно самим придумать имя файла, почему бы не воспользоваться либо UUID и сгенерировать уникальное (с высокой достоверностью) значение вида 28c5a6d8-f7b5-440f-aeaa-150e4fd0bebc, а его уже сегментировать? Например, два сегмента по два символа датут прикольные ссылки вида 28/c5/28c5a6d8-f7b5-440f-aeaa-150e4fd0bebc и возможность разместить 65 тысяч файлов так, чтобы они были по одной штуке в директории :)

    Есть также вариант использовать не UUID, а посчитать контрольную сумму файла и взять её в качестве имени. Практическая ценность такого хеша, правда, тоже стремится к нулю :)

    если будет 2 одинаковых названия файла у одного пользователя то просто добавляю к новому файлу номер (file1.mp4)

    Если речь идёт о Джанге, то она сама так делает, это штатная функция хранилища.
    Ответ написан
    1 комментарий
  • Нужен ли программисту собственный блог?

    dom1n1k
    @dom1n1k
    Блог нужен человеку, которому есть что сказать и чем поделиться.
    Судя вопросу, вам пока не нужен.
    Ответ написан
    1 комментарий
  • Когда уже на тостере сделают голосования?

    никогда!!!! и везде.
    Ответ написан
    Комментировать
  • Как изменить цвет картинки в формате ,svg с помощью CSS?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Что бы манипулировать со стилями svg его надо вставить в html как svg, а не как картинку, через тег img.
    Ответ написан
    Комментировать
  • Питон считают медленным из-за того, что он скриптовый?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    это потому, что комментирующие не знают предмета

    да, Питон интерпретируемый, и он медленнее компилируемого Го, и тем более С++

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

    в программировании есть два потока:
    1) борьба со сложностью задачи
    2) борьба со сложностью языка

    и то и то с Питоном куда легче чем с любым другим языком

    конечно, там где HighEnd - там только Си ( Го очень хорошо идет для веба), ну так "там" и curl с nginx ом, бывает, пересобирают
    Ответ написан
    9 комментариев
  • Как создать GUI для Arduino проекта?

    @vilgeforce
    Раздолбай и программист
    Ардуино подключается по USB и в системе оно видно как COM-порт. Соответственно, самый логичный способ связи между программой и железкой - COM
    Ответ написан
    2 комментария
  • Что не так с наследованием интерфейсов?

    @Sumor
    Вы не указали, что Lol реализует интерфейс IParent
    public class Lol : IChild, IParent
    А также, вероятно, вы хотели в IChild добавить свойство Family

    После обновления кода:
    Вы используете явную реализацию интерфейса, но у IChild нет собственного свойства Family, только наследуемое от IParent. Как раз можно изучить ключевое слово new у свойств.
    Возможно то что вы хотите посмотреть делается так:
    using System;
    
    
    public class Test
    {
    	public static void Main()
    	{
    		Lol l = new Lol();
    		Console.WriteLine(((IParent)l).Family);
    		Console.WriteLine(((IChild)l).Family);
    		Console.WriteLine(l.Name);
    		Console.ReadLine ();
    	}
    }
    
    public class IParent
    {
    	public string Family { get { return "suck"; } }
    }
    
    public class IChild : IParent
    {
    	public string Family { get { return "duck"; } }
    
    }
    
    public class Lol : IChild
    {	
    	public string Name { get { return "ross"; } }
    }
    // Вывод:
    // suck
    // duck
    // ross
    Ответ написан
    Комментировать
  • Где больше практики?

    Antonchik
    @Antonchik
    Программирую на HTML
    Придумайте себе интересный проект. Таким способом, по мере реализации вы столкнетесь с проблемами, какие успешно решите с помощью гугла, хабра, тотстера, или stack overflow, и это поможет вам набить руку
    Ответ написан
    1 комментарий
  • Существуют ли селекторы по css-свойствам?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега CSS
    Приснилось.

    Можно сделать только так, но это, по понятным причинам, не очень практично:
    <div>1</div>
    <div style="border:1px solid navy;float:left;background:green;">2</div>

    div[style*="float:left"] {
      color: red;
    }
    Ответ написан
    Комментировать