{"id":28034,"date":"2025-09-12T17:53:43","date_gmt":"2025-09-12T15:53:43","guid":{"rendered":"https:\/\/blog.mi.hdm-stuttgart.de\/?p=28034"},"modified":"2025-09-12T17:53:45","modified_gmt":"2025-09-12T15:53:45","slug":"naniwa-not-actually-nutzlos-image-converter-with-aws","status":"publish","type":"post","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2025\/09\/12\/naniwa-not-actually-nutzlos-image-converter-with-aws\/","title":{"rendered":"NANIWA &#8211; Not Actually Nutzlos Image-converter With AWS"},"content":{"rendered":"\n<p class=\"has-large-font-size\"><strong>Introduction<\/strong><\/p>\n\n\n\n<p>This is written as part of the assignment for Software Development for Cloud Computing.<\/p>\n\n\n\n<p>NANIWA, which stands for Not Actually Nutzlos Image-converter With AWS, or the name of the region which would become the city of Osaka today, is an image-conversion service hosted solely on Amazon Web Services. It utilizes multiple features on the cloud-computing service platform to give access to anyone at anytime its functionality, but not its source code, and at a price that would be lower than hosting a server for it personally or at the company itself.<\/p>\n\n\n\n<p>The idea stemmed from my internship at Syntegon Technology K.K. (Saitama, Japan) where I was working at the R&amp;D division of the Visual Inspection Department. For the high-speed cameras in the inspection machines, which could inspect up to 600 samples per minute, an image format <em><strong>i3<\/strong><\/em> was created in-house. However, due to time-constraints at the time (over 10 years ago), not much was developed when it comes to working with the i3 format outside of the inspection machines. Last year in 2024, I am still having to develop a shell extension that adds functionality to Windows Explorer for i3 formatted images, which included showing previews and creating icons of the images.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>The<\/strong> <strong>Problem and the proposed solution<\/strong><\/p>\n\n\n\n<p>One such problems of working with the i3 format, that was at the time yet unsolved, was with regard to the conversion of the i3 format images into more common image formats, such as jpg or png. As inspection images are vital when writing reports, whether it be Syntegon\u2019s own engineers or the customers, an accessible and easy-to-use i3 image converter would be very handy and would genuinely boost productivity. Especially when it renders the current troublesome way of converting the images obsolete, and if it does not cost a lot to provide such utility.<\/p>\n\n\n\n<p>As such, I have decided to use a tutorial from a LinkedIn post that I found to develop an image-conversion service hosted on AWS. As I do not have access to the i3 format libraries anymore, this proof-of-concept project would be converting from jpg to png instead. Link to said tutorial: <a href=\"https:\/\/www.linkedin.com\/pulse\/how-i-built-serverless-aws-document-converter-from-villanueva-mjmfe\/\">https:\/\/www.linkedin.com\/pulse\/how-i-built-serverless-aws-document-converter-from-villanueva-mjmfe\/<\/a><\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Architecture<\/strong><br><br>Courtesy of the writer of the tutorial, Frank Kevin V., I am spared from creating an entirely new architecture diagram myself.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" data-attachment-id=\"28038\" data-permalink=\"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2025\/09\/12\/naniwa-not-actually-nutzlos-image-converter-with-aws\/image-120\/\" data-orig-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image.png\" data-orig-size=\"1280,720\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-1024x576.png\" src=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-1024x576.png\" alt=\"\" class=\"wp-image-28038\" srcset=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-1024x576.png 1024w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-300x169.png 300w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-768x432.png 768w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"has-text-align-center has-small-font-size\">Project architecture diagram (source: LinkedIn post by Frank Kevin V.)<\/p>\n\n\n\n<p>The AWS services utilized are as follows:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>AWS Amplify<\/strong>\n<ul class=\"wp-block-list\">\n<li>handles the deployment of the frontend\/HTML page of the service<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>API Gateway<\/strong>\n<ul class=\"wp-block-list\">\n<li>handles API requests from the frontend and triggers Lambda functions for the file conversion process, as well as getting download links back for the frontend<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Lambda<\/strong>\n<ul class=\"wp-block-list\">\n<li>handles CORS options, generate pre-signed upload and download URLs for the received and converted files<\/li>\n\n\n\n<li>triggers the actual image conversion process at ECS Fargate, and check whether the converted file is ready or not<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>ECS Fargate<\/strong>\n<ul class=\"wp-block-list\">\n<li>performs the actual image conversion with a container<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>S3<\/strong>\n<ul class=\"wp-block-list\">\n<li>stores the uploaded and converted images<\/li>\n\n\n\n<li>uploaded images are deleted after the conversion is completed<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Dynamo DB<\/strong>\n<ul class=\"wp-block-list\">\n<li>stores a list of images, for which Lambda uses to find the files within the S3 buckets<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Cloudwatch<\/strong>\n<ul class=\"wp-block-list\">\n<li>for logging and monitoring the various services\u00a0<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"has-large-font-size\"><strong>Changes applied<\/strong><\/p>\n\n\n\n<p>Other than general changes in naming, such as the names of the S3 bucket and its folders, or the name of the container in the ECS (Elastic Container Service), there are a few main changes that were applied on top of the original tutorial project:<\/p>\n\n\n\n<p><strong>1. Lambda functions<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>CheckAndGetConvertedImages\n<ul class=\"wp-block-list\">\n<li>Replaces <em>CheckAndGetPDF<\/em>, no major code changes<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>GenerateUploadURL\n<ul class=\"wp-block-list\">\n<li>Conforms to new S3 bucket naming schemes<\/li>\n\n\n\n<li>Changed how the <em>file_name<\/em> variable was used. In the original code, <em>file_name<\/em> was handled as if it does not contain the file extension in the end of the name &#8211; but it absolutely does, and this error was rectified.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>HandleFileReady\n<ul class=\"wp-block-list\">\n<li>Conforms to new S3 bucket naming schemes<\/li>\n\n\n\n<li>Added function that actually calls ECS Fargate to carry out the conversion. In the original code, this was not present and thus ECS Fargate was never called at all, unlike what was stated in the tutorial.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>HandleCORSOptions\n<ul class=\"wp-block-list\">\n<li>no changes (necessary)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"757\" data-attachment-id=\"28040\" data-permalink=\"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2025\/09\/12\/naniwa-not-actually-nutzlos-image-converter-with-aws\/image-122\/\" data-orig-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2.png\" data-orig-size=\"1142,844\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2-1024x757.png\" src=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2-1024x757.png\" alt=\"\" class=\"wp-image-28040\" srcset=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2-1024x757.png 1024w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2-300x222.png 300w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2-768x568.png 768w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2025\/09\/image-2.png 1142w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"has-text-align-center has-small-font-size\">Function added in HandleFileReady that tells the ECS Cluster to do its job (source: me)<\/p>\n\n\n\n<p><strong>2. AWS Amplify<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Instead of uploading a .zip file like in the tutorial, I followed the simple instructions provided by the Amplify UI itself to link it to a GitHub repository.<\/li>\n\n\n\n<li>Whenever something is pushed into the main branch of the repository, Amplify would take the new files and re-deploy the frontend.<\/li>\n\n\n\n<li>Minimal changes to the UI were made.<\/li>\n<\/ul>\n\n\n\n<p><strong>3. ECS Fargate container<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A completely new container is built and deployed in the <em>naniwa-cluster<\/em> as the <em>ImageConversionService<\/em> task.<\/li>\n\n\n\n<li>It\u2019s job is to download jpg files from the S3 bucket within the jpg\/ folder, convert it into png, and\u00a0upload it back into the converted\/ folder of the S3 bucket.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-large-font-size\"><strong>Challenges encountered and lessons learned<\/strong><\/p>\n\n\n\n<p>In general, I have learnt the basic levels of how to combine multiple cloud services provided by AWS together to create a simple application\/service.&nbsp;<\/p>\n\n\n\n<p>The Lambda functions were written in python, which is easy enough to understand and modified &#8211; though I must confess that I took me an embarrassingly long time to realize that the original function <em>HandleFileReady<\/em> did not actually call the ECS Fargate to perform the file conversion.<\/p>\n\n\n\n<p>CloudWatch was vital for troubleshooting and it helped a lot that this monitoring system was very easy to setup. It simply was just selecting existing services, and CloudWatch would produce logs of them, albeit in the default format, but they also sufficed so I didn\u2019t attempt to modify the format.<\/p>\n\n\n\n<p>However, at the end I was <strong>NOT<\/strong> able to make the ECS Container work as I intend it to, so the application is unfortunately not complete. This will be explained in detail below\u2026<br><br>Here are 3 major points in which I have learned quite a bit of:<\/p>\n\n\n\n<p><strong>1. IAM Roles<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>IAM roles are roles with different permissions, to which the different services (such as the Lambda functions, ECS Fargate, S3 buckets) are assigned with. Limiting the permission to the duties of the services are obviously very important from both the application design and security standpoint.<\/li>\n\n\n\n<li>What is equally important is figuring out which permissions are the correct ones &#8211; during the first half of the development process, I did have to look up and test around different permissions for the Lambda functions. Not the least because of discrepancies between the permission names in the tutorial and the actual permissions within IAM itself, but also because some permissions are already deprecated or simply does give permissions that I assumed their names suggests they do. But at the end, these are just minor issues (due to the size of this project).<\/li>\n<\/ul>\n\n\n\n<p><strong>2. ECS container<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>This has been another exercise on building my own docker container, and it certainly refreshed my memories of the entire process, from creating the code, the Dockerfile to building and testing with Docker Desktop.<\/li>\n\n\n\n<li>Ultimately I was unable to make my container service to work. This was mainly due to container permissions and the ImageMagick dependency.<\/li>\n\n\n\n<li>I was unable to find out how and what permissions I need to give to the <em>ImageConversionTask<\/em> in order for it to access the S3 buckets, from which images are to be downloaded from and uploaded into. I would assume that it would require more playing around with the IAM roles\u2026<\/li>\n\n\n\n<li>The other problem was the dependency ImageMagick, which the image conversion relies on. It was included in the DockerFile and was built into the docker container, but ultimately a  <code class=\"\" data-line=\"\">magick: command not found<\/code> error was thrown for the <em>ImageConversionTask<\/em>.<\/li>\n\n\n\n<li>So if the container is built with <em>alpine<\/em>, ImageMagick is unable to process the URL links of the S3 buckets. However, if it is built with <em>amazonlinux<\/em> instead, it created the permissions and the <code class=\"\" data-line=\"\">command not found<\/code> problems\u2026 and at this point, I have lost motivation and have thus left the project unfinished.<\/li>\n<\/ul>\n\n\n\n<p><strong>3. Working with existing documentation and their trustworthiness<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Adapting external codebase and libraries is crucial here, as much as it is when one is working as a full-time developer. The main problem I had was the fact that the tutorial I followed here is a LinkedIn post &#8211; while it does contain a GitHub repository, it was obviously never peer reviewed.<\/li>\n\n\n\n<li>While it might have been naive of me to assume that such a post\/tutorial, written as to attract recruiters and HR to make them think that this was a solid project, it ultimately is not, with the following issues:\n<ul class=\"wp-block-list\">\n<li>IAM roles were deprecated, some for years already, when I started following the tutorial a month after it was posted. But for this, I only had to search a few times to find the correct permissions to assign with.<\/li>\n\n\n\n<li>The lambda function code provided for <em>HandleFileReady<\/em> does NOT trigger the ECS Fargate task at all. While the tutorial does include sections of the ECS cluster creation process, the lambda function provided did NOT contain code that would call upon the ECS cluster task at all. While it took me a bit of time to finally realize that, I cannot imagine that an actual developer with AWS experience would need anytime at all to spot this problem.<\/li>\n\n\n\n<li>Screenshots of the AWS interfaces are somehow outdated already, again, while I was following the steps a month after the tutorial was posted.<\/li>\n\n\n\n<li>Except for the frontend, which was uploaded via a <em>zip<\/em> file, the tutorial showed all the code being entered with the native code editors provided in the AWS consoles. This is primitive and while I was not able to automate code deployment for every services, I had minimized the need for relying on the AWS consoles where ever possible (such as the Amplify GitHub integration).<\/li>\n\n\n\n<li>Other minor code errors that should have been fixed or the entire project would not have functioned, and optimizations that should have been applied.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Ultimately I am confused as to how the tutorial claimed that the project functions at all, or how the \u201cproof\u201d was produced with the code provided. However, in all fairness, I have to thank the author for the tutorial, since it did point me in the right direction. It would have taken me a lot more time if I had to navigate and figure out the AWS cloud services platform myself.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-large-font-size\"><strong>Conclusion<\/strong><\/p>\n\n\n\n<p>Overall this was a fun project to do, and I had learned a lot about working with the AWS cloud services. Should the need arises in the future, I can hopefully apply the knowledge and experiences learned here onto AWS again or other cloud service platforms. As mentioned by a fellow student, this project is in theory compatible, if not ready, for converting i3 images as well, as long as the Docker container is switched to one that can process i3 images (and actually functions).<\/p>\n\n\n\n<p>Though whether the company would approve of such a project, is another matter entirely\u2026<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Author<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Kei Wai Lam<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Introduction This is written as part of the assignment for Software Development for Cloud Computing. NANIWA, which stands for Not Actually Nutzlos Image-converter With AWS, or the name of the region which would become the city of Osaka today, is an image-conversion service hosted solely on Amazon Web Services. It utilizes multiple features on the [&hellip;]<\/p>\n","protected":false},"author":1284,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"ppma_author":[1138],"class_list":["post-28034","post","type-post","status-publish","format-standard","hentry","category-allgemein"],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":24051,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/02\/27\/fog-computing-solving-the-limitations-of-cloud-and-edge-computing\/","url_meta":{"origin":28034,"position":0},"title":"Fog Computing: Solving the limitations of Cloud and Edge Computing","author":"Andreas Nicklaus","date":"27. February 2023","format":false,"excerpt":"Fog computing offers a compromise between cloud and edge computing for real-time, scalable data analysis. Ideal for regional applications and IoT. However, authentication and privacy issues must be addressed.","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/edge-computing-diagram-1024x512.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/edge-computing-diagram-1024x512.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/edge-computing-diagram-1024x512.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/edge-computing-diagram-1024x512.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":24246,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/02\/27\/how-edge-computing-is-moving-the-cloud-closer-to-the-user\/","url_meta":{"origin":28034,"position":1},"title":"How Edge Computing is moving the Cloud closer to the User","author":"Nikolai Thees","date":"27. February 2023","format":false,"excerpt":"Did you know clouds have sharp edges? What is Edge Computing? Let\u2019s say you want to deploy a web application. In order to serve your app to your users, you need a server on which you can run your application.Traditionally, you had the option to either buy and run the\u2026","rel":"","context":"In &quot;Cloud Technologies&quot;","block_context":{"text":"Cloud Technologies","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/scalable-systems\/cloud-technologies\/"},"img":{"alt_text":"","src":"https:\/\/lh4.googleusercontent.com\/uCYgoQ2o7ueAQYKEvAup43hsF7rDPIyBl5Uh-qMTzmOU5mozruJsWI_kp_BTfpjhMkcrhbEzHoZvBthhNk9GrF9KE3Oxd73nnOJ2YZsIZt66xSEJghrtdVd00YeozgM6k-ACpmcCHexjQ8VLo6EC-QM","width":350,"height":200},"classes":[]},{"id":5635,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2019\/03\/05\/a-dive-into-serverless-on-the-basis-of-aws-lambda\/","url_meta":{"origin":28034,"position":2},"title":"A Dive into Serverless on the Basis of AWS Lambda","author":"Can Kattwinkel","date":"5. March 2019","format":false,"excerpt":"Hypes help to overlook the fact that tech is often reinventing the wheel, forcing developers to update applications and architecture accordingly in painful migrations. Besides Kubernetes one of those current hypes is Serverless computing. While everyone agrees that Serverless offers some advantages it also introduces many problems. The current trend\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2019\/03\/warm.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2019\/03\/warm.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2019\/03\/warm.png?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":25800,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/09\/14\/splid-2-0-die-zukunft-des-gemeinsamen-ausgabenmanagements\/","url_meta":{"origin":28034,"position":3},"title":"Splid 2.0 &#8211; Die Zukunft des gemeinsamen Ausgabenmanagements","author":"David Christoph Scheifers","date":"14. September 2023","format":false,"excerpt":"Im Rahmen der Vorlesung \u201cSoftware Development for Cloud Computing\u201d haben wir uns daf\u00fcr entschieden, einen Klon der App Splid auf Basis unterschiedlicher Cloud Technologien als Web App zu entwickeln, um uns so die Grundkenntnisse des Cloud Computings anzueignen. Projektidee Bei gemeinsamen Aktivit\u00e4ten und Gruppenausgaben ist es sehr hilfreich, einfache und\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/09\/image6.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/09\/image6.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/09\/image6.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/09\/image6.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/09\/image6.jpg?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/09\/image6.jpg?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":21683,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2021\/09\/18\/ynstagram-cloud-computing-mit-aws-serverless\/","url_meta":{"origin":28034,"position":4},"title":"Ynstagram &#8211; Cloud Computing mit AWS &amp; Serverless","author":"ns144","date":"18. September 2021","format":false,"excerpt":"Im Rahmen der Vorlesung \u201cSoftware Development for Cloud Computing\u201d haben wir uns hinsichtlich des dortigen Semesterprojektes zum Ziel gesetzt einen einfachen Instagram Klon zu entwerfen um uns die Grundkenntnisse des Cloud Computings anzueignen. Grundkonzeption \/ Ziele des Projektes Da wir bereits einige Erfahrung mit React aufgrund anderer studentischer Projekte sammeln\u2026","rel":"","context":"In &quot;Cloud Technologies&quot;","block_context":{"text":"Cloud Technologies","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/scalable-systems\/cloud-technologies\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/Prasentation_CC_01.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/Prasentation_CC_01.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/Prasentation_CC_01.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/Prasentation_CC_01.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/Prasentation_CC_01.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/Prasentation_CC_01.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":21693,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2021\/09\/20\/recall-trainer-eine-serverless-web-app-mit-aws\/","url_meta":{"origin":28034,"position":5},"title":"Recall Trainer &#8211;  Eine serverless Web-App mit AWS","author":"lr066","date":"20. September 2021","format":false,"excerpt":"Einleitung Im Rahmen der Vorlesung \u201cSoftware Development for Cloud Computing\u201d habe ich im vergangenen Semester eine Einf\u00fchrung in die Welt des Cloud Computings incl. der relevanten Konzepte und Technologien erhalten. Einige dieser Konzepte habe ich versucht in meinem Abschlussprojekt umzusetzen, das ich im Nachfolgenden vorstellen m\u00f6chte.\u00a0 Idee\/Projekt Die Idee war\u2026","rel":"","context":"In &quot;Cloud Technologies&quot;","block_context":{"text":"Cloud Technologies","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/scalable-systems\/cloud-technologies\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/signup1-150x150.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/signup1-150x150.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/signup1-150x150.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/signup1-150x150.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/signup1-150x150.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/09\/signup1-150x150.png?resize=1400%2C800&ssl=1 4x"},"classes":[]}],"jetpack_sharing_enabled":true,"authors":[{"term_id":1138,"user_id":1284,"is_guest":0,"slug":"kei_lam","display_name":"Kei Lam","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/d69bd8ce3d9add6a342d11ab2bfc30852f7b9ecc3e998b3c8b95cbde501827fa?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts\/28034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/users\/1284"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/comments?post=28034"}],"version-history":[{"count":4,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts\/28034\/revisions"}],"predecessor-version":[{"id":28046,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts\/28034\/revisions\/28046"}],"wp:attachment":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/media?parent=28034"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/categories?post=28034"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/tags?post=28034"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/ppma_author?post=28034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}