• Recommendations for programming language
    10 replies, posted
Hello everybody - I am currently about to start a project and I'm looking for recommendations to make my job at work a lot easier. I am responsible for handling orders for a small business that we have three locations. I also balance out our inventories but we have about 8,000 items in-stock. I manually go through a CSV sheet in Excel and make a list from that (which takes hours) I want to make a tool to do the clean up / base suggest that I can then fine tune. I also then want it to spit out a formatted excel sheet (Not even sure if that's possible) to where I can print a easy to read sheet for my warehouse staff to then pull. I've learned a bit about web based programming not a professional by any means: Javascript, PHP, HTML, CSS I also have been wanting to try my hand at C# or more application style languages. Looking for recommendations on what you'd personally program this tool with and why and what the benefits are. Thanks!
With your existing experience and multiple locations in mind, making it web based with PHP seems like a no brainer - assuming you end up using a framework that helps take care of security and at least somewhat forces you to use clean code, like Laravel for example. Making it web based means that you can also access the software on practically any device with a web browser, which nowadays is basically anything from a watch to a fridge. There's caveats to that of course, but Laravel for example has, from what I can tell, extremely simple API implementation. Just keep in mind if you'll be making anything web based, plan ahead for backups and security, because those are the least important until the moment when shit hits the fan. Accountability of data entry/changes is another. I've used PHP to great lengths to automate some tasks in our company (including PDF pricelist and A4 sheet labels generation). One thing I regret is not planning various functionality ahead for it, but in my defence the server we're using is old (latest PHP that runs is 5.3.1) and the software we're working with uses some obscure database that has a pretty slow ODBC driver. Right now it's just a fairly well organised mess of various php files without any security, though that runs strictly on the internal network.
From what you're saying, it sounds like Microsoft Access could do the job. It's not a programming language, but it would be a much faster solution. If your heart is set on programming, I'd suggest C# and SQL. The former is fairly intuitive and includes libraries for connecting to SQL servers (and while I'm not sure about working with Excel, it probably won't be too difficult, considering C# is also a Microsoft product).
I suggest against doing something yourself from scratch if there are available tools. Look into some of the Warehouse/Inventory Management System software and see if any fit the bill. If you still want to do inhouse solution: If your data is still in Excel/CSV, convert them into database tables. Way more scalable. If you're already dealing with Office, Microsoft has tools to help convert spreadsheets into a database. Of course there's open source solutions that MS supports. From there, look into available libraries. Javascript can glue anything together but bleh... I'd suggest C#, as it's harder to trip yourself up on and is in a way more friendly with Microsoft's stuff.
+1 on this. Inhouse programming is great for gluing different systems together, but a more comprehensive solution should be considered depending on what the long term goal is and how long you can keep working on the project. Replacing the whole thing is not a small project. But if you can spend a week programming to shave off a few minutes of manual data entry per day, that's already worth it. The CSV inventory comparison thing you mentioned is probably something you could spend a few weeks programming and turn hours of work into an hour of work. If the company isn't planning to invest into an inventory management solution anytime soon, something that's a temporary patch to save you time is already worth it, because it's already saving you time short term. Just make sure to separate hacks from any potential plans of rewriting the entire system. Hacks will have compromises, and building an entire system upon that will expose it to similar compromises you're already working with. But for rewriting the entire system, you better have a damn good picture of the entire system before you plan for a single database field.
What do you mean you need to make a list? A list of what, exactly? Based on what you described, I'm wondering if you really need to make a web app or a desktop application. Are there software solutions out there that do what you already need to do? Any language has libraries to deal with excel spreadsheets
Programmatically dealing with Excel sheets is a nightmare. I'll second Access for this.
I'm sure a tool exist for this exact application but I should have mentioned in my OP I am doing this to learn more. I enjoy working on / learning with projects that have a usable outcome as it motivates me to continue. I'm not expecting this to be ground breaking just something to pass my free time and make my job easier. Wasn't very specific I was referring to a formatted Excel sheet a printable version of the data. I will be going this route I've heard a lot about Laravel but I've never used a framework to this point. Thanks everyone for you input.
If you use php and dont use a framework like laravel, I'm really sorry. That probably makes you do so much more work. With that said, you will love laravel! It's basically like ruby on rails for php.
If you find that Laraval feels intimidating or bloated for your relatively small tool, you should have a look at just having a composer project. It'll allow you to pick and choose third party packages to speed up development just like Laravel (this is also a composer project)
Sorry, you need to Log In to post a reply to this thread.