Skip to content

Friday, 9 June 2023

Hello world,

This is my second blog post for Google Summer of Code 2023, where I will share what I accomplished during the GSoC-23 community bonding period.

Community Bonding period

During this time GSoC contributors spend 3 weeks learning about their organization’s community and preparing for their coding project. They get to know mentors, read documentation, get up to speed to begin working on their projects

During the community bonding period, the organizers took two introductory sessions kick starting our journey. The first Welcome Session was about the best practices and tips for a successful Google Summer of Code. Following that, GSoC Contributor Summit took place, during which previous participants and mentors shared their experiences of being part of GSoC.

During this time I also got to interact with fellow GSoC contributors and learned more about their interesting projects and their plans .

Furthermore, I utilized this time to get a head-start on my project by familiarizing myself with QT’s model-view programming with the help of official QT's documentation and Tokodon’s source code. Additionally, I implemented the User-Interface of the button to be used to open the moderation tool. The merge request for which can be found here.

An image showing the User Interface of Tokodon with implemented entry point of moderation Tool can be found below.

An image showing User Interface of Tokodon with mouse being hovered on Moderation Tools Icon

Next I am working on implementing the account Moderation tool :)

I will be writing regular blog posts on my website. You can read my previous blog-posts and follow my progress here

Tuesday, 6 June 2023

I have a few blog posts planned, but the one I wanted to post involving KDE color schemes isn’t finished yet (it’s enormous and tedious). So instead, today I’m showing you how simple it is to compile Kirigami with Qt6 so you can start playing with it ahead of time.

Kirigami, KDE’s library that extends QtQuick, is a Tier 1 KDE Framework. The cool thing about it is that it has effectively no dependency on any KDE libraries. It depends only on two things: Qt and extra-cmake-modules (ECM).

Monday, 5 June 2023

gcompris 3.3

Today we are releasing GCompris version 3.3.

This version adds translations for 2 more languages: Arabic and Esperanto.

It contains bug fixes on multiple activities such as "Path encoding", "Letter in word", "Ballcatch" and "Piano composition".

Some improvements of keyboard handling (shortcuts, focus...) have been done on several activities.

It also contains new graphics and improvements on "Photo hunter".

It is fully translated in the following languages:

  • Arabic
  • Azerbaijani
  • Breton
  • Catalan
  • Catalan (Valencian)
  • Greek
  • UK English
  • Spanish
  • Basque
  • French
  • Croatian
  • Indonesian
  • Italian
  • Lithuanian
  • Malayalam
  • Dutch
  • Norwegian Nynorsk
  • Polish
  • Portuguese
  • Brazilian Portuguese
  • Romanian
  • Slovenian
  • Turkish
  • Ukrainian

It is also partially translated in the following languages:

  • Belarusian (79%)
  • Czech (88%)
  • German (99%)
  • Esperanto (99%)
  • Estonian (99%)
  • Finnish (98%)
  • Hebrew (99%)
  • Hungarian (99%)
  • Macedonian (94%)
  • Russian (99%)
  • Slovak (87%)
  • Albanian (99%)
  • Swedish (98%)
  • Chinese Traditional (99%)

You can find packages of this new version for GNU/Linux, Windows, Raspberry Pi and macOS on the download page. This update will be available soon in the Android Play store, the F-Droid repository and the Windows store.

Thank you all,
Timothée & Johnny

Friday, 2 June 2023

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


Tags: tech, ai, machine-learning, data, copyright, japan

This is looking like a bad move. Clearly the fault of western countries though which let things unfold ambiguously regarding copyright… Now Japan is weakening copyright for everyone.

https://technomancers.ai/japan-goes-all-in-copyright-doesnt-apply-to-ai-training/


Co-Writing with Opinionated Language Models Affects Users’ Views

Tags: tech, ai, gpt, ethics, influence

This is early research of course but still the results are interesting. Once again, we’re much easier to influence than we’d like.

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


