Re[2]: Кому-нибудь требуется начинающий питонист в подмастерья?
От: Lazytech Ниоткуда  
Дата: 22.05.19 04:05
Оценка:
Здравствуйте, wamaco, Вы писали:

W>Ошибка уже в самом начале. Брось Питон!!! Питон не правильно развивает.

W>Уже есть статистика по горе программистам-питонистам кривых ручек на всю жизнь.
W>Не буду вдоваться в подробности. Изучай C или Java, съэкономишь и время и силы.

Заинтриговали.
Re[6]: Кому-нибудь требуется начинающий питонист в подмастер
От: Slawa Ms Россия http://www.SlawaMs.com
Дата: 22.05.19 08:25
Оценка:
Здравствуйте, Michael, Вы писали:
M>1) питон всегда требуется в комбинации с чем-то и этих комбинаций много, кому то нужно python+flask+mysql, python+flask+mongodb, python+django+aws и т.п.
M>то есть вам нужно будет знать как минимум ещё sql и скорей всего ещё nosql.

Меня интересует связка Python + SQL. Сильно ли отличается работа с mySQL и MongoDb? И где больше задач/денег?
"Can You Remember, Remember My Name." (c) DP
Re: Кому-нибудь требуется начинающий питонист в подмастерья?
От: sergey2b ЮАР  
Дата: 22.05.19 16:22
Оценка:
Здравствуйте, Lazytech, Вы писали:

есть еще вариант прочесть и выполнить все задачи из
керниган и ритчи язык программирования си

я могу дать решения, если решишь их порешать
книжка систематизированно дает основы, с примерами и задачами
Re[2]: Кому-нибудь требуется начинающий питонист в подмастерья?
От: Lazytech Ниоткуда  
Дата: 22.05.19 16:39
Оценка: +2
Здравствуйте, sergey2b, Вы писали:

S>есть еще вариант прочесть и выполнить все задачи из

S>керниган и ритчи язык программирования си

S>я могу дать решения, если решишь их порешать

S>книжка систематизированно дает основы, с примерами и задачами

Спасибо, я бы все-таки предпочел для начала изучить более современный язык. Пока смотрю в сторону JavaScript. Возможно, когда-нибудь освою и C, если понадобится.
Re[3]: Кому-нибудь требуется начинающий питонист в подмастерья?
От: sergey2b ЮАР  
Дата: 22.05.19 19:00
Оценка:
Здравствуйте, Lazytech, Вы писали:

L>Спасибо, я бы все-таки предпочел для начала изучить более современный язык. Пока смотрю в сторону JavaScript. Возможно, когда-нибудь освою и C, если понадобится.


у этой книги есть один плюс
она дает основы и задачи по каждой главе, таким образом к ее окончанию ты умеешь программировать, в книги 200 страниц

а какая книжка по Python тебе понравилась, у меня на следующей недели собеседование а я на Python не писал лет 7
Re[4]: Кому-нибудь требуется начинающий питонист в подмастерья?
От: Lazytech Ниоткуда  
Дата: 23.05.19 03:50
Оценка: 13 (2)
Здравствуйте, sergey2b, Вы писали:

S>у этой книги есть один плюс

S>она дает основы и задачи по каждой главе, таким образом к ее окончанию ты умеешь программировать, в книги 200 страниц

Я уже умею программировать, только не на C, а на Python.

S>а какая книжка по Python тебе понравилась, у меня на следующей недели собеседование а я на Python не писал лет 7


Think Python 2nd Edition by Allen B. Downey

Также порекомендую эти лекции:
2017-2018 Алгоритмы и структуры данных на Python 3
Re[5]: Кому-нибудь требуется начинающий питонист в подмастер
От: VladCore  
Дата: 23.05.19 13:55
Оценка: 12 (1)
Здравствуйте, Lazytech, Вы писали:

L>Здравствуйте, Anton Batenev, Вы писали:


AB>>ИМХО, ты выбрал не совсем тот язык для старта. Тот питон, который лет 10 назад рекомендовался как язык для начинающих, и современный питон с его экосистемой — это два разных языка. Плюс за время своего существования он успел обзавестись некоторым количеством "исторически сложившихся недоразумений" (aka legacy), которые не способствуют улучшению восприятия.


