Python Forum
What to focus on next? - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: General (https://python-forum.io/forum-1.html)
+--- Forum: News and Discussions (https://python-forum.io/forum-31.html)
+--- Thread: What to focus on next? (/thread-12935.html)



What to focus on next? - WuchaDoin - Sep-19-2018

Apologies if this may seem like a broad question, but I am new to python-about 2 weeks in fact-and I chose to learn Python to re-write a invoice system for my work that is currently written in VBA. It went super well and works better than I'd imagined. However, now that I've reached a finishing point on this project, I have been stumped on what I should learn or focus on next. Would anyone have any suggestions?


RE: What to focus on next? - ichabod801 - Sep-19-2018

Three ideas:
  • Now that you know the invoice system, can you improve it by upgrading your program?
  • Can you improve how your program handles the invoice system? Is it a GUI? If not, learn a GUI framework and make it one, so it is more accessible to other staff.
  • Is there anything else you can automate in your office?



RE: What to focus on next? - WuchaDoin - Sep-19-2018

(Sep-19-2018, 05:10 PM)ichabod801 Wrote: Three ideas:
  • Now that you know the invoice system, can you improve it by upgrading your program?
  • Can you improve how your program handles the invoice system? Is it a GUI? If not, learn a GUI framework and make it one, so it is more accessible to other staff.
  • Is there anything else you can automate in your office?

I am glad you (or someone) asked. My job has been more than generous by letting me get paid to develop and learn new languages and methods to create better systems. This was never the original intention when I began working for this company. I was here originally to help with entering invoices. I knew no programming languages at the time except that I knew I could learn and that's what I told them. After a few months I created their invoice system using VBA (which is not a good standalone, nor longterm, method which is why I chose to re-write it in Python) With beginning any project, I usually am having to learn something entirely new as I go, and in-return, I have to utilize my time in the best possible way to make it clear to the company that I know what I am doing.

I have already looked into creating a GUI for the system, but I can't figure out how I could implement it without taking too much time. Figuring out what my goal is longterm is the hardest part and takes the longest. So it leaves me available with more options: Take longer to develop a GUI or begin a new project on another system. I feel a good plan to begin with would be to implement everything (not just invoices) into the GUI. I have access to the companies database and I really want to integrate their data with real-time graphical outputs, but I had to re-write the invoice system first to force myself to learn Python quickly.

As far as automation is concerned, it is very tough considering our database doesn't allow ODBC connections over networks due to our software providers custom ODBC Firebird driver. So it makes it difficult to write ODBC strings since I have to direct connection to the database. I can install Python on the database computer, but I am trying to find a better method that wouldn't require that.

Anyhow, apologies for the lengthy response. This is a quick back story and of current progress.


RE: What to focus on next? - ichabod801 - Sep-20-2018

You might see if you can write something that short circuits the ODBC driver. I used to work with a database we could only access through SAS. But I wanted to work on the data in Python. So I wrote a Python program that converted my database request to a SAS program (which would store the data in a csv format), called SAS to run the SAS program, and then read the data SAS outputted into Python.


RE: What to focus on next? - WuchaDoin - Sep-20-2018

(Sep-20-2018, 02:05 AM)ichabod801 Wrote: You might see if you can write something that short circuits the ODBC driver. I used to work with a database we could only access through SAS. But I wanted to work on the data in Python. So I wrote a Python program that converted my database request to a SAS program (which would store the data in a csv format), called SAS to run the SAS program, and then read the data SAS outputted into Python.

Good thinking. I've already tried to find a way that easily converts the information to be usable over network connections and the best solution I've found so far is appending and exporting the information automatically via macros and Windows Task Scheduler. It will work in the meantime until I can install Python on our server PC in the future if everything was in the form of a GUI and running smoothly. Any suggestions for a good GUI library? TKinter, PyQT, and Electron are the 3 I've heard of the most, but I am look more towards PyQT because of the QTDesigner.


RE: What to focus on next? - ichabod801 - Sep-20-2018

I don't do a lot of GUI programming, so I'm the wrong person to ask. When I do make GUIs, I just use Tkinter, because it's there and I've used it before.


RE: What to focus on next? - WuchaDoin - Sep-20-2018

(Sep-20-2018, 04:17 PM)ichabod801 Wrote: I don't do a lot of GUI programming, so I'm the wrong person to ask. When I do make GUIs, I just use Tkinter, because it's there and I've used it before.

Let me ask this then. Are you more familiar with Dash, Plotly, or Django than with GUI's? Because creating a locally hosted web-page with statistics is next on my list. If creating a GUI is too troublesome at the moment, then I plan to shift over to web-pages.


RE: What to focus on next? - ichabod801 - Sep-21-2018

No, I'm not familiar with any of that. When I've done web page work, I just do the HTML by hand with maybe a little javascript.


RE: What to focus on next? - Skaperen - Sep-22-2018

if you can do it all with web pages, that opens up a lot of new possibilities. more users can then access the invoice system. and, unfortunately, also the hackers. my suggestion to learn next is security. it sounds like you already know enough about networking to be dangerous.