Turds

Tags: tech, ai, gpt, art

So close… and still. This is clearly still in the uncanny valley department at times.

https://novalis.org/blog/2023-05-30-turds.html


Reflections on Ten Years Past The Snowden Revelations

Tags: tech, internet, ietf, protocols, privacy, surveillance, attention-economy, security, history, politics

This is an excellent and needed work of contextualization. Ten years after, looking back at how the Snowden Revelations impacted the internet and the work done by the IETF. It also shows there is plenty more to do…

https://www.ietf.org/archive/id/draft-farrell-tenyearsafter-00.html


How to Stare at Your Phone Without Losing Your Soul | Sim O.N.E. (Observations, Nonsense, Exaggerations)

Tags: tech, smartphone, attention-economy

This is a good point, this is a quality before quantity type of problem.

https://simone.org/tracking-screen-time/


Linear feeds are a dark pattern

Tags: tech, social-media, fediverse, ux, design

Clearly the UI design matters quite a bit in term of how addictive all those social network systems are. The alternative proposed here is interesting, I wish it’d be more widely implemented.

https://tilde.town/~dzwdz/blog/feeds.html


halting problem : Configuring portals

Tags: tech, desktop, foss, linux, flatpak

This looks like a move in the right direction regarding desktop portals on Linux.

https://www.bassi.io/articles/2023/05/29/configuring-portals/


Cornell Virtual Workshop: Vectorization

Tags: tech, performance, vector

Nice and thorough workshop on vectorization, where it comes from, what it can do and how you can write code which is easier to vectorize for the compiler.

https://cvw.cac.cornell.edu/vector/


How to discover all the data sources, low-fuss way

Tags: tech, architecture, data, storage

Interesting way to list all the data stores of your system and map them. Has the advantage of being very lean and simple to apply.

https://minimalmodeling.substack.com/p/how-to-discover-all-the-data-sources


On Software Dependency Engineering - HackMD

Tags: tech, supply-chain, foss

Interesting idea, for sure on a complex enough system just managing the dependencies can quickly become a full time job.

https://hackmd.io/@cflewis/Sk0gb9ILh


Feedback: I try to answer “how to become a systems engineer”

Tags: tech, system, engineering, software, expertise, learning

This rings true to me. What a messy path to get better at our craft!

https://rachelbythebay.com/w/2023/05/30/eng/


Fold ‘N Fly » Paper Airplane Folding Instructions

Tags: paper, origami, funny

Who would have thought there are so many ways to make paper airplanes?

https://www.foldnfly.com/#/1-1-1-1-1-1-1-1-2



Bye for now!

Thursday, 1 June 2023

 

KStars v3.6.5 is released on 2023.06.01 for MacOS, Linux, and Windows. It's a bi-monthly bugfix release with a couple of exciting features.


Sky Map Rotation


Akarsh Simha added a new feature to allow the user to rotate the sky map. It also allows some standard settings like inverted view. Here are some the highlights:
  1. Rotate the sky-map freely: Shift + mouse drag on the sky map
  2. Pick pre-defined orientations: Zenith Up / Zenith Down / North Up / North Down depending on the coordinate system being used
  3. A magic mode for Dobsonians: The Erect Observer Correction feature, when selected along with Horizontal Coordinates / Zenith Down settings, will reproduce the orientation seen in the eyepiece of a Dobsonian. May need a one-time adjustment for your specific Dobsonian using the shift + drag feature.





Optimal Sub-Exposure Calculator


Joseph McGee made his first contributor to KStars with the Optimal Sub-Exposure Calculator. This is the first iteration of the calculator and only a handful of camera profiles is supported. There are different points of view within the astrophtography community on how optimal sub-exposure should be calculated and whether we should consider other factors such as processing time given the volume of data produced. Your feedback would be appreciated on this first iteration of the calculator.

