Christian Beer

@chbeer
301 Followers
297 Following
4.8K Posts
Senior app developer for macOS and iOS. DIY enthusiast. Aspiring guitarist. Father of two.
Appshttps://apps.chbeer.de
Did you know you can build static websites using Swift code and SwiftUI-like syntax, with no HTML or CSS required? Ignite comes with built-in components like accordions, carousels, and syntax highlighting, plus a local preview server for testing. https://github.com/twostraws/Ignite
GitHub - twostraws/Ignite: A static site generator for Swift developers.

A static site generator for Swift developers. Contribute to twostraws/Ignite development by creating an account on GitHub.

GitHub
Is this how it should look with large font? Or am I missing something? #swiftui #dynamictype #ios

Am I doing something wrong?

Image(systemName: „…“)
.symbolRenderingMode(.palette)
.foregroundStyle(.primary, .purple)

renders the image black on dark mode, instead of white. #swiftui #why

The real lesson from this "LinkedIn uses nasty methods to collect info about your browser's extensions" seems to me to be simple: Don't use Chrome. Only Chrome allows such a deep level of access it seems.

Code ChatGPT writes…

#if canImport(UIKit)
mathLabel.backgroundColor = .clear
#elseif canImport(AppKit)
mathLabel.backgroundColor = .clear
#endif

💁‍♂️

@stroughtonsmith regarding Coppice for macOS 15. Do you do this because you can? Or do you have numbers, how many people are still using it?

If you don’t have the resources to write and understand the code yourself, you don’t have the resources to maintain it either.

Any monkey with a keyboard can write code. Writing code has never been hard. People were churning out crappy code en masse way before generative AI and LLMs. I know because I’ve seen it, I’ve had to work with it, and I no doubt wrote (and continue to write) my share of it.

What’s never been easy, and what remains difficult, is figuring out the right problem to solve, solving it elegantly, and doing so in a way that’s maintainable and sustainable given your means.

Code is not an artefact, code is a machine. Code is either a living thing or it is dead and decaying. You don’t just write code and you’re done. It’s a perpetual first draft that you constantly iterate on, and, depending on what it does and how much of that has to do with meeting the evolving needs of the people it serves, it may never be done. With occasional exceptions (perhaps? maybe?) for well-defined and narrowly-scoped tools, done code is dead code.

So much of what we call “writing” code is actually changing, iterating on, investigating issues with, fixing, and improving code. And to do that you must not only understand the problem you’re solving but also how you’re solving it (or how you thought you were solving it) through the code you’ve already written and the code you still have to write.

So it should come as no surprise that one of the hardest things in development is understanding someone else’s code, let alone fixing it when something doesn’t work as it should. Because it’s not about knowing this programming language or that (learning a programming language is the easiest part of coding), or this framework or that, or even knowing this design pattern or that (although all of these are important prerequisites for comprehension) but understanding what was going on in someone else’s head when they wrote the code the way they wrote it to solve a particular problem.

It frankly boggles my mind that some people are advocating for automating the easy part (writing code) by exponentially scaling the difficult part (understanding how exactly someone else – in this case, a junior dev who knows all the hows of things but none of the whys – decided to solve the problem). It is, to borrow a technical term, ass-backwards.

They might as well call vibe coding duct-tape-driven development or technical debt as a service.

🤷‍♂️

#AI #LLMs #vibeCoding #softwareDevelopment #design #craft

If you hate the nasty iWork update alert panel like I do, run this in the Terminal app (on macOS).

```
defaults write com.apple.iWork.Pages TSADisableUpdateNotifications -bool yes
defaults write com.apple.iWork.Keynote TSADisableUpdateNotifications -bool yes
defaults write com.apple.iWork.Numbers TSADisableUpdateNotifications -bool yes
```

Ok I guess I wasn't left any choice in the matter.
Pro tip if you’re running a Swift-based web/app server: Watch the Server ∕ Security Updates category on the Swift Forums to get an email notification about new security issues. Click the bell icon and set the status to Watching. https://forums.swift.org/c/server/security-updates/50