 24 Feb 2019
      ⌨
	
    
    24 Feb 2019
      ⌨ 
        
    Da meinte doch tatsächlich mal ein 
Java-Programmierer,
ich solle keinen Code nutzen, der auf den 
Calendar -
Klassen basiert und 
SimpleDateFormat 
einsetzt, denn diese sind nicht Thread-sicher.
Ich kann das ja immer noch nicht glauben, dass Java in seinem Aufbau so defekt
ist, dass es Kalender-Rechnungen in globalen Variablen vermurxt und dann 
Fehler oder Abstürze produziert, wenn unterschiedliche Instanzen in Threads
benutzt werden.
… doch offenbar melden mehrere Seiten solche Probleme.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 23 Feb 2019
      ⌨
	
    
    23 Feb 2019
      ⌨ 
        
    
  In einer Zeit, als die alten Götter herrschten,
schrie das Land, das Kriegsherrn in Aufruhr versetzten, nach …
Exceptions, weil weder 
Hercules noch 
Xena 
ein Konzept zur strukturierten Fehlerbehandlung vorweisen konnten.
C++ wurde erst 1998 
vollständig standardisiert und die anderen Sprachen 
… gab es die eigentlich schon?
Doch einer der ältesten Titanen, nämlich 
C, zeigte sich 
unbeeindruckt, da er schon lange über ein Technik verfügte, in “Ausnahmefällen”
quer durch den Code zu springen.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 22 Feb 2019
      ⌨
	
    
    22 Feb 2019
      ⌨ 
        
    Ein paar wichtige Informationen bekommt jeder genetisch mitvererbt,
wenn er das Licht der Welt erblickt.
Das ist bei Prozessen ganz ähnlich wie bei Menschen.
Die “Umgebung” 
(“Environment”) beinhaltet einige Datenwerte, die der
Elternprozess seinen Kindern “aufdrücken” kann, und wenn er sich nicht
weiter darum kümmert bekommen die Kinder das gleiche, was er selbst
auf den Weg mitbekommen hat … die Umgebung wird also vererbt.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 21 Feb 2019
      ⌨
	
    
    21 Feb 2019
      ⌨ 
        
    Hätte man “Pipes” 
in der Programmierung als “Pipeline” bezeichnet, würden vielleicht mehrere 
Entwickler den Namen kennen und die Technik einsetzen.
Linux bzw. Unix -
Fans wissen mit dem Begriff gut umzugehen, doch auf Seiten
der Windows 
Gemeinde fehlt dieses Wissen leider nur all zu oft.
Dabei sind Pipes eine schöne klassische Form Daten zwischen Eltern- und
Kindprozessen auszutauschen.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 20 Feb 2019
      ⌨
	
    
    20 Feb 2019
      ⌨ 
        
    WBEM, oder auch 
Web-Based Enterprise Management
ist ein Ansatz um Administration und Fernwartung in großen Netzwerken 
(Unternehmen) zu standardisieren.
Microsoft preschte schon vor den 2000ern mit seiner eigenen 
COM-Implementierung 
davon vor, nannte es WMI und deshalb haben wir heute zu vielen 
Systemkonfigurationen primär nur über die WMI-Schnittstellen Zugang.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 19 Feb 2019
      ⌨
	
    
    19 Feb 2019
      ⌨ 
        
    Verwaltete Sprachen wie 
Java oder jene des 
dotNet Frameworks definieren
einen Standard wie Funktionen ausgestalten sein müssen.
Damit kann das Framework seine eigenen Funktions-Aufrufbäume genau 
zurückverfolgen.
Das merkt man vor allem bei 
Exception, die ganz genau 
wissen woher sie kamen.
C und C++ kennen einen solchen 
Standard für den Aufbau des Callstacks
nicht, weil im Zuge der Optimierung Funktionen eingebettet (Inlining)
werden können oder andere interne Calling-Conventions benutzt werden dürfen.
Will man aber dennoch “seine Herkunft” zur Laufzeit ermitteln muss man selbst
Hand anlegen.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 18 Feb 2019
      💬
	
    
    18 Feb 2019
      💬 
        
    Wäre es nicht so Deppen-einfach, dass sogar ich es hinbekomme, würde ich nicht
darüber schreiben:
Also: Wie kann man Vanille-Eiscreme ohne Kohlenhydrate zubereiten, damit 
man in seiner Low-Carb Diät 
auch etwas zum Naschen hat?
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 17 Feb 2019
      ⌨
	
    
    17 Feb 2019
      ⌨ 
        
    Während Windows 9x nur 
ANSI-kodierte Byte-Strings kannte, unterstützte 
NT 4 einige 
Unicode-Bereiche in der Form 
von UTF-16. Die Windows API ist daher
auf NT-Systemen großteils doppelt implementiert.
Pessimistisch könnte man auch sagen: Sie ist gespalten.
Wer mit “alten” ANSI-Bytes-Strings arbeitet darf hinten ein großes “A” 
anhängen, und wer Unicode nutzen will, lässt seine APIs und Strukturen 
auf ein großes “W” für Wide-Character enden.
Die meisten kümmern sich jedoch darum nicht sondern nutzen die API 
ohne “A” oder “W” Suffix und verlassen sich darauf, dass die Windows-Header 
automatisch die richtige Form wählen.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 16 Feb 2019
      ⌨
	
    
    16 Feb 2019
      ⌨ 
        
    So wie sich Sommer und Winter abwechseln, so kämpften Microsoft und die 