L>Я осваиваю Python 3.x, и «исторически сложившихся недоразумений» пока не заметил. Возможно, имеются в виду какие-то особенности синтаксиса, позаимствованные из языка C ради большего удобства использования его библиотек?


Я тоже первым делом подумал почему Питон?

Исторически питон любят за GPGPU интерграцию. Это все что я знаю про питон.
Что нужно знать когда идет выбор языка это
1) как на нем реализованы алгоритмы и структуры данных. Т.е. помимо языка надо эти две вещи учить.
2) Есть для него клёвый Unit-Test Runner?
3) Есть ли гайды которые приятно читать
4) Насколько просто на нем игтерируется платформа — смартфоны, http-сервер, доступ к БД.

Последний выриант легко гуглится — https://docs.python-guide.org/scenarios/db/
И тут как раз все плохо — очень много реализаций и есть большой шанс что новичек выберет не тот framework. Может это неофициальный гайд, тогда простительно.

В пику питону В .NET Core такой проблемы с БД нет — там Entity Framework рулит и если ты его начнеш например учить и использовать в pet-проекте, то это в люьом случае тебе пригодится даже если ты БД и доступ к БД не будеш в основном проектировать.

По четвертому пункту посоветую программирование под iOS. Язык все равно какой — хоть Swift хоть ObjC. По своему опыту ты можеш начинать кодить сразу как прочитал очередную главу.
Re[6]: Кому-нибудь требуется начинающий питонист в подмастер
От: Lazytech Ниоткуда  
Дата: 23.05.19 14:08
Оценка:
Здравствуйте, VladCore, Вы писали:

VC>Я тоже первым делом подумал почему Питон?


Наверное, потому, что он на слуху как язык, который относительно просто освоить. Ну, как язык, которым в свое время был Basic.

VC>Исторически питон любят за GPGPU интерграцию. Это все что я знаю про питон.


Надо же, не знал.

VC>Что нужно знать когда идет выбор языка это

VC>1) как на нем реализованы алгоритмы и структуры данных. Т.е. помимо языка надо эти две вещи учить.

Как же, учу.

VC>2) Есть для него клёвый Unit-Test Runner?


Есть модуль unittest, которым я еще ни разу не пользовался.

VC>3) Есть ли гайды которые приятно читать


Полным полно.

VC>4) Насколько просто на нем игтерируется платформа — смартфоны, http-сервер, доступ к БД.


Не совсем понял, при чем тут смартфоны. Часом, не опечатка?

VC>Последний выриант легко гуглится — https://docs.python-guide.org/scenarios/db/

VC>И тут как раз все плохо — очень много реализаций и есть большой шанс что новичек выберет не тот framework. Может это неофициальный гайд, тогда простительно.

Ссылка на оф. сайт: 11. Data Persistence — Python 2.7.16 documentation
Правда, в БД я пока ни ухом ни рылом...

VC>В пику питону В .NET Core такой проблемы с БД нет — там Entity Framework рулит и если ты его начнеш например учить и использовать в pet-проекте, то это в люьом случае тебе пригодится даже если ты БД и доступ к БД не будеш в основном проектировать.


VC>По четвертому пункту посоветую программирование под iOS. Язык все равно какой — хоть Swift хоть ObjC. По своему опыту ты можеш начинать кодить сразу как прочитал очередную главу.


Боюсь, у меня пока недостаточно опыта для того, чтобы программировать под мобильные устройства...
Re[7]: Кому-нибудь требуется начинающий питонист в подмастер
От: Michael  
Дата: 24.05.19 06:08
Оценка:
Здравствуйте, Slawa Ms, Вы писали:

SM>Здравствуйте, Michael, Вы писали:

M>>1) питон всегда требуется в комбинации с чем-то и этих комбинаций много, кому то нужно python+flask+mysql, python+flask+mongodb, python+django+aws и т.п.
M>>то есть вам нужно будет знать как минимум ещё sql и скорей всего ещё nosql.

SM>Меня интересует связка Python + SQL. Сильно ли отличается работа с mySQL и MongoDb? И где больше задач/денег?


