10 Nov 2018
⌨
Es ist oft ganz lustig, wenn man Leute (oder auch sich selbst) dabei
ertappt, wenn sie altkluge Belehrungen zum Besten geben.
Aber das ist menschlich und auch nicht wirklich schlimm.
Da kam einmal die Frage an mein Ohr:
Wusstest du nicht, dass man heute nicht mehr template<class ...>
schreibt, sondern template<typename ...>
?
Man erkennt dann beim Gegenüber, dass jetzt ein “Oh Gott, Nein”
von einem selbst erwartet wird.
» Ganzen Beitrag lesen
09 Nov 2018
⌨
Ein Kollege meinte einmal:
Schreib’ deinen C++ Code um, weil so etwas habe ich noch nie gesehen.
Gemeint war ein do { ... } while(0);
Block.
Doch da musste ich darauf hinwirken, dass wir zuerst das Problem
“So etwas habe noch nie gesehen” lösen.
» Ganzen Beitrag lesen
08 Nov 2018
🔧
Wenn man mal eine Idee am Steckbrett getestet hat, damit zufrieden ist und
nun an die Praxis denkt, kommt einem - bzw. kommt mir zumindest - die
Frage unter:
Und wie wird das jetzt möglichst modular zusammengesteckt?
Wie kommt der Strom zum Gerät?
» Ganzen Beitrag lesen
07 Nov 2018
💾 💻
Mama hat auf dem Flohmarkt fast kostenlos ein altes etwas mitgenommenes
Buch gefunden und ihrem Sohnemann geschenkt.
Es trägt den Titel
Vom Anfänger zum GEM-Profi
Perfekte Programmierung auf Atari ST und IBM-PC
» Ganzen Beitrag lesen
06 Nov 2018
💻
Mein Glückssträhne geht weiter …
Windows Server 2016 ist
installiert, alles läuft perfekt und dann mache ich den schlimmsten Fehler
überhaupt:
System wird mit dem Internet verbunden, Windows Updates laufen an und
… das System friert ein.
Perfekt! Dafür liebe ich Microsoft.
Ein kluger Mann sagte mal zu mir:
Ein Feature, das man nicht abdrehten kann, ist ein Bug!
» Ganzen Beitrag lesen
05 Nov 2018
💻
Nach meinem Server Crash erfolgte nun der eigentlich für nächstes Monat
geplante Umstieg auf
Server 2016.
Zwar habe ich noch keine Lizenzen, aber die ersten 180 Tage darf man ja
kostenlos testen.
Die Installation lief problemlos und auch das Setup der Zusatzdienste wie
z.B. DHCP
war kein Problem.
Getestet habe ich das allerdings nicht, weil mein Hauptrechner ja
sowieso mit statischen IP Adressen konfiguriert ist.
Und heute sind die Akkus meiner Smartphones und vom
3DS leer.
» Ganzen Beitrag lesen
04 Nov 2018
🔧
Heute Nacht hat die Festplatte
meines Servers zu Hause den Geist aufgegeben.
Backup? Nö … nicht notwendig. Die Daten darauf sind sowieso mehrfach auf
anderen Systemen gespeichert und die Test-VMs sind auch egal …
… dachte ich.
» Ganzen Beitrag lesen
03 Nov 2018
🔧
Vor einige Jahren kaufte ich mir mal beim Conrad den kleinen
Probot 128.
Der ist für “fortgeschrittenere” Kinder geeignet, also müsste ja sogar ich
damit klar kommen. Und das wäre dann auch ein super Einstieg in die
Mikrocontroller Welt.
Und das Teil ist ja auch lieb und alles, aber dann gibt es da ein Detail,
dass mir die Freude nachhaltig vermiest hat.
Die C-Control Mega 128 und ihr beknacktes
Compact-C.
» Ganzen Beitrag lesen
02 Nov 2018
⌨
Da hatte mal ein
pfiffiger Kerl einen
Code für eine
Wildcard - Suche
verfasst, der mein C-Fanboy-Herz schneller schlagen lässt.
Wenn man eine komplexere Suche in eine Zeile bannen kann, die auch noch
korrekt funktioniert, ist das schon was sehr Schönes.
Und die besonderen Nebeneffekte sind:
- Sehr geringer Maschinencode
- Portabel auf alle (und zwar wirklich alle) Plattformen
- Man kann damit Wettbewerbe gewinnen
Und wie hat der Junge das geschafft?
Mit einer Rekursion.
» Ganzen Beitrag lesen
01 Nov 2018
⌨
Als Entwickler freue ich mich natürlich sehr, dass meine Erfindung
letztlich dann doch in den
C++17 Standard Einzug gefunden hat.
std::string_view
OK, Spaß bei Seite … das haben wohl auch schon zehntausende Entwickler vor
mir gebraucht und darauf hin erfunden. Aber trotzdem erinnere ich mich noch
zurück an das Jahr 2007,
als mir bei der Arbeit mit
std::string
unmittelbar auffiel, dass dieses unglaublich wichtige Feature im Standard fehlte.
» Ganzen Beitrag lesen
31 Oct 2018
⌨
… dann wäre C++
womöglich arbeitslos.
Naja, vielleicht nicht ganz, also Spaß bei Seite. Aber generische
Programmierung mit Templates zählt für mich neben
RAII
zu den wichtigsten Features von C++.
Also Frage: Wie löst man dieses Manko in reinem
C?
Die beiden üblichen und widerlichen Antworten sind:
- MACROs
- void*
» Ganzen Beitrag lesen
30 Oct 2018
⌨
Man wirft sowohl C++ als auch dem
COM unter Windows vor,
dass sie eine
V-Table
(auch Virtual Method/Function Table genannt) in ihrem Objektmodell und -layout
einsetzen.
Die Kritik lautet dann: O-M-G! Ein Funktionsaufruf läuft über 2 Pointer!
Der erste zeigt auf die Methodentabelle und in der Tabelle zeigt ein zweiter
Pointer zur tatsächlichen Funktion.
Na … jetzt könnten wir doch meinen: Ha! Das machen wir einfacher.
» Ganzen Beitrag lesen
29 Oct 2018
🔧
Der Arduino Leonardo
ist zwar auch ein Arduino … aber eben doch ein bisschen anders.
Das gilt in erster Linie für die serielle Kommunikation, denn schnell schreibt
man sich ein paar Zeilen um Bytes an die
Mikrocontroller zu senden.
Beim UNO oder allgemein bei
allen Boards mit separatem USB-zu-Seriell-Konverter sind die Parameter für den
COM-Port recht anspruchslos …
… doch beim Leonardo funktioniert das dann nicht.
» Ganzen Beitrag lesen
28 Oct 2018
💻 💾
Ah, die Uhr hat sich wieder 3 mal zurückgestellt.
… muss ich zum Glück nicht mehr an Tagen wie heute sagen.
Denn die Umstellung von Sommer- auf Winterzeit ist wieder einmal fällig.
Als ich damals vor 15-20 Jahren 3 Windows-Installationen auf einem PC parallel
installiert hatte und mit
VAMOS
hin- und her bootete, stellte jede Windows-Installation die Uhr vor oder
zurück. Damit lief die Uhr dann bis zu 2 Stunden falsch.
Ein Umstellung erfolgte durch mich selbst manuell unter
DOS bzw.
Windows 3.x
, und dann führten
Windows 9x und danach
Windows NT das
gleiche nochmals automatisch durch.
(Anmerkung: Damals war ich hauptsächlich in DOS unterwegs und nutzte Windows
nur für Office Anwendungen)
Und NTP … was ist das?
» Ganzen Beitrag lesen
27 Oct 2018
⌨
Fast kein Programmierer weiß heute mehr was ein Monitor ist.
Natürlich meine ich damit nicht den Bildschirm, sondern ein
Synchronisierungsobjekt,
das in vielen Sprachen und Betriebssystemen vorhanden ist.
Ausgerechnet die Windows API hat auf dieses Konstrukt bis zu NT 6
(auch als Vista
bekannt) verzichtet.
In Java und
C# hingegen ist quasi alles ein
Monitor … nur nutzt diesen fast niemand.
» Ganzen Beitrag lesen