Найти - Пользователи
Полная версия: Реальные задачи и проблемы
Начало » Python для новичков » Реальные задачи и проблемы
1 2 3 4
liuyr879
py.user.next
И Python вырос из C, и Go вырос из C, и JavaScript вырос из C. То есть C там везде. Поэтому если ты его знаешь, тебе будет проще ориентироваться во всех языках, которые есть вокруг прямо сейчас. Все базовые конструкции у них будут как-то удивительно похожи между собой. Вот эта похожесть, она из C берётся. Либо она напрямую скопирована, либо в виде идеи, которая была в C.
Лучше закончить Пайтон и перейти сразу на изучение С? Или же перепрыгивать сейчас на С и потом заканчивать пайтон?

py.user.next
liuyr879
2. Хватает ли его курсов по пайтону + Лутц+ книга грокаем алгоритмы, (практика. лекции) что бы уже ориентировать себя на джуна?
2)
Я думаю, нет.
А к каким критериям стремиться, и какие планочки ставить перед собой? Что знать нужно и уметь что бы сказать- я джун, я мидл, я сеньор?
3
py.user.next
Но при этом можно, конечно, и без него обойтись полностью и всё так же узнать правильно и успешно из других источников, которые бесплатные.
Что за они?)
doza_and
liuyr879
Лучше закончить Пайтон и перейти сразу на изучение С? Или же перепрыгивать сейчас на С и потом заканчивать пайтон?
А наверное без разницы. Программирование это культура. Если глубоко погрузитесь то оно вас в любом случае не минет.
Начнете в питоне смотреть как делать компилируемые расширения и тут… надо учить C.
py.user.next
liuyr879
Лучше закончить Пайтон и перейти сразу на изучение С? Или же перепрыгивать сейчас на С и потом заканчивать пайтон?
Три года ты будешь входить в программирование только. Через три года у тебя будет такое ощущение “я вошёл вот, теперь можно начинать учиться”. Что ты будешь изучать за эти три года, значения особого не имеет, потому что у тебя будет такая солянка, в которой ты будешь знать всего понемногу. Помногу ты знать не сможешь, потому что для знания большого объёма чего-то, нужно проходить его планомерно по уровням сложности, так как оно, как правило, структурное и одно опирается на другое, как в математике какой-нибудь - если ты не знаешь, что такое переменная, то ты не научишься решать уравнения, потому что в них переменные. Но к этому моменту ты будешь понимать, что есть хорошие книжки, а есть дерьмо всякое. И по обложке там никак не скажешь, хорошая книжка или полдер (полное дерьмо). То есть тебе к этому моменту нужно будет прочитать как те, так и другие и по эффекту от них в повышении своих знаний и умений понять, в чём отличие качества этих книг друг от друга. И таким образом после входа в программирование ты сможешь собрать себе качественные материалы, у тебя сформируются собственные критерии (не кто-то там тебе будет говорить, а ты сам будешь знать). То же самое касается приоритетов по языкам. Ты сам будешь понимать, какие языки тебе нужны, а какие тебе нафиг не сдались.

Вот AD0DE412 спросил, какие бы критерии джуна я бы использовал. Я бы поставил его к доске, дал бы ему фломастер одну штуку, губку-тряпочку и сказал “На ленте машины Тьюринга расположены два числа через пробел. Записать справа от этих чисел через пробел произведение этих чисел, возведённое в квадрат. Запись выполнять с помощью системы правил для машины Тьюринга. Вперёд.”
И тут он бы мне сказал “ааа….. а где тут Python можно запустить, не подскажете?”, а я бы ему ответил “запиши два трёхзначных числа через пробел, укажи, где каретка находится, и приступай к записи правил”.

Вот по этой фигне я и пойму, какие коды ты пишешь на питоне или будешь писать, если подождать, когда ты питон изучишь.

liuyr879
А к каким критериям стремиться, и какие планочки ставить перед собой?
Вузовские. Вот что в вузах требуют на зачётах и экзаменах, то ты и должен выполнять, а лучше ещё больше, чем там требуют, потому что в реале потом понадобится всё. И когда ты чего-то не знаешь, как вот этот мальчик у доски с фломастером, это очень сильно ощущается, ты чувствуешь проигрыш. Ты делаешь программу и 90% из неё сделал, а вот эти 10% оставшиеся до полного успеха ты не знаешь, потому что решил не изучать её тогда-то тогда-то, потому что она слишком сложной была (она - это всякая фигня типа машины Тьюринга, деревьев со звёздочкой, сортировки какой-нибудь фигнёй по какой-нибудь фигне, какие-нибудь красно-чёрные деревья и прочие вещи, там хватает всего). У тебя возник пробел и из-за одного пробела ты эту программу не можешь сделать, тебе её придётся всю выкинуть, потому что эту фигню нужно было изучать тогда, так как сейчас на неё времени нет, она за один день нифига не изучается.

