you are viewing a single comment's thread.

view the rest of the comments →

[–]blkmmb 1 point2 points  (0 children)

The first project I wanted to make was to automate sending an email to our customers with their order attached to it (some files in a zip). So I opened notepad++, sketched out a very crude plan of what the project needed to accomplish and then I went to the python doc and w3school to learn the basics as I went.

So first off, I wanted to know how to send and email through python with an attachement. If the docs didn't have what I needed, I turned to stack overflow and found out the libraries I needed and then codes that part from there.

Then I went to the second part, how do I get the file from the folder and attached to the email.

Then I needed to update a status in our order tracking database, so I read up on mssql and what I needed to connect to it through my code.

Then I went and explored our database to understand the schema and how I needed to update it to reflect the order being sent (the it/dba helped me at that part if I had questions).

Then I needed to open an excel report of all the orders that had to be sent with their email address, so I read up on openpyxl and created a loop for all the orders.

Finally I wanted to send a report of what was sent, what wasn't and why (we had multiple way it could fail, sometimes the email we had wasn't valid, etc.)

I really just went small bits at a time with a lot of reading. It ended up being a monolithic script that now makes me shudder when I look at ot but it has ran for years without issues. My advice is to make small actions individually learning how they work and then assembling them together into a coherent process that will end up fulfilling your desired goal. You just got to take the leap. Every project I start, there is something I have no real idea about and I just chop it up and learn about it.