samus7070 1w ago • 93%
If your primary exposure to programming is only typescript or JavaScript maybe you shouldn’t be jumping straight into something like rust. JS is a high level language and rust is aimed at the lower levels where things can’t be as automatic. There are many languages out there like C#, Kotlin and Swift that will help you get used to the idea of strong types and immutability.
samus7070 2mo ago • 100%
Such a polarizing book. I like it but I tell everyone that I recommend it to, to not go to the depths that the book recommends. Never go full Clean Code.
samus7070 3mo ago • 100%
The reflog is your friend in situations like that.
samus7070 4mo ago • 100%
I think there might be something to do that in Foundation. You would have to cast to an NSString to access it though. I might be mistaken and there’s only a title case method. Sentence case is easy minus the not converting proper names to lower case problem.
samus7070 5mo ago • 87%
I would argue that Biden can say and do plenty of crazy things as long as he never goes full Trump.
samus7070 6mo ago • 100%
That’s really a lame dividend. I have no idea why the stock would shoot up 15% to $160 on the news that shareholders will receive $0.20 per share. Even with the buyback program it won’t be that big of a boost. The better asset allocation would’ve been to keep innovating but I guess they’re out of ideas?
samus7070 6mo ago • 100%
It was originally meant as a better JavaScript and it was. It failed when none of the other browsers expressed interest in supporting it. It languished for a while and then was taken up by the Flutter team. At the time Flutter took it up it was somewhere around the level of Java 8 in features but not quite on par. Since then it’s seen some massive improvements to the type system and language. It’s completely null sound, not just null safe like Kotlin. It recently got records/tuples and one of the more capable pattern matching syntaxes I’ve ever seen in a functional imperative hybrid language. The next stable version of dart will introduce a compiler macro system that is very promising. The syntax isn’t always the prettiest due to it trying to not totally break old code. I do think that it offers a wide range of modern language features that competes heavily with Swift and Kotlin in the mobile space.
samus7070 6mo ago • 100%
The only things JSON has over xml is that it’s easier to write a parser for it and the format is less verbose and less complicated. There are extensions to JSON that can add features that xml has and the JSON spec doesn’t have. Overall the xml spec is bigger and has more features but that also makes it overkill for many of the cases that it would be used in.
samus7070 7mo ago • 100%
Claims top 5 and offers zero evidence and very little content beyond what an LLM might write.
samus7070 7mo ago • 100%
Because ChatGPT thought that was a pro?
It’s another virtual conference year with an optional and free in person opening day. https://developer.apple.com/wwdc24/
samus7070 7mo ago • 100%
He’s not going to jail yet. Those are other criminal cases.
samus7070 7mo ago • 100%
I’m going to sound very negative here and it isn’t because I don’t like open source software. I use it and contribute to it. The problem with OSS apps is that they get cloned by people who don’t care about the license and repackaged with predatory subscriptions or with malware. In the case of malware these lowlifes go out on sites like Fiver and offer to pay unsuspecting developers to distribute the app. If the app is downloaded even once, that developer now faces a lifetime ban from distributing Android apps. I suspect similar things happen on the App Store. It’s just more visible in the Android forums I follow than it is in the iOS ones.
I have seen stories of oss apps being cloned and then Apple mistakenly not letting the original dev upload updates because the app has been flagged in their system as being a spam app or built from a template. This is usually correctable with enough email to support.
My recommendation is to keep your app closed source on both platforms. If you want to contribute to the communities, release a library or contribute to one. If you want to show How to write an app, make something minimal and trivial like a todo list. You can also create a blog.
samus7070 7mo ago • 100%
They tried like hell to keep it off of the ballot in Ohio because they were afraid of what did happen. I can’t say if all of the dirty politics influenced people who were unsure how to vote in the opposite direction the GOP intended. Statistically speaking the final vote wasn’t even close. That is what they fear.
samus7070 7mo ago • 100%
Or it is just corporate greed. Samsung would love to position something that is just okay into a premium price tier and not have to pay Intel. Sure they’re going to pay Qualcomm instead but you can bet that Qualcomm is giving some great introductory prices to their early partners.
samus7070 7mo ago • 100%
Any program written for the .net clr ought to just run out of the box. There’s also an x64 to ARM translation layer that works much like Apple’s Rosetta. It will run the binary through a translation and execute that. I have one of the windows arm dev units. It works relatively well except on some games from my limited experience.
samus7070 7mo ago • 90%
Have you ever driven through a small town and seen a police car sitting right where the speed limit drops? Those tickets and the kangaroo mayor’s courts are the only reason some of those towns are still alive.
samus7070 7mo ago • 100%
The logo is closer to do ith ub. It might summon an orcish demon patron if said with the right spell components.
samus7070 8mo ago • 100%
I would guess that it has more to do with the Amazon App Store. The catalog is not very big and just a fraction of what the Play Store is.
samus7070 8mo ago • 100%
Recently I made an app using Flutter that I tried to distribute over the Windows Store. I was unable to get past the company verification process despite having whatever I needed. Their backend management site is pretty bad. Eventually I got stuck in some loop where the page would just keep refreshing endlessly. The tax form site which is separate wraps another site in an iframe. I decided to set it aside for a while because the app is also in the Amazon store. If I can conjure up the energy I’ll fight that beast again.
samus7070 8mo ago • 100%
I’m all for it as long as the federal tax credit for fourteen children outweighs the storage costs. It’ll be nice to still claim that one when I’m in my nineties. /s in case it wasn’t clear.
I did something like this for analytics on the company app. It needs to record analytics to multiple providers for which a fan out pattern was a good fit. There's a single entry point to log an event. Any number of loggers then pick up that event and send it out to the provider. It has worked well and is even used for functionality inside of the app that should happen after a certain set of events occur in the app. For instance it prompts the user to rate and review the app after the user has performed a conversion event. A similar set of events will trigger the app to prompt the user to allow push notifications.
It's a nice explanation and exploration of how state in SwiftUI works.
> Last year, we partnered with the team at gSkinner to develop Wonderous, a reference app to showcase the high-quality experiences possible with Flutter. One of the goals for creating Wonderous was to provide an open-source example that demonstrates best practices. In that same spirit, we audited Wonderous against Android’s large screen guidelines. It's a Medium article but shouldn't count against any stupid quotas since it is from the Flutter team.
I haven't seen any of the issues mentioned in the article. I suspect it is related to the libraries the author's project is using and I may not be using. These look like good temporary workarounds until fixes in the libraries can be rolled out.
>Android 14 is already here, so I took the documentation, experts’ reviews, and other available resources to sort out all the important changes that will affect most application developers. Let’s examine new restrictions on background mode, changes in Foreground Service, new restrictions on the work of Intent and BroadcastReceiver. In this release, we have many restrictions, but we’ve also got new features.
> Apple introduced the new Observation framework powered by the macro feature of the Swift language. The new Observation framework, in combination with the Swift Concurrency features, allows us to replace the Combine framework that looks deprecated by Apple. This week, we will learn how to use the Observation framework to handle data flow in our apps. I'm not sure that I buy the idea that Combine is deprecated. This does help reduce one use for it where it while increasing performance.
SwiftData by Example is the world's largest collection of SwiftData examples, tips, and techniques to help you build apps, solve problems, and understand how SwiftData really works.
Here's a nice simple article explaining enhanced enums that have been around for a while but may be something overlooked. Between these and sealed classes I think Dart has an excellent story for pattern matching.
> async/await in Swift was introduced with iOS 15, and I would guess that at this point you probably already know how to use it. But have you ever wondered how async/await works internally? Or maybe why it looks and behaves the way it does, or even why was it even introduced in the first place?
Randal Schwartz takes the `.when` from Riverpod's AsyncValue and creates it for an AsyncSnapshot, using Dart 3 pattern matching.
I've never been a big Core Data fan since it has cost me many days of my life debugging odd issues. To be fair, the issues weren't caused by Core Data. It was all of the foot-guns it left around that the junior developers on the team were more than happy to pick up and play with. This does look like an interesting use of macros though and is certainly a good example of how to craft more complex macros.
This is one feature that I missed from some other languages like Kotlin. It isn’t super useful for ifs but a switch with a lot of cases? Bring it on.
It looks like a big improvement over the 4 but sadly needs active cooling or it throttles under load quickly. It has a new form factor which requires a new case too. Still there are a lot of great additions that make it a good upgrade.
cross-posted from: https://programming.dev/post/3558087 > Type parameter packs and value parameter packs allow you to write a generic function that accepts an arbitrary number of arguments with distinct types. As a result of SE-393, SE-398, and SE-399, you can use this new feature from Swift 5.9.
Type parameter packs and value parameter packs allow you to write a generic function that accepts an arbitrary number of arguments with distinct types. As a result of SE-393, SE-398, and SE-399, you can use this new feature from Swift 5.9.
Usually when I read a KMP article it talks about mobile. This one is about JS and the JVM.
>In this episode, we talk to Rick Clephas, one of the Kotlin Foundation Grants Program winners and the creator of KMP-NativeCoroutines and KMM-ViewModel. When I last used KMP it was before the new memory model so I avoided coroutines as much as possible. A year later and it looks to be so much easier and better now.
I found this link via [SwiftUI Weekly #161](https://weekly.swiftwithmajid.com/p/swiftui-weekly-issue-161) >Actors is the new Swift language feature, making your types thread-safe. This week, we will learn how to use actors and their benefits over locks. We will also discuss actor reentrancy, the main confusing point of using actors. > >In the previous post, we modeled a Store type, allowing us to implement state management predictably.