multipart/form-data

I mainly focused on generating a multipart message this week. I was using curl to send a multipart formpost previously. For example, curl -kv -F ‘lang=vlog’ -F ‘[email protected]’ http://127.0.0.4:8080/api/v19/workspace.elaborate was used to transfer data to a server. The request body was shown below. (Note: A boundary was a string of random numbers.) –MIME_boundary_2CA6E12165908974 Content-Disposition: form-data; name=”lang” vlog –MIME_boundary_2CA6E12165908974 Content-Disposition: form-data; name=”…”; filename=”source.v” Content-Type: text/plain (contents of the file) –MIME_boundary_2CA6E12165908974– Instead of using curl to transfer a multipart message, I had Read more…

Slight Obstacles

I spent almost the whole week on code refactoring. It is a process which takes up quite a lot of time as much thinking is needed to optimize the code for easier maintenance in the future. My progress on refactoring was satisfactory, except for a small part where I am slightly stuck. In VueJs, v-model is a feature for two way data binding. This means that a variable is binded to an event listener. A change in input will generate Read more…

Developing back-end

This week I mainly focused on the back-end. In this post I would also like to discuss about some Wt classes since Wt currently lacked community support. First and foremost, I would like to discuss about curl. Since the project did not involve any user interface, I had to use curl to transfer data to the server. Unfortunately, I made a mistake at the beginning because I did not implement MIME encoding into the curl command. For example, the curl Read more…

Start of Internship

I am Myeong Jin, a first year engineering student working as an intern in Aeste. As this is my first experience in internship or any sort of working environment, I am excited to learn as much as I can for the next 10 weeks and upgrade my abilities. The first two days of internship at Aeste was spent on understanding GIT. GIT is an open source version control system which is essential to manage several contributors making changes in code Read more…

Photo by Headway on Unsplash

Refactoring

This week, I started on refactorising the software code. The main purpose of refactoring is due to the current large chuck of repeating codes in different files. Thus, my responsibility is to refactor these codes into a single separate component file, which will then be included in all subsequent user files. If done well, the software will be more maintainable in the future, as most of the enhancements and changes can be done in the component file without changing the Read more…

Designing Web APIs

This week I was working on designing web APIs. An API was an “application programming interface” and it was needed to exchange information between different parties. The API paradigm that I focused on was Remote Procedure Call (RPC). Previously, the API paradigm used by AESTE was Representational State Transfer (REST). REST was all about resources and basic HTTP methods were implemented to do Create, Read, Update and Delete (CRUD). Thus, the four basic fundamental HTTP verbs were GET, PUT, POST Read more…

One Month Milestone

In the previous week, there was a bug on a sorting algorithm for the user interface. As I didn’t have enough time to fix it for the event last week, I carried on fixing it this week. I managed to sort it out in one day and did the necessary testing to ensure it was working. However, one day before the event, when I carried out a final testing, to my horror, different tablets reacted differently to the sorting algorithm. Read more…

A New Beginning

I returned to AESTE as an apprentice. In these four weeks, I would continue to work on my previous project. First and foremost, I was advised by Dr Shawn to create a configuration class so that it would be inherited by different FPGAs and a factory method should be implemented. This would then allow the user to modify the type of FPGA used and hence a correct netlist would be generated from synthesis. After much consideration, I created a class Read more…

First Try

Since the music competition where the web application will be put into use is approaching, I am more focused on deployment during this week. At the end of last week, I was done with developing the web application based on the client’s requirements.   I also set up a virtual machine using virtualbox on my personal laptop. The reason for this is that the current operating system I’m using is Windows, while Linux OS is better suited for development purposes. Read more…

Gearing Up

At the beginning of the week, my supervisor showed me the way to set up the previous version of the web application that I am working on. To summarise the whole process, I have to follow a few steps: Import a .tsv input file into the database, Set up a local server network to use the admin interface, Set up another local server network to use the vuejs interface. However, we encountered some difficulties when importing the .tsv file and Read more…

Photo by Charles Deluvio 🇵🇭🇨🇦 on Unsplash