Thursday, September 28, 2023

Raspberry 4 als Streaming Client für Netflix, Amazon Prime und Youtube

 Die Idee ist einen Streaming Client auf Basis eines Raspberry 4B zu bauen. Die Anforderungen:

  1. 4K Video mit 60 Hz
  2. Netflix, Amazon Prime und Youtube
  3. Touchmonitor

Ein Pre-Test ergab, dass der Raspberry 4B mit 4 GB RAM nicht in der Lage war 4k Youtube Videos zu streamen. Er konnte 1080p Videos streamen aber das Bild war sehr rucklig. Er schaffte keine 60 Hz.

 

Das Ergebnis

Wir warten auf den Raspberry 5 der Ende 2023 erscheinen soll. Die Rechenleistung des Raspberry 4 reicht nicht für einen 4k Streaming Client.

Wednesday, September 13, 2023

How to transform legacy Software into up-to-date software

How to transform legacy software in to up-to-date software.

You have to follow these steps, I will explain the steps later:

  1. Evaluate the state of the current software

  2. Improve the Understanding of the software

    1. Generate missing documentation and charts

    2. Improve logs and error messages

    3. Use better names in the code

    4. Simple refactoring

    5. Simple test improvements

  3. Managing the expectation of the lower management

  4. Building the test fence and closing the gaps: encase the code with test

  5. Refactoring as long as you need it to achieve your view of up-to-date software

Well, lets look into some of steps above.

Point 1: Evaluate the state of the current software means talk with customers, testers, developers with every body that has a stake in the software. Analyze the errors related with the software. Analyze the reasons for the errors. What are the risks. These five point gives you an raw overview and scope.

Point 2: Improve the understanding of the software means change the software to improve the understanding without changing the programming logic.

Point 3: Manage the expectations of your management. This is important because managers are often no programmers. It’s hard for them to understand why it is so important to transform the legacy code into maintainable code. It’s important that every body understand that you have tp spend some time now to save a lot off time in the future. It should be clear that if you don’t transform the software then you stuck in the future and the software is dead.

Point 4: Test are part of the product. Software without test are not software. Legacy software has often bad, useless and sometimes misleading test. Remove them makes the following refactorings much easier. But fence the software with test and close all gaps. This tests are the cornerstone of your software transformation. The test specifies the the behavior of the software.

Point 5: Just do it. Now you have the knowledge, the support of the management and the tests. Let’s do the refactorings.