Я сам пишу на «Шарпе» но к Руби всегда имел некую тягу и желание что-нибуть написать на этом ЯП, да и о вашей компании наслышан и на удивление говорят только хорошее, особенно приятно что вы обучаете людей и хотите действительно помочь, а не ищите
Вот только по личным наблюдениям (не судите строго) сейчас больше востребован фронт-энд со всеми ангулярами, скриптами, стилями и прочей фигнёй для красивой картинки нежели бек-энд так как там всё можно быстренько наваять на php или перейти сразу на Java если что-то крупное, а RoR как-то уже не приделах, понятно что я много не знаю как устроин мир RoR но всё равно суть думаю ясна !
Как по вашему ?
Я виду к тому что не лучше ли проводить курсы по JS, CSS, HTML итд ?
Обращаюсь к некому старшекласснику который где-то услышал что знать С++ это очень круто и почетно и решил пойти по этому пути, даже не представляя на какие мучения себя обрекая !
Послушай чувак оно тебе не надо, не то время сейчас что бы плюсы учить, в С++ есть только 2 плюса, и те в его названии ! А вот минусов :::
1) Наличие множества возможностей, нарушающих принципы типобезопасности приводит к тому, что в С+±программы может легко закрасться трудноуловимая ошибка. Вместо контроля со стороны компилятора разработчики вынуждены придерживаться весьма нетривиальных правил кодирования. По сути эти правила ограничивают С++ рамками некоего более безопасного подъязыка. Большинство проблем типобезопасности С++ унаследовано от С, но важную роль в этом вопросе играет и отказ автора языка от идеи использовать автоматическое управление памятью (например, сборку мусора). Так визитной карточкой С++ стали уязвимости типа «переполнение буфера».
2) Плохая поддержка модульности. Подключение интерфейса внешнего модуля через препроцессорную вставку заголовочного файла (#include) серьёзно замедляет компиляцию, при подключении большого количества модулей. Для устранения этого недостатка, многие компиляторы реализуют механизм прекомпиляции заголовочных файлов Precompiled Headers.
3) Недостаток информации о типах данных во время компиляции (CTTI).
4) Язык C++ является сложным для изучения и для компиляции больших проектов.
5) Некоторые преобразования типов неинтуитивны. В частности, операция над беззнаковым и знаковым числами выдаёт беззнаковый результат.
6) Препроцессор С++ (унаследованный от С) очень примитивен. Это приводит с одной стороны к тому, что с его помощью нельзя (или тяжело) осуществлять некоторые задачи метапрограммирования, а с другой, в следствии своей примитивности, он часто приводит к ошибкам и требует много действий по обходу потенциальных проблем. Некоторые языки программирования (например, Scheme и Nemerle) имеют намного более мощные и более безопасные системы метапрограммирования (также называемые макросами, но мало напоминающие макросы С/С++).
7) С конца XX века в сообществе С++ получило распространение так называемое метапрограммирование на базе шаблонов. По сути, оно использует особенности шаблонов C++ в целях реализации на их базе интерпретатора примитивного функционального языка программирования выполняющегося во время компиляции. Сама по себе данная возможность весьма привлекательна, но, в следствии вышесказанного, такой код весьма трудно воспринимать и отлаживать. Языки Lisp/Scheme, Nemerle и некоторые другие имеют более мощные и одновременно более простые для восприятия подсистемы метапрограммирования. Кроме того, в языке D реализована сравнимая по мощности, но значительно более простая в применении подсистема шаблонного метапрограммирования.
8) Хотя декларируется, что С++ мультипарадигменный язык, реально в языке отсутствует поддержка функционального программирования. Отчасти, данный пробел устраняется различными библиотеками (Loki, Boost) использующими средства метапрограммирования для расширения языка функциональными конструкциями (например, поддержкой лямбд/анонимных методов), но качество подобных решений значительно уступает качеству встроенных в функциональные языки решений. Такие возможности функциональных языков как сопоставление с образцом вообще крайне сложно эмулировать средствами метапрограммирования.
9) C++ унаследовал многие проблемы языка C:
o Операция присваивания обозначается как = , а операция сравнения как == . Их легко спутать, и такая конструкция будет синтаксически правильной, но приведёт к труднонаходимому багу. Особенно часто это происходит в операторах if и while, например, программист может написать if (i=0) вместо if (i==0)(Вместе с тем, основная масса компиляторов выдаёт в таких случаях предупреждение.) Избежать ошибку такого типа можно, если писать все операции сравнения в таком виде: if (0==i). К тому же многие языки (Бейсик, Паскаль) используют символ «=» именно в операциях сравнения.
o Операции присваивания (=), инкрементации (++), декрементации (—) и другие возвращают значение. В сочетании с обилием операций это позволяет, но не обязывает, программиста создавать трудночитаемые выражения. С другой стороны, один из основных принципов языков C и C++ — позволять программисту писать в любом стиле, а не навязывать «хороший» стиль. К тому же это иногда позволяет компилятору создавать более оптимальный код.
o Макросы (#define) являются мощным, но опасным средством. В языке C++, в отличие от C, необходимость в опасных макросах появляется значительно реже благодаря шаблонам и встроенным функциям. Но в унаследованных стандартных С-библиотеках много потенциально опасных макросов.
10) Некоторые считают недостатком языка C++ отсутствие системы сборки мусора. С другой стороны, в C++ есть достаточно средств (классы с конструкторами и деструкторами, стандартные шаблоны, передача параметров по ссылке), позволяющих почти исключить использование опасных указателей. Тем не менее, отсутствие встроенной сборки мусора позволяет пользователю самому выбрать стратегию управления ресурсами.
Тебе нужен C# или Java ! Учись с малолетства думать о хорошем и выбирать хорошие вещи ...
Вот может оно и верно для Киева, а в остальных городках глуховато!
К сожалению в Украине работы ничтожно мало по таким крутым штукам как OpenCV, gamedev, linux kernel, Qt относительно ВЕБ предложений, я даже примерно не знаю чем сейчас может заняться «плюсовик» ? Может баг-фикс ? Новых проджектов по «плюсам» мало заходит, почему сам не знаю ...
Супер, многие будут рады этому !!!
Большое спасибо, смотрел этот список задач просто отлично, по большому счету то что нужно ! Очень благодарен вам за оказанную помощь !
Вообщем я с вами абсолютно согласен, даже благодарен за идеи, просто я как-то уже привык к этому задачнику и перед каждым собеседованием его прохожу и радуюсь ;) просто дело сильной привычки, потерять задачник для меня это как курящему курить бросить !
Но как сказал мне один мой знакомы поэт из местной подворотни : «Хрен с ним, надо жить дальше !»
И на том спасибо вам !
Субъективно «на глаз» заметил что чем дальше тем предложений по работе всё меньше и меньше, может это до определенной поры когда кто-то родит новый фреймворк «Шпалы» и будет Руби на Шпалах куда лучше чем на Рельсах и снова все побегут сюда !
Спасибо что хотите помочь мне, сейчас посмотрю данный ресурс !
Да, WinPhone не популярен и с этим уже ничего не поделаешь, мелкософт сама подкидывает денег что бы люди хоть что-то писали под их платформу, проблема в том что самих мелкомягких штормит «неподецки» они то закрывают реально хорошие проекты (Windows Mobile 6.5, XNA, SL), убили нокию cyки то продвигают всякую чушь на подобие МЕТРО\WinRT, а сколько попыток вывести на рынок Windows Phone — это же писец пока не вышел 8.1 через кучу лет, лучше бы до ума довели WPF и убрали не читаемый XAML (один хрен пойми его) заменив на что-то нормальное и не лезли часто в «Шарп» со своими «новшествами» скоро это будет не язык, а один сахар, часто из-за него вообще ничего не ясно как оно работает внутри, особенно если до тебя на проджекте сидел какой-то коновал !
Я тоже не большой фанат таких языков Ruby\Python, но что касается первого так это предложения по работе их минимум и как вы верно подметили он идет на спад и моя внутренняя врожденная неприязнь к JS сделали своё дело !
Чисто по работе скажу что есть желание перейти в AndroidDev исключительно из-за перспектив и денег, а так же любви к моб.разработке но пока сижу на WinPhone (нравится мне он) !
Там нужно подходить к работе с чувством красоты : стили, разметка, всякую красоту наводить, а я это делать не смогу, плюс жесткое внутреннее отвращение ко всему ДжаваСкрипт-подобному, одно дело на JS-e немного писнуть пару десяток строк и другое дело хeрачить на нем с 9 и до 17 часов !
Меня очень нравилось именно то что на руби пишут всё что могут писать, а вот вашей рекомендацией о мобильной разработке даже удивлен в плане того что сейчас всё выносится в веб, на телефон можешь даже офис не ставит если ты всегда онлайн и музыку слушают через «ВК» или другую соц.сеть\сервис, хотя утверждать не стану, а вот на фронтэнд у меня вообще не стоит, уж лучше в МакДональдсе буду картошку продавать.
И как сейчас с работой под Руби, много заказов ? Что в основном хотят простые интернет магазины или долгосрочные web-приложения\сервисы ?
Я сам хотел взяться за Руби, учил, людей единомышленников искал, но потом смотрел на предложения по работе (тогда по Днепропетровску их было очень мало, а фриланс не рассматривал) и как-только мне предложили хорошую позицию на C# под мобайл писать я сразу свалил побоявшись что останусь без работы, так руби и «неасилил» в последствии.
Неужели никто не пользуется задачником ? Это такая хорошая вещь, всегда перед собеседованием пройтись можно что бы восстановить знания !
Я слушаю в машине как гремит торпеда и салон, но через этот чудный шум иногда пытается пробиться радию LuxFM !
Спасибо за достойный ответ !