liuyr879
Что за они?)
Есть бесплатные материалы или о-о-очень дешёвые. В частности у меня так получилось с K&R2 - это центальная книга по C от создателя C и другого мастера, который буква k в названии программы awk. Так вот я её купил на Ozon'е за 250 рублей, потом она шла мне по почте два месяца и за доставку я заплатил ещё 250 рублей. Это ничто вообще в плане финансов. В то время у нас в городе в книжном магазине книжки по Linux с картинками продавались по 1500 рублей за штуку. Причём это была нормальная цена за большую книжку с картинками. Понимаешь, да, что я почти даром получил K&R2. А это центральная книжка в мире, переведённая на ~30 языков, про неё даже в википедии написано, и когда-то эта книжка фактически описывала стандарт языка C, который ещё не был стандартизован. При этом книжка про Linux с картинками, болшая и толстая, за 1500 рублей, мне её даже листать не надо, чтобы понимать, что это дерьмо какое-то очередное, расчитанное своими размерами завлечь покупателей - коммерческая хрень.

Есть и по питону бесплатные материалы, и по другим языкам. Вот я sed выучил вообще бесплатно, я просто info sed набрал в консоли и там очень подробно про весь sed написано и я его весь выучил, хотя до этого он мне казался непостижимым, а man sed мне казался слишком сложным для понимания. Но man sed и не учит ничему, он просто перечисляет возможности sed'а. А вот в info sed объясняется всё и примеры есть, которые можно запустить и проверить. Так он оказался довольно простым, а теперь я перешёл вообще на awk.

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


tags: learning
AD0DE412
py.user.next спасибо за похвальбу … и за порицание

и эта … поаккуратней там с бесконечностью (машина Тюринга)
ведь если случится рекурсия и встанет проблема с остановкой …
то может случиться такая бага
согласно этому человеку
как вот тут
py.user.next
AD0DE412
спасибо за похвальбу … и за порицание
Да это не порицание. Есть такой предмет просто “Теория алгоритмов” и там как раз в тетради всё и пишешь, а потом зачёт сдаёшь.

Вот я реализовывал алгоритм AES. Он не сложный. Я его реализовал. Но мне пришлось изучать для этого, что такое операция деления многочленов над полем Галуа, потому что в этом алгоритме используется эта штука и без неё ты его не реализуешь. То есть ты не поймёшь этот алгоритм, не имея вузовской подготовки. А если ты думаешь, что реальная работа заключается в выводе Hello world на экран, то ты глубоко заблуждаешься.

Вот ты сможешь написать светофор? Запускаешь программу, там горит красный свет, потом он начинает мигать, потом загорается жёлтый свет, потом загорается зелёный свет, потом он начинает мигать, потом загорается жёлтый свет, потом загорается красный свет, потом он начинает мигать, ну и так далее.

Вот эту всю фигню ты должен был в вузе проходить, а ты стоишь у доски и что-то мямлишь только “я курсы проходил от какой-нибудь там GeekBrains/SkillBox/хренбрейнс/хренбокс и мне там сказали, что я теперь джун, даже бумажку дали, в которой это написано”. А мне-то что до этого? Вот ты стоишь и не можешь сделать нихрена. Вот он факт твоих умений.
PEHDOM
liuyr879
День добрый, хотелось бы увидеть реальные задачи и проблемы с которыми сталкиваются ежедневно разработчики на Python, подойдут любыем примеры.)
Я не настоящий “разработчик на Python”, но вот недавно встал вопрос обеспечить “коробку на стену” размером 12х6х4см умеющую по sip c ПК сязываться (размеры такие потому что коробка сама есть, но там какая-то фигня аналоговая стоит, причем звук пока дойдет до диспетчера раза 4 переобразуеться из анаога в цифру и наоборот, вот встал вопрос перевести все на цифру) . Для прототипа купили одноплатник,установили на него линукс, В КБ к нему плату спаяли на которой преобразователь питания 24V->5V(потому как 24В там уже есть, а 220 нету, а одноплатник от 5В работает), усилитель динамика и микрофона, разьемы для динамика-микрофона-кнопки вызова.
Написал скрипт который при включении “коробки”, запускается как демон, запускает консольный сип-клиент и смотрит, если кнопку нажали то идет вызов на заранее прописаный в конфиге номер, если еще раз нажали, вызов прекращается, если коробка вышла на связь с сервером то индикатор на кнопке мигает по одному, если связи нет по другому, если идет разговор по третьему. “Коробка” должна выдавать разные звуковые сообщения когда кнопку нажали:если идет вызов, если нет связи, если свзяь есть но диспетчер занят(на в смысле обедает, а в смысле линия занята), если диспетчер обедает(никто не берет трубку). А если диспетчер звонит на “коробку” то на коробке трубка должна автоматически подниматься..
ХЗ как оно будет дальше, сейчас прототип испытывают, если одобрят, то может потом это все “настоящие програмисты” на Си перепишут, а может так в прод пойдет.
liuyr879
doza_and
Понял принял. Спасиюо)
liuyr879
py.user.next
Спасибо!!!)
liuyr879
PEHDOM
Благодарю)
liuyr879
py.user.next
Например Теория алгоритмов понял принял.) А что ещё параллельно посоветуете учить?)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB