Авторские записи

21
Дек

simple test

   Автор: Aen Sidhe    в программирование

Мелкий тест.

Ниже длинный исходник на C#. Определить — WTF он или нет и предположить, зачем он нужен. Завтра выложу полный исходник с объяснениями.

[cc lang="csharp"]
[Flags]
public enum Month
{
January = 0×1,
February = 0×2,
March = 0×4,
April = 0×8,
May = 0×10,
Juny = 0×20,
July = 0×40,
August = 0×80,
September = 0×100,
October = 0×200,
November = 0×400,
December = 0×800,
}

[Flags]
public enum FlaggingDayOfWeek
{
Monday = 0×1,
Tuesday = 0×2,
Wednesday = 0×4,
Thursday = 0×8,
Friday = 0×10,
Saturday = 0×20,
Sunday = 0×40,
}

[Flags]
public enum Days
{
d1 = 0×1,
d2 = 0×2,
d3 = 0×4,
d4 = 0×8,
d5 = 0×10,
d6 = 0×20,
d7 = 0×40,
d8 = 0×80,
d9 = 0×100,
d10 = 0×200,
d11 = 0×400,
d12 = 0×800,
d13 = 0×1000,
d14 = 0×2000,
d15 = 0×4000,
d16 = 0×8000,
d17 = 0×10000,
d18 = 0×20000,
d19 = 0×40000,
d20 = 0×80000,
d21 = 0×100000,
d22 = 0×200000,
d23 = 0×400000,
d24 = 0×800000,
d25 = 0×1000000,
d26 = 0×2000000,
d27 = 0×4000000,
d28 = 0×8000000,
d29 = 0×10000000,
d30 = 0×20000000,
d31 = 0×40000000,
}

public class Schedule
{
#region Cache

public const FlaggingDayOfWeek AllDaysOfWeek = FlaggingDayOfWeek.Monday | FlaggingDayOfWeek.Tuesday |
FlaggingDayOfWeek.Wednesday | FlaggingDayOfWeek.Thursday | FlaggingDayOfWeek.Friday |
FlaggingDayOfWeek.Saturday | FlaggingDayOfWeek.Sunday;

public const Month AllMonthes =
Month.January | Month.February | Month.March |
Month.April | Month.May | Month.Juny |
Month.July | Month.August | Month.September |
Month.October | Month.November | Month.December;

public const Days AllDays =
Days.d1 | Days.d2 | Days.d3 | Days.d4 | Days.d5 | Days.d6 | Days.d7 |
Days.d8 | Days.d9 | Days.d10 | Days.d11 | Days.d12 | Days.d13 | Days.d14 |
Days.d15 | Days.d16 | Days.d17 | Days.d18 | Days.d19 | Days.d20 | Days.d21 |
Days.d22 | Days.d23 | Days.d24 | Days.d25 | Days.d26 | Days.d27 | Days.d28 |
Days.d29 | Days.d30 | Days.d31;

private static readonly Dictionary m_DaysOfWeekCache = new Dictionary
{
{ DayOfWeek.Monday, FlaggingDayOfWeek.Monday },
{ DayOfWeek.Tuesday, FlaggingDayOfWeek.Tuesday },
{ DayOfWeek.Wednesday, FlaggingDayOfWeek.Wednesday },
{ DayOfWeek.Thursday, FlaggingDayOfWeek.Thursday },
{ DayOfWeek.Friday, FlaggingDayOfWeek.Friday },
{ DayOfWeek.Saturday, FlaggingDayOfWeek.Saturday },
{ DayOfWeek.Sunday, FlaggingDayOfWeek.Sunday },
};

private static readonly Dictionary m_MonthesCache = new Dictionary
{
{ 1, Month.January },
{ 2, Month.February },
{ 3, Month.March },
{ 4, Month.April },
{ 5, Month.May },
{ 6, Month.Juny },
{ 7, Month.July },
{ 8, Month.August },
{ 9, Month.September },
{ 10, Month.October },
{ 11, Month.November },
{ 12, Month.December },
};

private static readonly Dictionary m_DaysCache = new Dictionary
{
{ 1, Days.d1 },
{ 2, Days.d2 },
{ 3, Days.d3 },
{ 4, Days.d4 },
{ 5, Days.d5 },
{ 6, Days.d6 },
{ 7, Days.d7 },
{ 8, Days.d8 },
{ 9, Days.d9 },
{ 10, Days.d10 },
{ 11, Days.d11 },
{ 12, Days.d12 },
{ 13, Days.d13 },
{ 14, Days.d14 },
{ 15, Days.d15 },
{ 16, Days.d16 },
{ 17, Days.d17 },
{ 18, Days.d18 },
{ 19, Days.d19 },
{ 20, Days.d20 },
{ 21, Days.d21 },
{ 22, Days.d22 },
{ 23, Days.d23 },
{ 24, Days.d24 },
{ 25, Days.d25 },
{ 26, Days.d26 },
{ 27, Days.d27 },
{ 28, Days.d28 },
{ 29, Days.d29 },
{ 30, Days.d30 },
{ 31, Days.d31 },
};

#endregion

public FlaggingDayOfWeek EnabledDaysOfWeek { get; set; }

public Month EnabledMonthes { get; set; }

public Days EnabledDays { get; set; }

[XmlIgnore]
public TimeSpan StartTime { get; set; }

[XmlIgnore]
public TimeSpan Interval { get; set; }

public int? Count { get; set; }

[XmlElement(DataType = "duration", ElementName = "StartTime")]
public string FakeStartTime
{
get { return StartTime.ToString(); }
set { StartTime = TimeSpan.Parse(value); }
}

[XmlElement(DataType = "duration", ElementName = "Interval")]
public string FakeInterval
{
get { return Interval.ToString(); }
set { Interval = TimeSpan.Parse(value); }
}
}
[/cc]