отличий много (гуглим "sql vs nosql").
банальное — всё зависит от задачи. упрощённо: бухгалтерскую хрень где нужно гибко агрегировать, подсчитывать — на sql, медицинскую хрень — nosql.
чисто по удобству старта нового проекта: mongodb удобней, не надо сидеть описывать структуру и т.п.
Re[8]: Кому-нибудь требуется начинающий питонист в подмастер
От: Slawa Ms Россия http://www.SlawaMs.com
Дата: 24.05.19 07:40
Оценка:
Здравствуйте, Michael, Вы писали:
Спасибо за ответ.
M>отличий много (гуглим "sql vs nosql").
Это я сразу погуглил. Вопрос, скорее в другом. Я немножко понимаю SQL (SELECT, INNER JOIN и др.). Насколько сильно отличаются запросы в SQL и в noSQL, или общие понятия близки и можно все изучать одновременно.
"Can You Remember, Remember My Name." (c) DP
Re[9]: Кому-нибудь требуется начинающий питонист в подмастер
От: Michael  
Дата: 24.05.19 08:50
Оценка:
Здравствуйте, Slawa Ms, Вы писали:

SM>Здравствуйте, Michael, Вы писали:

SM>Спасибо за ответ.
M>>отличий много (гуглим "sql vs nosql").
SM>Это я сразу погуглил. Вопрос, скорее в другом. Я немножко понимаю SQL (SELECT, INNER JOIN и др.). Насколько сильно отличаются запросы в SQL и в noSQL, или общие понятия близки и можно все изучать одновременно.

сильно отличаются.

1) теже join'ы в nosql делаются далеко не в одну строку (скорей всего нужно будет писать цикл(ы) именно на языке основного приложения (python, c# etc ) ).

2) денормализация (дублёж данных) считается нормальной практикой (в том числе чтобы облегчить пункт 1) ). тогда как в sql пытаются всё нормализовать.
Re[10]: Кому-нибудь требуется начинающий питонист в подмастер
От: Slawa Ms Россия http://www.SlawaMs.com
Дата: 24.05.19 10:15
Оценка:
Здравствуйте, Michael, Вы писали:
M>1) теже join'ы в nosql делаются далеко не в одну строку (скорей всего нужно будет писать цикл(ы) именно на языке основного приложения (python, c# etc ) ).
M>2) денормализация (дублёж данных) считается нормальной практикой (в том числе чтобы облегчить пункт 1) ). тогда как в sql пытаются всё нормализовать.
Понятно, изучать "про запас" не получится. Лучше на конкретном проекте, по мере появления задач.
"Can You Remember, Remember My Name." (c) DP
Re[11]: Кому-нибудь требуется начинающий питонист в подмастер
От: Michael  
Дата: 24.05.19 19:17
Оценка:
Здравствуйте, Slawa Ms, Вы писали:

SM>Здравствуйте, Michael, Вы писали:

M>>1) теже join'ы в nosql делаются далеко не в одну строку (скорей всего нужно будет писать цикл(ы) именно на языке основного приложения (python, c# etc ) ).
M>>2) денормализация (дублёж данных) считается нормальной практикой (в том числе чтобы облегчить пункт 1) ). тогда как в sql пытаются всё нормализовать.
SM>Понятно, изучать "про запас" не получится. Лучше на конкретном проекте, по мере появления задач.

ну вообщем да. тем более каждая конкретная nosql имеет свой язык запросов. какие-то попытки стандартизировать и сделать подобие SQL кажется ничем внятным не закончились.

для ТС вдогонку:
— питон это бекенд. как правило бекенд это очень критично и ньюбов туда не пускают.
— на javascript можно делать какие-то утилиты типа дизайнер уровней и т.п. то есть начать с некритичных вещей.
// вот пример редактора сцен: http://www.justbroadcaster.com/sc_customizer_v3/index.html
Re[3]: Кому-нибудь требуется начинающий питонист в подмастер
От: Lazytech Ниоткуда  
Дата: 02.06.19 12:22
Оценка:
Спасибо всем, кто посоветовал освоить другой язык программирования. Уже неделю грызу JavaScript и решаю простенькие тренировочные задачи, то и дело заглядывая на сайты вроде StackOverflow.
  Образец кода JavaScript...
/**
 * @param {number[]} A
 * @param {number[][]} queries
 * @return {number[]}
 */
