@ctietze@mastodon.social
@ctietze@mastodon.social avatar

ctietze

@ctietze@mastodon.social

Developer of indie macOS apps. The Archive, WordCounter, TableFlip, Move!

Using #Xcode to write #Swift and sometimes #SwiftUI apps for #iOS and #Mac.

OG #Zettelkasten zealot.
Local #urbansketchers group founder.

#Bielefeld (Germany)

─────────────
#fedi22

This profile is from a federated server and may be incomplete. Browse more on the original instance.

ctietze, to swift
@ctietze@mastodon.social avatar

Are there any API design best practices about error handling?

So far, I sketched everything with Result<Value,Error> so I get typed errors.

But both stack unwinding and the lack of ceremony of throws is appealing, too. API consumers probably don't need fine grained detail which of the 20 error cases occurred.

gerd, to android German
@gerd@social.tchncs.de avatar

Muss schon sagen, coden für ist so viel angenehmer, als für .

Die Entwicklungsumgebung basierend auf ist so viel besser als .

Für die fertige App einfach ein APK erstellen und auf meinem Smartphone installieren. Fertig!

Keine knapp €100 teure Gebühr pro Jahr für ne poplige Entwicklerlizenz bezahlen müssen.

Hab den Umstieg von auf nicht bereut. Ganz im Gegenteil. Will nie wieder dieses einschränkende . 👍

ctietze,
@ctietze@mastodon.social avatar

@gerd Wenn Leute in IntelliJ programmieren, sieht das für mich aus wie coding demos wo ganze Codeschnipsel vorbereitend an Makros/Shortcuts gebunden wurden.

Zwei arkane Akkorde auf der Tastatur und schon ist ein Objektgraph eingezogen.

flumen_calculi, to macos German
@flumen_calculi@ruhr.social avatar

Kennt jemand nen guten Youtube-Downloader für macOS? Ich suche eine Alternative für Clipgrabber. Bulk-Download wäre cool (muss aber nicht).

#Boost willkommen!

#macos #youtube

ctietze,
@ctietze@mastodon.social avatar

@flumen_calculi Reicht ein Klassiker wie youtube-dl oder mit macOS nativer GUI?

https://en.wikipedia.org/wiki/Comparison_of_YouTube_downloaders

louis, to microsoft
@louis@emacs.ch avatar

Microsoft's new PCs will constantly take screenshots and feed an AI to understand what you were doing. It's called "Recall" and is your worst privacy nightmare:

https://piped.video/watch?v=uHEPBzYick0&t=215

#microsoft

ctietze,
@ctietze@mastodon.social avatar

@louis On macOS, people pay for this feature. https://www.rewind.ai/

ctietze, to random
@ctietze@mastodon.social avatar

New blog post:

📝 Declarative Text Kit: Inserting Strings and Lines With a Result Builder https://christiantietze.de/posts/2024/05/declarative-text-kit-inserting-strings-and-lines/

How to write a Swift Result Builder DSL to compose different commands into a single sequence, leaning on the compiler.

The "functional" key insight for me during this step in the development of a declarative Text Kit API was this:

Decompose your DSL's units further.

Then recompose these in buildPartialBlock to enforce rules.

Find out what that means in the post :)

ctietze, to random
@ctietze@mastodon.social avatar

Dang.

After a long period of grand-fathering us non-subscription users of old versions, Dash.app (the documentation browser for Mac) removed the old Apple API update feed. Now I'm getting periodical error notifications :)

ctietze, to random
@ctietze@mastodon.social avatar

Phew, wrote a huge blog post today.

ctietze,
@ctietze@mastodon.social avatar

@isurujn it's wordcounterapp.com

map, to random
@map@xoxo.zone avatar

TIL: One of the biggest German rappers is selling vapes called "Steve Jobs". 🤯

ctietze,
@ctietze@mastodon.social avatar

@map they probably wanted to call it "Apple" but got sued ;)

ctietze,
@ctietze@mastodon.social avatar

@map ok that doesn't help :D

ctietze, to random
@ctietze@mastodon.social avatar

@krisajenkins Where do you find all these interesting people to talk with? Had Neovim, Event Driven/Actor, and a couple of programming languages covered in your podcast recently and it is a wild mix but always is insightful and exciting

ctietze, to random
@ctietze@mastodon.social avatar

Designing Actor-Based Software (with Hugh McKee) https://youtube.com/watch?v=CBUWcUuG6Ss

The examples sound great and also intuitively make sense to me as an actor noob: use data structures that support "fanning out" for concurrency.

But Swift's actor model seems to behave a bit differently, doesn't it?

At least the stuff everyone complains about feels different.

/cc @mattiem

ctietze, (edited ) to random German
@ctietze@mastodon.social avatar

