6 Replies - 490 Views - Last Post: 13 July 2011 - 12:05 PM

#1 melbish  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 2
  • Joined: 14-May 10

Is Python right for my idea?

Posted 13 July 2011 - 07:35 AM

I have an idea for an application that I want to develop for my company (I write curriculum for Latin teachers) - actually, I have a few ideas. But I've started doing some Python tutorials, and I'm just wondering if this is the right way to go.

I am working on writing an application that allows Latin teachers to generate customized worksheets for their classes - so they could go in & pick what textbook they were using, what chapter or topic (vocabulary, or a specific grammar topic), and then pick from a menu of formats - so just a basic idea would be - picking TextbookA, chapter 3, vocabulary - then the options for sections on the worksheet could be (a) illustrating the definitions of the Latin words (need to create a table with room in cells for students to draw, and pick words that could be drawn - not all are easy to draw); (B) give English word & student locates Latin word which is a synonym; © or an antonym; (d) given list of English words, write Latin equivalent, (e) etymology practice - give derivative, student finds root. So teacher could pick some or all, and the app will make an automatic answer key, provide option to save file. I'd have to have a way to put information in for each word - the Latin word, the English meaning, a list of English synonyms & antonyms for each word, and English derivatives. In later chapters, it becomes possible to add Latin synonyms & antonyms. I'd also like to find a way to put categories that words could belong to - so a section where students are directed to create 3 categories & find 4 words for each category from the list. And then expand this out so that teachers can choose a range of chapters, not just one at a time. And then have the option of recalling the worksheet & basing a quiz on it so that the format of the quiz would be identical to the worksheet, but the content can vary. For example, the synonyms - I'd put several per word so that in generating this section, you could actually create a totally different thing in terms of content, but based on the same set of Latin words.

I really hope I am being clear. I also want teachers to be able to input custom lists of words to use in a worksheet, or select from what's already stored in the dictionary or list. I sort of thought the dictionary feature would be ideal for this.

But, maybe I should be writing this in VBA as a sequence of macros? Then create an executable file from that or just make it an add-in?

I know I have to control a lot of data - ultimately I want this application to have versions for Latin 1 and 2, but each version will include the vocabulary & grammar topics for about 7 or 8 different textbooks. And, to make things more interesting, there is a divided approach to intro Latin textbooks - the reading method & the grammar/translation method. So if I do this for multiple textbooks, the program is going to have to identify each textbook with its method and offer a menu of options accordingly. I might start with just one textbook and then add onto it.

But here's my biggest question - can I write a program in Python that will generate a Word document with the formatting & fonts that I want? I'm still learning all this, and if there's a better way to approach developing this program, I'd love to know - I think Python is very interesting to learn, but I seem to be hitting my head against the wall because I want to find ways to practice using the skills I'm learning in each tutorial, and most of the tutorials I'm finding don't give much practice, or their exercises are really over my head (like the Google Python tutorial practice) and don't have answers (like Google).

I would be so grateful for some feedback about which environment I should develop this program in - which language would be best, and then even if that's not Python, where can I find some good exercises that will help me map the skills I'm learning onto specific problems. Hello world is not cutting it.

Is This A Good Question/Topic? 0
  • +

Replies To: Is Python right for my idea?

#2 melbish  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 2
  • Joined: 14-May 10

Re: Is Python right for my idea?

Posted 13 July 2011 - 07:46 AM

I have an idea for an application that I want to develop for my company (I write curriculum for Latin teachers) - actually, I have a few ideas. I've started doing some Python tutorials, and I've also started working with C++, but now I'm wondering which is the right way to go. Or if I should just be doing this with VBA in Word, since the final product is going to be a 1-2 page printable thing.