var sumEvenAfterQueries = function(A, queries) {
    var n = A.length;
    var B = new Array(n);
    var sumOfEvens = 0;
    var idx;
    var val;
    
    for (var i = 0; i < n; i++) {
        if (A[i] % 2 == 0) {
            sumOfEvens += A[i];                    
        }        
    }    
    
    for (var i = 0; i < n; i++) {
        val = queries[i][0];
        idx = queries[i][1];
        
        if (A[idx] % 2 == 0) {
            sumOfEvens -= A[idx];            
        }
        
        A[idx] += val;
        
        if (A[idx] % 2 == 0) {
            sumOfEvens += A[idx];            
        }
        
        B[i] = sumOfEvens;          
    }
    
    return B;
};

  P.S. Еще два образца кода JavaScript...
DRY:
var numRookCaptures = function(board) {
    var r, c;
    var row, col;
    
    rook_search:
    for (r = 0; r < 8; r++) {
        for (c = 0; c < 8; c++) {
            if (board[r][c] == 'R') {
                row = r;
                col = c;
                break rook_search;
            }
        }
    }
    
    var captures = 0;
    
    function oneCapture(rStart, cStart, rStep, cStep) {
        for (r = rStart, c = cStart; ; r += rStep, c += cStep) {
            if (!board[r] || !board[r][c]) {
                return 0;            
            } else if (board[r][c] == 'p') {
                return 1;                
            } else if (board[r][c] != '.') {
                return 0;
            }
        }
    }
    
    captures += oneCapture(row-1, col, -1, 0);
    captures += oneCapture(row+1, col, 1, 0);
    captures += oneCapture(row, col-1, 0, -1);
    captures += oneCapture(row, col+1, 0, 1);
    
    return captures;
};

Runtime: 48 ms, faster than 96.87% of JavaScript online submissions for Available Captures for Rook.
Memory Usage: 33.8 MB, less than 45.44% of JavaScript online submissions for Available Captures for Rook.

WET:
var numRookCaptures = function(board) {
    var r, c;
    var row, col;
    
    rook_search: for (r = 0; r < 8; r++) {
        for (c = 0; c < 8; c++) {
            if (board[r][c] == 'R') {
                row = r;
                col = c;
                break rook_search;
            }
        }
    }
    
    var captures = 0;
    
    if (row > 0) {
        for (var r = row - 1; r > 0; r--) {
            if (board[r][col] == 'p') {
                captures++;
                break;
            } else if (board[r][col] != '.') {
                break;
            }
        }
    }        

    if (row < 7) {
        for (var r = row + 1; r < 8; r++) {
            if (board[r][col] == 'p') {
                captures++;
                break;
            } else if (board[r][col] != '.') {
                break;
            }
        }        
    }

    if (col > 0) {        
        for (var c = col - 1; c > 0; c--) {
            if (board[row][c] == 'p') {
                captures++;
                break;
            } else if (board[row][c] != '.') {
                break;
            }
        }
    }

    if (col < 7) {
        for (c = col + 1; c < 8; c++) {
            if (board[row][c] == 'p') {
                captures++;
                break;
            } else if (board[row][c] != '.') {
                break;
            }
        }
    }
    
    return captures;
};

Runtime: 60 ms, faster than 29.51% of JavaScript online submissions for Available Captures for Rook.
Memory Usage: 34 MB, less than 7.38% of JavaScript online submissions for Available Captures for Rook.

Оба образца являются решениями этой задачи:
Available Captures for Rook – LeetCode

Как нетрудно заметить, первый образец содержит гораздо меньше кода, чем второй.
Отредактировано 03.06.2019 5:12 Lazytech . Предыдущая версия .
Re[4]: Кому-нибудь требуется начинающий питонист в подмастер
От: Michael  
Дата: 12.06.19 15:58
Оценка:
Здравствуйте, Lazytech, Вы писали:


L>Спасибо всем, кто посоветовал освоить другой язык программирования. Уже неделю грызу JavaScript и решаю простенькие тренировочные задачи, то и дело заглядывая на сайты вроде StackOverflow.


если есть желание взяться за маленькие но реальные задачи — пишите (html(bootstrap),vue.js).
Re[5]: Кому-нибудь требуется начинающий питонист в подмастер
От: Lazytech Ниоткуда  
Дата: 12.06.19 16:21
Оценка:
Здравствуйте, Michael, Вы писали:

