• Приглашаем на Moscow Data Science 27 ноября
    0
    .
  • Как за месяц сильно прокачаться в Data Science
    0
    По поводу МГУ и общения, в Москве постоянно митапы проходят, где прошедшие задачки разбирают.

    А что это за встречи, в каком формате они проходят (можно ли прийти со стороны)?
  • Как за месяц сильно прокачаться в Data Science
    +1
    0.88308 — это Private LB. Или вы имеете в виду Public LB?
    См. здесь
    Кстати, там в форуме некоторые участники, занявшие высокие места (в т.ч. и первое) описывают свой подход к решению задачи. Есть и скрипты.
  • Как за месяц сильно прокачаться в Data Science
    0
    Дополнение: я бы еще написал «Top 5% in several competitions» перед или после ссылки, чтобы было заметно при беглом просмотре.
  • Как за месяц сильно прокачаться в Data Science
    0
    Извините, а в чем проблема вставить просто ссылку, именно так, как вы ее вставили в ваше сообщение выше? По-моему, достаточно информативно и при этом максимально лаконично. Кому надо — тот перейдет.
  • Как за месяц сильно прокачаться в Data Science
    0
    Я тоже проходил этот курс, и тоже участвовал в этом соревновании Kaggle.
    Мой результат — 0.863 на Private Board.
    Если позволите, процитирую свой же текст, который я выкладывал на форуме Kaggle. Прошу прощения, что не перевожу обратно на русский (честно — лень).

    On the last day of the competition I tried to build new variable based on startprice, because as I read in forum, there are reasons to modify it somehow. My idea was to compare startprice with an average price for a given item. The main problem is how to calculate this average price.

    My ideas and steps:

    1. For calculating average market prices for items we take into account ONLY non-biddable and sold items because biddable startprice could be much lower than actual sold price of that item. This is very important. If we knew actual sold prices for biddable items (and not only startprice), we could have included them also. And we cannot take unsold prices because they can be higher and don't represent actual market prices. Though we get only 220 (~12%) such items out of 1861 and this is rather small amount. Because of this fact it doesn't contain data for certain triplets (productline, condition, startprice).

    2. Based on the previous table, we calculate 4 tables with average prices, using different aggregating criteria. I would use these tables on the stage 4 (see below).

    3. Merge all tables in one table.

    4. Main logic:

    • 4.1. If we have avg price for certain (condition, productline, storage) triplet for a given item, use this value as average price. This case accounts for 81% of all items in eBayTest dataset.
    • 4.2. Else if we have avg price for certain (condition, productline) pair for a given item, use this value as average price. This case accounts for additional 13% of all items in eBayTest dataset.
    • 4.3. Else use special calculated price based on item productline and condition separately. The trick here is to calculate avg prices for productlines only for condition==«Used» items, because it is the only condition which is present for all 10 productlines in the table with prices (remember that I got only 220 items out of 1861 for this table). And then we can adjust this average price with a coefficient for the item based on its actual condition. It is less precise scenario than two previous ones, but it is more preferable than just avg productline price without condition adjustment. This case accounts for 5% of all items in eBayTest dataset.
    • 4.4. Then calculate norm_price as ratio between start_price and this average price (obtained in previous 4.1-4.3 steps). So norm_price=start_price/average_price.


    5. Use randomForest(sold ~ norm_price + biddable + productline+condition+storage, data=...)

    This algorithm increases AUC on my train data by 0.02-0.03 points in average (i.e. for example, from 0.87 to 0.89) in comparison with RF with startprice instead of norm_price. It is interesting that in private LB it got 0.863 and in public LB it got only 0.833. But I suppose it's not just a fluke, because it proves better quality both on train data and private LB in my case.

    This norm_price is very well interpretable:

    • norm_price>1 means that an item price is higher than average for items of this group (productline, condition, storage)
    • norm_price=1 means that the price is just as average
    • norm_price<1 means that the price is below average (for example, 0.5 means that item if 2 times cheaper that average price for this item)

    As I suppose I could had tried to use some additional function with norm_price to even more increase AUC, but I had no more submission attempts and spare time. Also I suppose that even raw norm_price works quite well at least for random forests.

    I've tried to work with text corpus, but I was confused because importance of terms from description was not very high in comparison to other variables. In addition there were certain technical problems with stemming of the text corpus.

    I noticed that it can be promising to mix log regression and RF in one ensemble. You just check AUC and accuracy of mix model with different weights for LogReg and RF models. I tried (0.0;1.0), (0.1;0.9),....(0.9;0.1), (1.0;0.0). And then you choose weights with the highest AUC/accuracy, for example, 0.9*RF+0.1*LogReg. This is simple idea, though I haven't used it for the final submission and used only pure RF just to make my model simple.


    Script
    eBayTrain = read.csv(«eBayiPadTrain.csv», stringsAsFactors=FALSE)
    eBayTest = read.csv(«eBayiPadTest.csv», stringsAsFactors=FALSE)

    # correct several items productline — it seems that certain productlines corresponds to the same product
    # see Wikipedia for details of Apple products
    eBayTrain[which(eBayTrain$productline==«iPad 5»),«productline»]=«iPad Air»
    eBayTrain[which(eBayTrain$productline==«iPad mini Retina»),«productline»]=«iPad mini 2»

    # For calculating average market prices for items we take into account ONLY non-biddable
    # and sold items because biddable startprice could be much lower than actual sold price
    # of that item. This is very important. And we cannot take unsold prices because they
    # can be higher and doesn't represent actual market prices.
    eBayTrain_new=eBayTrain[eBayTrain$biddable==0 & eBayTrain$sold==1,]

    # Based on the previous table, we calculate 4 tables with averages.
    # Note that ak_productline_used contains average price for productlines only for condition==«Used»
    # — this is because it is the only condition which is present in eBayTrain for every productline
    ak_cps=aggregate(startprice~storage+condition+productline, data=eBayTrain_new, mean, na.rm=TRUE)
    ak_cp=aggregate(startprice~productline+condition, data=eBayTrain_new, mean, na.rm=TRUE)
    ak_condition=aggregate(startprice~condition, data=eBayTrain_new, mean, na.rm=TRUE)
    ak_productline_used=aggregate(startprice~productline, data=eBayTrain_new[eBayTrain_new$condition==«Used»,], mean, na.rm=TRUE)
    colnames(ak_cps)[4]=«avg_price_cps»
    colnames(ak_cp)[3]=«avg_price_cp»
    colnames(ak_productline_used)[2]=«avg_price_p_used»

    # per_used_price is the avg prices ratio between given condition and «Used» condition
    ak_condition$per_used_price=ak_condition$startprice/ak_condition[ak_condition$condition==«Used»,«startprice»]
    ak_condition$startprice=NULL

    eBayTest$sold=0
    eBayAll=rbind(eBayTrain,eBayTest)
    df3 < — merge(eBayAll, ak_cps, by=c(«productline»,«condition»,«storage»), all.x = TRUE)

    df3 < — merge(df3, ak_cp, by=c(«productline»,«condition»), all.x = TRUE)
    df3 < — merge(df3, ak_productline_used, by=c(«productline»), all.x = TRUE)
    df3 < — merge(df3, ak_condition, by=c(«condition»), all.x = TRUE)

    # calc_price = avg price for a given productline (only condition==«Used» included)
    # from table ak_productline_used multiplied by the ratio from ak_condition table between
    # given condition and «Used» condition

    df3$calc_price=df3$avg_price_p*df3$per_used_price

    #nrow(test[is.na(test$avg_price_cps)==FALSE,])/nrow(test)
    #[1] 0.8132832
    #(nrow(test[is.na(test$avg_price_cp)==FALSE,])-nrow(test[is.na(test$avg_price_cps)==FALSE,]))/nrow(test)
    #[1] 0.1340852
    #nrow(test[is.na(test$avg_price_cp)==TRUE,])/nrow(test)
    #[1] 0.05263158

    #main logic:
    # 1. If ak_cps contains data for certain (condition, productline, storage) triplet
    # for a given item, use this value as average price.
    # 2. Else if ak_cp contains data for certain (condition, productline) pair
    # for a given item, use this value as average price.
    # 3. Else use special calculated price baced on item productline and condition separately.
    # It is the less precise scenario than two previous ones, but it is more preferable than
    # just avg productline price without condition adjustment.
    # 4. Then calculate norm_price as ratio between start_price and this average price
    # (obtained from previous 1-3 steps)

    df3$avg_price_cp1=ifelse(is.na(df3$avg_price_cps)==TRUE,df3$avg_price_cp,df3$avg_price_cps)
    df3$avg_price_cp2=ifelse(is.na(df3$avg_price_cp1)==TRUE,df3$calc_price,df3$avg_price_cp1)
    df3$norm_price=(df3$startprice/df3$avg_price_cp2)

    df3$sold=as.factor(df3$sold)
    df3$biddable=as.factor(df3$biddable)
    df3$productline=as.factor(df3$productline)
    df3$storage=as.factor(df3$storage)
    df3$condition=as.factor(df3$condition)
    df3$carrier=as.factor(df3$carrier)
    df3$cellular=as.factor(df3$cellular)
    df3$color=as.factor(df3$color)

    df3=df3[order(df3$UniqueID),]

    train=head(df3, nrow(eBayTrain))
    test=tail(df3, nrow(eBayTest))
    test$sold=NULL

    library(caTools)
    set.seed(3000)
    spl = sample.split(train$sold, SplitRatio = 0.7)
    train0 = subset(train, spl==TRUE)
    test0 = subset(train, spl==FALSE)

    # we can use norm_price directly or try to calculate some formula, for example
    # log(norm_price+1). But at least for random forest just norm_price is enough as I suppose

    #LogMod2=glm(sold ~ norm_price + biddable + productline+condition,data=train0,family=binomial)
    #PredLog2=predict(LogMod2,newdata = test0,type=«response»)

    library(randomForest)
    RFMod2=randomForest(sold ~ norm_price + biddable + productline+condition+storage,data=train0)
    PredRF2=predict(RFMod2,newdata = test0,type=«prob»)
    #table(test0$sold,PredRF2[,2]>=0.5)
    #library(ROCR)
    #pred=prediction(PredRF2[,2],test0$sold)
    #performance(pred,«auc»)@y.values

    #MySubmission = data.frame(UniqueID = eBayTest$UniqueID, Probability1 = PredRF2[,2])
    #write.csv(MySubmission, «SubmissionRF_norm_price4.csv», row.names=FALSE)

  • Вы не Data Scientist
    0
    А почему делается упор на термине data scientist?
    Что, data analyst (аналитик по данным) не актуально?
    Согласен, называть себя ученым, не имея соответствующего опыта (научно-исследовательской деятельности, публикации в журналах и т.п.) неправильно, но можно спуститься и на ступеньку ниже. В чем проблема? Или такой ниши на рынке труда нет?

    И здесь есть некоторая путаница, как мне кажется: человек может указать в своих навыках и интересах data science, но при этом не позиционировать себя как ученого, а только как аналитика. Разница в том, что он не разрабатывает качественно новые алгоритмы, а лишь применяет существующие (или их комбинации).

    Теория «век живи — век учись» и жажда постоянного самосовершенствования — это просто самообман.
    — по-моему, не очень удачная мысль автора. Если он хотел сказать, что курсы Coursera достаточно поверхностные — это одно. А то, что самообразование ведет к самообману — это несколько странное утверждение!
  • Через час ты проводишь вебинар: Google Hangouts on Air
    0
    Спасибо за разъяснения, обязательно попробую эту систему. Сначала хотел попробовать Ustream, теперь начну с этой.
  • Через час ты проводишь вебинар: Google Hangouts on Air
    0
    Понял спасибо!
    А ведущие могут переключаться?
    Скажем, есть 9 маленьких окошек и 1 большое, в котором тот ведущий, который вещает в данный момент. Потом текущий ведущий меняется на другого. Примерно так? Или же в главном окне всегда находится модератор? Или иначе, т.е. все 10 окон абсолютно равнозначны, одинакового размера?
  • Через час ты проводишь вебинар: Google Hangouts on Air
    0
    Скажите, правильно ли я понимаю, что могут до 10 человек находиться в видеочате, и дополнительно гораздо больше их видеть и слышать их через трансляцию на Youtube? У меня вопрос: указанная выше задержка (10-30 сек) есть только для слушателей? Присутствует ли эта задержка для участников видеочата?
    Может ли вообще быть одновременно и видеочат между этими 10 людьми и трансляция этого чата на более широкую аудиторию? Или либо чат, либо трансляция, но трансляция только одного участника? В последнем случае, возможно ли быстрое переключение между ведущими? Будет ли задержка (10-30 сек) в этом случае?
  • Ответ интернет-сообщества «Леваде»: только 4% опрошенных считают необходимым ограничения в Сети
    +4
    Мне кажется «Хабрахабр» вполне подходит для этой роли, как крупнейшее в Рунете сообщество IT-специалистов и представителей смежных специальностей (программисты, дизайнеры, аналитики, журналисты, копирайтеры, представители операторов связи, регистраторов, хостинг-компаний и других специальностей интернет-сферы).
    «Хабрахабр» является также одним из крупнейших сообществ всего Рунета при средней ежедневной посещаемости порядка 1 млн человек.


    С чего вы взяли, что на Хабре, как и в Роскомсвободе и в H&P и ComputerBild выборка будет репрезентативной?
    Не будет.
    Роскомсвобода — по-моему, очевидно, что выборка сильно смещенная, это примерно как среди сидящих или отсидевших устраивать опрос, как они относятся к ужесточению уголовного наказания.
    ComputerBild и Хабра — ресурсы для интеллектуалов, причем у них возможно сильное смещение в сторону либеральных ценностей по отношению ко всему обществу (даже если взять только тех, кто имеет доступ в интернет), особенно в части, связанной со свободой доступа к информации.
    Еще, возможно, выборка в опросе Роскомсвободы слишком смещена в сторону более молодых людей.

    Резюме:
    IT специалисты и представители смежных специальностей — не репрезентативная выборка для определения мнения всего общества по каким-то вопросам, связанным, например, с ограничением свободы (в т.ч. доступа к информации).
    Как вариант — можно такой же опрос прогнать на каких-либо других крупных ресурсах, но не IT направленности (ну я не знаю, форум рыбаков, автолюбителей, что-нибудь в таком духе), чтобы увидеть (или не увидеть), что данные, полученные в разных группах, могут существенно отличаться.
  • Психология роботов и умные компьютеры: как это работает и где этому научиться. Лекция Максима Мусина в Яндексе
    +3
    Очень понравилась лекция!
    Говорит на доступном языке, многие концепции понял, про которые раньше даже не пытался узнать, т.к. думал, что это очень сложно.
    А то, как человек передвигается — не так важно, когда слушаешь такую лекцию, обычно на такие вещи не обращаешь внимания (по крайней мере, на сознательном уровне), заинтересованный слушатель полностью поглощен темой.

  • Факты о космосе, в которые трудно поверить
    0
    Хорошо, тогда дополнительный вопрос.
    Пусть тело получает от Солнца энергию мощностью 1 Вт и одновременно излучает энергию в каком-то виде тоже 1 Вт.
    Что, если частота и другие характеристики излучения, которое тело излучает вовне, совпадает с теми зарактеристиками, которое тело получает?
    Как мы тогда снаружи узнаем, отражает ли оно это излучение или же не отражает, а поглощает, внутри как-то перерабатывает и испускает в том же спектре, что и получило? Или для нас такой вариант эксивалентен отражению?
    То есть, мой вопрос нужен для того, чтобы уточнить термин «отражать», понимаете?
  • Факты о космосе, в которые трудно поверить
    0
    У меня такой вопрос (в т.ч. к автору поста):
    Температура в космосе, на орбите Земли равна +4°С
    Если быть точным, то не на орбите Земли, а на расстоянии от Солнца равному удаленности орбиты Земли. И для абсолютно черного тела, т.е. такого, которое полностью поглотит солнечные лучи, ничего не отразив обратно.

    Это цитата из поста автора.

    Пояните пожалуйста, как может температура стабилизироваться на уровне +4 градуса, при этом тело будет продолжать поглощать солнечные лучи и не будет отдавать вовне энергию ни в каком виде?
    Куда будет преобразовываться полученная в виде излучения от Солнца энергия после достижения температуры +4 градуса?
    И вообще, как можно иметь какую-то температуру, отличную от абсолютного нуля, и при этом не излучать ничего («ничего не отразив обратно»)?

    P.S. Я не физик, иначе бы такого вопроса, возможно не задал, поэтому, если можно, поясните на доступном языке. Просто стало любопытно.
  • Роскомнадзор запретил крупнейший украинский сайт для программистов dou.ua
    +1
    Товарищи!
    Я сегодня общался с юристом, который мне подтвердил, что в указанном пользователем mindego решении суда по этому сайту содержится формальное нарушение, на основании которого его можно было (бы) отменить.
    Нарушение состоит в том, что прокурор, видимо, по ошибке включил в свое заявление абзац про взрывчатые вещества, т.к. это основание одно из самых частых. А судья, видимо, случайно пропустил этот абзац и включил его в свое решение, хотя решение должно было содержать ссылку только на нарушение авторских прав, контрафакт и т.п.

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

    — То есть они вставили как будто кусок (абзац) из какого-то шаблонного заявления, а суд тоже не обратил на это внимания?

    — естественно… прокуроры по пять раз на дню подают заявления… и самое распространенное это как раз экстремизм и изготовление взрывчатых веществ


    См. также мой комментарий выше.

    Также не совсем понятно из решения, была ли другая сторона (представитель сайта dou.ua) должным образом уведомлена о проведении данного судебного заседания. Если нет — то это тоже, возможно, повод для отмены данного решения.
  • Роскомнадзор запретил крупнейший украинский сайт для программистов dou.ua
    +3
    Решение со стороны выглядит каким-то странным. Поясню ниже, что я имею в виду:
    из прочтения текста этого решения создается впечатление, что на том сайте якобы найдены два разных нарушения:
    1. Содержится информация о порядке и способах изготовления взрывчатых веществ.
    2. Содержится информация о том как избежать ответственности за использование контрафактных программ для ЭВМ в том числе в целях извлечения дохода.

    Странно то, что по первому пункту (взрывчатые вещества) в тексте решения есть только два упоминания: первый раз — что прокурор попросил признать эту информацию запрещенной, а второй раз — что судья удовлетворил его решение. Все! Больше нигде в тексте этого документа нет ни слова об этом, ни данные экспертиз, ни ссылки на законы и другие НПА, которые нарушены и т.п.
    Это вдвойне странно, т.к. по второму пункту (нарушение авторских прав) написано очень много текста, включая разные ссылки на законы и НПА (нормативно-правовые акты).

    То есть, со стороны данное решение выглядит примерно так:
    1. В описательной части прокурор обратился в суд с заявлением о признании информации о порядке и способах изготовления взрывчатых веществ, содержащуюся в сети Интернет на сайте <данные изъяты>, запрещенной к распространению на территории Российской Федерации.
    2. Суд в мотивировочной части подробно говорит про нарушения в сфере защиты интеллектуальной собственности. И ни единого (!) слова про взрывчатые вещества. Вообще никакого упоминания.
    3. В резолютивной же части суд удовлетворяет заявление прокурора (см. п.1) и признает информацию о порядке и способах изготовления взрывчатых веществ, содержащуюся в сети Интернет на сайте <данные изъяты>, запрещенной к распространению на территории Российской Федерации. Про интеллектуальную собственность конкретно здесь не сказано.

    То есть, то, о чем говорится в мотивировочной части не соответствует тому (как мне кажется), о чем говорится в резолютивной части.

    Кто разбирается в праве, не прокомментируете это?
  • Как я покупал 3D-принтер
    0
    Спасибо, очень познавательная статья!
    У меня есть предположение, зачем нужно было определить код ТН ВЭД (кроме банальной статистики).
    Каждый товар, в зависимости от его типа, должен иметь определенный набор сертификатов и удовлетворять каким-то стандартам.
    Например, гигиенический сертификат для игрушек или для сотовых телефонов.
    И, чтобы понять, какие сертификаты должны быть предоставлены в комплекте документов (может их вообще не нужно), нужно определить тип этого товара.

    Кстати, что делать, если бы потребовалось проходить сертификацию при растомаживании товара, сколько бы это могло стоить?
    Или здесь есть какие-то более простые пути, вроде признания каких-то международных сертификатов?
  • Нескучные интегралы
    +1
    Наверное (говорю так, потому что не проследил всю цепочку рассуждений).
    Кстати, если бы программа работала бы не с символьными вычислениями, а и приближенными численными расчетами, то разницу между первыми 7-ю интегралами и восьмым можно было бы вообще списать на ошибку округления. Она (разница) составляет менее 10^(-10) в относительном выражении.
  • Нескучные интегралы
    0
    Это все, конечно, невероятно круто и интересно, но ведь для данной конкретной цепочки, если стоит цель придумать формулу, чтобы восьмой член отличался от всех семи предыдущих, можно просто взять банальную формулу:
    a(n)=Pi/2+[n/8]*M, где [x] — целая часть числа x, а M — любое отличное от 0 число (например, 1).

    То есть троллинг можно было бы устроить и более доступными средствами.
    А так — да, решение для ценителей.
  • Как я завалил собеседование в Twitter
    +1
    Решение в двумерном случае было бы интересно увидеть.
    Но здесь еще (как мне кажется) нужно уточнить некоторые детали, например, проливается ли вода по диагонали.
  • Как я завалил собеседование в Twitter
    0
    А для двумерного массива разве уже решали здесь? Выше вроде только одномерный массив обсуждается.
  • Как я завалил собеседование в Twitter
    0
    Не забывайте о том, что это было телефонное интервью и решение фактически нужно было дать за достаточно короткое время.
  • Как я завалил собеседование в Twitter
    +1
    Ваше решение на самом деле классное, т.к. более компактное по сравнению с кодом, который дан в конце заметки.
    Простите, что придираюсь по мелочам, но зачем вы используете такую конструкцию:
    for(int a=0,b=N-1;a<b;) {...}
    

    вместо
    int a=0,b=N-1;
    while(a<b) {...}
    

    Она же фактически не сильно добавляет компактности, зато код становится чуть менее наглядным, т.к. используется конструкция for без инкремента, то есть фактически там, где должен был использоваться более канонический (для этого случая) while. Нет?
  • Американский стартап разработал нейросеть, распознающую популярные CAPTCHA с точностью более 90%
    0
    А откуда первая картинка («28»), какой источник?
    Микрофильм или фото что ли?
    На бумажный носитель не похоже (как мне кажется).
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Вот здесь
    интересное решение без косинуса, посмотрите.
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Ну или в ряд раскладывать, но это ничем не лучше, чем разложить в ряд синус и проинтегрировать его. Или косинус считать через известный уже ряд

    В том-то и проблема, что если разложить в ряд синус, а потом проинтегрировать, то получится ряд для минус косинуса, я об этом писал. Как вы будете еще считать без применения косинуса? Можете показать решение?

    Решение с экспонентами нельзя использовать, на мой взгляд. Как подсчитать exp(i*Pi)?

    Здесь вопрос, что именно имел в виду интервьюер. Может он хотел, чтобы в самом решении не использовалось написание cos нигде? Тогда такой вариант пройдет, т.к. мы полагаем exp(i*Pi)=-1 известным фактом и не проверяем, как он был получен.

    P.S. А как бы вы сами стали решать это задачу?
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    В принципе, верно, можно было бы ответить, что вычислить предложенный интеграл от синуса совсем без применения косинуса не удастся, т.к. сам синус — это фактически сдвинутый на Pi/2 косинус.
    Я об этом сразу даже не подумал, хотя это лежало на поверхности.
    Но если верный ответ предусматривал именно это решение, то это сродни задачке «А и Б сидели на трубе».
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Мое мнение:
    Бумага нужна не только для промежуточных вычислений (хотя это самое важное, безусловно).
    Бумага с ручкой также позволяет вспомнить то, что вы давно помнили, но забыли.
    Когда вы нарисуете что-то (даже график того же синуса, круг, на котором изображен угол, радиус, Pi, или даже само изображение SIN), может, извлечение информации, относящейся к этой области данных из долговременной памяти происходит быстрее и легче, чем если вы только подумаете об этом.
    Так как, возможно, какие-то ассоциации начнут проявлять свою активность, если на вход подан зрительный образ.

    P.S. не претендую на научность.
  • Рабочие будни программиста: ожидания и реальность
    +1
    В этом исследовании представлены данные опросов студентов и программистов, но было бы интересно увидеть третье исследование: а как построен рабочий день в реальности (а не по мнению программиста).

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

    Я не утверждаю, что получатся совсем другие цифры, но некоторые любопытные отличия могли бы быть выявлены.
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    — Назовите число, в два раза большее минус единицы

    Прикольная задачка!
    Решение, на мой взгляд, выглядит следующим образом:
    пусть А — искомое число, тогда должно одновременно выполняться два условия:
    1) А>-1 ( т.к. А больше -1)
    2) А=(-1)*2 (т.к. А в точности равно удвоенному значению -1)

    Из этих двух условий вытекает противоречие: -2>-1
    Отсюда я бы лично сделал вывод, что отношения вида «X в N раз больше Y» для случая, если любое из чисел X или Y отрицательно, а N положительно, некорректны, во всяком случае, если мы работаем в обычной арифметике.
    Проблема здесь в том, что ваше предложение содержит сразу два различных условия, которые в случае отрицательных чисел являются взаимно противоречивыми.
    С другой стороны, для положительных чисел эти два условия они являются избыточными (можно оставить только условие A=2*B).

    Чтобы не было противоречия, я бы порекомендовал говорить просто «назовите число, которое равно удвоенному значению -1»
  • История одного собеседования, или как в компании X кандидата «вешали»
    +2
    (слегка придираюсь):
    по-моему, вы переменные перепутали в первой замене (на результате при этом это не сказалось):
    u=sin(x) => du/dx=cos(x), а не 1/sqrt(1-x^2), как у вас в первой строчке
    на самом деле, наверное, должно быть так:
    du/dx=cos(x)=>dx=du/cos(x)=du/sqrt(1-sin^2(x))=du/sqrt(1-u^2)
  • История одного собеседования, или как в компании X кандидата «вешали»
    +1
    Тонкий вопрос связан с тем, что вы фактически все равно используете в промежуточных вычислениях (в выводе конечной формулы) косинус, когда вы говорите «я бы представил косинус как...»
    Вы, конечно, можете его не упоминать и пропустить этот элемент в цепочке, но я не уверен, что про результат можно сказать, что он получен вообще без использования косинуса.
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Что вообще такое отрезок?
    Правильно ли определить отрезок так, что это множество точек с двумя выделенными точками А и B, такими, что для любой другой точки C из этого множества неравенство треугольника обращается в строгое равенство, то есть:
    d(A,B)=d(A,C)+d(C,B)
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Любой отрезок в L2 остаётся подмножеством отрезка и в «многоугольных» метриках.
    Да, вот примерно это я и хотел узнать, т.к. дальнейшие рассуждения примерно понятны.
    Ведь только в определенных случаях (а именно, в случаях отрезка) мы можем вычислить длину кривой (в нашем случае — отрезка) как расстояние между его крайними точками. Так?
    Мне просто было интересно, не может ли произойти такого, что при переходе из одной метрики в другую отрезки в первой метрике перестают быть отрезками во второй метрике?

    Кстати, что такое «отрезок» или «прямая» в произвольном метрическом пр-ве? Это же понятие не всегда будет определено? В отличие, скажем, от шара или сферы?
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Можно уточняющий вопрос?
    Как вы в таком пространстве считаете длину окружности (т.е. фактически шестиугольника)?
    То есть как нам получить, что длина одной стороны этого шестиугольного круга равна R?

    Мне понятно, как посчитать расстояние от одной точки до любой другой, распространив вашу формулу следующим образом:
    dist((x1,y1),(x2,y2))=max(|x1-x2|+|y1-y2|/sqrt(3),|y1-y2|*2/sqrt(3))
    Но как посчитать длину кривой в этой метрике?
    Да, это прямые в метрике R2 и там все было бы понятно, но у нас-то другая метрика.
  • История одного собеседования, или как в компании X кандидата «вешали»
    +3
    Хорошее решение. Вроде ошибка в знаке в нижней строчке, но это несущественно (придирка).
    Только не все вспомнят (или успеют вывести) производную арксинуса на собеседовании, особенно, без бумажки.
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    см. личку
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Главное, не перейти ту грань, за которой уже начинается шарлатанство и мошенничество.
    Вот наглядный пример из жизни (№1 и №2), как ходят и показывают «плохое» качество воды, чтобы убедить людей устанавливать системы очистки воды.
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    Здравствуйте!
    Простите, не совсем понял ваше решение про интеграл без косинуса.
    Можете его расписать чуть подробнее (т.е. шаг от выражения dl*sin(a) до уже интегральной формулы)?

    Идею я вашу понял, но у меня получается иначе:
    Чтобы вычислить длину диаметра d, параметризуем его через угол a:
    x(a)=cos(a), y(a)=0; a принимает значения от 0 до Pi,
    тогда d=интеграл от 0 до Pi sqrt(((cos'(a))^2)) da=интеграл от 0 до Pi sqrt(((sin(a))^2) da = интеграл от 0 до Pi sin(a) da
    использовал формулу для вычисления длины параметризованной кривой отсюда

    Отсюда 2=интеграл от 0 до Pi sin(a) da
    Но! Здесь проблема в том, что cos фигурирует в промежуточных вычислениях.
  • История одного собеседования, или как в компании X кандидата «вешали»
    0
    По п.п. 1 и 2:
    Где вы у меня увидели «черный список работодателей»?
    Покажите точную цитату, пожалуйста.
    Я нигде не говорил, что это плохая компания.
    Более того, я так не думаю ни до, ни после собеседования.
    Я не исключаю для себя возможности в будущем рассмотреть какие-то другие вакансии этой компании.

    так не будем же опускаться до уровня А, публично комментируя чье-то поведение

    Вас никто не просит комментировать чье-то поведение, если вам это неприятно.
    Комментируйте содержание собеседования (задачки), если вам интересно.
    У меня больше половины топика посвящены именно задачкам и ходу их решения, а не описанию чьего-либо поведения.

    Выше было показано, насколько глубокий анализ может быть сделан.
    И несколько людей его сделали, за что им большое спасибо!
    Если вам есть что сказать — скажите.
    За ссылку выше — спасибо.