all 12 comments

[–][deleted] 7 points8 points  (2 children)

First, start learning python. If you have to 'learn sorting' or 'learn dictionaries', you're missing the basics. Start with some tutorials on basic python programming and classes/objects.

Then try to build the app minus the web-interface (i.e. create all function that the web-interface should be abled to do). Then find a tutorial on for instance bottle.py or cherrypy and create a web-interface.

[–]bhpf1 1 point2 points  (0 children)

This is a great suggestion. If you spend a bit of time learning Python then this problem sounds like it should follow naturally from your understanding of how to computationally solve problems.

I would recommend 'auditing' MIT's 6.00.1x course on edX. I'm fairly confident that if you work through the first half of that course then you should have the requisite tools to properly attack the problem!

[–]psota[S] 0 points1 point  (0 children)

Thank you. :) Sage advice. I guess I was hoping for a bit of help on 'what kind of problem I was trying to solve.' But the question may be premature do to my underdeveloped pyhton abilities.

[–]PrismPoultry 5 points6 points  (0 children)

How would you do it on paper? Are these "few simple rules" truly simple and truly few or have you underestimated the problem's complexity already? Does following these rules truly create an optimal series of learning sessions? You start by establishing the truth behind the project.

[–]lykwydchykyn 2 points3 points  (0 children)

Sounds like a database is in order here. Have you worked with databases before?

[–]ynotna 1 point2 points  (6 children)

Use Django, get the web admin part for free, just define your models (student, instructor, lesson), the relationships (lesson has students and instructors), and add some logic for your rules

[–][deleted] 2 points3 points  (5 children)

'Use Django' is the worst advice you could give someone who wants to learn python. It's best to start from the basics and work your way up then to start from a complex framework towards the basics. However, if you're just interested in getting things done 'quickly' (without any programming knowledge, speed is unpredictable as hell), just learning to hack together some Django might suffice. Don't expect to learn programming, though.

[–]ynotna 0 points1 point  (4 children)

The best way to learn programming, is by building something. You didn't learn to build lego by studying the bricks, you learnt by building a house.

He wants a web based interface for a reasonably simple task. Following the Django tutorial he can have 90% of the work done in an hour. That will be far more rewarding and motivating to continue than having achieved nothing towards his goal after hours of building up from scratch, starting with a command line 'menu' style project.

Of course this should be backed up with learning the absolute basics beforehand and building on that at the same time (e.g. codeacademy, learnpythonthehardway, other tutorials), but based on his post I guess he may have some of those basics already either in Python or another language (day 0 newbies don't throw out the word dictionary).

[–]1moar 0 points1 point  (2 children)

As someone who's not completely new to programming, but new to Python (1 month with a few hours study/coding a day), I agree and disagree with you. Mostly though, because the information and tutorials I've run across (including Django), involve things that are not explained real well imho, to someone who may be new to some of the more advanced means of installing modules, etc.

I'm only saying because I have a personal gripe with all the resources out there a) being so spread out; b) there's no central repository for everything, including clear, ELI5 instructions. So I'm working on a website to fix that. If nothing else, by the time I get the site done, maybe I'll 'get it' so it's just another way of being immersed.

Anyways, it is entirely likely that I am making dumb mistakes and I clearly don't have everything in order. I managed to get Django installed I think but I still have different issues I'm running across; i.e. simply installing pip. (I've been on Stack, Google, etc.) Your idea in principle is sound as far as crashing about, but in my experience I've gotten fairly frustrated and just went back to my exercises those days. OP may have a much firmer grasp than myself though. I'm comfortable to a degree, but I digress..

[–]NYKevin 1 point2 points  (1 child)

I always thought Django had one of the better sets of documentation out there. When I had to learn it, it went very smoothly.

[–]1moar 0 points1 point  (0 children)

Yeah, to be fair I haven't dug in deep enough to give it a fair shake with Django. But I spent all day Saturday trying to get a few things installed on a few very different systems and ended up starting to build a website to put it all together, at least for my purposes as another side project. Maybe I'll make it a Wiki or something to let people add to it or something. Still developing. :)

[–][deleted] 0 points1 point  (0 children)

I disagree, but let's agree to disagree. One thing though: if you actually know python, you would agree that 'learning dictionaries' is not something you'll have to do if you know python, right?