Implementation of an optimal sub-exposure calculator based upon the work of, and presentation by, Dr Robin Glover. The calculator considers multiple inputs to determine a sub-exposure time which will provide minimal overall noise in the image:


  • A sky quality measurement (SQM) for light pollution
  • The optic focal length
  • A filter bandwidth
  • Camera read-noise (based upon gain/iso)
  • An optional adjustment to the allowable increase in noise from light pollution

As inputs are adjusted the calculator will refresh graphic presentation of potential exposure times of the range of gains, and update calculated outputs. The output values are separated into two sections: one for the sub-exposure, and another for image stacks of various integration times.

The sub-exposure outputs are:

  • the optimal sub-exposure time
  • the count of electrons produced from light-pollution
  • the shot noise, (noise from light pollution)
  • the total exposure noise, (the combined noise from light-pollution and camera read-noise)

The image stack information is presented in a table showing:

  • planned integration hours
  • the count of exposures to reach the planned integration hours
  • the actual stack (integration time) in seconds
  • the noise for the stack
  • a ration of stack time to noise, (as a indicator of quality)

An instance of the sub-exposure calculator can be started from a new 'clock' icon on the ekos capture screen. Multiple instances of the sub-exposure calculator can be started concurrently so that side-by-side comparisons can be made for variations in inputs.

Data for camera read-noise will be provided through individual xml files which will be user maintained and published in a repository. These camera data files persisted within a folder "exposure_calculator" under user/local/share/kstars. The calculator includes the capability to download camera files from a repository. Upon the initial start of the calculator at least one camera data file download will be mandatory before the calculator can be instantiated.

The intent is that camera data file names will be used to allow the calculator to select an appropriate camera data file based upon the device id of the active camera. (But some of the initial camera files were named using educated guesses, and will likely need to be re-named).


Rotator Dialog Improvements


Toni Schriber merged improvements and fixes for the Rotator Dialog. As shown in the illustrations the user interface is very simple and there is only one parameter to set: The Camera Position Angle. It is a very consistent term and easy to understand. The same Position Angle (PA) is also used in Alignment, Scheduler, and the Sky Map.


In the gauge this angle is presented in the same color as the FOV in the planetarium sky and in viewing direction. This way one can relate and understand this angle intuitively. The rotator angle is presented in gray and also in viewing direction. This angle is calculated from the Camera PA and the Cameras Offset Angle which is calibrated each time a [Capture & Solve] or a [Load & Slew] is brought into action. For further clarity the rotator angle and the camera offset is displayed again in a information window together with the current pier side.

The Rotator Settings can be accessed either in the Capture or Align modules.


Focus Linear 1 Pass Improvements


John Evans continued his phenomenal improvements to Ekos Focus module with L1P Phase 2 changes as detailed in the Linear Focus Phase 2 document. Here are the highlights:

  1. Optimized curve fitting . Should be faster and more accurate and includes outlier rejection.
  2. Currently HFR is the only fitting "measure" available. The following have been added: a) HFR Adj (adjusted HFR to compensate for star brightness vs background variation) b) FWHM c) Number stars (max at focus rather than a min) d) Fourier Power (alternative focus method not requiring star detection)
  3. Focus units can be displayed in pixels or arc-seconds.
  4. Critical Focus Zone - a calculator with 3 different algorithms has been added
  5. Focus Offset Utility to automatically build focus offsets.
  6. Take flats at same focus point as lights has been fixed.
  7. Focus Adviser. Still working on this but a tool to help with focus parameters (since there are now so many).
  8. SEP parameters suggestions for focus. Keen to get some feedback on this.
  9. Adaptive focus to adapt the focuser position between Autofocus runs, aiming to keep optimum focus for each sub-frame. Adaptations for Temperature and Altitude are supported.
  10. Adaptive focuser start . The starting position for an AF run can be filter and Adaptive Focus adjusted.
  11. Focus walks added to control how the inward sweep of the AF process performs.
  12. AF Overscan originally implemented in the Linear algorithm and then reused by Linear 1 Pass now extended to all focuser movements.

