• Как программисты оценивают стоимость своей работы?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    а может он наоборот проработал плохо, и из за неэффективности своей работы принес только убытки компании.

    Не не не не... Во всем виноваты менеджеры.
    Ответ написан
    Комментировать
  • Как два ImageView прилепить к разным краям экрана?

    gadfi
    @gadfi
    https://gamega.org
    если используете LinearLayout то укажите android:orientation="horizontal" и между ними можете поставить View как наполнитель, а вообще судя по названиям вам нужен toolbar там вам и кошерное лого, и нормальное меню иконки, тем более в него можно ставить что угодно
    Ответ написан
    4 комментария
  • Как два ImageView прилепить к разным краям экрана?

    newross
    @newross
    Product owner
    Изменить свойства RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"

    Затем убрать LinearLayout и добавить соответствующим ImageView
    android:layout_alignParentLeft="true"
    и
    android:layout_alignParentRight="true"
    Ответ написан
    Комментировать
  • Задача про стену и кирпичи. Как решить?

    @Andy_U
    Ну, я бы начал с решения уравнения в целых положительных числах 3*x+4*y=25. Решений две штуки: (x=3, y=4) и (x=7, y=1). Т.е. у нас 2 класса рядов. Вариантов расположения кирпичей в первом классе 7!/(3!*4!)=35, во втором классе 8!/(7!*1!)=8. Итого 35+8=43 вариантов ряда. Генерируем их. Теперь заполняем матрицу размером 43*43, ставя единички там, где ряды кирпичей (один в столбце, второй в колонке) совместимы с условием отсутствия общей вертикальной щели (для каждого варианта ряда строим множество {L[1], L[1]+L[2], ... L1+...L[N-1]}, потом очевидно, что ряды "совместимы", если пересечение множеств пустое). Это все быстро и памяти немного надо. На питоне - 30 строк. Кстати, в построенной матрице нулей сильно больше, чем единиц. несколько рядов просто ни с одним другим не совместимы. А потом, увы, перебор, если я правильно понял условие задачи. Типа как в классической задаче "поставить 8 ферзей на шахматную доску, чтобы они не били друг друга".

    Update:

    Код на питоне 3.4.3, решающий задачу перебором (кроме получения "классов" рядов), приведен ниже:

    import itertools
    
    
    def build_tail(height, row):
        if height == 9:
            return neighbours_number[row]
        else:
            return sum(build_tail(height+1, i) for i in acceptable_neighbours[row])
    
    
    rows = {i for i in itertools.permutations([3, 3, 3, 4, 4, 4, 4], 7)} | \
           {i for i in itertools.permutations([3, 3, 3, 3, 3, 3, 3, 4], 8)}
    
    acc_rows = [set(itertools.accumulate(row[: -1])) for row in rows]
    acceptable_neighbours = [[i for i, b in enumerate(acc_rows) if not (a & b)] for a in acc_rows] # copied from @bobrovskyserg
    neighbours_number = [len(i) for i in acceptable_neighbours]
    
    print(sum(build_tail(1, i) for i in range(0, len(acc_rows))))


    Время решения ~40 секунд, ответ bobrovskyserg подтверждаю. Пошел разбираться с его алгоритмом...
    Ответ написан
    3 комментария
  • Как учитываются лимиты при снятии денег через payoneer и в каких банкоматах можно снять по крупному?

    jff
    @jff
    Автор блога и форума про фриланс jff.name
    Если коротко: $ лучше снимать в CitiBank и Unicredit, у них лимит снятия за раз 400$.
    Рубли в данных банках можно снимать до 8000 за раз, что не очень выгодно, так как есть банки которые выдают 20000 за раз. Большинство пользователей склоняется к схеме "снять $ и поменять на рубли", так получается меньше комиссии.
    У Payoneer 2500$ в день лимит. У большинства банков(точно знаю за Unicredit и Citibank) дневной лимит больше 2500$, но 400$ лимит за транзакцию. Так что вы можете снять все 2500$ за один подход, просто снять их несколькими транзакциями. Но за каждую транзакцию payoneer берет комиссию.
    Самая актуальная, но плохо систематизированная информация на форуме Payoneer - community.payoneer.com/ru/discussion/2387/rf-banko....
    Я постарался немного обобщить и систематизировать ее здесь - jff.name/payoneer-bankomats, но информация двухмесячной давности, а в связи с нестабильной финансовой информацией банки очень часто меняют свои условия.
    Ответ написан
    3 комментария
  • Стоит ли покупать книги по Android 2 и Java 7 если сейчас Android 5 и Java 8?

    script88
    @script88
    Java 7 все очень даже актуально. Энтерпрайз решения никогда не спешат переходить на более новые версии, по этому об этом можно не беспокоится, а вот Android 2 явно устарел
    Ответ написан
    4 комментария
  • Насколько необходимо использовать БД и ContentProvider в Android REST приложении?

    @FoxInSox
    Вам только так кажется, что кешировать нет необходимости. На деле кеширование решает массу проблем:
    • скорость работы приложения гораздо выше
    • работа с сетью расходует батарею
    • при отсутствии интернета или плохом качестве подключения приложение работает, а не превращается в "браузер"
    • траффик меньше (как для сервера, так и для пользователя мобильного приложения)
    • нагрузка на сервер меньше

    Примеры:
    • старые счета нет необходимости перезагружать. Т.е. даже при отсутствии сети человек сможет просмотреть свои счета
    • на андроиде система может убивать процесс вашего приложение сколько угодно часто из-за нехватки памяти. Т.е. например пользователь запустил ваше приложение, загрузил список блюд, потом вдруг переключился на почту, а затем на браузер, а система тем временем выгрузила ваше приложение из памяти. При наличии кеша человек вернувшись в ваше приложение сразу увидит пару минут назад загруженный список блюд. При отсутствии кеша он вынужден будет снова смотреть на унылое "список загружается".
    • детали блюда вряд ли будут меняться часто. Т.е. нет никакой необходимости загружать каждый раз ингредиенты. При отсутствии кеша пользователь желая сравнить два блюда будет переключатся между ними каждый раз делая запрос, что будет жутко долго и не удобно.
    • для обновления закешированых данных можно использовать GCM.


    Разрабатывая приложение вы всегда должны помнить что масса пользователей имеет очень слабые устройства с медленным подключением к интернету или вообще с отсутствующем подключением.
    Ответ написан
    Комментировать
  • Кто может посоветовать веб-приложение для организации работы команды фрилансеров?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Не нужно ничего устанавливать, есть суперские решения:
    Лучший из платных: https://basecamp.com/
    Лучший из бесплатных: https://trello.com/
    Ответ написан
    Комментировать
  • Кто может посоветовать веб-приложение для организации работы команды фрилансеров?

    dizballanze
    @dizballanze
    Software developer at Yandex
    redmine видимо
    Ответ написан
    Комментировать
  • Как немного изменить шаблон проекта в AndroidStudio?

    Ewintory
    @Ewintory
    Java / Android developer
    Ваш вопрос сподвигнул разобраться :)
    Нашел два варианта на выбор. Файл открываете текстовым редактором, добавляете зависимость и сохраняете отдельно. Потом заменяете.

    1. Добавляем зависимость в
    {android-studio-location}\plugins\android\lib\templates\gradle-projects\NewAndroidModule\recipe.xml.ftl

    <recipe>
    
        <dependency mavenUrl="com.jakewharton:butterknife:6.1.0"/>
    
        <#if appCompat><dependency mavenUrl="com.android.support:appcompat-v7:${targetApi}.+"/></#if>
    ...
    </recipe>


    2. Либо добавляем зависимость сюда
    {android-studio-location}\plugins\android\lib\templates\gradle-projects\NewAndroidModule\root\build.gradle.ftl

    dependencies {
        <#if dependencyList?? >
        <#list dependencyList as dependency>
        compile '${dependency}'
        </#list>
        </#if>
        compile fileTree(dir: 'libs', include: ['*.jar'])
    <#if WearprojectName?has_content && NumberOfEnabledFormFactors?has_content && NumberOfEnabledFormFactors gt 1 && Wearincluded>
        wearApp project(':${WearprojectName}')
        compile 'com.google.android.gms:play-services:+'
    </#if>
        compile 'com.jakewharton:butterknife:6.1.0'
    }


    UPD: ВНИМАНИЕ, при обновлении до 1.2.2 вылетело такое сообщение, скорее всего из за этих изменений. Сообщение как раз ссылается на файл, который я изменил по первому пункту. Пришлось вернуть исходный файл.
    945944cb19564316879d41ead4def6eb.JPG
    Ответ написан
    1 комментарий
  • Как избежать утечек памяти в Android?

    @onepavel
    Консультация и разработка мобильных приложений
    Google 5 лет назад еще рассказал как правильно делать Rest запросы
    https://dl.google.com/googleio/2010/android-develo...
    Ответ написан
    2 комментария
  • Какой лучше layout использовать?

    @swba
    Web => Mobile
    Если у вас таблица, то используйте TableLayout: developer.android.com/reference/android/widget/Tab...
    Только ещё посмотрите на гугловские рекомендации по дизайну таблиц: www.google.com/design/spec/components/data-tables...., а то сейчас не очень красиво.

    А всё вместе (таблица + кнопка внизу) - это вертикальный LinearLayout, первый потомок которого - ScrollView (ведь ваша таблица может быть по высоте больше экрана, да?) с весом (layout_weight = 1), в который вложена таблица.
    Ответ написан
    Комментировать
  • Прошу помочь составить план\стратегию\порядок обучения, радиоэлектронике\пайке\и т.п.?

    globuzer
    @globuzer
    gezgrouvingus progreszive ombusgrander greyderzux
    Ну тут два важных вопроса, как и в любой науке - теория и практика.
    Для начала нужно изучить теорию, понять смысл, суть, физику, основы процессов и движения электронов, p-n-переходы, термопреобразования, вольт-амперные характеристики, законы токов, закон Ома и т.д.
    На этот случай в СССР издано много хороших классических книг. Их можно погуглить и скачать. Либо можно купить в бумажном варианте, есть классика уже с эндцатым переизданием, до сих пор актуальна.
    Есть и новые книги. На любой вкус. Как основа и база, можно порекомендовать таких авторов: Хоровиц, Хилл, Шило, Корис, Титце, Шенк, Фрунзе, Банк, Баскаков, Гоноровский, Калашников, Иванов, Шахгильдян, Олсон, и другие.
    Это только что сразу же вспомнил. Вообще заяндогуглите по тегам: основы электроники, радиотехники, схемотехники. Не забывайте, что радиотехника или электроника подразделяется глобально на аналоговую и цифровую.
    Собственно по каждому разделу свои книги и принципы познания. Не забывайте про теорию цепей, способы рассчета их, тут будет полезной линейная, аналитическая, матричная алгебра. При изучении дискретной\цифровой техники или электроники будет необходимо знать дискретную математику и булеву алгебру. Это все основы, это все теория. Также полезен старый добрый журнал "Радио".
    Любую теорию подкреплять необходимо практикой. Рассчеты - рассчетами, решением различных задач, особенно практических. Полезны будут для изучения даже задачи из сборника задач по физике (раздел электричество), радиолектронике, схемотехнике. То есть теоретико-практические задачи - именно тренируют умение применять базу знаний для анализа и рассчетов.
    Ну и собственно после этого самая что ни на есть настоящая практика - пайка, монтаж, проектирование в CAD, работа руками...
    Очень важным будет являться умение пользоваться современными средствами рассчетов и измерений: калькулятор, компьютер, программатор, осциллограф, мультиметр, вольтметр, амперметр. Знать протоколы обмена между периферией и цифровой аппаратурой.
    Ну и самым наверное главным инструментом будет паяльник с всей оснасткой: припои, пасты, жала, канифоли, жиры, шкурки, зачистки, и другие колюще-режущие штуки, способные прийти на помощь при монтаже или пайке.
    В настоящее время в китайских интернет-магазинах есть готовый toolkitы, то есть наборы для обучения электро-монтажу-программированию-конструированию цифровых устройств, также там можно заказать и провода и макетные платы.
    В комплекте с toolkitами идут бывает и инструкции и методики, даже полезно будет приобрести вариант для детей, тоже бывает интересно.
    В интернете распространен буржуйский журнал по проектированию устройств на основе Raspberry Pi, различные проекты. Можно обучаясь попробовать и это на практике, там и пайка и программирование.
    Вообще, изучать электронику и позновательно и увлекательно, в настоящее время для этого все есть. Единственное, подумайте, зачем вам это? Просто как хобби - одно, а если вы хотите стать профессиональным проектировщиком радиоаппаратуры - то сложновато будет самостоятельно все изучить, так как нужны более фундаментальные знания. В таком случае без высшего образования тут никуда не деться. Так что какова ваша мотивация, каковы ваши цели - такова будет и соответствующая стратегия.
    Если хотите базовые знания, реальный и крутой диплом о высшем образовании - то учите математику с физикой, информатику и английский - и вперед в ВУЗ!
    Удачи в постижении электротехнических наук!
    Ответ написан
    5 комментариев
  • Нужно ли добавлять в резюме на hh сертификаты «ИНТУИТ»?

    IonDen
    @IonDen Куратор тега IT-образование
    JavaScript developer. IonDen.com
    Когда вы в самом начале свой карьеры, то любое подтверждение ваших знаний будет уместным. Со временем будете убирать лишнее из резюме.
    Ответ написан
    Комментировать
  • Что нужно знать до изучения Java android?

    DEFAULT0
    @DEFAULT0
    Раз два три четыре пять Slender идет тебя искать.
    Без java на android делать нечего!!!
    Чтоб писать под android нужно знать основы java без них никак.
    Вот пару ссылок здесь и здесь.
    Ответ написан
    8 комментариев
  • Работа на oDesk, paypal, налоги в России?

    begemot_sun
    @begemot_sun
    Программист в душе.
    Напомню всем, что сейчас банки сливают всю инфу в налоговую и любой налоговик может посмотреть историю ваших транзакций за любой период.
    Ответ написан
    2 комментария
  • Как искать заказы в интернете вне бирж фриланса и знакомых?

    opium
    @opium
    Просто люблю качественно работать
    Устройтесь на работу
    Ответ написан
    1 комментарий
  • Как начать работать удаленно или фрилансить, если даже проекты по мизерной цене вызывают затруднения?

    MegaMufa
    @MegaMufa
    Я бы посоветовал вам устроиться на некоторое время работать в офис. Работа в команде очень сильно помогает поднять свой уровень. В этом есть несколько плюсов:
    1. У вас всегда под рукой есть ментор, который может подсказать как решить поставленую перед вами конкретную задачу. Знания, получаемые таким образом, усваиваются намного лучше. Вы лучше понимете, как применять свои навыки.
    2. К окманде работает несколько человек, каждый со своим мнением и кругозором. Общение на обеде, за кофе и на обсуждениях проектов поможет ваам расширить свой профессиональный кругозор. Вы узнаете про многие технологии. В данный момент они вам не понадобытся, но вы будете знать о них, во время принятия решений в будущем.
    3. Устраиваясь на работу в офис стажером (или новичком, в общем неопытным специализстом), вы ставите в известность своего работодателя. Он в замен на пониженый оклад (у начинающего программиста ЗП, конечно ниже), помогает вам обучаться, выделяя вам ментора и давая практику.
    4. Вы преобретаете опыт решения реальных кейсов. В дальнейшем вы будете знать, как решается большинство типовых задач.
    5. В спокойной, но реальной обстановке получите опыт обучения "на лету" и поиска нужного материала.

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

    Мой вам совет: поработайте некоторое время в команде.
    Ответ написан
    6 комментариев
  • Фриланс. Как договориться с заказчиком?

    @OvLab
    Через teamviewer дать заказчику возможность "подергать" страницы живьем на своем компьютере. Передачу файлов запретить.
    Ответ написан
    2 комментария
  • Какие базовые приложения для iOs нужно написать, чтобы охватить большинство тривиальных задач?

    Flanker_4
    @Flanker_4
    1) Записная книжка (Core Data+ UIKit)
    2) Навигатор (MapKit)
    3) Простенький видео/фото редактор (AVFoundation)

    Я думаю , этого хватит с головой
    Ответ написан
    3 комментария