

Ask HN: Python for web development. What next? - adrianmn

I have taken CS classes about 10 y ago during high school. I have now decided to learn Python.<p>I am taking the Coursera Programming Fundamentals(very basic), MITx - Introduction to Computer Science and Programming and I also did the Google Academy Python class.<p>I am learning Python mainly for web developement and maybe some machine learning in the future.<p>Do you have any suggestions for more material(I prefer video to books but any would do) to study, tailored to web development? Am I too early in the learning process to jump on a web framework and if not what resources should I look at?<p>If you are asking why Python and not Ruby is because Python has something Ruby doesn't: Nick Parlante as a teacher :)<p>Nick if you are reading this or anyone can pass it to him it, would be awesome to have you as a Python mentor.<p>Of course I would highly appreciate any help from any skilled Python developer willing to help me or mentor me.<p>Thanks,
Adrian
======
sejje
Jump on a framework (Django). There's plenty of videos out there, but really
the documentation / demo app is pretty nice.

Warning: learning a framework is a lot like learning a language. You have to
just memorize a lot of syntax and/or "names" of predefined functions. Where to
put stuff, how to do x or y.

It's fun, though. Good luck!

------
sk2code
Adrian, I am also following the same path as you have mentioned. I am
currently enrolled in MITx - 6.00x online course and I too would like to use
Python for web development. If you are looking for more meaningful material on
Python I would suggest visiting the (<http://www.realpython.com/>) website and
download the e-book ($14). This book is full of real time python usage and it
does cover web-development as well. Not sure whether you've heard about it or
not but the idea of RealPython was kinda hit on Kickstarter few months back.

It looks like our goal is somewhat similar and if you want to discuss more
about learning Python then feel free to drop me an email (see email id in
profile).

Good Luck learning Python.

~~~
adrianmn
I did not hear about realpython so thanks for the link.

The email is missing from your profile(only the about me field is public). I
have added my email in my profile so you can contact me.

~~~
sk2code
Will do. Thanks.

------
AUmrysh
Assuming you know web stuff already (HTML, CSS, maybe some JS), you could
start working with something like Django or Flask. Django has a lot of stuff
built in, where Flask is on the other end of the spectrum. If you don't know
at least the basics of HTML and CSS you should check out the comment by
carlsednaoui[0].

The Machine Learning uses are pretty interesting too. I'd be curious to see
what libraries are recommended for that. PyBrain, maybe?

0: <http://news.ycombinator.com/item?id=4668944>

~~~
adrianmn
I know html, css and some javascript.

So what are the pros and cons of starting Django or Flask? Maybe I should make
this as a separate HN question.

------
elssar
The Udacity CS253 course is geared towards making web applications, was taught
by Steve Huffman, co-founder of Reddit -
<http://www.udacity.com/overview/Course/cs253/>

Other than that, pick a web framework and start going through the examples in
the documentation.

~~~
adrianmn
Thanks for the suggestion - looks like what I am after and I can probably jump
on a web framework after I do this one. I only knew about Udacity this one:
[http://www.udacity.com/overview/Course/cs101/CourseRev/apr20...](http://www.udacity.com/overview/Course/cs101/CourseRev/apr2012)
and I wanted to skip it as being another introductory course.

------
carlsednaoui
hey adrianmn, have you thought about doing some front end stuff (since you
want to learn web dev)?

In any case, here are couple resources I'd recommend:

<http://www.udacity.com/overview/Course/cs262/>

[http://channel9.msdn.com/Series/Javascript-Fundamentals-
Deve...](http://channel9.msdn.com/Series/Javascript-Fundamentals-Development-
for-Absolute-Beginners)

<http://learn.appendto.com/lessons>

You can find out more at <http://www.coursebacon.com/> (disclaimer: this is a
side project of mine)

Good luck!

------
codegeek
start with a python micro-framework. I highly recommend flask
(<http://flask.pocoo.org>). Go through their exercise of creating a simple
blog. Then start looking at their extensions which are also awesome.

~~~
adrianmn
I have seen this advice a lot while I googled for python web frameworks.
Wouldn't be more complicated for someone new to frameworks to learn Flask as
is not an all in one and I will have to learn few more things: Werkzeug, Jinja
2 ...?

~~~
codegeek
For me, that actually worked better. If you start with a fully loaded
framework such as Django (even though it is an awesome framework too), I found
it difficult to fully understand whats going on in the background. For
example, I personally don't like all batteries and prefer to only have the
core web functions out of the box. Flask works for me because it just about
gives me enough and not much or too less. I don't want to necessarily build my
own WSGI layer but I do want control over how I create/save my user details.

Also you don;'t really need to learn Jinja etc. separately. Flask does enough
to get you started. For example, I can easily build routing using app.route()
decorator in flask which in the back is using Werkjeug. I honestly don't know
much about werkjeug itself (yet) but that did not stop me from building a
fully functional web app. Of course, if you really want to get in the details,
you learn the individual libraries that gives you flexibility to build a real
work production app. YMMV

~~~
adrianmn
Did you find any good videos about Flask while learning? I see in your profile
that you are/were also in the learning process. Would you like to connect on
Skype or via email?

~~~
codegeek
sure I can give you some pointers. My contact info is in my profile (just
updated)

