Welcome to TechScreen

Welcome to the TechScreen site. This side shall support the exchange of knowledge in the domain of Web Engineering and related aspects. As a side effect, this side is used for research on knowledge management technologies. User can pose challenges in the problem domain and can participate in quizzes. Further a bibliography about arcticles in different related domains is continously extended. Finally, questionnaires on different issues are provided. To be able to participate you need an account and a password from TU Wien's TISS system.

Displays with different pixel densities

Problem: Graphics that look sharp on a standard computer monitor look muddy and out of focus on high-resolution smartphone and tablet displays. But: All objects should be smoothly adapted to screen sizes from the smallest smartphone to the largest widescreen monitor. Solution: SVG -> Graphical elements (e.g., icons, arrows etc.) are presented in vectors. SVG format is based on XML. Basic geometric shapes such as circles, ellipses, rectangles etc. can even be created in a simple text editor.

Specific HTML title tags

Problem: - Name of website can affect its performance -> HTML title tags are essential. Tags sum up the entire content of the website to major search engines (Google). A lack of specificity in the domain name can lower its visibility. Some site owners use the same title throughout their website -> Google looks for duplicate title tags and pares them. In worse cases the web site can lose traffic in this way. Solution: - Doing a name search as “site:yourdomain.com.” Analyze your website with: Google Search Console (aka “Google Webmaster Tools”).

Traffic spikes

Problem: - Spikes during marketing promotions with videos - company often not prepared for the extra traffic - Also server can slow down - Hindered performance of the website which is harming the brand Solution: - Setting up an early warning system using simulated user monitoring systems - E.g. = “NeoSense” -> helps to see when traffic is impacting transactions before users are affected

One login for different applications?

We had different applications running but wanted to implement a loginsystem so that the user only has to login once to use all our applications. The way was to use keycloak as our single sign-on solution. Now it is possible to have only one login for every user. Another reason for using keycloak was the ability to Active Directory users without any hassle. Furthermore, it supports 2-factor authentication which is very important for us since we handle financial data.

Best way to save files?

My first idea would be to just use a filesystem and store my files there, but there are many advantages to use a database, since it's faster and supports ACID consistency. After looking at the pros and cons we decided to just use a MongoDB and save the bytestreams of the files in there. The data is more consistent, we can get them very quickly and since we already had a database setup we had not much effort to create our own "filesystem" in the database.

How to achieve zero downtime deployment?

Most websites need to be up 24 hours every day, so we need a solution to deploy changes to the website without taking it down. The solution is to have more than one application server and use a load balancer. You have your application running on one of the servers and when you need to make changes, you deploy the new version on the other server. Now when a user is currently using the website he will still be using the old version, but when he connects to the website the next time he will be redirected to the other server with the new version.

How to write a LaTex formula in a Moodle forum entry

In Moodle forums, LaTex formulas can be embedded as separate formulas or inline formulas. For this purpose, the „Mathematics mode“ has to be activated. This can occur by doing the following: Creation of an inline formula: write a $ sign before and after the formula. Creation of a formula displayed in a separate line: write $$ before and after the formula.

How to create a GitLab Wiki and integrate Java code

A GitLab Wiki can be created from the navigation bar in the GitLab menu. The starting point is the Home page, which is the top of the tree. Further pages are added as child pages to the wiki tree. Each change of a page can be tracked by clicking on the history of the page. The GitLab-specific markdown can be used for formatting the wiki pages. To integrate Java code in a wiki page, one has to use three back-ticks (```) before and after the piece of code. This produces inline code and the appropriate syntax highlighting for Java code.

Preparing the first time use of Docker (using Windows OS)

This problem occurred when using Docker for the first time. Before a docker-compose.yml is created and the command docker-compose up can be used to actually run the containers/commands indicated in the file, some configuration has to be done when using Windows OS. In this case, a Docker volume was used.

How to connect to a database? How to read or write data?

How to make a website with dynamic content? We need to store the content somewhere. And a good, searchable storage is a database. Almost every webservice needs a database. But how do connect to the database? And how do we read and write the data?


Subscribe to TechScreen Revised RSS