I am working on writing an application that allows Latin teachers to generate customized worksheets for their classes by selecting parameters from preset menus - so they could go in & pick what textbook they were using, what chapter or topic (vocabulary, or a specific grammar topic), and then pick from a menu of formats - so just a basic idea would be - picking TextbookA, chapter 3, vocabulary - then the options for sections on the worksheet could be (a) illustrating the definitions of the Latin words (need to create a table with room in cells for students to draw, and pick words that could be drawn - not all are easy to draw); ( give English word & student locates Latin word which is a synonym; or an antonym; (d) given list of English words, write Latin equivalent, (e) etymology practice - give derivative, student finds root. So teacher could pick some or all, and the app will make an automatic answer key, provide option to save file. I'd have to have a way to put information in for each word - the Latin word, the English meaning, a list of English synonyms & antonyms for each word, and English derivatives. In later chapters, it becomes possible to add Latin synonyms & antonyms. I'd also like to find a way to put categories that words could belong to - so a section where students are directed to create 3 categories & find 4 words for each category from the list. And then expand this out so that teachers can choose a range of chapters, not just one at a time. And then have the option of recalling the worksheet & basing a quiz on it so that the format of the quiz would be identical to the worksheet, but the content can vary. For example, the synonyms - I'd put several per word so that in generating this section, you could actually create a totally different thing in terms of content, but based on the same set of Latin words. Later, I also want to have a feature where the teacher can pick a grammar topic, independently of the textbook, and choose drill formats. Bypass the whole textbook selection thing.

I really hope I am being clear. I also want teachers to be able to input custom lists of words to use in a worksheet, or select the ones they want from what's already stored in the program. So this would give the teacher greater control over content, instead of just having the words be randomly chosen from the program's databank(s). There is also the question of using macrons (long marks over certain vowels) - some teachers swear by it; some don't care. But I would lose sales if I didn't have the macrons. And I want to have the databanks be able to be cumulative - so that teachers could either select words used in Chapter 5 alone, or from Chapters 1-5. Or 3-5.

But, maybe I should be writing this in VBA as a sequence of macros? Then create an executable file from that or just make it an add-in?

I know I have to control a lot of data - ultimately I want this application to have versions for Latin 1 and 2, but each version will include the vocabulary & grammar topics for about 7 or 8 different textbooks. And, to make things more interesting, there is a divided approach to intro Latin textbooks - the reading method & the grammar/translation method. So if I do this for multiple textbooks, the program is going to have to identify each textbook with its method and offer a menu of options accordingly. I might start with just one textbook and then add onto it.

But here's my biggest question - can I write a program in code that will generate a Word document with the formatting & fonts that I want? I'm still learning all this, and if there's a better way to approach developing this program, I'd love to know - I think Python is very interesting to learn, but I seem to be hitting my head against the wall because I want to find ways to practice using the skills I'm learning in each tutorial, and most of the tutorials I'm finding don't give much practice, or their exercises are really over my head (like the Google Python tutorial practice) and don't have answers (like Google). I've also started working with Java & C++, and really delving into macro programming in Word 2010.

I would be so grateful for some feedback about which environment I should develop this program in - which language would be best. And is there some way to match up a particular idea with the right language? Or once you learn Python or C++ or Java, that's what you work in? That doesn't seem right to me.
Was This Post Helpful? 0
  • +
  • -

#3 Brewer  Icon User is offline

  • Awesome
  • member icon

Reputation: 179
  • View blog
  • Posts: 1,044
  • Joined: 14-June 10

Re: Is Python right for my idea?

Posted 13 July 2011 - 08:17 AM

First off, there is no best language. There are only languages that are better at some things than others.

Secondly, don't worry about Google's Python course. That course is for people who already have programming experience and are looking to pick up Python. If you want to learn from the beginning then I recommend MIT - 6.00 Introduction to Computer Science and Programming. It provides 24 video lectures along with numerous problem sets that range from easy to hard, covering everything in between.

As for your idea, it doesn't seem too terribly difficult. I seem to recall seeing someone write a Python script that generated an entire Powerpoint (on how you can use Python to generate an entire Powerpoint, none the less!). I imagine you could do the same with with Microsoft Word or LibreOffice Writer.

I don't know that the language you choose here would make much difference, although Python is very good for making GUIs. Python is also a good first language, so if you're new to programming then I'd recommend using Python.
Was This Post Helpful? 0
  • +
  • -

#4 JackOfAllTrades  Icon User is offline

  • Saucy!
  • member icon

Reputation: 6110
  • View blog
  • Posts: 23,670
  • Joined: 23-August 08

Re: Is Python right for my idea?

Posted 13 July 2011 - 09:36 AM

Merged cross-posted topics into a single topic in Software Development.

Please don't cross-post topics; I realize it wasn't a verbatim copy/paste, but still...it's the same subject.
Was This Post Helpful? 0
  • +
  • -

#5 jon.kiparsky  Icon User is offline

  • Pancakes!
  • member icon


Reputation: 8029
  • View blog
  • Posts: 13,741
  • Joined: 19-March 11

Re: Is Python right for my idea?

Posted 13 July 2011 - 10:25 AM

Any time the question is "should I do this in VBA" the answer is no, so that part's taken care of.
Python is a fine language for getting stuff done. You should be aware that there have been non-backwards-compatible changes to Python since the MIT letures were recorded, so some of the examples won't work in the current Python. If you want to work the problems as given in the MIT coursework, you'll need a Python 2.X (I think 2.7-something is the latest 2.x), NOT the current 3.x release.
Was This Post Helpful? 1
  • +
  • -

#6 Brewer  Icon User is offline

  • Awesome
  • member icon

Reputation: 179
  • View blog
  • Posts: 1,044
  • Joined: 14-June 10

Re: Is Python right for my idea?

Posted 13 July 2011 - 11:41 AM

I recommend 2.7, it is the latest 2.x version. If you're new to Python then you should certainly stick with a 2.x version of the language. I think 3.2 is the last release, but a lot of libraries haven't been ported to Python 3 yet, which is bad if you're just learning.

@jon.kiparsky I lul'd at the VBA comment.
Was This Post Helpful? 0
  • +
  • -

#7 baavgai  Icon User is online

  • Dreaming Coder
  • member icon

Reputation: 5936
  • View blog
  • Posts: 12,862
  • Joined: 16-October 07

Re: Is Python right for my idea?

Posted 13 July 2011 - 12:05 PM

When it comes to Python, it's not entirely correct to say 3 is THE current version:

Quote

The current production versions are Python 2.7.2 and Python 3.2.1.
-- http://www.python.org/getit/


Amusingly, if you just go to http://docs.python.org/ you'll get 2.7 on the splash.

And, yes, there's a ton of production stuff that's still 2.x and probably will never be 3.x. The latest version of most Linux distros give you 2.x by default, to large extend because of the overall lack of 3.x support.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1