• Учить ли SWIFT?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Отталкивайтесь от своих интересов. Чем вы хотите заниматься? Писать десктопные приложения? Мобильные? Игры? Сайты? Браузерные приложения? Выращивать цветочки?))
    А дальше уже смотрите на стак технологий, которые используются в интересующем вас направлении.
    Ответ написан
    Комментировать
  • Коллеги программисты, подскажите, в какую область программирования податься junior'у?

    FirstX
    @FirstX
    .net developer
    и мне 23, и я тоже программирую на C# и есть работа, но тоже есть такое желание, и чувство более, чем знакомое.

    Вот только для того, чтобы "что-то было", надо "что-то сделать". Изменив направление, принципиально ничего не изменится, кроме того, что вы начнете с начала. По-началу будет интересно из-за эффекта "сколько всего нового", но этот эффект быстро выветривается, когда приходишь к той же точке. Я тоже параллельно изучаю программирование под iOs, но основную ставку все равно делаю на C#.

    В ближайших планах переезд и поиск места, где есть возможности для самореализации. Если повезет устроиться пусть даже ios джуном - я это сделаю. Если нет, то продолжу дальше C#, но в сторону веба и сервисов. Это первый шаг - стратегический.

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

    возник вопрос, куда идти и что делать, пока есть возможность.


    Жизнь сложная штука и "куда идти, что делать" это вопрос, который предстоит решить лично Вам. А для того, чтобы ориентироваться нужны 2 вещи: компас и карта. Компас - это ваши личные жизненные ориентиры, цели, принципы. Если их еще нет, то самое время их заводить :) Это не абстрактные понятия, а то чем вы живете, как вы живете.

    Ну и карта, это общедоступная информация. Да, масштаб карты оставляет желать лучшего, да на карте не отмечены места, где может уже и нет дороги, не какие-то общие представления о том, где вы находитесь и куда вам надо - получить можно. Смотрите вакансии, смотрите требования, общайтесь, узнавайте, усердно работайте, сверяйтесь снова по компасу и карте, в правильном ли направлении движетесь. Иначе можно уйти настолько далеко в лес, что потом может не хватить сил вернуться и останутся горечь и сожаления. Либо нарезать круги вокруг чего-то абстрактного в надежде, что "вот-вот, сейчас то заживем!". Ищите людей с которыми Вам по пути, тоже хорошее подспорье.
    Ответ написан
    4 комментария
  • Сам себе бухгалтер и юрист. Что почитать и посмотреть?

    Sheh
    @Sheh
    Подозреваю, вы хотите создать стартап и решать единолично и бухгалтерские и юридические вопросы. Учтите, что вам придётся постоянно быть в курсе изменений законодательства. Нельзя будет разобраться один раз, а потом только повторять рутинные действия. В налоговой постоянно что-то новое придумывают. А виноваты в конечном итоге будете вы (что не занли об изменениях). Очень много нюансов в любом деле. И профессионал сделает это лучше, просто потому, что у него есть опыт. Вы готовы совершать ошибки? Они обязательно будут. Просто сам столкнулся с данной проблемой. Мой вам совет - делегируйте. И лучше сконцентрируйтесь на своём призвании. "Делать всё самому" - путь в тупик.
    Ответ написан
    1 комментарий
  • Разработка игры на Android\iOS (Unity3D 4.3, Cocos2D) - размеры экрана, DPI, масштабирование спрайтов?

    risik
    @risik
    Программист
    Density и разрешение экрана свзяно друг с другом не совсем прямо пропорционально.

    В Android есть такое правило:
    LDPI:MDPI:HDPI:XHDPI:XXHDPI=3:4:6:8:12.

    например здесь: stackoverflow.com/questions/6166677/android-screen...
    или на developer.android.com

    То есть, делать персонажа 100 пикселей для xhdpi - очень плохая идея. Лучше, например, 96 пикселей. Так как 96 без остатка делится 6. А высоту не 80, на 78. Тогда размеры персонажа у Вас будут:
    LDPI: 48х39
    MDPI: 64х52
    HDPI: 96х78
    XHDPI: 128x104
    XHDPI: 192х156

    Отсюда можно легко вычислить в каком разрешении Вам надо рисовать персонажа, чтобы избежать не ркатного масштабирования. Находим наименьшее общее кратное между пропорциями. Это будет 24. И рисуем Ваш объект в разрешении 384х312. Из этого размера Вы легко получаете все рисунки всех необходимых размеров. Лучше сделать скрипт, который, например, при помощи ImageMagick масштабирует Ваш оригинальный рисунок и раскладывает по папкам.

    То есть, если Вы хотите поддерживать все 5 разрешений, то все Ваши оригинальные рисунки должны иметь размеры, делящиеся на 24 нацело.

    Однако, LDPI можно не рассматривать. Тогда пропорции получаются:
    MDPI:HDPI:XHDPI:XXHDPI=2:3:4:6.
    И в этом случае, очевидно, что все оригинальные рисунки должны иметь размеры, нацело делящиеся на 12. Кстати, даже если Вы оставите поддержку только HDPI и XHDPI Вам все равно нужен множитель 12, а значит Вы дешево получаете поддержку и MDPI и XXHDPI.

    Для iOS все чуточку проще. Смотрите комментарий @Lerg.
    Ответ написан
    Комментировать
  • Разработка игры на Android\iOS (Unity3D 4.3, Cocos2D) - размеры экрана, DPI, масштабирование спрайтов?

    Lerg
    @Lerg
    Defold, Corona, Lua, GameDev
    Не знаю как именно обстоит дело в Unity, но я беру спрайты максимального размера под iPad Retina и уменьшая два раза в два раза. Допустип фоновое изображение. Для iPad это будет 2048х1536.
    Такой файл я называю background@4x.png, и делаю ещё две версии background@2x.png и background.png, каждый отличается в 2 раза от соседнего. То есть @2x это 1024х768, а простой это 512х368 для устройств с совсем низким разрешением (хотя в настоящее время их можно уже и не поддерживать, это iPhone 3GS, например).

    Версия файла выбирается из текущего разрешения устройства, берётся таким образом, чтобы не было артефактов увеличенного масштабирования. То есть для разрешения 1024х600 берутся файлы @2x и уменьшаются по принципу letterbox.

    Если говорим о спрайтах и элементах UI, то ничего больше для них не нужно. А вот для фоновых изображений или изображений во всю ширину экрана нужно учитывать ещё разное соотношение сторон.

    Если взять фон от iPad и показать его на iPhone 5, то по бокам будут видны незанятые области. Фоновое изображение нужно расширить. Опытным путём я пришёл к разрешению 2776х1536 для @4x, такое изображение покроет полностью экраны всех мобильных устройств.

    DPI по хорошему нужно учитывать, иначе на iPad элементы UI получаются гораздо больше чем на iPhone и их можно было бы сделать поменьше, но на практике и без этого нормально в большинстве случаев.
    Ответ написан
    Комментировать
  • Что лучше использовать для приложения на iOS: Core Data или sqlite + ORM?

    @Rockerman
    Рекомендую CoreData + MagicalRecords. Практчиески из коробки будет синхронизация базы через iCloud. Мелочь, а приятно.
    Ответ написан
    Комментировать
  • Что лучше использовать для приложения на iOS: Core Data или sqlite + ORM?

    gomzyakov
    @gomzyakov
    Руководитель проектов
    Ваша задача, полагаю, будет прекрасно решаться средствами как ORM, так и Core Data.

    Стоит понимать, что Core Data - это не ORM, а средство для работы с графом объектов. Сравнивать их можно лишь очень условно. Если вы уже работали с ORM, то пользоваться Core Data будет несколько непривычно.

    Если сроки, отведенный на написание приложения, не горят, рекомендую всё-таки освоиться с Core Data - это прекрасная технология, позволяющая полностью закрыть букву M в аббревиатуре MVC. Помимо того, что Core Data является нативным фреймворком, который всегда "под рукой", он очень быстр, обновляется самой Apple (вероятность того, что в будущем придется переползать с одной ORM на другую, ниже) и позволяет писать очень компактный и надежный код.

    Не понял, что имелось ввиду под доступностью sqlite "из вне", да и в принципе слабо знаком с ORM-решениями. Полагаю, у них есть свои плюсы и есть минусы.
    Ответ написан
  • Самый приемлемый язык программирования для девушки

    @Mr_Kibernetik
    Первый раз слышу, чтобы для девушек были какие-то особые критерии выбора языка программирования. Это примерно как девушке спросить "Хочу научиться водить машину, какую посоветуете?" Ну как, ясно какую: "Вон ту, красненькую берите! Она к вашей сумочке подходит..."
    Вообще-то язык программирования не выбирают - это просто инструмент. Для решения определенного круга задач. Что и на чем собираетесь программировать - это и определяет тот язык и ту среду программирования, в которой придется работать. Иногда вообще вариантов нет: например для программирования айфона существует только язык Objective C и только среда программирования Xcode.
    Так что сначала надо точно знать, что Вы собираетесь программировать и на чем. Изучать язык "просто так" тоже можно, но тогда нужно четко определить цель: "для обучения".
    Ответ написан
    1 комментарий
  • RoR с нуля до первого заказа за неделю, реально?

    FanKiLL
    @FanKiLL
    Реально, если вы купите нашу волшебную, прекрасную, многофункциональную шняжку - всего за 9.99. Звоните прямо сейчас.
    Ответ написан
    1 комментарий
  • Сложное задание на собеседовании

    @Slko
    C++/C#/Python Developer
    Вопрос немножко некорректен. 32-битность здесь большой роли не играет (важно только, чтобы архитектура не была 8-битной, где длина типа int может быть равна длине типа char, но всё равно это тоже некорректно, т.к. размеры типов не зависят от разрядности архитектуры, надо было указывать разрядность типа int), роль играет порядок байт.
    Если little-endian (интеловский порядок), то в c помещается наименьший значащий байт числа, т.е. это эквивалентно x % 256.
    Если big-endian, то в c помещается наибольший значащий байт числа, т.е. это эквивалентно x >> 24 (для 32-битной архитектуры).
    Соответственно, для little-endian эта операция над числом 1 вернёт 1, для big-endian - 0.
    Двойной знак вопроса использовался в C (где нет типа bool) для нормализации значения (!!x эквивалентно x > 0 ? 1 : 0).
    В C++ ! возвращает bool, а результат двойного применения отрицания это, по сути, преобразование типа исходного значения к bool (!!x эквивалентно (bool)x).
    В любом случае, суть последнего выражения - возврат true/1, если архитектура little-endian, а иначе - false/0.
    То есть назвать эту функцию можно было IsLittleEndian().
    Ответ написан
    6 комментариев
  • Коллеги программисты, подскажите, в какую область программирования податься junior'у?

    xakpc
    @xakpc
    full-stack .net developer, CEO Leecero.com

    Обратите внимание на Xamarin (как сделал я)
    Будет вам и Android и iOS и C#

    Можно развить до Unity3D - и уже геймдев, а если пойти по пути MonoXNA - возможности ну просто вообще необозримые.

    Правда, для всего этого непросто найти вакансии :)

    Ответ написан
    Комментировать
  • Коллеги программисты, подскажите, в какую область программирования податься junior'у?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com

    Обязательно попробуйте сделать что-то для Open source. Пусть и не большой проект, а там выложить его например на GitHub и развивать. Это даст вам опыт, возможно полезные советы и строчку в портфолио.

    Ответ написан
    Комментировать
  • Коллеги программисты, подскажите, в какую область программирования податься junior'у?

    @SergeyKot

    Что могу посоветовать? Я занимаюсь непрерывно программированием уже 37 лет. Нужна удача. Все модные системы сейчас, через 3-4 года никому уже не нужны. Требуются знания в направлениях. Недавно сделал запрос на видеоролик "friendly mobile sites" на русском не нашел...

    Ответ написан
    Комментировать
  • Коллеги программисты, подскажите, в какую область программирования податься junior'у?

    foxmuldercp
    @foxmuldercp
    Системный администратор, программист, фотограф

    Ну так кто мешает найти или создать какой-то интересный проект, вести его и получать дополнительные знания, не уходят от того же любимого c#?

    Основы то для всех языков - одни и те же, Если вы понимаете алгоритм, то изучить новый язык и применить его на практике - делов на изучить конструкции данного языка, и то, а большинстве языков конструкции одинаковы - строки, целые или логические операции одни и те же, разве что написание может отличаться.

    Ответ написан
    Комментировать
  • Коллеги программисты, подскажите, в какую область программирования податься junior'у?

    wartur
    @wartur

    Ну. Я сам начинал с С# правда закончил с ним еще в 20 лет. На самом деле для меня лично все достаточно просто. Хотите более стартапно развиваться с большей конкуренцией надо уходить наверх по стеку технологий, например из софтерной разработки переходить в Web разработку, мобильную разработку. Хотите стать узконаправленным специалистом надо уходить вниз по стеку в хардвар. Ну и есть еще третий путь это научный =), там больше компьютер сайнс и меньше кода.

    Ответ написан
    Комментировать
  • Есть ли смысл специализироваться в мобильной разработке?

    @victorv
    набирая опыт и зарабатывая неплохие деньги

    Так получается очень редко, а если получается, то это большая удача. Чаще в этой фразе надо ставить не «и», а «или».

    На самом деле перед вами, прежде всего, стоит выбор не по классам решений (мобильные, клиентские, серверные, ...), а по экосистемам (Apple, Google, Microsoft, Oracle, ...). Каждый из таких монстров имеет свой набор взаимоувязанных технологий, инструментов, услуг (сервисов), которые заманивают и затягивают к себе разработчиков и их организации. Вам, как молодому специалисту, лучше, не распыляясь, сделать выбор в пользу одной конкретной экосистемы, помня при этом «не сотвори себе кумира»…
    Ответ написан
    Комментировать
  • Куда лучше податься: ios или android?

    usgleb
    @usgleb
    Тоже одно время стоял перед таким вопросом. А если честно, я сначала прочитал книгу по Objective-C, а потом начал задавать себе такой вопрос.Забегая наперед, скажу сразу — выбрал iOS.

    Когда пытаешься найти ответ на подобный вопрос, я считаю надо начинать со списка критериев. У меня он был такой:
    1. Уровень ЗП
    2. Порог вхождения (имеется ввиду «что мне надо купить\установить, что бы можно было хоть где-то запустить свою поделку»)
    3. Прибыльность платформы(имеется ввиду «если я напишу апу, сколько она мне будет приносить денег»)
    4. Удобство разработки\тестирования\использования

    Для Android ответы были такие:
    1. Ниже чем у iOS разработчика
    2. Минимальный. Поставил на Ubuntu SDK и симулятор, запустил и клацай. Вариант с покупкой девайса тоже отличный, можно купить нормальный девайс за небольшие деньги.
    3. Ниже чем у Apple приблизительно в таком соотношении image
    4. Тут все зависит от выбранной IDE.

    Для iOS вырианты такие:
    1. Самый высокий среди мобильных платформ.
    2. Высокий. Надо или покупать мак мини или танцевать с бубном вокруг хакинтоша. Вариант с покупкой девайса был тоже плохим. Даже Б\У девайсы стоили как новые топовые Android.
    3. Самая высокая среди мобильных платформ
    4. Тут выбирать особо не приходится — XCode. Судя по роликам на ютубе удобный.

    В итоге решающим для меня стал пункт 2. И я выбрал Android… аж на 2 недели. Спустя 2 недели меня достал Eclipse и симулятор, я узнал про такое явление как кластеризация(то есть нужно поддерживать много расширений экрана), ну и с Java чего то не пошло. Не понравилась и все.

    Потом нашел нормальный туториал как поставить хакинтош и смог попробовать XCode. Мне он понравился, ну и пошло поехало.
    Ответ написан
    1 комментарий
  • Помогите определиться с местом работы

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

    Обычно junior программистов берут либо без опыта, либо с маленьким опытом. И у вас появится опыт на реальных коммерческих проектах, что расширит, в свою очередь ваш кругозор, и даст необходимый опыт.

    Причём вполне возможно, что вы, получив опыт в чём-то одном, перемените своё решение в отношении работы с той или иной платформой.

    Резюмирую: ищите вакансии junior программистов и нарабатывайте опыт. И всё у вас получится.
    Ответ написан
    Комментировать
  • Две работы

    Днём работаю на основной работе, по ночам пишу свой большой проект.

    В своё время сделал «ошибку» — объяснил жене, что за свой большой проект могу получить неплохие деньги. Потом, когда захотел бросить его, жена со скалкой объяснила мне, что лучше этого не делать… Она хочет двухкомнатную квартиру.
    Так что теперь я пашу и на работе, и дома под присмотром жены.

    Отсюда мораль: меньше рассказывайте женам о своей работе — крепче будете спать.
    Ответ написан
    3 комментария
  • Две работы

    @skvot
    Сейчас параллельно с основной фултайм работой пишу проект на фриланс, тяжело, жалею что взялся, мотивируют только мысли о вознаграждении в виде опыта и денег :)
    Ответ написан
    Комментировать