Skip to content

Friday, 6 October 2023

Let’s go for my web review for the week 2023-40.


BBC Gives Up On Threads (By Instagram), Sticks With Mastodon — Darnell (Seize The Day)

Tags: tech, fediverse

This is an interesting move from the BBC. We can only theorize on the reasons but that’s a positive example of a successful fediverse presence so far.

https://darnell.day/bbc-gives-up-on-threads-by-instagram-sticks-with-mastodon


Tags: tech, ai, machine-learning, gpt, law, copyright

Looks like it was a very interesting talk. Situation still needs to be monitored in any case, it’s uncertain how those cases will be ruled.

https://lwn.net/SubscriberLink/945504/ee1f1db87dae56b1/


Predictive Policing Software Terrible At Predicting Crimes – The Markup

Tags: tech, politics, bias

A bad solution in search of a problem basically. Let’s look at the alternatives and fund proper solutions to why people are victimized, shall we?

https://themarkup.org/prediction-bias/2023/10/02/predictive-policing-software-terrible-at-predicting-crimes


Lazarus luring employees with trojanized coding challenges: The case of a Spanish aerospace company

Tags: tech, security

Very refined attack including the social engineering side of things. Catching developers with coding challenges, it’s definitely cunning.

https://www.welivesecurity.com/en/eset-research/lazarus-luring-employees-trojanized-coding-challenges-case-spanish-aerospace-company/


Google Doc injects tracking redirects in documents

Tags: tech, google, surveillance

Why you can’t trust this kind of proprietary software…

https://fosstodon.org/@Joe_0237/111145684757912952


Compromised Microsoft Key: More Impactful Than We Thought | Wiz Blog

Tags: tech, microsoft, cloud, security

Totally missed this over the summer… this is a huge breach. It will have a long lasting impact. The scope might be larger than we expect.

https://www.wiz.io/blog/storm-0558-compromised-microsoft-key-enables-authentication-of-countless-micr


Microsoft comes under blistering criticism for “grossly irresponsible” security | Ars Technica

Tags: tech, microsoft, cloud, security

Really a bad summer for Microsoft security wise. Trust should be low among Azure customers now. Who was paying attention though?

https://arstechnica.com/security/2023/08/microsoft-cloud-security-blasted-for-its-culture-of-toxic-obfuscation/


The Marvin Attack

Tags: tech, security

An attack which doesn’t want to die. Time to retire RSA use with TLS, this is really overdue.

https://people.redhat.com/~hkario/marvin/


Python 3.12: what didn’t make the headlines - Bite code!

Tags: tech, python, programming

A few good things went unnoticed. The performances are still not there.

https://www.bitecode.dev/p/python-312-what-didnt-make-the-headlines


Open Sourcing Ferrocene - Ferrous Systems

Tags: tech, rust, safety

This is a big deal for the places where Rust could shine.

https://ferrous-systems.com/blog/ferrocene-open-source/


The Absolute Minimum Every Software Developer Must Know About Unicode in 2023 (Still No Excuses!) @ tonsky.me

Tags: tech, unicode, encodings

Very nice primer on how Unicode works. Definitely a must read and a good starting point. Definitely highlights properly some of the difficulties we need to deal with now and talks about the normalization forms.

https://tonsky.me/blog/unicode/


Lessons From Debugging

Tags: tech, programming, debugging

List of strategies to keep in mind when debugging.

https://matt-rickard.com/lessons-from-debugging


Concurrency Freaks: 50 years later, is Two-Phase Locking the best we can do?

Tags: tech, multithreading, databases

Good way to understand two phase locking better, its tradeoffs, variants and how it’s been improved.

https://concurrencyfreaks.blogspot.com/2023/09/50-years-later-is-two-phase-locking.html?m=1


Database Migrations

Tags: tech, architecture, databases

Interesting primer of the intricacies of database migrations. It can get complex fairly quickly.

https://vadimkravcenko.com/shorts/database-migrations/


Goodbye to sequential integers, hello UUIDv7!

Tags: tech, uuid, databases

Interesting property of the newer UUIDv7 spec.