In addition to HFR, you can now use different measurements (FHWM, # of Stars, Fourier Power) that may work well with your setup and environment. Here are some focus runs with each of the new measurements types. You will notice that the solutions are very close to each other.

FWHM




# Of Stars



Fourier Power





Focus Aberration Inspector


Wolfgang Reissenberger introduced the mosaic view well known from PixInsight's AberrationInspector script that builds a mosaic from all image corners and center tiles such that they can be compared directly.

Supernovae are back


The last few releases was missing supernovae data since the online source that was providing the data decided to go offline. Thankfully, Philipp Auersperg-Castell communicated with the fine folks over the Transient Name Server (IAU Supernovae Working Group) to obtain daily supernovae updates and imported them to KStars. All Recent supernovae should be available now in KStars.







Tuesday, 30 May 2023

I can’t believe it’s already the end of May! This month turned out a little meatier than last month I think, but I still have a large backlog of merge requests and TODOs to go through.

Plasma

[Feature] Now when there isn’t enough space to display the QR code in the clipboard applet, there is a clearer message of what to do next.

Screenshot of the new message in action.

[Bugfix] On the topic of QR codes, the menu is now a menu of radio buttons and not checkboxes which didn’t make sense because it’s an exclusive option.

You can’t have two different codes being displayed after all.

[Feature] There is now a separator above the “Close” action in the window menu!

It now matches other context menus with this action, e.g. the Task Manager

[Feature] I added a metadata extractor for Krita files, which means certain information about your Krita artwork can show up in Dolphin, Baloo and other programs that can take advantage of it! This includes helpful information such as canvas width, height and creation date.

A slightly outdated screenshot, but showing off some of the metadata it can extract

[Feature] Soon, the Language and Region settings will support the $LANGUAGE environment variable. This only affects users who did not configure the language explicitly from KDE, like those coming from another computing environment. We already supported loading your pre-existing language from $LANG. Included in that merge request is a fix that stops an erroneous warning message telling you that your language isn’t supported, even though it clearly is.

Plasma SDK

[Feature] For new users of the Plasma SDK, there is now a clearer and more helpful message when you start plasmoidviewer without an applet specified.

$ plasmoidviewer
An applet name or path must be specified, e.g. --applet org.kde.plasma.analogclock

[Feature] I proposed making the icon name selectable, because I can’t stop myself from clicking on it!

Screenshot of selecting the icon name in Cuttlefish.

Gamepad KCM

Jeremy Whiting has been hard at work improving the backend code, and I finally took a shot at creating a proper art prototype of the controller that will be featured in the KCM.

Unable to find image concept.PNG!

This will be the base image for the different controller types, and it will change depending on what controller we detect. Neither of us are experts in Inkscape, so we plan for the this to be easily tweakable by actual designers who do not need to know the fine details of the KCM. This is possible because we’re also developing an Inkscape extension to automate exporting SVG files into QML templates that describe button, trigger positions and so on.

The concept is already working in the KCM, but it looks a little off right now and isn’t ready for showcasing yet :-)

Tokodon

[Feature] Many users (including myself) have been experiencing crashes because of the video support added in the last release. QtMultimedia - the library we used for video support - in Qt5 is frustratingly buggy, but has improved in Qt6. Unfortunately, we still have a few more months before KDE Gear applications like Tokodon can switch to Qt6 only and we need a solution for the crashes now. I started porting Tokodon’s video support to mpv which is also used in PlasmaTube!

Playing videos and GIFs should be less crashy, but with worse scrolling performance. However, I worked hard to make sure this only affects auto-play, so if you don’t that option enabled then you shouldn’t notice a difference. This change is almost ready and should appear in the next release, but it lacks testing on Android.

