#dartlang

hankg@friendica.myportal.social

I've been in a bit of a developer rut. It's not lack of projects I want to do and can work on. It's more like analysis paralysis on some, death by a thousand cuts aversion on others. So I piss away time on social media. I decided to try to get some dev momentum by picking up something I first tried back in 2020 the last time I got dev writers block: The Ray Tracing Challenge. Back then it was Kotlin and I only got as far as basic ray projection before wrestling with the Cucumber test system and "real work" derailed me. This time I'm going to be trying it in Dart and Flutter. My progress, or lack thereof, will be in this repository with a corresponding plain text developer log. #programming #DartLang #flutter

https://gitlab.com/HankG/raytracerchallenge

hankg@friendica.myportal.social

I spent a lot of my career working with java and the JVM. In recent years it hasn't worked for me, especially as other cross platform systems met or exceeded its promises but without legacy encumbrances (hello Dart and .NET Core). While JVM is probably never going to be my go-to for new projects, Project Valhalla is still an impressive look at how the team wants to upgrade the JVM. The stuff about primitive/value types is fascinating. One thing I never heard of before is 32-bit tearing. Basically 64-bit type operations, including reads, are not guaranteed to be atomic so can never truly be thread safe. As someone who usually writes software that uses 64-bit values that seems like a non-starter for me but they are "going back to 1995" with this limitation on primitive types for performance reasons. Anyway, interesting read and hats off to the team trying to pull this refactor of the JVM off. #java #dotnet #DartLang #ProjectValhalla https://www.infoworld.com/article/3687670/project-valhalla-a-look-inside-javas-epic-refactor.html

hankg@friendica.myportal.social

I present the first named release of the Friendica mobile/desktop client: Relatica. It is still very much a work in progress but I'm going to start opening it up for beta usage (early beta). For iOS that will mean me letting up to 100 people into the inside testing team (Apple's limit). For the other platforms I'll be posting binaries/packages/install instructions for Android, Linux, macOS, and Windows in the coming days as well. I also setup a Relatica Matrix room for interactive discussions with me and other users. The README on the GitLab repo will have all those sorts of details. Enjoy! #friendica #FriendicaDev #relatica #flutter #DartLang #fediverse https://gitlab.com/mysocialportal/relatica
Screenshot of the first release of the Relatica Friendica mobile/desktop client running on Windows.

hankg@friendica.myportal.social

Friendica Mobile App Update

After a week of mostly successful low bandwidth network usage (some timeout issues need to be handled more gracefully and better indication something is being worked on in general) I’ve pivoted to adding an embedded video player for the mobile platform. Flutter has an easy control for that for iOS, Android, and web. Desktop is more uneven so instead that will launch in the browser or media player of the desktop OS. This is just the first cut and will need more refinement but still stoked. #friendica #FriendicaDev #flutter #DartLang
Screenshot showing an embedded video being played in the timeline of the Friendica Mobile app.

hankg@social.isurf.ca

I'm porting some code from C# to Dart and I have to say that the dynamic is *really* coming in handy. I know that construct exists in C# too but I never used it until I started doing some Dart stuff where it is idiomatic *in certain cases*. A revelation. #programming #dartlang

hankg@social.isurf.ca

I used up most of my morning social media & news 30 minute time box. Split 50/50 current events/politics and then history & programming topics. Yesterday decided to use my desire to be able to post to Twitter from CLI as an excuse to make that in a hobby Dart project #dartlang

hankg@social.isurf.ca

I'm working on some #kotlin code for the first time in awhile and I have to say that it seems IntelliSense in IntelliJ for Multiplatform seems far less intelligent now. Had decided to tweak before using this as a porting to Dart #dartlang test case but think will jump on porting.

hankg@social.isurf.ca

I needed to write a quick and dirty CLI tool to do some image processing automation. The language I chose and quiet easily completed that task with was Dart. I guess my conversation from Kotlin as my go to language to Dart is now complete. LOL #dartlang #programming