OpenSource Programmierer jahrelang um “das Beste” Berechtigungskonzept.
DOS und 
Windows 3.x und 9x waren rechtelos 
und damit den Unix-Derivaten
schwer unterlegen. Mit 
Windows NT 3 und NT 4 
legte man ACLs 
(Access Control Lists) über FAT32
und taufte es NTFS, was flexibler als 
die alten POSIX-Rechte war, die nur zwischen einem Eigentümer (Owner), 
einer Gruppe (Group) und allem anderen (Other) unterschied.
Etwas später zogen Linux und 
BSD nach 
unten bauten einen erweiterten 
POSIX
Entwurf ein, der diese Zugriffslisten (ACLs) auch auf ihrer Seite möglich 
machte.
Und letztendlich versuchte man in beiden Welten durch diverse Tricks die 
begehrten “Administrativen Privilegien” stückweise den Anwendungsprogrammen
bereitzustellen, ohne dass man gleich alle Macht dem Standard-Benutzer-Account
vor die Füße warf.
Um niemanden zu beleidigen sagen wir deshalb: Es steht nun unentschieden.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 15 Feb 2019
      ⌨
	
    
    15 Feb 2019
      ⌨ 
        
    In der letzten Episode unserer Daily-Soap 
“Gute APIs, Schlechte APIS” 
sahen Sie:
Aufruhr in der Editoren-Straße! Großmutter Textbox zeigte erste Anzeichen
für Demenz, als ihr Schwiegersohn Updatetimer sie nach der aktuellen 
Cursorposition fragte. Während dessen plagen Familienvater Streamwriter 
schwere Gewissensbisse, nachdem er heimlich mit seiner Jugendfreundin UTF-16
fremd gegangen war, während seine angetraute UTF-8 zu Hause saß und den kleinen
ANSI-Codec stillte. Parallel kam es zu einer Schlägerei zwischen dem 
pubertierenden Jungen ToolBar, der mit seinem Zimmergenossen MenuBar um seine
ID-Zuordnung im Streit lag. Und während alle ihren Problemen nachgehen, 
beobachtet Professor Statemanager distanziert und dennoch mit Sorge, wie sich
Grußmutter Textbox’ Gesundheitszustand verändert.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 14 Feb 2019
      ⌨
	
    
    14 Feb 2019
      ⌨ 
        
    Ach die liebe ZLIB … 
nichts kommt ohne sie aus und immer noch hat sie den Speichermanager mit im 
Schlepptau um auch noch unter DOS 
mit 64 KByte auszukommen.
Die deflate Kompressionsmethode 
zählt zu den ältesten und am weit verbreitesten und ist die Basis des 
GZIP und 
ZIP Formats.
Da sie als OpenSource 
zur Verfügung gestellt wird, wird sie auch intern in vielen Produkten 
benutzt um Datenmengen zu verkleinern.
Doch im Laufe der Zeit wurden neuere Algorithmen entwickelt, die durchaus
mit der alten ZLIB in Konkurrenz treten.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 13 Feb 2019
      💻
	
    
    13 Feb 2019
      💻 
        
    Fortsetzung zu gestern: Apropos Video!
Das Video-Tool Virtual-DUB zählte 
für über 10 Jahre zu einem meist genutzten Tools am PC.
Schließlich wurde jede Woche entweder etwas im Fernsehen mit der der 
TV-Karte aufgenommen, oder ein 
DVD-Inhalt auf eine CD herunter konvertiert.
Und das tat ich mit dem OpenSource Video-Editierungs- und -Konvertierungs-Tool
Virtual DUB (www.virtualdub.org.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 12 Feb 2019
      🔧
	
    
    12 Feb 2019
      🔧 
        
    Nachdem der Millennium-Bug 
(wie erwartet) überhaupt nichts angerichtet hatte, war eine der ersten 
Investitionen im neuen Jahrtausend eine 
TV-Karte.
Ich hatte bei einem Bekannten mit großen Augen verfolgt, wie er “am Computer”
das terrestrisch ausgestrahlte Fernsehprogramm in einem Fenster unter 
Windows 98 sehen konnte,
und wusste: “Das will ich auch haben!”
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 11 Feb 2019
      🔧 💻
	
    
    11 Feb 2019
      🔧 💻 
        
    In der Programmierung zieht sich ein bestimmter Faden durch meine persönliche
Entwicklung, die die Art der Nutzung der Sprachen entscheidend geprägt hat.
Und dabei handelt es sich um “langsamere” Systeme.
In Jugendtagen lag dies stets an fehlenden Geldmitteln, dass das Low-Cost 
System eingekauft wurde und die High-End Gamer-Maschine gar nicht erst
beachtet wurde.
Dieses Situation hat sich bis heute nicht geändert, obwohl es heute einen
taktischen und keinen finanzieller Hintergrund dafür gibt.
Denn die Devise lautet: “guten” Code zu produzieren, der auch auf 
langsameren und älteren Systemen vernünftig ausführbar sein soll.
    
       » Ganzen Beitrag lesen 
    
   
  
  
	
	 10 Feb 2019
      ⌨
	
    
    10 Feb 2019
      ⌨ 
        
    Ja, es hatten damals viele gedacht, dass zu den 2 
Pokemon Editionen 
Schwarz und Weiß 
wie in den Generationen zuvor etwas später eine dritte erscheinen würde. Und
da lag die Spekulation auf den Namen “Grau” natürlich nahe.
Doch Nintendo bzw. Game Freak 
machte allen Strich durch die Rechnung und brachte sowohl Schwarz als auch 
Weiß in einer 
2. Edition 
heraus und brach somit im Jahr 2012 ein Schema, welches sie seit 1998 
konsequent verfolgt hatten.
Das Umrechnen von Farbpixel in graue oder im Extremfall in schwarz-weiße hat
auch heute noch Relevanz, wenn es um das sparen von Speicherplatz geht, oder
um Bereiche, wo Farben irrelevant sind (z.B. in bestimmten Szenarien der
Bilderkennung).
    
       » Ganzen Beitrag lesen