Meine Gedanken über Code, Server und die Technik, mit der Dinge gebaut werden.
Mit über 48.000 $ Umsatz pro Monat löste das Flugsimulatorspiel von Pieter Levels eine ganze Reihe von Innovationen aus. Ohne detaillierte Kenntnisse der 3D-Game-Engine-Technologie „vibe-codierte“ er sein Spiel mithilfe von KI. Kritiker seiner Arbeit wiesen auf Sicherheits- und Skalierbarkeitsprobleme hin, während Befürworter das erstaunliche Ergebnis lobten. Was können wir daraus lernen?
Genervt vom ständigen Anstupsen in Richtung "relevanterer Inhalte" habe ich ein Skript erstellt, um mich von kommerziellen oder Closed-Source-Podcast-Apps zu befreien. Ich wollte einfach nur ein Tool, das im Hintergrund meine Lieblings-Podcasts herunterlädt – ohne Schnickschnack, ohne Tracking, ohne Extras. Lies diesen Beitrag, um mehr zu erfahren; es ist freie Software unter der GPLv3.
Als kleines Nebenprojekt, zwischen meine normale Arbeit gequetscht, habe ich an etwas gearbeitet, das mich persönlich interessiert: eine native Workout-Tracking-App für iOS. Ich wollte meine Smartwatch überflüssig machen und stattdessen mein Telefon zum Tracken von Workouts verwenden. Wie schwer konnte es sein, detaillierte Sensordaten mit nativen Swift-APIs zu sammeln?
Aktuell schaue ich beim Schreiben auf einen See am Mount Hood. Ich höre Vögel in der Ferne und sehe den ruhigen See, mit sanften Wellen und etwas Nebel in der Ferne. Doch es ist fake, denn ich sitze in unserem Dachgeschoss, einem kaum eingerichteten Raum voller Gegenstände, die zu einem Familienhaus mit zwei kleinen Kindern gehören. Ich nutze Apples Vision Pro, um zu erforschen, was Spatial Computing sein kann. Ich bin beeindruckt; lasst es mich in diesem Blogbeitrag erklären.
Die Nützlichkeit des iPad Pro hat in letzter Zeit viele Diskussionen ausgelöst. Einige Nutzer argumentieren, es sei eine Enttäuschung und erfülle nicht die Erwartungen, die an traditionelle Laptops gestellt werden. Es gibt jedoch weniger offensichtliche Vorteile des iPads, die es wert sind, berücksichtigt zu werden. Dieser Blogbeitrag befasst sich mit diesen Vorteilen und gibt Einblicke in die persönlichen Erfahrungen mit einem iPad Pro.
Im Rahmen meiner Softwareoptimierungsbemühungen zur Senkung der Cloud-Kosten musste ich eine vorhandene, ineffiziente Serversoftware durch etwas ersetzen, das robustere (wenn auch fragmentierte) Tools nutzt, die in Debian GNU/Linux verfügbar sind. Könnte das Sprachmodell GPT4 mir etwas KI-Magie liefern? Lesen Sie weiter!
Diesen Monat nutze ich Plattformfunktionen, um ein neues Produkt auf den Markt zu bringen. Über die Jahre habe ich die "Lemmid"-Plattform entwickelt, einen Satz von Bausteinen, die es mir ermöglichen, schnell neue Produkte zu entwickeln. Das Entwerfen einer Plattform erfordert einige zusätzliche Überlegungen, aber wenn man ein paar einfache Regeln befolgt, kann man es selbst tun!
Diesen Monat habe ich eine Lieferung aus China mit spezieller Hardware erhalten, Android-Geräte mit eingebauten Druckern! Um den Restaurant- und Geschäftsinhabern, die meine Bestell-App verwenden, das Leben zu erleichtern, möchte ich, dass diese Geräte neue Bestellungen automatisch drucken. Wenn ich diese Maschinen nur mit meiner Software zum Laufen bringen könnte... Herausforderung angenommen!
Das Schreiben für meinen Blog hat mir viel Spaß gemacht, ich erhalte Nachrichten aus aller Welt über die Dinge, die ich mag. Der Traffic wächst, jeden Monat finden mehr Leser zu meinem Blog. Diese Woche erhielt ich eine Anfrage, RSS-Feeds auf meinem Blog zu unterstützen. Ich habe mich gefragt, sind RSS-Feeds heute noch relevant?
Im Rahmen der Entwicklung meiner Essensbestell-App musste ich eine zuverlässige Methode entwerfen, um die App mit externen Systemen zu verbinden. Diese externen Systeme liegen außerhalb meiner direkten Kontrolle und umfassen verschiedene Kassen, Küchenmanagementsysteme und Bondrucker. Lesen Sie weiter, um mehr über das Design für das Unbekannte und Unzuverlässige zu erfahren.
Im Rahmen der Online-Bestell-App, die ich gerade entwickle, musste ich eine skalierbare Backend-Infrastruktur entwerfen, die viele gleichzeitige Benutzer verarbeiten kann. Skalierbarkeit gilt als ein schwer zu lösendes Problem. Oft wird sie so dargestellt, als wäre sie etwas Magisches, das von millionenschweren Unternehmen mit geheimen Werkzeugen bewerkstelligt wird. Aber so etwas wie Magie gibt es nicht, oder doch?
Online-Bestellseiten sind wichtiger denn je. Der COVID-19-Virus, die daraus resultierenden Lockdowns und die Abstandsregeln haben die Notwendigkeit einer gut gestalteten Webshop-Benutzeroberfläche deutlich gemacht. Dies ist überraschend schwer richtig hinzubekommen!
Online-Zahlungen sind heute wichtiger denn je, da Unternehmen durch das COVID-19-Virus beeinträchtigt werden. Es treibt meine Kunden dazu, neue Wege zu suchen, online Geld zu verdienen. Ich habe ein (Mikro-)Zahlungssystem entworfen und implementiert. In diesem Beitrag geht es darum, Einfachheit durch die Lösung komplexer Herausforderungen zu erreichen.
Diese Woche flog ich nach Göteborg, um mich mit Leuten einer großen internationalen Reederei zu treffen und über die Entwicklung von Unternehmenssoftware zu sprechen. Während des Meetings waren verschiedene Experten im Raum, einer von ihnen fragte mich nach der Wahl der richtigen Softwarearchitektur (für große, komplexe Unternehmensanwendungen). Eine sehr gute Frage, die einen Blogbeitrag wert ist.
Letzten Monat veröffentlichte Apple iPadOS, das erste dedizierte Betriebssystem für das iPad. Es unterscheidet sich von iOS durch seine Unterstützung für den größeren iPad-Bildschirm, einschliesslich Multi-/Splitscreen-Fenstern. Ich entwickle Apps und es war an der Zeit, die neuen Möglichkeiten von iPadOS zu nutzen.
Beim Erstellen von Websites, Apps oder E-Mail-Diensten begegnen Ihnen möglicherweise Domainnamen und deren Konfigurationen. Wenn alles wie vorgesehen funktioniert, bleibt das meiste davon unsichtbar. Aber bei der Fehlerbehebung einer Domainnamenkonfiguration kann es notwendig sein, etwas tiefer zu graben ... lesen Sie weiter, um zu erfahren, wie!
Man bezahlt mich dafür, Systeme zu hacken, vorausgesetzt, ich erkläre, wie es gemacht wurde, damit zukünftige Hacks verhindert werden können. Als Sicherheitsberater suche ich nach Schwachstellen in den Apps, Webshops und Websites meiner Kunden. Sehr oft beginnt ein Hack mit der Ausnutzung einer Sicherheitslücke, die aus der Ferne sichtbar ist. Lesen Sie weiter, um zu erfahren, wie Hacker Sicherheitslücken finden und was Sie tun können, um sie zu schließen.
Eine Möglichkeit, Ihre Website schneller zu machen, ist, sie kleiner zu machen. Nicht mit winzigen Schriften, sondern mit weniger Bytes! Mehr als die Hälfte des Gewichts einer durchschnittlichen Website wird durch Bilder verursacht. Dennoch optimieren nur sehr wenige Leute ihre Bilder für das Web und die Performance. Zeit herauszufinden, wie viele Bytes Sie sparen können!
Diese Woche wurde einer meiner Kunden gehackt und bat mich um Nothilfe bei der Sicherung seiner Serverinfrastruktur. Es handelte sich um einen Webserver, der WordPress-Websites auf Apache (mit PHP/MySQL) betrieb, darunter auch einige Webshops mit Kundendaten. Dieser Hack hätte mit den folgenden Best Practices leicht verhindert werden können. Ist Ihr Server sicher?
Seit einigen Wochen benutze ich das Microsoft Surface Pro als meinen Hauptcomputer. Es ist ein moderner Tablet-Computer, der mit dem Type Cover als Laptop verwendet werden kann. Mit dem Surface Pen ist es ein vielseitiger PC, der auf viele verschiedene Arten genutzt werden kann. Zeit herauszufinden, ob es etwas taugt und wie es im Vergleich zu meinem anderen Tablet-Computer, dem iPad Pro, abschneidet.
Vor ein paar Jahren schüttete mein Bruder in einer Amsterdamer Bar Bier über mein iPhone. Das arme Ding mochte das holländische Gebräu nicht so sehr wie ich: Es starb. Während ich auf mein neues Handy wartete, benutzte ich ein altes, das nichts konnte außer SMS schreiben, telefonieren und... Snake! Die Idee für Snake '97 war geboren und diesen Monat war es Zeit, das unglaublich beliebte Spiel zu aktualisieren.
Zuhause habe ich diese irre schnelle optische Internetverbindung. Es ist ein 600MB Up- und Down-Glasfaseranschluss, der direkt bei mir ins Haus kommt (keine Kupferkabel beteiligt). Es ist wie eine private Internetautobahn. Grund genug, herauszufinden, ob ich etwas tun könnte, um diese ganze schnelle Glasfaserpracht besser zu nutzen...
Heute habe ich meinen Anbieter angerufen, um den ADSL-Internetanschluss meines Büros zu kündigen, ich brauche ihn nicht mehr. Ich habe mein lokales Netzwerk abgeschaltet und meinen Workflow komplett auf mobiles Internet umgestellt. Die Einfachheit und die Einsparungen haben mich tatsächlich so überrascht, dass ich einen Blogbeitrag darüber geschrieben habe.
In den letzten Jahren waren mir verrückte Experimente nicht fremd, aber dieses Mal wollte ich es wirklich auf die Spitze treiben: Programmieren auf einer Apple Watch. Wäre es möglich, tatsächlich Code auf einem so winzigen Gerät zu schreiben? Warum sich überhaupt die Mühe machen? Dieser Beitrag ist ein Plädoyer für verrückte Experimente und warum auch du es versuchen solltest!
Ich wollte sehen, ob ich etwas Besseres als meinen altmodischen Bleistift und Papier finden kann, die ich als professioneller Entwickler zum Entwerfen von Software verwende. Ich kannte das iPad Pro von meinem Test im letzten Sommer, bei dem ich herausfand, ob es meine primäre Entwicklungsmaschine ersetzen könnte. Auch wenn es mein treues ThinkPad vielleicht nicht vollständig ersetzen kann, stellte es sich als eine ganz andere Geschichte heraus, wenn es um Papier geht.
Das Fehlen von physischem Durcheinander, ablenkendem Branding oder blinkenden LEDs macht das iPad Pro zu einem Paradebeispiel für minimalistisches Design. Meine Abneigung gegen Ablenkung erklärt mein Interesse daran, das iPad Pro als einzigen Computer zu verwenden, um zu testen, ob es der Aufgabe gewachsen ist. Reicht Apples neuester Vorstoß bei iOS aus, um ernsthafte Entwicklungsarbeit darauf zu ermöglichen?
Man muss schon ein bisschen verrückt sein, um auf die Idee zu kommen, einen Blog auf einem alten 486er-Laptop mit nur 16 MB RAM zu bauen (also: richtig zu programmieren). Zufälligerweise bin ich so verrückt: Ich habe meinen allerersten Laptop aus den 90ern genommen und beschloss herauszufinden, ob es möglich wäre, ihn in eine Entwicklungsmaschine zu verwandeln.