https://buildkite.com/blog/goodbye-integers-hello-uuids


mimic.css

Tags: tech, web, css, frontend, funny

Nice and fun little demo of what can be done with CSS animations.

https://erictreacy.github.io/mimic.css/


Flexbox Froggy - A game for learning CSS flexbox

Tags: tech, web, css, frontend, funny

Fun way to understand better the CSS layouting using flexboxes.

https://flexboxfroggy.com/


Tags: tech, 3d, gpu

Interesting connector, I didn’t know about this one.

https://rkblog.dev/posts/pc-hardware/gpd-win-max2/oculink-as-egpu-solution/


Optimization Techniques for GPU Programming - 3570638.pdf

Tags: tech, gpu, computation, performance, optimization

Very thorough paper on optimization techniques when dealing with GPUs. Can be a useful reference or starting point to then dig deeper. Should also help to pick the right technique for your particular problem.

https://dl.acm.org/doi/pdf/10.11453570638


Diora Devlog

Tags: tech, 3d

Very clever tricks for a performant little engine.

https://dioragame.com/devlog/?log=3


pkgx — Run Anything

Tags: tech, command-line, tools, developer-experience

Looks like an interesting tool to manage developer environments.

https://pkgx.sh/


bruno

Tags: tech, http, tools

Looks like an interesting alternative to things like postman or insomnia. To test when I get the chance.

https://www.usebruno.com/


Dependency Whac-A-Mole

Tags: tech, architecture, dependencies, complexity

Mind how you pick your dependencies and how they fare over time. You might need to reevaluate and let go some of them.

https://blog.ploeh.dk/2023/10/02/dependency-whac-a-mole/


Cloud Costs Every Programmer Should Know

Tags: tech, cloud, business, cost

Interesting approximations to get a feel of how much a cloud project will cost.

https://www.vantage.sh/blog/cloud-costs-every-programmer-should-know


Conventional Comments

Tags: tech, codereview, communication

We see this kind of comments in some reviews, this would benefit from being more widespread.

https://conventionalcomments.org/


What Predicts Software Developers’ Productivity?

Tags: tech, management, organization, productivity

Interestingly (or maybe unsurprisingly) most of the factors this research found impactful are not technical. So mind the social constructs of your organization.

https://newsletter.getdx.com/p/factors-of-developer-productivity


Seniority and self-management: you don’t have to do this alone - Jacob Kaplan-Moss

Tags: tech, coaching, management

Definitely this, I too often see people trying to just power through. Being responsible of something doesn’t mean you do it all alone, on the contrary. If you’re struggling with it look for help, it can take many forms including coaching.

https://jacobian.org/2023/oct/4/seniority-and-self-management/



Bye for now!

Welcome to the first "Codevis Weekly Update"

What is Codevis?

Codevis is a tool to help developers manage large codebases, sponsored by Bloomberg, developed by Codethink and hosted on the KDE Infrastructure, with all that, completely opensource with a permissive license. Codevis uses a mix of technologies to do what it does, mainly LLVM and Clang to do the heavy lifting of understanding C++ Codebases, Qt for Callback management (in the form of Signal/Slots), KDE Frameworks libraries for the desktop application, and pure Qt for the CLI application. The database layer is written with Soci , the same database layer used in CERN, targeting sqlite3.

But How does it work?

Codevis analyzes all the visible source code from your project and creates a graph database (using a relational database) in a way that the analyst can load and interpret information from the codebase without loading the codebase. The graph-database is comprehensive, and has all the information we think it's important, and also a lot of information that's good to have, with a bunch of information because why not. Since something that's not important for me could be really important for a company with billions of lines of code.

It just generates visualization?

No. Codevis also allows you to draw your software architecture and generate ready-to-compile c++ code from it. Think of this as a possibility to have C++ templates for complex projects tha are also visually documented. You can create libraries, classes, structures, connect them quickly on a dirty mockup during a meeting, and the output could be 60 c++ files on disk with all the classes, folder-hierarchy and CMake ready to compile.

This will not add any method or implement anything, but just the creation of the C++ files and CMake scripts from a small architecture meeting is pretty interesting in my point of view.