Bei News zu inter-europäischen Vergleichen, diesem inklusive, kann ich mich immer nicht unbefangen freuen und habe dieses leiseen Zwifel:

"Feiert die Bundesregierung unter einem aktuell beliebten Thema hier versehentlich den Abstieg aller Nachbarstaaten?" 👀

https://social.bund.de/@Bundesregierung/112455881546585986

simonbs, to random
@simonbs@mastodon.social avatar

I have a four-day work week, allowing me to focus on my side projects on Fridays. Boy, I love Fridays! 😄

ctietze,
@ctietze@mastodon.social avatar

@simonbs yeah freedom like this is the best for hackers, I think :)

hajovonta, to emacs
@hajovonta@mastodon.online avatar

I'm trying to create an user interface where the user should be able to edit a list, including the adding, removing and ordering of items.

Unfortunately, with the ordering requirement, I'm a bit stuck - how is it usually solved in Emacs?

ctietze,
@ctietze@mastodon.social avatar

@hajovonta So what do you have at the moment?

widget.el based UI?
https://www.gnu.org/software/emacs/manual/html_mono/widget.html

tabulated-list-mode (like the Package mode)?

The latter is compatible with 'ewoc' which seems to be backed by a doubly linked list, so changing the order of items should be simple-ish

ctietze, to neovim
@ctietze@mastodon.social avatar

Recently picked up that an "IDE" is a largely uncustomized, out-of-the-box experience, and that (Neovimmers) call the result of their customizations a "PDE", a "Personal Development Environment" instead.

Made me wonder:

Is the notion that IDE's are what they are, mostly unchangable, a common one?

#neovim #ide

ctietze,
@ctietze@mastodon.social avatar

@Flyingmana Hm, I wonder if VSCode counts as an IDE, and not a very customizable app that by defaults starts as a mere text editor.

Opposed to the regular Visual Studio application, which comes equipped with debugger and all.

ctietze, to random
@ctietze@mastodon.social avatar

What's new in PHP 8.4 https://stitcher.io/blog/new-in-php-84

"Property Hooks" is a new feature and it looks just like Swift's, or the stuff in C#

ctietze,
@ctietze@mastodon.social avatar

@helge What does that mean? @pilky

ctietze,
@ctietze@mastodon.social avatar

@pilky It is! Worked on a small thing for Zettelkasten.de in January and it's nothing like the stuff I've been using in 2003 :)

ctietze,
@ctietze@mastodon.social avatar

@helge I see! I haven't tried to ship any scripting language executable in a while (tried a decade ago with Ruby IIRC). So yeah, a quick glance shows that you can get embedded PHP server processes maybe, but not much else. A C library/runtime (PH7) is also a reimplementation for feature parity. That's kind of wild.

grumpygamer, to random
@grumpygamer@mastodon.gamedev.place avatar

Good morning...

ctietze,
@ctietze@mastodon.social avatar

@grumpygamer do I read "grandmama" correctly with French pronunciation?

ctietze,
@ctietze@mastodon.social avatar

@stevenodb @grumpygamer True. I can't imagine it with a Texan accent (which is the only American one I can imagine)

ndw, to emacs
@ndw@mastodon.social avatar

For the first time in...a few decades at least. Maybe ever. Emacs is regularly and unceremoniously segfaulting on me. Pretty clearly something to do with tree sitter, which is a bit frustrating. ( 29.3 on MacOS from brew)

ctietze,
@ctietze@mastodon.social avatar

@ndw I run into immediate crashes when selecting text and tabbing to indent in tree-sitter-enabled modes since last week or the one before, too

gernot, to SwiftUI German
@gernot@mas.to avatar

Checking and formatting phone numbers for app signup in #swiftUI. How hard can it be?

(Turns out: Hard. And I suspected that… Still sucks though.)

ctietze,
@ctietze@mastodon.social avatar

@gernot @uliwitness Oh dear, didn't notice the immutability! That is awkward.

You can initialize from dictionary or JSON though:
https://github.com/marmelroy/PhoneNumberKit/blob/7678318c0c5b88051b9e26fd86b7af6484463339/PhoneNumberKit/PhoneNumber%2BCodable.swift

Since that's possible, the same invariant protections should be available in a public initializer IMHO. PR Should be trivial

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • tacticalgear
  • thenastyranch
  • ngwrru68w68
  • magazineikmin
  • khanakhh
  • rosin
  • mdbf
  • Youngstown
  • slotface
  • everett
  • cisconetworking
  • kavyap
  • DreamBathrooms
  • anitta
  • InstantRegret
  • Durango
  • osvaldo12
  • ethstaker
  • modclub
  • GTA5RPClips
  • Leos
  • cubers
  • tester
  • normalnudes
  • megavids
  • provamag3
  • lostlight
  • All magazines