M>если есть желание взяться за маленькие но реальные задачи — пишите (html(bootstrap),vue.js).


Буду рад попробовать, но должен предупредить, что не знаю ни bootstrap, ни vue.js, ни какие-либо другие веб-технологии. Пока что продолжаю грызть JavaScript и не вполне уверен, что полученных знаний хватит для решения реальных задач. Говорю так потому, что у меня уже был печальный опыт с Python, когда я даже не знал, какие вопросы задавать наставнику для того, чтобы разобраться в теме.
Re[6]: Кому-нибудь требуется начинающий питонист в подмастер
От: Michael  
Дата: 12.06.19 17:20
Оценка: 12 (1)
Здравствуйте, Lazytech, Вы писали:

L>Здравствуйте, Michael, Вы писали:


M>>если есть желание взяться за маленькие но реальные задачи — пишите (html(bootstrap),vue.js).


L>Буду рад попробовать, но должен предупредить, что не знаю ни bootstrap, ни vue.js, ни какие-либо другие веб-технологии. Пока что продолжаю грызть JavaScript и не вполне уверен, что полученных знаний хватит для решения реальных задач. Говорю так потому, что у меня уже был печальный опыт с Python, когда я даже не знал, какие вопросы задавать наставнику для того, чтобы разобраться в теме.



я так подозреваю что ни один из знакомых мне фронтендщиков не сможет написать нахождение НОД. Потому что не надо это никому кроме преподов.
вообщем вот вам задача простая, попробуйте сделать (и напишите лучше в личку).

https://docs.google.com/document/d/1uZ145tyr9td1e6pIlhCgwMsZLkOqR82020I_QOHH4F0/edit?usp=sharing
Re[7]: Кому-нибудь требуется начинающий питонист в подмастер
От: Lazytech Ниоткуда  
Дата: 13.06.19 04:07
Оценка:
Здравствуйте, Michael, Вы писали:

M>я так подозреваю что ни один из знакомых мне фронтендщиков не сможет написать нахождение НОД. Потому что не надо это никому кроме преподов.

M>вообщем вот вам задача простая, попробуйте сделать (и напишите лучше в личку).

M>https://docs.google.com/document/d/1uZ145tyr9td1e6pIlhCgwMsZLkOqR82020I_QOHH4F0/edit?usp=sharing


Увы, задачи по ссылке сразу поставили меня в тупик. Срочно засел за изучение HTML и CSS, чтобы затем перейти к освоению bootstrap и Vue.js...
Re[8]: Кому-нибудь требуется начинающий питонист в подмастер
От: Michael  
Дата: 13.06.19 07:17
Оценка:
Здравствуйте, Lazytech, Вы писали:

L>Здравствуйте, Michael, Вы писали:


M>>я так подозреваю что ни один из знакомых мне фронтендщиков не сможет написать нахождение НОД. Потому что не надо это никому кроме преподов.

M>>вообщем вот вам задача простая, попробуйте сделать (и напишите лучше в личку).

M>>https://docs.google.com/document/d/1uZ145tyr9td1e6pIlhCgwMsZLkOqR82020I_QOHH4F0/edit?usp=sharing


L>Увы, задачи по ссылке сразу поставили меня в тупик. Срочно засел за изучение HTML и CSS, чтобы затем перейти к освоению bootstrap и Vue.js...


я думаю решив её вы уже будете иметь представление о важных аспектах фронтенда (манипуляции dom, управление состоянием).
если хотите комментарии по коду то заведите паблик-репу на гитхабе, я по возможности смогу посмотреть.

//я там в файле контакты свои оставил
Re[9]: Кому-нибудь требуется начинающий питонист в подмастер
От: Lazytech Ниоткуда  
Дата: 13.06.19 07:23
Оценка:
Здравствуйте, Michael, Вы писали:

M>я думаю решив её вы уже будете иметь представление о важных аспектах фронтенда (манипуляции dom, управление состоянием).

M>если хотите комментарии по коду то заведите паблик-репу на гитхабе, я по возможности смогу посмотреть.

Я понял.

M>//я там в файле контакты свои оставил


Спасибо.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.