[Feature] You can now change certain account preferences, but the selection is limited due to lack of a proper API. These are preferences that were supported before, but now you can change them from within Tokodon.

The preferences you can tweak in Tokodon

And a whole slew of smaller stuff, some which are appearing in the next bugfix release:

Tokodon on GNOME!

[Feature] For the current and future contributors, I started working on better and more detailed documentation. The first two areas I covered was timeline models and the account classes!

[Feature] In terms of starting even more future work, I started implementing QtKeychain support, and rewriting the current, and buggy, account saving mechanism with KConfig. This will hopefully land in the next release, and fix a whole slew of nagging security and account duplication bugs.

qqc2-desktop-style

If you’ve been noticing that qqc2-desktop-style on Plasma 6 is spitting out some weird stuff in your logs:

Warning: file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33:13: Unable to assign [undefined] to bool (file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33, )
Warning: file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33:13: Unable to assign [undefined] to bool (file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33, )
Warning: file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33:13: Unable to assign [undefined] to bool (file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33, )
Warning: file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33:13: Unable to assign [undefined] to bool (file:///home/josh/kde6/usr/lib/qml/org/kde/desktop/private/MobileCursor.qml:33, )

[Bugfix] I fixed that! It also needs these ECM changes to work. It turns out ECMQmlModule didn’t handle singleton types, and other nagging problems that qqc2-desktop-style needed. I’ve been dabbling in this module for the past month or so so it’s exciting to be able to help here.

Kiten

I took some time to improve the codebase of our Japanese reference tool Kiten, because it seems to have not been very active the past few years. I think it was written before we used C++11. I found a bunch of places where 0 was used to set pointers to null!

I started replacing the old foreach macro, use auto to prevent duplicate types and other modern C++ gardening tasks.

Websites and Documentation

The go.kde.org Matrix redirector update is now merged, which I started in February. This means NeoChat is now preferred right below Element Web (which is still pointed towards https://webchat.kde.org/ ). Thanks to Thiago Sueto, the Community Wiki has been updated already and I sent two merge requests to update kde.org and the footer.

The updated matrix.to redirector!

To finish off more February work, I got around to working on the two big pieces of API documentation improvements for KDE Frameworks 6. If you don’t remember, I wanted to add import statements for components meant to be used in Qt Quick. Doxygen already gives us hints for C++ headers, so QML users shouldn’t be left in the dust. For example, how are you even supposed to use this component?

This is a real example. Not all components are like this, fortunately.

In order to accomplish this, subclasses of QQuickItem need to have their doc comments modified. The first library to get this treatment is plasma-framework, see the merge requests for PlasmaCore, PlasmaQuick and hiding ToolTipDialog.

For regular QML-based components, doxyqml (the tool to auto-generate QML documentation, because Doxygen lacks support for the language) needed to spit these out too. The merge request to add import statements is cleaned up, the tests fixed and ready for final review!

Ah! I had to import that module!

I also spent some time cleaning up the Community wiki, which just means I roam around and make sure links aren’t dead and the formatting looks nice. If you’re interested in some wiki improvement, join us in #kde-www and the Issue board!

Packaging

I was recently researching how well Tokodon works out of the box on other desktop environments. It turns out 90% of issues with Kirigami applications can be solved by installing breeze-icons and qqc2-desktop-style! We might be enforcing this soon, so if you are in charge of packaging Kirigami applications, please make add them as weak or required dependencies! I will probably start filing packaging bugs soon.

In terms of KDE packaging issues in distributions, I opened up two this month:

Akademy 2023

I’m also attending Akademy this year in Thessaloniki! My passport was delivered this month, which is strangely hard to get in the USA (currently.)

I finally got the passport today! Pretty happy that I no longer have to worry about this little book :bunhdgoogly:

Image 110391767845930597 from toot 110391772254719472 on mastodon.art

I booked my accommodations last week, so I’m excited to see everyone in-person in July! This is my first time traveling outside of the North American continent, and to Europe no less. I’ll be documenting my experience traveling and at Akademy, but I’m not sure what format it’ll be in yet.

Sunday, 28 May 2023

Hello, Tech enthusiasts! I am beyond excited to introduce to you my first project on GitHub – a Bash-based Telegram Bot that allows you to monitor and control a remote computer!

The idea behind this bot is pretty simple, yet powerful – you can command your PC, retrieve important system information, perform updates and even control system processes directly from your Telegram app. I’ve designed this bot with KDE Neon in mind, but it can be adapted to other Linux-based systems.

Here’s a sneak peek into some of the key functionalities provided by the bot:

function getBattery {
local percentage=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep percentage | awk ‘{print $2}’)
echo “Battery level: $percentage”
}

function getCpuUsage {
local usage=$(top -bn1 | grep “Cpu(s)” | \
sed “s/.*, *([0-9.])% id.*/\1/” | \
awk ‘{print 100 – $1″%”}’)
echo “CPU Usage: $usage”
}

The bot responds to a set of predefined commands that range from simple system status checks like /battery, /status, /uptime, /memory, /disk, /cpu_usage to more complex functionalities such as /shutdown, /upgrade, /screenshot, and so on.

For the bot to run, it requires some prerequisites like curl, jq, bc among others. Some commands also require specific programs to be installed on your system.

The code is still in its initial version (0.1) and there might be some bugs on certain commands. But I am enthusiastic about making it better with every iteration. Future enhancements include multi-language support and other features based on user feedback.

I encourage you to give it a try, and would greatly appreciate your feedback. Feel free to report any issues, or suggest enhancements on the project’s GitHub page.

Here’s the link to the project on GitHub: telegram-remote-bash

Happy Coding!

Friday, 26 May 2023

Hello world,

This is my first blog post for Google Summer of Code 2023.

During the Google Summer of Code timeline, I will be working on implementing the admin APIs in Tokodon. These APIs will provide mastodon moderators with a suite of moderation tools within Tokodon. I would like to thank Carl Schwan ❤ for mentoring me during Season of KDE and once again for this project. I am really grateful to work under his guidance. By implementing this new feature, Mastodon moderators will be able to easily adopt Tokodon and utilize moderation tools within the application.

I haven’t come across any Mastodon client that implements the admin APIs so by implementing this feature in Tokodon, we can ensure wider adoption. I’ve already started working on implementing the feature and have been maintaining regular communication with my mentor.

I will be writing regular blog posts on my website. You can follow my progress here

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


Twitter Is a Far-Right Social Network - The Atlantic

Tags: tech, social-media, politics, twitter

Indeed… things have been changing very rapidly.

https://www.theatlantic.com/technology/archive/2023/05/elon-musk-ron-desantis-2024-twitter/674149/


Patterns in register map design

Tags: tech, hardware, programming, cpu

Very thorough overview on how registers are used when you get closer to the hardware. Very good resource to use as reference.

https://www.devever.net/~hl/regmap


Memory Allocation

Tags: tech, memory

Everything you always wanted to know but didn’t dare asking about memory allocators. OK, maybe not “everything everything” but this gives a very good overview on how they work and the trade-offs they have to make.

https://samwho.dev/memory-allocation/


How Much Memory Do You Need to Run 1 Million Concurrent Tasks? | Piotr Kołaczkowski

Tags: tech, multithreading, performance, memory

Doesn’t give the whole picture (memory isn’t the only important parameter) but interesting results nonetheless. A few surprises in there, Java and C# do much better than one might assume for instance.

https://pkolaczk.github.io/memory-consumption-of-async/


Stop Saying C/C++ | Bryce Vandegrift’s Website

Tags: tech, c++, c, programming

Indeed, the times when we could pretend one was a superset of the other are long gone.

https://brycevandegrift.xyz/blog/stop-saying-c-and-c++/


``Rewrite it in Rust” Considered Harmful?

Tags: tech, safety, security, memory, c, c++, rust

Indeed, the story of integrating C and C++ with Rust isn’t a simple one right now. It might introduce larger attack surfaces. Some improvements are proposed in this paper.

https://goto.ucsd.edu/~rjhala/hotos-ffi.pdf


Writing Python like it’s Rust | Kobzol’s blog

Tags: tech, programming, python, rust

Nice list of patterns leveraging the Python type hints for richer and safer interfaces.

https://kobzol.github.io/rust/python/2023/05/20/writing-python-like-its-rust.html


GitHub - Xfennec/progress: Linux tool to show progress for cp, mv, dd, … (formerly known as cv)

Tags: tech, linux, tools, command-line

Looks like a smart and interesting little tool. I definitely needed something like it more than once.

https://github.com/Xfennec/progress


5 Things Founders, Investors and Recruiters Should Know about the CTO role | by Marc van Neerven | CTO-as-a-Service | Medium

Tags: tech, business, cto, management

Interesting insights about the minutiae of the CTO role.

https://medium.com/cto-as-a-service/5-things-founders-investors-and-recruiters-should-know-about-the-cto-role-a65d7bb66264


Writing summaries is more important than reading more books — Andreas Fragner

Tags: book, note-taking

Definitely something I learned way to late. I wish I had started with such summaries and book notes earlier.

https://www.andreasfragner.com/writing/writing-summaries


Origin Stories: Plantations, Computers, and Industrial Control

Tags: tech, economics, history, capitalism, automation

Very interesting explorations of the early days of automation and computation. This shows another face of Babbage which is often ignored. It is a cruel demonstration on how his machine were first and foremost encroached on division of labor as inspired by plantations.

https://logicmag.io/supa-dupa-skies/origin-stories-plantations-computers-and-industrial-control/


The Fastest Maze-Solving Competition On Earth - YouTube

Tags: tech, robots, competition, funny, mathematics

The fascinating world of micromice competitions. There’s a lot of thinking leading to those really smart designs.

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



Bye for now!

Thursday, 25 May 2023

Overview

If you’ve been following my previous blog posts, you may recall that I’ve been working on enhancing the user interface of the Bundle Creator in Krita. The new Bundle Creator is to be designed similar to an installation wizard. By compartmentalizing the functionality into four separate sections, users can effortlessly navigate through the various aspects of bundle creation process.

My Progess so far…

I spent the last two weeks working on the Resource Chooser section. The Resource Chooser page allows users to users to handpick the resource items they wish to include in their new bundle. The most notable enhancement is the transition from a traditional list view to a more intuitive grid view for the list of available resources, similar to the Resource Manager layout.

In the previous version, users were required to individually select each resource item and use the > key to add them to the list of selected resources. However, now users can simply click on resource items directly to add them to the selected list. This seamless integration of the grid view and the ability to click-to-select greatly streamlines the workflow, especially benefiting tablet users of Krita.

One can also filter resources by tag or name before choosing resource items to be added to the selected list. This allows users to swiftly select resource items that serve a similar purpose when creating a new bundle. Gone are the days of scrolling through the entire list of available items; now, users can easily narrow down their options through efficient filtering.

And finally, to remove a single resource item, users can now simply select it by clicking on it. Similarly, for removing multiple items, users can hold down the Ctrl key and select multiple items imultaneously.Once the desired resource items are selected, users can easily remove them by clicking on the Remove Resources button .

Demo

Merge Request

You can view my merge request here.

Plans ahead

In the upcoming weeks, I would be working on the Choose Tags section. This requires some UI related feedback, and if you’re interested to help out, please feel free to drop a comment on this post I created on Krita Artists Forum!


My Painting

And just to add a splash of colour to my blogpost, this is just a very quick artwork which I made using Ramon’s impressionism brush bundle. It’s super easy to use, do check it out! :D