19
Дек

Сыграл в города

   Автор: Aen Sidhe    в дневник

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

18
Дек

hate

   Автор: Aen Sidhe    в дневник

Есть одна контора. Заказал там вчера всякое в подарок близким в Липецке. С подарком этим связана отдельная история, а именно — я искал что-то подобное пару месяцев. Но нигде найти не мог. И вот тут — опаньке, удача, [info]tantriel подкинула ссылку, где было что-то подобное. И оно правда там было.

Привезти должны были сегодня. В результате, в пять вечера не было ничего. Позвонил, пять минут ждал, пока ответят. В результате ответили. Не привезли мне сегодня ничего ровно потому, что до меня, видите ли, не дозвонились. Привезут в понедельник, когда я уже приеду из Липецка.

Единственный звонок, на который я не ответил, был в 12:30 с какого-то левого номера. Звонящего слышно не было, я ему об этом сообщил и попросил перезвонить. Никто потом не перезванивал.

В общем, бардак и клоуны.

18
Дек

linux

   Автор: Aen Sidhe    в дневник

Большинство современных «достижений» Linux — это решение сугубо технических проблем, порожденных самим фактом существования Linux.

18
Дек

habrahabr

   Автор: Aen Sidhe    в дневник

Хабр сегодня доставил. Итак, во-первых, иранские хацкеры хацкнули твиттер. Пруфпик.

А во-вторых, иракские повстанцы в живую смотрели видео с американских беспилотников, которые летали вокруг. Софт для перехвата и дешифровки стоил 26 баксов. Пруфлинк.

16
Дек

perfomance

   Автор: Aen Sidhe    в программирование

Будете смеяться, но после того, как я оптимизировал создание карты с 10 секунд до 23 миллисекунд, мы упёрлись в производительность стандартных коллекций.

Раньше, когда небо было голубое и трава зелёная, монстров у нас было чётко заданное количество. Поэтому был массив. Сейчас, количество мобов меняется, поэтому, недолго думая, был всунут List<T>. Всё бы ничего, но сервер тут же стал жрать в 4 раза больше проца. Замеры показали, что почти вся нагрузка — пересчёт монстров, из которого половину времени мы сидим в геттера List<T>.Item.

Думаем, что делать :)

13
Дек

Stollman

   Автор: Aen Sidhe    в дневник

Столлман такой Столлман, сдаётся мне, зарплату он получает в Редмонде.

Филипп Ван Хуф один из разработчиков проекта GNOME, предложил выставить на голосование среди участников проекта вопрос о выходе GNOME из состава GNU Project. Главный мотив — попытки Ричарда Столлмана навязать проекту свое видение развития, при котором GNOME должен как минимум подчиняться жестким требованиям Фонда свободного ПО и пропагандировать недопустимость проприетарного ПО, как явления. В частности, были отмечены попытки введения цензуры для публикаций, отражаемых в Planet GNOME.

Ну, действительно, open source софтина не должна показывать новости о софте с закрытым кодом, всё логично, что.

13
Дек

barmen

   Автор: Aen Sidhe    в дневник

Йоханнсебург, аэропорт, бар. Человек улетает из ЮАР обратно в Россию, на руках последние 11 рэндов (местная валюта). Диалог:

- Hi! What can I have for eleven rands?
- Pardon?
- I’m leaving South Africa in few hours. I’ve got the very last eleven rands and I want to spend them. Can I have some beer for eleven rands?
- No. I’m sorry but it’s not enough.
- OK. May I have a glass of “Castle”?
- Sure!
- How much?
- Eleven rands.

Castle — местное пиво.

10
Дек

system was hacked

   Автор: Aen Sidhe    в дневник

Американцы — красавцы.

Кратко: американский монетный двор, в целях экономии на производстве денег, активно выпускает монеты по $1. И открыл акцию — закажи сколько хочешь монеток по номиналу и их тебе бесплатно доставят на дом.

Люди с кредитками, у которых за покупки начисляют бонусные мили на авиаполёты быстро просекли ситуацию и воспользовались ей. Один человек, например, получил таким образом 2 миллиона бонусных миль и пожизненный платиновый бонус у American Airlines.

Халяву уже прикрыли.

10
Дек

habrahabr

   Автор: Aen Sidhe    в дневник

Ни у кого, случаем, нет инвайта на хабр? :) Меняю на инвайт в гугловейв/колу/пиво.

Страница 20 из 39« Первая...10...1819202122...30...Последняя »