Задать вопрос
  • Сравнение процессоров?

    VoidVolker
    @VoidVolker Куратор тега Железо
    Dark side eye. А у нас печеньки! А у вас?
    cpuboss.com - тут можно сравнить процессоры по характеристикам и тестам производительности. Само собой надо учитывать, что нагрузка - она разная бывает и надо сравнивать на реально железе.
    Ответ написан
    1 комментарий
  • Как получить рабочее выражение?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    ([1,2,3]).draw()
    То же самое, что и:
    [1,2,3].draw()

    У круглых скобок самих по себе (т.е. без имени функции) логика точно такая же как в математике - задание приоритета при групповых операциях.

    Чтобы оно что-то делало, то в прототип массива добавляем нужную функцию:
    Array.prototype.draw = function(){ console.log(this) };

    Но так не рекомендуется делать: более правильно сделать свой конструктор, у которого в прототипе находится массив.
    Ответ написан
    Комментировать
  • Как запустить установленный на диск рядом с Windows Linux из Windows?

    VoidVolker
    @VoidVolker Куратор тега Windows
    Dark side eye. А у нас печеньки! А у вас?
    Только через виртацлизацию - тогда да, под Windows оно запустится. Лет десять назад был какой-то софт, делающий что-то подобное: позволял использовать один ПК двум пользователям одновременно, но там вроде была поддержка только Windows, ну и со всякими ограничениями тоже - деталей уже и не помню. Так что самый простой вариант - это именно виртуализация.
    Ответ написан
    Комментировать
  • В каком порядке изучать математические дисциплины?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Стандартный школьный курс математики и физики, затем стандартный ВУЗовский курс математики и физики - это уже по желанию. В типичных случаях школьного курса будет достаточно. А вот например программирование 3D графики уже требует более глубокого понимания математики и физики - да-да, понимание физики и умение решать физические задачи тоже необходимо (например банальный тетрис - там физика есть, хоть и простая, но есть). Тригонометрия, матрицы, кватернионы, графы, теория вероятности - это все есть и используется в 3D графике. А в играх еще и теории ИИ, поиска путей, а в некоторых случаях и многомерные пространства и не-евклидова геометрия. Ну и остальные разделы математики - уже по ситуации. Например в исследовательских приборах или МК тоже часто встречается специфическая математика и физика, которые надо рассчитывать.
    Ответ написан
    6 комментариев
  • Какая доля фронтенд-разработчиков среди всех программистов?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Как вариант можно сделать просто опрос на каком-нибудь популярном ресурсе (да вот хоть на хабре), который даст некоторое приближение. И именно некоторое, т.к. зачастую, многие программисты знают HTML, JS и CSS и легко могут сверстать что-то, а еще есть фулл-стек программисты.
    Ответ написан
    Комментировать
  • Как лучше обрабатывать и записывать большой объем данных?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Например так:

    var myDataObject = {}
        , dataExample1 = { sip:"1.1.1.1:11233", title:"block", value:"val 1"}
        , dataExample2 = { sip:"1.1.1.1:11233", title:"block", value:"val 2"}
        , dataExample3 = { sip:"1.1.1.1:11233", title:"view", value:"val 3"}
    ;
    
    addMyData = function(data){
        var exData = myDataObject[data.sip]
            , exTitle 
        ;
    
        if( !exData ){
            exData = myDataObject[data.sip] = { title: {} }
        }
    
        exTitle = exData.title[data.title];
    
        if( !exTitle ){
            exTitle = exData.title[data.title] = []
        }
    
        exTitle.push( data.value );
    }
    
    addMyData(dataExample1);
    addMyData(dataExample2);
    addMyData(dataExample3);
    
    console.log(myDataObject);
    console.info(JSON.stringify(myDataObject, null, 4));


    Если значение может быть только одно и старые значения не нужны - то и массив не нужен, а сразу записывать его в tittle.
    Ответ написан
    Комментировать
  • Как сравнить два массива?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    var a1 = [ '1', '2', '3', '4', '5' ]
        , a2 = [ '1', '4', '7' ]
        , res
    ;
    
    res = a1.filter(function(v1){
        return !a2.find(function(v2){ return v2 === v1 });
    });
    Ответ написан
    Комментировать
  • Как сделать такое диалоговое окно?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    www.w3schools.com/jsref/met_win_prompt.asp
    prompt("Please enter your name", "Harry Potter");
    Либо сверстать, либо взять что-то готовое из популярных UI-наборов.
    Ответ написан
    Комментировать
  • Как обрабатывать перетаскивание пальцем картинки по экрану?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    Вот примерно так (коффее скрипт правда, да скрол бесконечный, но ограничения ставятся легко):
    class bgViewer
    
        dn = (e) ->
            @isStop = false
            @sx = @lx = e.pageX or (e.originalEvent and e.originalEvent.touches and e.originalEvent.touches[0] and e.originalEvent.touches[0].pageX) or 0
            @sy = @ly = e.pageY or (e.originalEvent and e.originalEvent.touches and e.originalEvent.touches[0] and e.originalEvent.touches[0].pageY) or 0
            return false
    
        up = (e) ->
            @isStop = true
            return false
    
        move = (e) ->
            if @isStop then return
            x = e.pageX or (e.originalEvent and e.originalEvent.touches and e.originalEvent.touches[0] and e.originalEvent.touches[0].pageX) or 0
            y = e.pageY or (e.originalEvent and e.originalEvent.touches and e.originalEvent.touches[0] and e.originalEvent.touches[0].pageY) or 0
            dx = x - @lx
            dy = y - @ly
    
            if Math.abs(x-@sx) < @filter and Math.abs(y-@sy) < @filter
                return
    
            @lx = x
            @ly = y
    
            @x = (@x + dx) % @w
            @y = (@y + dy) % @h
            @cnt.css(
                'background-position': @x + 'px ' + @y + 'px'
            )
            return false
    
        free: ->
            @cnt.off( 'mousedown touchstart', @dnxt
            ).off( 'mouseup touchend', @upxt
            ).off( 'mousemove touchmove', @movext )
            return @
    
        url: (src) ->
            @src = src
            @img = new Image
            @img.src = src
            $( @img ).on( 'load', (e) =>
                @w = @img.width
                @h = @img.height
            )
            @cnt.css(
                'background-image': 'url(' + src + ')'
                'background-position': '0px 0px'
            )
            @x = 0
            @y = 0
            @lx = 0
            @ly = 0
            @sx = 0
            @sx = 0
            return @
    
        constructor: (@cnt, @src = '', @filter = 5) ->
            @cnt.css(
                'overflow': 'hidden'
                'background-repeat': 'repeat'
                'background-position': '0px 0px'
                'cursor': 'move'
            )
    
            @x = 0
            @y = 0
            @lx = 0
            @ly = 0
            @sx = 0
            @sx = 0
            @isStop = true
    
            t = @
    
            @dnxt = (e) -> dn.call t, e
            @upxt = (e) -> up.call t, e
            @movext = (e) -> move.call t, e
    
            @cnt.on( 'mousedown touchstart', @dnxt
            ).on( 'mouseup touchend', @upxt
            ).on( 'mousemove touchmove', @movext )
    
            @cnt[0].bgviewer = @
            @url @src


    Применять примерно так:
    <!DOCTYPE html><html>
    <head>
        <meta charset="utf-8">
        <script type="text/javascript" src="lib/jquery-3.1.0.min.js"></script>
        <script type="text/javascript" src="app/bgviewer.js"></script>
        <style>
            BODY {
                padding: 0;
                margin: 0;
                left: 0;
                top: 0;
                right: 0;
                bottom: 0;
                overflow: hidden;
                position: absolute;
            }
    
            .viewer {
                width: 100%;
                height: 100%;
                background-color: #434343;
            }
        </style>
    </head>
    <body>
        <div class="viewer" id="viewer"></div>
        <script type="text/javascript">
            $(function(){
                window.t2 = new bgViewer(
                    $('#viewer'),
                    'image.jpg',
                    10 // Filter motion less 10 px
                );
            });
        </script>
    </body>
    </html>
    Ответ написан
  • Как добавить переменную в массив?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    var meth = "action", data = [];
    function st(meth){
        data.push({
            'ecommerce': {
                [meth]: { 'products': ["product"] }
            }
        });
    }
    st(meth);

    Но данный синтаксис в старых JS движках не поддерживается.
    Ответ написан
    Комментировать
  • Что лучше поставить вместо FreeBSD?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Луше FreeBSD - только FreeBSD. Если стоит - не трогать. Открыть гугл и разобраться, спросить на форуме. Позвонить предыдущему админу и спросить как перенаcтроить и поставить ему бутылку сока. Кроме того, возможно там просто настроено так, что именно начальнику/ВИПу выдается более широкая полоса пропускания.
    Во-первых такое решение даст плюс в карму, а во-вторых позволит улучшить свои собственные навыки, которые позже принесут свой профит (в карму, в портфолио, резюме, в репутацию, финансовый и т.п.).
    Так же, хочу обратить внимание, что зачастую "админы"-новички, которые вот так не думая сносят работающий сервер и ставят туда окна/что-то свое родное - очень часто вылетают со своего места с гиперзвуковой скоростью и ощутимыми финансовыми потерями, если конечно начальники адекватные. Сам видел таких аналогичных фанатиков волею случая оказавшихся не в том месте :)
    Ответ написан
    5 комментариев
  • Как пофиксить этот hover?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Это баг в стыковке начала и конца фона. В конце элементов виден тот же баг с другим цветом. Решается просто увеличением размера фона: codepen.io/anon/pen/VKXopo?editors=1100
    Ответ написан
    3 комментария
  • Дайте пару ссылок на популярные сборники ui компонентов?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    Не совсем сборник, но модульный: https://getuikit.com/ - есть ядро с основными элементами и плюс есть дополнительные компоненты.
    Ответ написан
    Комментировать
  • Что изучать для написания своего кроссплатформенного приложения?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Основные принципы программирования не зависят от платформы или ЯП. Изучать надо то, что нравится. Кроссплатформенных ЯП хватает. Например C# - для него есть Xamarin.
    Ответ написан
    5 комментариев
  • Форматирование текста силами css. Как сделать пробелы в цене?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Через CSS - никак. Только через JS. Для этого есть специальная функция:
    Number.toLocaleString()

    var str = "1234567890";
    var num = 1234567890;
    console.log( 'From string:', parseInt(str).toLocaleString('ru-RU') );
    console.log( 'From number:', num.toLocaleString('ru-RU') );


    Результат:
    "1 234 567 890"
    "1 234 567 890"


    jsbin.com/mazowewige/edit?js,console
    Ответ написан
  • Сверстал найденный в инете макет. Могу ли выложить его в портфолио?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Если макет без лицензии - то лучше всего найти автора и спросить разрешения и может даже обменяться линками друг с другом. Если макет распространяется с лицензией - то уже смотреть по лицензии (ну а вдруг).
    Ответ написан
    Комментировать
  • Встроенный процессорный кеш в процессоре это техническая необходимость или причина экономическая?

    VoidVolker
    @VoidVolker Куратор тега Железо
    Dark side eye. А у нас печеньки! А у вас?
    Эмм... А чего тут думать-то? Вбиваем в гугл и читаем матчасть:
    Кэш процессора Кэш микропроцессора — кэш (сверхоперативная память), используемый микропроцессором компьютера для уменьшения среднего времени доступа к компьютерной памяти. Является одним из верхних уровней иерархии памяти. Кэш использует небольшую, очень быструю память (обычно типа SRAM), которая хранит копии часто используемых данных из основной памяти.


    https://www.google.ru/search?q=кэш+в+процессоре&gw...
    Ответ написан
    2 комментария
  • Как написать проверку на существования свойства length в js?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    var t = Object.prototype.toString;
    function isArray (s) { return t.call(s) === '[object Array]'; };
    var x = [1,2,3];
    if( isArray(x) && x.length > 0 ){ console.log('x is array and length is', x.length)} else { console.log('x isnt array') }
    var x = {};
    if( isArray(x) && x.length > 0 ){ console.log('x is array and length is', x.length)} else { console.log('x isnt array') }
    Ответ написан
    Комментировать
  • Какую утилиту мониторинга используете вы?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Zabbix - умеет мониторить кучу всего (железо, софт и прочее) и вообще все что угодно, если написать несколько дополнительных скриптов для этого.
    Ответ написан
    Комментировать