• Всегда ли элементы массива метаданных полей, полученного при помощи рефлексии, располагаются в порядке объявления этих полей?

    shai_hulud
    @shai_hulud
    Стандартом порядок не гарантирован. Но мне встреченные реализации (.NET, Mono, Unity) имеют порядок объявления.

    тут есть хитрый трюк, что бы добиться стабильного порядка
    Ответ написан
    1 комментарий
  • Как из символа '\t' получить табуляцию?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    "1 2\t3".replace("\t", " ").replace("\n", " ");
    Ответ написан
    1 комментарий
  • Как из символа '\t' получить табуляцию?

    @Sumor
    var sIn = "1 2\t3";		
    // Первый способ
    var sOut1 = new String(sIn.Select(ch => {switch(ch) 
    		{
    			case '\t': return ' ';
    			case '\n': return ' ';
    			default: return ch;
    		}
    			 }).ToArray());
    // Второй способ
    var sOut2 = String.Concat(sIn.Select(ch => {switch(ch) 
    		{
    			case '\t': return ' ';
    			case '\n': return ' ';
    			default: return ch;
    		}
    			 }));

    Хоть это и выглядит очень страшно, но вот мои аргументы:
    - при использовании Replace происходит полный просмотр строки и создание новой строки. При увеличении количества заменяемых символов - увеличивается число просмотров строки:
    "1 2\t3".replace("\t", " ").replace("\n", " "); - два просмотра строки и два создания строки
    "1 2\t3".replace("\t", " ").replace("\n", " ").replace("|", " "); - три просмотра строки и три создания строки
    - в моём варианте, вне зависимости от количества заменяемых символов просмотр строки происходит только один раз, и один раз создаётся строка. Для расширения проверяемых символов - нужно просто добавить case.

    Хотите более понятно, пожалуйста:
    var sIn = "1 2\t3";		
    var sb = new StringBuilder(sIn.Length);
    foreach(var ch in sIn)
    {
      switch(ch) 
      {
        case '\t': 
        case '\n': 
          sb.Append(' ');
          break;
        default: 
          sb.Append(ch);
          break;
      }
    };
    var sOut = sb.ToString();
    Ответ написан
    4 комментария
  • Почему??? Не получается отправить сообщение в C#. Что делать?

    GavriKos
    @GavriKos
    Почему?

    Потому что удаленный сервер вас послал нафиг. Вариантов много:
    1) Нет интернетов на компе/лочит фаервол
    2) Неправильные креденшиалы/адрес сервера
    3) На самом сервере не разрешено подключение по SMTP-протоколу.

    Совет - взять любой заведомо рабочий клиент (типа the Bat!), и настроить подключение в нем. Когда будет настроено - проанализировать шаги и отличия.
    Ответ написан
    3 комментария
  • Как осваивать новые технологии и одновременно выживать(работать)?

    Zoominger
    @Zoominger Куратор тега IT-образование
    System Integrator
    но обычно я каждый день занят и под конец дня уже голова не варит.

    Зато не на дядю!

    Лучший подход - "тайм-менеджмент", что в переводе с планктоньего - "управление временем". Распланируйте рабочий день, чётко опишите - вот с 8 до 10 я работаю, в 10 перерыв на 15 минут, потом работаю до 12. в 12 обедаю, в 12:30 курю мануалы до 14 часов по строго определённым темам.

    Главное - придерживаться тактики.
    Ответ написан
    1 комментарий
  • Каков путь становление Junior C#?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    был ли у кого опыт становления младшим разработчиком C#

    Нет, все разработчики C# из мамки выпадают сразу сеньорами.

    без книг

    Это путь в никуда.

    в какой-нибудь крупной компании

    Просто делаешь то, что говорят делать старшие коллеги.
    Ответ написан
    1 комментарий
  • Как найти возможность в любой момент брать шабашки на 1000-2000 рублей?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Если вы действительно работаете над "хорошими проектами за большие деньги", и видимо что-то из себя представляете, то codementor.
    Рейт начинается от $60 в час, $100-120 - это уже хороший уровень, "шабашки" бывают на почаса - час-два, бывает больше.
    Это конечно не 1000-2000р, как вы хотите, а 3000-5000 но я готов принять от вас все излишки сверх 2тр чтобы вы получили именно то что спрашивали.

    Когда мне хотелось как и вам что-нибудь быстренькое и ненапряжное развеяться - я ходил туда, впечатления положительные.
    Ответ написан
    5 комментариев
  • Как найти возможность в любой момент брать шабашки на 1000-2000 рублей?

    TTATPuOT
    @TTATPuOT
    https://code.patriotovsky.ru/
    Вы как-то странно ставите задачу. Не хотите иметь постоянную работу, не хотите иметь высокооплачиваемую работу. Хотите работать 1 день в месяц за 1 000р.
    То, что работы в IT очень много - не значит, что она валяется на каждом шагу.

    Сидите на фриланс биржах, набирайте репутацию. Сейчас у меня есть постоянная работа, но когда хочется отвелчься - иду на фриланс, беру простые проекты на интересные мне темы. Но у меня 2 года работы на этой бирже с кучей отзывов и на это уходит не 1 день. Так как вы общаетесь с новым заказчиком, который ещё "посмотрит других", "завтра скинет предоплату" и "сегодня не успел посмотреть" - всё это затягивается зачастую.
    + работа на бирже это ещё и постоянное общение с заказчиками, очень многие сливаются на диалоге или просто требуют больше пустых диалогов. Я уже молчу о том, что из 10 заявок - хорошо, если возьмёте 1 проект.
    Ответ написан
    2 комментария
  • Как найти возможность в любой момент брать шабашки на 1000-2000 рублей?

    Zoominger
    @Zoominger
    System Integrator
    А мне нужно чтобы была возможность в любой день взять какую-нибудь подработку на 1-2 т.р.

    Влажная мечта любого фрилансера.
    Не думаю, что такое возможно, если, конечно, вы не очень везучий человек.
    Ответ написан
    2 комментария
  • Каковы зарплаты junior frontend разработчика?

    @Stergy
    Как по мне все довольно индивидуально, у меня опыт 1 год и 3 месяца.
    Начинал практически с нуля.
    Мои зарплаты по месяцам если интересно.
    1й-3й месяц работы 10к рублей в месяц - знания нулевые, в основном учил основы
    после 3 месяцев сменил работу, ибо устали меня учить и получалось так себе, решил уйти + это была удаленка, прибавляй все сопутсвтующие сложности
    3й месяц - 1 год работы устроился в офис стажером, зп $200 - $800 (варировалась т.к. была почасовка и зп менялось в зависиомости от отработанных часов)
    После года - новая работа, работаю с июля(уже 3 месяца) Зп в районе $2000.
    Опять же уровень свой оцениваю - как низкий, серьезный буст по зарплате в моей ситуации происходит только при смене работы. В рамках одной работы больше чем на 1,5$ в час за раз не повышали.
    Вот как-то так, отвечая на ваш вопрос, что сейчас что год назад я джун. Но за год я вырос значительно, но весь рост все равно в рамках джуна. Поэтому нужно учитывать какого джуна ищут и что хотят видеть. Вряд ли абсолютному новичку дадут сразу 80к рублей, думаю для этого все же нужно немного повариться за меньшую зп.
    Ответ написан
    3 комментария
  • Как рассчитать среднее значение на замкнутой шкале?

    Сложить векторы.

    Каждый азимут перевести в пару координат (x, y), полагая длину равной 1.
    Ответ написан
  • Как присвоить тег другому тегу?

    cyber_roach
    @cyber_roach
    UX дизайнер INEDIapps
    1) Image в Rectangle вставить нельзя. Можно вставить Image в Border, т.к Rectangle не имеет внутреннего "тега" Content presenter в темплейте.
    - то что Image будет находится внутри Border - абсолютно нормальная практика, элемент Border именно для этого и предназначен
    2) Можно использовать Image Brush и тем самым вообще отказаться от элемента Image, но чтобы понять какой подход использовать, нужно смотреть на задачу которую вы решаете.
    3) Вам явно нужно подучить WPF и XAML вы оперируете неверными понятиями.
    Глядя на ваш вопрос создается уверенное впечатление, что вы вообще не понимаете, что делаете.
    - это не теги, это элементы каждый для совершенно разных целей.
    - визуальное дерево строится по принципу не "мне хочется", а по определенным требованиям под задачу
    - Контрол, темплейт, стиль, свойства - вам нужно понять что это такое и зачем, это базовые понятия в XAML.
    Книга Мэтью Макдональда "WPF: Windows Presentation Foundation в .NET 4.5" ответит на эти и многие другие вопросы
    Ответ написан
    Комментировать
  • Надо ли применять вежливость на проектах Хабра?

    Moskus
    @Moskus
    На Тостере - точно не нужно, это часть правил.
    Интересно, где вы на Хабре это писать собрались, в комментариях?

    Такое правило существует не потому что тут кто-то "против вежливости". Есть несколько причин, почему такие формы вежливости здесь теряют смысл.
    - Они всё равно теряются на фоне основного смысла вопроса, когда читаешь несколько десятков вопросов.
    - Их чтение точно также отнимает время, как чтение бессмысленных вводных фраз вроде "у меня возник вопрос" или заключений вроде "помогите, кто сможет" - умножьте это на десяток-другой, и получите украденное у отвечающих время.
    - Не секрет, что многие авторы вопросов с огромным трудом могут выдать внятное описание проблемы и что они действительно хотят. Если они ещё и над приветствиями думать должны будут, то растратят последние остатки сил.
    - Вежливость, не формальная, а настоящая - не в том, чтобы повторить слова, которые все знают, а в том, чтобы понятно и конкретно описать то, что автор вопроса хочет узнать. Чтобы отвечающим не надо было гадать, переспрашивать, тянуть детали клещами. Также - в том, чтобы на уточняющие вопросы отвечать то, что спрашивают, или "я не знаю", а не копипастить вопрос. И в том, чтобы быть готовым воспринимать ответ, как оно есть в реальности, даже если факт, на который вам указывают, вам неприятен. И не вести себя, как идиот, который ничего не знает, пришёл с проблемой, а получив бескорыстную помощь - фыркает, что будто ему все должны сделать всё за него.

    Вот это всё - вежливость, настоящая. А написать "добрый день" может любой дурак.
    Ответ написан
    2 комментария
  • Надо ли применять вежливость на проектах Хабра?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Правила Тостера п.3.4:
    Вопрос и его описание не должны содержать приветствий и прочих «лирических отступлений».
    Ответ написан
    Комментировать
  • Как научиться читать техническую литературу на английском?

    uselessmindYEAH
    @uselessmindYEAH
    Frontback cocaine developer
    Декомпозируем задачу:
    1. Научиться читать
    2. Выучить английский, хотя бы на уровне pre-intermediate

    1+2 = читать техническую литературу на английском
    Ответ написан
    2 комментария
  • Готов поработать по ставке 0 в час. Где найти такую "работу"?

    uDenX
    @uDenX
    PHP Developer
    Разумеется в реальном проекте опыт будет расти быстрее, но пет проекты так же полезны для изучения технологий на практике.
    Есть проекты с открытым исходным кодов, например на том же github, наставника будет сложно найти (бесплатно это мало кто будет делать), но можно поискать в ВК и на том же github
    Ответ написан
    6 комментариев
  • Готов поработать по ставке 0 в час. Где найти такую "работу"?

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

    Делайте портфолио и идите в компанию не на 0 в час, а на среднюю по рынку для стажера/juniora
    Ответ написан
    20 комментариев
  • Какие есть сервисы контроля удаленных сотрудников?

    Никогда не пользуйтесь этими рабскими системами, ни один вменяемый человек не поставит себе такое на свое устройство.
    Ответ написан
    19 комментариев
  • Надо ли зацикливаться на непонятном или можно идти дальше?

    Moskus
    @Moskus
    Когда картина выглядит так:
    - повторял упражнения по книге, все было просто,
    - начал что-то делать сам - ничего не понятно
    ... это означает, что вам вообще ничего не понятно. Чтобы переписывать код из книжки, понимание не требуется. И от переписывания оно не образуется.
    Чтобы действительно изучать язык, нужно самостоятельно писать что-то свое с самого начала, как только вы будете в состоянии написать пять осмысленных строчек кода.
    Чтобы изучать программирование, нужно не только запомнить синтаксис языка, но и научиться создавать и комбинировать алгоритмы, логику. Это делается путем, опять же, самостоятельного написания простых программ и последующего их усложнения и совершенствования.

    Не делайте глупостей и не перескакивайте с языка на язык - это не поможет. Ваша проблема - не язык, а собственное мышление, которое не адаптировалось к задачам программирования. И на это уходит больше времени, чем на запоминание синтаксиса языка.
    Ответ написан
    3 комментария
  • LINQ, Как разложить список на три максимально равных списка?

    @ToKoMoK Автор вопроса
    Спасибо. всем кому было интересно.
    Решил все сам)

    List<List<double>> L123 = new List<List<double>> { new List<double>(), new List<double>(), new List<double>() };
                new List<double>() { 1, 1, 2, 3, 5, 7, 9 }
                   .OrderByDescending(a => a)
                   .ToList()
                   .ForEach(b =>
                   {
                       L123
                      .ElementAt(L123
                                .Select((e, i) => new { e, i })
                                .Aggregate((f, s) => f.e.Sum() < s.e.Sum() ? f : s)
                                .i)
                      .Add(b);
                   });
    Ответ написан
    Комментировать