Wednesday, 4 October 2023

Contributing to KDE sometimes leads to a flood of negative or even insulting feedback. To not get disheartened by this it is important to correctly assess the significance of these comments. One possible stance to take towards these reports can be taken from punk culture.

I hope this video with hand-crafted subtitles will be a valuable resource for people stumbling into this situation in the future. Enjoy the skateboarding clips!

It's been a Long long time without posting anything. Not that i'm lazy (well, a bit). But I have been working on a lot of things related to KDE this past few years, and I was finally able to release and opensource Codevis. I know this post is as small as a tweet, just checking if the integration is stil working

Tuesday, 3 October 2023

Last weekend I went to the Linux Days in Voralberg (Austria) to host a booth with Tobias and Kai. It was hosted at the Fachhochschule (a sort of university for applied science) in Dornbirn and it was my first time attending this event.

Me and Tobias in front of the LinuxDays poster at the entrance of the event
Me and Tobias in front of the LinuxDays poster at the entrance of the event

Our booth was well visited and we had a lot of interesting discussions. As always, we had various pieces of hardware on our booth: 2 laptops, a Steam Deck, a Pinephone, a graphic tablet with Krita and two Konqi amigurumis.

Our stand
Our stand

Between booth duty, I still managed to watched one talk about open source deployment in public institutions in Baden Wurtenberg (a region/state in German). After the linux days, we all went to a restaurant and mass ordered Käsespätzle. Käsespätzle is a traditional food from this region and is made of cheese, Spätzle (noodles) and onions. It was excellent.

Käsespätzle
Käsespätzle

On Sunday, Tobias and I went to Golm with a local we met the day before. We took a gondola lift to reach a high-rope park in the mountains and then took an Alpine Coaster to go back in the valley. It was a lot of fun.

The view from the gondola
The view from the gondola

Picture of the high-rope pakr
Picture of the high-rope pakr

After our little adventure, we again went to eat in a traditional restaurant.

Fish in a plate with noodles and pumpkin
Fish in a plate with noodles and pumpkin

Here a few more pictures of the trip:

Dornbirn market place
Dornbirn market place

Castel
Castel

KStars v3.6.7 is released on 2023.10.03 for MacOS & Linux. Windows build is still pending and should hopefully be released by 10th of October. It's a bi-monthly bugfix release with a couple of exciting features.

Image Overlay Component


Hy Murveit introduced a long requested feature: Custom Image Overlays!

With this new feature, a user can add their own processed/completed astro-images, and the system will display them scaled and rotated appropriately on the Sky Map.

The feature is controlled in the KStars Settings menu, in a new tab labelled Image Overlays. First the user needs to add files into a directory, parallel to the logs directory, called imageOverlays. Simply add the images there (typically jpegs). Ideally these aren't massive files for performance reasons, but probably width 1000 or 2000 are fine. I have been testing with larger files, which will also work be use more system resources on slower CPUs.


The user then uses the Image Overlays menu in KStars Settings to (one-time) plate-solve the images and check a box to enable the image display. Successful plate-solve info is stored in the user-db so that it doesn't have to be done again. The images should, from then on, appear in the SkyMap in the proper position. There is a way to easily navigate to the images without manipulating the SkyMap by selecting a row in the overlay table and clicking on the "Show" button. You can move from one image to the next with up/down arrow keyboard commands.

