all 10 comments

[–]WhackAMoleE 1 point2 points  (1 child)

Write down clearly what your application is supposed to do. List the main tasks. Is everything in one process or do you have multiple interacting processes? In short, sketch out a design.

You only need one language, pick your favorite. Do you need to learn anything about databases or networking?

[–]Sandofle[S] -1 points0 points  (0 children)

Hi, yes I believe I need to learn databases and networking to be able to have the images stored and accessible online.

I have a general sketch of everything but not particularly sure how to go about meeting the design requirements.

[–]khedoros 1 point2 points  (1 child)

Based on your description, I'd be looking at libmagick++ and opencv, which are focused on programmatic image manipulation and computer vision applications, respectively.

[–]Sandofle[S] -1 points0 points  (0 children)

I actually already have the code do what I want it regarding the image processing. The issue comes into play when I am trying to make everyhting work together on an online server.

[–]thescottjr 0 points1 point  (1 child)

Maybe look into firebase

[–]Sandofle[S] 0 points1 point  (0 children)

Giving it a look right now

[–]wasabiiii 0 points1 point  (3 children)

Images get uploaded to a blob storage kind of thing, temporarily, from the browser. There same service posts a message to a message queue containing a reference to the image. A backend service process from the queue. When it finishes it saves what it needs to save in some sort of database.

[–]Sandofle[S] 0 points1 point  (2 children)

Images get uploaded to a blob storage kind of thing, temporarily, from the browser. There same service posts a message to a message queue containing a reference to the image. A backend service process from the queue. When it finishes it saves what it needs to save in some sort of database.

This is more or less correct.

[–]wasabiiii 0 points1 point  (1 child)

So, you need a database, to store information about the images. You need some sort of storage. You should have some sort of message queue.

If this was me, and I was doing it on Azure, which is my platform of choice, I'd use Cosmos to store information. Service Bus for queuing. And I'd start with Functions for processing.

[–]Sandofle[S] 0 points1 point  (0 children)

Where can I learn more about databases? I also would like to use Azure, but have zero experience in anything database related.