Medium.net wurde 1998 gegr?ndet, um anfangs die Software
JustChat ,
einen anspruchsvollem Web-Chat-System, zu entwickeln und zu vermarkten.
Im Laufe der Zeit haben sich durch die Kundenw?nsche und -anforderungen unter anderem folgende Kompetenzen herausgebildet:
Software-Entwicklung
ist das Kerngesch?ft von Medium.net.
Wir entwickeln Software
im Auftrag
in Projektarbeit mit anderen Partnern
in Eigenregie
Unsere Software-Entwicklungs-Schwerpunkte liegen auf
Internet-Server-Software wie
Web-Server: liefern Dokumente an das Netzwerk
Chat-Server: erm?glichen die Echtzeit-Kommunikation zwischen Menschen per Text-Eingabe
Ad-Server: liefert und z?hlt Werbung f?r verschiedene Werbekunden einer Web-Site
Application-Server: liefern auf eine Anwendung zugeschnittene, dynamisch generierte Dokumente an das Netzwerk
DNS-Server: ?bersetzen Internet-Domain-Namen wie www.medium.net
in IP-Adressen
RADIUS-Server: erlauben und protokollieren die Einwahl von Internet-Usern
Abrechnungs-Server: z?hlt den Internet-Traffic und schl?sselt ihn nach Hosts und Ports einzeln auf
Software f?r mobile Endger?te (Handys, PDAs, etc.) wie
Kalaha , dem alten aber packenden Spiel, was bereits vor 3500 Jahren existierte
EuroCheck , dem Echtheits-?berpr?fer von Euro-Banknoten
anderer Software, die derzeit noch nicht hier n?her erw?hnt werden darf
Wir entwickeln haupts?chlich in der Programmiersprache Java, jedoch sind Projekte in
C
C++
Pascal|Delphi
JavaScript
Shell-Scripting (wie GNU bash)
PERL
PHP
Intel 80x86 Assembler (Intel und GNU-Stil)
Motorola 680x0 Assembler
durchaus m?glich.
Wir entwickeln haupts?chlich f?r diese Plattformen:
J2SE (Java 2 Standard Edition)
J2EE (Java 2 Enterprise Edition)
J2ME (Java 2 Micro Edition) (auf mobilen Endger?ten)
Linux
Windows
BSD
KDE und Qt (Benutzeroberfl?chen)
Es sind aber auch andere Plattformen m?glich.
Netzwerk-Administration
Manche unserer Software-Kunden ben?tigen von Zeit zu Zeit Wartung und Pflege der Technologie,
die neben unserer Software hinter ihrem Projekt steht. Obwohl diese andere Technologie nicht unser
Aufgabenbereich war, wandten sich die Kunden dennoch an uns, wenn es Probleme damit gab.
Daraus haben sich System-Administrations-Kompetenzen herausgebildet.
Wir administrieren vorzugsweise Systeme auf Linux- und Windows-Basis, haupts?chlich als Fernadministration
?ber Telefon und Internet.
Wir loggen uns in die Systeme ?ber eine Fernsteuerung wie z.B.
SSH
Telnet
VNC
pcAnywhere
NetOp
ein und verwalten die Systeme nach Kundenwunsch.
Wenn n?tig, f?hren wir parallel mit dem Kunden ein Telefongespr?ch.
Ist ein Netzwerkzugang nicht m?glich (z.B. weil er erst noch konfiguriert werden muss), weisen wir den Kunden
bzw. einem seiner Mitarbeiter an, entsprechende Handlungen vorzunehmen.
Unter anderem erledigen wir folgende Arbeiten:
Frische Installation von Systemen
Upgrades auf neue Versionen
Hardware-Konfiguration (incl. Netzwerk-Konfiguration)
Kernel-Konfiguration, -Compilierung und -Installation
Konfiguration und Installation von Boot-Managern (z.B. GRUB)
Fehlersuche, wenn etwas nicht funktioniert wie es soll
Reparatur von defekten Festplatten (Ja, das funktioniert in vielen F?llen.)
Unter der Vorraussetzung, dass wir die betroffenen Anwendungen bereits kennen oder schnell kennen lernen k?nnen (das k?nnen wir meistens):
Installation und Konfiguration von Anwendungen
Fehlersuche bei Anwendungen
Auch konzipieren wir Rechner und Netzwerke entsprechend der L?sung, die der Kunde anfordert. Darunter fallen z.B.
Konzeption eines Netzwerkes
IP-Adressen-Vergabe (z.B. dynamisch per DHCP)
Routing
Verteilung von Resourcen innerhalb des Netzwerkes (Netzwerkgeschwindigkeit, CPU, RAM, Festplattenspeicher)
automatische und manuelle Ausfalltoleranz f?r Netzwerk-Verbindungen (z.B. durch Backup-Leitungen)
Konzeption von Rechnern
Wahl des Betriebssystems
Wahl des Dateisystems
Verteilung von Resourcen (z.B. Sollen die Festplatten partitionert werden? Wenn ja, wie? )
Wahl des Kernels
Wahl der Architektur (z.B. W?ren Mehrprozessorsysteme f?r meine L?sung notwendig und sinnvoll? )
Arbeitsphilosophie
Unsere Arbeit und ihre Ergebnisse zeichnet sich durch bestimmte Merkmale aus. Dazu z?hlen u.A.
Plattformunabh?ngigkeit:
Ihre Systeme ?ndern sich, unsere L?sungen bleiben und brauchen oft gar keine Anpassungen an
die ver?nderten Bedingungen.
Skalierbarkeit:
Wachsen die Anspr?che an unsere Produkte, so wachsen unsere Produkte mit.
Schnittstellen:
Damit Komponenten in einem System wachsen k?nnen, ohne dass das restliche System daf?r angepasst werden muss,
existieren klar definierte, erweiterbare Schnittstellen.
Konzeptbildung:
Bevor wir an eine Sache herangehen, bilden wir ein Konzept entsprechend den Anforderungen,
welches die Struktur der L?sung definiert und gleichzeitig zuk?nftige Erweiterungen in Betracht
zieht.
Objektorientiertes Denken:
Wir entwickeln unsere L?sungen nicht monolithisch, sondern aus einzelnen Komponenten. ?ndern
sich die Anforderungen an die L?sungen, so muss h?ufig nur ein kleiner Teil der Komponenten
angepasst werden.
Aus dieser Philosophie heraus resultiert, dass unsere Produkte nur geringe Kosten bei Anpassung an ge?nderte Anforderungen,
ge?nderte Rechnerarchitekturen, ge?nderte Betriebssysteme oder ge?nderte Last haben. Dies ist essentiell f?r eine langlebige
L?sung, die das Optimum aus den jeweils neuen, aber deswegen verg?nglichen Fr?chten der Informationstechnologie herausholen will.