A user can adjust the plate-solve timeouts. As these are mostly blind solves (jpegs won't have any header info, and as currently implemented, no header info is used) the plate solving can be problematic. You can choose a default image scale (arcseconds-per-pixel) or leave that to 0.0 to not use scale. If there are files that won't solve, the user can add RA,DEC into the image's row in the table displayed, which would get the solver to use the sky position as a constraint. The user can also add the scale that way. In fact, if the user knows all the info for the image, he/she can populate all the fields on the image's row and simply set the status field to OK, and plate-solving would no longer be required.

Rotator Dialog Improvements



Toni Schriber continued simplifying the Rotator Dialog. Rotator Flip Policy was introduced. This (global) policy is an answer to this question and to this wish. It's now possible to define how the rotator reacts after a flip or if the result of a solved reference image reports a different pierside respective to the actual mount pierside. Preserve Rotator Angle will keep the rotator position and the camera is virtually rotated by 180°. Preserve Position Angle will keep the camera position angle.

The rotator always turns the camera to the original position angle and the image will show the original star arrangement. Flip Policy can be altered in the StellarSolver Options under Rotator Settings.

More File Placeholders


Due to popular demand, Wolfgang Reissenberger added support for camera temperature %C, gain %G, offset %O and pier side %P.


This is not only applicable to locally captured images, but also for images captured on a remote INDI server.

Sunday, 1 October 2023

Learning a language is, to me, about grinding. Continously exposing yourself.

Ich lerne Deutsch. Oder, ich versuche Deutsch zu lernen. 😉

I try to expose my self to the language via YouTube (thx Nils for the tip about 7 gegen Wild), but also news papers and just chatting with people. I’d say the biggest hurdle is that people find English easier than having me try to find and reorder the words, so practice at full speed is hard to find.

I guess I do the same for people trying to learn Swedish, and i really shouldn’t.

If you have tips for how to expose myself more to German – spoken or written – please drop a comment here or join the conversation at mastodon.

Friday, 29 September 2023

Let’s go for my web review for the week 2023-39.


I don’t want your data – Manu

Tags: tech, web, data, attention-economy

This is a good way to manage your website. I do the same regarding my blog, I don’t do any analytics etc.

https://manuelmoreale.com/i-don-t-want-your-data


Recent advances in computer science since 2010? - Theoretical Computer Science Stack Exchange

Tags: tech, science

Lots of good answers in there… It provodes plenty of rabbit holes to follow.

https://cstheory.stackexchange.com/questions/53343/recent-advances-in-computer-science-since-2010


GPU.zip

Tags: tech, browser, gpu, security, gpu

Interesting new side-channel attack. A bit mind boggling to be honest. Only one browser seems affected so far (since it’s Chrome probably most of its variants are affected as well).

https://www.hertzbleed.com/gpu.zip/


Platform that enables Windows driver development in Rust

Tags: tech, rust, microsoft, system

Another system where it becomes easier to make drivers in Rust.

https://github.com/microsoft/windows-drivers-rs


Dotfiles matter!

Tags: tech, settings, standard

Definitely this, use standard locations as much as possible. We can tame the mess of dotfiles in user homes.

https://dotfiles-matter.click/


Was Javascript really made in 10 days? • Buttondown

Tags: tech, javascript, history

Interesting light shed on Javascript early history.

https://buttondown.email/hillelwayne/archive/did-brendan-eich-really-make-javascript-in-10-days/


Python 3.12 Preview: Static Typing Improvements – Real Python

Tags: tech, python, type-systems

Nice improvements coming to the Python typing system. Especially interesting in the case of kwargs.

https://realpython.com/python312-typing/


Ditch That Else

Tags: tech, programming, craftsmanship

Since we often still see in the wild code with deep nesting due to edge cases handling, it looks like this advice is still very relevant.

https://preslav.me/2023/09/22/ditch-that-else/


Smooth Database Changes in Blue-Green Deployments · Django Beats

Tags: tech, django, databases

This is more manual work of course but too often forgotten. This way you get easier database migrations in complex environments though.

https://fly.io/django-beats/smooth-database-changes-in-blue-green-deployments/


Choose Postgres queue technology :: Adriano Caloiaro’s personal blog

Tags: tech, architecture, dependencies, complexity

Maybe you don’t need to pull even more dependencies. Think of the operational costs and the complexity.

https://adriano.fyi/posts/2023-09-24-choose-postgres-queue-technology/


Demystifying Database Transactions | Dinesh Gowda

Tags: tech, databases, postgresql, sql

Good primer about database transactions and the issues you might run with when using them.

https://dineshgowda.com/posts/demystifying-database-transcations/


GUIDs - How I messed up my RSS feed :: TheOrangeOne

Tags: tech, blog, rss

Interesting tidbit of the RSS standard. Probably worth putting such GUIDs early on.

https://theorangeone.net/posts/rss-guids/


Network health overview with mtr, ss, lsof and iperf3 | Medium

Tags: tech, tools, command-line, networking

Know your tools. Those are useful to check network uses.

https://raduzaharia.medium.com/network-health-overview-with-mtr-ss-lsof-and-iperf3-8d0d2d191781


Style with Stateful, Semantic Selectors | Ben Myers

Tags: tech, web, accessibility, frontend, css

This is an interesting use of the accessibility directive for better styling in web frontend code.

https://benmyers.dev/blog/semantic-selectors/


3x Explore, Expand, Extract • Kent Beck • YOW! 2018 - YouTube

Tags: tech, management, project-management, xp, agile

Lots of food for thought in here. I really appreciate how Kent Beck’s thinking keeps evolving. This Explore, Expand, Extract curve is indeed a good way to frame things. It is a good base to know what to put in place or not.

https://www.youtube.com/watch?v=WazqgfsO_kY


How Many Direct Reports Should a Manager Have? - The Engineering Manager

Tags: tech, management, tech-lead

This is indeed an interesting scale to keep in mind. Teams shouldn’t get too big, or too small.

https://www.theengineeringmanager.com/qa/how-many-direct-reports-should-a-manager-have/


What does a CTO actually do?

Tags: tech, career, cto, management

Ever wondered what the job of CTO encompasses? This article does a good job at it. It’s especially nice that it’s split based on company size. Indeed, the role can change dramatically depending on how big an organization is.

https://vadimkravcenko.com/shorts/what-cto-does/


How (not) to apply for a software job

Tags: hr, hiring, interviews

Plenty of sound advices for the written part of an application.

https://benhoyt.com/writings/how-to-apply/



Bye for now!

A few days ago Volker Krause posted this blog about the Nextcloud conference - a very interesting read.

One of the topics is the VFS (Virtual Filesystem-) API for the Linux desktop. Indeed that is a topic for us at ownCloud as well, and I like to share our perspective on it, discussing it in the scope of the free desktop.

The topic is very important, as “syncing” of data from and to cloud storages has changed over time. From having all files mirrored from client to server and vice versa, it has now shifted to keep all files in the cloud, and have them as so called placeholders on the desktop. That means that most files on the client appear with size zero to save space, but the complete filesystem structure is available.

If a user starts to interact with such a dehydrated file, the content is of the file is downloaded transparently utilizing the cloud system client, for example ownClouds desktop client. The same happens when an application accesses such a file. As a result, the placeholders look and behave like the normal filesystem we are used to.

On Windows and on MacOSX, the problem is kind of solved. Both have added APIs to their OS that can be used to implement the access of data on the cloud.

On Linux, we do not have this kind of API yet. That means that it is close to impossible to implement this user experience. Volker already said that desktop environment specific solutions probably do not scale, which I agree with.

At ownCloud we have looked into the implementation of a specific FUSE file system. That should certainly be possible, and is probably a part of the solution, but is considerable effort because of the asynchronous nature of the topic. Given that the market share of Linux desktop systems is pretty small it is not attractive for companies to invest a lot into a Linux only system. Here the power of community could make a difference again.

It would be best if we as open source community would come up with a shared solution as a free desktop standard, that might be oriented on one of the existing APIs, maybe the MacOSX File Provider API: A library and little framework that the linux desktop environments can work with abstracting the VFS.

While collaborating on that, all data clouds could implement the bindings to their storage. With that, the extra implementation efforts for the Linux solution hopefully wouldnt be dramatic any more.

Let’s call this system openVFS as a work title. How can we evolve it? I’d like to invite all interested parties to discuss in this temporary Github repo to collect ideas and opinions. There is also a little experimental code.

Thursday, 28 September 2023

At the beginning of 2022 I started helping Grupo EVM to shape their plans to ship digital products. They are a technology centric group with a strong data profile, specialised in designing and developing bleeding edge projects and services for public administrations, mostly in Spain, as well as EU funded R&D projects. Their HQ are … Continue reading Tamiz, a new and great experience