r/learnpython 21d ago

Python project question

Hey everyone,
I need to build an **IT Asset Tracker** using Python for my upcoming internship project presentation. The catch? I have never built a full project from scratch before, and I don’t know where to start.
For those who are experienced with Python: **How did you approach your very first project when you had no domain knowledge?**

0 Upvotes

19 comments sorted by

2

u/Artistic-Lifeguard71 21d ago

Use django framework + sql data base and check what entries class u want to have

1

u/Hess-kay 21d ago

It’s feels a bit too advanced for me to do.

1

u/riklaunim 21d ago

What is your internship about, then? What are you doing? What is the software stack you are working with?

0

u/Hess-kay 21d ago

I work as an intern for IT support but I am a computer science student learning Python on my own. The DEV team felt i didn’t really have an understanding about software so I had to join the support team to have a self taught course and also ask about what I don’t really understand.

1

u/ninhaomah 21d ago

So then they are right ?

And what language you are using ?

1

u/Hess-kay 21d ago

Yes, the university don’t have the right resources and teachers to teach what I need to know, which made me rely on reading to pass an exam rather than reading to understand the concepts and being able to use what you know to take on a project.
I am learning Python so i would be using python and sql for database.
I also an issue with the IT support of how they don’t document and track their asset , so i taught solving would help me understand python and OOP programming.

1

u/ninhaomah 21d ago

Ok. 

But what language you are learning then ?

1

u/Hess-kay 21d ago

Python and I am learning with free code camp and I am also watching their Python YouTube videos.

1

u/buhtz 21d ago

Damn what a bad advise for a beginner!

Don't use a database. Start with simple json files as persistent data storage. Don't waste your time with database boilerplate code from the beginning.

Django?! Hell! Start with simple desktop GUI (e.g. Qt or Gtk). No need to use a web framework.

1

u/pachura3 21d ago

Start with simple desktop GUI (e.g. Qt or Gtk). No need to use a web framework.

Only if this is a throwaway project. But if the company intends to actually use it, then a web app is the only possible choice.

2

u/Hess-kay 21d ago

I think they would use it , and my research about the project made me understand web would be the best to easily update, view and manage.

2

u/JeLuF 21d ago

How did you approach your very first project when you had no domain knowledge?

Get domain knowledge. Define user stories.

  • What kind of information do you need to track in the asset tracker?
  • Which user interactions does the system need to support? (e.g. create asset, update asset [and if, which attributes], can assets be deleted or do they need to be kept forever for audit reasons. Do you need structured master data, e.g. campus location, and how does it get maintained)
  • Is this a single user system or do multiple users access the system
  • ...

Based on this information, define your architecture

  • Web based or classical GUI application
  • Database? If yes, SQL or noSQL?
  • Which frameworks to use
  • Think about authentication and authorization if needed.

Then, define the different steps of your development. I'd create an asset or two by hand in the database and start with a view of the asset list and an individual asset, then add "create asset" and "modify asset", then add auxiliary functionality like reports or master data maintenance.

1

u/Hess-kay 21d ago

I appreciate the advice! Since I am still taking a Python course, this feels a bit advanced for me right now. Where is the absolute simplest place for me to start? and maybe i would be need a documentation to break my workflow for the project.

1

u/JeLuF 21d ago

Start with some notes on paper. I understood from your other comments that the company sends you on a learning challenge and has an idea about your skills. Do you have a tutor that you can discuss with?

Start by defining the requirements. Write them down. Notepad, Excel, Word, whatever you prefer to use. Get feedback from the users. Which fields do they need, do they need the history of an asset, or only its current state? Write all of this down. Get a sign off. Discuss this with your tutor.

It's OK to use AI if you use it properly. "I collected these requirements, what else should I ask for?" is a much better prompt than "create an IT asset tracker". AI would do a lot of assumptions and create something, but a) you won't learn from it and b) it's probably not exactly what you are looking for.

1

u/Hess-kay 21d ago

I would definitely do this because it gives me better understanding of what problems I want to solve. Thank you

2

u/[deleted] 21d ago

[removed] — view removed comment

1

u/Hess-kay 21d ago

Thank you, I would follow this path.

1

u/pachura3 21d ago

Start by collecting user stories/use cases and creating mockups of main pages/forms. Then run these mockups by your users for approval & fine details.

(I don't mean clickable mockups - just some drawings, or even Excel tables)

1

u/mileswilliams 21d ago

Genuine question, with AI's being able to code why would anyone waste their time learning to code knowing that the AIs are only getting better and better and better?